(self.AMP=self.AMP||[]).push({n:"amp-analytics",ev:"0.1",l:true,v:"2107030008001",m:1,f:function(AMP,_){let ca;function n(){return ca?ca:ca=Promise.resolve(void 0)}class p{constructor(){this.promise=new Promise(((a,b)=>{this.resolve=a;this.reject=b}))}}function da(a){return new Promise((b=>{b(a())}))}let u=Array.isArray;function ea(a,b){let c=[];let d=0;for(let e=0;ec;c++){let d=0;a=a.replace(/\${([^}]*)}/g,((e,f)=>{d++;return b(f)}));if(!d)break}return a}function ka(a,b){var c=/\${([^}]*)}/g;if("string"==typeof b)return Promise.resolve(a.replace(c,b));let d=[];let e=0;a.replace(c,(function(f){let g=arguments[arguments.length-2];d.push(a.slice(e,g));e=g+f.length;let h=b.apply(null,arguments);d.push(h)}));d.push(a.slice(e));return Promise.all(d).then((f=>f.join("")))}let la=Object.prototype.hasOwnProperty,ma=Object.prototype.toString;function v(a){return"[object Object]"===ma.call(a)}function w(a){return a||{}}function z(a,b){return la.call(a,b)}function na(a,b,c=10){let d=[],e=[];for(e.push({t:a,s:b,d:0});0c)Object.assign(h,g);else for(let k of Object.keys(g)){a=g[k];if(z(h,k)&&(b=h[k],v(a)&&v(b))){e.push({t:b,s:a,d:f+1});continue}h[k]=a}}}function A(a){return"number"===typeof a&&isFinite(a)}function oa(a){var b=null;let c="";for(let e of arguments)if(e instanceof Error&&!b)a:{b=e;var d=Object.getOwnPropertyDescriptor(b,"message");if(null!==d&&void 0!==d&&d.writable)break a;d=b.stack;let f=Error(b.message);for(let g in b)f[g]=b[g];f.stack=d;b=f}else c&&(c+=" "),c+=e;b?c&&(b.message=c+": "+b.message):b=Error(c);return b}function pa(a){let b=oa.apply(null,arguments);setTimeout((()=>{var c,d;null===(c=(d=self).__AMP_REPORT_ERROR)||void 0===c?void 0:c.call(d,b);throw b}))}let qa=/(?:^[#?]?|&)([^=&]+)(?:=([^&]*))?/g;function ra(a,b=""){try{return decodeURIComponent(a)}catch(c){return b}}function sa(a){let b=Object.create(null);if(!a)return b;for(var c;c=qa.exec(a);){let d=ra(c[1],c[1]);c=c[2]?ra(c[2].replace(/\+/g," "),c[2]):"";b[d]=c}return b}let ta="";function B(a){a=a||self;if(a.__AMP_MODE)var b=a.__AMP_MODE;else{var c=sa(a.location.originalHash||a.location.hash);var d=sa(a.location.originalHash||a.location.hash);d=!(!["1","actions","amp","amp4ads","amp4email"].includes(d.development)&&!a.AMP_DEV_MODE);var e=c["amp-geo"];c=c.log;ta||(ta=(null===(b=a.AMP_CONFIG)||void 0===b?void 0:b.v)||"012107030008001");b=a.__AMP_MODE={localDev:!1,development:d,esm:!0,geoOverride:e,minified:!0,test:!1,log:c,version:"2107030008001",rtvVersion:ta}}return b}let C=self.AMP_CONFIG||{},ua=("string"==typeof C.cdnProxyRegex?new RegExp(C.cdnProxyRegex):C.cdnProxyRegex)||/^https:\/\/([a-zA-Z0-9_-]+\.)?cdn\.ampproject\.org$/;function va(a){if(!self.document||!self.document.head||self.location&&ua.test(self.location.origin))return null;let b=self.document.head.querySelector(`meta[name="${a}"]`);return b&&b.getAttribute("content")||null}let wa={thirdParty:C.thirdPartyUrl||"https://3p.ampproject.net",thirdPartyFrameHost:C.thirdPartyFrameHost||"ampproject.net",thirdPartyFrameRegex:("string"==typeof C.thirdPartyFrameRegex?new RegExp(C.thirdPartyFrameRegex):C.thirdPartyFrameRegex)||/^d-\d+\.ampproject\.net$/,cdn:C.cdnUrl||va("runtime-host")||"https://cdn.ampproject.org",cdnProxyRegex:ua,localhostRegex:/^https?:\/\/localhost(:\d+)?$/,errorReporting:C.errorReportingUrl||"https://us-central1-amp-error-reporting.cloudfunctions.net/r",betaErrorReporting:C.betaErrorReportingUrl||"https://us-central1-amp-error-reporting.cloudfunctions.net/r-beta",localDev:C.localDev||!1,trustedViewerHosts:[/(^|\.)google\.(com?|[a-z]{2}|com?\.[a-z]{2}|cat)$/,/(^|\.)gmail\.(com|dev)$/],geoApi:C.geoApiUrl||va("amp-geo-api")};self.__AMP_LOG=self.__AMP_LOG||{user:null,dev:null,userForEmbed:null};let xa=self.__AMP_LOG;function D(){if(!xa.user)throw Error("failed to call initLogConstructor");return xa.user}function ya(){if(xa.dev)return xa.dev;throw Error("failed to call initLogConstructor")}function E(a,b,c,d,e,f){return D().assert(a,b,c,d,e,f,void 0,void 0,void 0,void 0,void 0)}function G(a,b){a=H(a);return I(a,b)}function J(a,b){var c=K(a);c=za(c);return I(c,b)}function Aa(a,b){a=K(a);a=za(a);return Ba(a,b)?I(a,b):null}function L(a,b){{a=za(a);let c=Ca(a,b);c?b=c:(a=Da(a),a[b]=Ea(),b=a[b].promise)}return b}function Fa(a,b){return Ca(za(a),b)}function H(a){return a.__AMP_TOP||(a.__AMP_TOP=a)}function Ga(a,b){let c=(a.ownerDocument||a).defaultView,d=b||H(c);if(c&&c!=d&&H(c)==d)try{return c.frameElement}catch(e){}return null}function K(a){return a.nodeType?G((a.ownerDocument||a).defaultView,"ampdoc").getAmpDoc(a):a}function za(a){a=K(a);return a.isSingleDoc()?a.win:a}function I(a,b){Ba(a,b);a=Da(a)[b];a.obj||(a.obj=new a.ctor(a.context),a.context=null,a.resolve&&a.resolve(a.obj));return a.obj}function Ha(a,b,c,d){let e=Da(a);let f=e[c];f||(f=e[c]={obj:null,promise:null,resolve:null,reject:null,context:null,ctor:null,sharedInstance:!1});f.ctor||(f.ctor=d,f.context=b,f.sharedInstance=!1,f.resolve&&I(a,c))}function Ca(a,b){let c=Da(a)[b];if(c){if(c.promise)return c.promise;I(a,b);return c.promise=Promise.resolve(c.obj)}return null}function Da(a){let b=a.__AMP_SERVICES;b||(b=a.__AMP_SERVICES={});return b}function Ba(a,b){a=a.__AMP_SERVICES&&a.__AMP_SERVICES[b];return!(!a||!a.ctor)}function Ea(){let a=new p,b=a.promise,c=a.reject,d=a.resolve;b.catch((()=>{}));return{obj:null,promise:b,resolve:d,reject:c,context:null,ctor:null}} /* https://mths.be/cssescape v1.5.1 by @mathias | MIT license */ function Ia(a,b){let c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.msMatchesSelector||a.oMatchesSelector;return c?c.call(a,b):!1}function Ja(a,b){for(;a&&void 0!==a;a=a.parentElement)if(b(a))return a;return null}function Ka(a,b){return a.closest?a.closest(b):Ja(a,(c=>Ia(c,b)))}function La(a,b){for(a=a.lastElementChild;a;a=a.previousElementSibling)if(b(a))return a;return null}function Ma(a,b,c){a=a.createElement(b);for(let d in c)a.setAttribute(d,c[d]);return a}function Na(a,b){let c=g=>g,d=a.dataset;a={};let e=b||/^param(.+)/;for(let g in d){var f=g.match(e);f&&(f=f[1][0].toLowerCase()+f[1].substr(1),a[c(f)]=d[g])}return a}function Oa(a){return Pa(a,"userNotificationManager","amp-user-notification",void 0).then((b=>E(b,"Service %s was requested to be provided through %s, but %s is not loaded in the current page. To fix this problem load the JavaScript file for %s in this page.","userNotificationManager","amp-user-notification","amp-user-notification","amp-user-notification")))}function Pa(a,b,c,d){let e=Fa(a,b);if(e)return e;let f=K(a);return f.whenExtensionsKnown().then((()=>{let g=f.getExtensionVersion(c);return g?G(f.win,"extensions").waitForExtension(c,g):null})).then((g=>g?d?Fa(a,b):L(a,b):null))}function Qa(a){let b=Aa(a,"amp-script");return b?Promise.resolve(b):Pa(a,"amp-script","amp-script")}function M(a){return G(a,"performance")}function N(a){return Aa(a,"url-replace")}function Ra(a){return Pa(a,"consentPolicyManager","amp-consent")}function O(a){return J(a,"viewport")}let Sa;function Ta(a,b,c,d){let e=a,f=c,g=l=>{try{return f(l)}catch(r){var m,q;null===(m=(q=self).__AMP_REPORT_ERROR)||void 0===m?void 0:m.call(q,r);throw r}};let h=Ua(),k=!(null===d||void 0===d||!d.capture);e.addEventListener(b,g,h?d:k);return()=>{var l;null===(l=e)||void 0===l?void 0:l.removeEventListener(b,g,h?d:k);g=e=f=null}}function Ua(){if(void 0!==Sa)return Sa;Sa=!1;try{let a={get capture(){Sa=!0}};self.addEventListener("test-options",null,a);self.removeEventListener("test-options",null,a)}catch(a){}return Sa}function Va(a,b,c,d){let e=c;let f=Ta(a,b,(g=>{try{e(g)}finally{e=null,f()}}),d);return f}function Wa(a){return!!(a.complete||"complete"==a.readyState||Xa(a)&&0{b=d?Va(a,"loadedmetadata",e,{capture:!0}):Va(a,"load",e);if(a.tagName){var g=a;if(d&&!a.hasAttribute("src")&&(g=La(a,(h=>"SOURCE"===h.tagName)),!g))return f(Error("Media has no source."));c=Va(g,"error",f)}})).then((()=>{c&&c();return a}),(()=>{b&&b();Xa(a)&&(a.__AMP_MEDIA_LOAD_FAILURE_SRC=a.currentSrc||!0);let e=a;e&&e.src&&(e=e.src);throw D().createError("Failed to load:",e)}))}function Xa(a){return"AUDIO"===a.tagName||"VIDEO"===a.tagName}function Za(a,b){let c=0;"active"===a.type&&(c=5);return Math.min(b-a.time,c)}class $a{constructor(){this.Gb=0;this.qa=void 0}push(a){this.qa&&this.qa.time"string"==typeof a?P(a):a;function P(a){jb||(jb=self.document.createElement("a"));var b=jb;b.href="";return new URL(a,b.href)}function lb(a,b,c){if(!b)return a;let d=a.split("#",2),e=d[0].split("?",2);let f=e[0]+(e[1]?c?`?${b}&${e[1]}`:`?${e[1]}&${b}`:`?${b}`);return f+=d[1]?`#${d[1]}`:""}function mb(a,b){return`${encodeURIComponent(a)}=${encodeURIComponent(b)}`}function nb(a){let b=[];for(let d in a){var c=a[d];if(null!=c){c=u(c)?c:[c];for(let e=0;e{d.setNonBoolean("amp-session:"+b,c)}))}function yb(a,b,c){return a.qc.then((d=>d.get("amp-session:"+b))).then((d=>{d?(v(d)?d={["sessionId"]:d.sessionId,["creationTimestamp"]:d.creationTimestamp,["count"]:d.count,["accessTimestamp"]:d.accessTimestamp,["eventTimestamp"]:d.eventTimestamp}:(ya().error("amp-analytics/session-manager","Invalid stored session value"),d=wb()),d=ub(d)):d=wb();return d})).then((d=>{if(b in a.L&&!vb(a.L[b]))return a.L[b];null===c||void 0===c?void 0:c(d);xb(a,b,d);a.L[b]=d;return a.L[b]}))}class zb{constructor(a){this.qc=L(a,"storage");this.L=Object.create(null)}getSessionValue(a,b){return this.get(a).then((c=>null===c||void 0===c?void 0:c[b]))}updateEventTimestamp(a){return this.get(a,(b=>{b.eventTimestamp=Date.now()}))}get(a,b){return a?z(this.L,a)&&!vb(this.L[a])?(this.L[a]=ub(this.L[a]),null===b||void 0===b?void 0:b(this.L[a]),xb(this,a,this.L[a]),Promise.resolve(this.L[a])):yb(this,a,b):(D().error("amp-analytics/session-manager","Sessions can only be accessed with a vendor type."),Promise.resolve(null))}}function vb(a){return a.accessTimestamp+18e5Db[c])));return Bb(b)}function Gb(a){a=Cb(a);return btoa(a).replace(/[+/=]/g,(b=>Eb[b]))}function Hb(a){a=Ab(a);return Gb(a)}function Ib(a,b){try{var c=a.document.cookie}catch(f){c=""}let d=c;if(!d)return null;let e=d.split(";");for(a=0;aya().error("MESSAGING","Failed to parse message: "+a,c)))}function Nb(a){return"string"==typeof a&&0==a.indexOf("amp-")&&-1!=a.indexOf("{")}let Ob;let Pb="Webkit webkit Moz moz ms O o".split(" "),Qb={getPropertyPriority:()=>"",getPropertyValue:()=>""};function Rb(a){var b=!1;void 0===b&&(b=a.hasAttribute("hidden"));b?a.removeAttribute("hidden"):a.setAttribute("hidden","")}function Sb(a,b,c){let{listeningFors:d}=a;!d&&c&&(d=a.listeningFors=Object.create(null));a=d||null;if(!a)return a;let e=a[b];!e&&c&&(e=a[b]=[]);return e||null}function Tb(a,b,c){var d=c?b.getAttribute("data-amp-3p-sentinel"):"amp";a=Sb(a,d,!0);let e;for(d=0;d{f(b)}))}}}function Vb(a){a.listeningFors||a.addEventListener("message",(function(b){if(b.data){var c=Wb(b.data);if(c&&c.sentinel){{var d=b.source;let k=Sb(a,c.sentinel);if(k){for(let l=0;l{}))||null:Nb(a)?Mb(a):null);return a}class Zb{constructor(a,b){this.Yb=a;this.vb=!0;this.wa=[];this.Ib=Xb(this.Yb,((c,d,e)=>{this.wa.some((f=>f.win==d))||this.wa.push({win:d,origin:e});b(c,d,e)}),this.vb,this.vb)}send(a,b){ea(this.wa,(c=>!c.win.parent));Yb(this.Yb,this.wa,a,b,this.vb)}destroy(){this.Ib();this.wa.length=0}}function $b(a){return a.classList.contains("i-amphtml-fie")||!!Ka(a,".i-amphtml-fie")}function ac(a,b){return!$b(b)&&!pb(a.location)&&"inabox"!=B(a).runtime}function bc(a){return Ra(a).then((b=>b?b.whenPolicyResolved("default"):null))}function dc(a){return Ra(a).then((b=>b?b.getConsentStringInfo("default"):null))}function ec(a){return Ra(a).then((b=>b?b.getConsentMetadataInfo("default"):null))}let fc=null;let gc=/^[a-zA-Z0-9\-_.]+$/;function hc(a){let b=ic(a);return""===b?"":["1",jc(b),b].join("*")}function jc(a,b){var c=(new Date).getTimezoneOffset();var d=window;c=[window.navigator.userAgent,c,d.navigator.userLanguage||d.navigator.language].join("*");d=b||0;d=Math.floor(Date.now()/6e4)-d;a=[c,d,a].join("*");if(!fc){c=Array(256);for(d=0;256>d;d++){let e=d;for(let f=0;8>f;f++)e=1&e?e>>>1^3988292384:e>>>1;c[d]=e}fc=c}a=Ab(a);c=4294967295;for(d=0;d>>8^fc[255&(c^a[d])];return((-1^c)>>>0).toString(36)}function ic(a){return a?Object.keys(a).filter((b=>{let c=gc.test(b);c||D().error("amp-analytics/linker","Invalid linker key: "+b);return c})).map((b=>b+"*"+Hb(String(a[b])))).join("*"):""}class kc{constructor(a){this.A=a;this.Aa={}}get(a,b){if(!a||!b)return D().error("amp-analytics/linker-reader","LINKER_PARAM requires two params, name and id"),null;if(!z(this.Aa,a)){var c=this.Aa;var d=sa(this.A.location.search);if(z(d,a)){d=d[a];var e=this.A.location;if(this.A.history.replaceState){var f=qb(e.search,a);this.A.history.replaceState(null,"",e.origin+e.pathname+f+(e.hash||""))}e=d.split("*");f=0==e.length%2;4>e.length||!f?(D().error("amp-analytics/linker",`Invalid linker_param value ${d}`),d=null):(d=Number(e.shift()),1!==d?(D().error("amp-analytics/linker",`Invalid version number ${d}`),d=null):(d=e.shift(),e=e.join("*"),d={checksum:d,serializedIds:e}));if(d){e=d.serializedIds;c:{d=d.checksum;for(f=0;1>=f;f++)if(jc(e,f)==d){d=!0;break c}d=!1}if(d)for(d={},e=e.split("*"),f=0;fd)&&(D().error("amp-analytics/variables","Third argument in MATCH macro must be a number >= 0"),d=0);return(a=a.match(new RegExp(b)))&&a[d]?a[d]:""}function rc(a,b,c,d){let e=Number(a),f=Number(b);E(!isNaN(e),"CALC macro - left operand must be a number");E(!isNaN(f),"CALC macro - right operand must be a number");let g=0;switch(c){case"add":g=e+f;break;case"subtract":g=e-f;break;case"multiply":g=e*f;break;case"divide":E(f,"CALC macro - cannot divide by 0");g=e/f;break;default:D().error("amp-analytics/variables","CALC macro - Invalid operation")}return sc(d)?Math.round(g):g}function tc(a,b){if(b)return(a.__AMP_EXPERIMENT_BRANCHES?a.__AMP_EXPERIMENT_BRANCHES[b]:null)||"";let c=tb(a);return Object.keys(c).map((d=>`${d}:${c[d]}`)).join(",")}function S(a,b,c){a.ea[b]=c}function uc(a,b,c){return a.cd.then((d=>d.getSessionValue(b,c)))}function vc(a,b,c,d,e,f,g,h){return a.expandTemplate(b,new R(c.vars,c.iterations-1,!0),d,f,g).then((k=>e.expandStringAsync(h?k+h:k,f||a.getMacros(d),g)))}class wc{constructor(a){this.o=a;this.ea=w({});this.Rc=G(this.o.win,"amp-analytics-linker-reader");this.cd=L(this.o,"amp-analytics-session");this.ea.$DEFAULT=oc;this.ea.$SUBSTR=nc;S(this,"$TRIM",(b=>b.trim()));S(this,"$TOLOWERCASE",(b=>b.toLowerCase()));S(this,"$TOUPPERCASE",(b=>b.toUpperCase()));S(this,"$NOT",(b=>String(!b)));S(this,"$BASE64",(b=>Hb(b)));S(this,"$HASH",this.Oc.bind(this));S(this,"$IF",((b,c,d)=>sc(b)?c:d));this.ea.$REPLACE=pc;this.ea.$MATCH=qc;this.ea.$CALC=rc;S(this,"$EQUALS",((b,c)=>b===c));S(this,"LINKER_PARAM",((b,c)=>this.Rc.get(b,c)));S(this,"TIMEZONE_CODE",(()=>{let b="";"Intl"in this.o.win&&"DateTimeFormat"in this.o.win.Intl&&(b=(new this.o.win.Intl.DateTimeFormat).resolvedOptions().timeZone);return b}));S(this,"SCROLL_TOP",(()=>Math.round(O(this.o).getScrollTop())));S(this,"SCROLL_LEFT",(()=>Math.round(O(this.o).getScrollLeft())));S(this,"EXPERIMENT_BRANCHES",(b=>tc(this.o.win,b)));S(this,"AMPDOC_META",((b,c="")=>{var d;return null!==(d=this.o.getMetaByName(b))&&void 0!==d?d:c}))}getMacros(a){let b=a.getAttribute("type"),c={COOKIE:e=>{var f=this.o.win;return ac(f,a)?Ib(f,e):null},CONSENT_STATE:xc(a),CONSENT_STRING:dc(a),CONSENT_METADATA:e=>yc(a,E(e,"CONSENT_METADATA macro must contain a key")),SESSION_ID:()=>uc(this,b,"sessionId"),SESSION_TIMESTAMP:()=>uc(this,b,"creationTimestamp"),SESSION_COUNT:()=>uc(this,b,"count"),SESSION_EVENT_TIMESTAMP:()=>uc(this,b,"eventTimestamp")},d=$b(a)?{}:{FIRST_CONTENTFUL_PAINT:()=>M(this.o.win).getMetric("fcpv"),FIRST_VIEWPORT_READY:()=>M(this.o.win).getMetric("pc"),MAKE_BODY_VISIBLE:()=>M(this.o.win).getMetric("mbv"),LARGEST_CONTENTFUL_PAINT:()=>M(this.o.win).getMetric("lcpv"),FIRST_INPUT_DELAY:()=>M(this.o.win).getMetric("fid"),CUMULATIVE_LAYOUT_SHIFT:()=>M(this.o.win).getMetric("cls")};return Q(Q(Q({},this.ea),c),d)}expandTemplate(a,b,c,d,e){return ka(a,((f,g)=>{if(0>b.iterations)return D().error("amp-analytics/variables","Maximum depth reached while expanding variables. Please ensure that the variables are not recursive."),f;if(!g)return"";let{argList:h,name:k}=zc(g);if(b.freezeVars[k])return f;f=b.getVar(k);let l=N(c);if("string"==typeof f)f=vc(this,f,b,c,l,d,e,h);else if(u(f)){for(g=0;gb.noEncode?m:Ac(m)))}))}Oc(a){return G(this.o.win,"crypto").sha384Base64(a)}}function Ac(a){if(null==a)return"";if(u(a))return a.map(Ac).join(",");let{argList:b,name:c}=zc(String(a));return encodeURIComponent(c)+b}function zc(a){if(!a)return{name:"",argList:""};let b=a.match(lc);E(b,"Variable with invalid format found: "+a);return{name:b[1]||b[0],argList:b[2]||""}}function T(a){return J(a,"amp-analytics-variables")}function xc(a){return bc(a).then((b=>b?mc[b]:null))}function yc(a,b){return ec(a).then((c=>c?c[b]:null))}function sc(a){return"false"!==a&&""!==a&&"0"!==a&&"null"!==a&&"NaN"!==a&&"undefined"!==a}function Bc(a){let b=a.j.getAttribute("config");if(!b||a.V)return n();ob(b,a.j);let c=a.B(),d={};a.j.hasAttribute("data-credentials")&&(d.credentials=a.j.getAttribute("data-credentials"));return N(a.j).expandUrlAsync(b,a.I.getMacros(a.j)).then((e=>{b=e;return G(a.A,"xhr").fetchJson(b,d)})).then((e=>e.json())).then((e=>{a.ra=e}),(e=>{D().error(c,"Error loading remote config: ",b,e)}))}function Cc(a){let b=a.j.getAttribute("type");if(!b)return n();let c=Dc(b),d=a.B();return G(a.A,"xhr").fetchJson(c,{ampCors:!1}).then((e=>e.json())).then((e=>{a.jb=e||{}}),(e=>{D().error(d,"Error loading vendor config: ",c,e)}))}function Dc(a){var b=wa.cdn;var c;if(c="bg"===a){var d;c=!(null===(d=self.AMP_CONFIG)||void 0===d||!d.canary)}let e=c?".canary":"";return`${b}/rtv/${B().rtvVersion}/v0/analytics-vendors/${a}${e}.json`}function Ec(a,b){let c=w({vars:{requestCount:0}});U(Fc(a.Hc),c);U(Fc(a.jb),c,!0);U(Fc(b),c,!0);return c}function Gc(a,b,c){ob(c,a.j);let d=a.B();return Hc(a,b).then((()=>{let e={method:"POST",body:b};a.j.hasAttribute("data-credentials")&&(e.credentials=a.j.getAttribute("data-credentials"));return N(a.j).expandUrlAsync(c).then((f=>G(a.A,"xhr").fetchJson(f,e))).then((f=>f.json())).then((f=>{a.h=Ec(a,f)}),(f=>{D().error(d,"Error rewriting configuration: ",c,f)}))}))}function Hc(a,b){let c=b.configRewriter,d=c&&c.varGroups,e=(a.jb.configRewriter||{}).varGroups;if(!d&&!e)return n();if(d&&!e)return a.B(),n();b.configRewriter=b.configRewriter||{};let f=b.configRewriter;f.vars=w({});let g=[],h=d||{};na(h,e);Object.keys(h).forEach((k=>{let l=h[k];if(l.enabled){var m=a.shallowExpandObject(a.j,l).then((q=>{delete q.enabled;Object.assign(f.vars,q)}));g.push(m)}}));return Promise.all(g).then((()=>{if(!Object.keys(f.vars).length)return delete b.configRewriter;d&&delete f.varGroups}))}class Ic{constructor(a){this.j=a;this.A=null;this.Hc=hb||{};this.jb={};this.h={};this.ra={};this.V=!1;this.I=T(a)}loadConfig(){this.A=this.j.ownerDocument.defaultView;this.V=this.j.hasAttribute("sandbox");return Promise.all([Bc(this),Cc(this)]).then(this.$c.bind(this)).then(this.Bc.bind(this)).then(this.Cc.bind(this)).then((()=>this.h))}$c(){let a=(this.jb.configRewriter||{}).url,b=w({});if(this.j.CONFIG)var c=this.j.CONFIG;else{c={};var d=this.B();try{let k=this.j.children;if(1==k.length){var e=this.j;/^[\w-]+$/.test("script");var f=e.querySelectorAll("> script".replace(/^|,/g,"$&:scope "));if(1!==f.length)throw Error(`Found ${f.length}