self.AMP_CONFIG={"v":"012309151607000","type":"production","allow-doc-opt-in":["amp-next-page"],"allow-url-opt-in":[],"canary":0,"a4aProfilingRate":0.01,"doubleclickSraExp":0.01,"doubleclickSraReportExcludedBlock":0.1,"flexAdSlots":0.05,"flexible-bitrate":0.1,"ios-fixed-no-transfer":0,"story-ad-placements":0.01,"story-disable-animations-first-page":1,"story-load-inactive-outside-viewport":1,"amp-sticky-ad-to-amp-ad-v4":0,"story-video-cache-apply-audio":0,"amp-story-subscriptions":1,"esm":1};self.AMP_EXP={"flexible-bitrate":0.1,"amp-story-first-page-max-bitrate":0.3,"story-disable-animations-first-page":1,"story-load-first-page-only":1,"story-load-inactive-outside-viewport":1,"story-ad-page-outlink":0.02,"amp-geo-ssr":1,"story-remote-localization":1,"amp-story-subscriptions":1,"attribution-reporting":0.04};; self,self.AMP=self.AMP||[];try{AMP._=AMP._||{},self.AMP&&!Array.isArray(self.AMP)||(()=>{var t,i=class{constructor(){this.bt=new s}abort(){if(!this.bt.Ot&&(this.bt.Ot=!0,this.bt.jt)){const t={"type":"abort","bubbles":!1,"cancelable":!1,"target":this.bt,"currentTarget":this.bt};this.bt.jt(t)}}get signal(){return this.bt}},s=class{constructor(){this.Ot=!1,this.jt=null}get aborted(){return this.Ot}get onabort(){return this.jt}set onabort(t){this.jt=t}};function e(){return t||(t=Promise.resolve(void 0))}var n=class{constructor(){this.promise=new Promise(((t,i)=>{this.resolve=t,this.reject=i}))}};function r(t){return new Promise((i=>{i(t())}))}function h(t){const i=Object.getOwnPropertyDescriptor(t,"message");if(null!=i&&i.writable)return t;const{message:s,stack:e}=t,n=new Error(s);for(const i in t)n[i]=t[i];return n.stack=e,n}function o(t){let i=null,s="";for(const t of arguments)t instanceof Error&&!i?i=h(t):(s&&(s+=" "),s+=t);return i?s&&(i.message=s+": "+i.message):i=new Error(s),i}function u(t){var i,s;null===(i=(s=self).__AMP_REPORT_ERROR)||void 0===i||i.call(s,t)}function l(t){const i=o.apply(null,arguments);setTimeout((()=>{throw u(i),i}))}function c(t){const i=o.apply(null,arguments);return i.expected=!0,i}var{hasOwnProperty:a,toString:d}=Object.prototype;function f(t){return"[object Object]"===d.call(t)}function p(t){const i=Object.create(null);return t&&Object.assign(i,t),i}function m(t,i){return a.call(t,i)}function _(t){const i=p();for(const s in t){if(!m(t,s))continue;const e=t[s];i[s]=f(e)?_(e):e}return i}function A(t,i,s){return i in t?Object.defineProperty(t,i,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[i]=s,t}function P(t,i){var s=Object.keys(t);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(t);i&&(e=e.filter((function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable}))),s.push.apply(s,e)}return s}function g(t){for(var i=1;i=0&&t.indexOf(i,s)==s}function y(t){return"string"==typeof t}function b(t){return 1==(null==t?void 0:t.nodeType)}function w(t){return"number"==typeof t&&isFinite(t)}var V="​​​",S="​​​​";function x(t){return b(t)?t.tagName.toLowerCase()+(t.id?`#${t.id}`:""):t}function O(t){return t.indexOf(V)>=0}function C(t){return t.replace(V,"")}function k(t,i,s="Assertion failed",e){var n,r;if(i)return i;t&&-1==s.indexOf(t)&&(s+=t);let h=3;const o=s.split("%s");let u=o.shift();const l=[u];for(;o.length;){const t=arguments[h++],i=o.shift();u+=x(t)+i,l.push(t,i.trim())}const c=new Error(u);throw c.messageArray=T(l,(t=>""!==t)),null===(n=(r=self).__AMP_REPORT_ERROR)||void 0===n||n.call(r,c),c}function N(t,i,s,e,n){return v(n)?t(s,n.concat([i])):t(s,`${n||e}: %s`,i),i}function D(t,i,s,e,n,r,h,o,u,l,c){return t}function L(t,i){return t}function U(t,i){return t}function $(t,i){return t}function F(t,i,s,e,n,r,h,o,u,l,c){return k(V,t,i,s,e,n,r,h,o,u,l,c)}function B(t){return JSON.parse(t)}function H(t){const i=new Uint8Array(t.length);for(let s=0;s0?e=t.setTimeout(h,o):(u=r,r=null,i.apply(null,u))}return function(...i){n=t.Date.now(),r=i,e||(e=t.setTimeout(h,s))}}var q=["javascript:","data:","vbscript:"],W=/(?:^[#?]?|&)([^=&]+)(?:=([^&]*))?/g;function K(t,i=""){try{return decodeURIComponent(t)}catch(t){return i}}function Y(t){const i=p();if(!t)return i;let s;for(;s=W.exec(t);){const t=K(s[1],s[1]),e=s[2]?K(s[2].replace(/\+/g," "),s[2]):"";i[t]=e}return i}function Q(t){const{location:i}=t||self;return Y(i.originalHash||i.hash)}var J=t=>self.AMP_CONFIG?self.AMP_CONFIG[t]:null,X=("string"==typeof J("cdnProxyRegex")?new RegExp(J("cdnProxyRegex")):J("cdnProxyRegex"))||/^\/\/([a-zA-Z0-9_-]+\.)?cdn\.ampproject\.org$/;function Z(t){if(!self.document||!self.document.head)return null;if(self.location&&X.test(self.location.origin))return null;const i=self.document.head.querySelector(`meta[name="${t}"]`);return i&&i.getAttribute("content")||null}var tt=J("thirdPartyUrl")||"",it=J("thirdPartyFrameHost")||"ampproject.net",st=("string"==typeof J("thirdPartyFrameRegex")?new RegExp(J("thirdPartyFrameRegex")):J("thirdPartyFrameRegex"))||/^d-\d+\.ampproject\.net$/,et=J("cdnUrl")||Z("runtime-host")||"",nt=/^https?:\/\/localhost(:\d+)?$/,rt=J("errorReportingUrl")||"",ht=J("betaErrorReportingUrl")||"-beta",ot=J("localDev")||!1,ut=[/(^|\.)google\.(com?|[a-z]{2}|com?\.[a-z]{2}|cat)$/,/(^|\.)gmail\.(com|dev)$/],lt=J("geoApiUrl")||Z("amp-geo-api"),ct="";function at(t){const i=t||self;return i.__AMP_MODE?i.__AMP_MODE:i.__AMP_MODE=function(t){return{localDev:!1,development:ft(t,Q(t)),esm:!0,test:!1,rtvVersion:dt(t),ssrReady:!1}}(i)}function dt(t){var i;return ct||(ct=(null===(i=t.AMP_CONFIG)||void 0===i?void 0:i.v)||"012309151607000"),ct}function ft(t,i){const s=i||Q(t);return["1","actions","amp","amp4ads","amp4email"].includes(s.development)||!!t.AMP_DEV_MODE}var pt=()=>{},mt=void 0;function _t(t){mt=t}var At=(t,i)=>i.reduce(((t,i)=>`${t}&s[]=${Pt(i)}`),`//web.archive.org/web/20231002074225///log.amp.dev/?v=012309151607000&id=${encodeURIComponent(t)}`),Pt=t=>encodeURIComponent(String(x(t))),gt=t=>parseInt(Q(t).log,10);self.__AMP_LOG=self.__AMP_LOG||{user:null,dev:null,userForEmbed:null};var vt=self.__AMP_LOG,Et=null;function Tt(t,i){if(!Et)throw new Error("failed to call initLogConstructor");return new Et(self,t,i)}function It(t){return vt.user||(vt.user=Mt(V)),function(t,i){return i&&i.ownerDocument.defaultView!=t}(vt.user.win,t)?vt.userForEmbed||(vt.userForEmbed=Mt(S)):vt.user}function Mt(t){return Tt(((t,i)=>i||t>=1?4:2),t)}function Rt(){return vt.dev||(vt.dev=Tt((t=>t>=3?4:t>=2?3:0)))}function yt(t,i,s,e,n,r,h,o,u,l,c){return t}function bt(t,i,s,e,n,r,h,o,u,l,c){return It().assert(t,i,s,e,n,r,h,o,u,l,c)}function wt(t){return(t.ownerDocument||t).defaultView}function Vt(t,i){return t.replace(/^|,/g,`$&${i} `)}function St(t){return CSS.escape(t)}function xt(t){D(/^[\w-]+$/.test(t))}function Ot(t,i){return t.querySelector(Vt(i,":scope"))}function Ct(t,i){return t.closest(i)}function kt(t,i){for(let s=t.lastElementChild;s;s=s.previousElementSibling)if(i(s))return s;return null}function Nt(t,i){return xt(i),Ot(t,`> [${i}]`)}function Dt(t){return!!function(t){let i;return y(t)?i=t:b(t)&&(i=t.tagName),!!i&&i.toLowerCase().startsWith("i-")}(t)||t.nodeType===Node.ELEMENT_NODE&&(L(t),t.hasAttribute("placeholder")||t.hasAttribute("fallback")||t.hasAttribute("overflow"))}var Lt={bubbles:!0,cancelable:!0};function Ut(t,i,s){if(i(t))s();else{const e=new(wt(t).MutationObserver)((()=>{i(t)&&(e.disconnect(),s())}));e.observe(t,{childList:!0})}}function $t(t,i){Ut(t.documentElement,(()=>!!t.body),i)}function Ft(t){return new Promise((i=>$t(t,i)))}function Bt(t){var i;null===(i=t.parentElement)||void 0===i||i.removeChild(t)}function Ht(t){const i=t.isConnected;if(void 0!==i)return i;let s=t;for(;s=jt(s),s.host;)s=s.host;return s.nodeType===Node.DOCUMENT_NODE}function jt(t){if(Node.prototype.getRootNode)return t.getRootNode();let i;for(i=t;i.parentNode&&(!(s=i)||"I-AMPHTML-SHADOW-ROOT"!=s.tagName&&(11!=s.nodeType||"[object ShadowRoot]"!==Object.prototype.toString.call(s)));i=i.parentNode);var s;return i}function zt(t,i){let s=t;do{if(s.nextSibling)return!0}while((s=s.parentNode)&&s!=i);return!1}function Gt(t){try{t.focus()}catch(t){}}function qt(t){return t.parent&&t.parent!=t}function Wt(t,i,s,e){const n=s||{};D(t.ownerDocument);const{bubbles:r,cancelable:h}=e||Lt,o=new MessageEvent(i,{data:n,bubbles:r,cancelable:h});t.dispatchEvent(o)}function Kt(t,i){return i!==t&&t.contains(i)}function Yt(t){return t.hasAttribute("i-amphtml-ssr")}function Qt(t,i){const s=t.head.querySelector("script[nonce]");if(s){const t=s.nonce||s.getAttribute("nonce");i.setAttribute("nonce",null!=t?t:"")}}function Jt(t,i,s,e){return{left:t,top:i,width:s,height:e,bottom:i+e,right:t+s,x:t,y:i}}function Xt(t,i,s){return Jt(t.left-t.width*i,t.top-t.height*s,t.width*(1+2*i),t.height*(1+2*s))}function Zt(t,i,s){return 0==i&&0==s||0==t.width&&0==t.height?t:Jt(t.left+i,t.top+s,t.width,t.height)}function ti(t){return!t.IntersectionObserver||!t.IntersectionObserverEntry||!!t.IntersectionObserver._stub||!function(t){try{return new t.IntersectionObserver((()=>{}),{root:t.document}),!0}catch(t){return!1}}(t)||function(t){return/apple/i.test(t.navigator.vendor)}(t)}var ii=class t{constructor(i,s){this.It=i,this.xt=g({root:null,rootMargin:"0px 0px 0px 0px"},s),this.St=[],this.kt=null,t._upgraders.push(this.Vt.bind(this))}get root(){return this.kt?this.kt.root:this.xt.root||null}get rootMargin(){return this.kt?this.kt.rootMargin:this.xt.rootMargin}get thresholds(){return this.kt?this.kt.thresholds:[].concat(this.xt.threshold||0)}disconnect(){this.kt?this.kt.disconnect():this.St.length=0}takeRecords(){return this.kt?this.kt.takeRecords():[]}observe(t){this.kt?this.kt.observe(t):-1==this.St.indexOf(t)&&this.St.push(t)}unobserve(t){if(this.kt)this.kt.unobserve(t);else{const i=this.St.indexOf(t);-1!=i&&this.St.splice(i,1)}}Vt(t){const i=new t(this.It,this.xt);this.kt=i;for(const t of this.St)i.observe(t);this.St.length=0}};ii._upgraders=[];var{hasOwnProperty:si}=Object.prototype;function ei(t){return!t.ResizeObserver||!!t.ResizeObserver._stub}var ni,ri=class t{constructor(i){this.It=i,this.St=[],this.kt=null,t._upgraders.push(this.Vt.bind(this))}disconnect(){this.kt?this.kt.disconnect():this.St.length=0}observe(t){this.kt?this.kt.observe(t):-1==this.St.indexOf(t)&&this.St.push(t)}unobserve(t){if(this.kt)this.kt.unobserve(t);else{const i=this.St.indexOf(t);-1!=i&&this.St.splice(i,1)}}Vt(t){const i=new t(this.It);this.kt=i;for(const t of this.St)i.observe(t);this.St.length=0}};ri._upgraders=[],self.document&&(ti(ni=self)&&function(t){if(!t.IntersectionObserver)return t.IntersectionObserver=ii,void(t.IntersectionObserver._stub=ii);const i=t.IntersectionObserver;t.IntersectionObserver=function(t,i){return function(s,e){var n;return 9===(null==e||null===(n=e.root)||void 0===n?void 0:n.nodeType)?new i(s,e):new t(s,e)}}(t.IntersectionObserver,ii),t.IntersectionObserver._stub=ii,t.IntersectionObserver._native=i}(ni),function(t){t.IntersectionObserverEntry&&!("isIntersecting"in t.IntersectionObserverEntry.prototype)&&Object.defineProperty(t.IntersectionObserverEntry.prototype,"isIntersecting",{enumerable:!0,configurable:!0,get(){return this.intersectionRatio>0}})}(ni),function(t){ei(t)&&function(t){t.ResizeObserver||(t.ResizeObserver=ri,t.ResizeObserver._stub=ri)}(t)}(self),function(t){t.AbortController||(Object.defineProperty(t,"AbortController",{configurable:!0,enumerable:!1,writable:!0,value:i}),Object.defineProperty(t,"AbortSignal",{configurable:!0,enumerable:!1,writable:!0,value:s}))}(self));var hi="cls",oi="clstu",ui="cls-1",li="pc",ci="inp",ai="building",di="mounting",fi="loading",pi="complete",mi="error";function _i(t){return t.readyState!=fi&&"uninitialized"!=t.readyState}function Ai(t){return t.readyState==pi}function Pi(t,i){gi(t,_i,i)}function gi(t,i,s){let e=i(t);if(e)s(t);else{const n=()=>{i(t)&&(e||(e=!0,s(t)),t.removeEventListener("readystatechange",n))};t.addEventListener("readystatechange",n)}}function vi(t){return new Promise((i=>{Pi(t,i)}))}function Ei(t){return new Promise((i=>{gi(t,Ai,i)}))}var Ti=["amp-mustache"],Ii=/^\/\/([a-zA-Z0-9_-]+\.)?cdn\.ampproject\.org(\/.*)?$/;function Mi(t){if(!t)return null;const i=t.match(/^(.*)\/(.*)-([0-9.]+|latest)(\.max)?\.(?:js|mjs)(?:\?ssr-css=[0|1])?$/i),s=i?i[2]:void 0,e=i?i[3]:void 0;return s&&e?{extensionId:s,extensionVersion:e}:null}function Ri(t,i,s){const e=t.document.createElement("script");e.async=!0,bi(i)?s="":e.setAttribute(Ti.indexOf(i)>=0?"custom-template":"custom-element",i),e.setAttribute("data-script",i),e.setAttribute("i-amphtml-inserted",""),e.setAttribute("type","module"),Qt(t.document,e),e.setAttribute("crossorigin","anonymous");const n=function(t,i,s,e){return`${et}/rtv/${at().rtvVersion}/v0/${i}${s?"-"+s:""}.mjs`}(t.location,i,s);let r={createScriptURL:function(t){return Ii.test(t)||"fonts.googleapis.com"===new URL(t).host?t:""}};return self.trustedTypes&&self.trustedTypes.createPolicy&&(r=self.trustedTypes.createPolicy("extension-script#createExtensionScript",r)),e.src=r.createScriptURL(n),e}function yi(t,i,s,e,n=!0){const r=":not([i-amphtml-loaded-new-version])"+(n?"":":not([i-amphtml-inserted])"),h=t.document.head.querySelectorAll(`script[src*="/${i}-"]${r}`),o=[];for(let t=0;t{})),{obj:null,promise:i,resolve:e,reject:s,context:null,ctor:null}}(),e[i].promise}function Hi(t,i){const s=ji(t)[i];return s?s.promise?s.promise:($i(t,i),s.promise=Promise.resolve(s.obj)):null}function ji(t){let i=t.__AMP_SERVICES;return i||(i=t.__AMP_SERVICES={}),i}function zi(t){return"function"==typeof t.dispose}function Gi(t,i){if(zi(i))try{(function(t){return yt(zi(t)),t})(i).dispose()}catch(i){Rt().error("SERVICE","failed to dispose service",t,i)}}function qi(t,i){const s=t.__AMP_SERVICES&&t.__AMP_SERVICES[i];return!(!s||!s.ctor)}function Wi(t,i,s,e){return Ki(t,i,s,e).then((t=>function(t,i,s){return bt(t,"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.",i,s,s,s)}(t,i,s)))}function Ki(t,i,s,e){const n=ki(t,i);if(n)return n;const r=Li(t);return r.whenExtensionsKnown().then((()=>{const t=r.getExtensionVersion(s);return t?Si(r.win,"extensions").waitForExtension(s,t):null})).then((s=>s?e?ki(t,i):Ci(t,i):null))}var Yi,Qi=t=>Ki(t,"access","amp-access"),Ji=t=>Ki(t,"subscriptions","amp-subscriptions"),Xi=t=>Oi(t,"action"),Zi=t=>Wi(t,"activity","amp-analytics"),ts=t=>Li(t),is=t=>Si(t,"ampdoc"),ss=t=>function(t,i,s){const e=Oi(t,i);return e?Promise.resolve(e):Ki(t,i,"amp-bind")}(t,"bind"),es=t=>Ci(t,"cid"),ns=t=>Si(t,"crypto"),rs=t=>xi(t,"documentInfo").get(),hs=t=>Si(t,"extensions"),os=t=>xi(t,"history"),us=t=>xi(t,"mutator"),ls=t=>Si(t,"performance"),cs=t=>Si(t,"platform"),as=t=>Si(t,"preconnect"),ds=t=>xi(t,"resources"),fs=t=>Ci(t,"storage"),ps=t=>function(t,i){return $i(t,"timer")}(t),ms=t=>Oi(t,"url-replace"),_s=t=>Ki(t,"geo","amp-geo",!0),As=t=>Oi(t,"url"),Ps=t=>xi(t,"viewer"),gs=t=>Si(t,"vsync"),vs=t=>xi(t,"viewport"),Es=t=>Si(t,"xhr"),Ts={PRERENDER:"prerender",PREVIEW:"preview",VISIBLE:"visible",HIDDEN:"hidden",PAUSED:"paused",INACTIVE:"inactive"},Is=class{constructor(){this.un=null}add(t){return this.un||(this.un=[]),this.un.push(t),()=>{this.remove(t)}}remove(t){this.un&&M(this.un,t)}removeAll(){this.un&&(this.un.length=0)}fire(t){if(this.un)for(const i of this.un.slice())i(t)}getHandlerCount(){var t,i;return null!==(t=null===(i=this.un)||void 0===i?void 0:i.length)&&void 0!==t?t:0}},Ms=class{constructor(){this.hn=p(),this.ti=null}get(t){const i=this.hn[t];return null==i?null:i}whenSignal(t){var i;let s=null===(i=this.ti)||void 0===i?void 0:i[t];if(!s){const i=this.hn[t];s=null!=i?{promise:"number"==typeof i?Promise.resolve(i):Promise.reject(i)}:new n,this.ti||(this.ti=p()),this.ti[t]=s}return s.promise}signal(t,i){var s;if(null!=this.hn[t])return;const e=null!=i?i:Date.now();this.hn[t]=e;const n=null===(s=this.ti)||void 0===s?void 0:s[t];null!=n&&n.resolve&&(n.resolve(e),n.resolve=void 0,n.reject=void 0)}rejectSignal(t,i){var s;if(null!=this.hn[t])return;this.hn[t]=i;const e=null===(s=this.ti)||void 0===s?void 0:s[t];null!=e&&e.reject&&(e.reject(i),e.promise.catch((()=>{})),e.resolve=void 0,e.reject=void 0)}reset(t){var i;this.hn[t]&&delete this.hn[t];const s=null===(i=this.ti)||void 0===i?void 0:i[t];s&&!s.resolve&&delete this.ti[t]}},Rs=["Webkit","webkit","Moz","moz","ms","O","o"],ys={"getPropertyPriority":()=>"","getPropertyValue":()=>""};function bs(t){const i=t.replace(/[A-Z]/g,(t=>"-"+t.toLowerCase()));return Rs.some((t=>i.startsWith(t+"-")))?`-${i}`:i}function ws(t,i,s){if(i.startsWith("--"))return i;Yi||(Yi=p());let e=Yi[i];if(!e||s){if(e=i,void 0===t[i]){const s=function(t){return t.charAt(0).toUpperCase()+t.slice(1)}(i),n=function(t,i){for(let s=0;sLs(this.win.document,r))),this.ai()}dispose(){(function(t){const i=ji(t);for(const t in i){if(!Object.prototype.hasOwnProperty.call(i,t))continue;const s=i[t];s.sharedInstance||(s.obj?Gi(t,s.obj):s.promise&&s.promise.then((i=>Gi(t,i))))}})(this),this.ci.forEach((t=>t()))}isSingleDoc(){return yt(null)}getParent(){return this.si}signals(){return this.ei}getParam(t){const i=this.ni[t];return null==i?null:i}getMeta(){return this.ri||(this.ri=p(),this.win.document.head.querySelectorAll("meta[name]").forEach((t=>{const i=t.getAttribute("name"),s=t.getAttribute("content");i&&null!==s&&void 0===this.ri[i]&&(this.ri[i]=s)}))),p(this.ri)}getMetaByName(t){if(!t)return null;const i=this.getMeta()[t];return void 0!==i?i:null}setMetaByName(t,i){yt(null)}declaresExtension(t,i){const s=this.hi[t];return!(!s||i&&s!==i)}declareExtension(t,i){yt(!this.hi[t]||this.hi[t]===i),this.hi[t]=i}getExtensionVersion(t){return this.hi[t]||null}setExtensionsKnown(){this.ei.signal(Bs)}whenExtensionsKnown(){return this.ei.whenSignal(Bs)}getRootNode(){return yt(null)}getHeadNode(){}isBodyAvailable(){return yt(!1)}getBody(){return yt(null)}waitForBodyOpen(){return yt(null)}isReady(){return yt(null)}whenReady(){return yt(null)}getUrl(){return yt(null)}getElementById(t){return this.getRootNode().getElementById(t)}contains(t){return this.getRootNode().contains(t)}overrideVisibilityState(t){this.oi!=t&&(this.oi=t,this.ai())}ai(){const t=Ns(this.win.document);let i,s=Ts.VISIBLE;for(let t=this.si;t;t=t.getParent())if(t.getVisibilityState()!=Ts.VISIBLE){s=t.getVisibilityState();break}const e=this.oi||Ts.VISIBLE;if(i=e==Ts.VISIBLE&&s==Ts.VISIBLE&&t==Ts.VISIBLE?Ts.VISIBLE:t==Ts.HIDDEN&&e==Ts.PAUSED?t:e==Ts.PAUSED||e==Ts.INACTIVE?e:s==Ts.PAUSED||s==Ts.INACTIVE?s:e==Ts.PREVIEW||t==Ts.PREVIEW||s==Ts.PREVIEW?Ts.PREVIEW:e==Ts.PRERENDER||t==Ts.PRERENDER||s==Ts.PRERENDER?Ts.PRERENDER:Ts.HIDDEN,this.D!=i){if(i==Ts.VISIBLE){var n;const{performance:t}=this.win;let i=Math.floor(null!==(n=t.timeOrigin)&&void 0!==n?n:t.timing.navigationStart);null!=this.D&&(i+=Math.floor(t.now())),this.li=i,this.ei.signal(Hs,i),this.ei.signal(js,i)}else this.ei.reset(js);i==Ts.PREVIEW&&this.ei.signal(zs),this.D=i,this.ui.fire()}}whenFirstPreviewedOrVisible(){return Promise.race([this.whenFirstPreviewed(),this.whenFirstVisible()])}whenFirstPreviewed(){return this.ei.whenSignal(zs).then((()=>{}))}whenFirstVisible(){return this.ei.whenSignal(Hs).then((()=>{}))}whenNextVisible(){return this.ei.whenSignal(js).then((()=>{}))}getFirstVisibleTime(){return this.ei.get(Hs)}getLastVisibleTime(){return this.li}getVisibilityState(){return yt(this.D)}isPreview(){return this.D==Ts.PREVIEW}isVisible(){return this.D==Ts.VISIBLE}hasBeenVisible(){return null!=this.getLastVisibleTime()}onVisibilityChanged(t){return this.ui.add(t)}registerSingleton(t){return!this.ii[t]&&(this.ii[t]=!0,!0)}},qs=class extends Gs{constructor(t,i){super(t,null,i),this.di=this.win.document.body?Promise.resolve(this.win.document.body):Ft(this.win.document).then((()=>this.getBody())),this.fi=vi(this.win.document)}isSingleDoc(){return!0}getRootNode(){return this.win.document}getUrl(){return $s.getLocation(this.win).href}getHeadNode(){return this.win.document.head}isBodyAvailable(){return!!this.win.document.body}getBody(){return this.win.document.body}waitForBodyOpen(){return this.di}isReady(){return _i(this.win.document)}whenReady(){return this.fi}},Ws=class extends Gs{constructor(t,i,s,e){super(t,null,e),this.pi=i,this.mi=s,this._i=null;const r=new n;this.di=r.promise,this.Ai=r.resolve,this.gi=!1;const h=new n;this.fi=h.promise,this.Pi=h.resolve}isSingleDoc(){return!1}getRootNode(){return this.mi}getUrl(){return this.pi}getHeadNode(){return this.mi}isBodyAvailable(){return!!this._i}getBody(){return this._i}setBody(t){yt(!this._i),this._i=t,this.Ai(t),this.Ai=void 0}waitForBodyOpen(){return this.di}isReady(){return this.gi}setReady(){yt(!this.gi),this.gi=!0,this.Pi(),this.Pi=void 0}whenReady(){return this.fi}getMeta(){return p(this.ri)}setMetaByName(t,i){yt(t),this.ri||(this.ri=p()),this.ri[t]=i}},Ks=class extends Gs{constructor(t,i,s,e){super(t,s,e),this.pi=i,this.di=this.win.document.body?Promise.resolve(this.win.document.body):Ft(this.win.document).then((()=>this.getBody())),this.gi=!1;const r=new n;this.fi=r.promise,this.Pi=r.resolve}isSingleDoc(){return!1}getRootNode(){return this.win.document}getUrl(){return this.pi}getHeadNode(){return this.win.document.head}isBodyAvailable(){return!!this.win.document.body}getBody(){return this.win.document.body}waitForBodyOpen(){return this.di}isReady(){return this.gi}whenReady(){return this.fi}setReady(){yt(!this.gi),this.gi=!0,this.Pi(),this.Pi=void 0}};function Ys(t,i){const s=p();return i?Object.assign(s,i):(t.name&&0==t.name.indexOf(Fs)&&Object.assign(s,Y(t.name.substring(Fs.length))),t.location&&t.location.hash&&Object.assign(s,Y(t.location.hash))),s}var Qs="nodisplay",Js="fixed",Xs="fixed-height",Zs="responsive",te="container",ie="fill",se="flex-item",ee="fluid",ne="intrinsic",re=/^amp\-(video|.+player)|AMP-BRIGHTCOVE|AMP-DAILYMOTION|AMP-YOUTUBE|AMP-VIMEO|AMP-IMA-VIDEO/i;function he(t){if("nodisplay"===(i=t)||"fixed"===i||"fixed-height"===i||"responsive"===i||"container"===i||"fill"===i||"flex-item"===i||"fluid"===i||"intrinsic"===i)return t;var i}function oe(t){return"i-amphtml-layout-"+t}function ue(t){return t==Js||t==Xs||t==Zs||t==ie||t==se||t==ee||t==ne}function le(t){return"number"==typeof t?t+"px":t&&/^\d+(\.\d+)?(px|em|rem|vh|vw|vmin|vmax|cm|mm|q|in|pc|pt)?$/.test(t)?/^\d+(\.\d+)?$/.test(t)?t+"px":t:void 0}function ce(t){!function(t){F(/^\d+(\.\d+)?(px|em|rem|vh|vw|vmin|vmax|cm|mm|q|in|pc|pt)$/.test(null!=t?t:""),"Invalid length value: %s",t)}(t);const i=/[a-z]+/i.exec(null!=t?t:"");return F(i,"Failed to read units from %s",t),i[0]}function ae(t){const i=parseFloat(t);return w(i)?i:void 0}function de(t,i){t.classList.add("i-amphtml-fill-content"),i&&t.classList.add("i-amphtml-replaced-content")}function fe(t,i,s,e){const n=E(t);for(const t of n){const n=i.getAttribute(t);null!==n?s.setAttribute(t,n):e&&s.removeAttribute(t)}}var pe,me="amp:attached",_e="amp:load-start",Ae="amp:load-end",Pe="ready-upgrade",ge="upgraded",ve="built",Ee="mounted",Te="load-start",Ie="render-start",Me="load-end",Re="unload";function ye(t,i){return[{query:t.matchMedia(i),value:"1"},{query:null,value:""}]}function be(t,i){return i.split(",").map((i=>{if(0==(i=i.replace(/\s+/g," ").trim()).length)return;let s,e,n;if(")"==i.charAt(i.length-1)){let t=1;for(n=i.length-2;n>=0;n--){const s=i.charAt(n);if("("==s?t--:")"==s&&t++,0==t)break}const s=n-1;if(n>0)for(n--;n>=0;n--){const t=i.charAt(n);if(!("%"==t||"-"==t||"_"==t||t>="a"&&t<="z"||t>="A"&&t<="Z"||t>="0"&&t<="9"))break}if(n>=s)return null}else for(n=i.length-2;n>=0;n--){const t=i.charAt(n);if(!("%"==t||"."==t||t>="a"&&t<="z"||t>="A"&&t<="Z"||t>="0"&&t<="9"))break}return n>=0?(s=i.substring(0,n+1).trim(),e=i.substring(n+1).trim()):(e=i,s=void 0),e?{query:s?t.matchMedia(s):null,value:e}:null})).filter(Boolean)}function we(t,i,s){for(let e=0;e'],Oe={"AMP-PIXEL":{width:"0px",height:"0px"},"AMP-ANALYTICS":{width:"1px",height:"1px"},"AMP-AUDIO":null,"AMP-SOCIAL-SHARE":{width:"60px",height:"44px"}};function Ce(t){const i=t.getAttribute("layout"),s=t.getAttribute("width"),e=t.getAttribute("height"),n=t.getAttribute("sizes"),r=t.getAttribute("heights"),h=i?he(i):null;F(void 0!==h,'Invalid "layout" value: %s, %s',i,t);const o=s&&"auto"!=s?le(s):s;F(void 0!==o,'Invalid "width" value: %s, %s',s,t);const u=e&&"fluid"!=e?le(e):e;let l,c,a;if(F(void 0!==u,'Invalid "height" value: %s, %s',e,t),h&&h!=Js&&h!=Xs||o&&u||(d=(d=t.tagName).toUpperCase(),void 0===Oe[d]))l=o,c=u;else{const i=function(t){const i=t.tagName.toUpperCase();if(D(void 0!==Oe[i]),!Oe[i]){const s=t.ownerDocument,e=i.replace(/^AMP\-/,""),n=s.createElement(e);n.controls=!0,xs(n,{position:"absolute",visibility:"hidden"}),s.body.appendChild(n),Oe[i]={width:(n.offsetWidth||1)+"px",height:(n.offsetHeight||1)+"px"},s.body.removeChild(n)}return Oe[i]}(t);l=o||h==Xs?o:i.width,c=u||i.height}var d;return a=h||(l||c?"fluid"==c?ee:!c||l&&"auto"!=l?c&&l&&(n||r)?Zs:Js:Xs:te),a!=Js&&a!=Xs&&a!=Zs&&a!=ne||F(c,'The "height" attribute is missing: %s',t),a==Xs&&F(!l||"auto"==l,'The "width" attribute must be missing or "auto": %s',t),a!=Js&&a!=Zs&&a!=ne||F(l&&"auto"!=l,'The "width" attribute must be present and not "auto": %s',t),a==Zs||a==ne?F(ce(l)==ce(c),'Length units should be the same for "width" and "height": %s, %s, %s',s,e,t):F(null===r,'"heights" attribute must be missing: %s',t),{layout:a,width:l,height:c}}var ke,Ne="amp-experiment-toggles",De="__AMP__EXPERIMENT_TOGGLES";function Le(t,i){return!!$e(t)[i]}function Ue(t,i,s,e){const n=Le(t,i),r=null!=s?s:!n;if(r!=n&&($e(t)[i]=r,!e)){const s=Fe(t);s[i]=r,function(t,i){const s=[];for(const t in i)s.push((!1===i[t]?"-":"")+t);try{var e;null===(e=t.localStorage)||void 0===e||e.setItem(Ne,s.join(","))}catch(t){It().error("EXPERIMENTS","Failed to save experiments to localStorage.")}}(t,s)}return r}function $e(t){var i,s,e,n,r;if(t[De])return t[De];t[De]=p();const h=t[De];D(h);const o=g(g({},null!==(i=t.AMP_CONFIG)&&void 0!==i?i:{}),null!==(s=t.AMP_EXP)&&void 0!==s?s:B((null===(e=t.__AMP_EXP)||void 0===e?void 0:e.textContent)||"{}"));for(const t in o){const i=o[t];"number"==typeof i&&i>=0&&i<=1&&(h[t]=Math.random(){try{return r(t)}catch(t){var i,s;throw null===(i=(s=self).__AMP_REPORT_ERROR)||void 0===i||i.call(s,t),t}};const o=function(){if(void 0!==ke)return ke;ke=!1;try{const t={get capture(){return ke=!0,!1}};self.addEventListener("test-options",null,t),self.removeEventListener("test-options",null,t)}catch(t){}return ke}(),u=!(null==e||!e.capture);return n.addEventListener(i,h,o?e:u),()=>{null==n||n.removeEventListener(i,h,o?e:u),r=null,n=null,h=null}}var He="Failed to load:";function je(t,i,s,e){const n={detail:s};return Object.assign(n,e),new t.CustomEvent(i,n)}function ze(t,i,s,e){return Be(t,i,s,e)}function Ge(t){return t.data}function qe(t,i,s,e){let n=s;const r=Be(t,i,(t=>{try{n(t)}finally{n=null,r()}}),e);return r}function We(t){let i,s;if(function(t){return!!(t.complete||"complete"==t.readyState||Ke(t)&&t.readyState>0||t.document&&"complete"==t.document.readyState)}(t))return Promise.resolve(t);const e=Ke(t);return e&&t.__AMP_MEDIA_LOAD_FAILURE_SRC===t.currentSrc?Promise.reject(t):new Promise(((n,r)=>{if(i=e?qe(t,"loadedmetadata",n,{capture:!0}):qe(t,"load",n),!t.tagName)return;let h=t;if(e&&!t.hasAttribute("src")&&(h=kt(t,(t=>"SOURCE"===t.tagName)),!h))return r(new Error("Media has no source."));s=qe(h,"error",r)})).then((()=>(s&&s(),t)),(()=>{i&&i(),function(t){Ke(t)&&(t.__AMP_MEDIA_LOAD_FAILURE_SRC=t.currentSrc||!0);let i=t;throw i&&i.src&&(i=i.src),It().createError(He,i)}(t)}))}function Ke(t){return"AUDIO"===t.tagName||"VIDEO"===t.tagName}var Ye={"amp-dynamic-css-classes":"[custom-element=amp-dynamic-css-classes]","variant":"amp-experiment"};function Qe(t){const i=t.document;return yt(i.body),Object.keys(Ye).filter((t=>i.querySelector(Ye[t])))}function Je(t,i,s){if(i[s])return i[s];const e=t.querySelector(`style[${s}], link[${s}]`);return e?(i[s]=e,e):null}var Xe=!1;function Ze(t){yt(t.defaultView),Xe||(Xe=!0,tn(t))}function tn(t){xs(t.body,{opacity:1,visibility:"visible","animation":"none"})}function sn(t,i){const s=t.styleSheets;for(let t=0;t"string"==typeof t?on(t):t;function on(t,i){return en||(en=self.document.createElement("a")),un(en,t)}function un(t,i,s){return t.href="",new URL(i,t.href)}function ln(t,i,s){if(!i)return t;const e=t.split("#",2),n=e[0].split("?",2);let r=n[0]+(n[1]?s?`?${i}&${n[1]}`:`?${n[1]}&${i}`:`?${i}`);return r+=e[1]?`#${e[1]}`:"",r}function cn(t,i){return`${encodeURIComponent(t)}=${encodeURIComponent(i)}`}function an(t,i){return ln(t,dn(i))}function dn(t){const i=[];for(const s in t){let e=t[s];if(null!=e){e=E(e);for(let t=0;t0,"Expected a . in origin %s",n),i.splice(1,"s"==e?3:2),n+i.join("/")+gn(t.search)+(t.hash||"")}function En(t){return on(vn(t)).origin}function Tn(t,i){return i=hn(i),new URL(t,i.href).toString()}function In(t,i){return Mn(i),function(t,i,s,e){return ln(t,cn("__amp_source_origin",s),void 0)}(i,0,En(t.location.href))}function Mn(t){const i=Y(on(t).search);bt(!(rn in i),"Source origin is not allowed in %s",t)}var Rn="CANCELLED",yn="BLOCK_BY_CONSENT",bn=self.__AMP_ERRORS||[];self.__AMP_ERRORS=bn;var wn=function(t){return(wn=function(t){const i=function(t){let i=0;return()=>{let t=Math.pow(1.5,i++);return t+=function(t,i){let s=t*(i=i||.3)*Math.random();return Math.random()>.5&&(s*=-1),s}(t),1e3*t}}();return t=>setTimeout(t,i())}())(t)};function Vn(t,i){try{let s;if(t)if(void 0!==t.message)t=h(t),s=!0;else{const i=t;(t=new Error(function(t){try{return JSON.stringify(t)}catch(i){return String(t)}}(i))).origError=i}else t=new Error("Unknown error");if(t.reported)return t;if(t.reported=!0,t.messageArray){const i=I(t.messageArray,(t=>null==t?void 0:t.tagName));i>-1&&(t.associatedElement=t.messageArray[i])}const e=i||t.associatedElement;if(e&&e.classList&&e.classList.add("i-amphtml-error"),self.console&&(O(t.message)||!t.expected)){const i=console.error||console.log;t.messageArray?i.apply(console,t.messageArray):e?i.call(console,t.message,e):i.call(console,t.message)}e&&e.dispatchCustomEventForTesting&&e.dispatchCustomEventForTesting("amp:error",t.message),On.call(self,void 0,void 0,void 0,void 0,t)}catch(t){setTimeout((function(){throw t}))}return t}function Sn(){return new Error(Rn)}function xn(t){return!!t&&("string"==typeof t?t.startsWith(yn):"string"==typeof t.message&&t.message.startsWith(yn))}function On(t,i,s,n,r){!this||!this.document||r&&r.expected||Ze(this.document);let h=!1;try{h=function(t){if(!t.document)return!1;const i=t.document.querySelectorAll("script[src]");for(let t=0;t.01)return;const o=function(t,i,s,e,n,r){t=function(t,i){return i&&(t=i.message?i.message:String(i)),t||(t="Unknown error"),t}(t,n);let h=!(!n||!n.expected);if(/_reported_/.test(t))return;if(t==Rn)return;const o=!(self&&self.window),u=Math.random();if((function(t){return-1!=t.indexOf(He)}(t)||"Script error."==t||o)&&(h=!0,u>.001))return;const l=O(t);if(l&&u>.1)return;const c=Object.create(null);c.v=at().rtvVersion,c.noAmp=r?"1":"0",c.m=t.replace(V,""),c.a=l?"1":"0",c.ex=h?"1":"0",c.dw=o?"1":"0";let a="1p";if(a="esm",c.esm="1",c.rt="esm",c.ca=null!==(f=self.AMP_CONFIG)&&void 0!==f&&f.canary?"1":"0",c.bt=(null===(d=self.AMP_CONFIG)||void 0===d?void 0:d.type)||"unknown",self.location.ancestorOrigins&&self.location.ancestorOrigins[0]&&(c.or=self.location.ancestorOrigins[0]),self.viewerState&&(c.vs=self.viewerState),self.parent&&self.parent!=self&&(c.iem="1"),self.AMP&&self.AMP.viewer){const t=self.AMP.viewer.getResolvedViewerUrl(),i=self.AMP.viewer.maybeGetMessagingOrigin();t&&(c.rvu=t),i&&(c.mso=i)}var d,f;const p=[],m=self[De]||null;for(const t in m){const i=m[t];p.push(`${t}=${i?"1":"0"}`)}var _,A,P;return c.exps=p.join(","),n?(c.el=(null===(_=n.associatedElement)||void 0===_?void 0:_.tagName)||"u",n.args&&(c.args=JSON.stringify(n.args)),l||n.ignoreStack||!n.stack||(c.s=n.stack),n.message&&(n.message+=" _reported_")):(c.f=i||"",c.l=s||"",c.c=e||""),c.r=self.document?self.document.referrer:"",c.ae=bn.join(","),c.fr=self.location.originalHash||self.location.hash,"production"===c.bt&&(c.pt="1"),P=t,(A=bn).length>=25&&A.splice(0,A.length-25+1),A.push(P),c}(t,i,s,n,r,h);o&&wn((()=>{try{return function(t,i){return i.pt&&Math.random()<.9?e():function(t,i){const s=is(t);if(!s.isSingleDoc())return Promise.resolve(!1);const e=s.getSingleDoc();if(!e.getRootNode().documentElement.hasAttribute("report-errors-to-viewer"))return Promise.resolve(!1);const n=Ps(e);return n.hasCapability("errorReporter")?n.isTrustedViewer().then((t=>{return!!t&&(n.sendMessage("error",{"m":(s=i).m,"a":s.a,"s":s.s,"el":s.el,"ex":s.ex,"v":s.v,"pt":s.pt}),!0);var s})):Promise.resolve(!1)}(t,i).then((t=>{if(!t){const t=new XMLHttpRequest;t.open("POST",Math.random()<.1?ht:rt,!0),t.send(JSON.stringify(i))}}))}(this,o).catch((()=>{}))}catch(t){}}))}var Cn="Resource",kn=class t{static forElement(i){return yt(t.forElementOptional(i))}static forElementOptional(t){return t.__AMP__RESOURCE}static setOwner(i,s){yt(s.contains(i)),t.forElementOptional(i)&&t.forElementOptional(i).updateOwner(s),i.__AMP__OWNER=s;const e=i.getElementsByClassName("i-amphtml-element");for(let i=0;i{this.Ri=!1,this.Mi=1,this.element.signals().signal("res-built")}),(t=>{throw this.maybeReportErrorOnBuildFailure(t),this.Ri=!1,this.element.signals().rejectSignal("res-built",t),t})))}maybeReportErrorOnBuildFailure(t){xn(t)||Rt().error(Cn,"failed to build:",this.debugid,t)}changeSize(t,i,s){this.element.applySize(t,i,s),this.requestMeasure()}overflowCallback(t,i,s,e){t&&(this.Di={height:i,width:s,margins:e}),this.element.overflowCallback(t,i,s,e)}resetPendingChangeSize(){this.Di=void 0}getPendingChangeSize(){return this.Di}getUpgradeDelayMs(){return this.element.getUpgradeDelayMs()}measure(){if(this.Ti&&this.element.parentElement&&this.element.parentElement.tagName.startsWith("AMP-")&&!("__AMP__RESOURCE"in this.element.parentElement))return;if(!this.element.ownerDocument||!this.element.ownerDocument.defaultView)return void(this.Mi=1);this.Ci=!1;const t=this.xi;this.Fi();const i=this.xi,s=(n=i,!((e=t).width==n.width&&e.height===n.height));var e,n;(1==this.Mi||t.top!=i.top||s)&&this.element.isUpgraded()&&(1==this.Mi?this.Mi=2:4!=this.Mi&&5!=this.Mi||!this.element.isRelayoutNeeded()||(this.Mi=2)),this.hasBeenMeasured()||(this.Oi=i),this.element.updateLayoutBox(i,s)}ensureMeasured(){return this.hasBeenMeasured()?e():gs(this.hostWin).measure((()=>this.measure()))}Fi(){const t=vs(this.element);this.xi=t.getLayoutRect(this.element);let i=!1;if(t.supportsPositionFixed()&&this.isDisplayed()){const{win:s}=this.Ei.getAmpdoc(),{body:e}=s.document;for(let n=this.element;n&&n!=e;n=n.offsetParent){if(n.isAlwaysFixed&&n.isAlwaysFixed()){i=!0;break}if(t.isDeclaredFixed(n)&&"fixed"==ks(s,n).position){i=!0;break}}}this.Si=i,i&&(this.xi=Zt(this.xi,-t.getScrollLeft(),-t.getScrollTop()))}completeCollapse(){Os(this.element,!1),this.xi=Jt(this.xi.left,this.xi.top,0,0),this.Si=!1,this.element.updateLayoutBox(this.getLayoutBox());const t=this.getOwner();t&&t.collapsedCallback(this.element)}completeExpand(){Os(this.element,!0),this.requestMeasure()}isMeasureRequested(){return this.Ci}hasBeenMeasured(){return!!this.Oi}requestMeasure(){this.Ci=!0}getLayoutSize(){return function(t){const{height:i,width:s}=t;return{width:s,height:i}}(this.xi)}getLayoutBox(){if(!this.Si)return this.xi;const t=vs(this.element);return Zt(this.xi,t.getScrollLeft(),t.getScrollTop())}getInitialLayoutBox(){return this.Oi||this.xi}isDisplayed(){if(!this.element.ownerDocument||!this.element.ownerDocument.defaultView)return!1;const t=this.element.getLayout()==ee,i=this.getLayoutBox(),s=i.height>0&&i.width>0;return t||s}isFixed(){return this.Si}overlaps(t){return s=t,(i=this.getLayoutBox()).top<=s.bottom&&s.top<=i.bottom&&i.left<=s.right&&s.left<=i.right;var i,s}prerenderAllowed(){return this.element.prerenderAllowed()}previewAllowed(){return this.element.previewAllowed()}isBuildRenderBlocking(){return this.element.isBuildRenderBlocking()}whenWithinViewport(t){if(yt(!1!==t),!this.isLayoutPending()||!0===t)return e();const i=t,s=String(i);return this.ki&&this.ki[s]?this.ki[s].promise:this.isWithinViewportRatio(i)?e():(this.ki=this.ki||{},this.ki[s]=new n,this.ki[s].promise)}Bi(){if(!this.ki)return;const t=this.getDistanceViewportRatio();for(const i in this.ki)this.isWithinViewportRatio(parseFloat(i),t)&&(this.ki[i].resolve(),delete this.ki[i])}getDistanceViewportRatio(){const t=vs(this.element).getRect(),i=this.getLayoutBox(),s=this.Ei.getScrollDirection();let e=1,n=0;if(t.righti.right)return{distance:!1};if(t.bottomi.bottom))return{distance:!0};n=t.top-i.bottom,1==s&&(e=2)}return{distance:n,scrollPenalty:e,viewportHeight:t.height}}isWithinViewportRatio(t,i){if("boolean"==typeof t)return t;const{distance:s,scrollPenalty:e,viewportHeight:n}=i||this.getDistanceViewportRatio();return"boolean"==typeof s?s:s0&&!this.element.isRelayoutNeeded())return this.Mi=4,e();this.wi++,this.Mi=3,this.bi=new AbortController;const{signal:t}=this.bi,i=new Promise(((i,s)=>{gs(this.hostWin).mutate((()=>{let e;try{e=this.element.layoutCallback(t)}catch(t){s(t)}Promise.resolve(e).then(i,s)})),t.onabort=()=>s(Sn())})).then((()=>this.Hi(!0,t)),(i=>this.Hi(!1,t,i)));return this.Ni=i}Hi(t,i,s){if(this.bi=null,i.aborted){const t=Rt().createError("layoutComplete race");throw t.associatedElement=this.element,Rt().expectedError(Cn,t),Sn()}if(this.Ui&&(this.Ui(),this.Ui=null),this.Ni=null,this.Mi=t?4:5,this.Vi=s,!t)return Promise.reject(s)}isLayoutPending(){return 4!=this.Mi&&5!=this.Mi}loadedOnce(){return this.element.R1()?this.element.whenLoaded():this.Li}isInViewport(){return this.$i&&this.Bi(),this.$i}setInViewport(t){this.$i=t}unlayout(){0!=this.Mi&&1!=this.Mi&&2!=this.Mi&&(this.bi&&(this.bi.abort(),this.bi=null),this.setInViewport(!1),this.element.unlayoutCallback()&&(this.element.togglePlaceholder(!0),this.Mi=1,this.wi=0,this.Ni=null))}getTaskId(t){return this.debugid+"#"+t}pause(){this.element.pause()}pauseOnRemove(){this.element.pause()}resume(){this.element.resume()}unload(){this.element.unmount()}disconnect(){delete this.element.__AMP__RESOURCE,this.element.disconnect(!0)}},Nn="ready-scan",Dn="scheduler",Ln="250% 31.25%";function Un(t){return Vi(t,Dn,class{constructor(t){this.ji=t;const{win:i}=t;this.zi=new i.IntersectionObserver((t=>this.Gi(t)),{root:qt(i)?i.document:null,rootMargin:Ln}),this.qi=new Map,this.Wi=new Map,this.Ki=[],this.Yi=!1,t.whenReady().then((()=>this.Ji())),this.Qi=t.onVisibilityChanged((()=>this.Xi()))}dispose(){this.zi.disconnect(),this.Wi.clear(),this.Qi&&(this.Qi(),this.Qi=null)}scheduleAsap(t){this.Wi.set(t,{asap:!0,isIntersecting:!1}),this.Zi(t)}schedule(t){this.Wi.has(t)||(t.deferredMount()?(this.Wi.set(t,{asap:!1,isIntersecting:!1}),this.zi.observe(t),this.qi.size>0&&this.qi.forEach(((i,s)=>{Kt(s,t)&&i.observe(t)}))):this.Wi.set(t,{asap:!1,isIntersecting:!0}),this.Zi(t))}unschedule(t){this.Wi.has(t)&&(this.Wi.delete(t),this.zi.unobserve(t),this.qi.size>0&&this.qi.forEach((i=>{i.unobserve(t)})),this.Ki&&(M(this.Ki,t),this.Ji()))}setContainer(t,i){if(this.qi.has(t))return;const{win:s}=this.ji,e=new s.IntersectionObserver((t=>this.Gi(t)),{root:i||t,rootMargin:Ln});this.qi.set(t,e),this.Wi.forEach((({asap:i},s)=>{!i&&Kt(t,s)&&e.observe(s)}))}removeContainer(t){const i=this.qi.get(t);i&&(i.disconnect(),this.qi.delete(t))}ts(){if(this.ji.isReady()&&!this.Yi){this.Yi=!0;const{win:t}=this.ji;t.setTimeout((()=>{this.ji.signals().signal(Nn)}),50)}}Xi(){const t=this.ji.getVisibilityState();t!=Ts.VISIBLE&&t!=Ts.HIDDEN&&t!=Ts.PRERENDER&&t!=Ts.PREVIEW||this.Wi.forEach(((t,i)=>this.ss(i)))}Zi(t){const i=this.Ki;i?(i.includes(t)||i.push(t),this.Ji()):this.ss(t)}Ji(){const t=this.ji.isReady(),i=this.Ki;if(i)for(let s=0;st.mountInternal()))}}),xi(t,Dn)}var $n=class{constructor(){this.es=[]}peek(){const t=this.length;return t?this.es[t-1].item:null}enqueue(t,i){if(isNaN(i))throw new Error("Priority must not be NaN.");const s=this.ns(i);this.es.splice(s,0,{item:t,priority:i})}ns(t){let i=-1,s=0,e=this.length;for(;s<=e&&(i=Math.floor((s+e)/2),i!==this.length);)if(this.es[i].priority0&&this.es[i-1].priority>=t))break;e=i-1}return i}forEach(t){let i=this.length;for(;i--;)t(this.es[i].item)}dequeue(){const t=this.es.pop();return t?t.item:null}get length(){return this.es.length}},Fn=/nochunking=1/.test(self.location.hash),Bn=e();function Hn(t){return Vi(t,"chunk",Kn),xi(t,"chunk")}function jn(t,i,s){if(Fn)return void Bn.then(i);const e=Hn(t.documentElement||t);e.runForStartup(i),s&&e.runForStartup((()=>{e.rs=!0}))}function zn(t,i,s){Fn?Bn.then(i):Hn(t).run(i,s)}var Gn="not_run",qn=class{constructor(t){this.state=Gn,this.hs=t}os(t){if("run"!=this.state){this.state="run";try{this.hs(t)}catch(t){throw this.us(t),t}}}ls(){return this.hs.displayName||this.hs.name}us(t){}cs(){return!1}ds(){return!1}},Wn=class extends qn{constructor(t,i,s){super(t),this.fs=s}us(t){Ze(self.document)}cs(){return this.ps()}ds(){return this.fs._s}ps(){return this.fs.ampdoc.isVisible()}},Kn=class{constructor(t){var i;this.ampdoc=t,this.i=t.win,this.As=new $n,this.gs=this.Ps.bind(this),this.vs=0,this.Es=!(!this.i.navigator.scheduling||!this.i.navigator.scheduling.isInputPending),this.Ts=!1,this.rs=this.i.document.documentElement.hasAttribute("i-amphtml-no-boilerplate"),this.i.addEventListener("message",(t=>{"amp-macro-task"==Ge(t)&&this.Ps(null)})),this._s=!1,(i=t,Ci(i,"viewer")).then((()=>{this._s=!0})),t.onVisibilityChanged((()=>{t.isVisible()&&this.Rs()}))}run(t,i){const s=new qn(t);this.Is(s,i)}runForStartup(t){const i=new Wn(t,this.i,this);this.Is(i,Number.POSITIVE_INFINITY)}Is(t,i){this.As.enqueue(t,i),this.Rs()}Ms(t){let i=this.As.peek();for(;i&&i.state!==Gn;)this.As.dequeue(),i=this.As.peek();return i&&t&&this.As.dequeue(),i}Ps(t){const i=this.Ms(!0);if(!i)return this.Ts=!1,this.vs=0,!1;let s;try{s=Date.now(),i.os(t)}finally{Bn.then().then().then().then().then().then().then().then().then((()=>{this.Ts=!1,this.vs+=Date.now()-s,this.Rs()}))}return!0}ys(t){if(this.rs&&(this.Es?this.i.navigator.scheduling.isInputPending():this.vs>5))return this.vs=0,void this.ws();Bn.then((()=>{this.gs(t)}))}Rs(){if(this.Ts)return;const t=this.Ms();return t?t.cs()?(this.Ts=!0,void this.ys(null)):void(t.ds()&&this.i.requestIdleCallback?function(t,i,s,e){const n=Date.now();t.requestIdleCallback((function i(s){if(s.timeRemaining()<15){const r=2e3-(Date.now()-n);r<=0||s.didTimeout?e(s):t.requestIdleCallback(i,{timeout:r})}else e(s)}),{timeout:2e3})}(this.i,0,0,this.gs):this.ws()):void 0}ws(){this.i.postMessage("amp-macro-task","*")}},Yn="activate",Qn=class{static R1(){return!1}static deferredMount(t){return!0}static prerenderAllowed(t){return!1}static previewAllowed(t){return this.prerenderAllowed(t)}static usesLoading(t){return!1}static createLoaderLogoCallback(t){return{}}static getBuildPriority(t){return 0}static getPreconnects(t){return null}static requiresShadowDom(){return!1}constructor(t){this.element=t,this.win=wt(t),this.actionMap_=null,this.defaultActionAlias_=null}signals(){return this.element.signals()}getDefaultActionAlias(){return this.defaultActionAlias_}getLayoutPriority(){return 0}updateLayoutPriority(t){this.element.getResources().updateLayoutPriority(this.element,t)}getLayout(){return this.element.getLayout()}getLayoutBox(){return this.element.getLayoutBox()}getLayoutSize(){return this.element.getLayoutSize()}getAmpDoc(){return this.element.getAmpDoc()}getVsync(){return gs(this.win)}getConsentPolicy(){let t=null;return this.element.hasAttribute("data-block-on-consent")&&(t=this.element.getAttribute("data-block-on-consent")||"default"),t}isLayoutSupported(t){return t==Qs}isAlwaysFixed(){return!1}upgradeCallback(){return null}buildCallback(){}preconnectCallback(t){}attachedCallback(){}detachedCallback(){}setAsContainer(t){this.element.setAsContainerInternal(t)}removeAsContainer(){this.element.removeAsContainerInternal()}isBuildRenderBlocking(){return!1}createPlaceholderCallback(){return null}renderOutsideViewport(){return"inabox"==at(this.win).runtime||3}idleRenderOutsideViewport(){return!1}ensureLoaded(){}setReadyState(t,i){this.element.setReadyStateInternal(t,i)}mountCallback(t){}unmountCallback(){}isRelayoutNeeded(){return!1}layoutCallback(){return e()}firstLayoutCompleted(){this.togglePlaceholder(!1)}pauseCallback(){}resumeCallback(){}unlayoutCallback(){return!1}unlayoutOnPause(){return!1}reconstructWhenReparented(){return!0}loadPromise(t){return We(t)}registerAction(t,i,s=2){Jn(this),this.actionMap_[t]={handler:i,minTrust:s}}registerDefaultAction(t,i="activate",s=2){yt(!this.defaultActionAlias_),this.registerAction(i,t,s),this.defaultActionAlias_=i}executeAction(t,i){let{method:s}=t;s===Yn&&(s=this.defaultActionAlias_||s),Jn(this);const e=this.actionMap_[s],{tagName:n}=this.element;bt(e,`Method not found: ${s} in ${n}`);const{handler:r,minTrust:h}=e;if(t.satisfiesTrust(h))return r(t)}forwardEvents(t,i){const s=(v(t)?t:[t]).map((t=>ze(i,t,(i=>{Wt(this.element,t,Ge(i)||{})}))));return()=>s.forEach((t=>t()))}getPlaceholder(){return this.element.getPlaceholder()}togglePlaceholder(t){this.element.togglePlaceholder(t)}getFallback(){return this.element.getFallback()}toggleFallback(t){this.element.toggleFallback(t)}toggleLoading(t,i=!1){this.element.toggleLoading(t,i)}getOverflowElement(){return this.element.getOverflowElement()}renderStarted(){this.element.renderStarted()}getViewport(){return vs(this.getAmpDoc())}getIntersectionElementLayoutBox(){return this.getLayoutBox()}collapse(){us(this.getAmpDoc()).collapseElement(this.element)}attemptCollapse(){return us(this.getAmpDoc()).attemptCollapse(this.element)}forceChangeHeight(t){us(this.getAmpDoc()).forceChangeSize(this.element,t,void 0)}attemptChangeHeight(t){return us(this.getAmpDoc()).requestChangeSize(this.element,t,void 0)}attemptChangeSize(t,i,s){return us(this.getAmpDoc()).requestChangeSize(this.element,t,i,void 0,s)}measureElement(t){return us(this.getAmpDoc()).measureElement(t)}mutateElement(t,i){return this.measureMutateElement(null,t,i)}measureMutateElement(t,i,s){return us(this.getAmpDoc()).measureMutateElement(s||this.element,t,i)}mutateElementSkipRemeasure(t){return us(this.getAmpDoc()).mutateElement(this.element,t,!0)}collapsedCallback(t){}expand(){us(this.getAmpDoc()).expandElement(this.element)}mutatedAttributesCallback(t){}onLayoutMeasure(){}user(){return It(this.element)}getApi(){return this}};function Jn(t){t.actionMap_||(t.actionMap_=t.win.Object.create(null))}var Xn,Zn=class extends Qn{},tr=Date.now(),ir={bubbles:!1},sr=()=>!0,er=[],nr=new Set;function rr(t,i){const s=function(t,i){if(t.__AMP_BASE_CE_CLASS)return t.__AMP_BASE_CE_CLASS;const s=t.HTMLElement;return t.__AMP_BASE_CE_CLASS=class extends s{constructor(){super(),this.createdCallback()}createdCallback(){this.bs=!1,this.Vs=!1,this.Ss=null,this.xs=!1,this.Os=null,this.Cs=null,this.ks="upgrading",this.everAttached=!1,this.ji=null,this.Ei=null,this.Ns=Qs,this.wi=0,this.Ds=!1,this.warnOnMissingOverflow=!0,this.sizerElement=void 0,this.Ls=void 0,this.layoutScheduleTime=void 0;const i=this;let s=t.__AMP_EXTENDED_ELEMENTS&&t.__AMP_EXTENDED_ELEMENTS[this.localName];this.Us=s===Zn?null:s||null,this.Us||er.push(this),this.$s=null,this.Fs=1,this.Bs=0,this.Hs=void 0,this.js=void 0,this.ei=new Ms,this.Us&&this.ei.signal(Pe);const e=function(t,i){return qi(t=Ni(t),i)?$i(t,i):null}(t,"performance");this.zs=e&&e.isPerformanceTrackingOn(),this.Gs=null,i.__AMP_UPG_RES&&(i.__AMP_UPG_RES(i),delete i.__AMP_UPG_RES,delete i.__AMP_UPG_PRM)}get readyState(){return this.ks}signals(){return this.ei}getAmpDoc(){return yt(this.ji),this.ji}getResources(){return yt(this.Ei),this.Ei}isUpgraded(){return 2==this.Fs}whenUpgraded(){return this.ei.whenSignal(ge)}upgrade(t){this.js||1==this.Fs&&(this.Us=t,this.ei.signal(Pe),this.everAttached&&this.qs())}markUnresolved(){this.Us||this.classList.add("amp-unresolved","i-amphtml-unresolved")}getUpgradeDelayMs(){return this.Bs}Ws(i,s){this.$s=i,this.Bs=t.Date.now()-s,this.Fs=2,this.setReadyStateInternal(ai),this.classList.remove("amp-unresolved","i-amphtml-unresolved"),this.Ks(),this.dispatchCustomEventForTesting(me),this.R1()||this.getResources().upgraded(this),this.ei.signal(ge)}Ks(){this.Ns!=Qs&&this.$s&&!this.$s.isLayoutSupported(this.Ns)&&(bt(this.getAttribute("layout"),"The element did not specify a layout attribute. Check //amp.dev/documentation/guides-and-tutorials/develop/style_and_layout/control_layout and the respective element documentation for details."),bt(!1,`Layout not supported: ${this.Ns}`))}getBuildPriority(){return this.Us?this.Us.getBuildPriority(this):3}getLayoutPriority(){return this.$s?this.$s.getLayoutPriority():3}getDefaultActionAlias(){return yt(this.isUpgraded()),this.$s.getDefaultActionAlias()}isBuilding(){return!!this.Ss}isBuilt(){return this.bs}whenBuilt(){return this.ei.whenSignal(ve)}buildInternal(){if(or(this),yt(this.Us),this.Ss)return this.Ss;this.setReadyStateInternal(ai);const t=this.Ys();this.Js();const i=t.then((()=>{const t=this.Qs(),i=t?null:this.Xs();if(t||i)return(this,Ki(this,"consentPolicyManager","amp-consent")).then((s=>!s||(t?s.whenPolicyUnblock(t):s.whenPurposesUnblock(i)))).then((t=>{if(!t)throw new Error(yn)}))})).then((()=>yt(this.$s).buildCallback()));return this.Ss=i.then((()=>{if(this.bs=!0,this.classList.add("i-amphtml-built"),this.classList.remove("i-amphtml-notbuilt","amp-notbuilt"),this.ei.signal(ve),this.R1()?this.setReadyStateInternal(this.ks!=ai?this.ks:di):(this.setReadyStateInternal(fi),this.preconnect(!1)),this.Vs&&this.L(),this.Hs&&ps(wt(this)).delay(this.Zs.bind(this),1),!this.getPlaceholder()){const t=this.createPlaceholder();t&&this.appendChild(t)}}),(t=>{throw this.ei.rejectSignal(ve,t),this.R1()&&this.setReadyStateInternal(mi,t),xn(t)||Vn(t,this),t}))}build(){return this.Ss?this.Ss:this.ei.whenSignal(Pe).then((()=>(this.R1()&&Un(this.getAmpDoc()).scheduleAsap(this),this.whenBuilt())))}mountInternal(){if(this.Os)return this.Os;this.Cs=this.Cs||new AbortController;const{signal:t}=this.Cs;return this.Os=this.buildInternal().then((()=>{if(yt(this.R1()),t.aborted)return;this.setReadyStateInternal(this.ks!=di?this.ks:this.Us.usesLoading(this)?fi:di),this.xs=!0;const i=this.$s.mountCallback(t);return!!i&&i.then(sr)})).then((i=>{if(this.Cs=null,t.aborted)throw Sn();this.ei.signal(Ee),this.Us.usesLoading(this)&&!i||this.setReadyStateInternal(pi)})).catch((t=>{var i;throw this.Cs=null,(i=t)&&("string"==typeof i?i.startsWith(Rn):"string"==typeof i.message&&i.message.startsWith(Rn))?this.Os=null:(this.ei.rejectSignal(Ee,t),this.setReadyStateInternal(mi,t)),t}))}mount(){if(this.Os)return this.Os;this.Cs=this.Cs||new AbortController;const{signal:t}=this.Cs;return this.ei.whenSignal(Pe).then((()=>{if(!this.R1())return this.whenBuilt();if(t.aborted)throw Sn();return Un(this.getAmpDoc()).scheduleAsap(this),this.whenMounted()}))}unmount(){this.Vs&&this.pause(),this.R1()?(this.Cs&&(this.Cs.abort(),this.Cs=null),Un(this.getAmpDoc()).unschedule(this),this.xs&&this.$s.unmountCallback(),this.xs=!1,this.Os=null,this.ie(),this.Vs&&this.qs(!0)):this.re()}whenMounted(){return this.ei.whenSignal(Ee)}whenLoaded(){return this.ei.whenSignal(Me)}ensureLoaded(t){return this.mount().then((()=>{if(this.R1())return this.Us.usesLoading(this)&&this.$s.ensureLoaded(),this.whenLoaded();const i=this.he();return i.whenBuilt().then((()=>{if(4!=i.getState()&&((3!=i.getState()||i.isMeasureRequested())&&i.measure(),i.isDisplayed()))return this.getResources().scheduleLayoutOrPreload(i,!0,t,!0),this.whenLoaded()}))}))}setAsContainerInternal(t){Un(this.getAmpDoc()).setContainer(this,t)}removeAsContainerInternal(){Un(this.getAmpDoc()).removeContainer(this)}setReadyStateInternal(t,i){if(t!==this.ks&&(this.ks=t,this.R1()))switch(t){case fi:return this.ei.signal(Te),this.ei.reset(Re),this.ei.reset(Me),this.classList.add("i-amphtml-layout"),this.toggleLoading(!0),void this.dispatchCustomEventForTesting(_e);case pi:return this.ei.signal(Te),this.ei.signal(Me),this.ei.reset(Re),this.classList.add("i-amphtml-layout"),this.toggleLoading(!1),Wt(this,"load",null,ir),void this.dispatchCustomEventForTesting(Ae);case mi:return this.ei.rejectSignal(Me,i),this.toggleLoading(!1),void Wt(this,"error",i,ir)}}preconnect(t){yt(this.isUpgraded()),t?this.$s.preconnectCallback(t):jn(this.getAmpDoc(),(()=>{this.ownerDocument&&this.ownerDocument.defaultView&&this.$s.preconnectCallback(t)}))}R1(){return!!this.Us&&this.Us.R1()}deferredMount(){return!!this.Us&&this.Us.deferredMount(this)}isAlwaysFixed(){return!!this.$s&&this.$s.isAlwaysFixed()}updateLayoutBox(t,i=!1){this.isBuilt()&&this.onMeasure(i)}onMeasure(){yt(this.isBuilt());try{this.$s.onLayoutMeasure()}catch(t){Vn(t,this)}}Js(){var t;return void 0!==this.sizerElement||this.Ns!==Zs&&this.Ns!==ne||(this.sizerElement=this.querySelector("i-amphtml-sizer"),null===(t=this.sizerElement)||void 0===t||t.setAttribute("slot","i-amphtml-svc")),this.sizerElement||null}oe(t){if(this.Ns!==Zs)if(this.Ns!==ne);else{const i=t.querySelector(".i-amphtml-intrinsic-sizer");if(!i)return;i.setAttribute("src","")}else Ss(t,"paddingTop","0")}ue(){const t=this.hasAttribute("media")||this.hasAttribute("sizes")&&!this.hasAttribute("disable-inline-width")||this.hasAttribute("heights"),i=!!this.Gs,s=this.ownerDocument.defaultView;t!=i&&s&&(t?(this.Gs=new class{constructor(t,i){this.i=t,this.It=i,this.le={},this.ce=null}start(){this.ce=this.le,this.le={}}resolveMatchQuery(t){return"1"===this.ae(t,ye,"1")}resolveListQuery(t){return this.ae(t,be,"")}complete(){for(const t in this.ce)t in this.le||we(this.ce[t],this.It,!1);this.ce=null}dispose(){for(const t in this.le)we(this.le[t],this.It,!1);this.le={}}ae(t,i,s){if(!t.trim())return s;let e=this.le[t];return e||(D(this.ce),e=this.ce[t]),e||(e=i(this.i,t),we(e,this.It,!0)),this.le[t]=e,function(t){for(let i=0;ithis.de())),this.de()):this.fe())}fe(){this.Gs&&(this.Gs.dispose(),this.Gs=null)}de(){const t=this.Gs;if(!t)return;t.start();const i=this.getAttribute("media")||null,s=!i||t.resolveMatchQuery(i);this.classList.toggle("i-amphtml-hidden-by-media-query",!s);const e=this.hasAttribute("disable-inline-width")?null:this.getAttribute("sizes");e&&Ss(this,"width",t.resolveListQuery(e));const n=this.Ns===Zs?this.getAttribute("heights"):null;if(n){const i=this.Js();i&&Ss(i,"paddingTop",t.resolveListQuery(n))}t.complete(),this.he().requestMeasure()}applySize(t,i,s){const e=this.Js();e&&(this.sizerElement=null,this.oe(e),this.pe((()=>{e&&Bt(e)}))),void 0!==t&&Ss(this,"height",t,"px"),void 0!==i&&Ss(this,"width",i,"px"),s&&(null!=s.top&&Ss(this,"marginTop",s.top,"px"),null!=s.right&&Ss(this,"marginRight",s.right,"px"),null!=s.bottom&&Ss(this,"marginBottom",s.bottom,"px"),null!=s.left&&Ss(this,"marginLeft",s.left,"px")),this.me()&&this._e(),Wt(this,"amp:size-changed")}connectedCallback(){if(function(){if(void 0===Xn){const t=self.document.createElement("template");Xn="content"in t}return Xn}()||void 0!==this.js||(this.js=!!Ct(this,"template")),!this.js&&!this.Vs&&Ht(this)){if(this.Vs=!0,this.everAttached||this.classList.add("i-amphtml-element","i-amphtml-notbuilt","amp-notbuilt"),!this.ji){const t=wt(this),s=is(t).getAmpDoc(this);this.ji=s,i(s,this,this.Us)}if(this.Ei||(this.Ei=ds(this.ji)),this.getResources().add(this),this.everAttached){const t=this.reconstructWhenReparented();t&&this.ie(),this.isUpgraded()&&(t&&!this.R1()&&this.getResources().upgraded(this),this.L(),this.dispatchCustomEventForTesting(me)),this.Us&&this.R1()&&this.qs()}else{this.everAttached=!0;try{this.Ns=function(t){const i=t.getAttribute("i-amphtml-layout");if(i){const e=he(i);var s;return D(e),e!=Zs&&e!=ne||!t.firstElementChild?e==Qs&&Os(t,!1):(t.sizerElement=t.querySelector("i-amphtml-sizer")||void 0,null===(s=t.sizerElement)||void 0===s||s.setAttribute("slot","i-amphtml-svc")),e}const{height:e,layout:n,width:r}=Ce(t);if(t.classList.add(oe(n)),ue(n)&&t.classList.add("i-amphtml-layout-size-defined"),n==Qs)Os(t,!1);else if(n==Js)xs(t,{width:U(r),height:U(e)});else if(n==Xs)Ss(t,"height",U(e));else if(n==Zs){const i=t.ownerDocument.createElement("i-amphtml-sizer");i.setAttribute("slot","i-amphtml-svc");const s=ae(e),n=ae(r);$(s),$(n),xs(i,{paddingTop:s/n*100+"%"}),t.insertBefore(i,t.firstChild),t.sizerElement=i}else if(n==ne){const i=Ve(t)(xe),s=i.firstElementChild;L(s),s.setAttribute("src",`data:image/svg+xml;charset=utf-8,`),t.insertBefore(i,t.firstChild),t.sizerElement=i}else n==ie||n==te||(n==se?(r&&Ss(t,"width",r),e&&Ss(t,"height",e)):n==ee&&(t.classList.add("i-amphtml-layout-awaiting-size"),r&&Ss(t,"width",r),Ss(t,"height",0)));return t.setAttribute("i-amphtml-layout",n),n}(this),this.ue()}catch(t){Vn(t,this)}this.Us?this.qs():(nr.has("*")||nr.has(this.tagName.toLowerCase()))&&this.markUnresolved(),this.isUpgraded()||this.dispatchCustomEventForTesting("amp:stubbed")}this.toggleLoading(!0)}}me(){return this.classList.contains("i-amphtml-layout-awaiting-size")}_e(){this.classList.remove("i-amphtml-layout-awaiting-size")}qs(t){if(this.R1()){if(!this.Os)if(Un(this.getAmpDoc()).schedule(this),this.classList.remove("amp-unresolved","i-amphtml-unresolved"),this.Ss)this.setReadyStateInternal(this.Us&&this.Us.usesLoading(this)?fi:di);else if(this.setReadyStateInternal(ai),!t){const t=this.Us.getPreconnects(this);if(t&&t.length>0){const i=this.getAmpDoc();jn(i,(()=>{const{win:s}=i;if(!s)return;const e=as(s);t.forEach((t=>e.url(i,t,!1)))}))}}}else this.Ae()}Ae(){if(this.js)return;if(1!=this.Fs)return;const i=new(yt(this.Us))(this);this.Fs=4;const s=t.Date.now(),e=i.upgradeCallback();if(e){if("function"==typeof e.then)return e.then((t=>{this.Ws(t||i,s)})).catch((t=>{this.Fs=3,l(t)}));this.Ws(e,s)}else this.Ws(i,s)}disconnectedCallback(){this.disconnect(!1)}L(){this.bs&&this.$s.attachedCallback()}disconnect(t){!this.js&&this.Vs&&(!t&&Ht(this)||(t&&this.classList.remove("i-amphtml-element"),this.Vs=!1,this.getResources().remove(this),this.$s&&this.$s.detachedCallback(),this.R1()&&this.unmount(),this.toggleLoading(!1),this.fe()))}dispatchCustomEventForTesting(t,i){}prerenderAllowed(){return!this.hasAttribute("noprerender")&&!!this.Us&&this.Us.prerenderAllowed(this)}previewAllowed(){return!!this.Us&&this.Us.previewAllowed(this)}isBuildRenderBlocking(){return!!this.$s&&this.$s.isBuildRenderBlocking()}createPlaceholder(){return this.$s?this.$s.createPlaceholderCallback():null}createLoaderLogo(){return this.Us?this.Us.createLoaderLogoCallback(this):{}}renderOutsideViewport(){return!!this.$s&&this.$s.renderOutsideViewport()}idleRenderOutsideViewport(){return!!this.$s&&this.$s.idleRenderOutsideViewport()}getLayoutBox(){return this.he().getLayoutBox()}getLayoutSize(){return this.he().getLayoutSize()}getOwner(){return this.he().getOwner()}getIntersectionChangeEntry(){const t=this.$s?this.$s.getIntersectionElementLayoutBox():this.getLayoutBox(),i=this.getOwner(),s=vs(this.getAmpDoc()).getRect();return function(t,i,s){const e=function(t){let i=-1/0,s=1/0,e=-1/0,n=1/0;for(let t=0;tthis.$s))}Ys(){return this.ei.whenSignal(Pe).then((()=>(this.Ae(),this.whenUpgraded())))}getApi(){return this.getImpl().then((t=>t.getApi()))}getLayout(){return this.Ns}layoutCallback(t){if(or(this),yt(this.isBuilt()),t.aborted)return Promise.reject(Sn());this.dispatchCustomEventForTesting(_e);const i=0==this.wi;this.ei.reset(Re),i&&this.ei.signal(Te),this.toggleLoading(!0);const s=r((()=>this.$s.layoutCallback()));return this.preconnect(!0),this.classList.add("i-amphtml-layout"),s.then((()=>{if(t.aborted)throw Sn();i&&this.ei.signal(Me),this.setReadyStateInternal(pi),this.wi++,this.toggleLoading(!1),this.Ds||(this.$s.firstLayoutCompleted(),this.Ds=!0,this.dispatchCustomEventForTesting(Ae))}),(s=>{if(t.aborted)throw Sn();throw i&&this.ei.rejectSignal(Me,s),this.setReadyStateInternal(mi,s),this.wi++,this.toggleLoading(!1),s}))}pause(){this.isBuilt()&&(this.$s.pauseCallback(),!this.R1()&&this.$s.unlayoutOnPause()&&this.re())}resume(){this.isBuilt()&&this.$s.resumeCallback()}unlayoutCallback(){if(or(this),!this.isBuilt())return!1;this.ei.signal(Re);const t=this.$s.unlayoutCallback();return t&&this.ie(),this.dispatchCustomEventForTesting("amp:unload"),t}re(){this.he().unlayout(),this.Vs&&this.Ei&&this.Ei.schedulePass()}ie(){this.wi=0,this.Ds=!1,this.ei.reset(Ee),this.ei.reset(Ie),this.ei.reset(Te),this.ei.reset(Me),this.ei.reset("ini-load")}reconstructWhenReparented(){return!!this.$s&&this.$s.reconstructWhenReparented()}collapse(){this.$s&&this.$s.collapse()}collapsedCallback(t){this.$s&&this.$s.collapsedCallback(t)}expand(){this.$s&&this.$s.expand()}mutatedAttributesCallback(t){this.$s?this.$s.mutatedAttributesCallback(t):this.R1()&&Un(this).scheduleAsap(this)}enqueAction(t){or(this),this.isBuilt()?this.ge(t,!1):(void 0===this.Hs&&(this.Hs=[]),yt(this.Hs).push(t),this.build())}Zs(){if(!this.Hs)return;const t=yt(this.Hs);this.Hs=null,t.forEach((t=>{this.ge(t,!0)}))}ge(t,i){try{this.$s.executeAction(t,i)}catch(i){l("Action execution failed:",i,t.node.tagName,t.method)}}Qs(){let t=this.getAttribute("data-block-on-consent");if(null===t){if(!function(t){let i=t.getAmpDoc().getMetaByName("amp-consent-blocking");return!!i&&(i=i.toUpperCase().replace(/\s+/g,""),i.split(",").includes(t.tagName))}(this))return null;t="default",this.setAttribute("data-block-on-consent",t)}return""==t||"default"==t?yt(this.$s).getConsentPolicy():t}Xs(){var t;const i=this.getAttribute("data-block-on-consent-purposes")||null;return null==i||null===(t=i.replace(/\s+/g,""))||void 0===t?void 0:t.split(",")}getPlaceholder(){return kt(this,(t=>t.hasAttribute("placeholder")&&!hr(t)))}togglePlaceholder(t){if(or(this),t){const t=this.getPlaceholder();t&&t.classList.remove("amp-hidden")}else{const t=(this,xt("placeholder"),"> [placeholder]",this.querySelectorAll(Vt("> [placeholder]",":scope")));for(let i=0;i0||this.ei.get(Ie);return!(this.Ns==Qs||this.hasAttribute("noloading")||i&&!t||!function(t){const i=t.tagName.toUpperCase();return"AMP-AD"===(s=i)||"AMP-ANIM"===s||"AMP-EMBED"===s||"AMP-FACEBOOK"===s||"AMP-FACEBOOK-COMMENTS"===s||"AMP-FACEBOOK-PAGE"===s||"AMP-GOOGLE-DOCUMENT-EMBED"===s||"AMP-IFRAME"===s||"AMP-IMG"===s||"AMP-INSTAGRAM"===s||"AMP-LIST"===s||"AMP-PINTEREST"===s||"AMP-PLAYBUZZ"===s||"AMP-RENDER"===s||"AMP-TIKTOK"===s||"AMP-TWITTER"===s||function(t){return"AMP-VIDEO"!=t&&re.test(t)}(i);var s}(this)||Dt(this))}toggleLoading(t,i=!1){if(!this.ownerDocument||!this.ownerDocument.defaultView)return;const s=Oi(this.getAmpDoc(),"loadingIndicator");s&&((t=t&&this.Pe(i))?s.track(this):s.untrack(this))}getOverflowElement(){return void 0===this.Ls&&(this.Ls=Nt(this,"overflow"),this.Ls&&(this.Ls.hasAttribute("tabindex")||this.Ls.setAttribute("tabindex","0"),this.Ls.hasAttribute("role")||this.Ls.setAttribute("role","button"))),this.Ls}overflowCallback(t,i,s){this.getOverflowElement(),this.Ls?(this.Ls.classList.toggle("amp-visible",t),this.Ls.onclick=t?()=>{const t=us(this.getAmpDoc());t.forceChangeSize(this,i,s),t.mutateElement(this,(()=>{this.overflowCallback(!1,i,s)}))}:null):t&&this.warnOnMissingOverflow}pe(t,i,s=!1){this.ji?us(this.getAmpDoc()).mutateElement(i||this,t,s):t()}},t.__AMP_BASE_CE_CLASS}(t,i);class e extends s{adoptedCallback(){Object.getPrototypeOf(this)!==n&&Object.setPrototypeOf(this,n)}}const n=e.prototype;return e}function hr(t){return"placeholder"in t}function or(t){yt(!t.js)}function ur(t){nr.add(t||"*");for(const i of er)null!=t&&i.tagName.toLowerCase()!==t||i.markUnresolved()}var lr=new WeakMap;function cr(t){return t.__AMP_EXTENDED_ELEMENTS||(t.__AMP_EXTENDED_ELEMENTS={}),t.__AMP_EXTENDED_ELEMENTS}function ar(t,i,s){const e=cr(t);if(e[i]){if(e[i]!=s){bt(e[i]==Zn,"%s is already registered. The script tag for %s is likely included twice in the page.",i,i),e[i]=s;for(let e=0;e{t.declareExtension(i,s),e.addEventListener("error",(()=>ur(i))),pr(t.win,i)})),t.isBodyAvailable()&&t.setExtensionsKnown()}function pr(t,i){cr(t)[i]||_r(t,i,Zn)}function mr(t,i,s){_r(i,s,cr(t)[s]||Zn)}function _r(t,i,s){cr(t)[i]=s;const e=rr(t,Ar);t.customElements.define(i,e)}function Ar(t,i,s){lr.has(t)||(lr.set(t,!0),fr(t));const e=i.localName;s||t.declaresExtension(e)||hs(t.win).installExtensionForDoc(t,e,"0.1")}var Pr="amp-img",gr=["alt","aria-describedby","aria-label","aria-labelledby","crossorigin","referrerpolicy","title","importance","sizes","srcset","src"],vr=class t extends Qn{static R1(){return!1}static prerenderAllowed(){return!0}static usesLoading(){return!0}static getPreconnects(t){const i=t.getAttribute("src");if(i)return[i];const s=t.getAttribute("srcset");if(s){const t=/\S+/.exec(s);if(t)return[t[0]]}return null}constructor(t){super(t),this.ve=!0,this.Ee=null,this.Te=null,this.Re=null,this.Ie=0}mutatedAttributesCallback(i){if(this.Ee){const s=gr.filter((t=>void 0!==i[t]));i.src&&!i.srcset&&this.element.hasAttribute("srcset")&&(this.element.removeAttribute("srcset"),s.push("srcset"),this.user().warn(Pr,"Removed [srcset] since [src] was mutated. Recommend adding a [srcset] binding to support responsive images.",this.element)),fe(s,this.element,this.Ee,!0),this.propagateDataset(this.Ee),t.R1()&&!this.Ee.complete&&this.setReadyState(fi)}}preconnectCallback(t){const i=this.element.getAttribute("src");if(i)as(this.win).url(this.getAmpDoc(),i,t);else{const i=this.element.getAttribute("srcset");if(!i)return;const s=/\S+/.exec(i);s&&as(this.win).url(this.getAmpDoc(),s[0],t)}}isLayoutSupported(t){return ue(t)}Me(){if(this.Ee)return this.Ee;this.ve=!this.element.hasAttribute("fallback");const t=Yt(this.element);var i,s;return t&&(this.Ee=Ot(this.element,"> img:not([placeholder])")),this.Ee=this.Ee||new Image,this.Ee.setAttribute("decoding","async"),this.element.id&&this.Ee.setAttribute("amp-img-id",this.element.id),"img"==this.element.getAttribute("role")&&(this.element.removeAttribute("role"),this.user().error(Pr,"Setting role=img on amp-img elements breaks screen readers please just set alt or ARIA attributes, they will be correctly propagated for the underlying element.")),this.ye(!0),fe(gr,this.element,this.Ee),this.propagateDataset(this.Ee),de(this.Ee,!0),i=this.element,s=this.Ee,i.hasAttribute("object-fit")&&Ss(s,"object-fit",i.getAttribute("object-fit")),i.hasAttribute("object-position")&&Ss(s,"object-position",i.getAttribute("object-position")),t||this.element.appendChild(this.Ee),this.Ee}ye(t){if(!this.Ee)return;if(this.element.hasAttribute("i-amphtml-ssr"))return;if(this.element.hasAttribute("sizes")||this.Ee.hasAttribute("sizes"))return;const i=this.element.getAttribute("srcset");if(!i||/[0-9]+x(?:,|$)/.test(i))return;const{width:s}=this.element.getLayoutSize();if(!this.we(s))return;const e=this.getViewport().getWidth(),n=`(max-width: ${e}px) ${s}px, `;let r=s+"px";if(this.getLayout()!==Js){const t=Math.round(100*s/e);r=Math.max(t,100)+"vw"}const h=n+r;t?this.Ee.setAttribute("sizes",h):this.mutateElement((()=>{this.Ee.setAttribute("sizes",h)})),this.Ie=s}we(t){return!this.Ee.hasAttribute("sizes")||t>this.Ie}reconstructWhenReparented(){return!1}mountCallback(){const t=!!this.Ee,i=this.Me();t||(ze(i,"load",(()=>{this.setReadyState(pi),this.firstLayoutCompleted(),this.be()})),ze(i,"error",(t=>{this.setReadyState(mi,t),this.Ve()}))),i.complete?(this.setReadyState(pi),this.firstLayoutCompleted(),this.be()):this.setReadyState(fi)}unmountCallback(){const t=this.Ee;t&&!t.complete&&(t.src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=",Bt(t),this.Ee=null)}ensureLoaded(){this.Ee.loading="eager"}layoutCallback(){this.Me();const t=this.Ee;this.Te=ze(t,"load",(()=>this.be())),this.Re=ze(t,"error",(()=>this.Ve()));const{width:i}=this.element.getLayoutSize();return i<=0?e():this.loadPromise(t)}unlayoutCallback(){if(t.R1())return;this.Re&&(this.Re(),this.Re=null),this.Te&&(this.Te(),this.Te=null);const i=this.Ee;return i&&!i.complete&&(i.src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=",Bt(i),this.Ee=null),!0}firstLayoutCompleted(){const t=this.getPlaceholder();t&&t.classList.contains("i-amphtml-blurry-placeholder")?Vs(t,{"opacity":0}):this.togglePlaceholder(!1)}be(){!this.ve&&this.Ee.classList.contains("i-amphtml-ghost")&&(this.Ee.classList.remove("i-amphtml-ghost"),this.toggleFallback(!1))}Ve(){this.ve&&(this.Ee.classList.add("i-amphtml-ghost"),this.toggleFallback(!0),this.togglePlaceholder(!1),this.ve=!1)}propagateDataset(t){for(const i in t.dataset)i in this.element.dataset||delete t.dataset[i];for(const i in this.element.dataset)i.startsWith("ampBind")&&"ampBind"!==i||t.dataset[i]!==this.element.dataset[i]&&(t.dataset[i]=this.element.dataset[i])}},Er=class extends Qn{static prerenderAllowed(){return!0}isLayoutSupported(t){return t==te||ue(t)}buildCallback(){!function(t){if(Yt(t))return;const i=function(t){var i;return he(null!==(i=t.getAttribute("layout"))&&void 0!==i?i:"")||Ce(t).layout}(t);if(i==te)return;const s=t.ownerDocument.createElement("div");de(s),function(t){return function(t,i){const s=[];for(let i=t.firstChild;i;i=i.nextSibling)!Dt(i)&&s.push(i);return s}(t)}(t).forEach((t=>{s.appendChild(t)})),t.appendChild(s)}(this.element)}};function Tr(t,i,s=!1,e){const n=new($s.getImage(t));s&&(n.referrerPolicy="no-referrer");let r=0;var h;return null!=e&&((null===(h=t.document.featurePolicy)||void 0===h?void 0:h.allowedFeatures().includes("attribution-reporting"))?(r=6,e=Ir(t,r)(e),n.attributionSrc=e):r=5),i=Ir(t,r)(i),n.src=i,n}function Ir(t,i){const s={"ATTRIBUTION_REPORTING_STATUS":()=>i},e=ms(t.document),n={"ATTRIBUTION_REPORTING_STATUS":!0};return t=>e.expandUrlSync(t,s,n)}var Mr="amp-pixel",Rr=class extends Qn{constructor(t){super(t),this.Se=null}isLayoutSupported(t){return!0}buildCallback(){this.element.setAttribute("aria-hidden","true"),this.xe=this.element.getAttribute("referrerpolicy"),this.xe&&bt("no-referrer"==this.xe,`${Mr}: invalid "referrerpolicy" value "${this.xe}". Only "no-referrer" is supported`),this.element.hasAttribute("i-amphtml-ssr")&&this.element.querySelector("img")||this.getAmpDoc().whenFirstVisible().then(this.Oe.bind(this))}Oe(){if(this.Se)return Rt().error(Mr,"duplicate pixel"),this.Se;this.Se=ps(this.win).promise(1).then((()=>{const t=this.element.getAttribute("src");if(t)return ms(this.element).expandUrlAsync(this.Ce(t)).then((t=>{if(this.win)return function(t,i,s,e){return s&&"no-referrer"!==s&&It().error("pixel","Unsupported referrerPolicy: %s",s),"no-referrer"===s?function(t,i,s){if("referrerPolicy"in Image.prototype)return Tr(t,i,!0,s);{const s=(e={"src":"about:blank","style":"display:none"},function(t,i){for(const s in i)t.setAttribute(s,i[s]);return t}(t.document.createElement("iframe"),e));return s.onload=()=>{Tr(s.contentWindow,i)},t.document.body.appendChild(s),s}var e}(t,i,e):Tr(t,i,!1,e)}(this.win,t,this.xe,this.element.getAttribute("attributionsrc"))}))}))}Ce(t){return bt(/^(https\:\/\/|\/\/)/i.test(t),'The src attribute must start with "//" or "//". Invalid value: '+t),t}},yr=class{constructor(t,i,s){this.ke=ps(t),this.Ne=i,this.De=s||0,this.Le=-1,this.Ue=0,this.$e=!1,this.Fe=()=>{this.Be()}}isPending(){return-1!=this.Le}schedule(t){let i=t||this.De;this.$e&&i<10&&(i=10);const s=Date.now()+i;return(!this.isPending()||s-this.Ue<-10)&&(this.cancel(),this.Ue=s,this.Le=this.ke.delay(this.Fe,i),!0)}Be(){this.Le=-1,this.Ue=0,this.$e=!0,this.Ne(),this.$e=!1}cancel(){this.isPending()&&(this.ke.cancel(this.Le),this.Le=-1)}};function br(t,i){const s=i.documentElement;return t.some((t=>s.hasAttribute(t)))}function wr(t){return br(["⚡4email","amp4email"],t)}function Vr(t){return br(["⚡","amp"],t)}var Sr="Action",xr="__AMP_ACTION_MAP__"+Math.random(),Or="__AMP_ACTION_QUEUE__",Cr="__AMP_ACTION_HANDLER__",kr={"form":["submit","clear"]},Nr=[{tagOrTarget:"AMP",method:"setState"},{tagOrTarget:"*",method:"focus"},{tagOrTarget:"*",method:"hide"},{tagOrTarget:"*",method:"show"},{tagOrTarget:"*",method:"toggleClass"},{tagOrTarget:"*",method:"toggleChecked"},{tagOrTarget:"*",method:"toggleVisibility"}],Dr={"button":!0,"checkbox":!0,"link":!0,"listbox":!0,"menuitem":!0,"menuitemcheckbox":!0,"menuitemradio":!0,"option":!0,"radio":!0,"scrollbar":!0,"slider":!0,"spinbutton":!0,"switch":!0,"tab":!0,"treeitem":!0},Lr=class{constructor(t,i,s,e,n,r,h,o="?",u=null,l=Math.random()){this.node=t,this.method=i,this.args=s,this.source=e,this.caller=n,this.event=r,this.trust=h,this.actionEventType=o,this.tagOrTarget=u||t.tagName,this.sequenceId=l}satisfiesTrust(t){if(!w(this.trust))return Rt().error(Sr,`Invalid trust for '${this.method}': ${this.trust}`),!1;if(this.trustt.value)).join(".")};r||(r=p()),r[u]=l,n=t.peek(),s(n.type==Gr.SEPARATOR&&(","==n.value||")"==n.value),"Expected either [,] or [)]")}else s(!1,`; unexpected token [${e.value||""}]`)}while(e.type!=Gr.SEPARATOR||")"!=e.value);var h;return r}function jr(t,i,s,e){return bt(s,"Invalid action definition in %s: [%s] %s",i,t,e||"")}function zr(t,i,s,e,n){return void 0!==n?jr(t,i,e.includes(s.type)&&s.value==n,`; expected [${n}]`):jr(t,i,e.includes(s.type)),s}var Gr={INVALID:0,EOF:1,SEPARATOR:2,LITERAL:3,ID:4,OBJECT:5},qr=" \t\n\r\f\v \u2028\u2029",Wr=class{constructor(t){this.He=t,this.je=-1}next(t){const i=this.ze(t||!1);return this.je=i.index,i}peek(t){return this.ze(t||!1)}ze(t){let i=this.je+1;if(i>=this.He.length)return{type:Gr.EOF,index:this.je};let s=this.He.charAt(i);if(-1!=qr.indexOf(s)){for(i++;i=this.He.length)return{type:Gr.EOF,index:i};s=this.He.charAt(i)}if(t&&(Kr(s)||"."==s&&i+1="0"&&t<="9"}function Yr(t){return!!t&&"function"==typeof t.getFormData}var Qr=["GET","POST"],Jr=[v,f];function Xr(t,i){const s=g({},i);if(Yr(i.body)){const t=i.body;s.headers["Content-Type"]="multipart/form-data;charset=utf-8",s.body=function(t){const i=[];for(let s=t.next();!s.done;s=t.next())i.push(s.value);return i}(t.entries())}return{input:t,init:s}}function Zr(t,i){const s=t||{},e=s.credentials;return D(void 0===e||"include"==e||"omit"==e),s.method=void 0===(n=s.method)?"GET":(n=n.toUpperCase(),D(Qr.includes(n)),n),s.headers=s.headers||{},i&&(s.headers.Accept=i),D(null!==s.body),s;var n}function th(t){return new Promise((i=>{if(t.ok)return i(t);const{status:s}=t,e=It().createError(`HTTP error ${s}`);throw e.retriable=function(t){return 415==t||t>=500&&t<600}(s),e.response=t,e}))}var ih=class{constructor(t){this.win=t;const i=is(t);this.Ge=i.isSingleDoc()?i.getSingleDoc():null}qe(t,i){return function(t,i,s,n){if(!i)return e();const r=n.prerenderSafe?e():i.whenFirstVisible(),h=Ps(i),o=_n(s),u=h.hasCapability("xhrInterceptor"),l=n.bypassInterceptorForDev&&!1;return o||!u||l?r:i.getRootNode().documentElement.hasAttribute("allow-xhr-interception")?r.then((()=>h.isTrustedViewer())).then((i=>{if(!i&&!Le(t,"untrusted-xhr-interception"))return;const e={"originalRequest":Xr(s,n)};return h.sendMessageAwaitResponse("xhr",e).then((t=>function(t,i){if(F(f(t),"Object expected: %s",t),"document"!=i)return new Response(t.body,t.init);const s=p(),e={status:200,statusText:"OK",getResponseHeader:t=>s[String(t).toLowerCase()]||null};if(t.init){const i=t.init;v(i.headers)&&i.headers.forEach((t=>{const i=t[0],e=t[1];s[String(i).toLowerCase()]=String(e)})),i.status&&(e.status=parseInt(i.status,10)),i.statusText&&(e.statusText=String(i.statusText))}return new Response(t.body?String(t.body):"",e)}(t,n.responseType)))})):r}(this.win,this.Ge,t,i).then((t=>{if(t)return t;if(Yr(i.body)){const t=i.body;i.body=t.getFormData()}return this.win.fetch.apply(null,arguments)}))}We(t,i={}){return t=function(t,i,s){return D("string"==typeof i),!1!==s.ampCors&&(i=In(t,i)),i}(this.win,t,i),i=function(t,i,s){s=s||{};const e=function(t){return t.origin||on(t.location.href).origin}(t);return e==on(i).origin&&(s.headers=s.headers||{},s.headers["AMP-Same-Origin"]="true"),s}(this.win,t,i),this.qe(t,i).then((t=>t),(i=>{const s=on(t).origin;throw It().createExpectedError("XHR",`Failed fetching (${s}/...):`,i&&i.message)}))}fetchJson(t,i){return this.fetch(t,function(t){const i=Zr(t,"application/json");if("POST"==i.method&&!Yr(i.body)){D(Jr.some((t=>t(i.body)))),i.headers["Content-Type"]=i.headers["Content-Type"]||"text/plain;charset=utf-8";const t=i.headers["Content-Type"];i.body="application/x-www-form-urlencoded"===t?dn(i.body):JSON.stringify(i.body)}return i}(i))}fetchText(t,i){return this.fetch(t,Zr(i,"text/plain"))}xssiJson(t,i){return i?t.text().then((t=>t.startsWith(i)?B(t.slice(i.length)):B(t))):t.json()}fetch(t,i){const s=Zr(i);return this.We(t,s).then((t=>th(t)))}sendSignal(t,i){return this.We(t,i).then((t=>th(t)))}getCorsUrl(t,i){return In(t,i)}},sh=class extends ih{constructor(t){super(t),this.Ke=p()}fetch(t,i){const s=i&&i.headers&&i.headers.Accept||"",e=!i||!i.method||"GET"===i.method,n=this.Ye(t,s),r=!!this.Ke[n];if(e&&r)return this.Ke[n].then((t=>t.clone()));const h=super.fetch(t,i);return e&&(this.Ke[n]=h.then((t=>(delete this.Ke[n],t.clone())),(t=>{throw delete this.Ke[n],t}))),h}Ye(t,i){return mn(Tn(t,En(this.win.location)))+i}},eh={"+":"-","/":"_","=":"."};function nh(t){const i=function(t){const i=new Array(t.length);for(let s=0;seh[t]))}var rh="AIzaSyDKtqGxnoeIqVM33Uf7hRSa3GJxuzR7mLc",hh="CacheCidApi",oh="-test-amp-cookie-tmp";function uh(t,i){const s=function(t){try{return t.document.cookie}catch(t){return""}}(t);if(!s)return null;const e=s.split(";");for(let t=0;t=0;n--)if(s=i[n]+"."+s,ch(t,e,"delete",Date.now()+1e3,s),"delete"==uh(t,e))return ch(t,e,"delete",Date.now()-1e3,s),s}return null}(t)),ch(t,i,s,e,r,n.sameSite,n.secure)}function ch(t,i,s,e,n,r,h){"ampproject.org"==n&&(s="delete",e=0);const o=encodeURIComponent(i)+"="+encodeURIComponent(s)+"; path=/"+(n?"; domain="+n:"")+"; expires="+new Date(e).toUTCString()+function(t,i){return i?`; SameSite=${i}`:""}(0,r)+(h?"; Secure":"");try{t.document.cookie=o}catch(t){}}var ah="GoogleCidApi",dh="AMP_TOKEN",fh="$RETRIEVING",ph="$OPT_OUT",mh="$NOT_FOUND",_h=3e4,Ah=31536e6,Ph=31536e6,gh=/^[a-zA-Z0-9-_.]+$/,vh="amp-cid-optout",Eh={"googleanalytics":"AMP_ECID_GOOGLE"},Th={"googleanalytics":"AIzaSyA65lEHUEizIsNtlbNo-l2K18dT680nsaM"};function Ih(t,i,s){lh(t,i,s,Date.now()+Ph,{highestAvailableDomain:!0})}function Mh(t,i,s){fs(t).then((t=>{if(!t.isViewerStorage()){const e=Rh(i);t.setNonBoolean(e,s)}}))}function Rh(t){return"amp-cid:"+t}function yh(t,i,s){const{ampdoc:e}=t,{win:n}=e,{disableBackup:r,scope:h}=i,o=i.cookieName||h;return function(t,i){const{ampdoc:s}=t,{win:e}=s,{disableBackup:n,scope:r}=i,h=i.cookieName||r,o=uh(e,h);return o?Promise.resolve(o):n?Promise.resolve(null):fs(s).then((t=>{const i=Rh(h);return t.get(i,Ph)})).then((t=>t&&"string"==typeof t?t:null))}(t,i).then((u=>{if(!u&&!i.createCookieIfNotPresent)return Promise.resolve(null);if(u)return/^amp-/.test(u)&&(Ih(n,o,u),r||Mh(e,o,u)),Promise.resolve(u);if(t.Je[h])return t.Je[h];const l=Sh(n).then((t=>"amp-"+t));return Promise.all([l,s]).then((t=>{const i=t[0];uh(n,o)||(Ih(n,o,i),r||Mh(e,o,i))})),t.Je[h]=l}))}function bh(t,i){const s=Ps(t);return s.isTrustedViewer().then((t=>{if(t)return Rt().expectedError("CID","Viewer does not provide cap=cid"),s.sendMessageAwaitResponse("cid",i).then((t=>t&&!function(t,i){try{return B(t)}catch(t){return null}}(t)?(Rt().expectedError("CID","invalid cid format"),JSON.stringify({"time":Date.now(),"cid":t})):t))}))}function wh(t){return JSON.stringify({"time":Date.now(),"cid":t})}function Vh(t){return j(t,16)||String(t.location.href+Date.now()+t.Math.random()+t.screen.width+t.screen.height)}function Sh(t){const i=Vh(t);if("string"==typeof i)return ns(t).sha384Base64(i);{const t=i;return r((()=>nh(t).replace(/\.+$/,"")))}}var xh="Crypto";var Oh=["prefetch","preload","preconnect","dns-prefetch"],Ch={attributes:!0,attributeFilter:["hidden"],subtree:!0};function kh(t){try{return t.state}catch(t){return null}}var Nh="History",Dh="AMP.History";function Lh(t){const i=Ps(t);let s;return i.isOvertakeHistory()||t.win.__AMP_TEST_IFRAME?s=new class{constructor(t,i){this.win=t,this.Qe=i,this.Xe=0,this.Ze=null,this.En=this.Qe.onMessage("historyPopped",(t=>this.Tn(t)))}replaceStateForTarget(t){yt("#"==t[0]),this.win.location.replace(t)}cleanup(){this.En()}setOnStateUpdated(t){this.Ze=t}Rn(t,i,s){return this.In(t)?t:i}In(t){return!!t&&void 0!==t.stackIndex}push(t){const i=g({"stackIndex":this.Xe+1},t||{}),s="pushHistory";return this.Qe.sendMessageAwaitResponse(s,i).then((t=>{const e=i,n=this.Rn(t,e,s);return this.Mn(n),n}))}pop(t){if(t>this.Xe)return this.get();const i={"stackIndex":this.Xe},s="popHistory";return this.Qe.sendMessageAwaitResponse(s,i).then((t=>{const i={"stackIndex":this.Xe-1},e=this.Rn(t,i,s);return this.Mn(e),e}))}replace(t){if(t&&t.url){if(!this.Qe.hasCapability("fullReplaceHistory")){const t={"stackIndex":this.Xe};return Promise.resolve(t)}const i=t.url.replace(/#.*/,"");t.url=i}const i=g({"stackIndex":this.Xe},t||{}),s="replaceHistory";return this.Qe.sendMessageAwaitResponse(s,i,!0).then((t=>{const e=i,n=this.Rn(t,e,s);return this.Mn(n),n}))}get(){return Promise.resolve({data:void 0,fragment:"",stackIndex:this.Xe,title:""})}Tn(t){void 0!==t.newStackIndex&&(t.stackIndex=t.newStackIndex),this.In(t)&&this.Mn(t)}Mn(t){const{stackIndex:i}=t;this.Xe!=i&&(this.Xe=i,this.Ze&&this.Ze(t))}getFragment(){return this.Qe.hasCapability("fragment")?this.Qe.sendMessageAwaitResponse("getFragment",void 0,!0).then((t=>{if(!t)return"";let i=t;return"#"==i[0]&&(i=i.substr(1)),i})):Promise.resolve("")}updateFragment(t){return this.Qe.hasCapability("fragment")?this.Qe.sendMessageAwaitResponse("replaceHistory",{"fragment":t},!0):e()}}(t.win,i):(wi(t.win,"global-history-binding",class{constructor(t){this.win=t,this.ke=ps(t);const{history:i}=this.win;this.yn=i.length-1;const s=kh(i);let e,n;s&&void 0!==s[Dh]&&(this.yn=Math.min(s[Dh],this.yn)),this.Xe=this.yn,this.bn,this.Ze=null,this.Vn="state"in i,this.Sn=this.xn(this.Xe),i.pushState&&i.replaceState?(this.On=i.originalPushState||i.pushState.bind(i),this.Cn=i.originalReplaceState||i.replaceState.bind(i),e=(t,i,s)=>{this.Sn=t;try{this.On(t,i,s||null)}catch(t){Rt().error(Nh,"pushState failed: "+t.message)}},n=(t,i,s)=>{this.Sn=t;try{void 0!==s?this.Cn(t,i,s):this.Cn(t,i)}catch(t){Rt().error(Nh,"replaceState failed: "+t.message)}},i.originalPushState||(i.originalPushState=this.On),i.originalReplaceState||(i.originalReplaceState=this.Cn)):(e=(t,i,s)=>{this.Sn=t},n=(t,i,s)=>{this.Sn=t}),this.kn=e,this.Nn=n;try{this.Nn(this.xn(this.Xe,!0))}catch(t){Rt().error(Nh,"Initial replaceState failed: "+t.message)}i.pushState=this.Dn.bind(this),i.replaceState=this.Ln.bind(this),this.Un=t=>{t.state,this.$n()},this.win.addEventListener("popstate",this.Un)}cleanup(){this.On&&(this.win.history.pushState=this.On),this.Cn&&(this.win.history.replaceState=this.Cn),this.win.removeEventListener("popstate",this.Un)}xn(t,i){const s=p(i?this.Fn():void 0);return s[Dh]=t,s}setOnStateUpdated(t){this.Ze=t}push(t){return this.Bn((()=>{const i=this.Hn(this.Fn(),t||{});return this.Dn(i,void 0,i.fragment?"#"+i.fragment:void 0),r((()=>this.Hn(i,{stackIndex:this.Xe})))}))}pop(t){return t=Math.max(t,this.yn),this.Bn((()=>this.jn(this.Xe-t+1))).then((t=>this.Hn(this.Fn(),{stackIndex:t})))}replace(t={}){return this.Bn((()=>{const i=this.Hn(this.Fn(),t||{}),s=(i.url||"").replace(/#.*/,""),e=i.fragment?"#"+i.fragment:"";return this.Ln(i,i.title,s||e?s+e:void 0),r((()=>this.Hn(i,{stackIndex:this.Xe})))}))}get(){return r((()=>this.Hn(this.Fn(),{stackIndex:this.Xe})))}backTo(t){return t=Math.max(t,this.yn),this.Bn((()=>this.jn(this.Xe-t)))}$n(){let t=this.Fn();const i=t?t[Dh]:void 0;let s=this.Xe;const e=this.bn;this.bn=void 0,s>this.win.history.length-2&&(s=this.win.history.length-2,this.Mn(this.Hn(t,{stackIndex:s}))),null==i?s+=1:s=iPromise.resolve(this.Xe)))}Dn(t,i,s){this.zn(),t||(t={});let e=this.Xe+1;t[Dh]=e,this.kn(t,i,s),e!=this.win.history.length-1&&(e=this.win.history.length-1,t[Dh]=e,this.Nn(t));const n=this.Hn(t,{stackIndex:e});this.Mn(n)}replaceStateForTarget(t){yt("#"==t[0]),this.Bn((()=>{this.win.removeEventListener("popstate",this.Un);try{this.win.location.replace(t)}finally{this.win.addEventListener("popstate",this.Un)}return this.Ln(),e()}))}Ln(t,i,s){this.zn(),t||(t={});const e=Math.min(this.Xe,this.win.history.length-1);t[Dh]=e,this.Nn(t,i,s);const n=this.Hn(t,{stackIndex:e});this.Mn(n)}Mn(t){this.zn(),t.stackIndex=Math.min(t.stackIndex,this.win.history.length-1),this.Xe!=t.stackIndex&&(this.Xe=t.stackIndex,this.Ze&&this.Ze(t))}getFragment(){let{hash:t}=this.win.location;return t=t.substr(1),Promise.resolve(t)}updateFragment(t){return this.replace({fragment:t})}Hn(t,i){const s=g(g({},t&&t.data||{}),i.data||{});return g(g(g({},t||{}),i),{},{data:s})}}),s=Si(t.win,"global-history-binding")),new class{constructor(t,i){this.ji=t,this.ke=ps(t.win),this.qn=i,this.Xe=0,this.Wn=[],this.es=[],this.qn.setOnStateUpdated(this.Ze.bind(this))}cleanup(){this.qn.cleanup()}push(t,i){return this.Kn((()=>this.qn.push(i).then((i=>(this.Ze(i),t&&(this.Wn[i.stackIndex]=t),i.stackIndex)))),"push")}pop(t){return this.Kn((()=>this.qn.pop(t).then((t=>{this.Ze(t)}))),"pop")}replace(t){return this.Kn((()=>this.qn.replace(t)),"replace")}get(){return this.Kn((()=>this.qn.get()),"get")}goBack(t){return this.Kn((()=>this.Xe<=0&&!t?e():this.qn.pop(this.Xe).then((t=>{this.Ze(t)}))),"goBack")}replaceStateForTarget(t){yt("#"==t[0]);const i=this.ji.win.location.hash;return this.push((()=>{this.ji.win.location.replace(i||"#")})).then((()=>{this.qn.replaceStateForTarget(t)}))}getFragment(){return this.qn.getFragment()}updateFragment(t){return"#"==t[0]&&(t=t.substr(1)),this.qn.updateFragment(t)}Ze(t){this.Xe=t.stackIndex,this.Yn(t)}Yn(t){if(this.Xe>=this.Wn.length-1)return;const i=[];for(let t=this.Wn.length-1;t>this.Xe;t--)this.Wn[t]&&(i.push(this.Wn[t]),this.Wn[t]=void 0);if(this.Wn.splice(this.Xe+1),i.length>0)for(let s=0;si[s](t)),1)}Kn(t,i){const s=new n,{promise:e,reject:r,resolve:h}=s,o=new Error("history trace for "+i+": ");return this.es.push({callback:t,resolve:h,reject:r,trace:o}),1==this.es.length&&this.Jn(),e}Jn(){if(0==this.es.length)return;const t=this.es[0];let i;try{i=t.callback()}catch(t){i=Promise.reject(t)}i.then((i=>{t.resolve(i)}),(i=>{Rt().error(Nh,"failed to execute a task:",i),t.trace&&(t.trace.message+=i,Rt().error(Nh,t.trace)),t.reject(i)})).then((()=>{this.es.splice(0,1),this.Jn()}))}}(t,s)}var Uh=['
'],$h=class{constructor(t,i){this.win=t,this.Qn=i,this.Xn=[],this.Zn=new Is,this.tr=t=>{b(t.target)&&this.ir(t.target)},this.sr=i=>{ps(t).delay((()=>{this.win.document.activeElement&&this.ir(this.win.document.activeElement)}),500)},this.win.document.addEventListener("focus",this.tr,!0),this.win.addEventListener("blur",this.sr)}er(){this.win.document.removeEventListener("focus",this.tr,!0),this.win.removeEventListener("blur",this.sr)}onFocus(t){return this.Zn.add(t)}ir(t){const i=Date.now();0==this.Xn.length||this.Xn[this.Xn.length-1].el!=t?this.Xn.push({el:t,time:i}):this.Xn[this.Xn.length-1].time=i,this.purgeBefore(i-this.Qn),this.Zn.fire(t)}getLast(){return 0==this.Xn.length?null:this.Xn[this.Xn.length-1].el}purgeBefore(t){let i=this.Xn.length-1;for(let s=0;s=t){i=s-1;break}-1!=i&&this.Xn.splice(0,i+1)}hasDescendantsOf(t){this.win.document.activeElement&&this.ir(this.win.document.activeElement);for(let i=0;i(r=e||"").length||-1===r.indexOf("noopener",h))&&(n=t.open(i,"_top")),n}var Gh="navigation",qh="click",Wh="contextmenu",Kh=["_top","_blank"],Yh="data-a4a-orig-href";function Qh(t,i){const s=Ct(i.target,"A");if(!s||!s.href)return;const e=s.getAttribute(Yh)||s.getAttribute("href");if(!e)return;const n={"CLICK_X":()=>i.pageX,"CLICK_Y":()=>i.pageY},r=ms(s).expandUrlSync(e,n,{"CLICK_X":!0,"CLICK_Y":!0});r!=e&&(s.getAttribute(Yh)||s.setAttribute(Yh,e),s.setAttribute("href",r))}function Jh(t){return`${t.origin}${t.pathname}${t.search}`}function Xh(t){return v(t)?t:[t]}function Zh(t){wi(t,"platform",class{constructor(t){this.Yh=t.navigator,this.i=t}isAndroid(){return/Android/i.test(this.Yh.userAgent)}isIos(){return/iPhone|iPad|iPod/i.test(this.Yh.userAgent)}isSafari(){return/Safari/i.test(this.Yh.userAgent)&&!this.isChrome()&&!this.isEdge()&&!this.isFirefox()&&!this.isOpera()}isChrome(){return/Chrome|CriOS/i.test(this.Yh.userAgent)&&!this.isEdge()&&!this.isOpera()}isFirefox(){return/Firefox|FxiOS/i.test(this.Yh.userAgent)&&!this.isEdge()}isOpera(){return/OPR\/|Opera|OPiOS/i.test(this.Yh.userAgent)}isEdge(){return/Edge/i.test(this.Yh.userAgent)}isWebKit(){return/WebKit/i.test(this.Yh.userAgent)&&!this.isEdge()}isWindows(){return/Windows/i.test(this.Yh.userAgent)}isStandalone(){return this.isIos()&&this.Yh.standalone||this.isChrome()&&this.i.matchMedia("(display-mode: standalone)").matches}isBot(){return/bot/i.test(this.Yh.userAgent)}getMajorVersion(){return this.isSafari()?this.isIos()?this.getIosMajorVersion()||0:this.Jh(/\sVersion\/(\d+)/,1):this.isChrome()?this.Jh(/(Chrome|CriOS)\/(\d+)/,2):this.isFirefox()?this.Jh(/(Firefox|FxiOS)\/(\d+)/,2):this.isOpera()?this.Jh(/(OPR|Opera|OPiOS)\/(\d+)/,2):this.isEdge()?this.Jh(/Edge\/(\d+)/,1):0}Jh(t,i){if(!this.Yh.userAgent)return 0;const s=this.Yh.userAgent.match(t);return!s||i>=s.length?0:parseInt(s[i],10)}getIosVersionString(){var t,i,s;return this.isIos()&&(null===(t=this.Yh.userAgent)||void 0===t||null===(i=t.match(/OS ([0-9]+[_.][0-9]+([_.][0-9]+)?)\b/))||void 0===i||null===(s=i[1])||void 0===s?void 0:s.replace(/_/g,"."))||""}getIosMajorVersion(){const t=this.getIosVersionString();return""==t?null:Number(t.split(".")[0])}})}var to=class{constructor(){this.As=[],this.nr={},this.rr=0,this.hr=0}getSize(){return this.As.length}getLastEnqueueTime(){return this.rr}getLastDequeueTime(){return this.hr}getTaskById(t){return this.nr[t]||null}enqueue(t){yt(!this.nr[t.id]),this.As.push(t),this.nr[t.id]=t,this.rr=Date.now()}dequeue(t){const i=this.nr[t.id];return!!this.removeAtIndex(t,this.As.indexOf(i))&&(this.hr=Date.now(),!0)}peek(t){let i=1e6,s=null;for(let e=0;et.blob))}saveBlob(t,i){return this.Qe.sendMessageAwaitResponse("saveStore",{"origin":t,"blob":i}).catch((t=>{throw Rt().createExpectedError(ro,"Failed to save store: ",t)}))}};function oo(t){Vi(t,"storage",(function(){const i=Ps(t),s=parseInt(i.getParam("storage"),10)?new ho(i):new class{constructor(t){if(this.win=t,this.ur=this.lr(),!this.ur){const t=new Error("localStorage not supported.");Rt().expectedError(ro,t)}}lr(){try{return"localStorage"in this.win&&(this.win.localStorage.getItem("test"),!0)}catch(t){return!1}}cr(t){return`amp-store:${t}`}loadBlob(t){return new Promise((i=>{this.ur?i(this.win.localStorage.getItem(this.cr(t))):i(null)}))}saveBlob(t,i){return new Promise((s=>{this.ur?(this.win.localStorage.setItem(this.cr(t),i),s()):s()}))}}(t.win);return new class{constructor(t,i,s){this.ampdoc=t,this.Qe=i,this.qn=s,this.dr=s instanceof ho,this.h=En(this.ampdoc.win.location),this.pr=null}ar(){return this.mr(),this}get(t,i){return this._r().then((s=>s.get(t,i)))}set(t,i,s){return yt("boolean"==typeof i),this.setNonBoolean(t,i,s)}setNonBoolean(t,i,s){return this.Ar((e=>e.set(t,i,s)))}remove(t){return this.Ar((i=>i.remove(t)))}isViewerStorage(){return this.dr}_r(){return this.pr||(this.pr=this.qn.loadBlob(this.h).then((t=>t?B(atob(t)):{})).catch((t=>(Rt().expectedError(ro,"Failed to load store: ",t),{}))).then((t=>new class{constructor(t,i){this.obj=_(t),this.gr=i||8,this.Pr=this.obj.vv||Object.create(null),this.obj.vv||(this.obj.vv=this.Pr)}get(t,i){const s=this.Pr[t],e=s?s.t:void 0,n=!i||null==e||e+i>Date.now();return s&&n?s.v:void 0}set(t,i,s){if(yt("__proto__"!=t&&"prototype"!=t),void 0!==this.Pr[t]){const e=this.Pr[t];let n=Date.now();s&&(n=e.t),e.v=i,e.t=n}else this.Pr[t]={"v":i,"t":Date.now()};const e=Object.keys(this.Pr);if(e.length>this.gr){let t=1/0,i=null;for(let s=0;s{t(i);const s=btoa(JSON.stringify(i.obj));return this.qn.saveBlob(this.h,s)})).then(this.vr.bind(this))}mr(){this.Qe.onBroadcast((t=>{"amp-storage-reset"==t.type&&t.origin==this.h&&(this.pr=null)}))}vr(){this.Qe.broadcast({"type":"amp-storage-reset","origin":this.h})}}(t,i,s).ar()}),!0)}var uo="__AMP_IMPL_",lo=()=>{};function co(t){wi(t,"timer",class{constructor(t){this.win=t,this.Er=this.win.Promise.resolve(),this.Tr=0,this.Rr={},this.Ir=Date.now()}timeSinceStart(){return Date.now()-this.Ir}delay(t,i){if(!i){const i="p"+this.Tr++;return this.Er.then((()=>{this.Rr[i]?delete this.Rr[i]:t()})).catch(Vn),i}return this.win.setTimeout((()=>{try{t()}catch(t){throw Vn(t),t}}),i)}cancel(t){"string"!=typeof t?this.win.clearTimeout(t):this.Rr[t]=!0}promise(t){return new this.win.Promise((i=>{if(-1==this.delay(i,t))throw new Error("Failed to schedule timer.")}))}timeoutPromise(t,i,s){let e;const n=new this.win.Promise(((i,n)=>{if(e=this.delay((()=>{n(It().createError(s||"timeout"))}),t),-1==e)throw new Error("Failed to schedule timer.")}));if(!i)return n;const r=()=>{this.cancel(e)};return i.then(r,r),this.win.Promise.race([n,i])}poll(t,i){return new this.win.Promise((s=>{const e=this.win.setInterval((()=>{i()&&(this.win.clearInterval(e),s())}),t)}))}})}var ao="Expander",fo=class{constructor(t,i,s,e,n,r){this.Mr=t,this.yr=i,this.wr=s,this.br=e,this.Vr=n,this.Sr=!r}expand(t){if(!t.length)return this.br?t:Promise.resolve(t);const i=this.Mr.getExpr(this.yr,this.Vr),s=this.Or(t,i);return s.length?this.Cr(t,s):this.br?t:Promise.resolve(t)}getMacroNames(t){const i=this.Mr.getExpr(this.yr,this.Vr);return t.match(i)||[]}Or(t,i){const s=[];return t.replace(i,((t,i,e)=>{const{length:n}=t,r={start:e,stop:n+e-1,name:i,length:n};s.push(r)})),s}Cr(t,i){const s=[];let e=0,n=0,r=i[n],h=0,o=!1;const u=c=>{let a="",d=[];const f=[];for(;et.join(""))).catch((t=>(l(t),"")))};return u(this.Sr)}kr(t,i){const{encode:s,name:e}=t;let n;if(null!=t.prioritized?n=t.prioritized:this.br&&null!=t.sync?n=t.sync:this.br?(It().error(ao,"ignoring async replacement key: ",t.name),n=""):n=t.async||t.sync,this.br){const t=this.Nr(n,e,i);return s?encodeURIComponent(t):t}return this.Dr(n,e,i).then((t=>s?encodeURIComponent(t):t))}Dr(t,i,s){let e;try{if("function"==typeof t){const i=t;e=s?this.Lr(s).then((t=>i.apply(null,t))):r(i)}else e=Promise.resolve(t);return e.then((t=>{let e;return this.Ur(i,t,s),e=null==t?"":t,e})).catch((t=>(l(t),this.Ur(i,"",s),Promise.resolve(""))))}catch(t){return l(t),this.Ur(i,"",s),Promise.resolve("")}}Lr(t){return Promise.all(t.map((t=>Promise.all(t).then((t=>t.join(""))))))}Nr(t,i,s){try{let e,n=t;return"function"==typeof t&&(n=t.apply(null,this.$r(s))),n&&"function"==typeof n.then?(It().error(ao,"ignoring async macro resolution"),e=""):"string"==typeof n||"number"==typeof n||"boolean"==typeof n?(this.Ur(i,n,s),e=n.toString()):(this.Ur(i,"",s),e=""),e}catch(t){return l(t),this.Ur(i,"",s),""}}$r(t){return t?t.map((t=>t.join(""))):t}Ur(t,i,s){if(!this.wr)return;let e="";s&&(e=`(${s.filter((t=>""!==t)).join(",")})`),this.wr[`${t}${e}`]=i||""}},po={"navigationStart":1,"redirectStart":1,"redirectEnd":1,"fetchStart":1,"domainLookupStart":1,"domainLookupEnd":1,"connectStart":1,"secureConnectionStart":1,"connectEnd":1,"requestStart":1,"responseStart":1,"responseEnd":1,"domLoading":2,"domInteractive":2,"domContentLoaded":2,"domComplete":2,"loadEventStart":3,"loadEventEnd":4};function mo(t,i,s){const n=po[i]||3,r=s?po[s]||3:n,h=Math.max(n,r);let o;if(1===h)o=e();else if(2===h)o=Ei(t.document);else if(3===h)o=We(t);else if(4===h){const i=ps(t);o=We(t).then((()=>i.promise(1)))}return yt(o),o.then((()=>_o(t,i,s)))}function _o(t,i,s){const e=t.performance&&t.performance.timing;if(!e||0==e.navigationStart)return;const n=void 0===s?e[i]:e[s]-e[i];return!w(n)||n<0?void 0:n}function Ao(t,i){const s=t.performance&&t.performance.navigation;if(s&&void 0!==s[i])return s[i]}var Po="UrlReplacements";function go(t){return()=>(new Date)[t]()}function vo(t,i){return()=>t[i]}function Eo(t,i){return i?(bt("ISOCountry"===i,"The value passed to AMP_GEO() is not valid name:"+i),t&&t[i]||"unknown"):(null==t?void 0:t.matchedISOCountryGroups.join(","))||"unknown"}var To="Viewer",Io=/^(https?:\/\/)((www[0-9]*|web|ftp|wap|home|mobile|amp|m)\.)+/i;function Mo(t){let i;return t instanceof Error?((t=h(t)).message="No messaging channel: "+t.message,i=t):i=new Error("No messaging channel: "+t),i.message=C(i.message),i}var Ro=class t{static solveYValueFromXValue(i,s,e,n,r,h,o,u,l){return t.Fr(t.Br(i,s,n,h,u),e,r,o,l)}static Br(i,s,e,n,r){const h=1e-6;let o=(i-s)/(r-s);if(o<=0)return 0;if(o>=1)return 1;let u=0,l=1,c=0;for(let a=0;a<8;a++){c=t.Hr(o,s,e,n,r);const a=(t.Hr(o+h,s,e,n,r)-c)/h;if(Math.abs(c-i)h&&a<8;a++)ct,EASE:t=>Ro.solveYValueFromXValue(t,0,0,.25,.1,.25,1,1,1),EASE_IN:t=>Ro.solveYValueFromXValue(t,0,0,.42,0,1,1,1,1),EASE_OUT:t=>Ro.solveYValueFromXValue(t,0,0,0,0,.58,1,1,1),EASE_IN_OUT:t=>Ro.solveYValueFromXValue(t,0,0,.42,0,.58,1,1,1)},bo={"linear":yo.LINEAR,"ease":yo.EASE,"ease-in":yo.EASE_IN,"ease-out":yo.EASE_OUT,"ease-in-out":yo.EASE_IN_OUT};function wo(t){if(!t)return null;if(y(t)){if(-1!=t.indexOf("cubic-bezier")){const r=t.match(/cubic-bezier\((.+)\)/);if(r){const t=r[1].split(",").map(parseFloat);if(4==t.length){for(let i=0;i<4;i++)if(isNaN(t[i]))return null;return i=t[0],s=t[1],e=t[2],n=t[3],t=>Ro.solveYValueFromXValue(t,0,0,i,s,e,n,1,1)}}return null}return bo[t]}var i,s,e,n;return t}var Vo="Animation",So=function(){},xo=class t{static animate(i,s,e,n){return new t(i).setCurve(n).add(0,s,1).start(e)}constructor(t,i){this.zr=t,this.Gr=i||gs(self),this.qr=null,this.Wr=[]}setCurve(t){return t&&(this.qr=wo(t)),this}add(t,i,s,e){return this.Wr.push({delay:t,func:i,duration:s,curve:wo(e)}),this}start(t){return new Oo(this.Gr,this.zr,this.Wr,this.qr,t)}},Oo=class{constructor(t,i,s,e,r){this.Gr=t,this.zr=i,this.Wr=[];for(let t=0;t1&&this.Wr.sort(((t,i)=>t.delay+t.duration-(i.delay+i.duration)));try{if(i>0)for(let t=0;t=0;t--)this.Wr[t].func(0,!1)}catch(i){Rt().error(Vo,"completion failed: "+i,i),t=!1}}t?this.ae():this.Jr()}}Xr(t){if(!this.$e)return;const i=Date.now(),s=Math.min((i-this.Ir)/this.Kr,1);for(let t=0;t=i.delay&&(i.started=!0)}for(let t=0;t0){if(s=Math.min((i-t.delay)/t.duration,1),e=s,t.curve&&1!=e)try{e=t.curve(s)}catch(t){return Rt().error(Vo,"step curve failed: "+t,t),void this.Zr(!1,0)}}else s=1,e=1;1==s&&(t.completed=!0);try{t.func(e,t.completed)}catch(t){return Rt().error(Vo,"step mutate failed: "+t,t),void this.Zr(!1,0)}}};function Co(t,i){let s;for(let e=i.lastElementChild;e;e=e.previousElementSibling)if(e.getBoundingClientRect().height>0){const i=ks(t,e);if("static"==i.position||"relative"==i.position){s=i;break}}return s?parseInt(s.marginBottom,10):0}function ko(t,i,s){return function(t,i,s){const e=parseInt(ks(t,i)[s],10);return isNaN(e)?0:e}(t,i===t.document.body?t.document.documentElement:i,s)}function No(t,i){return ko(t,i,"scrollPaddingTop")}function Do(t){const i=Ps(t),{win:s}=t;let n;return n=t.isSingleDoc()&&function(t,i){return cs(t).isIos()&&qt(t)&&i.isEmbedded()&&!i.hasCapability("iframeScroll")?Lo.NATURAL_IOS_EMBED:Lo.NATURAL}(s,i)==Lo.NATURAL_IOS_EMBED?new class{constructor(t){this.win=t,this.Gr=gs(t);const i=this.win.document,{documentElement:s}=i,e=s.className;s.classList.add("i-amphtml-ios-embed");const n=i.createElement("html");this.ih=n,n.id="i-amphtml-wrapper",n.className=e,this.sh=new Is,this.eh=new Is,this.nh=this.rh.bind(this),this.hh=()=>this.eh.fire(),this.oh=0,this.uh=!1,$t(i,this.lh.bind(this)),vi(i).then((()=>{s.classList.add("i-amphtml-ios-overscroll")}))}ensureReadyForElements(){this.lh()}lh(){if(this.uh)return;this.uh=!0;const t=this.win.document,i=t.body;t.documentElement.appendChild(this.ih),this.ih.appendChild(i),Object.defineProperty(t,"body",{get:()=>i}),this.rh()}connect(){this.win.addEventListener("resize",this.hh),this.ih.addEventListener("scroll",this.nh)}disconnect(){this.win.removeEventListener("resize",this.hh),this.ih.removeEventListener("scroll",this.nh)}getBorderTop(){return 1}requiresFixedLayerTransfer(){return!Le(this.win,"ios-fixed-no-transfer")||parseFloat(cs(this.win).getIosVersionString())<12.2}overrideGlobalScrollTo(){return!0}supportsPositionFixed(){return!0}onScroll(t){this.sh.add(t)}onResize(t){this.eh.add(t)}updatePaddingTop(t){this.oh=t,Vs(this.ih,{"padding-top":Cs(t)})}hideViewerHeader(t,i){t||this.updatePaddingTop(0)}showViewerHeader(t,i){t||this.updatePaddingTop(i)}disableScroll(){this.ih.classList.add("i-amphtml-scroll-disabled")}resetScroll(){this.ih.classList.remove("i-amphtml-scroll-disabled")}updateLightboxMode(t){return e()}getSize(){return{width:this.win.innerWidth,height:this.win.innerHeight}}getScrollTop(){return this.ih.scrollTop}getScrollLeft(){return 0}getScrollWidth(){return this.ih.scrollWidth}getScrollHeight(){return this.ih.scrollHeight}getContentHeight(){const t=this.win.document.body,{height:i}=t.getBoundingClientRect(),s=Co(this.win,t),e=ks(this.win,t);return parseInt(e.marginTop,10)+this.oh+i+s+parseInt(e.marginBottom,10)}contentHeightChanged(){}getLayoutRect(t,i,s){const e=t.getBoundingClientRect(),n=null!=s?s:this.getScrollTop(),r=null!=i?i:this.getScrollLeft();return Jt(Math.round(e.left+r),Math.round(e.top+n),Math.round(e.width),Math.round(e.height))}getRootClientRectAsync(){return Promise.resolve(null)}setScrollTop(t){this.ih.scrollTop=t||1}rh(t){0==this.ih.scrollTop&&(this.ih.scrollTop=1,t&&t.preventDefault()),t&&this.sh.fire()}getScrollingElement(){return this.ih}getScrollingElementScrollsLikeViewport(){return!1}}(s):new class{constructor(t){this.ampdoc=t,this.win=t.win,this.ah=cs(this.win),this.sh=new Is,this.eh=new Is,this.nh=this.dh.bind(this),this.hh=()=>this.eh.fire()}dh(){this.sh.fire()}connect(){this.win.addEventListener("scroll",this.nh),this.win.addEventListener("resize",this.hh)}disconnect(){this.win.removeEventListener("scroll",this.nh),this.win.removeEventListener("resize",this.hh)}ensureReadyForElements(){}getBorderTop(){return 0}requiresFixedLayerTransfer(){return!1}overrideGlobalScrollTo(){return!1}supportsPositionFixed(){return!0}onScroll(t){this.sh.add(t)}onResize(t){this.eh.add(t)}updatePaddingTop(t){Vs(this.win.document.documentElement,{"padding-top":Cs(t)})}hideViewerHeader(t,i){t||this.updatePaddingTop(0)}showViewerHeader(t,i){t||this.updatePaddingTop(i)}disableScroll(){this.win.document.documentElement.classList.add("i-amphtml-scroll-disabled")}resetScroll(){this.win.document.documentElement.classList.remove("i-amphtml-scroll-disabled")}updateLightboxMode(t){return e()}getSize(){const t=this.win.innerWidth,i=this.win.innerHeight;if(t&&i)return{width:t,height:i};const s=this.win.document.documentElement;return{width:s.clientWidth,height:s.clientHeight}}getScrollTop(){const t=this.getScrollingElement().scrollTop||this.win.pageYOffset,{host:i}=this.ampdoc.getRootNode();return i?t-i.offsetTop:t}getScrollLeft(){return 0}getScrollWidth(){return this.getScrollingElement().scrollWidth}getScrollHeight(){return this.getScrollingElement().scrollHeight}getContentHeight(){const t=this.getScrollingElement(),i=t.getBoundingClientRect(),s=i.top+this.getScrollTop(),e=cs(this.win).isSafari()?Co(this.win,t):0,n=ks(this.win,t);return s+parseInt(n.marginTop,10)+i.height+e+parseInt(n.marginBottom,10)}contentHeightChanged(){}getLayoutRect(t,i,s){const e=t.getBoundingClientRect(),n=null!=s?s:this.getScrollTop(),r=null!=i?i:this.getScrollLeft();return Jt(Math.round(e.left+r),Math.round(e.top+n),Math.round(e.width),Math.round(e.height))}getRootClientRectAsync(){return Promise.resolve(null)}setScrollTop(t){this.getScrollingElement().scrollTop=t}getScrollingElement(){const t=this.win.document;return t.scrollingElement?t.scrollingElement:t.body&&this.ah.isWebKit()?t.body:t.documentElement}getScrollingElementScrollsLikeViewport(){return!0}}(t),new class{constructor(t,i,s){const{win:e}=t;this.ampdoc=t,this.fh=this.ampdoc.win.document,this.qn=i,this.Qe=s,this.ph=null,this.mh=null,this._h=null,this.Ah=!1,this.gh=null,this.oh=Number(s.getParam("paddingTop")||0),this.Ph=0,this.ke=ps(e),this.Gr=gs(e),this.Eh=!1,this.sn=null,this.Th=0,this.Rh=new Is,this.sh=new Is,this.eh=new Is,this.Ih=void 0,this.Mh=void 0,this.yh=null,this.Qe.onMessage("viewport",this.wh.bind(this)),this.Qe.onMessage("scroll",this.bh.bind(this)),this.Qe.onMessage("disableScroll",this.Vh.bind(this)),this.Qe.isEmbedded()&&this.qn.updatePaddingTop(this.oh),this.qn.onScroll(this.Sh.bind(this)),this.qn.onResize(this.xh.bind(this)),this.onScroll(this.Oh.bind(this)),this.Ch=!1,this.ampdoc.onVisibilityChanged(this.kh.bind(this)),this.kh();const n=this.fh.documentElement;if(t.isSingleDoc()&&n.classList.add("i-amphtml-singledoc"),s.isEmbedded()?n.classList.add("i-amphtml-embedded"):n.classList.add("i-amphtml-standalone"),qt(e)&&n.classList.add("i-amphtml-iframed"),"1"===s.getParam("webview")&&n.classList.add("i-amphtml-webview"),qt(e)&&"scrollRestoration"in e.history&&(e.history.scrollRestoration="manual"),this.qn.overrideGlobalScrollTo())try{Object.defineProperty(e,"scrollTo",{value:(t,i)=>this.setScrollTop(i)}),["pageYOffset","scrollY"].forEach((t=>{Object.defineProperty(e,t,{get:()=>this.getScrollTop()})}))}catch(t){}cs(e).isIos()&&qt(e)&&this.ampdoc.isSingleDoc()&&this.ampdoc.whenReady().then((()=>{e.scrollTo(-.1,0)}))}dispose(){this.qn.disconnect()}ensureReadyForElements(){this.qn.ensureReadyForElements()}kh(){const t=this.ampdoc.isVisible();t!=this.Ch&&(this.Ch=t,t?(this.qn.connect(),this.mh&&this.xh(),this._h&&(this._h=null,this.getScrollTop())):this.qn.disconnect())}getPaddingTop(){return this.oh}getScrollTop(){return null==this._h&&(this._h=this.qn.getScrollTop()),this._h}getScrollLeft(){return null==this.gh&&(this.gh=this.qn.getScrollLeft()),this.gh}setScrollTop(t){this._h=null,this.qn.setScrollTop(t)}updatePaddingBottom(t){this.ampdoc.waitForBodyOpen().then((i=>{Ss(i,"borderBottom",`${t}px solid transparent`)}))}getSize(){if(this.mh)return this.mh;if(this.mh=this.qn.getSize(),0==this.mh.width||0==this.mh.height){const t=this.ampdoc.getVisibilityState();t!=Ts.PRERENDER&&t!=Ts.VISIBLE||Math.random()<.01&&Rt().error("Viewport","viewport has zero dimensions")}return this.mh}getHeight(){return this.getSize().height}getWidth(){return this.getSize().width}getScrollWidth(){return this.qn.getScrollWidth()}getScrollHeight(){return this.qn.getScrollHeight()}getContentHeight(){return this.qn.getContentHeight()}contentHeightChanged(){this.qn.contentHeightChanged()}getRect(){if(null==this.ph){const t=this.getScrollTop(),i=this.getScrollLeft(),s=this.getSize();this.ph=Jt(i,t,s.width,s.height)}return this.ph}getLayoutRect(t){const i=this.getScrollLeft(),s=this.getScrollTop(),e=Di(t,this.ampdoc.win);if(e){const n=this.qn.getLayoutRect(t,0,0),r=this.qn.getLayoutRect(e,i,s);return Jt(Math.round(n.left+r.left),Math.round(n.top+r.top),Math.round(n.width),Math.round(n.height))}return this.qn.getLayoutRect(t,i,s)}getClientRectAsync(t){const i=this.Gr.measurePromise((()=>t.getBoundingClientRect()));let s=this.qn.getRootClientRectAsync();const e=Di(t,this.ampdoc.win);return e&&(s=this.Gr.measurePromise((()=>e.getBoundingClientRect()))),Promise.all([i,s]).then((t=>{const i=t[0],s=t[1];return s?Zt(i,s.left,s.top):(e=i,Jt(Number(e.left),Number(e.top),Number(e.width),Number(e.height)));var e}))}supportsPositionFixed(){return this.qn.supportsPositionFixed()}isDeclaredFixed(t){return!!this.yh&&this.yh.isDeclaredFixed(t)}scrollIntoView(t){return this.Nh(t).then((i=>this.Dh(t,i)))}Dh(t,i){const s=this.qn.getLayoutRect(t).top,e=No(this.ampdoc.win,i);r((()=>Math.max(0,s-this.oh-e))).then((t=>this.Lh(i,t)))}animateScrollIntoView(t,i="top",s,e){return yt(!e||void 0!==s),this.Nh(t).then((n=>this.animateScrollWithinParent(t,n,i,s,e)))}animateScrollWithinParent(t,i,s,e,n){yt(!n||void 0!==e);const r=this.qn.getLayoutRect(t),{height:h}=this.Uh(i)?this.getSize():this.getLayoutRect(i),{win:o}=this.ampdoc,u=No(o,i),l=function(t,i){return ko(t,i,"scrollPaddingBottom")}(o,i);let c=-u;return"bottom"===s?c=-h+l+r.height:"center"===s&&(c=-(h-u-l)/2+r.height/2),this.$h(i).then((t=>{const s=r.top-this.oh+c,h=Math.max(0,s);if(h!=t)return this.Fh(i,t,h,e,n)}))}Fh(t,i,s,e,n="ease-in"){const r=void 0!==e?e:function(t,i,s=500){return Math.floor(function(t,i,s){return D(0<=s),Math.min(Math.max(t,0),s)}(.65*Math.abs(t-i),0,s))}(i,s),h=(o=i,u=s,t=>o+(u-o)*t);var o,u;return xo.animate(t,(i=>{this.Lh(t,h(i))}),r,n).thenAlways((()=>{this.Lh(t,s)}))}Nh(t){return this.Gr.measurePromise((()=>Ct(t,".i-amphtml-scrollable")||this.qn.getScrollingElement()))}Lh(t,i){this.Uh(t)?this.qn.setScrollTop(i):this.Gr.mutate((()=>{t.scrollTop=i}))}$h(t){return this.Uh(t)?r((()=>this.getScrollTop())):this.Gr.measurePromise((()=>t.scrollTop))}Uh(t){return t==this.qn.getScrollingElement()}getScrollingElement(){return this.sn?this.sn:this.sn=this.qn.getScrollingElement()}onChanged(t){return this.Rh.add(t)}onScroll(t){return this.sh.add(t)}onResize(t){return this.eh.add(t)}enterLightboxMode(t,i){return this.Qe.sendMessage("requestFullOverlay",{},!0),this.enterOverlayMode(),this.yh&&this.yh.enterLightbox(t,i),t&&this.maybeEnterFieLightboxMode(t),this.qn.updateLightboxMode(!0)}leaveLightboxMode(t){return this.Qe.sendMessage("cancelFullOverlay",{},!0),this.yh&&this.yh.leaveLightbox(),this.leaveOverlayMode(),t&&this.maybeLeaveFieLightboxMode(t),this.qn.updateLightboxMode(!1)}isLightboxExperimentOn(){return Le(this.ampdoc.win,"amp-lightbox-a4a-proto")}maybeEnterFieLightboxMode(t){const i=this.Bh(t);i&&(yt(this.isLightboxExperimentOn()),i.enterFullOverlayMode())}maybeLeaveFieLightboxMode(t){const i=this.Bh(t);i&&yt(i).leaveFullOverlayMode()}Bh(t){const i=Di(t,this.ampdoc.win);return i&&i.__AMP_EMBED__}enterOverlayMode(){this.disableTouchZoom(),this.disableScroll()}leaveOverlayMode(){this.resetScroll(),this.restoreOriginalTouchZoom()}disableScroll(){const{win:t}=this.ampdoc,{documentElement:i}=t.document;let s;this.Gr.measure((()=>{const e=ks(t,i).marginRight,n=function(t){const{documentElement:i}=t.document;return t.innerWidth-i.clientWidth}(this.ampdoc.win);s=parseInt(e,10)+n})),this.Gr.mutate((()=>{Ss(i,"margin-right",s,"px"),this.qn.disableScroll()}))}resetScroll(){const{win:t}=this.ampdoc,{documentElement:i}=t.document;this.Gr.mutate((()=>{Ss(i,"margin-right",""),this.qn.resetScroll()}))}resetTouchZoom(){const t=this.ampdoc.win.innerHeight,i=this.fh.documentElement.clientHeight;t&&i&&t===i||this.disableTouchZoom()&&this.ke.delay((()=>{this.restoreOriginalTouchZoom()}),50)}disableTouchZoom(){const t=this.Hh();if(!t)return!1;const i=function(t,i){const s=function(t){const i=Object.create(null);if(!t)return i;const s=t.split(/,|;/);for(let t=0;t0&&(i+=","),t[s]?i+=s+"="+t[s]:i+=s;return i}(s):t}(t.content,{"maximum-scale":"1","user-scalable":"no"});return this.jh(i)}restoreOriginalTouchZoom(){return void 0!==this.Mh&&this.jh(this.Mh)}updateFixedLayer(){return this.yh?this.yh.update():e()}addToFixedLayer(t,i){return this.yh?this.yh.addElement(t,i):e()}removeFromFixedLayer(t){this.yh&&this.yh.removeElement(t)}createFixedLayer(t){this.yh=new t(this.ampdoc,this.Gr,this.qn.getBorderTop(),this.oh,this.qn.requiresFixedLayerTransfer()),this.ampdoc.whenReady().then((()=>this.yh.setup()))}jh(t){const i=this.Hh();return!(!i||i.content==t||(i.content=t,0))}Hh(){return qt(this.ampdoc.win)?null:(void 0===this.Ih&&(this.Ih=this.fh.querySelector("meta[name=viewport]"),this.Ih&&(this.Mh=this.Ih.content)),this.Ih)}bh(t){const i=t.scrollTop;this.setScrollTop(i)}wh(t){const i=t.paddingTop,s=t.duration||0,e=t.curve,n=t.transient;if(null!=i&&i!=this.oh&&(this.Ph=this.oh,this.oh=i,this.yh)){const t=this.yh.animateFixedElements(this.oh,this.Ph,s,e,n);i{this.qn.showViewerHeader(n,i)}))}}Vh(t){t?this.disableScroll():this.resetScroll()}zh(t,i){const s=this.getSize(),e=this.getScrollTop(),n=this.getScrollLeft();this.Rh.fire({relayoutAll:t,top:e,left:n,width:s.width,height:s.height,velocity:i})}Sh(){this.ph=null,this.Th++,this.gh=this.qn.getScrollLeft();const t=this.qn.getScrollTop();if(!(t<0)){if(this._h=t,!this.Eh){this.Eh=!0;const i=Date.now();this.ke.delay((()=>{this.Gr.measure((()=>{this.Gh(i,t)}))}),36)}this.sh.fire()}}Gh(t,i){this._h=this.qn.getScrollTop();const s=this._h,e=Date.now();let n=0;e!=t&&(n=(s-i)/(e-t)),Math.abs(n)<.03?(this.zh(!1,n),this.Eh=!1):this.ke.delay((()=>this.Gr.measure(this.Gh.bind(this,e,s))),20)}Oh(){this.Ah||(this.Ah=!0,this.Gr.measure((()=>{this.Ah=!1,this.Qe.sendMessage("scroll",{"scrollTop":this.getScrollTop()},!0)})))}xh(){this.ph=null;const t=this.mh;this.mh=null;const i=this.getSize();this.updateFixedLayer().then((()=>{const s=!t||t.width!=i.width;this.zh(s,0),(s||t.height!=i.height)&&this.eh.fire({relayoutAll:s,width:i.width,height:i.height})}))}}(t,n,i)}var Lo={NATURAL:"natural",NATURAL_IOS_EMBED:"natural-ios-embed"};function Uo(t,i){yt(t);try{void 0!==t(i)&&Rt().error("VSYNC","callback returned a value but vsync cannot propogate it: %s",t.toString())}catch(t){return l(t),!1}return!0}function $o(t){if(t.defaultPrevented)return;const i=t.target;if(!i||"FORM"!=i.tagName)return;let s;s=i.classList.contains("i-amphtml-form")?!i.hasAttribute("amp-novalidate"):!i.hasAttribute("novalidate"),s&&i.checkValidity&&!i.checkValidity()&&t.preventDefault();const e=i.elements;for(let t=0;t"],Bo=18e4,Ho=null;function jo(t){var i;(function(t){wi(t,"crypto",class{constructor(t){this.i=t;let i=null,s=!1;t.crypto&&(t.crypto.subtle?i=t.crypto.subtle:t.crypto.webkitSubtle&&(i=t.crypto.webkitSubtle,s=!0)),this.pkcsAlgo={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},this.subtle=i,this.qh=s,this.Wh=null}sha384(t){if("string"==typeof t&&(t=H(t)),!this.subtle||this.Wh)return(this.Wh||this.Kh()).then((i=>i(t)));try{return this.subtle.digest({name:"SHA-384"},t).then((t=>new Uint8Array(t)),(i=>(i.message&&i.message.indexOf("secure origin")<0&&It().error(xh,"SubtleCrypto failed, fallback to closure lib.",i),this.Kh().then((()=>this.sha384(t))))))}catch(i){return Rt().error(xh,"SubtleCrypto failed, fallback to closure lib.",i),this.Kh().then((()=>this.sha384(t)))}}sha384Base64(t){return this.sha384(t).then((t=>nh(t)))}uniform(t){return this.sha384(t).then((t=>{let i=0;for(let s=2;s>=0;s--)i=(i+t[s])/256;return i}))}Kh(){return this.Wh?this.Wh:this.Wh=hs(this.i).preloadExtension("amp-crypto-polyfill").then((()=>Si(this.i,"crypto-polyfill")))}isPkcsAvailable(){return Boolean(this.subtle)&&!1!==this.i.isSecureContext}importPkcsKey(t){yt(this.isPkcsAvailable());const i=this.qh?(s=JSON.stringify(t),"undefined"!=typeof TextEncoder?(new TextEncoder).encode(s):H(unescape(encodeURIComponent(s)))):t;var s;return this.subtle.importKey("jwk",i,this.pkcsAlgo,!0,["verify"])}verifyPkcs(t,i,s){return yt(this.isPkcsAvailable()),this.subtle.verify(this.pkcsAlgo,t,i,s)}})})(t),wi(t,"batched-xhr",sh),Zh(t),co(t),co(i=t),wi(i,"vsync",class{constructor(t){this.win=t,this.Qh=is(this.win),this.Xh=this.Zh(),this.As=[],this.io=[],this.so=[],this.eo=[],this.Le=!1,this.no=null,this.ro=null,this.ho=this.oo.bind(this),this.uo=new yr(this.win,this.ho,16),this.lo=new yr(this.win,this.ho,40),this.co=this.ao.bind(this),this.Qh.isSingleDoc()?this.Qh.getSingleDoc().onVisibilityChanged(this.co):Ds(this.win.document,this.co)}dispose(){Ls(this.win.document,this.co)}ao(){this.Le&&this.do()}run(t,i){this.As.push(t),this.so.push(i||void 0),this.Rs()}runPromise(t,i){if(this.run(t,i),this.no)return this.no;const s=new n;return this.ro=s.resolve,this.no=s.promise}createTask(t){return i=>{this.run(t,i)}}mutate(t){this.run({measure:void 0,mutate:t})}mutatePromise(t){return this.runPromise({measure:void 0,mutate:t})}measure(t){this.run({measure:t,mutate:void 0})}measurePromise(t){return new Promise((i=>{this.measure((()=>{i(t())}))}))}canAnimate(t){return this.fo(yt(t))}fo(t){if(Ns(this.win.document)!=Ts.VISIBLE)return!1;if(this.Qh.isSingleDoc())return this.Qh.getSingleDoc().isVisible();if(t){const i=this.Qh.getAmpDocIfAvailable(t);return!i||i.isVisible()}return!0}runAnim(t,i,s){return!!this.fo(t)&&(this.run(i,s),!0)}createAnimTask(t,i){return s=>this.runAnim(t,i,s)}runAnimMutateSeries(t,i,s){return this.fo(t)?new Promise(((e,n)=>{const r=Date.now();let h=0;const o=this.createAnimTask(t,{mutate:t=>{const u=Date.now()-r;i(u,u-h,t)?s&&u>s?n(new Error("timeout")):(h=u,o(t)):e()}});o({})})):Promise.reject(Sn())}Rs(){this.Le||(this.Le=!0,this.do())}do(){this.fo()?(this.Xh(this.ho),this.lo.schedule()):this.uo.schedule()}oo(){this.lo.cancel(),this.Le=!1;const{ro:t,so:i,As:s}=this;this.ro=null,this.no=null,this.As=this.io,this.so=this.eo;for(let t=0;t{const s=Date.now(),e=Math.max(0,16-(s-i));i=s+e,this.win.setTimeout(t,e)}}}),function(t){wi(t,"xhr",ih)}(t),function(t){wi(t,"input",class{constructor(t){this.win=t,this.po=this.mo.bind(this),this._o=this.Ao.bind(this),this.Po=null,this.vo=null,this.Eo=null,this.To="ontouchstart"in t||void 0!==t.navigator.maxTouchPoints&&t.navigator.maxTouchPoints>0||void 0!==t.DocumentTouch,this.Ro=!1,this.win.document.addEventListener("keydown",this.po),this.win.document.addEventListener("mousedown",this._o),this.Io=!0,this.Mo=0,this.yo=new Is,this.wo=new Is,this.bo=new Is,this.To&&(this.Io=!this.To,this.Po=this.Vo.bind(this),qe(t.document,"mousemove",this.Po))}setupInputModeClasses(t){this.onTouchDetected((i=>{this.So(t,"amp-mode-touch",i)}),!0),this.onMouseDetected((i=>{this.So(t,"amp-mode-mouse",i)}),!0),this.onKeyboardStateChanged((i=>{this.So(t,"amp-mode-keyboard-active",i)}),!0)}isTouchDetected(){return this.To}onTouchDetected(t,i){return i&&t(this.isTouchDetected()),this.yo.add(t)}isMouseDetected(){return this.Io}onMouseDetected(t,i){return i&&t(this.isMouseDetected()),this.wo.add(t)}isKeyboardActive(){return this.Ro}onKeyboardStateChanged(t,i){return i&&t(this.isKeyboardActive()),this.bo.add(t)}So(t,i,s){t.waitForBodyOpen().then((t=>{gs(this.win).mutate((()=>{t.classList.toggle(i,s)}))}))}mo(t){if(this.Ro)return;if(t.defaultPrevented)return;const{target:i}=t;i&&("INPUT"==i.tagName||"TEXTAREA"==i.tagName||"SELECT"==i.tagName||"OPTION"==i.tagName||i.hasAttribute("contenteditable"))||(this.Ro=!0,this.bo.fire(!0))}Ao(){this.Ro&&(this.Ro=!1,this.bo.fire(!1))}Vo(t){if(t.sourceCapabilities&&t.sourceCapabilities.firesTouchEvents)return void this.xo();let i;this.Eo||(this.Eo=this.Oo.bind(this),this.vo=this.xo.bind(this));const s=function(t,i,s,e){let n;const r=new Promise((i=>{n=qe(t,"click",i,void 0)}));return r.then(n,n),e&&e(n),r}(this.win.document,0,0,(t=>{i=t}));return ps(this.win).timeoutPromise(300,s).then(this.vo,(()=>{i&&i(),this.Eo()}))}Oo(){this.Io=!0,this.wo.fire(!0)}xo(){this.Mo++,this.Mo<=3&&qe(this.win.document,"mousemove",this.Po)}})}(t),function(t){wi(t,"preconnect",class{constructor(t){this.Co=t.document,this.ko=t.document.head,this.No={},this.Do={},this.ah=cs(t),this.No[on(t.location.href).origin]=!0,this.Lo=function(t){if(!Ho){const i=t.document.createElement("link"),s=i.relList;if(i.as="invalid-value",!s||!s.supports)return{};Ho={preconnect:s.supports("preconnect"),preload:s.supports("preload"),onlyValidAs:"invalid-value"!=i.as}}return Ho}(t),this.ke=ps(t)}url(t,i,s){t.whenFirstVisible().then((()=>{this.pi(t,i,s)}))}pi(t,i,s){if(!this.Uo(i))return;const{origin:e}=on(i),n=Date.now(),r=this.No[e];if(r&&n{o&&o.parentNode&&o.parentNode.removeChild(o),u.parentNode&&u.parentNode.removeChild(u)}),1e4),this.$o(t,e)}preload(t,i,s){this.Uo(i)&&(this.Do[i]||(this.Do[i]=!0,this.url(t,i,!0),this.Lo.preload&&("document"==s&&this.ah.isSafari()||t.whenFirstVisible().then((()=>{this.Fo(i)})))))}Fo(t){const i=Ve(this.Co)(Fo);i.setAttribute("href",t),this.Lo.onlyValidAs?i.as="fetch":i.as="",this.ko.appendChild(i)}Uo(t){return!(!t.startsWith("")&&!t.startsWith(""))}$o(t,i){if(this.Lo.preconnect||!this.ah.isSafari()&&!this.ah.isIos())return;const s=Date.now();this.No[i]=s+Bo;const e=i+"/robots.txt?_AMP_safari_preconnect_polyfill_cachebust="+(s-s%Bo),n=new XMLHttpRequest;n.open("HEAD",e,!0),n.withCredentials=!0,n.send()}})}(t)}function zo(t){yt(!t.getParent()),function(t,i){(function(t){Vi(t,"url",class{constructor(t){const i=t.getRootNode(),s=i.ownerDocument||i;this.Bo=s.createElement("a"),this.Ho=null}parse(t,i){return un(this.Bo,t)}jo(t){return"string"!=typeof t?t:this.parse(t)}isProtocolValid(t){return An(t)}getSourceOrigin(t){return En(this.jo(t))}getSourceUrl(t){return vn(this.jo(t))}resolveRelativeUrl(t,i){return Tn(t,this.jo(i))}assertHttpsUrl(t,i,s="source"){return pn(t,i,s)}assertAbsoluteHttpOrHttpsUrl(t){return function(t){return bt(/^https?\:/i.test(t),'URL must start with "" or "//". Invalid value: %s',t),on(t).href}(t)}isProxyOrigin(t){return _n(this.jo(t))}isSecure(t){return fn(this.jo(t))}getWinOrigin(t){return t.origin||this.jo(t.location.href).origin}getCdnUrlOnOrigin(t){if(_n(t))return t;const{hash:i,host:s,pathname:e,search:n}=this.jo(t),r=encodeURIComponent(s);return`${et}/c/${r}${e}${n}${i}`}},!0)})(t),function(t){Vi(t,"templates",class{constructor(t){this.ji=t,this.zo={},this.Go={}}whenReady(t){return this.qo(t).then(lo)}setHtmlForTemplate(t,i){return this.qo(t).then((t=>this.Wo(t,i)))}renderTemplate(t,i){return this.qo(t).then((t=>this.Ko(t,i)))}renderTemplateAsString(t,i){return this.qo(t).then((t=>t.renderAsString(i)))}getTemplateRenderer(t){return this.qo(t).then((t=>({renderAsString:i=>t.renderAsString(i)})))}renderTemplateArray(t,i){return 0==i.length?Promise.resolve([]):this.qo(t).then((t=>i.map((i=>this.Ko(t,i)))))}findAndRenderTemplate(t,i,s){return this.renderTemplate(this.findTemplate(t,s),i)}findAndSetHtmlForTemplate(t,i,s){return this.setHtmlForTemplate(this.findTemplate(t,s),i)}findAndRenderTemplateArray(t,i,s){return this.renderTemplateArray(this.findTemplate(t,s),i)}hasTemplate(t,i){return!!this.maybeFindTemplate(t,i)}findTemplate(t,i){const s=this.maybeFindTemplate(t,i);bt(s,"Template not found for %s",t);const e=s.tagName;return bt("TEMPLATE"==e||"SCRIPT"==e&&"text/plain"===s.getAttribute("type"),'Template must be defined in a