!function(){"use strict";var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},e(t,r)};function t(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}var r=function(){return r=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},r.apply(this,arguments)};function n(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),i=0;for(t=0;t<r;t++)for(var o=arguments[t],a=0,s=o.length;a<s;a++,i++)n[i]=o[a];return n}for(var i=function(){function e(){this.listeners={}}return e.prototype.subscribe=function(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)},e.prototype.publish=function(e,t){if(this.listeners[e])for(var r=0,n=this.listeners[e];r<n.length;r++){(0,n[r])(t)}},e}(),o="__webgate_rum_device_id__",a="__WGBP_device_id__",s="__WGBP_session_id__",c="__WGBP_transactions__",p="traceparent",u="tracestate",l="server-timing",d="WG_END_ELAPSE",h="__WGBP_xhr_ignore__",f="__WGBP_xhr_req_headers__",g="userId",w="__WGBP_custom_header_symbol__",v="WGBP_STACK_CAPTURE",m="unknown",y="authStateChange",b="wg-browser-probe",C="trace",T="addEventListener",S="removeEventListener",_="attachEvent",k="detachEvent",I="browser.e2e.cors.error",R="/collector/browser/api/v1",x=R+"/authority",E=R+"/report",q="metadata",P="error",H="unhandledrejection",O="history",L="fetch",A="xhr",M="resource",B="alarm",G="operation",D="page-load",U="router-change",K=["METADATA","HISTORY","ERROR","REQUEST","RESOURCE","ALARM","OPERATION"],W=0,N=1,F=2,z=3,j="OK",X="NETWORK_ERROR",V="TIMEOUT",Y="ABORT",Q="GET",$="navigation",J="xmlhttprequest",Z="fetch",ee="beacon",te=["navigationStart","unloadEventStart","unloadEventEnd","redirectStart","redirectEnd","fetchStart","domainLookupStart","domainLookupEnd","connectStart","secureConnectionStart","connectEnd","requestStart","responseStart","responseEnd","domInteractive","domContentLoadedEventStart","domContentLoadedEventEnd","domComplete","loadEventStart","loadEventEnd"],re={redirectCount:"redirectCount",protocol:"nextHopProtocol",serverTiming:"serverTiming",transferSize:"transferSize",encodedBodySize:"encodedBodySize",decodedBodySize:"decodedBodySize"},ne={connectStart:"connectStart",secureConnectionStart:"secureConnectionStart",connectEnd:"connectEnd",domainLookupStart:"domainLookupStart",domainLookupEnd:"domainLookupEnd",redirectStart:"redirectStart",redirectEnd:"redirectEnd",fetchStart:"fetchStart",requestStart:"requestStart",responseStart:"responseStart",responseEnd:"responseEnd",workerStart:"workerStart"},ie={resourceType:"initiatorType",resourceUrl:"name",protocol:"nextHopProtocol",serverTiming:"serverTiming",transferSize:"transferSize",encodedBodySize:"encodedBodySize",decodedBodySize:"decodedBodySize"},oe="PC",ae="Mobile",se="Tablet",ce="Cookie",pe="Document",ue="LocalStorage",le="SessionStorage",de="RequestHeader",he="RequestParam",fe="RequestBody",ge="ResponseHeader",we="ResponseBody",ve="PageUrlParam",me="PageUrlHashParam",ye="complete",be="interactive",Ce="click",Te="change",Se="webgate-browser-probe",_e=function(e,t){if(void 0===t&&(t=!0),"console"in window){if("warn"in window.console&&"function"==typeof window.console.warn)return void window.console.warn(t?"[WebGateBrowser warn]: ":"",e);"log"in window.console&&"function"==typeof window.console.log&&window.console.log(t?"[WebGateBrowser warn]: ":"",e)}},ke=function(e,t){if(void 0===t&&(t=!0),"console"in window){if("error"in window.console&&"function"==typeof window.console.error)return void window.console.error(t?"[WebGateBrowser error]: ":"",e);"log"in window.console&&"function"==typeof window.console.log&&window.console.log(t?"[WebGateBrowser error]: ":"",e)}},Ie=function(e,t){void 0===t&&(t=!0),"console"in window&&"log"in window.console&&"function"==typeof window.console.log&&window.console.log(t?"[WebGateBrowser success]: ":"",e)},Re="",xe=0;xe<Se.length;xe++)Re+=Se.charCodeAt(xe);function Ee(e,t){for(var r=0,n="",i=0;i<e.length;i++)n+=String.fromCharCode(t?e.charCodeAt(i)+ +Re[r]:e.charCodeAt(i)-+Re[r]),++r===Re.length&&(r=0);return n}var qe=function(){},Pe=function(){};function He(e){return e?e.replace(/^\s+|\s+$/g,""):e}function Oe(e,t){for(var r=0;r<e.length;r++)if(e[r]===t)return r;return-1}T in window?qe=window.addEventListener:_ in window&&(qe=window.attachEvent),S in window?Pe=window.removeEventListener:k in window&&(Pe=window.detachEvent);var Le={parse:function(e,t){},stringify:function(e,t,r){return""}};if("JSON"in window){var Ae=window.JSON;Le.parse=Ae.parse,Le.stringify=Ae.stringify}var Me=function(){function e(e){var t=this;this.historyHandleDone=!1,this.WG_XHR_STORAGE="wg_browser_xhr_",this.configCenter=e,this.configCenter.authorityState===z?this.processUnhandledReqMetric():this.configCenter.authEventListener.subscribe(y,(function(e){e===z&&t.processUnhandledReqMetric()}))}return e.initReqLocalCache=function(t){return this.instance||(this.instance=new e(t)),this.instance},e.prototype.insertOrUpdateData=function(e){this.setHistoryInfo(e)},e.prototype.deleteDataById=function(e){var t=""+this.WG_XHR_STORAGE+e;this.removeHistoryInfoByRequestId(t)},e.prototype.deleteAll=function(){for(var e=window.localStorage,t=[],r=0;r<e.length;r++){(o=e.key(r))&&0===o.indexOf(this.WG_XHR_STORAGE)&&t.push(e.key(r))}for(var n=0,i=t;n<i.length;n++){var o=i[n];window.localStorage.removeItem(o)}},e.prototype.queryAll=function(){for(var e=[],t=window.localStorage,r=0;r<t.length;r++){var n=t.key(r);if(n&&0===n.indexOf(this.WG_XHR_STORAGE))try{var i=t.getItem(n);if(i){var o=Le.parse(Ee(i,!1));e.push(o)}}catch(e){ke(e)}}return e},e.prototype.moveDataToStorage=function(){var t=(new Date).getTime();for(var r in e.HISTORY_MAP){var n=e.HISTORY_MAP[r],i=t-n.timestamp;switch(n.requestStep){case 1:n.headersReceived=i;break;case 2:n.bodyReceiving=i;break;default:n.requestEnd=i}n.localCache=!0,window.localStorage.setItem(r,Ee(Le.stringify(n),!0)),delete e.HISTORY_MAP[r]}this.deleteHistoryInfoAll()},e.prototype.getHistoryInfoAll=function(){try{return e.HISTORY_MAP}catch(e){ke("get historyData from memory error")}},e.prototype.processUnhandledReqMetric=function(){for(var e=0,t=this.queryAll();e<t.length;e++){var r=t[e];this.configCenter.metricEventListener.publish(A,r)}this.deleteAll(),this.historyHandleDone=!0},e.prototype.setHistoryInfo=function(t){try{e.HISTORY_MAP[""+this.WG_XHR_STORAGE+t.requestId]=t}catch(e){ke("Insert "+t.requestId+" to memory error")}},e.prototype.getHistoryInfoByRequestId=function(t){try{return e.HISTORY_MAP[""+this.WG_XHR_STORAGE+t]}catch(e){ke("get "+t+" from memory error")}},e.prototype.removeHistoryInfoByRequestId=function(t){try{delete e.HISTORY_MAP[t]}catch(e){ke("remove "+t+" from memory error")}},e.prototype.deleteHistoryInfoAll=function(){try{e.HISTORY_MAP={}}catch(e){ke("remove HistoryData from memory error!")}},e.HISTORY_MAP={},e}(),Be=function(e){try{var t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]*)(;|$)"));if(t&&t.length>=3)return t[2]}catch(e){ke(e)}};function Ge(e){return!e||!He(e)}var De,Ue=function(e){if(!e)return m;try{var t=e;if("string"==typeof e&&"querySelector"in document&&(t=document.querySelector(e)),t&&t instanceof HTMLElement){var r=t.innerText||t.textContent;if(!r&&t instanceof HTMLInputElement&&(r=t.value),r)return n=r.trim(),void 0===i&&(i=50),i<4&&(i=4),n.length>i?n.substr(0,i-3)+"...":n}}catch(e){ke(e)}var n,i;return m},Ke=function(e){if(""!==e.id)return'//*[@id="'+e.id+'"]';if(e===document.body)return"/HTML/BODY";for(var t=0,r=e.parentNode.childNodes,n=0;n<r.length;n++){var i=r[n];if(i===e)return Ke(e.parentNode)+"/"+e.tagName+"["+(t+1)+"]";1===i.nodeType&&i.tagName===e.tagName&&t++}return""},We=function(){function e(e){var t=this;this.transactions={},this.sample=!1,this.configCenter=e,this.reloadTagsFromStorage(),document.readyState===be?this.loadPrimaryTrackInfo():qe("load",(function(){return t.loadPrimaryTrackInfo()}))}return e.initTransactionCache=function(t){return this.instance||(this.instance=new e(t)),this.instance},e.prototype.getAllTransactions=function(){return this.transactions},e.prototype.clone=function(){return r({},this.transactions)},e.prototype.addTransaction=function(e,t,r){void 0===r&&(r=!0),this.transactions[e]=t,this.checkTraceSample(),r&&this.saveTagsToStorage()},e.prototype.removeTransaction=function(e,t){delete this.transactions[e],this.checkTraceSample(),this.saveTagsToStorage()},e.prototype.isTraceSample=function(){return this.sample},e.prototype.checkTraceSample=function(){var e=this.configCenter.agentConfig.fixedSimpleUsers;if(e&&0!==e.length){var t=this.transactions[g];t?Oe(e,t)<0?this.sample=!1:this.sample=!0:this.sample=!1}else this.sample=!1},e.prototype.reloadTagsFromStorage=function(){var e,t=sessionStorage.getItem(c);if(t)try{e=Le.parse(t)}catch(e){sessionStorage.removeItem(c)}if(e)for(var r in e)this.addTransaction(r,e[r],!1)},e.prototype.saveTagsToStorage=function(){sessionStorage.setItem(c,Le.stringify(this.transactions))},e.prototype.loadPrimaryTrackInfo=function(){var e=this.configCenter.agentConfig,t=e.autoTrackUser,r=e.userTrackKey,i=n(e.primaryInfoTrackOpts);t&&r&&i.unshift({tagKey:g,trackPos:t,trackKey:r});for(var o=0,a=i;o<a.length;o++){var s=a[o],c=void 0;switch(s.trackPos){case ce:c=Be(s.trackKey);break;case pe:c=Ue(s.trackKey);break;case ue:c=localStorage.getItem(s.trackKey);break;case le:c=sessionStorage.getItem(s.trackKey)}c&&(c.length<=200?c&&this.addTransaction(s.tagKey,c):_e("Track "+s.tagKey+" too long, tag value length must less than 200, current user id length is "+c.length))}},e}();function Ne(e){void 0===e&&(e=window.location.href);try{return De||(De=document.createElement("a")),De.href=e,"http"!==e.slice(0,4)&&(De.href=De.href),{hash:De.hash,host:De.host,hostname:De.hostname,href:De.href,origin:De.protocol+"//"+De.host,password:De.password,pathname:De.pathname.replace(/^([^\/])/,"/$1")||"/",port:De.port,protocol:De.protocol.replace(":",""),search:De.search,username:De.username}}catch(e){return ke(e),{hash:window.location.hash,host:window.location.host,hostname:window.location.hostname,href:window.location.href,origin:window.location.protocol+"//"+window.location.host,password:"",pathname:window.location.pathname.replace(/^([^\/])/,"/$1")||"/",port:window.location.port,protocol:window.location.protocol.replace(":",""),search:window.location.search,username:""}}}function Fe(e){return ze(Ne(e).search.replace("?","").trim())}function ze(e){var t={};if(e)for(var r=0,n=e.split("&");r<n.length;r++){var i=n[r].split("="),o=i[0],a=i[1];void 0!==o&&void 0!==a&&(t[o]=void 0!==t[o]?t[o]+", "+a:a)}return t}function je(e){for(var t="";0!==e;){t=(e%16).toString(16)+t,e=Math.floor(e/16)}return t}function Xe(e,t){void 0===t&&(t=16);for(var r=e,n=0;n<t-e.length;n++)r="0"+r;return r}function Ve(){return Xe("1")}function Ye(){return Xe(je((new Date).getTime()))+Xe(je(Math.round(0x8000000000000000*Math.random())))}function Qe(e,t,r){return void 0===r&&(r="0"),"00-"+e+"-"+t+"-"+Xe(parseInt(r,2).toString(16),2)}var $e="function",Je="undefined",Ze="object",et="string",tt="model",rt="name",nt="type",it="vendor",ot="version",at="architecture",st="console",ct="Mobile",pt="Tablet",ut="smarttv",lt="wearable",dt="embedded",ht="Amazon",ft="Apple",gt="ASUS",wt="BlackBerry",vt="Firefox",mt="Google",yt="Huawei",bt="LG",Ct="Microsoft",Tt="Motorola",St="Opera",_t="Samsung",kt="Sony",It="Xiaomi",Rt="Zebra",xt="Facebook",Et=function(e){for(var t={},r=0;r<e.length;r++)t[e[r].toUpperCase()]=e[r];return t},qt=function(e,t){return typeof e===et&&-1!==Pt(t).indexOf(Pt(e))},Pt=function(e){return e.toLowerCase()},Ht=function(e,t){if(typeof e===et)return e=e.replace(/^\s\s*/,"").replace(/\s\s*$/,""),typeof t===Je?e:e.substring(0,255)},Ot=function(e,t){for(var r,n,i,o,a,s,c=0;c<t.length&&!a;){var p=t[c],u=t[c+1];for(r=n=0;r<p.length&&!a;)if(a=p[r++].exec(e))for(i=0;i<u.length;i++)s=a[++n],typeof(o=u[i])===Ze&&o.length>0?2===o.length?typeof o[1]==$e?this[o[0]]=o[1].call(this,s):this[o[0]]=o[1]:3===o.length?typeof o[1]!==$e||o[1].exec&&o[1].test?this[o[0]]=s?s.replace(o[1],o[2]):void 0:this[o[0]]=s?o[1].call(this,s,o[2]):void 0:4===o.length&&(this[o[0]]=s?o[3].call(this,s.replace(o[1],o[2])):void 0):this[o]=s||void 0;c+=2}},Lt=function(e,t){for(var r in t)if(typeof t[r]===Ze&&t[r].length>0){for(var n=0;n<t[r].length;n++)if(qt(t[r][n],e))return"?"===r?void 0:r}else if(qt(t[r],e))return"?"===r?void 0:r;return e},At={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Mt={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[ot,[rt,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[ot,[rt,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[rt,ot],[/opios[\/ ]+([\w\.]+)/i],[ot,[rt,"Opera Mini"]],[/\bopr\/([\w\.]+)/i],[ot,[rt,St]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq)\/([-\w\.]+)/i,/(weibo)__([\d\.]+)/i],[rt,ot],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[ot,[rt,"UCBrowser"]],[/\bqbcore\/([\w\.]+)/i],[ot,[rt,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[ot,[rt,"WeChat"]],[/konqueror\/([\w\.]+)/i],[ot,[rt,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[ot,[rt,"IE"]],[/yabrowser\/([\w\.]+)/i],[ot,[rt,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[rt,/(.+)/,"$1 Secure Browser"],ot],[/\bfocus\/([\w\.]+)/i],[ot,[rt,"Firefox Focus"]],[/\bopt\/([\w\.]+)/i],[ot,[rt,"Opera Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[ot,[rt,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[ot,[rt,"Dolphin"]],[/coast\/([\w\.]+)/i],[ot,[rt,"Opera Coast"]],[/miuibrowser\/([\w\.]+)/i],[ot,[rt,"MIUI Browser"]],[/fxios\/([-\w\.]+)/i],[ot,[rt,vt]],[/\bqihu|(qi?ho?o?|360)browser/i],[[rt,"360 Browser"]],[/(oculus|samsung|sailfish)browser\/([\w\.]+)/i],[[rt,/(.+)/,"$1 Browser"],ot],[/(comodo_dragon)\/([\w\.]+)/i],[[rt,/_/g," "],ot],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[rt,ot],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i],[rt],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[rt,xt],ot],[/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[rt,ot],[/\bgsa\/([\w\.]+) .*safari\//i],[ot,[rt,"GSA"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[ot,[rt,"Chrome Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[rt,"Chrome WebView"],ot],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[ot,[rt,"Android Browser"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[rt,ot],[/version\/([\w\.]+) .*mobile\/\w+ (safari)/i],[ot,[rt,"Mobile Safari"]],[/version\/([\w\.]+) .*(mobile ?safari|safari)/i],[ot,rt],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[rt,[ot,Lt,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[rt,ot],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[rt,"Netscape"],ot],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[ot,[rt,"Firefox Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[rt,ot]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[at,"amd64"]],[/(ia32(?=;))/i],[[at,Pt]],[/((?:i[346]|x)86)[;\)]/i],[[at,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[at,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[at,"armhf"]],[/windows (ce|mobile); ppc;/i],[[at,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[at,/ower/,"",Pt]],[/(sun4\w)[;\)]/i],[[at,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[at,Pt]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[pt]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[tt,[it,_t],[nt,pt]],[/\b((?:s[cgp]h|gt|sm)-\w+|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[tt,[it,_t],[nt,ct]],[/\((ip(?:hone|od)[\w ]*);/i],[tt,[it,ft],[nt,ct]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[tt,[it,ft],[nt,pt]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[tt,[it,yt],[nt,pt]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}-[atu]?[ln][01259x][012359][an]?)\b(?!.+d\/s)/i],[tt,[it,yt],[nt,ct]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[tt,/_/g," "],[it,It],[nt,ct]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[tt,/_/g," "],[it,It],[nt,pt]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[tt,[it,"OPPO"],[nt,ct]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[tt,[it,"Vivo"],[nt,ct]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[tt,[it,"Realme"],[nt,ct]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[tt,[it,Tt],[nt,ct]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[tt,[it,Tt],[nt,pt]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[tt,[it,bt],[nt,pt]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[tt,[it,bt],[nt,ct]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[tt,[it,"Lenovo"],[nt,pt]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[tt,/_/g," "],[it,"Nokia"],[nt,ct]],[/(pixel c)\b/i],[tt,[it,mt],[nt,pt]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[tt,[it,mt],[nt,ct]],[/droid.+ ([c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[tt,[it,kt],[nt,ct]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[tt,"Xperia Tablet"],[it,kt],[nt,pt]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[tt,[it,"OnePlus"],[nt,ct]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[tt,[it,ht],[nt,pt]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[tt,/(.+)/g,"Fire Phone $1"],[it,ht],[nt,ct]],[/(playbook);[-\w\),; ]+(rim)/i],[tt,it,[nt,pt]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[tt,[it,wt],[nt,ct]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[tt,[it,gt],[nt,pt]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[tt,[it,gt],[nt,ct]],[/(nexus 9)/i],[tt,[it,"HTC"],[nt,pt]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic|sony)[-_ ]?([-\w]*)/i],[it,[tt,/_/g," "],[nt,ct]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[tt,[it,"Acer"],[nt,pt]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[tt,[it,"Meizu"],[nt,ct]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[tt,[it,"Sharp"],[nt,ct]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[it,tt,[nt,ct]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[it,tt,[nt,pt]],[/(surface duo)/i],[tt,[it,Ct],[nt,pt]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[tt,[it,"Fairphone"],[nt,ct]],[/(u304aa)/i],[tt,[it,"AT&T"],[nt,ct]],[/\bsie-(\w*)/i],[tt,[it,"Siemens"],[nt,ct]],[/\b(rct\w+) b/i],[tt,[it,"RCA"],[nt,pt]],[/\b(venue[\d ]{2,7}) b/i],[tt,[it,"Dell"],[nt,pt]],[/\b(q(?:mv|ta)\w+) b/i],[tt,[it,"Verizon"],[nt,pt]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[tt,[it,"Barnes & Noble"],[nt,pt]],[/\b(tm\d{3}\w+) b/i],[tt,[it,"NuVision"],[nt,pt]],[/\b(k88) b/i],[tt,[it,"ZTE"],[nt,pt]],[/\b(nx\d{3}j) b/i],[tt,[it,"ZTE"],[nt,ct]],[/\b(gen\d{3}) b.+49h/i],[tt,[it,"Swiss"],[nt,ct]],[/\b(zur\d{3}) b/i],[tt,[it,"Swiss"],[nt,pt]],[/\b((zeki)?tb.*\b) b/i],[tt,[it,"Zeki"],[nt,pt]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[it,"Dragon Touch"],tt,[nt,pt]],[/\b(ns-?\w{0,9}) b/i],[tt,[it,"Insignia"],[nt,pt]],[/\b((nxa|next)-?\w{0,9}) b/i],[tt,[it,"NextBook"],[nt,pt]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[it,"Voice"],tt,[nt,ct]],[/\b(lvtel\-)?(v1[12]) b/i],[[it,"LvTel"],tt,[nt,ct]],[/\b(ph-1) /i],[tt,[it,"Essential"],[nt,ct]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[tt,[it,"Envizen"],[nt,pt]],[/\b(trio[-\w\. ]+) b/i],[tt,[it,"MachSpeed"],[nt,pt]],[/\btu_(1491) b/i],[tt,[it,"Rotor"],[nt,pt]],[/(shield[\w ]+) b/i],[tt,[it,"Nvidia"],[nt,pt]],[/(sprint) (\w+)/i],[it,tt,[nt,ct]],[/(kin\.[onetw]{3})/i],[[tt,/\./g," "],[it,Ct],[nt,ct]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[tt,[it,Rt],[nt,pt]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[tt,[it,Rt],[nt,ct]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[it,tt,[nt,st]],[/droid.+; (shield) bui/i],[tt,[it,"Nvidia"],[nt,st]],[/(playstation [345portablevi]+)/i],[tt,[it,kt],[nt,st]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[tt,[it,Ct],[nt,st]],[/smart-tv.+(samsung)/i],[it,[nt,ut]],[/hbbtv.+maple;(\d+)/i],[[tt,/^/,"SmartTV"],[it,_t],[nt,ut]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[it,bt],[nt,ut]],[/(apple) ?tv/i],[it,[tt,"Apple TV"],[nt,ut]],[/crkey/i],[[tt,"Chromecast"],[it,mt],[nt,ut]],[/droid.+aft(\w)( bui|\))/i],[tt,[it,ht],[nt,ut]],[/\(dtv[\);].+(aquos)/i],[tt,[it,"Sharp"],[nt,ut]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w ]*; *(\w[^;]*);([^;]*)/i],[[it,Ht],[tt,Ht],[nt,ut]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[nt,ut]],[/((pebble))app/i],[it,tt,[nt,lt]],[/droid.+; (glass) \d/i],[tt,[it,mt],[nt,lt]],[/droid.+; (wt63?0{2,3})\)/i],[tt,[it,Rt],[nt,lt]],[/(quest( 2)?)/i],[tt,[it,xt],[nt,lt]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[it,[nt,dt]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[tt,[nt,ct]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[tt,[nt,pt]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[nt,pt]],[/(phone|mobile(?:[;\/]| safari)|pda(?=.+windows ce))/i],[[nt,ct]],[/(android[-\w\. ]{0,9});.+buil/i],[tt,[it,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[ot,[rt,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[ot,[rt,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i],[rt,ot],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[ot,rt]],os:[[/microsoft (windows) (vista|xp)/i],[rt,ot],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[rt,[ot,Lt,At]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[rt,"Windows"],[ot,Lt,At]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/cfnetwork\/.+darwin/i],[[ot,/_/g,"."],[rt,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[rt,"Mac OS"],[ot,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[ot,rt],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[rt,ot],[/\(bb(10);/i],[ot,[rt,wt]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[ot,[rt,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[ot,[rt,"Firefox OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[ot,[rt,"webOS"]],[/crkey\/([\d\.]+)/i],[ot,[rt,"Chromecast"]],[/(cros) [\w]+ ([\w\.]+\w)/i],[[rt,"Chromium OS"],ot],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[rt,ot],[/(sunos) ?([\w\.\d]*)/i],[[rt,"Solaris"],ot],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\w\.]*)/i],[rt,ot]]},Bt=function(e,t){if(typeof e===Ze&&(t=e,e=void 0),!(this instanceof Bt))return new Bt(e,t).getResult();var r=e||(typeof window!==Je&&window.navigator&&window.navigator.userAgent?window.navigator.userAgent:""),n=t?function(e,t){var r={};for(var n in e)t[n]&&t[n].length%2==0?r[n]=t[n].concat(e[n]):r[n]=e[n];return r}(Mt,t):Mt;return this.getBrowser=function(){var e={name:void 0,version:void 0};return Ot.call(e,r,n.browser),e.major=function(e){return typeof e===et?e.replace(/[^\d\.]/g,"").split(".")[0]:void 0}(e.version),e},this.getCPU=function(){var e={architecture:void 0};return Ot.call(e,r,n.cpu),e},this.getDevice=function(){var e={vendor:void 0,model:void 0,type:void 0};return Ot.call(e,r,n.device),e},this.getEngine=function(){var e={name:void 0,version:void 0};return Ot.call(e,r,n.engine),e},this.getOS=function(){var e={name:void 0,version:void 0};return Ot.call(e,r,n.os),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return r},this.setUA=function(e){return r=typeof e===et&&e.length>255?Ht(e,255):e,this},this.setUA(r),this};Bt.VERSION="1.0.2",Bt.BROWSER=Et([rt,ot,"major"]),Bt.CPU=Et([at]),Bt.DEVICE=Et([tt,it,nt,st,ct,ut,pt,lt,dt]),Bt.ENGINE=Bt.OS=Et([rt,ot]);var Gt,Dt=function(){function e(e){this.metadata=function(e){var t=window.localStorage.getItem(o),r=window.localStorage.getItem(a),n=window.sessionStorage.getItem(s);r||(t?(r=t,window.localStorage.removeItem(o)):r=Ye(),window.localStorage.setItem(a,r)),n||(n=Ye(),window.sessionStorage.setItem(s,n));var i={browser:{name:m,version:m},os:{name:m,version:m},device:{type:m,vendor:m,model:m},engine:{name:m}};try{i=new Bt(e).getResult()}catch(e){ke(e)}var c=(i.browser.version||m).split("."),p=c.length>1?c[0]+"."+c[1]:c[0],u={browserType:i.browser.name||m,browserVersion:p,browserFullVersion:i.browser.version||m,osType:i.os.name||m,osVersion:i.os.version||m,deviceType:!i.device.type||i.device.type!==ae&&i.device.type!==se?oe:i.device.type,deviceVendor:i.device.vendor||m,deviceModel:i.device.model||m,engine:i.engine.name||m,language:window.navigator.browserLanguage||window.navigator.language||m,networkType:m,resolution:m,userAgent:e,deviceId:r,sessionId:n,appKey:"",appName:"",appVersion:"",agentVersion:""},l=window.devicePixelRatio||1,d=window.screen.width,h=window.screen.height;return u.resolution=u.deviceType===oe?d.toFixed(0)+"*"+h.toFixed(0):(d*l).toFixed(0)+"*"+(h*l).toFixed(0),u}(window.navigator.userAgent),this.configCenter=e}return e.initBrowserMetadataCache=function(t){return this.instance||(this.instance=new e(t)),this.instance},e.prototype.getMetadata=function(){var e=window.navigator.connection;e&&e.effectiveType&&(this.metadata.networkType=e.effectiveType);var t=this.configCenter.agentConfig,n=t.appKey,i=t.appVersion,o=t.agentVersion;return this.metadata=r(r({},this.metadata),{appKey:n,appVersion:i,agentVersion:o,appName:this.configCenter.appConfig.appName}),this.metadata},e}(),Ut=function(){function e(e){this.pageInfo={rootPageId:void 0,parentPageId:void 0,pageId:void 0,pageUrl:void 0,pageType:void 0,pageName:void 0,timestamp:void 0,sourcePageUrl:void 0},this.pageTransactions={},this.configCenter=e,this.refreshPageInfo(D)}return e.initPageInfoCache=function(t){return this.instance||(this.instance=new e(t)),this.instance},e.prototype.getPageInfo=function(){return this.pageInfo.pageName=window.document.title,r({},this.pageInfo)},e.prototype.getPageTransactions=function(){return this.pageTransactions},e.prototype.refreshPageInfo=function(e){void 0===e&&(e=U),this.pageInfo={rootPageId:"",parentPageId:"",pageId:Ye(),pageUrl:window.location.href,pageType:e,pageName:window.document.title,timestamp:(new Date).getTime(),sourcePageUrl:document.referrer},this.pageTransactions={};try{var t=this.configCenter.agentConfig.primaryInfoTrackOpts.filter((function(e){return e.trackPos===ve})),r=this.configCenter.agentConfig.primaryInfoTrackOpts.filter((function(e){return e.trackPos===me}));if(t.length)for(var n=Fe(this.pageInfo.pageUrl),i=0,o=t;i<o.length;i++){(p=n[(c=o[i]).trackKey])&&(this.pageTransactions[c.tagKey]=p)}if(r.length){n=(u=this.pageInfo.pageUrl,l=Ne(u).hash,(d=l.indexOf("?"))>0?ze(l.substr(d+1)):{});for(var a=0,s=r;a<s.length;a++){var c,p;(p=n[(c=s[a]).trackKey])&&(this.pageTransactions[c.tagKey]=p)}}}catch(e){}var u,l,d;try{var h=window.parent;h&&h!==window&&h.WGBrowserProbe&&(this.pageInfo.parentPageId=h.WGBrowserProbe.context.pageId);var f=window.top;f&&f!==window&&f.WGBrowserProbe&&(this.pageInfo.rootPageId=f.WGBrowserProbe.context.pageId),window.WGBrowserProbe.context.pageId=this.pageInfo.pageId}catch(e){}return this.pageInfo},e}(),Kt=function(){function e(e){this.metricEventListener=new i,this.authEventListener=new i,this.authorityState=W,this.appConfig={access:!1,message:"",appName:"",timeDiff:0},this.agentConfig={agentVersion:"3.10.0",appKey:"",appVersion:m,collectItems:K,serverAddr:"",sendQueueFlushInterval:2e3,globalTrace:!1,traceCrossOrigin:!1,traceHeadersPrefix:"webgate-",ajaxCache:!1,limitUserReport:!1,fixedSimpleUsers:void 0,traceForbiddenOrigins:void 0,autoTrackUser:void 0,userTrackKey:void 0,primaryInfoTrackOpts:[]},this.agentConfig=r(r({},this.agentConfig),e),this.checkForbiddenOrigins()}return e.startConfigCenter=function(t){return this.instance||(this.instance=new e(t),this.initCaches()),this.instance},e.prototype.setAppConfig=function(e){this.appConfig=r(r({},this.appConfig),e)},e.prototype.updateAuthState=function(e){this.authorityState=e,this.authEventListener.publish(y,this.authorityState)},e.prototype.isAuthStateFailed=function(){return this.authorityState===F},e.prototype.checkForbiddenOrigins=function(){if(this.agentConfig.traceForbiddenOrigins&&this.agentConfig.traceForbiddenOrigins.length>0){for(var e=[],t=0,r=this.agentConfig.traceForbiddenOrigins;t<r.length;t++){var n=r[t];e.push(Ne(n).origin)}this.agentConfig.traceForbiddenOrigins=e}},e.initCaches=function(){this.instance.requestLocalCache=Me.initReqLocalCache(this.instance),this.instance.transactionCache=We.initTransactionCache(this.instance),this.instance.metadataCache=Dt.initBrowserMetadataCache(this.instance),this.instance.pageInfoCache=Ut.initPageInfoCache(this.instance)},e}();var Wt=function(){function e(){var e=this;this.configCenter=Kt.instance,this.flushInterval=this.configCenter.agentConfig.sendQueueFlushInterval,this.metricQueue=[],this.onFlush=function(){switch(e.configCenter.authorityState){case W:case N:break;case F:e.metricQueue=[],e.stopSenderTask();break;case z:e.checkAndFlush()}},this.httpSender=function(t,r){void 0===r&&(r=0);var n=e;try{var i=new XMLHttpRequest;i.__WGBP_xhr_ignore__=!0,i.open("POST",e.reportAddr+"?t="+(new Date).getTime(),!0),i.timeout=5e3,i.onreadystatechange=function(){i.readyState!==i.DONE||i.__WGBP_xhr_handled__||(i.__WGBP_xhr_handled__=!0,0===i.status&&r<3&&setTimeout((function(){n.httpSender(t,r+1)}),n.flushInterval))},i.send(t)}catch(e){ke(e)}},this.requestLocalCache=this.configCenter.requestLocalCache;var t=this.configCenter.agentConfig.serverAddr;this.reportAddr=t+E,this.startSenderTask()}return e.prototype.send=function(e){var t;this.configCenter.authorityState!==F&&(this.metricQueue.push(e),e.type===O&&(null===(t=e.pageInfo)||void 0===t?void 0:t.pageType)===D&&this.onFlush())},e.prototype.correctTime=function(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];n.data.clientTime=n.data.timestamp,n.data.timestamp=n.data.timestamp+this.configCenter.appConfig.timeDiff}},e.prototype.startSenderTask=function(){var e,t=this;this.intervalId=window.setInterval(this.onFlush,this.flushInterval),window.onunload&&(e=window.onunload),window.onunload=function(){t.onFlush(),t.configCenter.agentConfig.ajaxCache&&t.requestLocalCache.moveDataToStorage(),e&&e()}},e.prototype.stopSenderTask=function(){void 0!==this.intervalId&&(window.clearInterval(this.intervalId),this.intervalId=void 0)},e.prototype.checkAndFlush=function(){0!==this.metricQueue.length&&this.httpSender(this.recheckMetric(this.metricQueue.splice(0,this.metricQueue.length)))},e.prototype.recheckMetric=function(e){this.correctTime(e);var t={metrics:e,deviceInfo:this.configCenter.metadataCache.getMetadata()};return Ee(Le.stringify(t),!0)},e}(),Nt=function(){function e(){}return e.prototype.handle=function(e,t){return this.isCareMetric(e,t)?this.handleMetric(e,t):t},e}(),Ft=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return t(n,e),n.prototype.handleMetric=function(e,t){if(!t)return t;var n=t.data.pageInfo;return t.pageInfo=r({},n),delete t.pageInfo.timestamp,delete t.data.pageInfo,e!==O&&(delete t.pageInfo.rootPageId,delete t.pageInfo.parentPageId),t},n.prototype.isCareMetric=function(e,t){return!0},n}(Nt),zt=function(e){function r(){return null!==e&&e.apply(this,arguments)||this}return t(r,e),r.prototype.handleMetric=function(e,t){if(!t)return t;var r=Kt.instance,n=r.agentConfig,i=r.transactionCache;return!n.limitUserReport||(null==i?void 0:i.isTraceSample())?t:void 0},r.prototype.isCareMetric=function(e,t){return!0},r}(Nt),jt=new Array;var Xt=function(e,t,r,n){void 0===n&&(n=[]);try{var i=t.apply(r,n);if(!i)return;var o={type:e,data:i};o=function(e,t){for(var r=0,n=jt;r<n.length;r++)t=n[r].handle(e,t);return t}(e,o),o&&Gt.send(o)}catch(e){ke(e)}},Vt=function(e,t,r){var n=this;this.webGateEventListener=Kt.instance.metricEventListener,this.configCenter=Kt.instance,this.handle=function(e){var t=n;n.taskExecutor((function(){t.metricWrapper(t.metricType,t.handleCollectEvent,t,[e])}),t)},this.metricType=e,this.taskExecutor=t,this.metricWrapper=r,this.webGateEventListener.subscribe(e,this.handle),this.addCollectHook(e)},Yt=function(e,t,r){void 0===r&&(r=[]),setTimeout((function(){e.apply(t,r)}),0)},Qt=function(e,t,r){void 0===r&&(r=[]),window.queueMicrotask&&"function"==typeof window.queueMicrotask?window.queueMicrotask((function(){e.apply(t,r)})):e.apply(t,r)},$t=function(e){function n(){return e.call(this,P,Qt,Xt)||this}return t(n,e),n.prototype.addCollectHook=function(e){var t=this,r=function(){return function(e){t.webGateEventListener.publish(P,e)}};this.errorHandler=r(),this.promiseErrorHandler=r(),qe(P,this.errorHandler,!0),qe(H,this.promiseErrorHandler,!0)},n.prototype.removeCollectHook=function(){"removeEventListener"in window&&"function"==typeof window.removeEventListener&&(this.errorHandler&&Pe(P,this.errorHandler,!0),this.promiseErrorHandler&&Pe(H,this.promiseErrorHandler,!0))},n.prototype.handleCollectEvent=function(e){var t,n,i=this.configCenter.pageInfoCache.getPageInfo(),o={timestamp:(new Date).getTime(),errorId:Ye(),message:"",errorUrl:i.pageUrl,errorSourceType:"",errorSourceSubType:"",errorType:"",stacktrace:"",lineno:"-",colno:"-",transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),pageInfo:i};return o="PromiseRejectionEvent"in window&&e instanceof window.PromiseRejectionEvent?this.processPromiseError(o,e):"ErrorEvent"in window&&e instanceof window.ErrorEvent?this.processJSError(o,e):this.processResourceLoadError(o,e)},n.prototype.processPromiseError=function(e,t){var r="Unhandled promise rejection: ",n=t.reason;return e.errorType="Unhandled promise rejection",e.errorSourceType="javascript",e.errorSourceSubType=t.type,e.message=r+"<no reason specified>",null!==n&&("object"!=typeof n?e.message=r+n:"string"==typeof n.message&&(e.message=r+n.message,e.stacktrace=n.stack?n.stack:null)),e},n.prototype.processJSError=function(e,t){var r=t.message,n=t.error,i="",o="";return n&&(i=n.name,o=n.stack),i||r&&(i=r.split(":")[0]),e.errorUrl=t.filename||e.errorUrl,e.errorSourceType="javascript",e.errorSourceSubType="javascript",e.message=r,e.errorType=i||"Script error",e.stacktrace=o,e.lineno=t.lineno,e.colno=t.colno,e},n.prototype.processResourceLoadError=function(e,t){var r=t.target;if(r&&r!==window){var n=void 0;if(r.src&&"string"==typeof r.src&&0===r.src.indexOf("http")?n=r.src:r.href&&"string"==typeof r.href&&0===r.href.indexOf("http")&&(n=r.href),!n)return;return e.errorUrl=n,e.errorSourceType="resource",e.errorSourceSubType="resource",e.errorType="Resource load error.",e.message="Load "+e.errorUrl+" failed.",e}},n}(Vt),Jt=function(e){function n(){var t=e.call(this,O,Yt,Xt)||this;return t.paintRecord={},t}return t(n,e),n.prototype.addCollectHook=function(e){this.observePaint(),this.processPagePerformanceData(),this.hookStateAPI()},n.prototype.removeCollectHook=function(){},n.prototype.handleCollectEvent=function(e){var t,n;return e.pageInfo.pageType===D&&(e.timestamp=window.performance.timing.navigationStart,this.supplyLoadMetric(e)),e.transactions=r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),window.performance.memory&&(e.maxHeap=window.performance.memory.jsHeapSizeLimit,e.totalHeap=window.performance.memory.totalJSHeapSize,e.usedHeap=window.performance.memory.usedJSHeapSize),e},n.prototype.supplyLoadMetric=function(e){this.paintRecord&&(this.paintRecord.fp&&(e.firstPaint=this.paintRecord.fp-e.timestamp),this.paintRecord.fcp&&(e.firstContentfulPaint=this.paintRecord.fcp-e.timestamp),this.paintRecord.fmp&&(e.firstMeaningfulPaint=this.paintRecord.fmp-e.timestamp),this.paintRecord={});var t=window.performance.timing;if("getEntriesByType"in window.performance&&"function"==typeof window.performance.getEntriesByType&&"PerformanceNavigationTiming"in window){var r=window.performance.getEntriesByType($);r.length>0&&r[0]instanceof PerformanceNavigationTiming&&(t=r[0])}if(t instanceof PerformanceTiming){for(var n=0,i=te;n<i.length;n++){e[s=i[n]]=t[s]?t[s]-e.timestamp:0}e.redirectCount=window.performance.navigation&&window.performance.navigation.redirectCount,e.encodedBodySize=window.document.head.innerHTML.length+window.document.body.innerHTML.length}else{for(var o=0,a=te;o<a.length;o++){var s;e[s=a[o]]=Math.floor(t[s]||0)}for(var c in re)e[c]=t[re[c]]}},n.prototype.processPagePerformanceData=function(){var e=this;if("performance"in window&&"timing"in window.performance){var t=this.processHistoryTrace(),r=function(){e.removeObserver();var r=e.configCenter.pageInfoCache.getPageInfo(),n={timestamp:r.timestamp,pageInfo:r};t&&(n.traceId=t),e.webGateEventListener.publish(O,n)};document.readyState===ye?r():qe("load",(function(e){r()}))}else _e("Current browser not support performance api, page load info will not report.")},n.prototype.hookStateAPI=function(){var e=this;if("history"in window&&"pushState"in window.history&&"replaceState"in window.history){var t=function(){var t;if(!e.configCenter.isAuthStateFailed())try{var r=e.configCenter.pageInfoCache.refreshPageInfo(),n={timestamp:r.timestamp,pageInfo:r,operationId:null===(t=window.event)||void 0===t?void 0:t.__WGBP_opt_id__};e.webGateEventListener.publish(O,n)}catch(e){ke(e)}},r=this;this.nativePushState=window.history.pushState,window.history.pushState=function(e,n,i){var o;null===(o=r.nativePushState)||void 0===o||o.apply(this,arguments),t()},this.nativeReplaceState=window.history.replaceState,window.history.replaceState=function(e,n,i){var o;null===(o=r.nativeReplaceState)||void 0===o||o.apply(this,arguments),t()}}else _e("Current browser not support history api, router change info will not report.")},n.prototype.processHistoryTrace=function(){var e=window.document.getElementById(b);if(e){var t=e.getAttribute(C);if(t&&He(t))return He(t)}},n.prototype.observePaint=function(){var e,t=this;if("MutationObserver"in window){var r=0;this.mutationObserver=new window.MutationObserver((function(e,n){if(document.readyState!==ye){var i=(new Date).getTime();t.paintRecord.fp||(t.paintRecord.fp=i);for(var o=0,a=0,s=e;a<s.length;a++)for(var c=s[a],p=0;p<c.addedNodes.length;p++){var u=c.addedNodes.item(p);u&&u instanceof Element&&u.clientWidth&&u.clientHeight&&o++}o>0&&(t.paintRecord.fcp||(t.paintRecord.fcp=i),o>r&&(t.paintRecord.fmp=i,r=o))}})),null===(e=this.mutationObserver)||void 0===e||e.observe(document,{attributes:!1,childList:!0,subtree:!0})}},n.prototype.removeObserver=function(){this.mutationObserver&&this.mutationObserver.disconnect(),this.mutationObserver=void 0},n}(Vt),Zt="undefined"!=typeof window;function er(e,t){void 0===t&&(t=window.location.href);try{var r=Ne(t),n=Ne(e);return r.origin===n.origin}catch(e){ke(e)}return!1}function tr(e){var t=Ne(e).origin,r=Kt.instance,n=r.agentConfig,i=(r.appConfig,r.authorityState,n.globalTrace),o=n.traceCrossOrigin,a=n.traceForbiddenOrigins;return!!i&&(!!er(t)||!!o&&!(a&&a.length>0&&Oe(a,t)>-1))}var rr=function(e){var t=[];try{if(Ge(e))return t;for(var r=He(e).split(","),n=0,i=r;n<i.length;n++){var o=i[n];if(!Ge(o)){for(var a=He(o).split(";"),s={name:""},c=0,p=a;c<p.length;c++){var u=p[c];if(!Ge(u)){var l=He(u).split("=");if(1===l.length&&(s.name=l[0]),2===l.length)switch(l[0]){case"dur":s.duration=+l[1];break;case"desc":s.description=l[1]}}}s.name&&null!==s.duration&&void 0!==s.duration&&t.push(s)}}}catch(e){ke(e)}return t};function nr(e,t){try{if(!t||t.length<3||!e)return;for(var r=t.substring(1,t.length-1).split("]["),n=e,i=0,o=r;i<o.length;i++){var a=o[i];if(!n||!(a in n)){n=void 0;break}n=n[a]}return n}catch(e){}}function ir(e,t){try{if(!t||t.length<3||!e)return;var r=t.substring(1,t.length-1).split("][");if(1!==r.length)return;return e.get(r[0])}catch(e){}}var or=function(e){function i(){var t=e.call(this,L,Qt,Xt)||this;return t.enableRequestLocalCache=t.configCenter.agentConfig.ajaxCache,t.requestLocalCache=t.configCenter.requestLocalCache,t}return t(i,e),i.prototype.addCollectHook=function(e){if("fetch"in window&&"function"==typeof window.fetch){this.nativeFetch=window.fetch;var t=this;window.fetch=function(e,r){var n=this;if(t.configCenter.isAuthStateFailed())return t.nativeFetch.apply(n,arguments);var i=void 0,o=void 0;if("string"==typeof e)r&&(i=r.body),o=new Request(e,r);else{if(!e)return t.nativeFetch.apply(n,arguments);o=e,i=e.body}var a=t.initReportMetric(o),s=t.prepareRequestHeaders(o,a);return t.collectRequestTrans(a,o,i),t.nativeFetch.call(n,o).then((function(e){return e.clone().text().then((function(r){a.bodySize=r.length,a.status=e.status,a.statusText=e.statusText||j,a.requestStep=4,a.requestEnd=(new Date).getTime()-a.timestamp,t.collectResponseTrans(a,e,r),t.processServerTiming(e,a),t.enableRequestLocalCache&&t.requestLocalCache.insertOrUpdateData(a),t.webGateEventListener.publish(L,a),t.enableRequestLocalCache&&t.requestLocalCache.deleteDataById(a.requestId)})),e}),(function(e){a.requestStep=4,a.requestEnd=(new Date).getTime()-a.timestamp,a.statusText=X,t.enableRequestLocalCache&&t.requestLocalCache.insertOrUpdateData(a),t.webGateEventListener.publish(L,a),t.enableRequestLocalCache&&t.requestLocalCache.deleteDataById(a.requestId),t.checkRequestStatus(a,s)}))}}else _e("Current browser not support fetch api, fetch request info will not report.")},i.prototype.removeCollectHook=function(){},i.prototype.handleCollectEvent=function(e){return e},i.prototype.captureStackTrace=function(){var e="";if("Error"in window&&"function"==typeof window.Error)try{throw new Error(v)}catch(r){var t=r.stack;t&&(e=n(["window.fetch ([native code])"],t.split("\n").slice(3)).join("\n"))}return e},i.prototype.prepareRequestHeaders=function(e,t){var r;return!(!tr(t.requestUrl)||!t.requestId)&&(e.headers.set(this.configCenter.agentConfig.traceHeadersPrefix+p,Qe(t.requestId,t.spanId,(null===(r=this.configCenter.transactionCache)||void 0===r?void 0:r.isTraceSample())?"1":"0")),e.headers.set(this.configCenter.agentConfig.traceHeadersPrefix+u,"appKey="+this.configCenter.agentConfig.appKey),!0)},i.prototype.processServerTiming=function(e,t){try{for(var r=rr(e.headers.get(l)),n=0,i=r;n<i.length;n++){var o=i[n];o.name===d&&(t.networkElapse=Math.max(t.requestEnd-t.requestStart-o.duration,0))}t.serverTiming=r}catch(e){_e("Cannot get end elapse form response headers, will use other metric to calculate.")}},i.prototype.initReportMetric=function(e){var t,n,i,o=Ne(e.url),a={timestamp:(new Date).getTime(),requestId:Ye(),spanId:Ve(),requestUrl:o.href,requestType:"fetch",status:0,statusText:"",localCache:!1,method:(e.method||Q).toUpperCase(),requestAsync:!0,timeout:0,bodySize:0,transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),stacktrace:this.captureStackTrace(),requestStep:1,requestStart:0,networkElapse:-1,pageInfo:this.configCenter.pageInfoCache.getPageInfo(),operationId:null===(i=window.event)||void 0===i?void 0:i.__WGBP_opt_id__};return this.enableRequestLocalCache&&this.requestLocalCache.insertOrUpdateData(a),a},i.prototype.checkRequestStatus=function(e,t){if(t&&!er(e.requestUrl)){var r=Ne(e.requestUrl).origin;this.webGateEventListener.publish(B,{metric:I,origin:r,transactions:e.transactions,pageInfo:e.pageInfo,timestamp:e.timestamp})}},i.prototype.collectRequestTrans=function(e,t,r){try{var n=this.configCenter.agentConfig.primaryInfoTrackOpts;if(!n)return;for(var i=n.filter((function(e){return e.trackPos===de})),o=0,a=i;o<a.length;o++){var s=a[o];null!=(b=t.headers.get(s.trackKey))&&e.transactions&&(e.transactions[s.tagKey]=b)}for(var c=n.filter((function(e){return e.trackPos===he})),p=Fe(e.requestUrl),u=0,l=c;u<l.length;u++){null!=(b=p[(s=l[u]).trackKey])&&e.transactions&&(e.transactions[s.tagKey]=b)}var d=n.filter((function(e){return e.trackPos===fe}));if("string"==typeof r)try{for(var h=Le.parse(r),f=0,g=d;f<g.length;f++){s=g[f];try{null!=(b=nr(h,s.trackKey))&&e.transactions&&(e.transactions[s.tagKey]=b.toString())}catch(e){}}}catch(e){}else if(r instanceof FormData)for(var w=0,v=d;w<v.length;w++){null!=(b=ir(r,(s=v[w]).trackKey))&&e.transactions&&(e.transactions[s.tagKey]=b.toString())}else if(r instanceof Object)for(var m=0,y=d;m<y.length;m++){s=y[m];try{var b;null!=(b=nr(r,s.trackKey))&&e.transactions&&(e.transactions[s.tagKey]=b.toString())}catch(e){}}}catch(e){ke(e)}},i.prototype.collectResponseTrans=function(e,t,r){try{var n=this.configCenter.agentConfig.primaryInfoTrackOpts;if(!n)return;for(var i=n.filter((function(e){return e.trackPos===ge})),o=0,a=i;o<a.length;o++){var s=a[o];if(t.headers.has(s.trackKey))null!=(d=t.headers.get(s.trackKey))&&e.transactions&&(e.transactions[s.tagKey]=d.toString())}var c=n.filter((function(e){return e.trackPos===we}));try{var p=Le.parse(r);if(p)for(var u=0,l=c;u<l.length;u++){var d;null!=(d=nr(p,(s=l[u]).trackKey))&&e.transactions&&(e.transactions[s.tagKey]=d.toString())}}catch(e){}}catch(e){ke(e)}},i}(Vt),ar=function(e){function n(){var t=e.call(this,M,Qt,Xt)||this;return t.ignoreResType=[J,Z,ee],t}return t(n,e),n.prototype.addCollectHook=function(e){var t=this;"performance"in window&&"getEntriesByType"in window.performance&&"function"==typeof window.performance.getEntriesByType?document.readyState===ye?this.handleResources(e):qe&&qe("load",(function(r){t.handleResources(e)})):_e("Current browser not support performance api, resource load info will not report.")},n.prototype.removeCollectHook=function(){this.perfObserver&&this.perfObserver.disconnect()},n.prototype.handleCollectEvent=function(e){var t,n,i=Math.floor(performance.timing.navigationStart+e.startTime),o={resourceId:Ye(),transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),timestamp:i,pageInfo:this.configCenter.pageInfoCache.getPageInfo()};for(var a in ne){var s=e[ne[a]]||0;o[a]=Math.floor(s>0?s-e.startTime:s)}for(var a in ie)o[a]=e[ie[a]];return o},n.prototype.handleResources=function(e){for(var t=this,r=0,n=window.performance.getEntriesByType("resource");r<n.length;r++){var i=n[r];this.shouldBeCollected(i)&&this.webGateEventListener.publish(e,i)}"PerformanceObserver"in window&&"function"==typeof window.PerformanceObserver&&(this.perfObserver=new PerformanceObserver((function(r){for(var n=0,i=r.getEntries();n<i.length;n++){var o=i[n];t.shouldBeCollected(o)&&t.webGateEventListener.publish(e,o)}})),this.perfObserver.observe({entryTypes:["resource"]}))},n.prototype.shouldBeCollected=function(e){return e instanceof PerformanceResourceTiming&&((0===e.name.indexOf("http://")||0===e.name.indexOf("https://"))&&Boolean(e.initiatorType)&&Oe(this.ignoreResType,e.initiatorType)<0)},n}(Vt);function sr(e){return"__WGBP__"+e}function cr(e,t,r){for(var n=e;n&&!n.hasOwnProperty(t);)n=Object.getPrototypeOf(n);!n&&e[t]&&(n=e);var i,o,a,s,c=sr(t);if(n&&!(i=n[c])){i=n[c]=n[t];var p=n&&Object.getOwnPropertyDescriptor(n,t);if(!(s=p)||!1!==s.writable&&("function"!=typeof s.get||void 0!==s.set)){var u=r(i,c,t);n[t]=function(){return u(this,arguments)},o=n[t],a=i,o[sr("OriginalDelegate")]=a}}return i}var pr="__wg_request_cache_handled__",ur="readystatechange",lr="timeout",dr="abort",hr=function(e){function i(){var t=e.call(this,A,Qt,Xt)||this;return t.enableRequestLocalCache=t.configCenter.agentConfig.ajaxCache,t.requestLocalCache=t.configCenter.requestLocalCache,t.collectXHRData=!0,t}return t(i,e),i.prototype.addCollectHook=function(e){if(!("XMLHttpRequest"in window)||"function"!=typeof window.XMLHttpRequest)return this.collectXHRData=!1,void _e("Current browser not support XMLHttpRequest, xhr request info will not report.");var t=this;this.XMLHttpRequestPrototype=XMLHttpRequest.prototype;var r=XMLHttpRequest.prototype.addEventListener||XMLHttpRequestEventTarget.prototype.addEventListener;this.nativeXHROpen=cr(this.XMLHttpRequestPrototype,"open",(function(){return function(e,r){return e[h]||t.configCenter.isAuthStateFailed()||(e.__wg_xhr_args__=r),t.nativeXHROpen.apply(e,r)}})),this.nativeXHRSetHeader=cr(this.XMLHttpRequestPrototype,"setRequestHeader",(function(){return function(e,r){if(!e[h]&&!t.configCenter.isAuthStateFailed())try{r.length>=2&&(e[f]=e[f]||{},e[f][r[0]]=r[1])}catch(e){ke(e)}return t.nativeXHRSetHeader.apply(e,r)}})),this.nativeXHRSend=cr(this.XMLHttpRequestPrototype,"send",(function(){return function(e,n){if(!e[h]&&!t.configCenter.isAuthStateFailed())try{t.initInstanceState(e);var i=t.initReportMetric(e);t.prepareRequestHeaders(e,i),t.addEventListeners(r,e),t.collectRequestTrans(e,i,n[0])}catch(e){ke(e)}return t.nativeXHRSend.apply(e,n)}}))},i.prototype.removeCollectHook=function(){this.collectXHRData=!1},i.prototype.handleCollectEvent=function(e){return e},i.prototype.initInstanceState=function(e){e.__wg_xhr_reported__=!1,e[pr]=this.requestLocalCache.historyHandleDone,e.__wg_xhr_metric__=void 0},i.prototype.initReportMetric=function(e){var t,n,i,o=e.__wg_xhr_args__,a=o[0],s=o[1],c=o[2],p=Ne(s),u={timestamp:(new Date).getTime(),requestId:Ye(),spanId:Ve(),requestUrl:p.href,requestType:"xhr",status:0,statusText:"",localCache:!1,method:(a||Q).toUpperCase(),requestAsync:!(!1===c),timeout:e.timeout,bodySize:0,transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions()),stacktrace:this.captureStackTrace(),requestStep:1,requestStart:0,networkElapse:-1,pageInfo:this.configCenter.pageInfoCache.getPageInfo(),operationId:null===(i=window.event)||void 0===i?void 0:i.__WGBP_opt_id__};return e.__wg_xhr_metric__=u,this.enableRequestLocalCache&&e[pr]&&this.requestLocalCache.insertOrUpdateData(u),u},i.prototype.captureStackTrace=function(){var e="";if("Error"in window&&"function"==typeof window.Error)try{throw new Error(v)}catch(r){var t=r.stack;t&&(e=n(["XMLHttpRequest","    at XMLHttpRequest.proto.send ([native code])"],t.split("\n").slice(4)).join("\n"))}return e},i.prototype.prepareRequestHeaders=function(e,t){var r;tr(t.requestUrl)&&t.requestId?(e.setRequestHeader(this.configCenter.agentConfig.traceHeadersPrefix+p,Qe(t.requestId,t.spanId,(null===(r=this.configCenter.transactionCache)||void 0===r?void 0:r.isTraceSample())?"1":"0")),e.setRequestHeader(this.configCenter.agentConfig.traceHeadersPrefix+u,"appKey="+this.configCenter.agentConfig.appKey),e[w]=!0):e[w]=!1},i.prototype.processServerTiming=function(e,t){if(e.getAllResponseHeaders&&"function"==typeof e.getAllResponseHeaders)try{var r=function(e){var t={};if(Ge(e))return t;for(var r=0,n=He(e).split(/[\r\n]+/);r<n.length;r++){var i=n[r].split(": ");t[i.shift()]=i.join(": ")}return t}(e.getAllResponseHeaders()),n=r[l];if(Ge(n))return;for(var i=rr(n),o=0,a=i;o<a.length;o++){var s=a[o];if(s.name===d){t.networkElapse=Math.max(t.requestEnd-t.requestStart-s.duration,0);break}}t.serverTiming=i}catch(e){_e("Cannot get end elapse form response headers, will use other metric to calculate.")}},i.prototype.addEventListeners=function(e,t){var r=this;t.__wg_xhr_listening__||(e.call(t,dr,(function(e){r.collectXHRData&&(t.__wg_xhr_metric__.statusText=Y)}),!0),e.call(t,lr,(function(e){r.collectXHRData&&(t.__wg_xhr_metric__.statusText=V)}),!0),e.call(t,ur,(function(e){r.collectXHRData&&r.processReportMetric(t)}),!0),t.__wg_xhr_listening__=!0)},i.prototype.processReportMetric=function(e){if(!e.__wg_xhr_reported__){var t=e.__wg_xhr_metric__;switch(t.requestStep=e.readyState,e.readyState){case 2:t.headersReceived=void 0!==t.headersReceived?t.headersReceived:(new Date).getTime()-t.timestamp;break;case 3:t.bodyReceiving=void 0!==t.bodyReceiving?t.bodyReceiving:(new Date).getTime()-t.timestamp;break;case 4:t.status=e.status,t.statusText=t.statusText||e.statusText,t.statusText||0!==t.status||(t.statusText=X),t.requestEnd=(new Date).getTime()-t.timestamp,this.processServerTiming(e,t);try{this.collectResponseTrans(e,t),"Blob"in window&&e.response instanceof Blob?t.bodySize=e.response.size:t.bodySize=e.responseText.length}catch(e){}}this.enableRequestLocalCache&&e[pr]&&this.requestLocalCache.insertOrUpdateData(t),4===e.readyState&&(this.webGateEventListener.publish(A,t),e.__wg_xhr_reported__=!0,this.enableRequestLocalCache&&e[pr]&&this.requestLocalCache.deleteDataById(t.requestId),this.checkRequestStatus(e,t))}},i.prototype.checkRequestStatus=function(e,t){if(0===e.status&&!er(t.requestUrl)&&e[w]){var r=Ne(t.requestUrl).origin;this.webGateEventListener.publish(B,{metric:I,origin:r,transactions:t.transactions,pageInfo:t.pageInfo,timestamp:t.timestamp})}},i.prototype.collectRequestTrans=function(e,t,r){try{var n=this.configCenter.agentConfig.primaryInfoTrackOpts;if(!n)return;for(var i=n.filter((function(e){return e.trackPos===de})),o=0,a=i;o<a.length;o++){var s=a[o];null!=(C=e[f]&&e[f][s.trackKey])&&t.transactions&&(t.transactions[s.tagKey]=C)}for(var c=n.filter((function(e){return e.trackPos===he})),p=Fe(t.requestUrl),u=0,l=c;u<l.length;u++){null!=(C=p[(s=l[u]).trackKey])&&t.transactions&&(t.transactions[s.tagKey]=C)}var d=n.filter((function(e){return e.trackPos===fe}));if("string"==typeof r)try{for(var h=Le.parse(r),g=0,w=d;g<w.length;g++){s=w[g];try{null!=(C=nr(h,s.trackKey))&&t.transactions&&(t.transactions[s.tagKey]=C.toString())}catch(e){}}}catch(e){}else if(r instanceof FormData)for(var v=0,m=d;v<m.length;v++){null!=(C=ir(r,(s=m[v]).trackKey))&&t.transactions&&(t.transactions[s.tagKey]=C.toString())}else if(r instanceof Object)for(var y=0,b=d;y<b.length;y++){s=b[y];try{var C;null!=(C=nr(r,s.trackKey))&&t.transactions&&(t.transactions[s.tagKey]=C.toString())}catch(e){}}}catch(e){ke(e)}},i.prototype.collectResponseTrans=function(e,t){try{var r=this.configCenter.agentConfig.primaryInfoTrackOpts;if(!r)return;for(var n=r.filter((function(e){return e.trackPos===ge})),i=0,o=n;i<o.length;i++){var a=o[i];try{null!=(l=e.getResponseHeader(a.trackKey))&&t.transactions&&(t.transactions[a.tagKey]=l.toString())}catch(e){}}var s=r.filter((function(e){return e.trackPos===we}));try{var c=Le.parse(e.responseText);if(c)for(var p=0,u=s;p<u.length;p++){var l;null!=(l=nr(c,(a=u[p]).trackKey))&&t.transactions&&(t.transactions[a.tagKey]=l.toString())}}catch(e){}}catch(e){ke(e)}},i}(Vt),fr=function(e){function r(){return e.call(this,q,Yt,Xt)||this}return t(r,e),r.prototype.addCollectHook=function(e){var t={timestamp:(new Date).getTime()};this.webGateEventListener.publish(e,t)},r.prototype.removeCollectHook=function(){},r.prototype.handleCollectEvent=function(e){return e},r}(Vt),gr=function(e){function r(){return e.call(this,B,Qt,Xt)||this}return t(r,e),r.prototype.addCollectHook=function(e){},r.prototype.handleCollectEvent=function(e){return e},r.prototype.removeCollectHook=function(){},r}(Vt),wr=function(e){function n(){return e.call(this,G,Qt,Xt)||this}return t(n,e),n.prototype.addCollectHook=function(e){this.clickHandler=this.clickHandler.bind(this),this.changeHandler=this.changeHandler.bind(this),qe(Ce,this.clickHandler,!0),qe(Te,this.changeHandler,!0)},n.prototype.handleCollectEvent=function(e){return e},n.prototype.removeCollectHook=function(){Pe(Ce,this.clickHandler,!0),Pe(Te,this.changeHandler,!0)},n.prototype.clickHandler=function(e){var t,n,i=e.target,o=Ye();e.__WGBP_opt_id__=o;var a={operationId:o,timestamp:(new Date).getTime(),duration:0,userAction:e.isTrusted,operation:Ue(i),operationType:Ce,coordinate:e.clientX+", "+e.clientY,element:i.tagName+":"+(i.type||i.tagName),xpath:Ke(i),pageInfo:this.configCenter.pageInfoCache.getPageInfo(),transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),null===(n=this.configCenter.pageInfoCache)||void 0===n?void 0:n.getPageTransactions())};this.webGateEventListener.publish(G,a)},n.prototype.changeHandler=function(e){var t,n=e.target;if(n&&(n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement)){var i=Ye();e.__WGBP_opt_id__=i;var o={operationId:i,timestamp:(new Date).getTime(),duration:0,userAction:e.isTrusted,operation:n.value,operationType:Te,coordinate:(null==n?void 0:n.clientLeft)+", "+(null==n?void 0:n.clientTop),element:n.tagName+":"+n.type,xpath:Ke(n),pageInfo:this.configCenter.pageInfoCache.getPageInfo(),transactions:r(r({},null===(t=this.configCenter.transactionCache)||void 0===t?void 0:t.getAllTransactions()),this.configCenter.pageInfoCache.getPageTransactions())};this.webGateEventListener.publish(G,o)}},n}(Vt),vr={METADATA:[fr],HISTORY:[Jt],ERROR:[$t],REQUEST:[hr,or],RESOURCE:[ar],ALARM:[gr],OPERATION:[wr]},mr=[];function yr(e){if(e===F)for(var t=0,r=mr;t<r.length;t++){r[t].removeCollectHook()}}function br(){var e=Kt.instance;e.updateAuthState(N);var t=e.agentConfig;!function(e,t,r,n,i){try{var o=new XMLHttpRequest,a=""+r+x+"?t="+(new Date).getTime();o.open("post",a,!0),o.timeout=5e3,o.onerror=function(e){ke("WebGate browser probe inject error, response status: "+o.status),i()},o.onreadystatechange=function(){if(o.readyState===o.DONE){var e=void 0;try{var r=Ee(o.responseText,!1);e=Le.parse(r)}catch(t){e=null}e?e.access?(Ie(">>> "+window.location.href+"\n WebGate-Browser-Probe V"+t,!1),n(e)):(ke(e.message),i()):(ke("WebGate browser probe inject error, please check your config or network."),i())}};var s=Ee(Le.stringify([e,t]),!0);o.send(s)}catch(e){ke("WebGate browser probe inject error, cause: "+e.message),i()}}(t.appKey,t.agentVersion,t.serverAddr,(function(t){e.setAppConfig(t),e.updateAuthState(z)}),(function(){e.updateAuthState(F)}))}var Cr=window.WGBrowserProbe;Cr||(window.WGBrowserProbe=Cr={initFlag:!1,deviceSupport:!0,context:{},init:function(e){if(this.deviceSupport=!!(Zt&&window.performance&&window.performance.timing&&window.localStorage&&window.sessionStorage&&window.XMLHttpRequest),this.deviceSupport){if(this.initFlag)return void _e("WebGate browser probe has already been injected.");this.initFlag=!0,!function(e){return!(!e.appKey||!e.serverAddr||(null!==e.appVersion&&void 0!==e.appVersion&&(e.appVersion=He(e.appVersion),Boolean(e.appVersion)||(e.appVersion=m)),0))}(e)?ke("Init config valid fail, please check your config."):(Kt.startConfigCenter(e),br(),t=new zt,r=new Ft,jt.push(t),jt.push(r),Gt||(Gt=new Wt),function(){mr.push(new gr);for(var e=0,t=Kt.instance.agentConfig.collectItems;e<t.length;e++){var r=t[e];if(vr[r])for(var n=0,i=vr[r];n<i.length;n++){var o=i[n];mr.push(new o)}}Kt.instance.authEventListener.subscribe(y,yr)}())}else _e("Current device is not support.");var t,r},addTag:function(e,t){var r;this.deviceSupport?this.initFlag?"string"==typeof e&&"string"==typeof t?""!==He(e)&&""!==He(t)?(e=He(e),t=He(t),e.length>200||e.indexOf(":")>=0||e.indexOf(";")>=0||t.length>200||t.indexOf(":")>=0||t.indexOf(";")>=0?ke("Tag key or value must be less than 200 characters and cannot contain ':' and ';'"):null===(r=Kt.instance.transactionCache)||void 0===r||r.addTransaction(e,t)):ke("Tag key or value can not be null!"):ke("Tag key or value must be string!"):_e("WebGate browser probe not init yet, please call init first."):_e("Current device is not support, please update your browser.")},removeTag:function(e,t){var r;this.deviceSupport?this.initFlag?"string"==typeof e&&""!==He(e)?(e=He(e),null==t||"string"==typeof t?("string"==typeof t&&(t=He(t)),null===(r=Kt.instance.transactionCache)||void 0===r||r.removeTransaction(e,t)):ke("Value must be one of null, undefined or string!")):ke("Tag key can not be null and must be string!"):_e("WebGate browser probe not init yet, please call init first."):_e("Current device is not support, please update your browser.")}})}();
