{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/constants.js","webpack:///./node_modules/core-js/modules/_wks.js","webpack:///./node_modules/core-js/modules/_an-object.js","webpack:///./node_modules/core-js/modules/_descriptors.js","webpack:///./node_modules/core-js/modules/_global.js","webpack:///./node_modules/core-js/modules/_object-dp.js","webpack:///./node_modules/core-js/modules/_fails.js","webpack:///./node_modules/core-js/modules/_redefine.js","webpack:///./src/helper/util.js","webpack:///./node_modules/core-js/modules/_is-object.js","webpack:///./node_modules/core-js/modules/_hide.js","webpack:///./node_modules/core-js/modules/_has.js","webpack:///./node_modules/core-js/modules/_export.js","webpack:///./node_modules/core-js/modules/_to-iobject.js","webpack:///./node_modules/core-js/modules/_core.js","webpack:///./node_modules/core-js/modules/_cof.js","webpack:///./node_modules/core-js/modules/_to-length.js","webpack:///./node_modules/core-js/modules/_uid.js","webpack:///./node_modules/core-js/modules/_object-keys.js","webpack:///./node_modules/core-js/modules/_property-desc.js","webpack:///./node_modules/core-js/modules/_defined.js","webpack:///./node_modules/core-js/modules/_to-object.js","webpack:///./node_modules/core-js/modules/_shared.js","webpack:///./node_modules/core-js/modules/_library.js","webpack:///./node_modules/core-js/modules/_to-integer.js","webpack:///./node_modules/core-js/modules/_iterators.js","webpack:///./node_modules/core-js/modules/_flags.js","webpack:///./node_modules/core-js/modules/_to-primitive.js","webpack:///./node_modules/core-js/modules/_object-gopn.js","webpack:///./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack:///./node_modules/core-js/modules/_fix-re-wks.js","webpack:///./node_modules/core-js/modules/_set-to-string-tag.js","webpack:///./node_modules/core-js/modules/_shared-key.js","webpack:///./node_modules/core-js/modules/_enum-bug-keys.js","webpack:///./node_modules/core-js/modules/_object-pie.js","webpack:///./node_modules/core-js/modules/_advance-string-index.js","webpack:///./node_modules/core-js/modules/_regexp-exec.js","webpack:///./node_modules/core-js/modules/es6.function.name.js","webpack:///./node_modules/core-js/modules/_ctx.js","webpack:///./node_modules/core-js/modules/_object-create.js","webpack:///./node_modules/core-js/modules/_object-gopd.js","webpack:///./node_modules/core-js/modules/_classof.js","webpack:///./node_modules/core-js/modules/_ie8-dom-define.js","webpack:///./node_modules/core-js/modules/_dom-create.js","webpack:///./node_modules/core-js/modules/_a-function.js","webpack:///./node_modules/core-js/modules/_wks-ext.js","webpack:///./node_modules/core-js/modules/_object-keys-internal.js","webpack:///./node_modules/core-js/modules/_to-absolute-index.js","webpack:///./node_modules/core-js/modules/_object-gops.js","webpack:///./node_modules/core-js/modules/_html.js","webpack:///./node_modules/core-js/modules/_string-at.js","webpack:///./node_modules/core-js/modules/_iter-define.js","webpack:///./node_modules/core-js/modules/es6.object.to-string.js","webpack:///./node_modules/core-js/modules/es6.array.iterator.js","webpack:///./node_modules/core-js/modules/es6.array.slice.js","webpack:///./node_modules/core-js/modules/_is-regexp.js","webpack:///./node_modules/core-js/modules/es6.object.keys.js","webpack:///./node_modules/core-js/modules/es6.regexp.replace.js","webpack:///./node_modules/core-js/modules/es6.regexp.to-string.js","webpack:///./node_modules/core-js/modules/_inherit-if-required.js","webpack:///./node_modules/core-js/modules/es6.regexp.constructor.js","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/core-js/modules/es6.regexp.match.js","webpack:///./node_modules/core-js/modules/es6.symbol.js","webpack:///./node_modules/core-js/modules/_function-to-string.js","webpack:///./node_modules/core-js/modules/_meta.js","webpack:///./node_modules/core-js/modules/_wks-define.js","webpack:///./node_modules/core-js/modules/_enum-keys.js","webpack:///./node_modules/core-js/modules/_iobject.js","webpack:///./node_modules/core-js/modules/_array-includes.js","webpack:///./node_modules/core-js/modules/_is-array.js","webpack:///./node_modules/core-js/modules/_object-dps.js","webpack:///./node_modules/core-js/modules/_object-gopn-ext.js","webpack:///./node_modules/core-js/modules/es6.string.iterator.js","webpack:///./node_modules/core-js/modules/_iter-create.js","webpack:///./node_modules/core-js/modules/_object-gpo.js","webpack:///./node_modules/core-js/modules/_add-to-unscopables.js","webpack:///./node_modules/core-js/modules/_iter-step.js","webpack:///./node_modules/core-js/modules/web.dom.iterable.js","webpack:///./node_modules/core-js/modules/es6.regexp.exec.js","webpack:///./node_modules/core-js/modules/es6.regexp.flags.js","webpack:///./node_modules/core-js/modules/_set-proto.js","webpack:///./node_modules/core-js/modules/_set-species.js","webpack:///./node_modules/core-js/modules/_species-constructor.js","webpack:///./node_modules/core-js/modules/_object-sap.js","webpack:///./lib/thinkingdata.umd.min.js","webpack:///(webpack)/buildin/harmony-module.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js","webpack:///./node_modules/core-js/modules/_string-trim.js","webpack:///./node_modules/core-js/modules/_string-ws.js","webpack:///./node_modules/core-js/modules/es6.regexp.search.js","webpack:///./node_modules/core-js/modules/_same-value.js","webpack:///(webpack)/buildin/amd-options.js","webpack:///./src/core/check.js","webpack:///./src/core/ta.js","webpack:///./src/core/bi.js","webpack:///./src/helper/dom.js","webpack:///./src/dsm.js"],"names":["parentHotUpdateCallback","window","chunkId","moreModules","hotAvailableFilesMap","hotRequestedFilesMap","moduleId","Object","prototype","hasOwnProperty","call","hotUpdate","hotWaitingFiles","hotChunksLoading","hotUpdateDownloaded","hotAddUpdateChunk","hotCurrentChildModule","hotApplyOnUpdate","hotCurrentHash","hotCurrentModuleData","hotCurrentParents","hotCurrentParentsTemp","hotCreateRequire","me","installedModules","__webpack_require__","fn","request","hot","active","parents","indexOf","push","children","console","warn","ObjectFactory","name","configurable","enumerable","get","set","value","defineProperty","e","hotStatus","hotSetStatus","then","finishChunkLoading","err","hotWaitingFilesMap","hotEnsureUpdateChunk","t","mode","hotCreateModule","_acceptedDependencies","_declinedDependencies","_selfAccepted","_selfDeclined","_selfInvalidated","_disposeHandlers","_main","accept","dep","callback","undefined","i","length","decline","dispose","addDisposeHandler","removeDisposeHandler","idx","splice","invalidate","this","modules","hotApplyInvalidatedModule","hotQueuedInvalidatedModules","check","hotCheck","apply","hotApply","status","l","hotStatusHandlers","addStatusHandler","removeStatusHandler","data","newStatus","hotDeferred","hotUpdateNewHash","toModuleId","id","Error","requestTimeout","Promise","resolve","reject","XMLHttpRequest","requestPath","p","open","timeout","send","onreadystatechange","readyState","update","JSON","parse","responseText","hotApplyInvalidatedModules","c","h","promise","script","document","createElement","charset","src","head","appendChild","hotDownloadUpdateChunk","deferred","result","outdatedModules","options","hotApplyInternal","cb","j","module","getAffectedStuff","updateModuleId","outdatedDependencies","queue","map","chain","queueItem","pop","type","parentId","parent","concat","addAllToSet","a","b","item","appliedUpdate","warnUnexpectedRequire","abortError","doApply","doDispose","chainInfo","join","onDeclined","ignoreDeclined","onUnaccepted","ignoreUnaccepted","onAccepted","onDisposed","outdatedSelfAcceptedModules","slice","errorHandler","keys","forEach","installedChunks","hotDisposeChunk","dependency","moduleOutdatedDependencies","disposeHandlers","child","error","callbacks","onErrored","dependencyId","ignoreErrored","err2","originalError","list","exports","m","d","getter","o","r","Symbol","toStringTag","__esModule","ns","create","key","bind","n","object","property","s","VERSION","process","BASEPATH","TA_APPID","TA_SERVERURL","MAX_REFERRER_STRING_LENGTH","EVENT_TYPE","click","ajax","pv","custom","pageview","TRACK_ATTRS","necessary","PLATFORM","pc","mobile","MAX_ATTR_VALUE_LENGTH","BIKEY","store","uid","USE_SYMBOL","isObject","it","TypeError","global","Math","self","Function","__g","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","P","Attributes","exec","hide","has","SRC","$toString","TPL","split","inspectSource","val","safe","isFunction","String","Ya","RegExp","decodeURIComponent","_a","charAt","substring","u","match","replace","$a","parseInt","urlParse","location","toString","protocol","email","hash","query","toLowerCase","path","file","filename","fileext","port","auth","user","pass","hostname","tld","domain","sub","basic","UUIDv4","random","getPageProperties","referrer","getReferrer","referrer_host","title","obj","isString","clone","stringify","getPlatform","test","navigator","userAgent","getXpath","tar","_path","tarItem","nodeType","getAttr","parentNode","_xpath","unshift","tagName","_class","className","_id","createDesc","core","redefine","ctx","$export","source","own","out","exp","IS_FORCED","F","IS_GLOBAL","G","IS_STATIC","S","IS_PROTO","IS_BIND","B","target","expProto","U","W","R","IObject","defined","version","__e","toInteger","min","px","$keys","enumBugKeys","bitmap","writable","copyright","ceil","floor","isNaN","that","ignoreCase","multiline","unicode","sticky","valueOf","hiddenKeys","getOwnPropertyNames","classof","builtinExec","fails","wks","regexpExec","SPECIES","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","arguments","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","constructor","nativeRegExpMethod","fns","nativeMethod","regexp","str","arg2","forceStringMethod","done","strfn","rxfn","string","arg","def","TAG","tag","stat","shared","propertyIsEnumerable","at","index","re1","re2","regexpFlags","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","lastIndex","reCopy","FProto","nameRE","aFunction","dPs","IE_PROTO","Empty","createDict","iframeDocument","iframe","style","display","contentWindow","write","lt","close","Properties","pIE","toIObject","gOPD","getOwnPropertyDescriptor","cof","ARG","T","tryGet","callee","is","arrayIndexOf","names","max","getOwnPropertySymbols","documentElement","TO_STRING","pos","charCodeAt","LIBRARY","Iterators","$iterCreate","setToStringTag","getPrototypeOf","ITERATOR","BUGGY","returnThis","Base","NAME","Constructor","next","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","proto","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","entries","values","addToUnscopables","step","Array","iterated","_t","_i","_k","Arguments","html","toAbsoluteIndex","toLength","arraySlice","begin","end","len","klass","start","upTo","size","cloned","MATCH","isRegExp","toObject","advanceStringIndex","regExpExec","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","REPLACE","$replace","maybeCallNative","searchValue","replaceValue","res","rx","functionalReplace","fullUnicode","results","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","replacerArgs","replacement","getSubstitution","tailPos","symbols","ch","capture","$flags","DESCRIPTORS","define","flags","setPrototypeOf","C","inheritIfRequired","gOPN","$RegExp","CORRECT_NEW","tiRE","piRE","fiU","proxy","speciesConstructor","callRegExpExec","$min","$push","LENGTH","SUPPORTS_Y","SPLIT","$split","internalSplit","separator","limit","lastLength","output","lastLastIndex","splitLimit","separatorCopy","splitter","unicodeMatching","lim","q","A","z","$match","matchStr","META","$fails","wksExt","wksDefine","enumKeys","isArray","_create","gOPNExt","$GOPD","$GOPS","$DP","$Symbol","$JSON","_stringify","HIDDEN","TO_PRIMITIVE","isEnum","SymbolRegistry","AllSymbols","OPSymbols","ObjectProto","USE_NATIVE","QObject","setter","findChild","setSymbolDesc","D","protoDesc","wrap","sym","isSymbol","iterator","$defineProperty","$defineProperties","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","$set","es6Symbols","wellKnownSymbols","k","keyFor","useSetter","useSimple","defineProperties","FAILS_ON_PRIMITIVES","replacer","$replacer","args","setDesc","isExtensible","FREEZE","preventExtensions","setMeta","w","meta","NEED","fastKey","getWeak","onFreeze","getKeys","gOPS","getSymbols","IS_INCLUDES","$this","el","fromIndex","windowNames","getWindowNames","$at","point","descriptor","UNSCOPABLES","ArrayProto","$iterators","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","forced","buggy","__proto__","_typeof","_classCallCheck","_defineProperties","_createClass","rx_one","rx_two","rx_three","rx_four","rx_escapable","rx_dangerous","gap","indent","rep","this_value","quote","toJSON","isFinite","Date","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","Boolean","Number","text","reviver","walk","eval","SyntaxError","Config","LIB_VERSION","ObjProto","nativeForEach","breaker","utmTypes","_","Fa","c0","e0","f0","each","extend","formatDate","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","formatTimeZone","getTime","getTimezoneOffset","formatJsonString","searchObjDate","isDate","isUndefined","isEmptyObject","isNumber","isBoolean","isJSONString","UUID","screen","height","width","url","hashCode","encodeURIComponent","utf8Encode","fromCharCode","base64Encode","cookie","href","setTime","toGMTString","remove","localStorage","getItem","setItem","removeItem","isSupported","stripEmptyProperties","info","os","browser","Log","properties","language","languages","getUtm","pageProperties","pathname","getQueryParam","createString","substr","createAesKey","generateEncryptyData","publicKey","CryptoJS","JSEncrypt","enc","Utf8","AES","encrypt","ECB","padding","pad","Pkcs7","setPublicKey","pkv","ekey","payload","paramType","addEvent","addEventListener","attachEvent","event","getRandom","safeJSONParse","saveObjectVal","readObjectVal","hasEncrypty","addSiteEvent","preventDefault","stopPropagation","_getPath","composedPath","getParents","ele","returnValue","cancelBubble","srcElement","getURLSearchParams","_fields","Username","Password","Port","Protocol","Host","Path","URL","QueryString","Fragment","_values","_regex","_parse","setUrl","_initValues","addQueryString","getUrl","Origin","Hostname","trim","searchParams","search","host","password","username","origin","showLog","log","KEY_NAME_MATCH_REGEX","PropertyChecker","stripProperties","_checkPropertiesKey","MASTER_INSTANCE_NAME","DEFAULT_CONFIG","_name","appId","send_method","persistence","persistencePrefix","persistenceEnabled","crossSubDomain","maxReferrerStringLength","dataSendTimeout","useAppTrack","strict","tryCount","ThinkingDataPersistence","_state","enabled","storage","_load","getDistinctId","uuid","_setDeviceId","setDistinctId","_save","distinct_id","_set","setEnableTracking","getEnableTracking","enable_tracking","clear","setOptTracking","getOptTracking","opt_tracking","getAccountId","account_id","setAccountId","getDeviceId","device_id","setSuperProperties","getSuperProperties","super_properties","setEventTimer","event_timers","clearEventTimer","removeEventTimer","ThinkingDataAnalyticsLib","trackLink","_isCollectData","_getConfig","getElementsByTagName","getElementsByClassName","getElementById","nodeName","getAttribute","innerHTML","_sendRequest","setPageProperty","currentProps","getPageProperty","getPresetProperties","screenWidth","screenHeight","browserVersion","deviceId","zoneOffset","toEventPresetProperties","login","userId","logout","userSet","propertiesMust","userSetOnce","userUnset","propertyName","userAdd","userAppend","userUniqAppend","flush","batchConsumer","_isDebug","userDel","time","extraId","firstCheckId","dynamicProperties","parseFloat","toFixed","ThinkingData_APP_JS_Bridge","thinkingdata_track","MSStream","setAttribute","removeChild","sendBeacon","FormData","append","AjaxTask","run","_sendRequestWithImage","add","dataStoragePrefix","tabStoragePrefix","BatchConsumer","config","timer","batchConfig","interval","storageLimit","batch","prefix","tabKey","batchInterval","setTimeout","recycle","clearTimeout","secretKey","serverUrl","isDebug","ActiveXObject","setRequestHeader","response","errorLevel","onFailed","hasCalled","onload","onerror","onabort","track","trackUpdate","eventName","eventTime","eventId","trackOverwrite","trackFirstEvent","trackWithBeacon","identify","clearSuperProperties","unsetSuperProperty","setDynamicSuperProperties","timeEvent","quick","siteLinker","init","_setConfig","cookiePrefix","PageLifeCycle","taLib","pageShow","autoPageShow","pageHide","autoPageHide","trackPageShowEvent","hidden","trackPageHideEvent","isPageShow","initInstance","enableTracking","optOutTracking","optInTracking","setTrackStatus","tdMaster","initAsModule","getPartUrl","option","part_url","getPartHash","after_hash","getCurrenId","ta","rewriteUrl","addClickListen","PointerEvent","maxTouchPoints","getUrlId","setRefferId","isInited","linker","td","thinkingdata","originalModule","webpackPolyfill","$trim","$Number","BROKEN_COF","TRIM","toNumber","argument","third","radix","maxCode","first","NaN","code","digits","spaces","space","ltrim","rtrim","exporter","ALIAS","FORCE","TYPE","sameValue","SEARCH","$search","previousLastIndex","x","y","__webpack_amd_options__","checkEvent","checkAttrs","every","lastTrackInfo","pageTackInfo","beginTime","now","updateTrackInfo","setPageInfo","env","dsmid","page","ua","prevDsmid","prevName","prevEventName","duration","currentTime","nextDsmid","nextName","nextEventName","sendPageViewTrack","sendAjaxTrack","trackData","apiUrl","msg","success","pageInfo","getPageInfoObject","ued","pageinfo","gamecode","gameCode","getArticleObject","article","gameName","channel","page_url","platform","_jc_ping","dataStr","closest","selector","jQuery","dsm","trackEngine","taEnable","biEnable","bi","_dsm","_inited","sendJsErrorTrack","level","errData","stack","message","lineno","bubbles","cancelable","colno","composed","timeStamp","extData","startAutoTrack","onClick","trackNode","dataset","innerText","dsmName","xpath","moduleNode","dsmModule","trackError","extends","onInit","autoClickTrack","autoPageTrack"],"mappings":"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","file":"production/dsm.js","sourcesContent":[" \tfunction hotDisposeChunk(chunkId) {\n \t\tdelete installedChunks[chunkId];\n \t}\n \tvar parentHotUpdateCallback = window[\"webpackHotUpdate\"];\n \twindow[\"webpackHotUpdate\"] = // eslint-disable-next-line no-unused-vars\n \tfunction webpackHotUpdateCallback(chunkId, moreModules) {\n \t\thotAddUpdateChunk(chunkId, moreModules);\n \t\tif (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules);\n \t} ;\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotDownloadUpdateChunk(chunkId) {\n \t\tvar script = document.createElement(\"script\");\n \t\tscript.charset = \"utf-8\";\n \t\tscript.src = __webpack_require__.p + \"\" + chunkId + \".\" + hotCurrentHash + \".hot-update.js\";\n \t\tif (null) script.crossOrigin = null;\n \t\tdocument.head.appendChild(script);\n \t}\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotDownloadManifest(requestTimeout) {\n \t\trequestTimeout = requestTimeout || 10000;\n \t\treturn new Promise(function(resolve, reject) {\n \t\t\tif (typeof XMLHttpRequest === \"undefined\") {\n \t\t\t\treturn reject(new Error(\"No browser support\"));\n \t\t\t}\n \t\t\ttry {\n \t\t\t\tvar request = new XMLHttpRequest();\n \t\t\t\tvar requestPath = __webpack_require__.p + \"\" + hotCurrentHash + \".hot-update.json\";\n \t\t\t\trequest.open(\"GET\", requestPath, true);\n \t\t\t\trequest.timeout = requestTimeout;\n \t\t\t\trequest.send(null);\n \t\t\t} catch (err) {\n \t\t\t\treturn reject(err);\n \t\t\t}\n \t\t\trequest.onreadystatechange = function() {\n \t\t\t\tif (request.readyState !== 4) return;\n \t\t\t\tif (request.status === 0) {\n \t\t\t\t\t// timeout\n \t\t\t\t\treject(\n \t\t\t\t\t\tnew Error(\"Manifest request to \" + requestPath + \" timed out.\")\n \t\t\t\t\t);\n \t\t\t\t} else if (request.status === 404) {\n \t\t\t\t\t// no update available\n \t\t\t\t\tresolve();\n \t\t\t\t} else if (request.status !== 200 && request.status !== 304) {\n \t\t\t\t\t// other failure\n \t\t\t\t\treject(new Error(\"Manifest request to \" + requestPath + \" failed.\"));\n \t\t\t\t} else {\n \t\t\t\t\t// success\n \t\t\t\t\ttry {\n \t\t\t\t\t\tvar update = JSON.parse(request.responseText);\n \t\t\t\t\t} catch (e) {\n \t\t\t\t\t\treject(e);\n \t\t\t\t\t\treturn;\n \t\t\t\t\t}\n \t\t\t\t\tresolve(update);\n \t\t\t\t}\n \t\t\t};\n \t\t});\n \t}\n\n \tvar hotApplyOnUpdate = true;\n \t// eslint-disable-next-line no-unused-vars\n \tvar hotCurrentHash = \"ad1aa35316395dfcccf1\";\n \tvar hotRequestTimeout = 10000;\n \tvar hotCurrentModuleData = {};\n \tvar hotCurrentChildModule;\n \t// eslint-disable-next-line no-unused-vars\n \tvar hotCurrentParents = [];\n \t// eslint-disable-next-line no-unused-vars\n \tvar hotCurrentParentsTemp = [];\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotCreateRequire(moduleId) {\n \t\tvar me = installedModules[moduleId];\n \t\tif (!me) return __webpack_require__;\n \t\tvar fn = function(request) {\n \t\t\tif (me.hot.active) {\n \t\t\t\tif (installedModules[request]) {\n \t\t\t\t\tif (installedModules[request].parents.indexOf(moduleId) === -1) {\n \t\t\t\t\t\tinstalledModules[request].parents.push(moduleId);\n \t\t\t\t\t}\n \t\t\t\t} else {\n \t\t\t\t\thotCurrentParents = [moduleId];\n \t\t\t\t\thotCurrentChildModule = request;\n \t\t\t\t}\n \t\t\t\tif (me.children.indexOf(request) === -1) {\n \t\t\t\t\tme.children.push(request);\n \t\t\t\t}\n \t\t\t} else {\n \t\t\t\tconsole.warn(\n \t\t\t\t\t\"[HMR] unexpected require(\" +\n \t\t\t\t\t\trequest +\n \t\t\t\t\t\t\") from disposed module \" +\n \t\t\t\t\t\tmoduleId\n \t\t\t\t);\n \t\t\t\thotCurrentParents = [];\n \t\t\t}\n \t\t\treturn __webpack_require__(request);\n \t\t};\n \t\tvar ObjectFactory = function ObjectFactory(name) {\n \t\t\treturn {\n \t\t\t\tconfigurable: true,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: function() {\n \t\t\t\t\treturn __webpack_require__[name];\n \t\t\t\t},\n \t\t\t\tset: function(value) {\n \t\t\t\t\t__webpack_require__[name] = value;\n \t\t\t\t}\n \t\t\t};\n \t\t};\n \t\tfor (var name in __webpack_require__) {\n \t\t\tif (\n \t\t\t\tObject.prototype.hasOwnProperty.call(__webpack_require__, name) &&\n \t\t\t\tname !== \"e\" &&\n \t\t\t\tname !== \"t\"\n \t\t\t) {\n \t\t\t\tObject.defineProperty(fn, name, ObjectFactory(name));\n \t\t\t}\n \t\t}\n \t\tfn.e = function(chunkId) {\n \t\t\tif (hotStatus === \"ready\") hotSetStatus(\"prepare\");\n \t\t\thotChunksLoading++;\n \t\t\treturn __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) {\n \t\t\t\tfinishChunkLoading();\n \t\t\t\tthrow err;\n \t\t\t});\n\n \t\t\tfunction finishChunkLoading() {\n \t\t\t\thotChunksLoading--;\n \t\t\t\tif (hotStatus === \"prepare\") {\n \t\t\t\t\tif (!hotWaitingFilesMap[chunkId]) {\n \t\t\t\t\t\thotEnsureUpdateChunk(chunkId);\n \t\t\t\t\t}\n \t\t\t\t\tif (hotChunksLoading === 0 && hotWaitingFiles === 0) {\n \t\t\t\t\t\thotUpdateDownloaded();\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t};\n \t\tfn.t = function(value, mode) {\n \t\t\tif (mode & 1) value = fn(value);\n \t\t\treturn __webpack_require__.t(value, mode & ~1);\n \t\t};\n \t\treturn fn;\n \t}\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotCreateModule(moduleId) {\n \t\tvar hot = {\n \t\t\t// private stuff\n \t\t\t_acceptedDependencies: {},\n \t\t\t_declinedDependencies: {},\n \t\t\t_selfAccepted: false,\n \t\t\t_selfDeclined: false,\n \t\t\t_selfInvalidated: false,\n \t\t\t_disposeHandlers: [],\n \t\t\t_main: hotCurrentChildModule !== moduleId,\n\n \t\t\t// Module API\n \t\t\tactive: true,\n \t\t\taccept: function(dep, callback) {\n \t\t\t\tif (dep === undefined) hot._selfAccepted = true;\n \t\t\t\telse if (typeof dep === \"function\") hot._selfAccepted = dep;\n \t\t\t\telse if (typeof dep === \"object\")\n \t\t\t\t\tfor (var i = 0; i < dep.length; i++)\n \t\t\t\t\t\thot._acceptedDependencies[dep[i]] = callback || function() {};\n \t\t\t\telse hot._acceptedDependencies[dep] = callback || function() {};\n \t\t\t},\n \t\t\tdecline: function(dep) {\n \t\t\t\tif (dep === undefined) hot._selfDeclined = true;\n \t\t\t\telse if (typeof dep === \"object\")\n \t\t\t\t\tfor (var i = 0; i < dep.length; i++)\n \t\t\t\t\t\thot._declinedDependencies[dep[i]] = true;\n \t\t\t\telse hot._declinedDependencies[dep] = true;\n \t\t\t},\n \t\t\tdispose: function(callback) {\n \t\t\t\thot._disposeHandlers.push(callback);\n \t\t\t},\n \t\t\taddDisposeHandler: function(callback) {\n \t\t\t\thot._disposeHandlers.push(callback);\n \t\t\t},\n \t\t\tremoveDisposeHandler: function(callback) {\n \t\t\t\tvar idx = hot._disposeHandlers.indexOf(callback);\n \t\t\t\tif (idx >= 0) hot._disposeHandlers.splice(idx, 1);\n \t\t\t},\n \t\t\tinvalidate: function() {\n \t\t\t\tthis._selfInvalidated = true;\n \t\t\t\tswitch (hotStatus) {\n \t\t\t\t\tcase \"idle\":\n \t\t\t\t\t\thotUpdate = {};\n \t\t\t\t\t\thotUpdate[moduleId] = modules[moduleId];\n \t\t\t\t\t\thotSetStatus(\"ready\");\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"ready\":\n \t\t\t\t\t\thotApplyInvalidatedModule(moduleId);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"prepare\":\n \t\t\t\t\tcase \"check\":\n \t\t\t\t\tcase \"dispose\":\n \t\t\t\t\tcase \"apply\":\n \t\t\t\t\t\t(hotQueuedInvalidatedModules =\n \t\t\t\t\t\t\thotQueuedInvalidatedModules || []).push(moduleId);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tdefault:\n \t\t\t\t\t\t// ignore requests in error states\n \t\t\t\t\t\tbreak;\n \t\t\t\t}\n \t\t\t},\n\n \t\t\t// Management API\n \t\t\tcheck: hotCheck,\n \t\t\tapply: hotApply,\n \t\t\tstatus: function(l) {\n \t\t\t\tif (!l) return hotStatus;\n \t\t\t\thotStatusHandlers.push(l);\n \t\t\t},\n \t\t\taddStatusHandler: function(l) {\n \t\t\t\thotStatusHandlers.push(l);\n \t\t\t},\n \t\t\tremoveStatusHandler: function(l) {\n \t\t\t\tvar idx = hotStatusHandlers.indexOf(l);\n \t\t\t\tif (idx >= 0) hotStatusHandlers.splice(idx, 1);\n \t\t\t},\n\n \t\t\t//inherit from previous dispose call\n \t\t\tdata: hotCurrentModuleData[moduleId]\n \t\t};\n \t\thotCurrentChildModule = undefined;\n \t\treturn hot;\n \t}\n\n \tvar hotStatusHandlers = [];\n \tvar hotStatus = \"idle\";\n\n \tfunction hotSetStatus(newStatus) {\n \t\thotStatus = newStatus;\n \t\tfor (var i = 0; i < hotStatusHandlers.length; i++)\n \t\t\thotStatusHandlers[i].call(null, newStatus);\n \t}\n\n \t// while downloading\n \tvar hotWaitingFiles = 0;\n \tvar hotChunksLoading = 0;\n \tvar hotWaitingFilesMap = {};\n \tvar hotRequestedFilesMap = {};\n \tvar hotAvailableFilesMap = {};\n \tvar hotDeferred;\n\n \t// The update info\n \tvar hotUpdate, hotUpdateNewHash, hotQueuedInvalidatedModules;\n\n \tfunction toModuleId(id) {\n \t\tvar isNumber = +id + \"\" === id;\n \t\treturn isNumber ? +id : id;\n \t}\n\n \tfunction hotCheck(apply) {\n \t\tif (hotStatus !== \"idle\") {\n \t\t\tthrow new Error(\"check() is only allowed in idle status\");\n \t\t}\n \t\thotApplyOnUpdate = apply;\n \t\thotSetStatus(\"check\");\n \t\treturn hotDownloadManifest(hotRequestTimeout).then(function(update) {\n \t\t\tif (!update) {\n \t\t\t\thotSetStatus(hotApplyInvalidatedModules() ? \"ready\" : \"idle\");\n \t\t\t\treturn null;\n \t\t\t}\n \t\t\thotRequestedFilesMap = {};\n \t\t\thotWaitingFilesMap = {};\n \t\t\thotAvailableFilesMap = update.c;\n \t\t\thotUpdateNewHash = update.h;\n\n \t\t\thotSetStatus(\"prepare\");\n \t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\thotDeferred = {\n \t\t\t\t\tresolve: resolve,\n \t\t\t\t\treject: reject\n \t\t\t\t};\n \t\t\t});\n \t\t\thotUpdate = {};\n \t\t\tvar chunkId = 2;\n \t\t\t// eslint-disable-next-line no-lone-blocks\n \t\t\t{\n \t\t\t\thotEnsureUpdateChunk(chunkId);\n \t\t\t}\n \t\t\tif (\n \t\t\t\thotStatus === \"prepare\" &&\n \t\t\t\thotChunksLoading === 0 &&\n \t\t\t\thotWaitingFiles === 0\n \t\t\t) {\n \t\t\t\thotUpdateDownloaded();\n \t\t\t}\n \t\t\treturn promise;\n \t\t});\n \t}\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotAddUpdateChunk(chunkId, moreModules) {\n \t\tif (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId])\n \t\t\treturn;\n \t\thotRequestedFilesMap[chunkId] = false;\n \t\tfor (var moduleId in moreModules) {\n \t\t\tif (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\thotUpdate[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif (--hotWaitingFiles === 0 && hotChunksLoading === 0) {\n \t\t\thotUpdateDownloaded();\n \t\t}\n \t}\n\n \tfunction hotEnsureUpdateChunk(chunkId) {\n \t\tif (!hotAvailableFilesMap[chunkId]) {\n \t\t\thotWaitingFilesMap[chunkId] = true;\n \t\t} else {\n \t\t\thotRequestedFilesMap[chunkId] = true;\n \t\t\thotWaitingFiles++;\n \t\t\thotDownloadUpdateChunk(chunkId);\n \t\t}\n \t}\n\n \tfunction hotUpdateDownloaded() {\n \t\thotSetStatus(\"ready\");\n \t\tvar deferred = hotDeferred;\n \t\thotDeferred = null;\n \t\tif (!deferred) return;\n \t\tif (hotApplyOnUpdate) {\n \t\t\t// Wrap deferred object in Promise to mark it as a well-handled Promise to\n \t\t\t// avoid triggering uncaught exception warning in Chrome.\n \t\t\t// See https://bugs.chromium.org/p/chromium/issues/detail?id=465666\n \t\t\tPromise.resolve()\n \t\t\t\t.then(function() {\n \t\t\t\t\treturn hotApply(hotApplyOnUpdate);\n \t\t\t\t})\n \t\t\t\t.then(\n \t\t\t\t\tfunction(result) {\n \t\t\t\t\t\tdeferred.resolve(result);\n \t\t\t\t\t},\n \t\t\t\t\tfunction(err) {\n \t\t\t\t\t\tdeferred.reject(err);\n \t\t\t\t\t}\n \t\t\t\t);\n \t\t} else {\n \t\t\tvar outdatedModules = [];\n \t\t\tfor (var id in hotUpdate) {\n \t\t\t\tif (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {\n \t\t\t\t\toutdatedModules.push(toModuleId(id));\n \t\t\t\t}\n \t\t\t}\n \t\t\tdeferred.resolve(outdatedModules);\n \t\t}\n \t}\n\n \tfunction hotApply(options) {\n \t\tif (hotStatus !== \"ready\")\n \t\t\tthrow new Error(\"apply() is only allowed in ready status\");\n \t\toptions = options || {};\n \t\treturn hotApplyInternal(options);\n \t}\n\n \tfunction hotApplyInternal(options) {\n \t\thotApplyInvalidatedModules();\n\n \t\tvar cb;\n \t\tvar i;\n \t\tvar j;\n \t\tvar module;\n \t\tvar moduleId;\n\n \t\tfunction getAffectedStuff(updateModuleId) {\n \t\t\tvar outdatedModules = [updateModuleId];\n \t\t\tvar outdatedDependencies = {};\n\n \t\t\tvar queue = outdatedModules.map(function(id) {\n \t\t\t\treturn {\n \t\t\t\t\tchain: [id],\n \t\t\t\t\tid: id\n \t\t\t\t};\n \t\t\t});\n \t\t\twhile (queue.length > 0) {\n \t\t\t\tvar queueItem = queue.pop();\n \t\t\t\tvar moduleId = queueItem.id;\n \t\t\t\tvar chain = queueItem.chain;\n \t\t\t\tmodule = installedModules[moduleId];\n \t\t\t\tif (\n \t\t\t\t\t!module ||\n \t\t\t\t\t(module.hot._selfAccepted && !module.hot._selfInvalidated)\n \t\t\t\t)\n \t\t\t\t\tcontinue;\n \t\t\t\tif (module.hot._selfDeclined) {\n \t\t\t\t\treturn {\n \t\t\t\t\t\ttype: \"self-declined\",\n \t\t\t\t\t\tchain: chain,\n \t\t\t\t\t\tmoduleId: moduleId\n \t\t\t\t\t};\n \t\t\t\t}\n \t\t\t\tif (module.hot._main) {\n \t\t\t\t\treturn {\n \t\t\t\t\t\ttype: \"unaccepted\",\n \t\t\t\t\t\tchain: chain,\n \t\t\t\t\t\tmoduleId: moduleId\n \t\t\t\t\t};\n \t\t\t\t}\n \t\t\t\tfor (var i = 0; i < module.parents.length; i++) {\n \t\t\t\t\tvar parentId = module.parents[i];\n \t\t\t\t\tvar parent = installedModules[parentId];\n \t\t\t\t\tif (!parent) continue;\n \t\t\t\t\tif (parent.hot._declinedDependencies[moduleId]) {\n \t\t\t\t\t\treturn {\n \t\t\t\t\t\t\ttype: \"declined\",\n \t\t\t\t\t\t\tchain: chain.concat([parentId]),\n \t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\tparentId: parentId\n \t\t\t\t\t\t};\n \t\t\t\t\t}\n \t\t\t\t\tif (outdatedModules.indexOf(parentId) !== -1) continue;\n \t\t\t\t\tif (parent.hot._acceptedDependencies[moduleId]) {\n \t\t\t\t\t\tif (!outdatedDependencies[parentId])\n \t\t\t\t\t\t\toutdatedDependencies[parentId] = [];\n \t\t\t\t\t\taddAllToSet(outdatedDependencies[parentId], [moduleId]);\n \t\t\t\t\t\tcontinue;\n \t\t\t\t\t}\n \t\t\t\t\tdelete outdatedDependencies[parentId];\n \t\t\t\t\toutdatedModules.push(parentId);\n \t\t\t\t\tqueue.push({\n \t\t\t\t\t\tchain: chain.concat([parentId]),\n \t\t\t\t\t\tid: parentId\n \t\t\t\t\t});\n \t\t\t\t}\n \t\t\t}\n\n \t\t\treturn {\n \t\t\t\ttype: \"accepted\",\n \t\t\t\tmoduleId: updateModuleId,\n \t\t\t\toutdatedModules: outdatedModules,\n \t\t\t\toutdatedDependencies: outdatedDependencies\n \t\t\t};\n \t\t}\n\n \t\tfunction addAllToSet(a, b) {\n \t\t\tfor (var i = 0; i < b.length; i++) {\n \t\t\t\tvar item = b[i];\n \t\t\t\tif (a.indexOf(item) === -1) a.push(item);\n \t\t\t}\n \t\t}\n\n \t\t// at begin all updates modules are outdated\n \t\t// the \"outdated\" status can propagate to parents if they don't accept the children\n \t\tvar outdatedDependencies = {};\n \t\tvar outdatedModules = [];\n \t\tvar appliedUpdate = {};\n\n \t\tvar warnUnexpectedRequire = function warnUnexpectedRequire() {\n \t\t\tconsole.warn(\n \t\t\t\t\"[HMR] unexpected require(\" + result.moduleId + \") to disposed module\"\n \t\t\t);\n \t\t};\n\n \t\tfor (var id in hotUpdate) {\n \t\t\tif (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {\n \t\t\t\tmoduleId = toModuleId(id);\n \t\t\t\t/** @type {TODO} */\n \t\t\t\tvar result;\n \t\t\t\tif (hotUpdate[id]) {\n \t\t\t\t\tresult = getAffectedStuff(moduleId);\n \t\t\t\t} else {\n \t\t\t\t\tresult = {\n \t\t\t\t\t\ttype: \"disposed\",\n \t\t\t\t\t\tmoduleId: id\n \t\t\t\t\t};\n \t\t\t\t}\n \t\t\t\t/** @type {Error|false} */\n \t\t\t\tvar abortError = false;\n \t\t\t\tvar doApply = false;\n \t\t\t\tvar doDispose = false;\n \t\t\t\tvar chainInfo = \"\";\n \t\t\t\tif (result.chain) {\n \t\t\t\t\tchainInfo = \"\\nUpdate propagation: \" + result.chain.join(\" -> \");\n \t\t\t\t}\n \t\t\t\tswitch (result.type) {\n \t\t\t\t\tcase \"self-declined\":\n \t\t\t\t\t\tif (options.onDeclined) options.onDeclined(result);\n \t\t\t\t\t\tif (!options.ignoreDeclined)\n \t\t\t\t\t\t\tabortError = new Error(\n \t\t\t\t\t\t\t\t\"Aborted because of self decline: \" +\n \t\t\t\t\t\t\t\t\tresult.moduleId +\n \t\t\t\t\t\t\t\t\tchainInfo\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"declined\":\n \t\t\t\t\t\tif (options.onDeclined) options.onDeclined(result);\n \t\t\t\t\t\tif (!options.ignoreDeclined)\n \t\t\t\t\t\t\tabortError = new Error(\n \t\t\t\t\t\t\t\t\"Aborted because of declined dependency: \" +\n \t\t\t\t\t\t\t\t\tresult.moduleId +\n \t\t\t\t\t\t\t\t\t\" in \" +\n \t\t\t\t\t\t\t\t\tresult.parentId +\n \t\t\t\t\t\t\t\t\tchainInfo\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"unaccepted\":\n \t\t\t\t\t\tif (options.onUnaccepted) options.onUnaccepted(result);\n \t\t\t\t\t\tif (!options.ignoreUnaccepted)\n \t\t\t\t\t\t\tabortError = new Error(\n \t\t\t\t\t\t\t\t\"Aborted because \" + moduleId + \" is not accepted\" + chainInfo\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"accepted\":\n \t\t\t\t\t\tif (options.onAccepted) options.onAccepted(result);\n \t\t\t\t\t\tdoApply = true;\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"disposed\":\n \t\t\t\t\t\tif (options.onDisposed) options.onDisposed(result);\n \t\t\t\t\t\tdoDispose = true;\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tdefault:\n \t\t\t\t\t\tthrow new Error(\"Unexception type \" + result.type);\n \t\t\t\t}\n \t\t\t\tif (abortError) {\n \t\t\t\t\thotSetStatus(\"abort\");\n \t\t\t\t\treturn Promise.reject(abortError);\n \t\t\t\t}\n \t\t\t\tif (doApply) {\n \t\t\t\t\tappliedUpdate[moduleId] = hotUpdate[moduleId];\n \t\t\t\t\taddAllToSet(outdatedModules, result.outdatedModules);\n \t\t\t\t\tfor (moduleId in result.outdatedDependencies) {\n \t\t\t\t\t\tif (\n \t\t\t\t\t\t\tObject.prototype.hasOwnProperty.call(\n \t\t\t\t\t\t\t\tresult.outdatedDependencies,\n \t\t\t\t\t\t\t\tmoduleId\n \t\t\t\t\t\t\t)\n \t\t\t\t\t\t) {\n \t\t\t\t\t\t\tif (!outdatedDependencies[moduleId])\n \t\t\t\t\t\t\t\toutdatedDependencies[moduleId] = [];\n \t\t\t\t\t\t\taddAllToSet(\n \t\t\t\t\t\t\t\toutdatedDependencies[moduleId],\n \t\t\t\t\t\t\t\tresult.outdatedDependencies[moduleId]\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\t}\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t\tif (doDispose) {\n \t\t\t\t\taddAllToSet(outdatedModules, [result.moduleId]);\n \t\t\t\t\tappliedUpdate[moduleId] = warnUnexpectedRequire;\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// Store self accepted outdated modules to require them later by the module system\n \t\tvar outdatedSelfAcceptedModules = [];\n \t\tfor (i = 0; i < outdatedModules.length; i++) {\n \t\t\tmoduleId = outdatedModules[i];\n \t\t\tif (\n \t\t\t\tinstalledModules[moduleId] &&\n \t\t\t\tinstalledModules[moduleId].hot._selfAccepted &&\n \t\t\t\t// removed self-accepted modules should not be required\n \t\t\t\tappliedUpdate[moduleId] !== warnUnexpectedRequire &&\n \t\t\t\t// when called invalidate self-accepting is not possible\n \t\t\t\t!installedModules[moduleId].hot._selfInvalidated\n \t\t\t) {\n \t\t\t\toutdatedSelfAcceptedModules.push({\n \t\t\t\t\tmodule: moduleId,\n \t\t\t\t\tparents: installedModules[moduleId].parents.slice(),\n \t\t\t\t\terrorHandler: installedModules[moduleId].hot._selfAccepted\n \t\t\t\t});\n \t\t\t}\n \t\t}\n\n \t\t// Now in \"dispose\" phase\n \t\thotSetStatus(\"dispose\");\n \t\tObject.keys(hotAvailableFilesMap).forEach(function(chunkId) {\n \t\t\tif (hotAvailableFilesMap[chunkId] === false) {\n \t\t\t\thotDisposeChunk(chunkId);\n \t\t\t}\n \t\t});\n\n \t\tvar idx;\n \t\tvar queue = outdatedModules.slice();\n \t\twhile (queue.length > 0) {\n \t\t\tmoduleId = queue.pop();\n \t\t\tmodule = installedModules[moduleId];\n \t\t\tif (!module) continue;\n\n \t\t\tvar data = {};\n\n \t\t\t// Call dispose handlers\n \t\t\tvar disposeHandlers = module.hot._disposeHandlers;\n \t\t\tfor (j = 0; j < disposeHandlers.length; j++) {\n \t\t\t\tcb = disposeHandlers[j];\n \t\t\t\tcb(data);\n \t\t\t}\n \t\t\thotCurrentModuleData[moduleId] = data;\n\n \t\t\t// disable module (this disables requires from this module)\n \t\t\tmodule.hot.active = false;\n\n \t\t\t// remove module from cache\n \t\t\tdelete installedModules[moduleId];\n\n \t\t\t// when disposing there is no need to call dispose handler\n \t\t\tdelete outdatedDependencies[moduleId];\n\n \t\t\t// remove \"parents\" references from all children\n \t\t\tfor (j = 0; j < module.children.length; j++) {\n \t\t\t\tvar child = installedModules[module.children[j]];\n \t\t\t\tif (!child) continue;\n \t\t\t\tidx = child.parents.indexOf(moduleId);\n \t\t\t\tif (idx >= 0) {\n \t\t\t\t\tchild.parents.splice(idx, 1);\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// remove outdated dependency from module children\n \t\tvar dependency;\n \t\tvar moduleOutdatedDependencies;\n \t\tfor (moduleId in outdatedDependencies) {\n \t\t\tif (\n \t\t\t\tObject.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)\n \t\t\t) {\n \t\t\t\tmodule = installedModules[moduleId];\n \t\t\t\tif (module) {\n \t\t\t\t\tmoduleOutdatedDependencies = outdatedDependencies[moduleId];\n \t\t\t\t\tfor (j = 0; j < moduleOutdatedDependencies.length; j++) {\n \t\t\t\t\t\tdependency = moduleOutdatedDependencies[j];\n \t\t\t\t\t\tidx = module.children.indexOf(dependency);\n \t\t\t\t\t\tif (idx >= 0) module.children.splice(idx, 1);\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// Now in \"apply\" phase\n \t\thotSetStatus(\"apply\");\n\n \t\tif (hotUpdateNewHash !== undefined) {\n \t\t\thotCurrentHash = hotUpdateNewHash;\n \t\t\thotUpdateNewHash = undefined;\n \t\t}\n \t\thotUpdate = undefined;\n\n \t\t// insert new code\n \t\tfor (moduleId in appliedUpdate) {\n \t\t\tif (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) {\n \t\t\t\tmodules[moduleId] = appliedUpdate[moduleId];\n \t\t\t}\n \t\t}\n\n \t\t// call accept handlers\n \t\tvar error = null;\n \t\tfor (moduleId in outdatedDependencies) {\n \t\t\tif (\n \t\t\t\tObject.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)\n \t\t\t) {\n \t\t\t\tmodule = installedModules[moduleId];\n \t\t\t\tif (module) {\n \t\t\t\t\tmoduleOutdatedDependencies = outdatedDependencies[moduleId];\n \t\t\t\t\tvar callbacks = [];\n \t\t\t\t\tfor (i = 0; i < moduleOutdatedDependencies.length; i++) {\n \t\t\t\t\t\tdependency = moduleOutdatedDependencies[i];\n \t\t\t\t\t\tcb = module.hot._acceptedDependencies[dependency];\n \t\t\t\t\t\tif (cb) {\n \t\t\t\t\t\t\tif (callbacks.indexOf(cb) !== -1) continue;\n \t\t\t\t\t\t\tcallbacks.push(cb);\n \t\t\t\t\t\t}\n \t\t\t\t\t}\n \t\t\t\t\tfor (i = 0; i < callbacks.length; i++) {\n \t\t\t\t\t\tcb = callbacks[i];\n \t\t\t\t\t\ttry {\n \t\t\t\t\t\t\tcb(moduleOutdatedDependencies);\n \t\t\t\t\t\t} catch (err) {\n \t\t\t\t\t\t\tif (options.onErrored) {\n \t\t\t\t\t\t\t\toptions.onErrored({\n \t\t\t\t\t\t\t\t\ttype: \"accept-errored\",\n \t\t\t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\t\t\tdependencyId: moduleOutdatedDependencies[i],\n \t\t\t\t\t\t\t\t\terror: err\n \t\t\t\t\t\t\t\t});\n \t\t\t\t\t\t\t}\n \t\t\t\t\t\t\tif (!options.ignoreErrored) {\n \t\t\t\t\t\t\t\tif (!error) error = err;\n \t\t\t\t\t\t\t}\n \t\t\t\t\t\t}\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// Load self accepted modules\n \t\tfor (i = 0; i < outdatedSelfAcceptedModules.length; i++) {\n \t\t\tvar item = outdatedSelfAcceptedModules[i];\n \t\t\tmoduleId = item.module;\n \t\t\thotCurrentParents = item.parents;\n \t\t\thotCurrentChildModule = moduleId;\n \t\t\ttry {\n \t\t\t\t__webpack_require__(moduleId);\n \t\t\t} catch (err) {\n \t\t\t\tif (typeof item.errorHandler === \"function\") {\n \t\t\t\t\ttry {\n \t\t\t\t\t\titem.errorHandler(err);\n \t\t\t\t\t} catch (err2) {\n \t\t\t\t\t\tif (options.onErrored) {\n \t\t\t\t\t\t\toptions.onErrored({\n \t\t\t\t\t\t\t\ttype: \"self-accept-error-handler-errored\",\n \t\t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\t\terror: err2,\n \t\t\t\t\t\t\t\toriginalError: err\n \t\t\t\t\t\t\t});\n \t\t\t\t\t\t}\n \t\t\t\t\t\tif (!options.ignoreErrored) {\n \t\t\t\t\t\t\tif (!error) error = err2;\n \t\t\t\t\t\t}\n \t\t\t\t\t\tif (!error) error = err;\n \t\t\t\t\t}\n \t\t\t\t} else {\n \t\t\t\t\tif (options.onErrored) {\n \t\t\t\t\t\toptions.onErrored({\n \t\t\t\t\t\t\ttype: \"self-accept-errored\",\n \t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\terror: err\n \t\t\t\t\t\t});\n \t\t\t\t\t}\n \t\t\t\t\tif (!options.ignoreErrored) {\n \t\t\t\t\t\tif (!error) error = err;\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// handle errors in accept handlers and self accepted module load\n \t\tif (error) {\n \t\t\thotSetStatus(\"fail\");\n \t\t\treturn Promise.reject(error);\n \t\t}\n\n \t\tif (hotQueuedInvalidatedModules) {\n \t\t\treturn hotApplyInternal(options).then(function(list) {\n \t\t\t\toutdatedModules.forEach(function(moduleId) {\n \t\t\t\t\tif (list.indexOf(moduleId) < 0) list.push(moduleId);\n \t\t\t\t});\n \t\t\t\treturn list;\n \t\t\t});\n \t\t}\n\n \t\thotSetStatus(\"idle\");\n \t\treturn new Promise(function(resolve) {\n \t\t\tresolve(outdatedModules);\n \t\t});\n \t}\n\n \tfunction hotApplyInvalidatedModules() {\n \t\tif (hotQueuedInvalidatedModules) {\n \t\t\tif (!hotUpdate) hotUpdate = {};\n \t\t\thotQueuedInvalidatedModules.forEach(hotApplyInvalidatedModule);\n \t\t\thotQueuedInvalidatedModules = undefined;\n \t\t\treturn true;\n \t\t}\n \t}\n\n \tfunction hotApplyInvalidatedModule(moduleId) {\n \t\tif (!Object.prototype.hasOwnProperty.call(hotUpdate, moduleId))\n \t\t\thotUpdate[moduleId] = modules[moduleId];\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {},\n \t\t\thot: hotCreateModule(moduleId),\n \t\t\tparents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp),\n \t\t\tchildren: []\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// __webpack_hash__\n \t__webpack_require__.h = function() { return hotCurrentHash; };\n\n\n \t// Load entry module and return exports\n \treturn hotCreateRequire(101)(__webpack_require__.s = 101);\n","/**\r\n * \u7ec4\u4ef6\u7248\u672c\u53f7,\u7ec4\u4ef6\u6587\u4ef6\u5730\u5740\u5305\u542b\u6b64\u7248\u672c\u53f7\r\n */\r\nexport const VERSION = process.env.DSM_VERSION\r\n// export const HOST = process.env.DSM_HOST\r\nexport const IS_HUB = process.env.DSM_IS_HUB === 'true'\r\nexport const BASEPATH = IS_HUB? process.env.DSM_BASEPATH : `a/lib/${process.env.DSM_BASEPATH}`\r\n\r\nexport const TA_APPID =\r\n process.env.NODE_ENV === 'production'\r\n ? (IS_HUB ? 'e5fd5324917e4fce8fe82f438ff48646':'1202a646b53146fa854a4915e870982b')\r\n : (IS_HUB ? 'debug-appid': 'bd7cd481bf884b38bdfe1c244bd04218')\r\nexport const TA_SERVERURL = IS_HUB ? 'https://tahub-grec.1y.com/sync_js' : 'https://talab-grec.1y.com/sync_js'\r\nexport const MAX_REFERRER_STRING_LENGTH = 200\r\nexport const EVENT_TYPE = {\r\n click: 'click',\r\n error: 'error',\r\n ajax: 'ajax',\r\n // ajaxFail: 'ajaxFail',\r\n // ajaxSuccess: 'ajaxSuccess',\r\n pv: 'pv',\r\n custom: 'custom',\r\n pageview: 'pageview',\r\n}\r\n\r\n//name, ua,page_url,duration,url_path,href,title,dsmid,eventName,res,extData,\r\n// prevDsmid,prevName,prevEventName,nextDsmid,nextName,nextEventName,times\r\nexport const TRACK_ATTRS = [\r\n {\r\n key: 'name',\r\n necessary: true,\r\n },\r\n // {\r\n // key: 'extData',\r\n // }\r\n]\r\n\r\nexport const PLATFORM = {\r\n pc:'pc',\r\n mobile: 'mobile'\r\n}\r\n\r\nexport const MAX_ATTR_VALUE_LENGTH = 15\r\n// export const TA_APPIDS = {\r\n// SHOU_YOU_FAXING:'1202a646b53146fa854a4915e870982b'\r\n// }\r\n\r\nexport const BIKEY = 'FnyiMv'","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar $toString = require('./_function-to-string');\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","import {\r\n MAX_REFERRER_STRING_LENGTH,\r\n MAX_ATTR_VALUE_LENGTH,\r\n PLATFORM,\r\n} from '../constants'\r\n\r\nfunction Ya() {\r\n return new RegExp(\r\n /(.*?)\\.?([^\\.]*?)\\.(com|net|org|biz|ws|in|me|co\\.uk|co|org\\.uk|ltd\\.uk|plc\\.uk|me\\.uk|edu|mil|br\\.com|cn\\.com|eu\\.com|hu\\.com|no\\.com|qc\\.com|sa\\.com|se\\.com|se\\.net|us\\.com|uy\\.com|ac|co\\.ac|gv\\.ac|or\\.ac|ac\\.ac|af|am|as|at|ac\\.at|co\\.at|gv\\.at|or\\.at|asn\\.au|com\\.au|edu\\.au|org\\.au|net\\.au|id\\.au|be|ac\\.be|adm\\.br|adv\\.br|am\\.br|arq\\.br|art\\.br|bio\\.br|cng\\.br|cnt\\.br|com\\.br|ecn\\.br|eng\\.br|esp\\.br|etc\\.br|eti\\.br|fm\\.br|fot\\.br|fst\\.br|g12\\.br|gov\\.br|ind\\.br|inf\\.br|jor\\.br|lel\\.br|med\\.br|mil\\.br|net\\.br|nom\\.br|ntr\\.br|odo\\.br|org\\.br|ppg\\.br|pro\\.br|psc\\.br|psi\\.br|rec\\.br|slg\\.br|tmp\\.br|tur\\.br|tv\\.br|vet\\.br|zlg\\.br|br|ab\\.ca|bc\\.ca|mb\\.ca|nb\\.ca|nf\\.ca|ns\\.ca|nt\\.ca|on\\.ca|pe\\.ca|qc\\.ca|sk\\.ca|yk\\.ca|ca|cc|ac\\.cn|net\\.cn|com\\.cn|edu\\.cn|gov\\.cn|org\\.cn|bj\\.cn|sh\\.cn|tj\\.cn|cq\\.cn|he\\.cn|nm\\.cn|ln\\.cn|jl\\.cn|hl\\.cn|js\\.cn|zj\\.cn|ah\\.cn|gd\\.cn|gx\\.cn|hi\\.cn|sc\\.cn|gz\\.cn|yn\\.cn|xz\\.cn|sn\\.cn|gs\\.cn|qh\\.cn|nx\\.cn|xj\\.cn|tw\\.cn|hk\\.cn|mo\\.cn|cn|cx|cz|de|dk|fo|com\\.ec|tm\\.fr|com\\.fr|asso\\.fr|presse\\.fr|fr|gf|gs|co\\.il|net\\.il|ac\\.il|k12\\.il|gov\\.il|muni\\.il|ac\\.in|co\\.in|org\\.in|ernet\\.in|gov\\.in|net\\.in|res\\.in|is|it|ac\\.jp|co\\.jp|go\\.jp|or\\.jp|ne\\.jp|ac\\.kr|co\\.kr|go\\.kr|ne\\.kr|nm\\.kr|or\\.kr|li|lt|lu|asso\\.mc|tm\\.mc|com\\.mm|org\\.mm|net\\.mm|edu\\.mm|gov\\.mm|ms|nl|no|nu|pl|ro|org\\.ro|store\\.ro|tm\\.ro|firm\\.ro|www\\.ro|arts\\.ro|rec\\.ro|info\\.ro|nom\\.ro|nt\\.ro|se|si|com\\.sg|org\\.sg|net\\.sg|gov\\.sg|sk|st|tf|ac\\.th|co\\.th|go\\.th|mi\\.th|net\\.th|or\\.th|tm|to|com\\.tr|edu\\.tr|gov\\.tr|k12\\.tr|net\\.tr|org\\.tr|com\\.tw|org\\.tw|net\\.tw|ac\\.uk|uk\\.com|uk\\.net|gb\\.com|gb\\.net|vg|sh|kz|ch|info|ua|gov|name|pro|ie|hk|com\\.hk|org\\.hk|net\\.hk|edu\\.hk|us|tk|cd|by|ad|lv|eu\\.lv|bz|es|jp|cl|ag|mobi|eu|co\\.nz|org\\.nz|net\\.nz|maori\\.nz|iwi\\.nz|io|la|md|sc|sg|vc|tw|travel|my|se|tv|pt|com\\.pt|edu\\.pt|asia|fi|com\\.ve|net\\.ve|fi|org\\.ve|web\\.ve|info\\.ve|co\\.ve|tel|im|gr|ru|net\\.ru|org\\.ru|hr|com\\.hr|ly|xyz)$/\r\n )\r\n}\r\n\r\nfunction decodeURIComponent(t) {\r\n var r = ''\r\n try {\r\n r = decodeURIComponent(t)\r\n } catch (e) {\r\n r = t\r\n }\r\n return r\r\n}\r\n\r\nfunction _a(e, t) {\r\n for (\r\n var r,\r\n n,\r\n i = e.charAt(0),\r\n o = t.split('&'),\r\n s = [],\r\n a = {},\r\n c = e.substring(1),\r\n p = 0,\r\n u = o.length;\r\n p < u;\r\n p++\r\n )\r\n if (\r\n '' !==\r\n (s = (s = o[p].match(/(.*?)=(.*)/)) || [o[p], o[p], ''])[1].replace(\r\n /\\s/g,\r\n ''\r\n )\r\n ) {\r\n if (\r\n ((s[2] = ((n = s[2] || ''), decodeURIComponent(n.replace(/\\+/g, ' ')))),\r\n c === s[1])\r\n )\r\n return s[2]\r\n ;(r = s[1].match(/(.*)\\[([0-9]+)\\]/))\r\n ? ((a[r[1]] = a[r[1]] || []), (a[r[1]][r[2]] = s[2]))\r\n : (a[s[1]] = s[2])\r\n }\r\n return i === e ? a : a[c]\r\n}\r\n\r\nfunction $a(e, t) {\r\n var r = e.charAt(0),\r\n t = t.split(r)\r\n return r === e\r\n ? t\r\n : t[(e = parseInt(e.substring(1), 10)) < 0 ? t.length + e : e - 1]\r\n}\r\n\r\nfunction urlParse(e, t) {\r\n var r = {}\r\n if ('tld?' === e) return Ya()\r\n if (((t = t || window.location.toString()), !e)) return t\r\n if (((e = e.toString()), (n = t.match(/^mailto:([^\\/].+)/))))\r\n (r.protocol = 'mailto'), (r.email = n[1])\r\n else {\r\n if (\r\n ((n = (t = (n = t.match(/(.*?)\\/#\\!(.*)/)) ? n[1] + n[2] : t).match(\r\n /(.*?)#(.*)/\r\n )) && ((r.hash = n[2]), (t = n[1])),\r\n r.hash && e.match(/^#/))\r\n )\r\n return _a(e, r.hash)\r\n if (\r\n ((n = t.match(/(.*?)\\?(.*)/)) && ((r.query = n[2]), (t = n[1])),\r\n r.query && e.match(/^\\?/))\r\n )\r\n return _a(e, r.query)\r\n if (\r\n ((n = t.match(/(.*?)\\:?\\/\\/(.*)/)) &&\r\n ((r.protocol = n[1].toLowerCase()), (t = n[2])),\r\n (n = t.match(/(.*?)(\\/.*)/)) && ((r.path = n[2]), (t = n[1])),\r\n (r.path = (r.path || '').replace(/^([^\\/])/, '/$1').replace(/\\/$/, '')),\r\n (e = e.match(/^[\\-0-9]+$/) ? e.replace(/^([^\\/])/, '/$1') : e).match(\r\n /^\\//\r\n ))\r\n )\r\n return $a(e, r.path.substring(1))\r\n if (\r\n ((n = (n = $a('/-1', r.path.substring(1))) && n.match(/(.*?)\\.(.*)/)) &&\r\n ((r.file = n[0]), (r.filename = n[1]), (r.fileext = n[2])),\r\n (n = t.match(/(.*)\\:([0-9]+)$/)) && ((r.port = n[2]), (t = n[1])),\r\n (n = t.match(/(.*?)@(.*)/)) && ((r.auth = n[1]), (t = n[2])),\r\n r.auth &&\r\n ((n = r.auth.match(/(.*)\\:(.*)/)),\r\n (r.user = n ? n[1] : r.auth),\r\n (r.pass = n ? n[2] : void 0)),\r\n (r.hostname = t.toLowerCase()),\r\n '.' === e.charAt(0))\r\n )\r\n return $a(e, r.hostname)\r\n Ya() &&\r\n (n = r.hostname.match(Ya())) &&\r\n ((r.tld = n[3]),\r\n (r.domain = n[2] ? n[2] + '.' + n[3] : void 0),\r\n (r.sub = n[1] || void 0))\r\n var n = r.port ? ':' + r.port : ''\r\n ;(r.protocol = r.protocol || window.location.protocol.replace(':', '')),\r\n (r.port = r.port || ('https' === r.protocol ? '443' : '80')),\r\n (r.protocol = r.protocol || ('443' === r.port ? 'https' : 'http')),\r\n (r.basic = r.protocol + '://' + r.hostname + n)\r\n }\r\n return e in r ? r[e] : '{}' === e ? r : ''\r\n}\r\n\r\nexport const formatDate = function (e) {\r\n let r\r\n function t(e) {\r\n return e < 10 ? '0' + e : e\r\n }\r\n return (\r\n e.getFullYear() +\r\n '-' +\r\n t(e.getMonth() + 1) +\r\n '-' +\r\n t(e.getDate()) +\r\n ' ' +\r\n t(e.getHours()) +\r\n ':' +\r\n t(e.getMinutes()) +\r\n ':' +\r\n t(e.getSeconds()) +\r\n '.' +\r\n ((r = e.getMilliseconds()) < 10 ? '00' + r : r < 100 ? '0' + r : r)\r\n )\r\n}\r\n\r\nexport const UUIDv4 = function () {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (e) {\r\n var t = (16 * Math.random()) | 0\r\n return ('x' == e ? t : (3 & t) | 8).toString(16)\r\n })\r\n}\r\n\r\nexport const stripEmptyProperties = function (obj) {\r\n return obj\r\n}\r\n\r\nexport const getReferrer = function (e) {\r\n e = e || document.referrer\r\n return 'string' != typeof e\r\n ? '\u53d6\u503c\u5f02\u5e38_referrer\u5f02\u5e38_' + String(e)\r\n : 'string' ==\r\n typeof (e = (e =\r\n 0 === e.indexOf('https://www.baidu.com/') ? e.split('?')[0] : e).slice(\r\n 0,\r\n MAX_REFERRER_STRING_LENGTH\r\n ))\r\n ? e\r\n : ''\r\n}\r\n\r\nexport const getPageProperties = function () {\r\n var e = getReferrer()\r\n return stripEmptyProperties({\r\n referrer: e,\r\n referrer_host: e && urlParse('hostname', e),\r\n name: document.title,\r\n })\r\n}\r\n\r\n/**\r\n * \u83b7\u53d6\u5bf9\u8c61\u7684\u7b80\u8981\u503c,\u5982\u679c\u67d0\u4e2a\u5b57\u6bb5\u5185\u5bb9\u8fc7\u957f,\u5219\u5c06\u8be5\u5b57\u6bb5\u503c\u6539\u4e3a:\"\u5185\u5bb9\u8fc7\u957f\",\u5d4c\u5957\u5bf9\u8c61\u6700\u591a\u53ea\u9012\u5f52\u5230\u7b2c\u4e09\u5c42\r\n * @param {json\u5bf9\u8c61} obj\r\n */\r\nexport const getShortData = function (obj, level = 1) {\r\n if (isObject(obj)) {\r\n if (level > 3) {\r\n return '>oo'\r\n } else {\r\n const keys = Object.keys(obj)\r\n const resData = {}\r\n keys.forEach((key) => {\r\n resData[key] = getShortData(obj[key], level + 1)\r\n })\r\n return resData\r\n }\r\n } else if (isArray(obj)) {\r\n // const resData = []\r\n // obj.forEach(n=>{\r\n // resData.push(getShortData(n,level+1))\r\n // })\r\n return `arr=${obj.length}`\r\n } else if (isString(obj)) {\r\n return obj.slice(0, MAX_ATTR_VALUE_LENGTH)\r\n } else {\r\n return obj\r\n }\r\n}\r\n\r\nexport const isObject = function (obj) {\r\n return '[object Object]' === Object.prototype.toString.call(obj) && null !== obj\r\n}\r\n\r\nexport const isArray = function (obj) {\r\n return '[object Array]' === Object.prototype.toString.call(obj)\r\n}\r\n\r\nexport const isString = function (e) {\r\n return '[object String]' === Object.prototype.toString.call(e)\r\n}\r\n\r\nexport const clone = function (obj) {\r\n return JSON.parse(JSON.stringify(obj))\r\n}\r\n\r\nexport const isFunction = (val) => val && typeof val === 'function'\r\n\r\nexport const getPlatform = function () {\r\n return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(\r\n navigator.userAgent\r\n )\r\n ? PLATFORM.mobile\r\n : PLATFORM.pc\r\n}\r\n\r\n\r\nexport const getXpath = function (tar) {\r\n let _path = []\r\n let tarItem = tar\r\n //_bodyHTML || getBodyHtml();\r\n if (tarItem && tarItem.nodeType == 1) {\r\n _path.push(getAttr(tar))\r\n for (tarItem; tarItem; ) {\r\n tarItem = tarItem.parentNode\r\n var _xpath = getAttr(tarItem)\r\n\r\n _xpath && _path.unshift(_xpath)\r\n if (\r\n tarItem.tagName.toLowerCase() === 'body' ||\r\n (_xpath && !!~_xpath.indexOf('#'))\r\n ) {\r\n break\r\n }\r\n }\r\n }\r\n return _path.length > 0 ? _path.join('>') : null\r\n}\r\n\r\nexport const getAttr = function (tar) {\r\n if (tar && tar.tagName) {\r\n let _class = tar.className\r\n let _id = tar.id\r\n let _path = tar.tagName.toLowerCase()\r\n if (_id) {\r\n _path += '#' + _id\r\n } else if (_class) {\r\n // \u79fb\u9664\u6a21\u5757\u76d1\u63a7class\r\n _class = _class\r\n .replace(/className.{10,}?( |$)/g, '')\r\n .replace(/(^\\s*)|(\\s*$)/g, '')\r\n .replace(/ +/g, ' ')\r\n .replace(/ /g, '.')\r\n if (_class != '') {\r\n _path += '.' + _class\r\n }\r\n }\r\n return _path\r\n } else {\r\n return false\r\n }\r\n}\r\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","var core = module.exports = { version: '2.6.12' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '\u00a9 2020 Denis Pushkarev (zloirock.ru)'\n});\n","module.exports = false;\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","module.exports = {};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n","'use strict';\n\nvar classof = require('./_classof');\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n","'use strict';\nrequire('./es6.regexp.exec');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar wks = require('./_wks');\nvar regexpExec = require('./_regexp-exec');\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\n\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","exports.f = {}.propertyIsEnumerable;\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","'use strict';\n\nvar regexpFlags = require('./_flags');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var dP = require('./_object-dp').f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || require('./_descriptors') && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","exports.f = require('./_wks');\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar $export = require('./_export');\nvar html = require('./_html');\nvar cof = require('./_cof');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nvar arraySlice = [].slice;\n\n// fallback for not array-like ES3 strings and DOM objects\n$export($export.P + $export.F * require('./_fails')(function () {\n if (html) arraySlice.call(html);\n}), 'Array', {\n slice: function slice(begin, end) {\n var len = toLength(this.length);\n var klass = cof(this);\n end = end === undefined ? len : end;\n if (klass == 'Array') return arraySlice.call(this, begin, end);\n var start = toAbsoluteIndex(begin, len);\n var upTo = toAbsoluteIndex(end, len);\n var size = toLength(upTo - start);\n var cloned = new Array(size);\n var i = 0;\n for (; i < size; i++) cloned[i] = klass == 'String'\n ? this.charAt(start + i)\n : this[start + i];\n return cloned;\n }\n});\n","// 7.2.8 IsRegExp(argument)\nvar isObject = require('./_is-object');\nvar cof = require('./_cof');\nvar MATCH = require('./_wks')('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar toInteger = require('./_to-integer');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\nrequire('./es6.regexp.flags');\nvar anObject = require('./_an-object');\nvar $flags = require('./_flags');\nvar DESCRIPTORS = require('./_descriptors');\nvar TO_STRING = 'toString';\nvar $toString = /./[TO_STRING];\n\nvar define = function (fn) {\n require('./_redefine')(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif (require('./_fails')(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {\n define(function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if ($toString.name != TO_STRING) {\n define(function toString() {\n return $toString.call(this);\n });\n}\n","var isObject = require('./_is-object');\nvar setPrototypeOf = require('./_set-proto').set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n","var global = require('./_global');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar dP = require('./_object-dp').f;\nvar gOPN = require('./_object-gopn').f;\nvar isRegExp = require('./_is-regexp');\nvar $flags = require('./_flags');\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () {\n re2[require('./_wks')('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n require('./_redefine')(global, 'RegExp', $RegExp);\n}\n\nrequire('./_set-species')('RegExp');\n","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar fails = require('./_fails');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toObject = require('./_to-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $GOPS = require('./_object-gops');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n $GOPS.f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });\n\n$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return $GOPS.f(toObject(it));\n }\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","var $iterators = require('./es6.array.iterator');\nvar getKeys = require('./_object-keys');\nvar redefine = require('./_redefine');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar wks = require('./_wks');\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n","'use strict';\nvar regexpExec = require('./_regexp-exec');\nrequire('./_export')({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\n});\n","// 21.2.5.3 get RegExp.prototype.flags()\nif (require('./_descriptors') && /./g.flags != 'g') require('./_object-dp').f(RegExp.prototype, 'flags', {\n configurable: true,\n get: require('./_flags')\n});\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n","'use strict';\nvar global = require('./_global');\nvar dP = require('./_object-dp');\nvar DESCRIPTORS = require('./_descriptors');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n","// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar SPECIES = require('./_wks')('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n","// most Object methods by ES6 should accept primitives\nvar $export = require('./_export');\nvar core = require('./_core');\nvar fails = require('./_fails');\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n","!(function (e, t) {\r\n 'object' == typeof exports && 'undefined' != typeof module\r\n ? (module.exports = t())\r\n : 'function' == typeof define && define.amd\r\n ? define(t)\r\n : ((e = e || self).thinkingdata = t())\r\n})(this, function () {\r\n 'use strict'\r\n function _typeof(e) {\r\n return (_typeof =\r\n 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator\r\n ? function (e) {\r\n return typeof e\r\n }\r\n : function (e) {\r\n return e &&\r\n 'function' == typeof Symbol &&\r\n e.constructor === Symbol &&\r\n e !== Symbol.prototype\r\n ? 'symbol'\r\n : typeof e\r\n })(e)\r\n }\r\n function _classCallCheck(e, t) {\r\n if (!(e instanceof t))\r\n throw new TypeError('Cannot call a class as a function')\r\n }\r\n function _defineProperties(e, t) {\r\n for (var n = 0; n < t.length; n++) {\r\n var r = t[n]\r\n ;(r.enumerable = r.enumerable || !1),\r\n (r.configurable = !0),\r\n 'value' in r && (r.writable = !0),\r\n Object.defineProperty(e, r.key, r)\r\n }\r\n }\r\n function _createClass(e, t, n) {\r\n return (\r\n t && _defineProperties(e.prototype, t),\r\n n && _defineProperties(e, n),\r\n Object.defineProperty(e, 'prototype', { writable: !1 }),\r\n e\r\n )\r\n }\r\n 'object' !== ('undefined' == typeof JSON ? 'undefined' : _typeof(JSON)) &&\r\n (JSON = {}),\r\n (function () {\r\n var rx_one = /^[\\],:{}\\s]*$/,\r\n rx_two = /\\\\(?:[\"\\\\\\/bfnrt]|u[0-9a-fA-F]{4})/g,\r\n rx_three =\r\n /\"[^\"\\\\\\n\\r]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g,\r\n rx_four = /(?:^|:|,)(?:\\s*\\[)+/g,\r\n rx_escapable =\r\n /[\\\\\"\\u0000-\\u001f\\u007f-\\u009f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,\r\n rx_dangerous =\r\n /[\\u0000\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,\r\n gap,\r\n indent,\r\n meta,\r\n rep\r\n function f(e) {\r\n return e < 10 ? '0' + e : e\r\n }\r\n function this_value() {\r\n return this.valueOf()\r\n }\r\n function quote(e) {\r\n return (\r\n (rx_escapable.lastIndex = 0),\r\n rx_escapable.test(e)\r\n ? '\"' +\r\n e.replace(rx_escapable, function (e) {\r\n var t = meta[e]\r\n return 'string' == typeof t\r\n ? t\r\n : '\\\\u' + ('0000' + e.charCodeAt(0).toString(16)).slice(-4)\r\n }) +\r\n '\"'\r\n : '\"' + e + '\"'\r\n )\r\n }\r\n function str(e, t) {\r\n var n,\r\n r,\r\n i,\r\n o,\r\n s,\r\n a = gap,\r\n c = t[e]\r\n switch (\r\n (c &&\r\n 'object' === _typeof(c) &&\r\n 'function' == typeof c.toJSON &&\r\n (c = c.toJSON(e)),\r\n _typeof((c = 'function' == typeof rep ? rep.call(t, e, c) : c)))\r\n ) {\r\n case 'string':\r\n return quote(c)\r\n case 'number':\r\n return isFinite(c) ? String(c) : 'null'\r\n case 'boolean':\r\n case 'null':\r\n return String(c)\r\n case 'object':\r\n if (!c) return 'null'\r\n if (\r\n ((gap += indent),\r\n (s = []),\r\n '[object Array]' === Object.prototype.toString.apply(c))\r\n ) {\r\n for (o = c.length, n = 0; n < o; n += 1)\r\n s[n] = str(n, c) || 'null'\r\n return (\r\n (i =\r\n 0 === s.length\r\n ? '[]'\r\n : gap\r\n ? '[\\n' + gap + s.join(',\\n' + gap) + '\\n' + a + ']'\r\n : '[' + s.join(',') + ']'),\r\n (gap = a),\r\n i\r\n )\r\n }\r\n if (rep && 'object' === _typeof(rep))\r\n for (o = rep.length, n = 0; n < o; n += 1)\r\n 'string' == typeof rep[n] &&\r\n (i = str((r = rep[n]), c)) &&\r\n s.push(quote(r) + (gap ? ': ' : ':') + i)\r\n else\r\n for (r in c)\r\n Object.prototype.hasOwnProperty.call(c, r) &&\r\n (i = str(r, c)) &&\r\n s.push(quote(r) + (gap ? ': ' : ':') + i)\r\n return (\r\n (i =\r\n 0 === s.length\r\n ? '{}'\r\n : gap\r\n ? '{\\n' + gap + s.join(',\\n' + gap) + '\\n' + a + '}'\r\n : '{' + s.join(',') + '}'),\r\n (gap = a),\r\n i\r\n )\r\n }\r\n }\r\n 'function' != typeof Date.prototype.toJSON &&\r\n ((Date.prototype.toJSON = function () {\r\n return isFinite(this.valueOf())\r\n ? this.getUTCFullYear() +\r\n '-' +\r\n f(this.getUTCMonth() + 1) +\r\n '-' +\r\n f(this.getUTCDate()) +\r\n 'T' +\r\n f(this.getUTCHours()) +\r\n ':' +\r\n f(this.getUTCMinutes()) +\r\n ':' +\r\n f(this.getUTCSeconds()) +\r\n 'Z'\r\n : null\r\n }),\r\n (Boolean.prototype.toJSON = this_value),\r\n (Number.prototype.toJSON = this_value),\r\n (String.prototype.toJSON = this_value)),\r\n 'function' != typeof JSON.stringify &&\r\n ((meta = {\r\n '\\b': '\\\\b',\r\n '\\t': '\\\\t',\r\n '\\n': '\\\\n',\r\n '\\f': '\\\\f',\r\n '\\r': '\\\\r',\r\n '\"': '\\\\\"',\r\n '\\\\': '\\\\\\\\',\r\n }),\r\n (JSON.stringify = function (e, t, n) {\r\n var r\r\n if (((indent = gap = ''), 'number' == typeof n))\r\n for (r = 0; r < n; r += 1) indent += ' '\r\n else 'string' == typeof n && (indent = n)\r\n if (\r\n (rep = t) &&\r\n 'function' != typeof t &&\r\n ('object' !== _typeof(t) || 'number' != typeof t.length)\r\n )\r\n throw new Error('JSON.stringify')\r\n return str('', { '': e })\r\n })),\r\n 'function' != typeof JSON.parse &&\r\n (JSON.parse = function (text, reviver) {\r\n var j\r\n function walk(e, t) {\r\n var n,\r\n r,\r\n i = e[t]\r\n if (i && 'object' === _typeof(i))\r\n for (n in i)\r\n Object.prototype.hasOwnProperty.call(i, n) &&\r\n (void 0 !== (r = walk(i, n)) ? (i[n] = r) : delete i[n])\r\n return reviver.call(e, t, i)\r\n }\r\n if (\r\n ((text = String(text)),\r\n (rx_dangerous.lastIndex = 0),\r\n rx_dangerous.test(text) &&\r\n (text = text.replace(rx_dangerous, function (e) {\r\n return (\r\n '\\\\u' + ('0000' + e.charCodeAt(0).toString(16)).slice(-4)\r\n )\r\n })),\r\n rx_one.test(\r\n text\r\n .replace(rx_two, '@')\r\n .replace(rx_three, ']')\r\n .replace(rx_four, '')\r\n ))\r\n )\r\n return (\r\n (j = eval('(' + text + ')')),\r\n 'function' == typeof reviver ? walk({ '': j }, '') : j\r\n )\r\n throw new SyntaxError('JSON.parse')\r\n })\r\n })()\r\n var Config = { LIB_VERSION: '1.6.1' },\r\n MAX_REFERRER_STRING_LENGTH = 200,\r\n ArrayProto = Array.prototype,\r\n ObjProto = Object.prototype,\r\n slice = ArrayProto.slice,\r\n toString = ObjProto.toString,\r\n hasOwnProperty = ObjProto.hasOwnProperty,\r\n nativeForEach = ArrayProto.forEach,\r\n breaker = {},\r\n utmTypes = [\r\n 'utm_source',\r\n 'utm_medium',\r\n 'utm_campaign',\r\n 'utm_content',\r\n 'utm_term',\r\n ],\r\n _ = {}\r\n function Fa() {\r\n for (var e = +new Date(), t = 0; e === +new Date(); ) t++\r\n return e.toString(16) + t.toString(16)\r\n }\r\n function c0() {\r\n return new RegExp(\r\n /(.*?)\\.?([^\\.]*?)\\.(com|net|org|biz|ws|in|me|co\\.uk|co|org\\.uk|ltd\\.uk|plc\\.uk|me\\.uk|edu|mil|br\\.com|cn\\.com|eu\\.com|hu\\.com|no\\.com|qc\\.com|sa\\.com|se\\.com|se\\.net|us\\.com|uy\\.com|ac|co\\.ac|gv\\.ac|or\\.ac|ac\\.ac|af|am|as|at|ac\\.at|co\\.at|gv\\.at|or\\.at|asn\\.au|com\\.au|edu\\.au|org\\.au|net\\.au|id\\.au|be|ac\\.be|adm\\.br|adv\\.br|am\\.br|arq\\.br|art\\.br|bio\\.br|cng\\.br|cnt\\.br|com\\.br|ecn\\.br|eng\\.br|esp\\.br|etc\\.br|eti\\.br|fm\\.br|fot\\.br|fst\\.br|g12\\.br|gov\\.br|ind\\.br|inf\\.br|jor\\.br|lel\\.br|med\\.br|mil\\.br|net\\.br|nom\\.br|ntr\\.br|odo\\.br|org\\.br|ppg\\.br|pro\\.br|psc\\.br|psi\\.br|rec\\.br|slg\\.br|tmp\\.br|tur\\.br|tv\\.br|vet\\.br|zlg\\.br|br|ab\\.ca|bc\\.ca|mb\\.ca|nb\\.ca|nf\\.ca|ns\\.ca|nt\\.ca|on\\.ca|pe\\.ca|qc\\.ca|sk\\.ca|yk\\.ca|ca|cc|ac\\.cn|net\\.cn|com\\.cn|edu\\.cn|gov\\.cn|org\\.cn|bj\\.cn|sh\\.cn|tj\\.cn|cq\\.cn|he\\.cn|nm\\.cn|ln\\.cn|jl\\.cn|hl\\.cn|js\\.cn|zj\\.cn|ah\\.cn|gd\\.cn|gx\\.cn|hi\\.cn|sc\\.cn|gz\\.cn|yn\\.cn|xz\\.cn|sn\\.cn|gs\\.cn|qh\\.cn|nx\\.cn|xj\\.cn|tw\\.cn|hk\\.cn|mo\\.cn|cn|cx|cz|de|dk|fo|com\\.ec|tm\\.fr|com\\.fr|asso\\.fr|presse\\.fr|fr|gf|gs|co\\.il|net\\.il|ac\\.il|k12\\.il|gov\\.il|muni\\.il|ac\\.in|co\\.in|org\\.in|ernet\\.in|gov\\.in|net\\.in|res\\.in|is|it|ac\\.jp|co\\.jp|go\\.jp|or\\.jp|ne\\.jp|ac\\.kr|co\\.kr|go\\.kr|ne\\.kr|nm\\.kr|or\\.kr|li|lt|lu|asso\\.mc|tm\\.mc|com\\.mm|org\\.mm|net\\.mm|edu\\.mm|gov\\.mm|ms|nl|no|nu|pl|ro|org\\.ro|store\\.ro|tm\\.ro|firm\\.ro|www\\.ro|arts\\.ro|rec\\.ro|info\\.ro|nom\\.ro|nt\\.ro|se|si|com\\.sg|org\\.sg|net\\.sg|gov\\.sg|sk|st|tf|ac\\.th|co\\.th|go\\.th|mi\\.th|net\\.th|or\\.th|tm|to|com\\.tr|edu\\.tr|gov\\.tr|k12\\.tr|net\\.tr|org\\.tr|com\\.tw|org\\.tw|net\\.tw|ac\\.uk|uk\\.com|uk\\.net|gb\\.com|gb\\.net|vg|sh|kz|ch|info|ua|gov|name|pro|ie|hk|com\\.hk|org\\.hk|net\\.hk|edu\\.hk|us|tk|cd|by|ad|lv|eu\\.lv|bz|es|jp|cl|ag|mobi|eu|co\\.nz|org\\.nz|net\\.nz|maori\\.nz|iwi\\.nz|io|la|md|sc|sg|vc|tw|travel|my|se|tv|pt|com\\.pt|edu\\.pt|asia|fi|com\\.ve|net\\.ve|fi|org\\.ve|web\\.ve|info\\.ve|co\\.ve|tel|im|gr|ru|net\\.ru|org\\.ru|hr|com\\.hr|ly|xyz)$/\r\n )\r\n }\r\n function e0(e, t) {\r\n var n = e.charAt(0),\r\n t = t.split(n)\r\n return n === e\r\n ? t\r\n : t[(e = parseInt(e.substring(1), 10)) < 0 ? t.length + e : e - 1]\r\n }\r\n function f0(e, t) {\r\n for (\r\n var n,\r\n r,\r\n i = e.charAt(0),\r\n o = t.split('&'),\r\n s = [],\r\n a = {},\r\n c = e.substring(1),\r\n u = 0,\r\n h = o.length;\r\n u < h;\r\n u++\r\n )\r\n if (\r\n '' !==\r\n (s = (s = o[u].match(/(.*?)=(.*)/)) || [o[u], o[u], ''])[1].replace(\r\n /\\s/g,\r\n ''\r\n )\r\n ) {\r\n if (\r\n ((s[2] =\r\n ((r = s[2] || ''), _.decodeURIComponent(r.replace(/\\+/g, ' ')))),\r\n c === s[1])\r\n )\r\n return s[2]\r\n ;(n = s[1].match(/(.*)\\[([0-9]+)\\]/))\r\n ? ((a[n[1]] = a[n[1]] || []), (a[n[1]][n[2]] = s[2]))\r\n : (a[s[1]] = s[2])\r\n }\r\n return i === e ? a : a[c]\r\n }\r\n ;(_.each = function (e, t, n) {\r\n if (null !== e)\r\n if (nativeForEach && e.forEach === nativeForEach) e.forEach(t, n)\r\n else if (e.length === +e.length) {\r\n for (var r = 0, i = e.length; r < i; r++)\r\n if (r in e && t.call(n, e[r], r, e) === breaker) return\r\n } else\r\n for (var o in e)\r\n if (hasOwnProperty.call(e, o) && t.call(n, e[o], o, e) === breaker)\r\n return\r\n }),\r\n (_.extend = function (n) {\r\n return (\r\n _.each(slice.call(arguments, 1), function (e) {\r\n for (var t in e) void 0 !== e[t] && (n[t] = e[t])\r\n }),\r\n n\r\n )\r\n }),\r\n (_.formatDate = function (e) {\r\n function t(e) {\r\n return e < 10 ? '0' + e : e\r\n }\r\n return (\r\n e.getFullYear() +\r\n '-' +\r\n t(e.getMonth() + 1) +\r\n '-' +\r\n t(e.getDate()) +\r\n ' ' +\r\n t(e.getHours()) +\r\n ':' +\r\n t(e.getMinutes()) +\r\n ':' +\r\n t(e.getSeconds()) +\r\n '.' +\r\n ((n = e.getMilliseconds()) < 10 ? '00' + n : n < 100 ? '0' + n : n)\r\n )\r\n var n\r\n }),\r\n (_.formatTimeZone = function (e, t) {\r\n if ('number' != typeof t) return e\r\n var n = e.getTime(),\r\n e = 6e4 * e.getTimezoneOffset()\r\n return new Date(n + e + 36e5 * t)\r\n }),\r\n (_.formatJsonString = function (t) {\r\n try {\r\n return JSON.stringify(t, null, 8)\r\n } catch (e) {\r\n return JSON.stringify(t)\r\n }\r\n }),\r\n (_.searchObjDate = function (n, r) {\r\n ;(_.check.isObject(n) || _.check.isArray(n)) &&\r\n _.each(n, function (e, t) {\r\n _.check.isObject(e) || _.check.isArray(e)\r\n ? _.searchObjDate(n[t], r)\r\n : _.check.isDate(e) && (n[t] = _.formatDate(_.formatTimeZone(e, r)))\r\n })\r\n }),\r\n (_.check = {\r\n isUndefined: function (e) {\r\n return void 0 === e\r\n },\r\n isObject: function (e) {\r\n return '[object Object]' === toString.call(e) && null !== e\r\n },\r\n isEmptyObject: function (e) {\r\n if (_.check.isObject(e)) {\r\n for (var t in e) if (hasOwnProperty.call(e, t)) return !1\r\n return !0\r\n }\r\n return !1\r\n },\r\n isArray: function (e) {\r\n return '[object Array]' === toString.call(e)\r\n },\r\n isString: function (e) {\r\n return '[object String]' === toString.call(e)\r\n },\r\n isDate: function (e) {\r\n return '[object Date]' === toString.call(e)\r\n },\r\n isNumber: function (e) {\r\n return '[object Number]' === toString.call(e)\r\n },\r\n isBoolean: function (e) {\r\n return '[object Boolean]' === toString.call(e)\r\n },\r\n isJSONString: function (e) {\r\n try {\r\n JSON.parse(e)\r\n } catch (e) {\r\n return !1\r\n }\r\n return !0\r\n },\r\n }),\r\n (_.UUID = function () {\r\n var e =\r\n (e = String(screen.height * screen.width)) && /\\d{5,}/.test(e)\r\n ? e.toString(16)\r\n : String(31242 * Math.random())\r\n .replace('.', '')\r\n .slice(0, 8),\r\n e =\r\n Fa() +\r\n '-' +\r\n Math.random().toString(16).replace('.', '') +\r\n '-' +\r\n (function () {\r\n var e,\r\n t,\r\n n = navigator.userAgent,\r\n i = [],\r\n r = 0\r\n function o(e, t) {\r\n for (var n = 0, r = 0; r < t.length; r++) n |= i[r] << (8 * r)\r\n return e ^ n\r\n }\r\n for (e = 0; e < n.length; e++)\r\n (t = n.charCodeAt(e)),\r\n i.unshift(255 & t),\r\n 4 <= i.length && ((r = o(r, i)), (i = []))\r\n return (r = 0 < i.length ? o(r, i) : r).toString(16)\r\n })() +\r\n '-' +\r\n e +\r\n '-' +\r\n Fa()\r\n return (\r\n e ||\r\n (\r\n String(Math.random()) +\r\n String(Math.random()) +\r\n String(Math.random())\r\n ).slice(2, 15)\r\n )\r\n }),\r\n (_.UUIDv4 = function () {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(\r\n /[xy]/g,\r\n function (e) {\r\n var t = (16 * Math.random()) | 0\r\n return ('x' == e ? t : (3 & t) | 8).toString(16)\r\n }\r\n )\r\n }),\r\n (_.getReferrer = function (e) {\r\n e = e || document.referrer\r\n return 'string' != typeof e\r\n ? '\u53d6\u503c\u5f02\u5e38_referrer\u5f02\u5e38_' + String(e)\r\n : 'string' ==\r\n typeof (e = (e =\r\n 0 === e.indexOf('https://www.baidu.com/')\r\n ? e.split('?')[0]\r\n : e).slice(0, MAX_REFERRER_STRING_LENGTH))\r\n ? e\r\n : ''\r\n }),\r\n (_.url = function (e, t) {\r\n var n = {}\r\n if ('tld?' === e) return c0()\r\n if (((t = t || window.location.toString()), !e)) return t\r\n if (((e = e.toString()), (r = t.match(/^mailto:([^\\/].+)/))))\r\n (n.protocol = 'mailto'), (n.email = r[1])\r\n else {\r\n if (\r\n ((r = (t = (r = t.match(/(.*?)\\/#\\!(.*)/)) ? r[1] + r[2] : t).match(\r\n /(.*?)#(.*)/\r\n )) && ((n.hash = r[2]), (t = r[1])),\r\n n.hash && e.match(/^#/))\r\n )\r\n return f0(e, n.hash)\r\n if (\r\n ((r = t.match(/(.*?)\\?(.*)/)) && ((n.query = r[2]), (t = r[1])),\r\n n.query && e.match(/^\\?/))\r\n )\r\n return f0(e, n.query)\r\n if (\r\n ((r = t.match(/(.*?)\\:?\\/\\/(.*)/)) &&\r\n ((n.protocol = r[1].toLowerCase()), (t = r[2])),\r\n (r = t.match(/(.*?)(\\/.*)/)) && ((n.path = r[2]), (t = r[1])),\r\n (n.path = (n.path || '')\r\n .replace(/^([^\\/])/, '/$1')\r\n .replace(/\\/$/, '')),\r\n (e = e.match(/^[\\-0-9]+$/) ? e.replace(/^([^\\/])/, '/$1') : e).match(\r\n /^\\//\r\n ))\r\n )\r\n return e0(e, n.path.substring(1))\r\n if (\r\n ((r =\r\n (r = e0('/-1', n.path.substring(1))) && r.match(/(.*?)\\.(.*)/)) &&\r\n ((n.file = r[0]), (n.filename = r[1]), (n.fileext = r[2])),\r\n (r = t.match(/(.*)\\:([0-9]+)$/)) && ((n.port = r[2]), (t = r[1])),\r\n (r = t.match(/(.*?)@(.*)/)) && ((n.auth = r[1]), (t = r[2])),\r\n n.auth &&\r\n ((r = n.auth.match(/(.*)\\:(.*)/)),\r\n (n.user = r ? r[1] : n.auth),\r\n (n.pass = r ? r[2] : void 0)),\r\n (n.hostname = t.toLowerCase()),\r\n '.' === e.charAt(0))\r\n )\r\n return e0(e, n.hostname)\r\n c0() &&\r\n (r = n.hostname.match(c0())) &&\r\n ((n.tld = r[3]),\r\n (n.domain = r[2] ? r[2] + '.' + r[3] : void 0),\r\n (n.sub = r[1] || void 0))\r\n var r = n.port ? ':' + n.port : ''\r\n ;(n.protocol = n.protocol || window.location.protocol.replace(':', '')),\r\n (n.port = n.port || ('https' === n.protocol ? '443' : '80')),\r\n (n.protocol = n.protocol || ('443' === n.port ? 'https' : 'http')),\r\n (n.basic = n.protocol + '://' + n.hostname + r)\r\n }\r\n return e in n ? n[e] : '{}' === e ? n : ''\r\n }),\r\n (_.hashCode = function (e) {\r\n if ('string' != typeof e) return 0\r\n var t = 0\r\n if (0 === e.length) return t\r\n for (var n = 0; n < e.length; n++)\r\n (t = (t << 5) - t + e.charCodeAt(n)), (t &= t)\r\n return t\r\n }),\r\n (_.decodeURIComponent = function (t) {\r\n var n = ''\r\n try {\r\n n = decodeURIComponent(t)\r\n } catch (e) {\r\n n = t\r\n }\r\n return n\r\n }),\r\n (_.encodeURIComponent = function (t) {\r\n var n = ''\r\n try {\r\n n = encodeURIComponent(t)\r\n } catch (e) {\r\n n = t\r\n }\r\n return n\r\n }),\r\n (_.utf8Encode = function (e) {\r\n for (\r\n var t,\r\n n = '',\r\n r = (t = 0),\r\n i = (e = (e + '').replace(/\\r\\n/g, '\\n').replace(/\\r/g, '\\n')).length,\r\n o = 0;\r\n o < i;\r\n o++\r\n ) {\r\n var s = e.charCodeAt(o),\r\n a = null\r\n s < 128\r\n ? t++\r\n : (a =\r\n 127 < s && s < 2048\r\n ? String.fromCharCode((s >> 6) | 192, (63 & s) | 128)\r\n : String.fromCharCode(\r\n (s >> 12) | 224,\r\n ((s >> 6) & 63) | 128,\r\n (63 & s) | 128\r\n )),\r\n null !== a &&\r\n (r < t && (n += e.substring(r, t)), (n += a), (r = t = o + 1))\r\n }\r\n return r < t && (n += e.substring(r, e.length)), n\r\n }),\r\n (_.base64Encode = function (e) {\r\n var t,\r\n n,\r\n r,\r\n i,\r\n o = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\r\n s = 0,\r\n a = 0,\r\n c = '',\r\n u = []\r\n if (!e) return e\r\n for (\r\n e = _.utf8Encode(e);\r\n (t =\r\n ((i =\r\n (e.charCodeAt(s++) << 16) |\r\n (e.charCodeAt(s++) << 8) |\r\n e.charCodeAt(s++)) >>\r\n 12) &\r\n 63),\r\n (n = (i >> 6) & 63),\r\n (r = 63 & i),\r\n (u[a++] =\r\n o.charAt((i >> 18) & 63) + o.charAt(t) + o.charAt(n) + o.charAt(r)),\r\n s < e.length;\r\n\r\n );\r\n switch (((c = u.join('')), e.length % 3)) {\r\n case 1:\r\n c = c.slice(0, -2) + '=='\r\n break\r\n case 2:\r\n c = c.slice(0, -1) + '='\r\n }\r\n return c\r\n }),\r\n (_.cookie = {\r\n get: function (e) {\r\n for (\r\n var t = e + '=', n = document.cookie.split(';'), r = 0;\r\n r < n.length;\r\n r++\r\n ) {\r\n for (var i = n[r]; ' ' === i.charAt(0); ) i = i.substring(1, i.length)\r\n if (0 === i.indexOf(t))\r\n return _.decodeURIComponent(i.substring(t.length, i.length))\r\n }\r\n return null\r\n },\r\n set: function (e, t, n, r, i) {\r\n var o,\r\n s = '',\r\n a = '',\r\n c = ''\r\n ;(n = null === n ? 73e3 : n),\r\n r &&\r\n (s = (o = _.url('domain', location.href)) ? '; domain=.' + o : ''),\r\n n &&\r\n ((o = new Date()),\r\n 's' === String(n).slice(-1)\r\n ? o.setTime(o.getTime() + 1e3 * Number(String(n).slice(0, -1)))\r\n : o.setTime(o.getTime() + 24 * n * 60 * 60 * 1e3),\r\n (a = '; expires=' + o.toGMTString())),\r\n i && (c = '; secure')\r\n c = e + '=' + encodeURIComponent(t) + a + '; path=/' + s + c\r\n return (document.cookie = c)\r\n },\r\n remove: function (e, t) {\r\n _.cookie.set(e, '', -1, t)\r\n },\r\n }),\r\n (_.localStorage = {\r\n get: function (e) {\r\n try {\r\n return window.localStorage.getItem(e)\r\n } catch (e) {\r\n _.localStorage.error(e)\r\n }\r\n },\r\n parse: function (e) {\r\n var t\r\n try {\r\n t = JSON.parse(_.localStorage.get(e)) || null\r\n } catch (e) {\r\n _.localStorage.error(e)\r\n }\r\n return t\r\n },\r\n set: function (e, t) {\r\n try {\r\n window.localStorage.setItem(e, t)\r\n } catch (e) {\r\n _.localStorage.error(e)\r\n }\r\n },\r\n remove: function (e) {\r\n try {\r\n window.localStorage.removeItem(e)\r\n } catch (e) {\r\n _.localStorage.error(e)\r\n }\r\n },\r\n error: function (e) {\r\n console.error('localStorage error: ' + e)\r\n },\r\n isSupported: function () {\r\n var t = !0\r\n try {\r\n var e = '__thinkingdatasupport__',\r\n n = 'testIsSupportStorage'\r\n _.localStorage.set(e, n),\r\n _.localStorage.get(e) !== n && (t = !1),\r\n _.localStorage.remove(e)\r\n } catch (e) {\r\n t = !1\r\n }\r\n return t\r\n },\r\n }),\r\n (_.stripEmptyProperties = function (e) {\r\n var n = {}\r\n return (\r\n _.each(e, function (e, t) {\r\n _.check.isString(e) && 0 < e.length && (n[t] = e)\r\n }),\r\n n\r\n )\r\n }),\r\n (_.info = {\r\n os: function () {\r\n var e = navigator.userAgent\r\n return /Windows/i.test(e)\r\n ? /Phone/.test(e) || /WPDesktop/.test(e)\r\n ? 'Windows Phone'\r\n : 'Windows'\r\n : /(iPhone|iPad|iPod)/.test(e)\r\n ? 'iOS'\r\n : /Android/.test(e)\r\n ? 'Android'\r\n : /(BlackBerry|PlayBook|BB10)/i.test(e)\r\n ? 'BlackBerry'\r\n : /Mac/i.test(e)\r\n ? 'Mac OS X'\r\n : /Linux/.test(e)\r\n ? 'Linux'\r\n : /CrOS/.test(e)\r\n ? 'Chrome OS'\r\n : ''\r\n },\r\n browser: function () {\r\n var e = { type: '', version: '' }\r\n try {\r\n var t,\r\n n,\r\n r = navigator.userAgent.toLowerCase(),\r\n i = []\r\n null !== r.match(/baidubrowser/)\r\n ? ((e.type = 'baidu'), i.push(/baidubrowser\\/([\\d.]+)/))\r\n : null !== r.match(/bidubrowser/)\r\n ? ((e.type = 'baidu'), i.push(/bidubrowser\\/([\\d.]+)/))\r\n : null !== r.match(/edga/)\r\n ? ((e.type = 'edge'), i.push(/edga\\/([\\d.]+)/))\r\n : null !== r.match(/edgios/)\r\n ? ((e.type = 'edge'), i.push(/edgios\\/([\\d.]+)/))\r\n : null !== r.match(/liebaofast/)\r\n ? ((e.type = 'liebao'), i.push(/liebaofast\\/([\\d.]+)/))\r\n : null !== r.match(/sogoumobilebrowser/)\r\n ? ((e.type = 'sogou'), i.push(/sogoumobilebrowser\\/([\\d.]+)/))\r\n : null !== r.match(/lbbrowser/)\r\n ? ((e.type = 'liebao'), i.push(/lbbrowser\\/([\\d.]+)/))\r\n : null !== r.match(/crios/)\r\n ? ((e.type = 'chrome'), i.push(/crios\\/([\\d.]+)/))\r\n : null !== r.match(/qihoobrowser/)\r\n ? ((e.type = '360'), i.push(/qihoobrowser\\/([\\d.]+)/))\r\n : null !== r.match(/mxios/)\r\n ? ((e.type = 'maxthon'), i.push(/mxios\\/([\\d.]+)/))\r\n : null !== r.match(/fxios/)\r\n ? ((e.type = 'firefox'), i.push(/fxios\\/([\\d.\\w]+)/))\r\n : null !== r.match(/edge/)\r\n ? ((e.type = 'edge'), i.push(/edge\\/([\\d.]+)/))\r\n : null !== r.match(/metasr/)\r\n ? ((e.type = 'sogou'), i.push(/metasr ([\\d.]+)/))\r\n : null !== r.match(/micromessenger/)\r\n ? ((e.type = 'micromessenger'), i.push(/micromessenger\\/([\\d.]+)/))\r\n : null !== r.match(/mqqbrowser/)\r\n ? ((e.type = 'qq'), i.push(/mqqbrowser\\/([\\d.]+)/))\r\n : null !== r.match(/qqbrowserlite/)\r\n ? ((e.type = 'qq'), i.push(/qqbrowserlite\\/([\\d.]+)/))\r\n : null !== r.match(/tencenttraveler/)\r\n ? ((e.type = 'qq'), i.push(/tencenttraveler\\/([\\d.]+)/))\r\n : null !== r.match(/qqbrowser/)\r\n ? ((e.type = 'qq'), i.push(/qqbrowser\\/([\\d.]+)/))\r\n : null !== r.match(/maxthon/)\r\n ? ((e.type = 'maxthon'), i.push(/maxthon\\/([\\d.]+)/))\r\n : null !== r.match(/ubrowser/)\r\n ? ((e.type = 'uc'), i.push(/ubrowser\\/([\\d.]+)/))\r\n : null !== r.match(/ucbrowser/)\r\n ? ((e.type = 'uc'), i.push(/ucbrowser\\/([\\d.]+)/))\r\n : null !== r.match(/firefox/)\r\n ? ((e.type = 'firefox'), i.push(/firefox\\/([\\d.]+)/))\r\n : null !== r.match(/opera/)\r\n ? ((e.type = 'opera'), i.push(/opera\\/([\\d.]+)/))\r\n : null !== r.match(/opr/)\r\n ? ((e.type = 'opera'), i.push(/opr\\/([\\d.]+)/))\r\n : null !== r.match(/chrome/)\r\n ? ((e.type = 'chrome'), i.push(/chrome\\/([\\d.]+)/))\r\n : null !== r.match(/safari/)\r\n ? ((e.type = 'safari'), i.push(/version\\/([\\d.]+)/))\r\n : (null === r.match(/trident/) && null === r.match(/msie/)) ||\r\n (e.type = 'ie'),\r\n 'ie' === e.type\r\n ? ((t = r.match(/trident\\/([\\d.]+)/)\r\n ? r.match(/trident\\/([\\d.]+)/)[1]\r\n : ''),\r\n (n = r.match(/msie ([\\d.]+)/)\r\n ? r.match(/msie ([\\d.]+)/)[1]\r\n : ''),\r\n '' !== t\r\n ? (e.version = String(parseInt(t) + 4))\r\n : '' !== n && (e.version = n))\r\n : i && (e.version = r.match(i[0]) ? r.match(i[0])[1] : '')\r\n } catch (e) {\r\n Log.w('getting browser info failed due to ', e)\r\n }\r\n return e\r\n },\r\n properties: function () {\r\n var e = _.info.browser()\r\n var language = navigator.language\r\n if(navigator.languages) {\r\n language = _.check.isString(navigator.languages[1])\r\n ? navigator.languages[1].toLowerCase()\r\n : '\u53d6\u503c\u5f02\u5e38'\r\n }\r\n return _.extend({\r\n '#os': _.info.os(),\r\n '#lib_version': Config.LIB_VERSION,\r\n '#lib': 'js',\r\n '#screen_height': screen.height,\r\n '#screen_width': screen.width,\r\n '#browser': e.type,\r\n '#browser_version': e.version,\r\n '#system_language': language,\r\n '#ua': _.check.isString(navigator.userAgent)\r\n ? navigator.userAgent.toLowerCase()\r\n : '\u53d6\u503c\u5f02\u5e38',\r\n '#utm': _.getUtm(),\r\n })\r\n },\r\n pageProperties: function () {\r\n var e = _.getReferrer()\r\n return _.stripEmptyProperties({\r\n '#referrer': e,\r\n '#referrer_host': e && _.url('hostname', e),\r\n '#url': location.href,\r\n '#url_path': location.pathname,\r\n '#title': document.title,\r\n })\r\n },\r\n }),\r\n (_.getUtm = function () {\r\n var n = {}\r\n return (\r\n _.each(utmTypes, function (e) {\r\n var t = _.getQueryParam(location.href, e)\r\n t.length && (n[e] = t)\r\n }),\r\n JSON.stringify(n)\r\n )\r\n }),\r\n (_.getQueryParam = function (e, t) {\r\n ;(t = t.replace(/[\\[]/, '\\\\[').replace(/[\\]]/, '\\\\]')),\r\n (e = _.decodeURIComponent(e))\r\n e = new RegExp('[\\\\?&]' + t + '=([^&#]*)').exec(e)\r\n return null === e || (e && 'string' != typeof e[1] && e[1].length)\r\n ? ''\r\n : _.decodeURIComponent(e[1])\r\n }),\r\n (_.createString = function (e) {\r\n for (var t = e, n = Math.random().toString(36).substr(2); n.length < t; )\r\n n += Math.random().toString(36).substr(2)\r\n return (n = n.substr(0, e))\r\n }),\r\n (_.createAesKey = function () {\r\n return _.createString(16)\r\n }),\r\n (_.generateEncryptyData = function (e, t) {\r\n if (void 0 === t) return e\r\n var n = t.publicKey,\r\n r = t.version\r\n if (void 0 === n || void 0 === r) return e\r\n if ('undefined' == typeof CryptoJS || 'undefined' == typeof JSEncrypt)\r\n return e\r\n t = _.createAesKey()\r\n try {\r\n var i = CryptoJS.enc.Utf8.parse(t),\r\n o = CryptoJS.enc.Utf8.parse(JSON.stringify(e)),\r\n s = CryptoJS.AES.encrypt(o, i, {\r\n mode: CryptoJS.mode.ECB,\r\n padding: CryptoJS.pad.Pkcs7,\r\n }).toString(),\r\n a = new JSEncrypt()\r\n a.setPublicKey(n)\r\n var c = a.encrypt(t)\r\n return !1 === c\r\n ? (Log.w('\u52a0\u5bc6\u5931\u8d25\uff0c\u8fd4\u56de\u539f\u6570\u636e'), e)\r\n : { pkv: r, ekey: c, payload: s }\r\n } catch (e) {\r\n Log.w('\u52a0\u5bc6\u5931\u8d25\uff0c\u8fd4\u56de\u539f\u6570\u636e')\r\n }\r\n return e\r\n }),\r\n (_.paramType = function (e) {\r\n return Object.prototype.toString\r\n .call(e)\r\n .replace('[object ', '')\r\n .replace(']', '')\r\n }),\r\n (_.addEvent = function (e, t, n, r) {\r\n if (document.addEventListener)\r\n if (\r\n ('Array' !== this.paramType(e) &&\r\n 'HTMLCollection' !== this.paramType(e)) ||\r\n !e.length ||\r\n e === window\r\n )\r\n e.addEventListener(t, n, r)\r\n else for (var i = 0; i < e.length; i++) this.addEvent(e[i], t, n, r)\r\n else if (e.length && e !== window)\r\n for (var o = 0; o < e.length; o++) this.addEvent(e[o], t, n)\r\n else\r\n e.attachEvent('on' + t, function () {\r\n return n.call(e, window.event)\r\n })\r\n }),\r\n (_.getRandom = function () {\r\n return new Date().getTime() + '_' + Math.floor(1e6 * Math.random())\r\n }),\r\n (_.safeJSONParse = function (t) {\r\n var e = null\r\n try {\r\n e = JSON.parse(t)\r\n } catch (e) {\r\n return t\r\n }\r\n return e\r\n }),\r\n (_.saveObjectVal = function (e, t) {\r\n _.check.isString(t) || (t = JSON.stringify(t)), _.localStorage.set(e, t)\r\n }),\r\n (_.readObjectVal = function (e) {\r\n e = _.localStorage.get(e)\r\n return e ? _.safeJSONParse(e) : null\r\n }),\r\n (_.indexOf = function (e, t) {\r\n var n = e.indexOf\r\n if (n) return n.call(e, t)\r\n for (var r = 0; r < e.length; r++) if (t === e[r]) return r\r\n return -1\r\n }),\r\n (_.hasEncrypty = function (e) {\r\n return (\r\n !!_.check.isObject() &&\r\n 'undefined' !== e.pkv &&\r\n 'undefined' !== e.ekey &&\r\n 'undefined' !== e.payload\r\n )\r\n }),\r\n (_.addSiteEvent = function (e, t, n, u) {\r\n function h(e) {\r\n return (\r\n e &&\r\n ((e.preventDefault = h.preventDefault),\r\n (e.stopPropagation = h.stopPropagation),\r\n (e._getPath = h._getPath)),\r\n e\r\n )\r\n }\r\n h._getPath = function () {\r\n var e\r\n return (\r\n this.path ||\r\n (this.composedPath && this.composedPath()) ||\r\n ((e = this.target), new r(e).getParents())\r\n )\r\n }\r\n var r = function (e) {\r\n this.ele = e\r\n }\r\n ;(h.preventDefault = function () {\r\n this.returnValue = !1\r\n }),\r\n (h.stopPropagation = function () {\r\n this.cancelBubble = !0\r\n })\r\n !function (e, t, n) {\r\n var r, i, o, s, a, c\r\n void 0 === u && 'click' === t && (u = !0),\r\n e && e.addEventListener\r\n ? e.addEventListener(\r\n t,\r\n function (e) {\r\n ;(e._getPath = h._getPath), n.call(this, e)\r\n },\r\n u\r\n )\r\n : ((i = e[(r = 'on' + t)]),\r\n (e[r] =\r\n ((o = e),\r\n (s = n),\r\n (a = i),\r\n (c = t),\r\n function (e) {\r\n if ((e = e || h(window.event))) {\r\n e.target = e.srcElement\r\n var t,\r\n n = !0\r\n return (\r\n 'function' == typeof a && (t = a(e)),\r\n (e = s.call(o, e)),\r\n 'beforeunload' !== c ? !1 !== t && !1 !== e && n : void 0\r\n )\r\n }\r\n })))\r\n }.apply(null, arguments)\r\n }),\r\n (_.getURLSearchParams = function (e) {\r\n for (\r\n var t = {}, n = (e = e || '').substring(1).split('&'), r = 0;\r\n r < n.length;\r\n r++\r\n ) {\r\n var i,\r\n o = n[r].indexOf('=')\r\n ;-1 !== o &&\r\n ((i = n[r].substring(0, o)),\r\n (o = n[r].substring(o + 1)),\r\n (i = _.decodeURIComponent(i)),\r\n (o = _.decodeURIComponent(o)),\r\n (t[i] = o))\r\n }\r\n return t\r\n }),\r\n (_.urlParse = function (e) {\r\n function t(e) {\r\n ;(this._fields = {\r\n Username: 4,\r\n Password: 5,\r\n Port: 7,\r\n Protocol: 2,\r\n Host: 6,\r\n Path: 8,\r\n URL: 0,\r\n QueryString: 9,\r\n Fragment: 10,\r\n }),\r\n (this._values = {}),\r\n (this._regex =\r\n /^((\\w+):\\/\\/)?((\\w+):?(\\w+)?@)?([^\\/\\?:]+):?(\\d+)?(\\/?[^\\?#]+)?\\??([^#]+)?#?(\\w*)/),\r\n void 0 !== e && this._parse(e)\r\n }\r\n return (\r\n (t.prototype.setUrl = function (e) {\r\n this._parse(e)\r\n }),\r\n (t.prototype._initValues = function () {\r\n for (var e in this._fields) this._values[e] = ''\r\n }),\r\n (t.prototype.addQueryString = function (e) {\r\n if ('object' !== _typeof(e)) return !1\r\n var t,\r\n n = this._values.QueryString || ''\r\n for (t in e)\r\n n = new RegExp(t + '[^&]+').test(n)\r\n ? n.replace(new RegExp(t + '[^&]+'), t + '=' + e[t])\r\n : '&' === n.slice(-1)\r\n ? n + t + '=' + e[t]\r\n : '' === n\r\n ? t + '=' + e[t]\r\n : n + '&' + t + '=' + e[t]\r\n this._values.QueryString = n\r\n }),\r\n (t.prototype.getUrl = function () {\r\n var e = ''\r\n return (\r\n (e += this._values.Origin),\r\n (e += this._values.Port ? ':' + this._values.Port : ''),\r\n (e += this._values.Path),\r\n (e += this._values.QueryString\r\n ? '?' + this._values.QueryString\r\n : ''),\r\n (e += this._values.Fragment ? '#' + this._values.Fragment : '')\r\n )\r\n }),\r\n (t.prototype._parse = function (e) {\r\n this._initValues(),\r\n (r = this._regex.exec(e)) ||\r\n Log.i('URLParser::_parse -> Invalid URL')\r\n var t,\r\n n = e.split('#'),\r\n e = n[0],\r\n n = n.slice(1).join('#'),\r\n r = this._regex.exec(e)\r\n for (t in this._fields)\r\n void 0 !== r[this._fields[t]] &&\r\n (this._values[t] = r[this._fields[t]])\r\n ;(this._values.Hostname = this._values.Host.replace(/:\\d+$/, '')),\r\n (this._values.Origin =\r\n this._values.Protocol + '://' + this._values.Hostname),\r\n (this._values.Fragment = n)\r\n }),\r\n new t(e)\r\n )\r\n }),\r\n (_.trim = function (e) {\r\n return e.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '')\r\n }),\r\n (_.URL = function (e) {\r\n var t,\r\n n,\r\n r = {}\r\n if (\r\n 'function' == typeof window.URL &&\r\n (function () {\r\n try {\r\n return (\r\n 'http://modernizr.com/' === new URL('http://modernizr.com/').href\r\n )\r\n } catch (e) {\r\n return !1\r\n }\r\n })()\r\n )\r\n (r = new URL(e)).searchParams ||\r\n (r.searchParams =\r\n ((n = _.getURLSearchParams(r.search)),\r\n {\r\n get: function (e) {\r\n return n[e]\r\n },\r\n }))\r\n else {\r\n _.check.isString(e) || (e = String(e)), (e = _.trim(e))\r\n if (!1 === /^https?:\\/\\/.+/.test(e)) return void Log.w('Invalid URL')\r\n e = _.urlParse(e)\r\n ;(r.hash = e._values.Fragment),\r\n (r.host = e._values.Host\r\n ? e._values.Host + (e._values.Port ? ':' + e._values.Port : '')\r\n : ''),\r\n (r.href = e._values.URL),\r\n (r.password = e._values.Password),\r\n (r.pathname = e._values.Path),\r\n (r.port = e._values.Port),\r\n (r.search = e._values.QueryString ? '?' + e._values.QueryString : ''),\r\n (r.username = e._values.Username),\r\n (r.hostname = e._values.Hostname),\r\n (r.protocol = e._values.Protocol ? e._values.Protocol + ':' : ''),\r\n (r.origin = e._values.Origin\r\n ? e._values.Origin + (e._values.Port ? ':' + e._values.Port : '')\r\n : ''),\r\n (r.searchParams =\r\n ((t = _.getURLSearchParams('?' + e._values.QueryString)),\r\n {\r\n get: function (e) {\r\n return t[e]\r\n },\r\n }))\r\n }\r\n return r\r\n })\r\n var Log = (function () {\r\n function e() {\r\n _classCallCheck(this, e)\r\n }\r\n return (\r\n _createClass(e, null, [\r\n {\r\n key: 'i',\r\n value: function () {\r\n if (!this.showLog) return !1\r\n if (\r\n ((!0 !== this.showLog && 'string' !== this.showLog) ||\r\n (arguments[0] = _.formatJsonString(arguments[0])),\r\n 'object' ===\r\n ('undefined' == typeof console\r\n ? 'undefined'\r\n : _typeof(console)) && console.log)\r\n )\r\n try {\r\n return console.log.apply(console, arguments)\r\n } catch (e) {\r\n console.log(arguments[0])\r\n }\r\n },\r\n },\r\n {\r\n key: 'w',\r\n value: function () {\r\n if (!this.showLog) return !1\r\n if (\r\n ((!0 !== this.showLog && 'string' !== this.showLog) ||\r\n (arguments[0] = _.formatJsonString(arguments[0])),\r\n 'object' ===\r\n ('undefined' == typeof console\r\n ? 'undefined'\r\n : _typeof(console)) && console.warn)\r\n )\r\n try {\r\n return console.warn.apply(console, arguments)\r\n } catch (e) {\r\n console.warn(arguments[0])\r\n }\r\n },\r\n },\r\n ]),\r\n e\r\n )\r\n })(),\r\n KEY_NAME_MATCH_REGEX = /^[a-zA-Z][a-zA-Z0-9_]{0,49}$/,\r\n PropertyChecker = (function () {\r\n function e() {\r\n _classCallCheck(this, e)\r\n }\r\n return (\r\n _createClass(e, null, [\r\n {\r\n key: 'stripProperties',\r\n value: function (e) {\r\n return (\r\n _.check.isObject(e) &&\r\n _.each(e, function (e, t) {\r\n _.check.isString(e) ||\r\n _.check.isNumber(e) ||\r\n _.check.isDate(e) ||\r\n _.check.isBoolean(e) ||\r\n _.check.isArray(e) ||\r\n _.check.isObject(e) ||\r\n Log.w(\r\n '\u60a8\u7684\u6570\u636e-',\r\n t,\r\n e,\r\n '-\u683c\u5f0f\u4e0d\u6ee1\u8db3\u8981\u6c42\uff0c\u53ef\u80fd\u65e0\u6cd5\u6b63\u786e\u5165\u5e93. \u5c5e\u6027\u503c\u53ea\u652f\u6301 String, Number, Date, Boolean, Array\uff0cObject'\r\n )\r\n }),\r\n e\r\n )\r\n },\r\n },\r\n {\r\n key: '_checkPropertiesKey',\r\n value: function (e) {\r\n var n = !0\r\n return (\r\n _.each(e, function (e, t) {\r\n KEY_NAME_MATCH_REGEX.test(t) ||\r\n (Log.w('\u4e0d\u5408\u6cd5\u7684 KEY \u503c: ' + t), (n = !1))\r\n }),\r\n n\r\n )\r\n },\r\n },\r\n {\r\n key: 'event',\r\n value: function (e) {\r\n return (\r\n !(!_.check.isString(e) || !KEY_NAME_MATCH_REGEX.test(e)) ||\r\n (Log.w(\r\n \"\u8bf7\u68c0\u67e5\u53c2\u6570\u683c\u5f0f, eventName \u5fc5\u987b\u662f\u82f1\u6587\u5b57\u6bcd\u6216\u8005 '_' \u5f00\u5934, \u5305\u542b\u5b57\u6bcd\u548c\u6570\u5b57\u7684\u4e0d\u8d85\u8fc750\u4e2a\u5b57\u7b26\u7684\u5b57\u7b26\u4e32: \" +\r\n e\r\n ),\r\n !1)\r\n )\r\n },\r\n },\r\n {\r\n key: 'propertyName',\r\n value: function (e) {\r\n return (\r\n !(!_.check.isString(e) || !KEY_NAME_MATCH_REGEX.test(e)) ||\r\n (Log.w(\r\n \"\u8bf7\u68c0\u67e5\u53c2\u6570\u683c\u5f0f, propertyName \u5fc5\u987b\u662f\u82f1\u6587\u5b57\u6bcd\u6216\u8005 '_' \u5f00\u5934, \u5305\u542b\u5b57\u6bcd\u548c\u6570\u5b57\u7684\u4e0d\u8d85\u8fc750\u4e2a\u5b57\u7b26\u7684\u5b57\u7b26\u4e32: \" +\r\n e\r\n ),\r\n !1)\r\n )\r\n },\r\n },\r\n {\r\n key: 'properties',\r\n value: function (e) {\r\n return (\r\n this.stripProperties(e),\r\n !e ||\r\n (_.check.isObject(e)\r\n ? !!this._checkPropertiesKey(e) ||\r\n (Log.w(\r\n '\u8bf7\u68c0\u67e5\u53c2\u6570\u683c\u5f0f, properties \u7684 key \u53ea\u80fd\u4ee5\u5b57\u6bcd\u5f00\u5934\uff0c\u5305\u542b\u6570\u5b57\u3001\u5b57\u6bcd\u548c\u4e0b\u5212\u7ebf _\uff0c\u957f\u5ea6\u6700\u5927\u4e3a50\u4e2a\u5b57\u7b26'\r\n ),\r\n !1)\r\n : (Log.w('properties \u53ef\u4ee5\u6ca1\u6709\uff0c\u4f46\u6709\u7684\u8bdd\u5fc5\u987b\u662f\u5bf9\u8c61'), !1))\r\n )\r\n },\r\n },\r\n {\r\n key: 'propertiesMust',\r\n value: function (e) {\r\n return (\r\n this.stripProperties(e),\r\n void 0 === e || !_.check.isObject(e) || _.check.isEmptyObject(e)\r\n ? (Log.w('properties\u5fc5\u987b\u662f\u5bf9\u8c61\u4e14\u6709\u503c'), !1)\r\n : !!this._checkPropertiesKey(e) ||\r\n (Log.w(\r\n '\u8bf7\u68c0\u67e5\u53c2\u6570\u683c\u5f0f, properties \u7684 key \u53ea\u80fd\u4ee5\u5b57\u6bcd\u5f00\u5934\uff0c\u5305\u542b\u6570\u5b57\u3001\u5b57\u6bcd\u548c\u4e0b\u5212\u7ebf _\uff0c\u957f\u5ea6\u6700\u5927\u4e3a50\u4e2a\u5b57\u7b26'\r\n ),\r\n !1)\r\n )\r\n },\r\n },\r\n {\r\n key: 'userId',\r\n value: function (e) {\r\n return (\r\n !(!_.check.isString(e) || !/^.{1,63}$/.test(e)) ||\r\n (Log.w('\u7528\u6237 id \u5fc5\u987b\u662f\u4e0d\u80fd\u4e3a\u7a7a\uff0c\u4e14\u5c0f\u4e8e 64 \u4f4d\u7684\u5b57\u7b26\u4e32'), !1)\r\n )\r\n },\r\n },\r\n ]),\r\n e\r\n )\r\n })(),\r\n MASTER_INSTANCE_NAME = 'thinkingdata',\r\n DEFAULT_CONFIG = {\r\n _name: MASTER_INSTANCE_NAME,\r\n appId: '',\r\n send_method: 'image',\r\n persistence: 'localStorage',\r\n persistencePrefix: 'ThinkingDataJSSDK',\r\n persistenceEnabled: !0,\r\n crossSubDomain: !0,\r\n maxReferrerStringLength: 200,\r\n showLog: !0,\r\n dataSendTimeout: 3e3,\r\n useAppTrack: !1,\r\n strict: !1,\r\n tryCount: 3,\r\n },\r\n ThinkingDataPersistence = function (e) {\r\n ;(this._state = {}),\r\n (this.crossSubDomain = e.crossSubDomain),\r\n (this.enabled = e.persistenceEnabled)\r\n var t,\r\n n = null\r\n this.enabled &&\r\n (!1 === e.crossSubDomain\r\n ? ((t = _.url('sub', location.href)),\r\n (this.name =\r\n 'string' == typeof t && '' !== t\r\n ? e.persistencePrefix + '_' + t\r\n : e.persistencePrefix + '_root'))\r\n : (this.name = e.persistencePrefix + '_cross'),\r\n 'cookie' !== (t = e.persistence) &&\r\n 'localStorage' !== t &&\r\n (Log.i('Unknown persistence type ' + t + '; falling back to cookie'),\r\n (t = e.persistence = 'cookie')),\r\n 'localStorage' === t && _.localStorage.isSupported()\r\n ? ((this.storage = _.localStorage),\r\n (n = _.cookie.get(this.name)) &&\r\n _.cookie.remove(this.name, this.crossSubDomain))\r\n : (Log.i(\r\n 'localStorage is not support by the browser; falling back to cookie'\r\n ),\r\n (this.storage = _.cookie))),\r\n this._load(n),\r\n this.getDistinctId() ||\r\n ((e = e.uuid || _.UUID()),\r\n this._setDeviceId(e),\r\n this.setDistinctId(e))\r\n }\r\n ;(ThinkingDataPersistence.prototype._load = function (e) {\r\n var t\r\n this.enabled &&\r\n (null !== (t = null !== e ? e : this.storage.get(this.name)) &&\r\n _.check.isJSONString(t) &&\r\n (this._state = _.extend({}, JSON.parse(t))),\r\n null !== e && this._save())\r\n }),\r\n (ThinkingDataPersistence.prototype.getDistinctId = function () {\r\n return this._state.distinct_id\r\n }),\r\n (ThinkingDataPersistence.prototype.setDistinctId = function (e) {\r\n this._set('distinct_id', e)\r\n }),\r\n (ThinkingDataPersistence.prototype.setEnableTracking = function (e) {\r\n this._set('enable_tracking', e)\r\n }),\r\n (ThinkingDataPersistence.prototype.getEnableTracking = function () {\r\n return (\r\n !!_.check.isUndefined(this._state.enable_tracking) ||\r\n this._state.enable_tracking\r\n )\r\n }),\r\n (ThinkingDataPersistence.prototype.clear = function () {\r\n ;(this._state = {}), this._save()\r\n }),\r\n (ThinkingDataPersistence.prototype.setOptTracking = function (e) {\r\n this._set('opt_tracking', e)\r\n }),\r\n (ThinkingDataPersistence.prototype.getOptTracking = function () {\r\n return (\r\n !!_.check.isUndefined(this._state.opt_tracking) ||\r\n this._state.opt_tracking\r\n )\r\n }),\r\n (ThinkingDataPersistence.prototype.setDistinctId = function (e) {\r\n this._set('distinct_id', e)\r\n }),\r\n (ThinkingDataPersistence.prototype.getAccountId = function () {\r\n return this._state.account_id\r\n }),\r\n (ThinkingDataPersistence.prototype.setAccountId = function (e) {\r\n this._set('account_id', e)\r\n }),\r\n (ThinkingDataPersistence.prototype.getDeviceId = function () {\r\n return this._state.device_id\r\n }),\r\n (ThinkingDataPersistence.prototype.setSuperProperties = function (e) {\r\n this._set('super_properties', e)\r\n }),\r\n (ThinkingDataPersistence.prototype.getSuperProperties = function () {\r\n return this._state.super_properties || {}\r\n }),\r\n (ThinkingDataPersistence.prototype.setEventTimer = function (e, t) {\r\n var n = this._state.event_timers || {}\r\n ;(n[e] = t), this._set('event_timers', n)\r\n }),\r\n (ThinkingDataPersistence.prototype.clearEventTimer = function () {\r\n this._set('event_timers', {})\r\n }),\r\n (ThinkingDataPersistence.prototype.removeEventTimer = function (e) {\r\n var t = (this._state.event_timers || {})[e]\r\n return (\r\n _.check.isUndefined(t) ||\r\n (delete this._state.event_timers[e], this._save()),\r\n t\r\n )\r\n }),\r\n (ThinkingDataPersistence.prototype._setDeviceId = function (e) {\r\n this._state.device_id\r\n ? Log.w(\r\n 'Current device_id is ',\r\n this.getDeviceId(),\r\n \", it couldn't been set to: \",\r\n e\r\n )\r\n : this._set('device_id', e)\r\n }),\r\n (ThinkingDataPersistence.prototype._save = function () {\r\n this.enabled &&\r\n this.storage.set(\r\n this.name,\r\n JSON.stringify(this._state),\r\n 73e3,\r\n this.crossSubDomain\r\n )\r\n }),\r\n (ThinkingDataPersistence.prototype._set = function (e, t) {\r\n ;(this._state = this._state || {}), (this._state[e] = t), this._save()\r\n })\r\n var ThinkingDataAnalyticsLib = function () {}\r\n ;(ThinkingDataAnalyticsLib.prototype.trackLink = function (e, n, r) {\r\n var i,\r\n o,\r\n s = this\r\n this._isCollectData() &&\r\n ((i = this._getConfig('strict')),\r\n PropertyChecker.properties(r) || !i\r\n ? e &&\r\n _.check.isObject(e) &&\r\n ((o = []),\r\n _.each(e, function (e, n) {\r\n e &&\r\n _.check.isArray(e) &&\r\n _.each(e, function (e) {\r\n switch (n) {\r\n case 'tag':\r\n _.each(document.getElementsByTagName(e), function (e) {\r\n o.indexOf(e) < 0 && o.push(e)\r\n })\r\n break\r\n case 'class':\r\n _.each(document.getElementsByClassName(e), function (e) {\r\n o.indexOf(e) < 0 && o.push(e)\r\n })\r\n break\r\n case 'id':\r\n var t = document.getElementById(e)\r\n null !== t && o.indexOf(t) < 0 && o.push(t)\r\n }\r\n })\r\n }),\r\n _.each(o, function (e) {\r\n var t\r\n null !== e &&\r\n (((t = _.extend({}, _.info.pageProperties(), r))[\r\n '#element_type'\r\n ] = e.nodeName.toLowerCase()),\r\n _.check.isUndefined(t.name) &&\r\n (t.name =\r\n e.getAttribute('td-name') ||\r\n e.innerHTML ||\r\n e.value ||\r\n '\u672a\u83b7\u53d6\u6807\u8bc6'),\r\n e.addEventListener('click', function () {\r\n s._sendRequest({\r\n type: 'track',\r\n event: n,\r\n properties: i ? PropertyChecker.stripProperties(t) : t,\r\n })\r\n }))\r\n }))\r\n : Log.w('trackLink failed due to invalid properties.'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.setPageProperty = function (e) {\r\n this._isCollectData() &&\r\n (PropertyChecker.properties(e) || !this._getConfig('strict')\r\n ? _.extend(this.currentProps, e)\r\n : Log.w('PageProperty \u8f93\u5165\u7684\u53c2\u6570\u6709\u8bef'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.getPageProperty = function () {\r\n return this.currentProps\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.getPresetProperties = function () {\r\n var e = _.info.properties(),\r\n t = {}\r\n ;(t.os = e['#os']),\r\n (t.screenWidth = e['#screen_width']),\r\n (t.screenHeight = e['#screen_height']),\r\n (t.browser = e['#browser']),\r\n (t.browserVersion = e['#browser_version']),\r\n (t.deviceId = this.getDeviceId())\r\n e = 0 - new Date().getTimezoneOffset() / 60\r\n return (\r\n this._getConfig('zoneOffset') && (e = this._getConfig('zoneOffset')),\r\n (t.zoneOffset = e),\r\n (t.toEventPresetProperties = function () {\r\n return {\r\n '#os': t.os,\r\n '#screen_width': t.screenWidth,\r\n '#screen_height': t.screenHeight,\r\n '#browser': t.browser,\r\n '#browser_version': t.browserVersion,\r\n '#device_id': t.deviceId,\r\n '#zone_offset': t.zoneOffset,\r\n }\r\n }),\r\n t\r\n )\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.login = function (e) {\r\n this._isCollectData() &&\r\n ('number' == typeof e && (e = String(e)),\r\n PropertyChecker.userId(e) || !this._getConfig('strict')\r\n ? e !== this.persistence.getAccountId() &&\r\n this.persistence.setAccountId(e)\r\n : Log.e('login \u7684\u53c2\u6570\u5fc5\u987b\u662f\u5b57\u7b26\u4e32'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.logout = function (e) {\r\n this._isCollectData() &&\r\n (!0 === e && ((e = _.UUID()), this.persistence.setDistinctId(e)),\r\n this.persistence.setAccountId(''))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userSet = function (e, t) {\r\n this._isCollectData() &&\r\n ((!PropertyChecker.propertiesMust(e) && this._getConfig('strict')) ||\r\n this._sendRequest({ type: 'user_set', properties: e }, t))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userSetOnce = function (e, t) {\r\n this._isCollectData() &&\r\n ((!PropertyChecker.propertiesMust(e) && this._getConfig('strict')) ||\r\n this._sendRequest({ type: 'user_setOnce', properties: e }, t))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userUnset = function (e, t) {\r\n var n\r\n this._isCollectData() &&\r\n ((!PropertyChecker.propertyName(e) && this._getConfig('strict')) ||\r\n (((n = {})[e] = 0),\r\n this._sendRequest({ type: 'user_unset', properties: n }, t)))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userAdd = function (e, t) {\r\n var n\r\n this._isCollectData() &&\r\n (_.check.isString(e) && ((n = e), ((e = {})[n] = 1)),\r\n PropertyChecker.propertiesMust(e) &&\r\n (!(function (e) {\r\n for (var t in e) if (!/-*\\d+/.test(String(e[t]))) return\r\n return 1\r\n })(e) && this._getConfig('strict')\r\n ? Log.w('userAdd \u5c5e\u6027\u4e2d\u7684\u503c\u53ea\u80fd\u662f\u6570\u5b57')\r\n : this._sendRequest({ type: 'user_add', properties: e }, t)))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userAppend = function (e, t) {\r\n this._isCollectData() &&\r\n ((PropertyChecker.propertiesMust(e) &&\r\n (function (e) {\r\n for (var t in e) if (!_.check.isArray(e[t])) return\r\n return 1\r\n })(e)) ||\r\n !this._getConfig('strict')\r\n ? this._sendRequest({ type: 'user_append', properties: e }, t)\r\n : Log.w('userAppend \u5c5e\u6027\u4e2d\u7684\u503c\u53ea\u80fd\u662f Array'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userUniqAppend = function (e, t) {\r\n this._isCollectData() &&\r\n ((PropertyChecker.propertiesMust(e) &&\r\n (function (e) {\r\n for (var t in e) if (!_.check.isArray(e[t])) return\r\n return 1\r\n })(e)) ||\r\n !this._getConfig('strict')\r\n ? this._sendRequest({ type: 'user_uniq_append', properties: e }, t)\r\n : Log.w('userUniqAppend \u5c5e\u6027\u4e2d\u7684\u503c\u53ea\u80fd\u662f Array'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.flush = function () {\r\n this.batchConsumer && !this._isDebug() && this.batchConsumer.flush()\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.userDel = function (e) {\r\n this._isCollectData() && this._sendRequest({ type: 'user_del' }, e)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype._sendRequest = function (e, t, n) {\r\n var r,\r\n i =\r\n _.check.isUndefined(e.time) || !_.check.isDate(e.time)\r\n ? new Date()\r\n : e.time,\r\n o = {\r\n data: [\r\n {\r\n '#type': e.type,\r\n '#time': _.formatDate(\r\n _.formatTimeZone(i, this._getConfig('zoneOffset'))\r\n ),\r\n '#distinct_id': this.persistence.getDistinctId(),\r\n },\r\n ],\r\n }\r\n if (\r\n (this.persistence.getAccountId() &&\r\n (o.data[0]['#account_id'] = this.persistence.getAccountId()),\r\n 'track' === e.type ||\r\n 'track_update' === e.type ||\r\n 'track_overwrite' === e.type\r\n ? ((o.data[0]['#event_name'] = e.event),\r\n 'track_update' === e.type || 'track_overwrite' === e.type\r\n ? (o.data[0]['#event_id'] = e.extraId)\r\n : e.firstCheckId &&\r\n (o.data[0]['#first_check_id'] = e.firstCheckId),\r\n (i = 0 - i.getTimezoneOffset() / 60),\r\n this._getConfig('zoneOffset') &&\r\n (i = this._getConfig('zoneOffset')),\r\n (o.data[0].properties = _.extend(\r\n {},\r\n {\r\n '#device_id': this.persistence.getDeviceId(),\r\n '#zone_offset': i,\r\n },\r\n _.info.properties(),\r\n this.getSuperProperties(),\r\n this.dynamicProperties ? this.dynamicProperties() : {},\r\n this.getPageProperty()\r\n )),\r\n (i = this.persistence.removeEventTimer(e.event)),\r\n _.check.isUndefined(i) ||\r\n ((i = new Date().getTime() - i),\r\n (i = parseFloat((i / 1e3).toFixed(3))),\r\n (o.data[0].properties['#duration'] = i = 86400 < i ? 86400 : i)))\r\n : (o.data[0].properties = {}),\r\n _.check.isObject(e.properties) &&\r\n !_.check.isEmptyObject(e.properties) &&\r\n _.extend(o.data[0].properties, e.properties),\r\n _.searchObjDate(o.data[0], this._getConfig('zoneOffset')),\r\n 'ajax' === this._getConfig('send_method') &&\r\n (o.data[0] = _.generateEncryptyData(\r\n o.data[0],\r\n this._getConfig('secretKey')\r\n )),\r\n (o['#app_id'] = this._getConfig('appId')),\r\n (o['#flush_time'] = _.formatTimeZone(\r\n new Date(),\r\n this._getConfig('zoneOffset')\r\n ).getTime()),\r\n Log.i(o),\r\n this._getConfig('useAppTrack'))\r\n ) {\r\n var s = window.ThinkingData_APP_JS_Bridge || {}\r\n if ('object' === _typeof(s) && s.thinkingdata_track)\r\n return (\r\n s.thinkingdata_track(JSON.stringify(o)),\r\n void ('function' == typeof t && t())\r\n )\r\n if (/td-sdk-ios/.test(navigator.userAgent) && !window.MSStream) {\r\n var a = document.createElement('iframe')\r\n return (\r\n a.setAttribute(\r\n 'src',\r\n 'thinkinganalytics://trackEvent?event=' +\r\n _.encodeURIComponent(JSON.stringify(o))\r\n ),\r\n document.documentElement.appendChild(a),\r\n a.parentNode.removeChild(a),\r\n (a = null),\r\n void ('function' == typeof t && t())\r\n )\r\n }\r\n }\r\n if (\r\n (n && (o.data[0]['#uuid'] = _.UUIDv4()),\r\n !this.batchConsumer || this._isDebug() || n)\r\n ) {\r\n if (\r\n (this._isDebug()\r\n ? ((r =\r\n '&data=' +\r\n _.encodeURIComponent(JSON.stringify(o.data[0])) +\r\n '&source=client&deviceId=' +\r\n this.getDeviceId() +\r\n '&appid=' +\r\n this._getConfig('appId') +\r\n '&version=' +\r\n Config.LIB_VERSION),\r\n 'debug_only' === this._getConfig('mode') && (r += '&dryRun=1'))\r\n : ((o = JSON.stringify(o)),\r\n (s = _.base64Encode(o)),\r\n (a = 'crc=' + _.hashCode(s)),\r\n (r =\r\n '&data=' +\r\n _.encodeURIComponent(s) +\r\n '&ext=' +\r\n _.encodeURIComponent(a) +\r\n '&version=' +\r\n Config.LIB_VERSION)),\r\n n &&\r\n void 0 !==\r\n ('undefined' == typeof navigator\r\n ? 'undefined'\r\n : _typeof(navigator)) &&\r\n navigator.sendBeacon)\r\n ) {\r\n n = new FormData()\r\n return (\r\n this._isDebug()\r\n ? (n.append(\r\n 'data',\r\n _.encodeURIComponent(JSON.stringify(o.data[0]))\r\n ),\r\n n.append('source', 'client'),\r\n n.append('deviceId', this.getDeviceId()),\r\n n.append('appid', this._getConfig('appId')),\r\n n.append('version', Config.LIB_VERSION),\r\n 'debug_only' === this._getConfig('mode') &&\r\n n.append('dryRun', 1))\r\n : n.append('data', _.base64Encode(o)),\r\n void navigator.sendBeacon(this._getConfig('serverUrl'), n)\r\n )\r\n }\r\n 'ajax' === this._getConfig('send_method')\r\n ? new AjaxTask(\r\n r,\r\n this._getConfig('serverUrl'),\r\n this._getConfig('tryCount'),\r\n t,\r\n this._isDebug()\r\n ).run()\r\n : this._sendRequestWithImage(r, t)\r\n } else this.batchConsumer.add(o.data[0])\r\n })\r\n var dataStoragePrefix = 'ta_',\r\n tabStoragePrefix = 'tab_'\r\n function BatchConsumer(e) {\r\n ;(this.config = e),\r\n (this.timer = null),\r\n (this.batchConfig = _.extend(\r\n { size: 5, interval: 5e3, storageLimit: 200 },\r\n this.config.batch\r\n )),\r\n this.batchConfig.size < 1 && (this.batchConfig.size = 1),\r\n 30 < this.batchConfig.size && (this.batchConfig.size = 30),\r\n (this.prefix = this.config.persistencePrefix),\r\n (this.tabKey = this.prefix + tabStoragePrefix + this.config.appId),\r\n (this.storageLimit = this.batchConfig.storageLimit)\r\n }\r\n BatchConsumer.prototype = {\r\n batchInterval: function () {\r\n var e = this\r\n e.timer = setTimeout(function () {\r\n e.recycle(), e.send(), clearTimeout(e.timer), e.batchInterval()\r\n }, this.batchConfig.interval)\r\n },\r\n add: function (e) {\r\n var t = e,\r\n n =\r\n this.prefix +\r\n dataStoragePrefix +\r\n this.config.appId +\r\n '_' +\r\n String(_.getRandom()),\r\n e = _.localStorage.get(this.tabKey)\r\n if (\r\n (e = (null !== e && _.safeJSONParse(e)) || []).length <=\r\n this.storageLimit\r\n )\r\n e.push(n),\r\n _.localStorage.set(this.tabKey, JSON.stringify(e)),\r\n _.saveObjectVal(n, t)\r\n else {\r\n var r = e.splice(0, 20)\r\n console.log('\u5220\u9664\u7684\u6570\u636e:' + r),\r\n e.push(n),\r\n _.localStorage.set(this.tabKey, JSON.stringify(e)),\r\n _.saveObjectVal(n, t)\r\n for (var t = {}, i = [], o = 0; o < r.length; o++) {\r\n var s = _.readObjectVal(r[o])\r\n _.hasEncrypty(s) ||\r\n (s = _.generateEncryptyData(s, this.config.secretKey)),\r\n i.push(s)\r\n }\r\n ;(t.data = i),\r\n (t['#app_id'] = this.config.appId),\r\n (t['#flush_time'] = _.formatTimeZone(\r\n new Date(),\r\n this.config.zoneOffset\r\n ).getTime()),\r\n this.request(t, r)\r\n }\r\n },\r\n flush: function () {\r\n clearTimeout(this.timer), this.send(), this.batchInterval()\r\n },\r\n send: function () {\r\n var e = _.localStorage.get(this.tabKey)\r\n if (e && (e = _.safeJSONParse(e) || []).length) {\r\n for (\r\n var t = {},\r\n n = [],\r\n r = [],\r\n i =\r\n e.length < this.batchConfig.size\r\n ? e.length\r\n : this.batchConfig.size,\r\n o = 0;\r\n o < i;\r\n o++\r\n ) {\r\n var s = _.readObjectVal(e[o])\r\n _.hasEncrypty(s) ||\r\n (s = _.generateEncryptyData(s, this.config.secretKey)),\r\n n.push(s),\r\n r.push(e[o])\r\n }\r\n ;(t.data = n),\r\n (t['#app_id'] = this.config.appId),\r\n (t['#flush_time'] = _.formatTimeZone(\r\n new Date(),\r\n this.config.zoneOffset\r\n ).getTime()),\r\n this.request(t, r)\r\n }\r\n },\r\n request: function (e, t) {\r\n var n = this\r\n Log.i('flush data'), Log.i(e)\r\n var r = JSON.stringify(e),\r\n e = _.base64Encode(r),\r\n r = 'crc=' + _.hashCode(e),\r\n r =\r\n '&data=' +\r\n _.encodeURIComponent(e) +\r\n '&ext=' +\r\n _.encodeURIComponent(r) +\r\n '&version=' +\r\n Config.LIB_VERSION\r\n new AjaxTask(\r\n r,\r\n this.config.serverUrl,\r\n this.config.tryCount,\r\n function () {\r\n n.remove(t)\r\n },\r\n !1\r\n ).run()\r\n },\r\n remove: function (e) {\r\n var t = _.localStorage.get(this.tabKey)\r\n if (t) {\r\n for (var n = _.safeJSONParse(t) || [], r = 0; r < e.length; r++) {\r\n var i = _.indexOf(n, e[r])\r\n ;-1 < i && n.splice(i, 1), _.localStorage.remove(e[r])\r\n }\r\n _.localStorage.set(this.tabKey, JSON.stringify(n))\r\n }\r\n },\r\n recycle: function () {\r\n var e = _.localStorage.get(this.tabKey)\r\n if (e && 0 === (e = _.safeJSONParse(e) || []).length) {\r\n for (var t = 0; t < localStorage.length; t++) {\r\n var n = localStorage.key(t)\r\n 0 ===\r\n n.indexOf(this.prefix + dataStoragePrefix + this.config.appId) &&\r\n e.push(n)\r\n }\r\n 0 < e.length && _.localStorage.set(this.tabKey, JSON.stringify(e))\r\n }\r\n },\r\n }\r\n var AjaxTask = (function () {\r\n function o(e, t, n, r, i) {\r\n _classCallCheck(this, o),\r\n (this.data = e),\r\n (this.serverUrl = t),\r\n (this.tryCount = n || 3),\r\n (this.callback = r),\r\n (this.isDebug = i)\r\n }\r\n return (\r\n _createClass(o, [\r\n {\r\n key: 'run',\r\n value: function () {\r\n var t = null\r\n ;(t = window.XMLHttpRequest\r\n ? new XMLHttpRequest()\r\n : new ActiveXObject('Microsoft.XMLHTTP')).open(\r\n 'post',\r\n this.serverUrl,\r\n !0\r\n ),\r\n t.setRequestHeader(\r\n 'Content-type',\r\n 'application/x-www-form-urlencoded'\r\n )\r\n var n = this\r\n ;(t.onreadystatechange = function () {\r\n var e\r\n 4 === t.readyState &&\r\n ((200 <= t.status && t.status < 300) || 304 === t.status\r\n ? (n.callback && n.callback(),\r\n n.isDebug &&\r\n (0 !== (e = JSON.parse(t.response)).errorLevel\r\n ? Log.w(e)\r\n : Log.i(e)))\r\n : n.onFailed())\r\n }),\r\n t.send(this.data)\r\n },\r\n },\r\n {\r\n key: 'onFailed',\r\n value: function () {\r\n 0 < --this.tryCount && this.run()\r\n },\r\n },\r\n ]),\r\n o\r\n )\r\n })()\r\n ;(ThinkingDataAnalyticsLib.prototype._isDebug = function () {\r\n return (\r\n 'debug' === this._getConfig('mode') ||\r\n 'debug_only' === this._getConfig('mode')\r\n )\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype._sendRequestWithImage = function (\r\n e,\r\n t\r\n ) {\r\n function n(e) {\r\n e && !e.hasCalled && ((e.hasCalled = !0), e.callback && e.callback())\r\n }\r\n var r =\r\n (-1 !== this._getConfig('serverUrl').indexOf('?')\r\n ? this._getConfig('serverUrl')\r\n : this._getConfig('serverUrl') + '?') + e,\r\n e = document.createElement('img')\r\n ;(e.callback = t),\r\n setTimeout(n, this._getConfig('dataSendTimeout'), e),\r\n (e.onload = function () {\r\n ;(this.onload = null), n(this)\r\n }),\r\n (e.onerror = function () {\r\n ;(this.onerror = null), n(this)\r\n }),\r\n (e.onabort = function () {\r\n ;(this.onabort = null), n(this)\r\n }),\r\n (e.src = r)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.track = function (e, t, n, r) {\r\n this._isCollectData() &&\r\n ('ta_page_show' === e ||\r\n 'ta_page_hide' === e ||\r\n (PropertyChecker.event(e) && PropertyChecker.properties(t)) ||\r\n !this._getConfig('strict')) &&\r\n this._sendRequest(\r\n {\r\n type: 'track',\r\n event: e,\r\n time: _.check.isDate(n) ? n : new Date(),\r\n properties: t,\r\n },\r\n r\r\n )\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.trackUpdate = function (e) {\r\n this._isCollectData() &&\r\n (_.check.isObject(e)\r\n ? ((PropertyChecker.event(e.eventName) &&\r\n PropertyChecker.properties(e.properties)) ||\r\n !this._getConfig('strict')) &&\r\n this._sendRequest(\r\n {\r\n type: 'track_update',\r\n event: e.eventName,\r\n time: _.check.isDate(e.eventTime) ? e.eventTime : new Date(),\r\n properties: e.properties,\r\n extraId: e.eventId,\r\n },\r\n e.callback\r\n )\r\n : Log.e('trackUpdate \u53c2\u6570\u4e0d\u7b26\u5408\u8981\u6c42'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.trackOverwrite = function (e) {\r\n this._isCollectData() &&\r\n (_.check.isObject(e)\r\n ? ((PropertyChecker.event(e.eventName) &&\r\n PropertyChecker.properties(e.properties)) ||\r\n !this._getConfig('strict')) &&\r\n this._sendRequest(\r\n {\r\n type: 'track_overwrite',\r\n event: e.eventName,\r\n time: _.check.isDate(e.eventTime) ? e.eventTime : new Date(),\r\n properties: e.properties,\r\n extraId: e.eventId,\r\n },\r\n e.callback\r\n )\r\n : Log.e('trackOverwrite \u53c2\u6570\u4e0d\u7b26\u5408\u8981\u6c42'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.trackFirstEvent = function (e) {\r\n this._isCollectData() &&\r\n (_.check.isObject(e)\r\n ? ((PropertyChecker.event(e.eventName) &&\r\n PropertyChecker.properties(e.properties)) ||\r\n !this._getConfig('strict')) &&\r\n this._sendRequest(\r\n {\r\n type: 'track',\r\n event: e.eventName,\r\n time: _.check.isDate(e.eventTime) ? e.eventTime : new Date(),\r\n properties: e.properties,\r\n firstCheckId: e.firstCheckId || this.getDeviceId(),\r\n },\r\n e.callback\r\n )\r\n : Log.e('trackFirstEvent \u53c2\u6570\u4e0d\u7b26\u5408\u8981\u6c42'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.trackWithBeacon = function (\r\n e,\r\n t,\r\n n,\r\n r\r\n ) {\r\n ;('ta_page_hide' === e ||\r\n (PropertyChecker.event(e) && PropertyChecker.properties(t)) ||\r\n !this._getConfig('strict')) &&\r\n this._sendRequest(\r\n {\r\n type: 'track',\r\n event: e,\r\n time: _.check.isDate(n) ? n : new Date(),\r\n properties: t,\r\n },\r\n r,\r\n !0\r\n )\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.identify = function (e) {\r\n this._isCollectData() &&\r\n ('number' == typeof e && (e = String(e)),\r\n PropertyChecker.userId(e) || !this._getConfig('strict')\r\n ? e !== this.persistence.getDistinctId() &&\r\n this.persistence.setDistinctId(e)\r\n : Log.e('identify \u7684\u53c2\u6570\u5fc5\u987b\u662f\u5b57\u7b26\u4e32'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.getDistinctId = function () {\r\n return this.persistence.getDistinctId()\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.getDeviceId = function () {\r\n return this.persistence.getDeviceId()\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype._isCollectData = function () {\r\n return (\r\n this.persistence.getOptTracking() &&\r\n this.persistence.getEnableTracking()\r\n )\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.setSuperProperties = function (e) {\r\n this._isCollectData() &&\r\n (PropertyChecker.propertiesMust(e) || !this._getConfig('strict')\r\n ? this.persistence.setSuperProperties(\r\n _.extend({}, this.getSuperProperties(), e)\r\n )\r\n : Log.w('setSuperProperties \u53c2\u6570\u4e0d\u5408\u6cd5'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.getSuperProperties = function () {\r\n return this.persistence.getSuperProperties()\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.clearSuperProperties = function () {\r\n this._isCollectData() && this.persistence.setSuperProperties({})\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.unsetSuperProperty = function (e) {\r\n var t\r\n this._isCollectData() &&\r\n _.check.isString(e) &&\r\n (delete (t = this.getSuperProperties())[e],\r\n this.persistence.setSuperProperties(t))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.setDynamicSuperProperties = function (\r\n e\r\n ) {\r\n this._isCollectData() &&\r\n ('function' == typeof e\r\n ? PropertyChecker.properties(e()) || !this._getConfig('strict')\r\n ? (this.dynamicProperties = e)\r\n : Log.w('\u52a8\u6001\u516c\u5171\u5c5e\u6027\u5fc5\u987b\u8fd4\u56de\u5408\u6cd5\u7684\u5c5e\u6027\u503c')\r\n : Log.w('setDynamicSuperProperties \u7684\u53c2\u6570\u5fc5\u987b\u662f function \u7c7b\u578b'))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.timeEvent = function (e) {\r\n this._isCollectData() &&\r\n (_.check.isUndefined(e)\r\n ? Log.w('No event name provided to timeEvent')\r\n : this.persistence.setEventTimer(e, new Date().getTime()))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.quick = function (e, t) {\r\n var n\r\n this._isCollectData() &&\r\n ('string' == typeof e && 'autoTrack' === e\r\n ? ((n = {}),\r\n PropertyChecker.properties(t) && _.extend(n, t),\r\n this._sendRequest({\r\n type: 'track',\r\n event: 'ta_pageview',\r\n properties: _.extend(n, _.info.pageProperties()),\r\n }))\r\n : 'string' == typeof e && 'siteLinker' === e\r\n ? siteLinker.init(this, t)\r\n : Log.w('quick\u65b9\u6cd5\u4e2d\u6ca1\u6709\u8fd9\u4e2a\u529f\u80fd' + e))\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype._setConfig = function (e) {\r\n _.check.isObject(e) &&\r\n (_.extend(this.config, e),\r\n this._getConfig('persistencePrefix') ||\r\n (this.config.persistencePrefix = this.config.cookiePrefix),\r\n this.persistence)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype._getConfig = function (e) {\r\n return this.config[e]\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.init = function (e) {\r\n var t\r\n _.check.isUndefined(this.config)\r\n ? ((this.config = {}),\r\n (this.currentProps = this.currentProps || {}),\r\n this._setConfig(_.extend({}, DEFAULT_CONFIG, e)),\r\n (this.persistence = new ThinkingDataPersistence(this.config)),\r\n (t = this._getConfig('appId')),\r\n _.check.isUndefined(t) ||\r\n this._setConfig({ appId: t.replace(/\\s*/g, '') }),\r\n (Log.showLog = this._getConfig('showLog')),\r\n 'image' !== (t = this._getConfig('send_method')) &&\r\n 'ajax' !== t &&\r\n 'beacon' !== t &&\r\n (Log.i(\r\n 'send_method',\r\n t,\r\n 'is not supported. Changed to image as default value'\r\n ),\r\n this._setConfig({ send_method: 'image' })),\r\n new PageLifeCycle(this, this._getConfig('autoTrack')).start(),\r\n this._isDebug()\r\n ? this._setConfig({\r\n serverUrl: _.url('basic', e.serverUrl) + '/data_debug',\r\n })\r\n : this._setConfig({\r\n serverUrl: _.url('basic', e.serverUrl) + '/sync_js',\r\n }),\r\n void 0 !== this._getConfig('batch') &&\r\n !1 !== this._getConfig('batch') &&\r\n _.localStorage.isSupported() &&\r\n ((this.batchConsumer = new BatchConsumer(this.config)),\r\n this.batchConsumer.batchInterval()))\r\n : Log.i('The ThinkingData libraray has been initialized.')\r\n })\r\n var PageLifeCycle = (function () {\r\n function n(e, t) {\r\n _classCallCheck(this, n),\r\n (this.taLib = e),\r\n 'Object' === _.paramType(t) && 'Boolean' === _.paramType(t.pageShow)\r\n ? (this.autoPageShow = t.pageShow)\r\n : (this.autoPageShow = !1),\r\n 'Object' === _.paramType(t) && 'Boolean' === _.paramType(t.pageHide)\r\n ? (this.autoPageHide = t.pageHide)\r\n : (this.autoPageHide = !1)\r\n }\r\n return (\r\n _createClass(n, [\r\n {\r\n key: 'start',\r\n value: function () {\r\n var e = this\r\n 'onpageShow' in window\r\n ? (_.addEvent(window, 'pageShow', function () {\r\n e.trackPageShowEvent()\r\n }),\r\n _.addEvent(window, 'pagehide', function () {}))\r\n : (_.addEvent(window, 'load', function () {\r\n e.trackPageShowEvent()\r\n }),\r\n _.addEvent(window, 'beforeunload', function () {})),\r\n 'onvisibilitychange' in document &&\r\n _.addEvent(document, 'visibilitychange', function () {\r\n document.hidden\r\n ? e.trackPageHideEvent()\r\n : e.trackPageShowEvent()\r\n })\r\n },\r\n },\r\n {\r\n key: 'trackPageShowEvent',\r\n value: function () {\r\n this.autoPageShow &&\r\n this.taLib.track('ta_page_show', _.info.pageProperties()),\r\n this.taLib.timeEvent('ta_page_hide')\r\n },\r\n },\r\n {\r\n key: 'trackPageHideEvent',\r\n value: function () {\r\n this.autoPageHide &&\r\n this.taLib.trackWithBeacon(\r\n 'ta_page_hide',\r\n _.info.pageProperties()\r\n )\r\n },\r\n },\r\n {\r\n key: 'trackPageHideEventOnClose',\r\n value: function () {\r\n this.autoPageHide &&\r\n this.isPageShow &&\r\n this.taLib.trackWithBeacon(\r\n 'ta_page_hide',\r\n _.info.pageProperties()\r\n )\r\n },\r\n },\r\n ]),\r\n n\r\n )\r\n })()\r\n ;(ThinkingDataAnalyticsLib.prototype.initInstance = function (e, t) {\r\n if (\r\n !_.check.isString(e) ||\r\n (!_.check.isUndefined(t) && !_.check.isObject(t))\r\n )\r\n return Log.w('invalid parameter of initInstance(string, object).'), null\r\n if (this._getConfig('_name') !== MASTER_INSTANCE_NAME)\r\n return Log.w('This function is allowed for master instance only'), null\r\n if (e === MASTER_INSTANCE_NAME || this[e])\r\n return (\r\n Log.w('The name ', e, \" couldn't be used for create new instance.\"),\r\n null\r\n )\r\n _.check.isUndefined(t) && (t = {})\r\n var n = new ThinkingDataAnalyticsLib(),\r\n t = _.extend(\r\n {},\r\n this.config,\r\n { _name: e, persistenceEnabled: !1, uuid: this.getDeviceId() },\r\n t\r\n )\r\n t.persistenceEnabled &&\r\n (t.persistencePrefix = t.persistencePrefix + '_' + e),\r\n n.init(t),\r\n (this[e] = n)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.enableTracking = function (e) {\r\n 'boolean' == typeof e && this.persistence.setEnableTracking(e)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.optOutTracking = function () {\r\n this.persistence.setSuperProperties({}),\r\n this.persistence.setAccountId(''),\r\n this.persistence.clearEventTimer(),\r\n this.persistence.setOptTracking(!1)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.optInTracking = function () {\r\n this.persistence.setOptTracking(!0)\r\n }),\r\n (ThinkingDataAnalyticsLib.prototype.setTrackStatus = function (e) {\r\n _.check.isObject(e) &&\r\n ('pause' === (e = e.status)\r\n ? this.enableTracking(!1)\r\n : 'stop' === e\r\n ? this.optOutTracking()\r\n : 'normal' === e && (this.enableTracking(!0), this.optInTracking()))\r\n })\r\n var siteLinker = {},\r\n tdMaster\r\n function initAsModule() {\r\n return (tdMaster = new ThinkingDataAnalyticsLib())\r\n }\r\n ;(siteLinker.getPartUrl = function (e) {\r\n var t = this.option.length\r\n if (t)\r\n for (var n = 0; n < t; n++)\r\n if (-1 < e.indexOf(this.option[n].part_url)) return !0\r\n return !1\r\n }),\r\n (siteLinker.getPartHash = function (e) {\r\n var t = this.option.length\r\n if (t)\r\n for (var n = 0; n < t; n++)\r\n if (-1 < e.indexOf(this.option[n].part_url))\r\n return this.option[n].after_hash\r\n return !1\r\n }),\r\n (siteLinker.getCurrenId = function () {\r\n var e = this.ta.getDistinctId()\r\n return encodeURIComponent('d' + e)\r\n }),\r\n (siteLinker.rewriteUrl = function (e, t) {\r\n var n = /([^?#]+)(\\?[^#]*)?(#.*)?/.exec(e),\r\n r = ''\r\n if (n) {\r\n var i,\r\n o = n[1] || '',\r\n s = n[2] || '',\r\n n = n[3] || ''\r\n return (\r\n (r = this.getPartHash(e)\r\n ? ((i = n.indexOf('_tasdk')),\r\n -1 < n.indexOf('?')\r\n ? -1 < i\r\n ? o +\r\n s +\r\n '#' +\r\n n.substring(1, i) +\r\n '_tasdk=' +\r\n this.getCurrenId()\r\n : o +\r\n s +\r\n '#' +\r\n n.substring(1) +\r\n '&_tasdk=' +\r\n this.getCurrenId()\r\n : o +\r\n s +\r\n '#' +\r\n n.substring(1) +\r\n '?_tasdk=' +\r\n this.getCurrenId())\r\n : ((i = s.indexOf('_tasdk')),\r\n /^\\?(\\w)+/.test(s)\r\n ? -1 < i\r\n ? o +\r\n '?' +\r\n s.substring(1, i) +\r\n '_tasdk=' +\r\n this.getCurrenId() +\r\n n\r\n : o +\r\n '?' +\r\n s.substring(1) +\r\n '&_tasdk=' +\r\n this.getCurrenId() +\r\n n\r\n : o +\r\n '?' +\r\n s.substring(1) +\r\n '_tasdk=' +\r\n this.getCurrenId() +\r\n n)),\r\n t && (t.href = r),\r\n r\r\n )\r\n }\r\n }),\r\n (siteLinker.addClickListen = function () {\r\n function e(e) {\r\n var t,\r\n n = e.target,\r\n r = n.tagName.toLowerCase(),\r\n e = n.parentNode\r\n ;(('a' === r && n.href) ||\r\n (e && e.tagName && 'a' === e.tagName.toLowerCase() && e.href)) &&\r\n ((n = 'a' === r && n.href ? ((t = n.href), n) : ((t = e.href), e)),\r\n ('http:' !== (e = _.URL(t).protocol) && 'https:' !== e) ||\r\n (i.getPartUrl(t) && i.rewriteUrl(t, n)))\r\n }\r\n var i = this\r\n _.addSiteEvent(document, 'mousedown', e),\r\n window.PointerEvent &&\r\n 'maxTouchPoints' in window.navigator &&\r\n 0 <= window.navigator.maxTouchPoints &&\r\n _.addSiteEvent(document, 'pointerdown', e)\r\n }),\r\n (siteLinker.getUrlId = function () {\r\n var e = location.href.match(/_tasdk=([aufd][^\\?\\#\\&\\=]+)/)\r\n return _.check.isArray(e) && e[1] ? decodeURIComponent(e[1]) : ''\r\n }),\r\n (siteLinker.setRefferId = function () {\r\n var e = this.ta.getDistinctId(),\r\n t = this.getUrlId()\r\n if ('' === t) return !1\r\n var n = 'd' === t.substring(0, 1)\r\n if ((t = t.substring(1)) === e) return !1\r\n t && n && this.ta.identify(t)\r\n }),\r\n (siteLinker.init = function (e, t) {\r\n this.isInited ||\r\n ((this.isInited = !0),\r\n (this.ta = e),\r\n this.setRefferId(),\r\n _.check.isObject(t) &&\r\n _.check.isArray(t.linker) &&\r\n 0 < t.linker.length &&\r\n (this.addClickListen(),\r\n (this.option = t.linker),\r\n (this.option = (function (e) {\r\n for (var t = e.length, n = [], r = 0; r < t; r++)\r\n /[A-Za-z0-9]+\\./.test(e[r].part_url) &&\r\n '[object Boolean]' ===\r\n Object.prototype.toString.call(e[r].after_hash)\r\n ? n.push(e[r])\r\n : Log.w(\r\n 'linker\u914d\u7f6e\u7684\u7b2c ' +\r\n (r + 1) +\r\n ' \u9879\u683c\u5f0f\u4e0d\u6b63\u786e\uff0c\u8bf7\u68c0\u67e5\u53c2\u6570\u683c\u5f0f'\r\n )\r\n return n\r\n })(this.option))))\r\n })\r\n var td = initAsModule()\r\n return td\r\n})\r\n","module.exports = function(originalModule) {\n\tif (!originalModule.webpackPolyfill) {\n\t\tvar module = Object.create(originalModule);\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"exports\", {\n\t\t\tenumerable: true\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar sameValue = require('./_same-value');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@search logic\nrequire('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative($search, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","/* globals __webpack_amd_options__ */\nmodule.exports = __webpack_amd_options__;\n","/**\r\n * \u6821\u9a8c\u7edf\u8ba1\u6570\u636e\r\n */\r\n\r\nimport { EVENT_TYPE, TRACK_ATTRS } from '../constants'\r\n\r\n/**\r\n * \u68c0\u67e5\u4e8b\u4ef6\u540d\u662f\u5426\u5728\u767d\u540d\u5355\u5185\r\n * @param {\u4e8b\u4ef6\u540d} event\r\n */\r\nexport const checkEvent = function (event) {\r\n return EVENT_TYPE[event] === event\r\n}\r\n\r\n/**\r\n * \u68c0\u67e5\u7edf\u8ba1\u6570\u636e\u662f\u5426\u5305\u542b\u5fc5\u8981\u7684\u5b57\u6bb5\r\n * @param {\u7edf\u8ba1\u6570\u636e} data\r\n */\r\nexport const checkAttrs = function (data) {\r\n // const necessaryAttrs = TRACK_ATTRS.filter(t=> t.necessary)\r\n return TRACK_ATTRS.every(t => data[t.key] !== undefined && data[t.key] !== '' && data[t.key] !== null)\r\n}\r\n","import '/lib/thinkingdata.umd.min'\r\nimport { TA_APPID, TA_SERVERURL, EVENT_TYPE } from '../constants'\r\nimport {\r\n getPageProperties,\r\n getPlatform,\r\n UUIDv4,\r\n} from '../helper/util'\r\nimport { checkEvent, checkAttrs } from './check'\r\n\r\nconst ta = window.thinkingdata\r\n\r\nlet status = {\r\n //bi\u7cfb\u7edf\u7684key\r\n // biKey: null,\r\n //\u6700\u540e\u4e00\u6761\u7edf\u8ba1\u4fe1\u606f\r\n lastTrackInfo: { data: null },\r\n pageTackInfo: { data: null },\r\n beginTime: Date.now() * 1,\r\n updateTrackInfo: false,\r\n // lastTrackName: '',\r\n // lastTrackEvent: '',\r\n}\r\n\r\n/**\r\n * \u7edf\u8ba1\u7684\u5168\u5c40\u53c2\u6570\r\n * @param {Json,\u5168\u5c40\u7edf\u8ba1\u53c2\u6570} config\r\n */\r\nexport const setPageInfo = function (config) {\r\n ta.setPageProperty(config)\r\n}\r\n\r\n/**\r\n *\r\n * @param {*} config \u521d\u59cb\u5316\u914d\u7f6e\r\n */\r\nexport const init = function (config = {}) {\r\n // if (config.biKey) status.biKey = config.biKey\r\n if (config.updateTrackInfo === true) status.updateTrackInfo = true\r\n ta.init({\r\n appId: config.appId || TA_APPID,\r\n serverUrl: config.serverUrl || TA_SERVERURL,\r\n send_method: 'ajax',\r\n // persistence:'cookie',\r\n showLog: config.showLog || false,\r\n mode: config.env ? config.env : '',\r\n })\r\n}\r\n\r\nexport const identify = function (id) {\r\n ta.identify(id)\r\n}\r\n\r\n// function sendBi(biKey, desc) {\r\n// window._jc_ping = window._jc_ping || []\r\n// _jc_ping.push(['_trackBlockClick', biKey, desc])\r\n// }\r\n\r\n/**\r\n * \u53d1\u9001\u4e8b\u4ef6\u7edf\u8ba1\r\n * \u5907\u6ce8: \u4e8b\u4ef6\u540d\u4e3apv\u4ee5\u5916\u7684\u4e8b\u4ef6\u4f1a\u8bb0\u5f55\u5173\u8054\u7684\u4e0a\u4e00\u4e2a\u548c\u4e0b\u4e00\u4e2a\u4e8b\u4ef6\u4fe1\u606f.\r\n * @param {\u4e8b\u4ef6\u540d} event\r\n * @param {\u7edf\u8ba1\u6570\u636e} data\r\n */\r\nexport const track = function (event, data) {\r\n if(location.href.indexOf('dsm_debug') != -1){\r\n console.log(event,data)\r\n }\r\n if (!checkEvent(event)) {\r\n throw new Error(`\u5fc5\u987b\u4f7f\u7528dsm.EVENT_TYPE\u91cc\u5b9a\u4e49\u7684\u4e8b\u4ef6\u540d:${event}`)\r\n }\r\n if (!checkAttrs(data)) {\r\n throw new Error(`dsm.TRACK_ATTRS\u5185\u7684\u5b57\u6bb5\u4e0d\u80fd\u4e3a\u7a7a: ${JSON.stringify(data)}`)\r\n }\r\n // if(event === EVENT_TYPE.ajax)\r\n data.dsmid = UUIDv4()\r\n data.eventName = event\r\n // data.eventTime = new Date()\r\n const page = getPageProperties()\r\n data.referrer = data.referrer || page.referrer\r\n data.referrer_host = data.referrer_host || page.referrer_host\r\n data.ua = data.ua || navigator.userAgent\r\n data['page_url'] = data['page_url'] || location.href\r\n data['page_path'] = data['page_path'] || location.pathname\r\n data['platform'] = getPlatform()\r\n //\u5173\u8054\u4e0a\u4e00\u4e2a\u7edf\u8ba1\r\n if (event !== EVENT_TYPE.pv && status.lastTrackInfo.data) {\r\n data.prevDsmid = status.lastTrackInfo.data.dsmid\r\n data.prevName = status.lastTrackInfo.data.name\r\n data.prevEventName = status.lastTrackInfo.data.eventName\r\n }\r\n //\u521d\u59cb\u5316\u9875\u9762\u8bbf\u95ee\u7edf\u8ba1\u4fe1\u606f\r\n if (event === EVENT_TYPE.pageview) {\r\n // data.duration = Date.now() - status.beginTime\r\n status.pageTackInfo.data = data\r\n status.pageTackInfo.eventTime = new Date()\r\n }\r\n //\u53d1\u9001\u975e\u9875\u9762\u8bbf\u95ee\u7edf\u8ba1\u65f6,\u987a\u4fbf\u66f4\u65b0\u9875\u9762\u8bbf\u95ee\u65f6\u957f(\u5f02\u5e38\u4e8b\u4ef6\u4e0d\u66f4\u65b0\u9875\u9762\u65f6\u957f,\u8282\u7701\u8bf7\u6c42\u91cf)\r\n else if (\r\n event !== EVENT_TYPE.error &&\r\n event !== EVENT_TYPE.pv &&\r\n status.updateTrackInfo &&\r\n status.pageTackInfo.data\r\n ) {\r\n status.pageTackInfo.data.duration = Date.now() - status.beginTime\r\n ta.trackUpdate({\r\n eventName: EVENT_TYPE.pageview,\r\n properties: status.pageTackInfo.data,\r\n eventId: status.pageTackInfo.data.dsmid,\r\n eventTime: status.pageTackInfo.eventTime,\r\n })\r\n }\r\n \r\n let currentTime = new Date()\r\n //\u5982\u679c\u4e24\u6b21\u7edf\u8ba1\u95f4\u9694\u5c0f\u4e8e5\u79d2,\u5e76\u4e14name\u548ceventname\u4e00\u81f4,\u5219\u89c6\u4e3a\u7528\u6237\u91cd\u590d\u70b9\u51fb,\u5408\u5e76\u4e3a\u4e00\u6761,\u5e76\u8bb0\u5f55\u70b9\u51fb\u6b21\u6570(times)\r\n // if(status.lastTrackInfo.data){\r\n // const inMergeInterval = currentTime - status.lastTrackInfo.eventTime < 5000\r\n // const lastData = status.lastTrackInfo.data\r\n // // console.log(currentTime,status.lastTrackInfo.eventTime)\r\n // if(inMergeInterval && lastData.eventName === data.eventName && lastData.name === data.name) {\r\n // if(status.lastTrackInfo.eventTime) currentTime = status.lastTrackInfo.eventTime\r\n // // eventId = lastData.dsmid\r\n // data = lastData\r\n // data.times = data.times ? data.times + 1 : 2\r\n // }\r\n // }\r\n //\u53d1\u9001\u7edf\u8ba1\r\n ta.trackUpdate({\r\n eventName: event,\r\n properties: data,\r\n eventId: data.dsmid,\r\n eventTime: currentTime\r\n })\r\n // if (status.biKey) {\r\n // sendBi(data.adskey || status.biKey, `${data.eventName}_:_${data.name}`)\r\n // }\r\n\r\n if (event !== EVENT_TYPE.pv && event !== EVENT_TYPE.error) {\r\n //\u66f4\u65b0\u4e0a\u4e00\u4e2a\u7edf\u8ba1\u7684\u5173\u8054\u4e0b\u4e00\u4e2a\u7edf\u8ba1\u4fe1\u606f\r\n if (status.lastTrackInfo.data && status.updateTrackInfo) {\r\n status.lastTrackInfo.data.nextDsmid = data.dsmid\r\n status.lastTrackInfo.data.nextName = data.name\r\n status.lastTrackInfo.data.nextEventName = data.eventName\r\n ta.trackUpdate({\r\n eventName: status.lastTrackInfo.data.eventName,\r\n properties: status.lastTrackInfo.data,\r\n eventId: status.lastTrackInfo.data.dsmid,\r\n eventTime: status.lastTrackInfo.eventTime,\r\n })\r\n }\r\n //\u5c06\u672c\u6b21\u7edf\u8ba1\u8bbe\u7f6e\u4e3a\u6700\u540e\u4e00\u6b21\u7edf\u8ba1\r\n status.lastTrackInfo.data = data\r\n status.lastTrackInfo.eventTime = currentTime\r\n }\r\n}\r\n\r\n/**\r\n * \u53d1\u9001\u9875\u9762\u8bbf\u95ee\u7edf\u8ba1\r\n * @param {\u53ef\u9009\u989d\u5916\u9875\u9762\u6570\u636e} data \r\n */\r\nexport const sendPageViewTrack = function (data) {\r\n data = data || {}\r\n const page = getPageProperties()\r\n data.referrer = data.referrer || page.referrer\r\n data.referrer_host = data.referrer_host || page.referrer_host\r\n data.title = data.title || page.title || ''\r\n data.name = page.name\r\n track(EVENT_TYPE.pageview, data)\r\n}\r\n\r\n/**\r\n *\r\n * @param {ajax\u5730\u5740} url\r\n * @param {\u63a5\u53e3\u63cf\u8ff0} name\r\n * @param {\u8fd4\u56de\u503c} res\r\n * @param {\u8be5\u64cd\u4f5c\u662f\u5426\u6210\u529f(\u53ef\u9009)} success\r\n * @param {\u63a5\u53e3\u8fd4\u56de\u4fe1\u606f(\u53ef\u9009)} msg\r\n * @param {\u5f02\u5e38\u4fe1\u606f(\u53ef\u9009)} error\r\n */\r\nexport const sendAjaxTrack = function (data = {}) {\r\n // let shortRes = getShortData(res)\r\n const trackData = {\r\n url: data.apiUrl,\r\n name: data.name,\r\n }\r\n if(data.msg) trackData.msg = data.msg\r\n if(data.error) trackData.error = data.error\r\n if (data.success === true || data.success === false) {\r\n trackData.success = data.success\r\n }\r\n // console.log(JSON.stringify(shortRes))\r\n // console.log(JSON.stringify(shortRes).length)\r\n track(EVENT_TYPE.ajax, trackData)\r\n}","import { BIKEY, EVENT_TYPE } from '../constants'\r\nimport {\r\n getPageProperties,\r\n getPlatform,\r\n isObject,\r\n UUIDv4,\r\n} from '../helper/util'\r\n\r\nimport { checkEvent, checkAttrs } from './check'\r\n\r\nconst status = {\r\n pageInfo: {},\r\n lastTrackInfo: { data: null },\r\n pageTackInfo: { data: null },\r\n}\r\n\r\n//\u8bfb\u53d6\u9875\u9762\u4e0a\u7684pageinfo\u914d\u7f6e(\u4e0d\u662fdsm\u7ec4\u4ef6\u7684\u8bbe\u7f6e)\r\nfunction getPageInfoObject(){\r\n if(window.ued && window.ued.pageInfo){\r\n return window.ued.pageInfo\r\n }\r\n else if(window.pageinfo && window.pageinfo.gamecode){\r\n window.pageinfo.gameCode = window.pageinfo.gamecode\r\n return window.pageinfo\r\n } else if(window.ued){\r\n return window.ued\r\n } else {\r\n return {}\r\n }\r\n}\r\n\r\nfunction getArticleObject(){\r\n return window.article || {}\r\n}\r\n\r\nexport const setPageInfo = function (pageInfo) {\r\n status.pageInfo = pageInfo\r\n //\u5982\u679c\u6ca1\u914d\u7f6e,\u91c7\u96c6\u9ed8\u8ba4\u7684\u9875\u9762\u4fe1\u606f\r\n if(!status.pageInfo.gameCode){\r\n status.pageInfo.gameCode = getPageInfoObject().gameCode || getArticleObject().gamecode || ''\r\n }\r\n if(!status.pageInfo.gameName){\r\n status.pageInfo.gameName = getPageInfoObject().gameName || getArticleObject().gameName|| ''\r\n }\r\n if(!status.pageInfo.channel){\r\n status.pageInfo.channel = getPageInfoObject().channel || getArticleObject().channel|| ''\r\n }\r\n // console.log('bi pageInfo', pageInfo)\r\n}\r\n\r\nexport const init = function(config) {\r\n // console.log('init',config)\r\n}\r\n\r\nexport const track = function (event, data) {\r\n if (!checkEvent(event)) {\r\n throw new Error(`\u5fc5\u987b\u4f7f\u7528dsm.EVENT_TYPE\u91cc\u5b9a\u4e49\u7684\u4e8b\u4ef6\u540d:${event}`)\r\n }\r\n if (!checkAttrs(data)) {\r\n throw new Error(`dsm.TRACK_ATTRS\u5185\u7684\u5b57\u6bb5\u4e0d\u80fd\u4e3a\u7a7a: ${JSON.stringify(data)}`)\r\n }\r\n if(status.pageInfo && isObject(status.pageInfo)){\r\n Object.keys(status.pageInfo).forEach(key=>{\r\n data[key] = status.pageInfo[key]\r\n })\r\n }\r\n data.dsmid = UUIDv4()\r\n data.eventName = event\r\n // const page = getPageProperties()\r\n // data.referrer = data.referrer || page.referrer\r\n data.page_url = data.page_url || location.href\r\n data.platform = getPlatform()\r\n //\u5173\u8054\u4e0a\u4e00\u4e2a\u7edf\u8ba1\r\n if (event !== EVENT_TYPE.pv && status.lastTrackInfo.data) {\r\n data.prevDsmid = status.lastTrackInfo.data.dsmid\r\n // data.prevName = status.lastTrackInfo.data.name\r\n // data.prevEventName = status.lastTrackInfo.data.eventName\r\n }\r\n if (event !== EVENT_TYPE.pv) {\r\n //\u5c06\u672c\u6b21\u7edf\u8ba1\u8bbe\u7f6e\u4e3a\u6700\u540e\u4e00\u6b21\u7edf\u8ba1\r\n status.lastTrackInfo.data = data\r\n }\r\n // let pingjsData = {}\r\n // if(ued && ued.pingjs) pingjsData = ued.pingjs.get()\r\n // const formData = {...data, ...pingjsData}\r\n window._jc_ping = window._jc_ping || []\r\n const dataStr = encodeURIComponent(JSON.stringify(data))\r\n _jc_ping.push(['_trackBlockClick', BIKEY, dataStr])\r\n}\r\n\r\nexport const identify = function (userId) {\r\n console.log('bi identify')\r\n}\r\n\r\n/**\r\n * \u53d1\u9001\u9875\u9762\u8bbf\u95ee\u7edf\u8ba1\r\n * @param {\u53ef\u9009\u989d\u5916\u9875\u9762\u6570\u636e} data \r\n */\r\n export const sendPageViewTrack = function (data) {\r\n data = data || {}\r\n const page = getPageProperties()\r\n // data.referrer = data.referrer || page.referrer\r\n // data.referrer_host = data.referrer_host || page.referrer_host\r\n // data.title = data.title || page.title\r\n data.name = data.name || page.name\r\n track(EVENT_TYPE.pageview, data)\r\n}\r\n\r\n/**\r\n *\r\n * @param {ajax\u5730\u5740} url\r\n * @param {\u63a5\u53e3\u63cf\u8ff0} name\r\n * @param {\u8fd4\u56de\u503c} res\r\n * @param {\u8be5\u64cd\u4f5c\u662f\u5426\u6210\u529f(\u53ef\u9009)} success\r\n * @param {\u63a5\u53e3\u8fd4\u56de\u4fe1\u606f(\u53ef\u9009)} msg\r\n * @param {\u5f02\u5e38\u4fe1\u606f(\u53ef\u9009)} error\r\n */\r\n export const sendAjaxTrack = function (data={}) {\r\n const trackData = {\r\n url: data.apiUrl,\r\n name: data.name,\r\n }\r\n if(data.msg) trackData.msg = data.msg\r\n if(data.error) trackData.error = data.error\r\n if (data.success === true || data.success === false) {\r\n trackData.success = data.success\r\n }\r\n // console.log(JSON.stringify(shortRes))\r\n // console.log(JSON.stringify(shortRes).length)\r\n track(EVENT_TYPE.ajax, data)\r\n}","export const qAll = function (selector) {\r\n return document.querySelectorAll(selector)\r\n}\r\n\r\nexport const qOne = function (selector) {\r\n return document.querySelector(selector)\r\n}\r\n\r\nexport const closest = function(el,selector) {\r\n if(el.closest){\r\n return el.closest(selector)\r\n } else if(jQuery) {\r\n console.log('jquery closest',jQuery(el).closest(selector))\r\n return jQuery(el).closest(selector)[0]\r\n } else {\r\n return null\r\n }\r\n}","\r\nimport * as ta from './core/ta'\r\nimport * as bi from './core/bi'\r\nimport { EVENT_TYPE } from './constants'\r\nimport { clone, getXpath, isString } from './helper/util'\r\nimport { closest } from './helper/dom'\r\nconst config = dsm.config\r\n\r\nconst trackEngine = []\r\nif (config.taEnable) trackEngine.push(ta)\r\nif (config.biEnable) trackEngine.push(bi)\r\n\r\n/**\r\n * @namespace dsm\r\n **/\r\nconst _dsm = {\r\n _inited: true,\r\n track(event, data) {\r\n trackEngine.forEach((n) => n.track(event, clone(data)))\r\n },\r\n identify(userId) {\r\n trackEngine.forEach((n) => n.identify(userId))\r\n },\r\n setPageInfo(info) {\r\n trackEngine.forEach((n) => n.setPageInfo(info))\r\n },\r\n sendAjaxTrack(data = {}) {\r\n trackEngine.forEach((n) => n.sendAjaxTrack(clone(data)))\r\n },\r\n sendPageViewTrack() {\r\n trackEngine.forEach((n) => n.sendPageViewTrack())\r\n },\r\n /**\r\n * \u624b\u52a8\u4e0a\u62a5\u811a\u672c\u5f02\u5e38,\u5982\u679c\u4ee3\u7801\u91cctry/catch\u4e86\u5f02\u5e38,\u53ef\u7528\u6b64\u63a5\u53e3\u624b\u52a8\u4e0a\u62a5\r\n * @param {error} catch\u5230\u7684\u5f02\u5e38\u4fe1\u606f\r\n */\r\n sendJsErrorTrack(e, level) {\r\n let errData = {}\r\n let data = { name: e.name || 'javascript error' }\r\n if (!e) return\r\n if (e.stack || e.message) {\r\n errData = {\r\n filename: e.filename,\r\n message: e.message,\r\n lineno: e.lineno,\r\n bubbles: e.bubbles,\r\n cancelBubble: e.cancelBubble,\r\n cancelable: e.cancelable,\r\n colno: e.colno,\r\n composed: e.composed,\r\n timeStamp: e.timeStamp,\r\n }\r\n if (e.stack) errData.stack = e.stack\r\n else if (e.error) errData.stack = e.error.stack\r\n data.extData = JSON.stringify(errData)\r\n } else if (isString(e)) {\r\n data.extData = JSON.stringify({ message: e })\r\n }\r\n data.level = level || 1\r\n setTimeout(() => dsm.track(EVENT_TYPE.error, data), 100)\r\n },\r\n startAutoTrack() {\r\n const onClick = (e) => {\r\n const trackNode = closest(e.target, 'button,a,.dsm-click')\r\n if (trackNode) {\r\n const dataset = trackNode.dataset\r\n const innerText = trackNode.innerText ? trackNode.innerText.trim() : ''\r\n\r\n const name =\r\n dataset.dsmName ||\r\n trackNode.value ||\r\n trackNode.title ||\r\n innerText ||\r\n trackNode.id ||\r\n trackNode.className ||\r\n '\u672a\u83b7\u53d6\u6807\u8bc6'\r\n\r\n // const adskey = dataset.biAdskey\r\n const data = { \r\n name,\r\n xpath:getXpath(e.target) \r\n }\r\n // if (adskey) data.adskey = adskey\r\n if (trackNode.nodeName.toLowerCase() === 'a') {\r\n data.url = trackNode.href\r\n }\r\n const moduleNode = closest(e.target, '[data-dsm-module]')\r\n if (moduleNode && moduleNode.dataset.dsmModule) {\r\n data.module = moduleNode.dataset.dsmModule\r\n }\r\n dsm.track('click', data)\r\n } else {\r\n // console.log(\u70b9\u51fb\u7a7a\u767d\u533a\u57df)\r\n }\r\n }\r\n if(\"onpointerdown\" in document) {\r\n document.addEventListener('pointerdown',onClick)\r\n }\r\n else if('ontouchstart' in document){\r\n document.addEventListener('touchstart',onClick)\r\n }\r\n else if('onmousedown' in document) {\r\n document.addEventListener('mousedown', onClick)\r\n }\r\n if (dsm.config.trackError === true) {\r\n window.addEventListener(EVENT_TYPE.error, (e) => {\r\n dsm.sendJsErrorTrack(e)\r\n })\r\n }\r\n },\r\n EVENT_TYPE,\r\n}\r\n\r\nwindow.dsm.extends(_dsm)\r\ntrackEngine.forEach((n) => n.init(config))\r\ndsm.setPageInfo(config.pageInfo || {})\r\nif (config.onInit) config.onInit()\r\nif (dsm.config.autoClickTrack !== false) dsm.startAutoTrack()\r\nif (dsm.config.autoPageTrack !== false) dsm.sendPageViewTrack()\r\nexport default window.dsm\r\n"],"sourceRoot":""}