CINXE.COM

Derila - America's #1 Pillow Perfected: 70% Off! | Derila

<!DOCTYPE html> <html lang="en" dir="ltr" class="tw-scroll-smooth"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Montserrat:wght@100..900&display=swap"/> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Montserrat:wght@100..900&display=swap" media="print" onload="this.media='all'"/> <noscript> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap"/> </noscript> <title> Derila - America&#039;s #1 Pillow Perfected: 70% Off! | Derila </title> <meta property="og:image" content="https://get-derila.com/theme/derila/og-image.jpg"> <link rel="icon" type="image/png" href="https://get-derila.com/theme/derila/favicon_.png"> <meta name="description" content="Derila Memory Foam Pillow helps support your head, neck, and back in the best possible position ✅. Buy Derila now with 70% off discount."> <link rel="canonical" href="https://get-derila.com/"/> <meta name="robots" content="noindex, nofollow"> <meta name="csrf-token" content="rLAYzjDd2ymjj4BwBjzggGCcwZO6jmxfc3Rh0V5G"> <script> window.addEventListener('storage', function (event) { if (event.key === 'last_csrf_token') { updateCsrf(event.newValue); } }); const localStorage = window.localStorage; if (localStorage) { function getCookie(name) { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); } var cookieSessionId = getCookie('orbio_session_id'); var requestSessionId = 'UQdYjWmodIMccC3a'; if (cookieSessionId === requestSessionId) { localStorage.setItem('last_csrf_token', 'rLAYzjDd2ymjj4BwBjzggGCcwZO6jmxfc3Rh0V5G') } else if (localStorage.getItem('last_csrf_token')) { updateCsrf(localStorage.getItem('last_csrf_token')); } } function updateCsrf(value) { var metaTag = document.querySelector('meta[name="csrf-token"]'); var hiddenInput = document.querySelector('input[name="_token"]'); if (metaTag) { metaTag.setAttribute('content', value); } if (hiddenInput) { hiddenInput.value = value; } if (window.livewireScriptConfig) { window.livewireScriptConfig.csrf = value; } } </script> <script type="module"> function q_(){import.meta.url,import("_").catch(()=>1);async function*t(){}}const Mi=Object.prototype.toString;function Gi(t){switch(Mi.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return Ut(t,Error)}}function oe(t,e){return Mi.call(t)===`[object ${e}]`}function Pi(t){return oe(t,"ErrorEvent")}function Gr(t){return oe(t,"DOMError")}function Ga(t){return oe(t,"DOMException")}function Ct(t){return oe(t,"String")}function Yi(t){return t===null||typeof t!="object"&&typeof t!="function"}function Qt(t){return oe(t,"Object")}function _r(t){return typeof Event<"u"&&Ut(t,Event)}function Pa(t){return typeof Element<"u"&&Ut(t,Element)}function Ya(t){return oe(t,"RegExp")}function gn(t){return!!(t&&t.then&&typeof t.then=="function")}function Fa(t){return Qt(t)&&"nativeEvent"in t&&"preventDefault"in t&&"stopPropagation"in t}function Fi(t){return typeof t=="number"&&t!==t}function Ut(t,e){try{return t instanceof e}catch(n){return!1}}function Me(t){return t&&t.Math==Math?t:void 0}const nt=typeof globalThis=="object"&&Me(globalThis)||typeof window=="object"&&Me(window)||typeof self=="object"&&Me(self)||typeof global=="object"&&Me(global)||function(){return this}()||{};function Oe(){return nt}function hr(t,e,n){const r=n||nt,i=r.__SENTRY__=r.__SENTRY__||{};return i[t]||(i[t]=e())}const Je=Oe(),za=80;function Pt(t,e={}){try{let n=t;const r=5,i=[];let s=0,a=0;const o=" > ",c=o.length;let u;const d=Array.isArray(e)?e:e.keyAttrs,l=!Array.isArray(e)&&e.maxStringLength||za;for(;n&&s++<r&&(u=$a(n,d),!(u==="html"||s>1&&a+i.length*c+u.length>=l));)i.push(u),a+=u.length,n=n.parentNode;return i.reverse().join(o)}catch(n){return"<unknown>"}}function $a(t,e){const n=t,r=[];let i,s,a,o,c;if(!n||!n.tagName)return"";r.push(n.tagName.toLowerCase());const u=e&&e.length?e.filter(l=>n.getAttribute(l)).map(l=>[l,n.getAttribute(l)]):null;if(u&&u.length)u.forEach(l=>{r.push(`[${l[0]}="${l[1]}"]`)});else if(n.id&&r.push(`#${n.id}`),i=n.className,i&&Ct(i))for(s=i.split(/\s+/),c=0;c<s.length;c++)r.push(`.${s[c]}`);const d=["aria-label","type","name","title","alt"];for(c=0;c<d.length;c++)a=d[c],o=n.getAttribute(a),o&&r.push(`[${a}="${o}"]`);return r.join("")}function Ha(){try{return Je.document.location.href}catch(t){return""}}function ja(t){return Je.document&&Je.document.querySelector?Je.document.querySelector(t):null}class J extends Error{constructor(e,n="warn"){super(e),this.message=e,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=n}}const Wa=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function qa(t){return t==="http"||t==="https"}function ce(t,e=!1){const{host:n,path:r,pass:i,port:s,projectId:a,protocol:o,publicKey:c}=t;return`${o}://${c}${e&&i?`:${i}`:""}@${n}${s?`:${s}`:""}/${r&&`${r}/`}${a}`}function zi(t){const e=Wa.exec(t);if(!e)throw new J(`Invalid Sentry Dsn: ${t}`);const[n,r,i="",s,a="",o]=e.slice(1);let c="",u=o;const d=u.split("/");if(d.length>1&&(c=d.slice(0,-1).join("/"),u=d.pop()),u){const l=u.match(/^\d+/);l&&(u=l[0])}return $i({host:s,pass:i,path:c,projectId:u,port:a,protocol:n,publicKey:r})}function $i(t){return{protocol:t.protocol,publicKey:t.publicKey||"",pass:t.pass||"",host:t.host,port:t.port||"",path:t.path||"",projectId:t.projectId}}function Za(t){if(!(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__))return;const{port:e,projectId:n,protocol:r}=t;if(["protocol","publicKey","host","projectId"].forEach(s=>{if(!t[s])throw new J(`Invalid Sentry Dsn: ${s} missing`)}),!n.match(/^\d+$/))throw new J(`Invalid Sentry Dsn: Invalid projectId ${n}`);if(!qa(r))throw new J(`Invalid Sentry Dsn: Invalid protocol ${r}`);if(e&&isNaN(parseInt(e,10)))throw new J(`Invalid Sentry Dsn: Invalid port ${e}`);return!0}function Hi(t){const e=typeof t=="string"?zi(t):$i(t);return Za(e),e}const Va="Sentry Logger ",sn=["debug","info","warn","error","log","assert","trace"];function ji(t){if(!("console"in nt))return t();const e=nt.console,n={};sn.forEach(r=>{const i=e[r]&&e[r].__sentry_original__;r in e&&i&&(n[r]=e[r],e[r]=i)});try{return t()}finally{Object.keys(n).forEach(r=>{e[r]=n[r]})}}function Pr(){let t=!1;const e={enable:()=>{t=!0},disable:()=>{t=!1}};return typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?sn.forEach(n=>{e[n]=(...r)=>{t&&ji(()=>{nt.console[n](`${Va}[${n}]:`,...r)})}}):sn.forEach(n=>{e[n]=()=>{}}),e}let f;typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?f=hr("logger",Pr):f=Pr();function ye(t,e=0){return typeof t!="string"||e===0||t.length<=e?t:`${t.slice(0,e)}...`}function Yr(t,e){if(!Array.isArray(t))return"";const n=[];for(let r=0;r<t.length;r++){const i=t[r];try{n.push(String(i))}catch(s){n.push("[value cannot be serialized]")}}return n.join(e)}function Xa(t,e,n=!1){return Ct(t)?Ya(e)?e.test(t):Ct(e)?n?t===e:t.includes(e):!1:!1}function ue(t,e=[],n=!1){return e.some(r=>Xa(t,r,n))}function X(t,e,n){if(!(e in t))return;const r=t[e],i=n(r);if(typeof i=="function")try{Wi(i,r)}catch(s){}t[e]=i}function pr(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,configurable:!0})}function Wi(t,e){const n=e.prototype||{};t.prototype=e.prototype=n,pr(t,"__sentry_original__",e)}function mr(t){return t.__sentry_original__}function Ka(t){return Object.keys(t).map(e=>`${encodeURIComponent(e)}=${encodeURIComponent(t[e])}`).join("&")}function qi(t){if(Gi(t))return{message:t.message,name:t.name,stack:t.stack,...zr(t)};if(_r(t)){const e={type:t.type,target:Fr(t.target),currentTarget:Fr(t.currentTarget),...zr(t)};return typeof CustomEvent<"u"&&Ut(t,CustomEvent)&&(e.detail=t.detail),e}else return t}function Fr(t){try{return Pa(t)?Pt(t):Object.prototype.toString.call(t)}catch(e){return"<unknown>"}}function zr(t){if(typeof t=="object"&&t!==null){const e={};for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}else return{}}function Ja(t,e=40){const n=Object.keys(qi(t));if(n.sort(),!n.length)return"[object has no keys]";if(n[0].length>=e)return ye(n[0],e);for(let r=n.length;r>0;r--){const i=n.slice(0,r).join(", ");if(!(i.length>e))return r===n.length?i:ye(i,e)}return""}function ut(t){return Mn(t,new Map)}function Mn(t,e){if(Qt(t)){const n=e.get(t);if(n!==void 0)return n;const r={};e.set(t,r);for(const i of Object.keys(t))typeof t[i]<"u"&&(r[i]=Mn(t[i],e));return r}if(Array.isArray(t)){const n=e.get(t);if(n!==void 0)return n;const r=[];return e.set(t,r),t.forEach(i=>{r.push(Mn(i,e))}),r}return t}const Zi=50,$r=/\(error: (.*)\)/;function Vi(...t){const e=t.sort((n,r)=>n[0]-r[0]).map(n=>n[1]);return(n,r=0)=>{const i=[],s=n.split(` `);for(let a=r;a<s.length;a++){const o=s[a];if(o.length>1024)continue;const c=$r.test(o)?o.replace($r,"$1"):o;if(!c.match(/\S*Error: /)){for(const u of e){const d=u(c);if(d){i.push(d);break}}if(i.length>=Zi)break}}return to(i)}}function Qa(t){return Array.isArray(t)?Vi(...t):t}function to(t){if(!t.length)return[];const e=t.slice(0,Zi),n=e[e.length-1].function;n&&/sentryWrapped/.test(n)&&e.pop(),e.reverse();const r=e[e.length-1].function;return r&&/captureMessage|captureException/.test(r)&&e.pop(),e.map(i=>({...i,filename:i.filename||e[e.length-1].filename,function:i.function||"?"}))}const xn="<anonymous>";function Bt(t){try{return!t||typeof t!="function"?xn:t.name||xn}catch(e){return xn}}const Gn=Oe();function Xi(){if(!("fetch"in Gn))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch(t){return!1}}function Pn(t){return t&&/^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(t.toString())}function eo(){if(!Xi())return!1;if(Pn(Gn.fetch))return!0;let t=!1;const e=Gn.document;if(e&&typeof e.createElement=="function")try{const n=e.createElement("iframe");n.hidden=!0,e.head.appendChild(n),n.contentWindow&&n.contentWindow.fetch&&(t=Pn(n.contentWindow.fetch)),e.head.removeChild(n)}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return t}const Ge=Oe();function no(){const t=Ge.chrome,e=t&&t.app&&t.app.runtime,n="history"in Ge&&!!Ge.history.pushState&&!!Ge.history.replaceState;return!e&&n}const P=Oe(),Rt="__sentry_xhr_v2__",Ee={},Hr={};function ro(t){if(!Hr[t])switch(Hr[t]=!0,t){case"console":io();break;case"dom":_o();break;case"xhr":oo();break;case"fetch":so();break;case"history":co();break;case"error":ho();break;case"unhandledrejection":po();break;default:(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("unknown instrumentation type:",t);return}}function V(t,e){Ee[t]=Ee[t]||[],Ee[t].push(e),ro(t)}function dt(t,e){if(!(!t||!Ee[t]))for(const n of Ee[t]||[])try{n(e)}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error(`Error while triggering instrumentation handler. Type: ${t} Name: ${Bt(n)} Error:`,r)}}function io(){"console"in P&&sn.forEach(function(t){t in P.console&&X(P.console,t,function(e){return function(...n){dt("console",{args:n,level:t}),e&&e.apply(P.console,n)}})})}function so(){eo()&&X(P,"fetch",function(t){return function(...e){const{method:n,url:r}=ao(e),i={args:e,fetchData:{method:n,url:r},startTimestamp:Date.now()};return dt("fetch",{...i}),t.apply(P,e).then(s=>(dt("fetch",{...i,endTimestamp:Date.now(),response:s}),s),s=>{throw dt("fetch",{...i,endTimestamp:Date.now(),error:s}),s})}})}function Yn(t,e){return!!t&&typeof t=="object"&&!!t[e]}function jr(t){return typeof t=="string"?t:t?Yn(t,"url")?t.url:t.toString?t.toString():"":""}function ao(t){if(t.length===0)return{method:"GET",url:""};if(t.length===2){const[n,r]=t;return{url:jr(n),method:Yn(r,"method")?String(r.method).toUpperCase():"GET"}}const e=t[0];return{url:jr(e),method:Yn(e,"method")?String(e.method).toUpperCase():"GET"}}function oo(){if(!("XMLHttpRequest"in P))return;const t=XMLHttpRequest.prototype;X(t,"open",function(e){return function(...n){const r=n[1],i=this[Rt]={method:Ct(n[0])?n[0].toUpperCase():n[0],url:n[1],request_headers:{}};Ct(r)&&i.method==="POST"&&r.match(/sentry_key/)&&(this.__sentry_own_request__=!0);const s=()=>{const a=this[Rt];if(a&&this.readyState===4){try{a.status_code=this.status}catch(o){}dt("xhr",{args:n,endTimestamp:Date.now(),startTimestamp:Date.now(),xhr:this})}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?X(this,"onreadystatechange",function(a){return function(...o){return s(),a.apply(this,o)}}):this.addEventListener("readystatechange",s),X(this,"setRequestHeader",function(a){return function(...o){const[c,u]=o,d=this[Rt];return d&&(d.request_headers[c.toLowerCase()]=u),a.apply(this,o)}}),e.apply(this,n)}}),X(t,"send",function(e){return function(...n){const r=this[Rt];return r&&n[0]!==void 0&&(r.body=n[0]),dt("xhr",{args:n,startTimestamp:Date.now(),xhr:this}),e.apply(this,n)}})}let Pe;function co(){if(!no())return;const t=P.onpopstate;P.onpopstate=function(...n){const r=P.location.href,i=Pe;if(Pe=r,dt("history",{from:i,to:r}),t)try{return t.apply(this,n)}catch(s){}};function e(n){return function(...r){const i=r.length>2?r[2]:void 0;if(i){const s=Pe,a=String(i);Pe=a,dt("history",{from:s,to:a})}return n.apply(this,r)}}X(P.history,"pushState",e),X(P.history,"replaceState",e)}const uo=1e3;let Ye,Fe;function lo(t,e){if(!t||t.type!==e.type)return!0;try{if(t.target!==e.target)return!0}catch(n){}return!1}function fo(t){if(t.type!=="keypress")return!1;try{const e=t.target;if(!e||!e.tagName)return!0;if(e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.isContentEditable)return!1}catch(e){}return!0}function Wr(t,e=!1){return n=>{if(!n||Fe===n||fo(n))return;const r=n.type==="keypress"?"input":n.type;Ye===void 0?(t({event:n,name:r,global:e}),Fe=n):lo(Fe,n)&&(t({event:n,name:r,global:e}),Fe=n),clearTimeout(Ye),Ye=P.setTimeout(()=>{Ye=void 0},uo)}}function _o(){if(!("document"in P))return;const t=dt.bind(null,"dom"),e=Wr(t,!0);P.document.addEventListener("click",e,!1),P.document.addEventListener("keypress",e,!1),["EventTarget","Node"].forEach(n=>{const r=P[n]&&P[n].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(X(r,"addEventListener",function(i){return function(s,a,o){if(s==="click"||s=="keypress")try{const c=this,u=c.__sentry_instrumentation_handlers__=c.__sentry_instrumentation_handlers__||{},d=u[s]=u[s]||{refCount:0};if(!d.handler){const l=Wr(t);d.handler=l,i.call(this,s,l,o)}d.refCount++}catch(c){}return i.call(this,s,a,o)}}),X(r,"removeEventListener",function(i){return function(s,a,o){if(s==="click"||s=="keypress")try{const c=this,u=c.__sentry_instrumentation_handlers__||{},d=u[s];d&&(d.refCount--,d.refCount<=0&&(i.call(this,s,d.handler,o),d.handler=void 0,delete u[s]),Object.keys(u).length===0&&delete c.__sentry_instrumentation_handlers__)}catch(c){}return i.call(this,s,a,o)}}))})}let ze=null;function ho(){ze=P.onerror,P.onerror=function(t,e,n,r,i){return dt("error",{column:r,error:i,line:n,msg:t,url:e}),ze&&!ze.__SENTRY_LOADER__?ze.apply(this,arguments):!1},P.onerror.__SENTRY_INSTRUMENTED__=!0}let $e=null;function po(){$e=P.onunhandledrejection,P.onunhandledrejection=function(t){return dt("unhandledrejection",t),$e&&!$e.__SENTRY_LOADER__?$e.apply(this,arguments):!0},P.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}function mo(){const t=typeof WeakSet=="function",e=t?new WeakSet:[];function n(i){if(t)return e.has(i)?!0:(e.add(i),!1);for(let s=0;s<e.length;s++)if(e[s]===i)return!0;return e.push(i),!1}function r(i){if(t)e.delete(i);else for(let s=0;s<e.length;s++)if(e[s]===i){e.splice(s,1);break}}return[n,r]}function lt(){const t=nt,e=t.crypto||t.msCrypto;if(e&&e.randomUUID)return e.randomUUID().replace(/-/g,"");const n=e&&e.getRandomValues?()=>e.getRandomValues(new Uint8Array(1))[0]:()=>Math.random()*16;return([1e7]+1e3+4e3+8e3+1e11).replace(/[018]/g,r=>(r^(n()&15)>>r/4).toString(16))}function Ki(t){return t.exception&&t.exception.values?t.exception.values[0]:void 0}function vt(t){const{message:e,event_id:n}=t;if(e)return e;const r=Ki(t);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"<unknown>":n||"<unknown>"}function Fn(t,e,n){const r=t.exception=t.exception||{},i=r.values=r.values||[],s=i[0]=i[0]||{};s.value||(s.value=e||""),s.type||(s.type=n||"Error")}function ve(t,e){const n=Ki(t);if(!n)return;const r={type:"generic",handled:!0},i=n.mechanism;if(n.mechanism={...r,...i,...e},e&&"data"in e){const s={...i&&i.data,...e.data};n.mechanism.data=s}}function qr(t){if(t&&t.__sentry_captured__)return!0;try{pr(t,"__sentry_captured__",!0)}catch(e){}return!1}function Ji(t){return Array.isArray(t)?t:[t]}function go(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function yo(){return"npm"}function Qi(){return!go()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function Eo(t,e){return t.require(e)}function pt(t,e=100,n=1/0){try{return zn("",t,e,n)}catch(r){return{ERROR:`**non-serializable** (${r})`}}}function ts(t,e=3,n=100*1024){const r=pt(t,e);return To(r)>n?ts(t,e-1,n):r}function zn(t,e,n=1/0,r=1/0,i=mo()){const[s,a]=i;if(e==null||["number","boolean","string"].includes(typeof e)&&!Fi(e))return e;const o=So(t,e);if(!o.startsWith("[object "))return o;if(e.__sentry_skip_normalization__)return e;const c=typeof e.__sentry_override_normalization_depth__=="number"?e.__sentry_override_normalization_depth__:n;if(c===0)return o.replace("object ","");if(s(e))return"[Circular ~]";const u=e;if(u&&typeof u.toJSON=="function")try{const _=u.toJSON();return zn("",_,c-1,r,i)}catch(_){}const d=Array.isArray(e)?[]:{};let l=0;const h=qi(e);for(const _ in h){if(!Object.prototype.hasOwnProperty.call(h,_))continue;if(l>=r){d[_]="[MaxProperties ~]";break}const p=h[_];d[_]=zn(_,p,c-1,r,i),l++}return a(e),d}function So(t,e){try{if(t==="domain"&&e&&typeof e=="object"&&e._events)return"[Domain]";if(t==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&e===global)return"[Global]";if(typeof window<"u"&&e===window)return"[Window]";if(typeof document<"u"&&e===document)return"[Document]";if(Fa(e))return"[SyntheticEvent]";if(typeof e=="number"&&e!==e)return"[NaN]";if(typeof e=="function")return`[Function: ${Bt(e)}]`;if(typeof e=="symbol")return`[${String(e)}]`;if(typeof e=="bigint")return`[BigInt: ${String(e)}]`;const n=bo(e);return/^HTML(\w*)Element$/.test(n)?`[HTMLElement: ${n}]`:`[object ${n}]`}catch(n){return`**non-serializable** (${n})`}}function bo(t){const e=Object.getPrototypeOf(t);return e?e.constructor.name:"null prototype"}function wo(t){return~-encodeURI(t).split(/%..|./).length}function To(t){return wo(JSON.stringify(t))}var gt;(function(t){t[t.PENDING=0]="PENDING";const n=1;t[t.RESOLVED=n]="RESOLVED";const r=2;t[t.REJECTED=r]="REJECTED"})(gt||(gt={}));function St(t){return new tt(e=>{e(t)})}function an(t){return new tt((e,n)=>{n(t)})}class tt{__init(){this._state=gt.PENDING}__init2(){this._handlers=[]}constructor(e){tt.prototype.__init.call(this),tt.prototype.__init2.call(this),tt.prototype.__init3.call(this),tt.prototype.__init4.call(this),tt.prototype.__init5.call(this),tt.prototype.__init6.call(this);try{e(this._resolve,this._reject)}catch(n){this._reject(n)}}then(e,n){return new tt((r,i)=>{this._handlers.push([!1,s=>{if(!e)r(s);else try{r(e(s))}catch(a){i(a)}},s=>{if(!n)i(s);else try{r(n(s))}catch(a){i(a)}}]),this._executeHandlers()})}catch(e){return this.then(n=>n,e)}finally(e){return new tt((n,r)=>{let i,s;return this.then(a=>{s=!1,i=a,e&&e()},a=>{s=!0,i=a,e&&e()}).then(()=>{if(s){r(i);return}n(i)})})}__init3(){this._resolve=e=>{this._setResult(gt.RESOLVED,e)}}__init4(){this._reject=e=>{this._setResult(gt.REJECTED,e)}}__init5(){this._setResult=(e,n)=>{if(this._state===gt.PENDING){if(gn(n)){n.then(this._resolve,this._reject);return}this._state=e,this._value=n,this._executeHandlers()}}}__init6(){this._executeHandlers=()=>{if(this._state===gt.PENDING)return;const e=this._handlers.slice();this._handlers=[],e.forEach(n=>{n[0]||(this._state===gt.RESOLVED&&n[1](this._value),this._state===gt.REJECTED&&n[2](this._value),n[0]=!0)})}}}function vo(t){const e=[];function n(){return t===void 0||e.length<t}function r(a){return e.splice(e.indexOf(a),1)[0]}function i(a){if(!n())return an(new J("Not adding Promise because buffer limit was reached."));const o=a();return e.indexOf(o)===-1&&e.push(o),o.then(()=>r(o)).then(null,()=>r(o).then(null,()=>{})),o}function s(a){return new tt((o,c)=>{let u=e.length;if(!u)return o(!0);const d=setTimeout(()=>{a&&a>0&&o(!1)},a);e.forEach(l=>{St(l).then(()=>{--u||(clearTimeout(d),o(!0))},c)})})}return{$:e,add:i,drain:s}}function In(t){if(!t)return{};const e=t.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!e)return{};const n=e[6]||"",r=e[8]||"";return{host:e[4],path:e[5],protocol:e[2],search:n,hash:r,relative:e[5]+n+r}}const Ro=["fatal","error","warning","log","info","debug"];function ko(t){return t==="warn"?"warning":Ro.includes(t)?t:"log"}const es=Oe(),$n={nowSeconds:()=>Date.now()/1e3};function No(){const{performance:t}=es;if(!t||!t.now)return;const e=Date.now()-t.now();return{now:()=>t.now(),timeOrigin:e}}function Do(){try{return Eo(module,"perf_hooks").performance}catch(t){return}}const On=Qi()?Do():No(),Zr=On===void 0?$n:{nowSeconds:()=>(On.timeOrigin+On.now())/1e3},yn=$n.nowSeconds.bind($n),Yt=Zr.nowSeconds.bind(Zr),bt=(()=>{const{performance:t}=es;if(!t||!t.now)return;const e=3600*1e3,n=t.now(),r=Date.now(),i=t.timeOrigin?Math.abs(t.timeOrigin+n-r):e,s=i<e,a=t.timing&&t.timing.navigationStart,c=typeof a=="number"?Math.abs(a+n-r):e,u=c<e;return s||u?i<=c?t.timeOrigin:a:r})(),xo=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function ns(t){const e=t.match(xo);if(!t||!e)return;let n;return e[3]==="1"?n=!0:e[3]==="0"&&(n=!1),{traceId:e[1],parentSampled:n,parentSpanId:e[2]}}function Wt(t,e=[]){return[t,e]}function Io(t,e){const[n,r]=t;return[n,[...r,e]]}function on(t,e){const n=t[1];for(const r of n){const i=r[0].type;if(e(r,i))return!0}return!1}function Oo(t,e){return on(t,(n,r)=>e.includes(r))}function Hn(t,e){return(e||new TextEncoder).encode(t)}function rs(t,e){const[n,r]=t;let i=JSON.stringify(n);function s(a){typeof i=="string"?i=typeof a=="string"?i+a:[Hn(i,e),a]:i.push(typeof a=="string"?Hn(a,e):a)}for(const a of r){const[o,c]=a;if(s(` ${JSON.stringify(o)} `),typeof c=="string"||c instanceof Uint8Array)s(c);else{let u;try{u=JSON.stringify(c)}catch(d){u=JSON.stringify(pt(c))}s(u)}}return typeof i=="string"?i:Ao(i)}function Ao(t){const e=t.reduce((i,s)=>i+s.length,0),n=new Uint8Array(e);let r=0;for(const i of t)n.set(i,r),r+=i.length;return n}function Co(t,e,n){let r=typeof t=="string"?e.encode(t):t;function i(c){const u=r.subarray(0,c);return r=r.subarray(c+1),u}function s(){let c=r.indexOf(10);return c<0&&(c=r.length),JSON.parse(n.decode(i(c)))}const a=s(),o=[];for(;r.length;){const c=s(),u=typeof c.length=="number"?c.length:void 0;o.push([c,u?i(u):s()])}return[a,o]}function Uo(t,e){const n=typeof t.data=="string"?Hn(t.data,e):t.data;return[ut({type:"attachment",length:n.length,filename:t.filename,content_type:t.contentType,attachment_type:t.attachmentType}),n]}const Bo={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor"};function Vr(t){return Bo[t]}function gr(t){if(!t||!t.sdk)return;const{name:e,version:n}=t.sdk;return{name:e,version:n}}function is(t,e,n,r){const i=t.sdkProcessingMetadata&&t.sdkProcessingMetadata.dynamicSamplingContext;return{event_id:t.event_id,sent_at:new Date().toISOString(),...e&&{sdk:e},...!!n&&{dsn:ce(r)},...i&&{trace:ut({...i})}}}function Lo(t,e,n){const r=[{type:"client_report"},{timestamp:n||yn(),discarded_events:t}];return Wt(e?{dsn:e}:{},[r])}const Mo=60*1e3;function ss(t,e=Date.now()){const n=parseInt(`${t}`,10);if(!isNaN(n))return n*1e3;const r=Date.parse(`${t}`);return isNaN(r)?Mo:r-e}function Go(t,e){return t[e]||t.all||0}function Po(t,e,n=Date.now()){return Go(t,e)>n}function Yo(t,{statusCode:e,headers:n},r=Date.now()){const i={...t},s=n&&n["x-sentry-rate-limits"],a=n&&n["retry-after"];if(s)for(const o of s.trim().split(",")){const[c,u]=o.split(":",2),d=parseInt(c,10),l=(isNaN(d)?60:d)*1e3;if(!u)i.all=r+l;else for(const h of u.split(";"))i[h]=r+l}else a?i.all=r+ss(a,r):e===429&&(i.all=r+60*1e3);return i}const jn="baggage",as="sentry-",Fo=/^sentry-/,zo=8192;function $o(t){if(!Ct(t)&&!Array.isArray(t))return;let e={};if(Array.isArray(t))e=t.reduce((r,i)=>{const s=Xr(i);return{...r,...s}},{});else{if(!t)return;e=Xr(t)}const n=Object.entries(e).reduce((r,[i,s])=>{if(i.match(Fo)){const a=i.slice(as.length);r[a]=s}return r},{});if(Object.keys(n).length>0)return n}function os(t){const e=Object.entries(t).reduce((n,[r,i])=>(i&&(n[`${as}${r}`]=i),n),{});return Ho(e)}function Xr(t){return t.split(",").map(e=>e.split("=").map(n=>decodeURIComponent(n.trim()))).reduce((e,[n,r])=>(e[n]=r,e),{})}function Ho(t){if(Object.keys(t).length!==0)return Object.entries(t).reduce((e,[n,r],i)=>{const s=`${encodeURIComponent(n)}=${encodeURIComponent(r)}`,a=i===0?s:`${e},${s}`;return a.length>zo?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Not adding key: ${n} with val: ${r} to baggage header due to exceeding baggage size limits.`),e):a},"")}const En="production";function jo(t){const e=Yt(),n={sid:lt(),init:!0,timestamp:e,started:e,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>qo(n)};return t&&te(n,t),n}function te(t,e={}){if(e.user&&(!t.ipAddress&&e.user.ip_address&&(t.ipAddress=e.user.ip_address),!t.did&&!e.did&&(t.did=e.user.id||e.user.email||e.user.username)),t.timestamp=e.timestamp||Yt(),e.ignoreDuration&&(t.ignoreDuration=e.ignoreDuration),e.sid&&(t.sid=e.sid.length===32?e.sid:lt()),e.init!==void 0&&(t.init=e.init),!t.did&&e.did&&(t.did=`${e.did}`),typeof e.started=="number"&&(t.started=e.started),t.ignoreDuration)t.duration=void 0;else if(typeof e.duration=="number")t.duration=e.duration;else{const n=t.timestamp-t.started;t.duration=n>=0?n:0}e.release&&(t.release=e.release),e.environment&&(t.environment=e.environment),!t.ipAddress&&e.ipAddress&&(t.ipAddress=e.ipAddress),!t.userAgent&&e.userAgent&&(t.userAgent=e.userAgent),typeof e.errors=="number"&&(t.errors=e.errors),e.status&&(t.status=e.status)}function Wo(t,e){let n={};e?n={status:e}:t.status==="ok"&&(n={status:"exited"}),te(t,n)}function qo(t){return ut({sid:`${t.sid}`,init:t.init,started:new Date(t.started*1e3).toISOString(),timestamp:new Date(t.timestamp*1e3).toISOString(),status:t.status,errors:t.errors,did:typeof t.did=="number"||typeof t.did=="string"?`${t.did}`:void 0,duration:t.duration,attrs:{release:t.release,environment:t.environment,ip_address:t.ipAddress,user_agent:t.userAgent}})}const Zo=100;class Dt{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={}}static clone(e){const n=new Dt;return e&&(n._breadcrumbs=[...e._breadcrumbs],n._tags={...e._tags},n._extra={...e._extra},n._contexts={...e._contexts},n._user=e._user,n._level=e._level,n._span=e._span,n._session=e._session,n._transactionName=e._transactionName,n._fingerprint=e._fingerprint,n._eventProcessors=[...e._eventProcessors],n._requestSession=e._requestSession,n._attachments=[...e._attachments],n._sdkProcessingMetadata={...e._sdkProcessingMetadata}),n}addScopeListener(e){this._scopeListeners.push(e)}addEventProcessor(e){return this._eventProcessors.push(e),this}setUser(e){return this._user=e||{},this._session&&te(this._session,{user:e}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(e){return this._requestSession=e,this}setTags(e){return this._tags={...this._tags,...e},this._notifyScopeListeners(),this}setTag(e,n){return this._tags={...this._tags,[e]:n},this._notifyScopeListeners(),this}setExtras(e){return this._extra={...this._extra,...e},this._notifyScopeListeners(),this}setExtra(e,n){return this._extra={...this._extra,[e]:n},this._notifyScopeListeners(),this}setFingerprint(e){return this._fingerprint=e,this._notifyScopeListeners(),this}setLevel(e){return this._level=e,this._notifyScopeListeners(),this}setTransactionName(e){return this._transactionName=e,this._notifyScopeListeners(),this}setContext(e,n){return n===null?delete this._contexts[e]:this._contexts[e]=n,this._notifyScopeListeners(),this}setSpan(e){return this._span=e,this._notifyScopeListeners(),this}getSpan(){return this._span}getTransaction(){const e=this.getSpan();return e&&e.transaction}setSession(e){return e?this._session=e:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(e){if(!e)return this;if(typeof e=="function"){const n=e(this);return n instanceof Dt?n:this}return e instanceof Dt?(this._tags={...this._tags,...e._tags},this._extra={...this._extra,...e._extra},this._contexts={...this._contexts,...e._contexts},e._user&&Object.keys(e._user).length&&(this._user=e._user),e._level&&(this._level=e._level),e._fingerprint&&(this._fingerprint=e._fingerprint),e._requestSession&&(this._requestSession=e._requestSession)):Qt(e)&&(e=e,this._tags={...this._tags,...e.tags},this._extra={...this._extra,...e.extra},this._contexts={...this._contexts,...e.contexts},e.user&&(this._user=e.user),e.level&&(this._level=e.level),e.fingerprint&&(this._fingerprint=e.fingerprint),e.requestSession&&(this._requestSession=e.requestSession)),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this._attachments=[],this}addBreadcrumb(e,n){const r=typeof n=="number"?n:Zo;if(r<=0)return this;const i={timestamp:yn(),...e};return this._breadcrumbs=[...this._breadcrumbs,i].slice(-r),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(e){return this._attachments.push(e),this}getAttachments(){return this._attachments}clearAttachments(){return this._attachments=[],this}applyToEvent(e,n={}){if(this._extra&&Object.keys(this._extra).length&&(e.extra={...this._extra,...e.extra}),this._tags&&Object.keys(this._tags).length&&(e.tags={...this._tags,...e.tags}),this._user&&Object.keys(this._user).length&&(e.user={...this._user,...e.user}),this._contexts&&Object.keys(this._contexts).length&&(e.contexts={...this._contexts,...e.contexts}),this._level&&(e.level=this._level),this._transactionName&&(e.transaction=this._transactionName),this._span){e.contexts={trace:this._span.getTraceContext(),...e.contexts};const r=this._span.transaction;if(r){e.sdkProcessingMetadata={dynamicSamplingContext:r.getDynamicSamplingContext(),...e.sdkProcessingMetadata};const i=r.name;i&&(e.tags={transaction:i,...e.tags})}}return this._applyFingerprint(e),e.breadcrumbs=[...e.breadcrumbs||[],...this._breadcrumbs],e.breadcrumbs=e.breadcrumbs.length>0?e.breadcrumbs:void 0,e.sdkProcessingMetadata={...e.sdkProcessingMetadata,...this._sdkProcessingMetadata},this._notifyEventProcessors([...cs(),...this._eventProcessors],e,n)}setSDKProcessingMetadata(e){return this._sdkProcessingMetadata={...this._sdkProcessingMetadata,...e},this}_notifyEventProcessors(e,n,r,i=0){return new tt((s,a)=>{const o=e[i];if(n===null||typeof o!="function")s(n);else{const c=o({...n},r);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&o.id&&c===null&&f.log(`Event processor "${o.id}" dropped event`),gn(c)?c.then(u=>this._notifyEventProcessors(e,u,r,i+1).then(s)).then(null,a):this._notifyEventProcessors(e,c,r,i+1).then(s).then(null,a)}})}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(e=>{e(this)}),this._notifyingListeners=!1)}_applyFingerprint(e){e.fingerprint=e.fingerprint?Ji(e.fingerprint):[],this._fingerprint&&(e.fingerprint=e.fingerprint.concat(this._fingerprint)),e.fingerprint&&!e.fingerprint.length&&delete e.fingerprint}}function cs(){return hr("globalEventProcessors",()=>[])}function Ae(t){cs().push(t)}const us=4,Vo=100;class yr{constructor(e,n=new Dt,r=us){this._version=r,this._stack=[{scope:n}],e&&this.bindClient(e)}isOlderThan(e){return this._version<e}bindClient(e){const n=this.getStackTop();n.client=e,e&&e.setupIntegrations&&e.setupIntegrations()}pushScope(){const e=Dt.clone(this.getScope());return this.getStack().push({client:this.getClient(),scope:e}),e}popScope(){return this.getStack().length<=1?!1:!!this.getStack().pop()}withScope(e){const n=this.pushScope();try{e(n)}finally{this.popScope()}}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getStack(){return this._stack}getStackTop(){return this._stack[this._stack.length-1]}captureException(e,n){const r=this._lastEventId=n&&n.event_id?n.event_id:lt(),i=new Error("Sentry syntheticException");return this._withClient((s,a)=>{s.captureException(e,{originalException:e,syntheticException:i,...n,event_id:r},a)}),r}captureMessage(e,n,r){const i=this._lastEventId=r&&r.event_id?r.event_id:lt(),s=new Error(e);return this._withClient((a,o)=>{a.captureMessage(e,n,{originalException:e,syntheticException:s,...r,event_id:i},o)}),i}captureEvent(e,n){const r=n&&n.event_id?n.event_id:lt();return e.type||(this._lastEventId=r),this._withClient((i,s)=>{i.captureEvent(e,{...n,event_id:r},s)}),r}lastEventId(){return this._lastEventId}addBreadcrumb(e,n){const{scope:r,client:i}=this.getStackTop();if(!i)return;const{beforeBreadcrumb:s=null,maxBreadcrumbs:a=Vo}=i.getOptions&&i.getOptions()||{};if(a<=0)return;const c={timestamp:yn(),...e},u=s?ji(()=>s(c,n)):c;u!==null&&(i.emit&&i.emit("beforeAddBreadcrumb",u,n),r.addBreadcrumb(u,a))}setUser(e){this.getScope().setUser(e)}setTags(e){this.getScope().setTags(e)}setExtras(e){this.getScope().setExtras(e)}setTag(e,n){this.getScope().setTag(e,n)}setExtra(e,n){this.getScope().setExtra(e,n)}setContext(e,n){this.getScope().setContext(e,n)}configureScope(e){const{scope:n,client:r}=this.getStackTop();r&&e(n)}run(e){const n=Wn(this);try{e(this)}finally{Wn(n)}}getIntegration(e){const n=this.getClient();if(!n)return null;try{return n.getIntegration(e)}catch(r){return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Cannot retrieve integration ${e.id} from the current Hub`),null}}startTransaction(e,n){const r=this._callExtensionMethod("startTransaction",e,n);return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&!r&&console.warn(`Tracing extension 'startTransaction' has not been added. Call 'addTracingExtensions' before calling 'init': Sentry.addTracingExtensions(); Sentry.init({...}); `),r}traceHeaders(){return this._callExtensionMethod("traceHeaders")}captureSession(e=!1){if(e)return this.endSession();this._sendSessionUpdate()}endSession(){const n=this.getStackTop().scope,r=n.getSession();r&&Wo(r),this._sendSessionUpdate(),n.setSession()}startSession(e){const{scope:n,client:r}=this.getStackTop(),{release:i,environment:s=En}=r&&r.getOptions()||{},{userAgent:a}=nt.navigator||{},o=jo({release:i,environment:s,user:n.getUser(),...a&&{userAgent:a},...e}),c=n.getSession&&n.getSession();return c&&c.status==="ok"&&te(c,{status:"exited"}),this.endSession(),n.setSession(o),o}shouldSendDefaultPii(){const e=this.getClient(),n=e&&e.getOptions();return!!(n&&n.sendDefaultPii)}_sendSessionUpdate(){const{scope:e,client:n}=this.getStackTop(),r=e.getSession();r&&n&&n.captureSession&&n.captureSession(r)}_withClient(e){const{scope:n,client:r}=this.getStackTop();r&&e(r,n)}_callExtensionMethod(e,...n){const i=de().__SENTRY__;if(i&&i.extensions&&typeof i.extensions[e]=="function")return i.extensions[e].apply(this,n);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Extension method ${e} couldn't be found, doing nothing.`)}}function de(){return nt.__SENTRY__=nt.__SENTRY__||{extensions:{},hub:void 0},nt}function Wn(t){const e=de(),n=cn(e);return ds(e,t),n}function g(){const t=de();if(t.__SENTRY__&&t.__SENTRY__.acs){const e=t.__SENTRY__.acs.getCurrentHub();if(e)return e}return Xo(t)}function Xo(t=de()){return(!Ko(t)||cn(t).isOlderThan(us))&&ds(t,new yr),cn(t)}function Ko(t){return!!(t&&t.__SENTRY__&&t.__SENTRY__.hub)}function cn(t){return hr("hub",()=>new yr,t)}function ds(t,e){if(!t)return!1;const n=t.__SENTRY__=t.__SENTRY__||{};return n.hub=e,!0}function Er(t){if(typeof __SENTRY_TRACING__=="boolean"&&!__SENTRY_TRACING__)return!1;const e=g().getClient(),n=t||e&&e.getOptions();return!!n&&(n.enableTracing||"tracesSampleRate"in n||"tracesSampler"in n)}function le(t){return(t||g()).getScope().getTransaction()}let Kr=!1;function Jo(){Kr||(Kr=!0,V("error",qn),V("unhandledrejection",qn))}function qn(){const t=le();if(t){const e="internal_error";(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Transaction: ${e} -> Global error occured`),t.setStatus(e)}}qn.tag="sentry_tracingErrorCallback";class Sn{__init(){this.spans=[]}constructor(e=1e3){Sn.prototype.__init.call(this),this._maxlen=e}add(e){this.spans.length>this._maxlen?e.spanRecorder=void 0:this.spans.push(e)}}class yt{__init2(){this.traceId=lt()}__init3(){this.spanId=lt().substring(16)}__init4(){this.startTimestamp=Yt()}__init5(){this.tags={}}__init6(){this.data={}}__init7(){this.instrumenter="sentry"}constructor(e){if(yt.prototype.__init2.call(this),yt.prototype.__init3.call(this),yt.prototype.__init4.call(this),yt.prototype.__init5.call(this),yt.prototype.__init6.call(this),yt.prototype.__init7.call(this),!e)return this;e.traceId&&(this.traceId=e.traceId),e.spanId&&(this.spanId=e.spanId),e.parentSpanId&&(this.parentSpanId=e.parentSpanId),"sampled"in e&&(this.sampled=e.sampled),e.op&&(this.op=e.op),e.description&&(this.description=e.description),e.data&&(this.data=e.data),e.tags&&(this.tags=e.tags),e.status&&(this.status=e.status),e.startTimestamp&&(this.startTimestamp=e.startTimestamp),e.endTimestamp&&(this.endTimestamp=e.endTimestamp),e.instrumenter&&(this.instrumenter=e.instrumenter)}startChild(e){const n=new yt({...e,parentSpanId:this.spanId,sampled:this.sampled,traceId:this.traceId});if(n.spanRecorder=this.spanRecorder,n.spanRecorder&&n.spanRecorder.add(n),n.transaction=this.transaction,(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&n.transaction){const r=e&&e.op||"< unknown op >",i=n.transaction.name||"< unknown name >",s=n.transaction.spanId,a=`[Tracing] Starting '${r}' span on transaction '${i}' (${s}).`;n.transaction.metadata.spanMetadata[n.spanId]={logMessage:a},f.log(a)}return n}setTag(e,n){return this.tags={...this.tags,[e]:n},this}setData(e,n){return this.data={...this.data,[e]:n},this}setStatus(e){return this.status=e,this}setHttpStatus(e){this.setTag("http.status_code",String(e));const n=ls(e);return n!=="unknown_error"&&this.setStatus(n),this}isSuccess(){return this.status==="ok"}finish(e){if((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&this.transaction&&this.transaction.spanId!==this.spanId){const{logMessage:n}=this.transaction.metadata.spanMetadata[this.spanId];n&&f.log(n.replace("Starting","Finishing"))}this.endTimestamp=typeof e=="number"?e:Yt()}toTraceparent(){let e="";return this.sampled!==void 0&&(e=this.sampled?"-1":"-0"),`${this.traceId}-${this.spanId}${e}`}toContext(){return ut({data:this.data,description:this.description,endTimestamp:this.endTimestamp,op:this.op,parentSpanId:this.parentSpanId,sampled:this.sampled,spanId:this.spanId,startTimestamp:this.startTimestamp,status:this.status,tags:this.tags,traceId:this.traceId})}updateWithContext(e){return this.data=e.data||{},this.description=e.description,this.endTimestamp=e.endTimestamp,this.op=e.op,this.parentSpanId=e.parentSpanId,this.sampled=e.sampled,this.spanId=e.spanId||this.spanId,this.startTimestamp=e.startTimestamp||this.startTimestamp,this.status=e.status,this.tags=e.tags||{},this.traceId=e.traceId||this.traceId,this}getTraceContext(){return ut({data:Object.keys(this.data).length>0?this.data:void 0,description:this.description,op:this.op,parent_span_id:this.parentSpanId,span_id:this.spanId,status:this.status,tags:Object.keys(this.tags).length>0?this.tags:void 0,trace_id:this.traceId})}toJSON(){return ut({data:Object.keys(this.data).length>0?this.data:void 0,description:this.description,op:this.op,parent_span_id:this.parentSpanId,span_id:this.spanId,start_timestamp:this.startTimestamp,status:this.status,tags:Object.keys(this.tags).length>0?this.tags:void 0,timestamp:this.endTimestamp,trace_id:this.traceId})}}function ls(t){if(t<400&&t>=100)return"ok";if(t>=400&&t<500)switch(t){case 401:return"unauthenticated";case 403:return"permission_denied";case 404:return"not_found";case 409:return"already_exists";case 413:return"failed_precondition";case 429:return"resource_exhausted";default:return"invalid_argument"}if(t>=500&&t<600)switch(t){case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline_exceeded";default:return"internal_error"}return"unknown_error"}class Jt extends yt{__init(){this._measurements={}}__init2(){this._contexts={}}__init3(){this._frozenDynamicSamplingContext=void 0}constructor(e,n){super(e),Jt.prototype.__init.call(this),Jt.prototype.__init2.call(this),Jt.prototype.__init3.call(this),this._hub=n||g(),this._name=e.name||"",this.metadata={source:"custom",...e.metadata,spanMetadata:{}},this._trimEnd=e.trimEnd,this.transaction=this;const r=this.metadata.dynamicSamplingContext;r&&(this._frozenDynamicSamplingContext={...r})}get name(){return this._name}set name(e){this.setName(e)}setName(e,n="custom"){this._name=e,this.metadata.source=n}initSpanRecorder(e=1e3){this.spanRecorder||(this.spanRecorder=new Sn(e)),this.spanRecorder.add(this)}setContext(e,n){n===null?delete this._contexts[e]:this._contexts[e]=n}setMeasurement(e,n,r=""){this._measurements[e]={value:n,unit:r}}setMetadata(e){this.metadata={...this.metadata,...e}}finish(e){if(this.endTimestamp!==void 0)return;this.name||((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Transaction has no name, falling back to `<unlabeled transaction>`."),this.name="<unlabeled transaction>"),super.finish(e);const n=this._hub.getClient();if(n&&n.emit&&n.emit("finishTransaction",this),this.sampled!==!0){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] Discarding transaction because its trace was not chosen to be sampled."),n&&n.recordDroppedEvent("sample_rate","transaction");return}const r=this.spanRecorder?this.spanRecorder.spans.filter(o=>o!==this&&o.endTimestamp):[];this._trimEnd&&r.length>0&&(this.endTimestamp=r.reduce((o,c)=>o.endTimestamp&&c.endTimestamp?o.endTimestamp>c.endTimestamp?o:c:o).endTimestamp);const i=this.metadata,s={contexts:{...this._contexts,trace:this.getTraceContext()},spans:r,start_timestamp:this.startTimestamp,tags:this.tags,timestamp:this.endTimestamp,transaction:this.name,type:"transaction",sdkProcessingMetadata:{...i,dynamicSamplingContext:this.getDynamicSamplingContext()},...i.source&&{transaction_info:{source:i.source}}};return Object.keys(this._measurements).length>0&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding measurements to transaction",JSON.stringify(this._measurements,void 0,2)),s.measurements=this._measurements),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Finishing ${this.op} transaction: ${this.name}.`),this._hub.captureEvent(s)}toContext(){const e=super.toContext();return ut({...e,name:this.name,trimEnd:this._trimEnd})}updateWithContext(e){return super.updateWithContext(e),this.name=e.name||"",this._trimEnd=e.trimEnd,this}getDynamicSamplingContext(){if(this._frozenDynamicSamplingContext)return this._frozenDynamicSamplingContext;const e=this._hub||g(),n=e&&e.getClient();if(!n)return{};const{environment:r,release:i}=n.getOptions()||{},{publicKey:s}=n.getDsn()||{},a=this.metadata.sampleRate,o=a!==void 0?a.toString():void 0,{segment:c}=e.getScope().getUser()||{},u=this.metadata.source,d=u&&u!=="url"?this.name:void 0,l=ut({environment:r||En,release:i,transaction:d,user_segment:c,public_key:s,trace_id:this.traceId,sample_rate:o});return n.emit&&n.emit("createDsc",l),l}setHub(e){this._hub=e}}const Qe={idleTimeout:1e3,finalTimeout:3e4,heartbeatInterval:5e3},Qo="finishReason",qt=["heartbeatFailed","idleTimeout","documentHidden","finalTimeout","externalFinish","cancelled"];class tc extends Sn{constructor(e,n,r,i){super(i),this._pushActivity=e,this._popActivity=n,this.transactionSpanId=r}add(e){e.spanId!==this.transactionSpanId&&(e.finish=n=>{e.endTimestamp=typeof n=="number"?n:Yt(),this._popActivity(e.spanId)},e.endTimestamp===void 0&&this._pushActivity(e.spanId)),super.add(e)}}class Tt extends Jt{__init(){this.activities={}}__init2(){this._heartbeatCounter=0}__init3(){this._finished=!1}__init4(){this._idleTimeoutCanceledPermanently=!1}__init5(){this._beforeFinishCallbacks=[]}__init6(){this._finishReason=qt[4]}constructor(e,n,r=Qe.idleTimeout,i=Qe.finalTimeout,s=Qe.heartbeatInterval,a=!1){super(e,n),this._idleHub=n,this._idleTimeout=r,this._finalTimeout=i,this._heartbeatInterval=s,this._onScope=a,Tt.prototype.__init.call(this),Tt.prototype.__init2.call(this),Tt.prototype.__init3.call(this),Tt.prototype.__init4.call(this),Tt.prototype.__init5.call(this),Tt.prototype.__init6.call(this),a&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`Setting idle transaction on scope. Span ID: ${this.spanId}`),n.configureScope(o=>o.setSpan(this))),this._restartIdleTimeout(),setTimeout(()=>{this._finished||(this.setStatus("deadline_exceeded"),this._finishReason=qt[3],this.finish())},this._finalTimeout)}finish(e=Yt()){if(this._finished=!0,this.activities={},this.op==="ui.action.click"&&this.setTag(Qo,this._finishReason),this.spanRecorder){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] finishing IdleTransaction",new Date(e*1e3).toISOString(),this.op);for(const n of this._beforeFinishCallbacks)n(this,e);this.spanRecorder.spans=this.spanRecorder.spans.filter(n=>{if(n.spanId===this.spanId)return!0;n.endTimestamp||(n.endTimestamp=e,n.setStatus("cancelled"),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] cancelling span since transaction ended early",JSON.stringify(n,void 0,2)));const r=n.startTimestamp<e;return r||(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] discarding Span since it happened after Transaction was finished",JSON.stringify(n,void 0,2)),r}),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] flushing IdleTransaction")}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] No active IdleTransaction");if(this._onScope){const n=this._idleHub.getScope();n.getTransaction()===this&&n.setSpan(void 0)}return super.finish(e)}registerBeforeFinishCallback(e){this._beforeFinishCallbacks.push(e)}initSpanRecorder(e){if(!this.spanRecorder){const n=i=>{this._finished||this._pushActivity(i)},r=i=>{this._finished||this._popActivity(i)};this.spanRecorder=new tc(n,r,this.spanId,e),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("Starting heartbeat"),this._pingHeartbeat()}this.spanRecorder.add(this)}cancelIdleTimeout(e,{restartOnChildSpanChange:n}={restartOnChildSpanChange:!0}){this._idleTimeoutCanceledPermanently=n===!1,this._idleTimeoutID&&(clearTimeout(this._idleTimeoutID),this._idleTimeoutID=void 0,Object.keys(this.activities).length===0&&this._idleTimeoutCanceledPermanently&&(this._finishReason=qt[5],this.finish(e)))}setFinishReason(e){this._finishReason=e}_restartIdleTimeout(e){this.cancelIdleTimeout(),this._idleTimeoutID=setTimeout(()=>{!this._finished&&Object.keys(this.activities).length===0&&(this._finishReason=qt[1],this.finish(e))},this._idleTimeout)}_pushActivity(e){this.cancelIdleTimeout(void 0,{restartOnChildSpanChange:!this._idleTimeoutCanceledPermanently}),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] pushActivity: ${e}`),this.activities[e]=!0,(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] new activities count",Object.keys(this.activities).length)}_popActivity(e){if(this.activities[e]&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] popActivity ${e}`),delete this.activities[e],(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] new activities count",Object.keys(this.activities).length)),Object.keys(this.activities).length===0){const n=Yt();this._idleTimeoutCanceledPermanently?(this._finishReason=qt[5],this.finish(n)):this._restartIdleTimeout(n+this._idleTimeout/1e3)}}_beat(){if(this._finished)return;const e=Object.keys(this.activities).join("");e===this._prevHeartbeatString?this._heartbeatCounter++:this._heartbeatCounter=1,this._prevHeartbeatString=e,this._heartbeatCounter>=3?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] Transaction finished because of no change for 3 heart beats"),this.setStatus("deadline_exceeded"),this._finishReason=qt[0],this.finish()):this._pingHeartbeat()}_pingHeartbeat(){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`pinging Heartbeat -> current counter: ${this._heartbeatCounter}`),setTimeout(()=>{this._beat()},this._heartbeatInterval)}}function ec(){const e=this.getScope().getSpan();return e?{"sentry-trace":e.toTraceparent()}:{}}function fs(t,e,n){if(!Er(e))return t.sampled=!1,t;if(t.sampled!==void 0)return t.setMetadata({sampleRate:Number(t.sampled)}),t;let r;return typeof e.tracesSampler=="function"?(r=e.tracesSampler(n),t.setMetadata({sampleRate:Number(r)})):n.parentSampled!==void 0?r=n.parentSampled:typeof e.tracesSampleRate<"u"?(r=e.tracesSampleRate,t.setMetadata({sampleRate:Number(r)})):(r=1,t.setMetadata({sampleRate:r})),nc(r)?r?(t.sampled=Math.random()<r,t.sampled?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] starting ${t.op} transaction - ${t.name}`),t):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = ${Number(r)})`),t)):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Discarding transaction because ${typeof e.tracesSampler=="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),t.sampled=!1,t):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("[Tracing] Discarding transaction because of invalid sample rate."),t.sampled=!1,t)}function nc(t){return Fi(t)||!(typeof t=="number"||typeof t=="boolean")?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(t)} of type ${JSON.stringify(typeof t)}.`),!1):t<0||t>1?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`[Tracing] Given sample rate is invalid. Sample rate must be between 0 and 1. Got ${t}.`),!1):!0}function rc(t,e){const n=this.getClient(),r=n&&n.getOptions()||{},i=r.instrumenter||"sentry",s=t.instrumenter||"sentry";i!==s&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error(`A transaction was started with instrumenter=\`${s}\`, but the SDK is configured with the \`${i}\` instrumenter. The transaction will not be sampled. Please use the ${i} instrumentation to start transactions.`),t.sampled=!1);let a=new Jt(t,this);return a=fs(a,r,{parentSampled:t.parentSampled,transactionContext:t,...e}),a.sampled&&a.initSpanRecorder(r._experiments&&r._experiments.maxSpans),n&&n.emit&&n.emit("startTransaction",a),a}function Jr(t,e,n,r,i,s,a){const o=t.getClient(),c=o&&o.getOptions()||{};let u=new Tt(e,t,n,r,a,i);return u=fs(u,c,{parentSampled:e.parentSampled,transactionContext:e,...s}),u.sampled&&u.initSpanRecorder(c._experiments&&c._experiments.maxSpans),o&&o.emit&&o.emit("startTransaction",u),u}function _s(){const t=de();t.__SENTRY__&&(t.__SENTRY__.extensions=t.__SENTRY__.extensions||{},t.__SENTRY__.extensions.startTransaction||(t.__SENTRY__.extensions.startTransaction=rc),t.__SENTRY__.extensions.traceHeaders||(t.__SENTRY__.extensions.traceHeaders=ec),Jo())}function ic(t,e,n=()=>{}){const r={...t};r.name!==void 0&&r.description===void 0&&(r.description=r.name);const i=g(),s=i.getScope(),a=s.getSpan(),o=a?a.startChild(r):i.startTransaction(r);s.setSpan(o);function c(){o&&o.finish(),i.getScope().setSpan(a)}let u;try{u=e(o)}catch(d){throw o&&o.setStatus("internal_error"),n(d),c(),d}return gn(u)?Promise.resolve(u).then(()=>{c()},d=>{o&&o.setStatus("internal_error"),n(d),c()}):c(),u}function bn(t,e){return g().captureException(t,{captureContext:e})}function sc(t,e){const n=typeof e=="string"?e:void 0,r=typeof e!="string"?{captureContext:e}:void 0;return g().captureMessage(t,n,r)}function ac(t,e){return g().captureEvent(t,e)}function oc(t){g().configureScope(t)}function hs(t){g().addBreadcrumb(t)}function ps(t,e){g().setContext(t,e)}function cc(t){g().setExtras(t)}function uc(t,e){g().setExtra(t,e)}function dc(t){g().setTags(t)}function lc(t,e){g().setTag(t,e)}function fc(t){g().setUser(t)}function ms(t){g().withScope(t)}function _c(t,e){return g().startTransaction({...t},e)}const hc="7";function gs(t){const e=t.protocol?`${t.protocol}:`:"",n=t.port?`:${t.port}`:"";return`${e}//${t.host}${n}${t.path?`/${t.path}`:""}/api/`}function pc(t){return`${gs(t)}${t.projectId}/envelope/`}function mc(t,e){return Ka({sentry_key:t.publicKey,sentry_version:hc,...e&&{sentry_client:`${e.name}/${e.version}`}})}function ys(t,e={}){const n=typeof e=="string"?e:e.tunnel,r=typeof e=="string"||!e._metadata?void 0:e._metadata.sdk;return n||`${pc(t)}?${mc(t,r)}`}function gc(t,e){const n=Hi(t),r=`${gs(n)}embed/error-page/`;let i=`dsn=${ce(n)}`;for(const s in e)if(s!=="dsn")if(s==="user"){const a=e.user;if(!a)continue;a.name&&(i+=`&name=${encodeURIComponent(a.name)}`),a.email&&(i+=`&email=${encodeURIComponent(a.email)}`)}else i+=`&${encodeURIComponent(s)}=${encodeURIComponent(e[s])}`;return`${r}?${i}`}function yc(t,e){return e&&(t.sdk=t.sdk||{},t.sdk.name=t.sdk.name||e.name,t.sdk.version=t.sdk.version||e.version,t.sdk.integrations=[...t.sdk.integrations||[],...e.integrations||[]],t.sdk.packages=[...t.sdk.packages||[],...e.packages||[]]),t}function Ec(t,e,n,r){const i=gr(n),s={sent_at:new Date().toISOString(),...i&&{sdk:i},...!!r&&{dsn:ce(e)}},a="aggregates"in t?[{type:"sessions"},t]:[{type:"session"},t];return Wt(s,[a])}function Sc(t,e,n,r){const i=gr(n),s=t.type&&t.type!=="replay_event"?t.type:"event";yc(t,n&&n.sdk);const a=is(t,i,r,e);return delete t.sdkProcessingMetadata,Wt(a,[[{type:s},t]])}const Qr=[];function bc(t){const e={};return t.forEach(n=>{const{name:r}=n,i=e[r];i&&!i.isDefaultInstance&&n.isDefaultInstance||(e[r]=n)}),Object.keys(e).map(n=>e[n])}function wc(t){const e=t.defaultIntegrations||[],n=t.integrations;e.forEach(a=>{a.isDefaultInstance=!0});let r;Array.isArray(n)?r=[...e,...n]:typeof n=="function"?r=Ji(n(e)):r=e;const i=bc(r),s=vc(i,a=>a.name==="Debug");if(s!==-1){const[a]=i.splice(s,1);i.push(a)}return i}function Tc(t){const e={};return t.forEach(n=>{n&&Es(n,e)}),e}function Es(t,e){e[t.name]=t,Qr.indexOf(t.name)===-1&&(t.setupOnce(Ae,g),Qr.push(t.name),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`Integration installed: ${t.name}`))}function vc(t,e){for(let n=0;n<t.length;n++)if(e(t[n])===!0)return n;return-1}function Ss(t,e,n,r){const{normalizeDepth:i=3,normalizeMaxBreadth:s=1e3}=t,a={...e,event_id:e.event_id||n.event_id||lt(),timestamp:e.timestamp||yn()},o=n.integrations||t.integrations.map(d=>d.name);Rc(a,t),Nc(a,o),e.type===void 0&&kc(a,t.stackParser);let c=r;n.captureContext&&(c=Dt.clone(c).update(n.captureContext));let u=St(a);if(c){if(c.getAttachments){const d=[...n.attachments||[],...c.getAttachments()];d.length&&(n.attachments=d)}u=c.applyToEvent(a,n)}return u.then(d=>typeof i=="number"&&i>0?Dc(d,i,s):d)}function Rc(t,e){const{environment:n,release:r,dist:i,maxValueLength:s=250}=e;"environment"in t||(t.environment="environment"in e?n:En),t.release===void 0&&r!==void 0&&(t.release=r),t.dist===void 0&&i!==void 0&&(t.dist=i),t.message&&(t.message=ye(t.message,s));const a=t.exception&&t.exception.values&&t.exception.values[0];a&&a.value&&(a.value=ye(a.value,s));const o=t.request;o&&o.url&&(o.url=ye(o.url,s))}const ti=new WeakMap;function kc(t,e){const n=nt._sentryDebugIds;if(!n)return;let r;const i=ti.get(e);i?r=i:(r=new Map,ti.set(e,r));const s=Object.keys(n).reduce((c,u)=>{let d;const l=r.get(u);l?d=l:(d=e(u),r.set(u,d));for(let h=d.length-1;h>=0;h--){const _=d[h];if(_.filename){c[_.filename]=n[u];break}}return c},{}),a=new Set;try{t.exception.values.forEach(c=>{c.stacktrace.frames.forEach(u=>{u.filename&&a.add(u.filename)})})}catch(c){}t.debug_meta=t.debug_meta||{},t.debug_meta.images=t.debug_meta.images||[];const o=t.debug_meta.images;a.forEach(c=>{s[c]&&o.push({type:"sourcemap",code_file:c,debug_id:s[c]})})}function Nc(t,e){e.length>0&&(t.sdk=t.sdk||{},t.sdk.integrations=[...t.sdk.integrations||[],...e])}function Dc(t,e,n){if(!t)return null;const r={...t,...t.breadcrumbs&&{breadcrumbs:t.breadcrumbs.map(i=>({...i,...i.data&&{data:pt(i.data,e,n)}}))},...t.user&&{user:pt(t.user,e,n)},...t.contexts&&{contexts:pt(t.contexts,e,n)},...t.extra&&{extra:pt(t.extra,e,n)}};return t.contexts&&t.contexts.trace&&r.contexts&&(r.contexts.trace=t.contexts.trace,t.contexts.trace.data&&(r.contexts.trace.data=pt(t.contexts.trace.data,e,n))),t.spans&&(r.spans=t.spans.map(i=>(i.data&&(i.data=pt(i.data,e,n)),i))),r}const ei="Not capturing exception because it's already been captured.";class Lt{__init(){this._integrations={}}__init2(){this._integrationsInitialized=!1}__init3(){this._numProcessing=0}__init4(){this._outcomes={}}__init5(){this._hooks={}}constructor(e){if(Lt.prototype.__init.call(this),Lt.prototype.__init2.call(this),Lt.prototype.__init3.call(this),Lt.prototype.__init4.call(this),Lt.prototype.__init5.call(this),this._options=e,e.dsn){this._dsn=Hi(e.dsn);const n=ys(this._dsn,e);this._transport=e.transport({recordDroppedEvent:this.recordDroppedEvent.bind(this),...e.transportOptions,url:n})}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("No DSN provided, client will not do anything.")}captureException(e,n,r){if(qr(e)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(ei);return}let i=n&&n.event_id;return this._process(this.eventFromException(e,n).then(s=>this._captureEvent(s,n,r)).then(s=>{i=s})),i}captureMessage(e,n,r,i){let s=r&&r.event_id;const a=Yi(e)?this.eventFromMessage(String(e),n,r):this.eventFromException(e,r);return this._process(a.then(o=>this._captureEvent(o,r,i)).then(o=>{s=o})),s}captureEvent(e,n,r){if(n&&n.originalException&&qr(n.originalException)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(ei);return}let i=n&&n.event_id;return this._process(this._captureEvent(e,n,r).then(s=>{i=s})),i}captureSession(e){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("SDK not enabled, will not capture session.");return}typeof e.release!="string"?(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Discarded session because of missing or non-string release"):(this.sendSession(e),te(e,{init:!1}))}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(e){const n=this._transport;return n?this._isClientDoneProcessing(e).then(r=>n.flush(e).then(i=>r&&i)):St(!0)}close(e){return this.flush(e).then(n=>(this.getOptions().enabled=!1,n))}setupIntegrations(){this._isEnabled()&&!this._integrationsInitialized&&(this._integrations=Tc(this._options.integrations),this._integrationsInitialized=!0)}getIntegrationById(e){return this._integrations[e]}getIntegration(e){try{return this._integrations[e.id]||null}catch(n){return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Cannot retrieve integration ${e.id} from the current Client`),null}}addIntegration(e){Es(e,this._integrations)}sendEvent(e,n={}){if(this._dsn){let r=Sc(e,this._dsn,this._options._metadata,this._options.tunnel);for(const s of n.attachments||[])r=Io(r,Uo(s,this._options.transportOptions&&this._options.transportOptions.textEncoder));const i=this._sendEnvelope(r);i&&i.then(s=>this.emit("afterSendEvent",e,s),null)}}sendSession(e){if(this._dsn){const n=Ec(e,this._dsn,this._options._metadata,this._options.tunnel);this._sendEnvelope(n)}}recordDroppedEvent(e,n,r){if(this._options.sendClientReports){const i=`${e}:${n}`;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`Adding outcome: "${i}"`),this._outcomes[i]=this._outcomes[i]+1||1}}on(e,n){this._hooks[e]||(this._hooks[e]=[]),this._hooks[e].push(n)}emit(e,...n){this._hooks[e]&&this._hooks[e].forEach(r=>r(...n))}_updateSessionFromEvent(e,n){let r=!1,i=!1;const s=n.exception&&n.exception.values;if(s){i=!0;for(const c of s){const u=c.mechanism;if(u&&u.handled===!1){r=!0;break}}}const a=e.status==="ok";(a&&e.errors===0||a&&r)&&(te(e,{...r&&{status:"crashed"},errors:e.errors||Number(i||r)}),this.captureSession(e))}_isClientDoneProcessing(e){return new tt(n=>{let r=0;const i=1,s=setInterval(()=>{this._numProcessing==0?(clearInterval(s),n(!0)):(r+=i,e&&r>=e&&(clearInterval(s),n(!1)))},i)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._dsn!==void 0}_prepareEvent(e,n,r){const i=this.getOptions(),s=Object.keys(this._integrations);return!n.integrations&&s.length>0&&(n.integrations=s),Ss(i,e,n,r)}_captureEvent(e,n={},r){return this._processEvent(e,n,r).then(i=>i.event_id,i=>{if(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__){const s=i;s.logLevel==="log"?f.log(s.message):f.warn(s)}})}_processEvent(e,n,r){const i=this.getOptions(),{sampleRate:s}=i;if(!this._isEnabled())return an(new J("SDK not enabled, will not capture event.","log"));const a=ws(e),o=bs(e),c=e.type||"error",u=`before send for type \`${c}\``;if(o&&typeof s=="number"&&Math.random()>s)return this.recordDroppedEvent("sample_rate","error",e),an(new J(`Discarding event because it's not included in the random sample (sampling rate = ${s})`,"log"));const d=c==="replay_event"?"replay":c;return this._prepareEvent(e,n,r).then(l=>{if(l===null)throw this.recordDroppedEvent("event_processor",d,e),new J("An event processor returned `null`, will not send event.","log");if(n.data&&n.data.__sentry__===!0)return l;const _=Ic(i,l,n);return xc(_,u)}).then(l=>{if(l===null)throw this.recordDroppedEvent("before_send",d,e),new J(`${u} returned \`null\`, will not send event.`,"log");const h=r&&r.getSession();!a&&h&&this._updateSessionFromEvent(h,l);const _=l.transaction_info;if(a&&_&&l.transaction!==e.transaction){const p="custom";l.transaction_info={..._,source:p}}return this.sendEvent(l,n),l}).then(null,l=>{throw l instanceof J?l:(this.captureException(l,{data:{__sentry__:!0},originalException:l}),new J(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. Reason: ${l}`))})}_process(e){this._numProcessing++,e.then(n=>(this._numProcessing--,n),n=>(this._numProcessing--,n))}_sendEnvelope(e){if(this._transport&&this._dsn)return this.emit("beforeEnvelope",e),this._transport.send(e).then(null,n=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("Error while sending event:",n)});(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("Transport disabled")}_clearOutcomes(){const e=this._outcomes;return this._outcomes={},Object.keys(e).map(n=>{const[r,i]=n.split(":");return{reason:r,category:i,quantity:e[n]}})}}function xc(t,e){const n=`${e} must return \`null\` or a valid event.`;if(gn(t))return t.then(r=>{if(!Qt(r)&&r!==null)throw new J(n);return r},r=>{throw new J(`${e} rejected with ${r}`)});if(!Qt(t)&&t!==null)throw new J(n);return t}function Ic(t,e,n){const{beforeSend:r,beforeSendTransaction:i}=t;return bs(e)&&r?r(e,n):ws(e)&&i?i(e,n):e}function bs(t){return t.type===void 0}function ws(t){return t.type==="transaction"}function Oc(t,e){e.debug===!0&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?f.enable():console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle."));const n=g();n.getScope().update(e.initialScope);const i=new t(e);n.bindClient(i)}const Ac=30;function Sr(t,e,n=vo(t.bufferSize||Ac)){let r={};const i=a=>n.drain(a);function s(a){const o=[];if(on(a,(l,h)=>{const _=Vr(h);if(Po(r,_)){const p=ni(l,h);t.recordDroppedEvent("ratelimit_backoff",_,p)}else o.push(l)}),o.length===0)return St();const c=Wt(a[0],o),u=l=>{on(c,(h,_)=>{const p=ni(h,_);t.recordDroppedEvent(l,Vr(_),p)})},d=()=>e({body:rs(c,t.textEncoder)}).then(l=>(l.statusCode!==void 0&&(l.statusCode<200||l.statusCode>=300)&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Sentry responded with status code ${l.statusCode} to sent event.`),r=Yo(r,l),l),l=>{throw u("network_error"),l});return n.add(d).then(l=>l,l=>{if(l instanceof J)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("Skipped sending event because buffer is full."),u("queue_overflow"),St();throw l})}return s.__sentry__baseTransport__=!0,{send:s,flush:i}}function ni(t,e){if(!(e!=="event"&&e!=="transaction"))return Array.isArray(t)?t[1]:void 0}const Cc=100,ri=5e3,Uc=36e5;function An(t,e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.info(`[Offline]: ${t}`,e)}function Bc(t){return e=>{const n=t(e),r=e.createStore?e.createStore(e):void 0;let i=ri,s;function a(d,l,h){return Oo(d,["replay_event","replay_recording","client_report"])?!1:e.shouldStore?e.shouldStore(d,l,h):!0}function o(d){r&&(s&&clearTimeout(s),s=setTimeout(async()=>{s=void 0;const l=await r.pop();l&&(An("Attempting to send previously queued event"),u(l).catch(h=>{An("Failed to retry sending",h)}))},d),typeof s!="number"&&s.unref&&s.unref())}function c(){s||(o(i),i=Math.min(i*2,Uc))}async function u(d){try{const l=await n.send(d);let h=Cc;if(l){if(l.headers&&l.headers["retry-after"])h=ss(l.headers["retry-after"]);else if((l.statusCode||0)>=400)return l}return o(h),i=ri,l}catch(l){if(r&&await a(d,l,i))return await r.insert(d),c(),An("Error sending. Event queued",l),{};throw l}}return e.flushAtStartup&&c(),{send:u,flush:d=>n.flush(d)}}}function Lc(t,e){let n;return on(t,(r,i)=>(e.includes(i)&&(n=Array.isArray(r)?r[1]:void 0),!!n)),n}function Mc(t,e){return n=>{const r=t(n),i={};function s(c){if(!i[c]){const u=ys(zi(c));i[c]=t({...n,url:u})}return i[c]}async function a(c){function u(h){const _=h&&h.length?h:["event"];return Lc(c,_)}const d=e({envelope:c,getEvent:u}).map(h=>s(h));return d.length===0&&d.push(r),(await Promise.all(d.map(h=>h.send(c))))[0]}async function o(c){const u=[...Object.keys(i).map(l=>i[l]),r];return(await Promise.all(u.map(l=>l.flush(c)))).every(l=>l)}return{send:a,flush:o}}}const Zn="7.51.2";let ii;class Ft{constructor(){Ft.prototype.__init.call(this)}static __initStatic(){this.id="FunctionToString"}__init(){this.name=Ft.id}setupOnce(){ii=Function.prototype.toString;try{Function.prototype.toString=function(...e){const n=mr(this)||this;return ii.apply(n,e)}}catch(e){}}}Ft.__initStatic();const Gc=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/];class xt{static __initStatic(){this.id="InboundFilters"}__init(){this.name=xt.id}constructor(e={}){this._options=e,xt.prototype.__init.call(this)}setupOnce(e,n){const r=i=>{const s=n();if(s){const a=s.getIntegration(xt);if(a){const o=s.getClient(),c=o?o.getOptions():{},u=Pc(a._options,c);return Yc(i,u)?null:i}}return i};r.id=this.name,e(r)}}xt.__initStatic();function Pc(t={},e={}){return{allowUrls:[...t.allowUrls||[],...e.allowUrls||[]],denyUrls:[...t.denyUrls||[],...e.denyUrls||[]],ignoreErrors:[...t.ignoreErrors||[],...e.ignoreErrors||[],...Gc],ignoreTransactions:[...t.ignoreTransactions||[],...e.ignoreTransactions||[]],ignoreInternal:t.ignoreInternal!==void 0?t.ignoreInternal:!0}}function Yc(t,e){return e.ignoreInternal&&Wc(t)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Event dropped due to being internal Sentry Error. Event: ${vt(t)}`),!0):Fc(t,e.ignoreErrors)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Event dropped due to being matched by \`ignoreErrors\` option. Event: ${vt(t)}`),!0):zc(t,e.ignoreTransactions)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. Event: ${vt(t)}`),!0):$c(t,e.denyUrls)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Event dropped due to being matched by \`denyUrls\` option. Event: ${vt(t)}. Url: ${un(t)}`),!0):Hc(t,e.allowUrls)?!1:((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`Event dropped due to not being matched by \`allowUrls\` option. Event: ${vt(t)}. Url: ${un(t)}`),!0)}function Fc(t,e){return t.type||!e||!e.length?!1:jc(t).some(n=>ue(n,e))}function zc(t,e){if(t.type!=="transaction"||!e||!e.length)return!1;const n=t.transaction;return n?ue(n,e):!1}function $c(t,e){if(!e||!e.length)return!1;const n=un(t);return n?ue(n,e):!1}function Hc(t,e){if(!e||!e.length)return!0;const n=un(t);return n?ue(n,e):!0}function jc(t){if(t.message)return[t.message];if(t.exception)try{const{type:e="",value:n=""}=t.exception.values&&t.exception.values[0]||{};return[`${n}`,`${e}: ${n}`]}catch(e){return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error(`Cannot extract message for event ${vt(t)}`),[]}return[]}function Wc(t){try{return t.exception.values[0].type==="SentryError"}catch(e){}return!1}function qc(t=[]){for(let e=t.length-1;e>=0;e--){const n=t[e];if(n&&n.filename!=="<anonymous>"&&n.filename!=="[native code]")return n.filename||null}return null}function un(t){try{let e;try{e=t.exception.values[0].stacktrace.frames}catch(n){}return e?qc(e):null}catch(e){return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error(`Cannot extract url for event ${vt(t)}`),null}}const Zc=Object.freeze(Object.defineProperty({__proto__:null,FunctionToString:Ft,InboundFilters:xt},Symbol.toStringTag,{value:"Module"})),y=nt;let Vn=0;function Ts(){return Vn>0}function Vc(){Vn++,setTimeout(()=>{Vn--})}function zt(t,e={},n){if(typeof t!="function")return t;try{const i=t.__sentry_wrapped__;if(i)return i;if(mr(t))return t}catch(i){return t}const r=function(){const i=Array.prototype.slice.call(arguments);try{n&&typeof n=="function"&&n.apply(this,arguments);const s=i.map(a=>zt(a,e));return t.apply(this,s)}catch(s){throw Vc(),ms(a=>{a.addEventProcessor(o=>(e.mechanism&&(Fn(o,void 0,void 0),ve(o,e.mechanism)),o.extra={...o.extra,arguments:i},o)),bn(s)}),s}};try{for(const i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[i]=t[i])}catch(i){}Wi(r,t),pr(t,"__sentry_wrapped__",r);try{Object.getOwnPropertyDescriptor(r,"name").configurable&&Object.defineProperty(r,"name",{get(){return t.name}})}catch(i){}return r}function vs(t,e){const n=br(t,e),r={type:e&&e.name,value:Qc(e)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===""&&(r.value="Unrecoverable error caught"),r}function Xc(t,e,n,r){const s=g().getClient(),a=s&&s.getOptions().normalizeDepth,o={exception:{values:[{type:_r(e)?e.constructor.name:r?"UnhandledRejection":"Error",value:`Non-Error ${r?"promise rejection":"exception"} captured with keys: ${Ja(e)}`}]},extra:{__serialized__:ts(e,a)}};if(n){const c=br(t,n);c.length&&(o.exception.values[0].stacktrace={frames:c})}return o}function Cn(t,e){return{exception:{values:[vs(t,e)]}}}function br(t,e){const n=e.stacktrace||e.stack||"",r=Jc(e);try{return t(n,r)}catch(i){}return[]}const Kc=/Minified React error #\d+;/i;function Jc(t){if(t){if(typeof t.framesToPop=="number")return t.framesToPop;if(Kc.test(t.message))return 1}return 0}function Qc(t){const e=t&&t.message;return e?e.error&&typeof e.error.message=="string"?e.error.message:e:"No error message"}function Rs(t,e,n,r){const i=n&&n.syntheticException||void 0,s=wr(t,e,i,r);return ve(s),s.level="error",n&&n.event_id&&(s.event_id=n.event_id),St(s)}function ks(t,e,n="info",r,i){const s=r&&r.syntheticException||void 0,a=Xn(t,e,s,i);return a.level=n,r&&r.event_id&&(a.event_id=r.event_id),St(a)}function wr(t,e,n,r,i){let s;if(Pi(e)&&e.error)return Cn(t,e.error);if(Gr(e)||Ga(e)){const a=e;if("stack"in e)s=Cn(t,e);else{const o=a.name||(Gr(a)?"DOMError":"DOMException"),c=a.message?`${o}: ${a.message}`:o;s=Xn(t,c,n,r),Fn(s,c)}return"code"in a&&(s.tags={...s.tags,"DOMException.code":`${a.code}`}),s}return Gi(e)?Cn(t,e):Qt(e)||_r(e)?(s=Xc(t,e,n,i),ve(s,{synthetic:!0}),s):(s=Xn(t,e,n,r),Fn(s,`${e}`,void 0),ve(s,{synthetic:!0}),s)}function Xn(t,e,n,r){const i={message:e};if(r&&n){const s=br(t,n);s.length&&(i.exception={values:[{value:e,stacktrace:{frames:s}}]})}return i}const He=1024,Ns="Breadcrumbs";class $t{static __initStatic(){this.id=Ns}__init(){this.name=$t.id}constructor(e){$t.prototype.__init.call(this),this.options={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e}}setupOnce(){this.options.console&&V("console",eu),this.options.dom&&V("dom",tu(this.options.dom)),this.options.xhr&&V("xhr",nu),this.options.fetch&&V("fetch",ru),this.options.history&&V("history",iu)}addSentryBreadcrumb(e){this.options.sentry&&g().addBreadcrumb({category:`sentry.${e.type==="transaction"?"transaction":"event"}`,event_id:e.event_id,level:e.level,message:vt(e)},{event:e})}}$t.__initStatic();function tu(t){function e(n){let r,i=typeof t=="object"?t.serializeAttribute:void 0,s=typeof t=="object"&&typeof t.maxStringLength=="number"?t.maxStringLength:void 0;s&&s>He&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`\`dom.maxStringLength\` cannot exceed ${He}, but a value of ${s} was configured. Sentry will use ${He} instead.`),s=He),typeof i=="string"&&(i=[i]);try{const a=n.event;r=su(a)?Pt(a.target,{keyAttrs:i,maxStringLength:s}):Pt(a,{keyAttrs:i,maxStringLength:s})}catch(a){r="<unknown>"}r.length!==0&&g().addBreadcrumb({category:`ui.${n.name}`,message:r},{event:n.event,name:n.name,global:n.global})}return e}function eu(t){for(let n=0;n<t.args.length;n++)if(t.args[n]==="ref=Ref<"){t.args[n+1]="viewRef";break}const e={category:"console",data:{arguments:t.args,logger:"console"},level:ko(t.level),message:Yr(t.args," ")};if(t.level==="assert")if(t.args[0]===!1)e.message=`Assertion failed: ${Yr(t.args.slice(1)," ")||"console.assert"}`,e.data.arguments=t.args.slice(1);else return;g().addBreadcrumb(e,{input:t.args,level:t.level})}function nu(t){const{startTimestamp:e,endTimestamp:n}=t,r=t.xhr[Rt];if(!e||!n||!r)return;const{method:i,url:s,status_code:a,body:o}=r,c={method:i,url:s,status_code:a},u={xhr:t.xhr,input:o,startTimestamp:e,endTimestamp:n};g().addBreadcrumb({category:"xhr",data:c,type:"http"},u)}function ru(t){const{startTimestamp:e,endTimestamp:n}=t;if(n&&!(t.fetchData.url.match(/sentry_key/)&&t.fetchData.method==="POST"))if(t.error){const r=t.fetchData,i={data:t.error,input:t.args,startTimestamp:e,endTimestamp:n};g().addBreadcrumb({category:"fetch",data:r,level:"error",type:"http"},i)}else{const r={...t.fetchData,status_code:t.response&&t.response.status},i={input:t.args,response:t.response,startTimestamp:e,endTimestamp:n};g().addBreadcrumb({category:"fetch",data:r,type:"http"},i)}}function iu(t){let e=t.from,n=t.to;const r=In(y.location.href);let i=In(e);const s=In(n);i.path||(i=r),r.protocol===s.protocol&&r.host===s.host&&(n=s.relative),r.protocol===i.protocol&&r.host===i.host&&(e=i.relative),g().addBreadcrumb({category:"navigation",data:{from:e,to:n}})}function su(t){return t&&!!t.target}function Ds(t,{metadata:e,tunnel:n,dsn:r}){const i={event_id:t.event_id,sent_at:new Date().toISOString(),...e&&e.sdk&&{sdk:{name:e.sdk.name,version:e.sdk.version}},...!!n&&!!r&&{dsn:ce(r)}},s=au(t);return Wt(i,[s])}function au(t){return[{type:"user_report"},t]}class xs extends Lt{constructor(e){const n=y.SENTRY_SDK_SOURCE||yo();e._metadata=e._metadata||{},e._metadata.sdk=e._metadata.sdk||{name:"sentry.javascript.browser",packages:[{name:`${n}:@sentry/browser`,version:Zn}],version:Zn},super(e),e.sendClientReports&&y.document&&y.document.addEventListener("visibilitychange",()=>{y.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(e,n){return Rs(this._options.stackParser,e,n,this._options.attachStacktrace)}eventFromMessage(e,n="info",r){return ks(this._options.stackParser,e,n,r,this._options.attachStacktrace)}sendEvent(e,n){const r=this.getIntegrationById(Ns);r&&r.addSentryBreadcrumb&&r.addSentryBreadcrumb(e),super.sendEvent(e,n)}captureUserFeedback(e){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("SDK not enabled, will not capture user feedback.");return}const n=Ds(e,{metadata:this.getSdkMetadata(),dsn:this.getDsn(),tunnel:this.getOptions().tunnel});this._sendEnvelope(n)}_prepareEvent(e,n,r){return e.platform=e.platform||"javascript",super._prepareEvent(e,n,r)}_flushOutcomes(){const e=this._clearOutcomes();if(e.length===0){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("No outcomes to send");return}if(!this._dsn){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("No dsn provided, will not send outcomes");return}(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("Sending outcomes:",e);const n=Lo(e,this._options.tunnel&&ce(this._dsn));this._sendEnvelope(n)}}let me;function ou(){if(me)return me;if(Pn(y.fetch))return me=y.fetch.bind(y);const t=y.document;let e=y.fetch;if(t&&typeof t.createElement=="function")try{const n=t.createElement("iframe");n.hidden=!0,t.head.appendChild(n);const r=n.contentWindow;r&&r.fetch&&(e=r.fetch),t.head.removeChild(n)}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",n)}return me=e.bind(y)}function cu(){me=void 0}function Is(t,e=ou()){let n=0,r=0;function i(s){const a=s.body.length;n+=a,r++;const o={body:s.body,method:"POST",referrerPolicy:"origin",headers:t.headers,keepalive:n<=6e4&&r<15,...t.fetchOptions};try{return e(t.url,o).then(c=>(n-=a,r--,{statusCode:c.status,headers:{"x-sentry-rate-limits":c.headers.get("X-Sentry-Rate-Limits"),"retry-after":c.headers.get("Retry-After")}}))}catch(c){return cu(),n-=a,r--,an(c)}}return Sr(t,i)}const uu=4;function Os(t){function e(n){return new tt((r,i)=>{const s=new XMLHttpRequest;s.onerror=i,s.onreadystatechange=()=>{s.readyState===uu&&r({statusCode:s.status,headers:{"x-sentry-rate-limits":s.getResponseHeader("X-Sentry-Rate-Limits"),"retry-after":s.getResponseHeader("Retry-After")}})},s.open("POST",t.url);for(const a in t.headers)Object.prototype.hasOwnProperty.call(t.headers,a)&&s.setRequestHeader(a,t.headers[a]);s.send(n.body)})}return Sr(t,e)}const fe="?",du=10,lu=20,fu=30,_u=40,hu=50;function Ce(t,e,n,r){const i={filename:t,function:e,in_app:!0};return n!==void 0&&(i.lineno=n),r!==void 0&&(i.colno=r),i}const pu=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,mu=/\((\S*)(?::(\d+))(?::(\d+))\)/,gu=t=>{const e=pu.exec(t);if(e){if(e[2]&&e[2].indexOf("eval")===0){const s=mu.exec(e[2]);s&&(e[2]=s[1],e[3]=s[2],e[4]=s[3])}const[r,i]=Ms(e[1]||fe,e[2]);return Ce(i,r,e[3]?+e[3]:void 0,e[4]?+e[4]:void 0)}},As=[fu,gu],yu=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Eu=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Su=t=>{const e=yu.exec(t);if(e){if(e[3]&&e[3].indexOf(" > eval")>-1){const s=Eu.exec(e[3]);s&&(e[1]=e[1]||"eval",e[3]=s[1],e[4]=s[2],e[5]="")}let r=e[3],i=e[1]||fe;return[i,r]=Ms(i,r),Ce(r,i,e[4]?+e[4]:void 0,e[5]?+e[5]:void 0)}},Cs=[hu,Su],bu=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,wu=t=>{const e=bu.exec(t);return e?Ce(e[2],e[1]||fe,+e[3],e[4]?+e[4]:void 0):void 0},Us=[_u,wu],Tu=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,vu=t=>{const e=Tu.exec(t);return e?Ce(e[2],e[3]||fe,+e[1]):void 0},Ru=[du,vu],ku=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^)]+))\(.*\))? in (.*):\s*$/i,Nu=t=>{const e=ku.exec(t);return e?Ce(e[5],e[3]||e[4]||fe,+e[1],+e[2]):void 0},Du=[lu,Nu],Bs=[As,Cs,Us],Ls=Vi(...Bs),Ms=(t,e)=>{const n=t.indexOf("safari-extension")!==-1,r=t.indexOf("safari-web-extension")!==-1;return n||r?[t.indexOf("@")!==-1?t.split("@")[0]:fe,n?`safari-extension:${e}`:`safari-web-extension:${e}`]:[t,e]};class mt{static __initStatic(){this.id="GlobalHandlers"}__init(){this.name=mt.id}__init2(){this._installFunc={onerror:xu,onunhandledrejection:Iu}}constructor(e){mt.prototype.__init.call(this),mt.prototype.__init2.call(this),this._options={onerror:!0,onunhandledrejection:!0,...e}}setupOnce(){Error.stackTraceLimit=50;const e=this._options;for(const n in e){const r=this._installFunc[n];r&&e[n]&&(Cu(n),r(),this._installFunc[n]=void 0)}}}mt.__initStatic();function xu(){V("error",t=>{const[e,n,r]=Ys();if(!e.getIntegration(mt))return;const{msg:i,url:s,line:a,column:o,error:c}=t;if(Ts()||c&&c.__sentry_own_request__)return;const u=c===void 0&&Ct(i)?Au(i,s,a,o):Gs(wr(n,c||i,void 0,r,!1),s,a,o);u.level="error",Ps(e,c,u,"onerror")})}function Iu(){V("unhandledrejection",t=>{const[e,n,r]=Ys();if(!e.getIntegration(mt))return;let i=t;try{"reason"in t?i=t.reason:"detail"in t&&"reason"in t.detail&&(i=t.detail.reason)}catch(a){}if(Ts()||i&&i.__sentry_own_request__)return!0;const s=Yi(i)?Ou(i):wr(n,i,void 0,r,!0);s.level="error",Ps(e,i,s,"onunhandledrejection")})}function Ou(t){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(t)}`}]}}}function Au(t,e,n,r){const i=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;let s=Pi(t)?t.message:t,a="Error";const o=s.match(i);return o&&(a=o[1],s=o[2]),Gs({exception:{values:[{type:a,value:s}]}},e,n,r)}function Gs(t,e,n,r){const i=t.exception=t.exception||{},s=i.values=i.values||[],a=s[0]=s[0]||{},o=a.stacktrace=a.stacktrace||{},c=o.frames=o.frames||[],u=isNaN(parseInt(r,10))?void 0:r,d=isNaN(parseInt(n,10))?void 0:n,l=Ct(e)&&e.length>0?e:Ha();return c.length===0&&c.push({colno:u,filename:l,function:"?",in_app:!0,lineno:d}),t}function Cu(t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`Global Handler attached: ${t}`)}function Ps(t,e,n,r){ve(n,{handled:!1,type:r}),t.captureEvent(n,{originalException:e})}function Ys(){const t=g(),e=t.getClient(),n=e&&e.getOptions()||{stackParser:()=>[],attachStacktrace:!1};return[t,n.stackParser,n.attachStacktrace]}const Uu=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"];class Ht{static __initStatic(){this.id="TryCatch"}__init(){this.name=Ht.id}constructor(e){Ht.prototype.__init.call(this),this._options={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,...e}}setupOnce(){this._options.setTimeout&&X(y,"setTimeout",si),this._options.setInterval&&X(y,"setInterval",si),this._options.requestAnimationFrame&&X(y,"requestAnimationFrame",Bu),this._options.XMLHttpRequest&&"XMLHttpRequest"in y&&X(XMLHttpRequest.prototype,"send",Lu);const e=this._options.eventTarget;e&&(Array.isArray(e)?e:Uu).forEach(Mu)}}Ht.__initStatic();function si(t){return function(...e){const n=e[0];return e[0]=zt(n,{mechanism:{data:{function:Bt(t)},handled:!0,type:"instrument"}}),t.apply(this,e)}}function Bu(t){return function(e){return t.apply(this,[zt(e,{mechanism:{data:{function:"requestAnimationFrame",handler:Bt(t)},handled:!0,type:"instrument"}})])}}function Lu(t){return function(...e){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(i=>{i in n&&typeof n[i]=="function"&&X(n,i,function(s){const a={mechanism:{data:{function:i,handler:Bt(s)},handled:!0,type:"instrument"}},o=mr(s);return o&&(a.mechanism.data.handler=Bt(o)),zt(s,a)})}),t.apply(this,e)}}function Mu(t){const e=y,n=e[t]&&e[t].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(X(n,"addEventListener",function(r){return function(i,s,a){try{typeof s.handleEvent=="function"&&(s.handleEvent=zt(s.handleEvent,{mechanism:{data:{function:"handleEvent",handler:Bt(s),target:t},handled:!0,type:"instrument"}}))}catch(o){}return r.apply(this,[i,zt(s,{mechanism:{data:{function:"addEventListener",handler:Bt(s),target:t},handled:!0,type:"instrument"}}),a])}}),X(n,"removeEventListener",function(r){return function(i,s,a){const o=s;try{const c=o&&o.__sentry_wrapped__;c&&r.call(this,i,c,a)}catch(c){}return r.call(this,i,o,a)}}))}const Gu="cause",Pu=5;class It{static __initStatic(){this.id="LinkedErrors"}__init(){this.name=It.id}constructor(e={}){It.prototype.__init.call(this),this._key=e.key||Gu,this._limit=e.limit||Pu}setupOnce(){const e=g().getClient();e&&Ae((n,r)=>{const i=g().getIntegration(It);return i?Yu(e.getOptions().stackParser,i._key,i._limit,n,r):n})}}It.__initStatic();function Yu(t,e,n,r,i){if(!r.exception||!r.exception.values||!i||!Ut(i.originalException,Error))return r;const s=Fs(t,n,i.originalException,e);return r.exception.values=[...s,...r.exception.values],r}function Fs(t,e,n,r,i=[]){if(!Ut(n[r],Error)||i.length+1>=e)return i;const s=vs(t,n[r]);return Fs(t,e,n[r],r,[s,...i])}class Ot{constructor(){Ot.prototype.__init.call(this)}static __initStatic(){this.id="HttpContext"}__init(){this.name=Ot.id}setupOnce(){Ae(e=>{if(g().getIntegration(Ot)){if(!y.navigator&&!y.location&&!y.document)return e;const n=e.request&&e.request.url||y.location&&y.location.href,{referrer:r}=y.document||{},{userAgent:i}=y.navigator||{},s={...e.request&&e.request.headers,...r&&{Referer:r},...i&&{"User-Agent":i}},a={...e.request,...n&&{url:n},headers:s};return{...e,request:a}}return e})}}Ot.__initStatic();class At{constructor(){At.prototype.__init.call(this)}static __initStatic(){this.id="Dedupe"}__init(){this.name=At.id}setupOnce(e,n){const r=i=>{if(i.type)return i;const s=n().getIntegration(At);if(s){try{if(Fu(i,s._previousEvent))return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Event dropped due to being a duplicate of previously captured event."),null}catch(a){return s._previousEvent=i}return s._previousEvent=i}return i};r.id=this.name,e(r)}}At.__initStatic();function Fu(t,e){return e?!!(zu(t,e)||$u(t,e)):!1}function zu(t,e){const n=t.message,r=e.message;return!(!n&&!r||n&&!r||!n&&r||n!==r||!$s(t,e)||!zs(t,e))}function $u(t,e){const n=ai(e),r=ai(t);return!(!n||!r||n.type!==r.type||n.value!==r.value||!$s(t,e)||!zs(t,e))}function zs(t,e){let n=oi(t),r=oi(e);if(!n&&!r)return!0;if(n&&!r||!n&&r||(n=n,r=r,r.length!==n.length))return!1;for(let i=0;i<r.length;i++){const s=r[i],a=n[i];if(s.filename!==a.filename||s.lineno!==a.lineno||s.colno!==a.colno||s.function!==a.function)return!1}return!0}function $s(t,e){let n=t.fingerprint,r=e.fingerprint;if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;n=n,r=r;try{return n.join("")===r.join("")}catch(i){return!1}}function ai(t){return t.exception&&t.exception.values&&t.exception.values[0]}function oi(t){const e=t.exception;if(e)try{return e.values[0].stacktrace.frames}catch(n){return}}const Hs=[new xt,new Ft,new Ht,new $t,new mt,new It,new At,new Ot];function js(t={}){t.defaultIntegrations===void 0&&(t.defaultIntegrations=Hs),t.release===void 0&&(typeof __SENTRY_RELEASE__=="string"&&(t.release=__SENTRY_RELEASE__),y.SENTRY_RELEASE&&y.SENTRY_RELEASE.id&&(t.release=y.SENTRY_RELEASE.id)),t.autoSessionTracking===void 0&&(t.autoSessionTracking=!0),t.sendClientReports===void 0&&(t.sendClientReports=!0);const e={...t,stackParser:Qa(t.stackParser||Ls),integrations:wc(t),transport:t.transport||(Xi()?Is:Os)};Oc(xs,e),t.autoSessionTracking&&Ku()}function Hu(t={},e=g()){if(!y.document){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("Global document not defined in showReportDialog call");return}const{client:n,scope:r}=e.getStackTop(),i=t.dsn||n&&n.getDsn();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("DSN not configured for showReportDialog call");return}r&&(t.user={...r.getUser(),...t.user}),t.eventId||(t.eventId=e.lastEventId());const s=y.document.createElement("script");s.async=!0,s.src=gc(i,t),t.onLoad&&(s.onload=t.onLoad);const a=y.document.head||y.document.body;a?a.appendChild(s):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("Not injecting report dialog. No injection point found in HTML")}function ju(){return g().lastEventId()}function Wu(){}function qu(t){t()}function Zu(t){const e=g().getClient();return e?e.flush(t):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Cannot flush events. No client defined."),St(!1))}function Vu(t){const e=g().getClient();return e?e.close(t):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Cannot flush events and disable SDK. No client defined."),St(!1))}function Xu(t){return zt(t)()}function ci(t){t.startSession({ignoreDuration:!0}),t.captureSession()}function Ku(){if(typeof y.document>"u"){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Session tracking in non-browser environment with @sentry/browser is not supported.");return}const t=g();t.captureSession&&(ci(t),V("history",({from:e,to:n})=>{e===void 0||e===n||ci(g())}))}function Ju(t){const e=g().getClient();e&&e.captureUserFeedback(t)}const Qu=Object.freeze(Object.defineProperty({__proto__:null,Breadcrumbs:$t,Dedupe:At,GlobalHandlers:mt,HttpContext:Ot,LinkedErrors:It,TryCatch:Ht},Symbol.toStringTag,{value:"Module"})),G=nt,Tr="sentryReplaySession",td="replay_event",vr="Unable to send Replay",ed=3e5,nd=9e5,rd=36e5,id=5e3,sd=5500,ad=6e4,od=5e3,cd=3,je=15e4,We=5e3;var W;(function(t){t[t.Document=0]="Document",t[t.DocumentType=1]="DocumentType",t[t.Element=2]="Element",t[t.Text=3]="Text",t[t.CDATA=4]="CDATA",t[t.Comment=5]="Comment"})(W||(W={}));function ud(t){return t.nodeType===t.ELEMENT_NODE}function Se(t){const e=t==null?void 0:t.host;return!!(e&&e.shadowRoot&&e.shadowRoot===t)}function Ws({maskInputOptions:t,tagName:e,type:n}){e.toLowerCase()==="option"&&(e="select");const r=typeof n=="string"?n.toLowerCase():void 0;return t[e.toLowerCase()]||r&&t[r]||r==="password"||e==="input"&&!n&&t.text}function dd({tagName:t,type:e,maskInputOptions:n,maskInputSelector:r}){return r||Ws({maskInputOptions:n,tagName:t,type:e})}function Re({input:t,maskInputSelector:e,unmaskInputSelector:n,maskInputOptions:r,tagName:i,type:s,value:a,maskInputFn:o}){let c=a||"";return n&&t.matches(n)||(t.hasAttribute("data-rr-is-password")&&(s="password"),(Ws({maskInputOptions:r,tagName:i,type:s})||e&&t.matches(e))&&(o?c=o(c):c="*".repeat(c.length))),c}const ui="__rrweb_original__";function ld(t){const e=t.getContext("2d");if(!e)return!0;const n=50;for(let r=0;r<t.width;r+=n)for(let i=0;i<t.height;i+=n){const s=e.getImageData,a=ui in s?s[ui]:s;if(new Uint32Array(a.call(e,r,i,Math.min(n,t.width-r),Math.min(n,t.height-i)).data.buffer).some(c=>c!==0))return!1}return!0}function qs(t){const e=t.type;return t.hasAttribute("data-rr-is-password")?"password":e?e.toLowerCase():null}function Kn(t,e,n){return typeof n=="string"&&n.toLowerCase(),e==="INPUT"&&(n==="radio"||n==="checkbox")?t.getAttribute("value")||"":t.value}let fd=1;const _d=new RegExp("[^a-z0-9-_:]"),ke=-2;function Zs(t){return t?t.replace(/[\S]/g,"*"):""}function hd(){return fd++}function pd(t){if(t instanceof HTMLFormElement)return"form";const e=t.tagName.toLowerCase().trim();return _d.test(e)?"div":e}function Jn(t){try{const e=t.rules||t.cssRules;return e?Array.from(e).map(md).join(""):null}catch(e){return null}}function md(t){let e=t.cssText;if(gd(t))try{e=Jn(t.styleSheet)||e}catch(n){}return Vs(e)}function Vs(t){if(t.indexOf(":")>-1){const e=/(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm;return t.replace(e,"$1\\$2")}return t}function gd(t){return"styleSheet"in t}function yd(t){return t.cssRules?Array.from(t.cssRules).map(e=>e.cssText?Vs(e.cssText):"").join(""):""}function Ed(t){let e="";return t.indexOf("//")>-1?e=t.split("/").slice(0,3).join("/"):e=t.split("/")[0],e=e.split("?")[0],e}let Zt,di;const Sd=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,bd=/^(?!www\.|(?:http|ftp)s?:\/\/|[A-Za-z]:\\|\/\/|#).*/,wd=/^(data:)([^,]*),(.*)/i;function tn(t,e){return(t||"").replace(Sd,(n,r,i,s,a,o)=>{const c=i||a||o,u=r||s||"";if(!c)return n;if(!bd.test(c))return`url(${u}${c}${u})`;if(wd.test(c))return`url(${u}${c}${u})`;if(c[0]==="/")return`url(${u}${Ed(e)+c}${u})`;const d=e.split("/"),l=c.split("/");d.pop();for(const h of l)h!=="."&&(h===".."?d.pop():d.push(h));return`url(${u}${d.join("/")}${u})`})}const Td=/^[^ \t\n\r\u000c]+/,vd=/^[, \t\n\r\u000c]+/;function Rd(t,e){if(e.trim()==="")return e;let n=0;function r(s){let a,o=s.exec(e.substring(n));return o?(a=o[0],n+=a.length,a):""}let i=[];for(;r(vd),!(n>=e.length);){let s=r(Td);if(s.slice(-1)===",")s=Xt(t,s.substring(0,s.length-1)),i.push(s);else{let a="";s=Xt(t,s);let o=!1;for(;;){let c=e.charAt(n);if(c===""){i.push((s+a).trim());break}else if(o)c===")"&&(o=!1);else if(c===","){n+=1,i.push((s+a).trim());break}else c==="("&&(o=!0);a+=c,n+=1}}}return i.join(", ")}function Xt(t,e){if(!e||e.trim()==="")return e;const n=t.createElement("a");return n.href=e,n.href}function kd(t){return!!(t.tagName==="svg"||t.ownerSVGElement)}function Qn(){const t=document.createElement("a");return t.href="",t.href}function Xs(t,e,n,r,i,s,a,o){if(!i)return i;const c=r.toLowerCase(),u=n.toLowerCase();return c==="src"||c==="href"||c==="xlink:href"&&i[0]!=="#"||c==="background"&&(u==="table"||u==="td"||u==="th")?Xt(t,i):c==="srcset"?Rd(t,i):c==="style"?tn(i,Qn()):u==="object"&&c==="data"?Xt(t,i):s&&Nd(e,c,u,a)?o?o(i):Zs(i):i}function Nd(t,e,n,r){return r&&t.matches(r)?!1:["placeholder","title","aria-label"].indexOf(e)>-1||n==="input"&&e==="value"&&t.hasAttribute("type")&&["submit","button"].indexOf(t.getAttribute("type").toLowerCase())>-1}function Dd(t,e,n,r){if(r&&t.matches(r))return!1;if(typeof e=="string"){if(t.classList.contains(e))return!0}else for(let i=0;i<t.classList.length;i++){const s=t.classList[i];if(e.test(s))return!0}return n?t.matches(n):!1}function dn(t,e,n,r,i){if(!t)return!1;if(t.nodeType!==t.ELEMENT_NODE)return dn(t.parentNode,e,n,r,i);if(r&&(t.matches(r)||t.closest(r)))return!1;if(i)return!0;if(typeof e=="string"){if(t.classList.contains(e))return!0}else for(let s=0;s<t.classList.length;s++){const a=t.classList[s];if(e.test(a))return!0}return n&&t.matches(n)?!0:dn(t.parentNode,e,n,r,i)}function xd(t,e,n){const r=t.contentWindow;if(!r)return;let i=!1,s;try{s=r.document.readyState}catch(o){return}if(s!=="complete"){const o=setTimeout(()=>{i||(e(),i=!0)},n);t.addEventListener("load",()=>{clearTimeout(o),i=!0,e()});return}const a="about:blank";if(r.location.href!==a||t.src===a||t.src===""){setTimeout(e,0);return}t.addEventListener("load",e)}function Id(t,e){var n;const{doc:r,blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:o,maskTextSelector:c,unmaskTextSelector:u,inlineStylesheet:d,maskInputSelector:l,unmaskInputSelector:h,maskAllText:_,maskInputOptions:p={},maskTextFn:w,maskInputFn:D,dataURLOptions:S={},inlineImages:O,recordCanvas:x,keepIframeSrcFn:v}=e;let b;if(r.__sn){const N=r.__sn.id;b=N===1?void 0:N}switch(t.nodeType){case t.DOCUMENT_NODE:return t.compatMode!=="CSS1Compat"?{type:W.Document,childNodes:[],compatMode:t.compatMode,rootId:b}:{type:W.Document,childNodes:[],rootId:b};case t.DOCUMENT_TYPE_NODE:return{type:W.DocumentType,name:t.name,publicId:t.publicId,systemId:t.systemId,rootId:b};case t.ELEMENT_NODE:const N=Dd(t,i,s,a),T=pd(t);let E={};for(const{name:m,value:A}of Array.from(t.attributes))Cd(T,m)||(E[m]=Xs(r,t,T,m,A,_,u,w));if(T==="link"&&d){const m=Array.from(r.styleSheets).find($=>$.href===t.href);let A=null;m&&(A=Jn(m)),A&&(delete E.rel,delete E.href,E._cssText=tn(A,m.href))}if(T==="style"&&t.sheet&&!(t.innerText||t.textContent||"").trim().length){const m=Jn(t.sheet);m&&(E._cssText=tn(m,Qn()))}if(T==="input"||T==="textarea"||T==="select"||T==="option"){const m=t,A=qs(m),$=Kn(m,T.toUpperCase(),A),Q=t.checked;A!=="submit"&&A!=="button"&&$&&(E.value=Re({input:m,type:A,tagName:T,value:$,maskInputSelector:l,unmaskInputSelector:h,maskInputOptions:p,maskInputFn:D})),Q&&(E.checked=Q)}if(T==="option"&&(t.selected&&!p.select?E.selected=!0:delete E.selected),T==="canvas"&&x){if(t.__context==="2d")ld(t)||(E.rr_dataURL=t.toDataURL(S.type,S.quality));else if(!("__context"in t)){const m=t.toDataURL(S.type,S.quality),A=document.createElement("canvas");A.width=t.width,A.height=t.height;const $=A.toDataURL(S.type,S.quality);m!==$&&(E.rr_dataURL=m)}}if(T==="img"&&O){Zt||(Zt=r.createElement("canvas"),di=Zt.getContext("2d"));const m=t,A=m.crossOrigin;m.crossOrigin="anonymous";const $=()=>{try{Zt.width=m.naturalWidth,Zt.height=m.naturalHeight,di.drawImage(m,0,0),E.rr_dataURL=Zt.toDataURL(S.type,S.quality)}catch(Q){console.warn(`Cannot inline img src=${m.currentSrc}! Error: ${Q}`)}A?E.crossOrigin=A:delete E.crossOrigin};m.complete&&m.naturalWidth!==0?$():m.onload=$}if((T==="audio"||T==="video")&&(E.rr_mediaState=t.paused?"paused":"played",E.rr_mediaCurrentTime=t.currentTime),t.scrollLeft&&(E.rr_scrollLeft=t.scrollLeft),t.scrollTop&&(E.rr_scrollTop=t.scrollTop),N){const{width:m,height:A}=t.getBoundingClientRect();E={class:E.class,rr_width:`${m}px`,rr_height:`${A}px`}}return T==="iframe"&&!v(E.src)&&(t.contentDocument||(E.rr_src=E.src),delete E.src),{type:W.Element,tagName:T,attributes:E,childNodes:[],isSVG:kd(t)||void 0,needBlock:N,rootId:b};case t.TEXT_NODE:const U=t.parentNode&&t.parentNode.tagName;let I=t.textContent;const z=U==="STYLE"?!0:void 0,K=U==="SCRIPT"?!0:void 0;if(z&&I){try{t.nextSibling||t.previousSibling||!((n=t.parentNode.sheet)===null||n===void 0)&&n.cssRules&&(I=yd(t.parentNode.sheet))}catch(m){console.warn(`Cannot get CSS styles from text's parentNode. Error: ${m}`,t)}I=tn(I,Qn())}if(K&&(I="SCRIPT_PLACEHOLDER"),U==="TEXTAREA"&&I)I="";else if(U==="OPTION"&&I){const m=t.parentNode;I=Re({input:m,type:null,tagName:U,value:I,maskInputSelector:l,unmaskInputSelector:h,maskInputOptions:p,maskInputFn:D})}else!z&&!K&&dn(t,o,c,u,_)&&I&&(I=w?w(I):Zs(I));return{type:W.Text,textContent:I||"",isStyle:z,rootId:b};case t.CDATA_SECTION_NODE:return{type:W.CDATA,textContent:"",rootId:b};case t.COMMENT_NODE:return{type:W.Comment,textContent:t.textContent||"",rootId:b};default:return!1}}function B(t){return t==null?"":t.toLowerCase()}function Od(t,e){if(e.comment&&t.type===W.Comment)return!0;if(t.type===W.Element){if(e.script&&(t.tagName==="script"||t.tagName==="link"&&(t.attributes.rel==="preload"||t.attributes.rel==="modulepreload")&&t.attributes.as==="script"||t.tagName==="link"&&t.attributes.rel==="prefetch"&&typeof t.attributes.href=="string"&&t.attributes.href.endsWith(".js")))return!0;if(e.headFavicon&&(t.tagName==="link"&&t.attributes.rel==="shortcut icon"||t.tagName==="meta"&&(B(t.attributes.name).match(/^msapplication-tile(image|color)$/)||B(t.attributes.name)==="application-name"||B(t.attributes.rel)==="icon"||B(t.attributes.rel)==="apple-touch-icon"||B(t.attributes.rel)==="shortcut icon")))return!0;if(t.tagName==="meta"){if(e.headMetaDescKeywords&&B(t.attributes.name).match(/^description|keywords$/))return!0;if(e.headMetaSocial&&(B(t.attributes.property).match(/^(og|twitter|fb):/)||B(t.attributes.name).match(/^(og|twitter):/)||B(t.attributes.name)==="pinterest"))return!0;if(e.headMetaRobots&&(B(t.attributes.name)==="robots"||B(t.attributes.name)==="googlebot"||B(t.attributes.name)==="bingbot"))return!0;if(e.headMetaHttpEquiv&&t.attributes["http-equiv"]!==void 0)return!0;if(e.headMetaAuthorship&&(B(t.attributes.name)==="author"||B(t.attributes.name)==="generator"||B(t.attributes.name)==="framework"||B(t.attributes.name)==="publisher"||B(t.attributes.name)==="progid"||B(t.attributes.property).match(/^article:/)||B(t.attributes.property).match(/^product:/)))return!0;if(e.headMetaVerification&&(B(t.attributes.name)==="google-site-verification"||B(t.attributes.name)==="yandex-verification"||B(t.attributes.name)==="csrf-token"||B(t.attributes.name)==="p:domain_verify"||B(t.attributes.name)==="verify-v1"||B(t.attributes.name)==="verification"||B(t.attributes.name)==="shopify-checkout-api-token"))return!0}}return!1}function be(t,e){const{doc:n,map:r,blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:o,maskTextSelector:c,unmaskTextSelector:u,skipChild:d=!1,inlineStylesheet:l=!0,maskInputSelector:h,unmaskInputSelector:_,maskAllText:p,maskInputOptions:w={},maskTextFn:D,maskInputFn:S,slimDOMOptions:O,dataURLOptions:x={},inlineImages:v=!1,recordCanvas:b=!1,onSerialize:N,onIframeLoad:T,iframeLoadTimeout:E=5e3,keepIframeSrcFn:U=()=>!1}=e;let{preserveWhiteSpace:I=!0}=e;const z=Id(t,{doc:n,blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:o,maskTextSelector:c,unmaskTextSelector:u,inlineStylesheet:l,maskInputSelector:h,unmaskInputSelector:_,maskAllText:p,maskInputOptions:w,maskTextFn:D,maskInputFn:S,dataURLOptions:x,inlineImages:v,recordCanvas:b,keepIframeSrcFn:U});if(!z)return console.warn(t,"not serialized"),null;let K;"__sn"in t?K=t.__sn.id:Od(z,O)||!I&&z.type===W.Text&&!z.isStyle&&!z.textContent.replace(/^\s+|\s+$/gm,"").length?K=ke:K=hd();const m=Object.assign(z,{id:K});if(t.__sn=m,K===ke)return null;r[K]=t,N&&N(t);let A=!d;if(m.type===W.Element&&(A=A&&!m.needBlock,delete m.needBlock,t.shadowRoot&&(m.isShadowHost=!0)),(m.type===W.Document||m.type===W.Element)&&A){O.headWhitespace&&z.type===W.Element&&z.tagName==="head"&&(I=!1);const $={doc:n,map:r,blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:o,maskTextSelector:c,unmaskTextSelector:u,skipChild:d,inlineStylesheet:l,maskInputSelector:h,unmaskInputSelector:_,maskAllText:p,maskInputOptions:w,maskTextFn:D,maskInputFn:S,slimDOMOptions:O,dataURLOptions:x,inlineImages:v,recordCanvas:b,preserveWhiteSpace:I,onSerialize:N,onIframeLoad:T,iframeLoadTimeout:E,keepIframeSrcFn:U};for(const Q of Array.from(t.childNodes)){const ft=be(Q,$);ft&&m.childNodes.push(ft)}if(ud(t)&&t.shadowRoot)for(const Q of Array.from(t.shadowRoot.childNodes)){const ft=be(Q,$);ft&&(ft.isShadow=!0,m.childNodes.push(ft))}}return t.parentNode&&Se(t.parentNode)&&(m.isShadow=!0),m.type===W.Element&&m.tagName==="iframe"&&xd(t,()=>{const $=t.contentDocument;if($&&T){const Q=be($,{doc:$,map:r,blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:o,maskTextSelector:c,unmaskTextSelector:u,skipChild:!1,inlineStylesheet:l,maskInputSelector:h,unmaskInputSelector:_,maskAllText:p,maskInputOptions:w,maskTextFn:D,maskInputFn:S,slimDOMOptions:O,dataURLOptions:x,inlineImages:v,recordCanvas:b,preserveWhiteSpace:I,onSerialize:N,onIframeLoad:T,iframeLoadTimeout:E,keepIframeSrcFn:U});Q&&T(t,Q)}},E),m}function Ad(t,e){const{blockClass:n="rr-block",blockSelector:r=null,unblockSelector:i=null,maskTextClass:s="rr-mask",maskTextSelector:a=null,unmaskTextSelector:o=null,inlineStylesheet:c=!0,inlineImages:u=!1,recordCanvas:d=!1,maskInputSelector:l=null,unmaskInputSelector:h=null,maskAllText:_=!1,maskAllInputs:p=!1,maskTextFn:w,maskInputFn:D,slimDOM:S=!1,dataURLOptions:O,preserveWhiteSpace:x,onSerialize:v,onIframeLoad:b,iframeLoadTimeout:N,keepIframeSrcFn:T=()=>!1}=e||{},E={};return[be(t,{doc:t,map:E,blockClass:n,blockSelector:r,unblockSelector:i,maskTextClass:s,maskTextSelector:a,unmaskTextSelector:o,skipChild:!1,inlineStylesheet:c,maskInputSelector:l,unmaskInputSelector:h,maskAllText:_,maskInputOptions:p===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0}:p===!1?{}:p,maskTextFn:w,maskInputFn:D,slimDOMOptions:S===!0||S==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaDescKeywords:S==="all",headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaAuthorship:!0,headMetaVerification:!0}:S===!1?{}:S,dataURLOptions:O,inlineImages:u,recordCanvas:d,preserveWhiteSpace:x,onSerialize:v,onIframeLoad:b,iframeLoadTimeout:N,keepIframeSrcFn:T}),E]}function Cd(t,e,n){return(t==="video"||t==="audio")&&e==="autoplay"}var L;(function(t){t[t.DomContentLoaded=0]="DomContentLoaded",t[t.Load=1]="Load",t[t.FullSnapshot=2]="FullSnapshot",t[t.IncrementalSnapshot=3]="IncrementalSnapshot",t[t.Meta=4]="Meta",t[t.Custom=5]="Custom",t[t.Plugin=6]="Plugin"})(L||(L={}));var Z;(function(t){t[t.Mutation=0]="Mutation",t[t.MouseMove=1]="MouseMove",t[t.MouseInteraction=2]="MouseInteraction",t[t.Scroll=3]="Scroll",t[t.ViewportResize=4]="ViewportResize",t[t.Input=5]="Input",t[t.TouchMove=6]="TouchMove",t[t.MediaInteraction=7]="MediaInteraction",t[t.StyleSheetRule=8]="StyleSheetRule",t[t.CanvasMutation=9]="CanvasMutation",t[t.Font=10]="Font",t[t.Log=11]="Log",t[t.Drag=12]="Drag",t[t.StyleDeclaration=13]="StyleDeclaration"})(Z||(Z={}));var ln;(function(t){t[t.MouseUp=0]="MouseUp",t[t.MouseDown=1]="MouseDown",t[t.Click=2]="Click",t[t.ContextMenu=3]="ContextMenu",t[t.DblClick=4]="DblClick",t[t.Focus=5]="Focus",t[t.Blur=6]="Blur",t[t.TouchStart=7]="TouchStart",t[t.TouchMove_Departed=8]="TouchMove_Departed",t[t.TouchEnd=9]="TouchEnd",t[t.TouchCancel=10]="TouchCancel"})(ln||(ln={}));var ee;(function(t){t[t["2D"]=0]="2D",t[t.WebGL=1]="WebGL",t[t.WebGL2=2]="WebGL2"})(ee||(ee={}));var li;(function(t){t[t.Play=0]="Play",t[t.Pause=1]="Pause",t[t.Seeked=2]="Seeked",t[t.VolumeChange=3]="VolumeChange"})(li||(li={}));var fi;(function(t){t.Start="start",t.Pause="pause",t.Resume="resume",t.Resize="resize",t.Finish="finish",t.FullsnapshotRebuilded="fullsnapshot-rebuilded",t.LoadStylesheetStart="load-stylesheet-start",t.LoadStylesheetEnd="load-stylesheet-end",t.SkipStart="skip-start",t.SkipEnd="skip-end",t.MouseInteraction="mouse-interaction",t.EventCast="event-cast",t.CustomEvent="custom-event",t.Flush="flush",t.StateChange="state-change",t.PlayBack="play-back"})(fi||(fi={}));function it(t,e,n=document){const r={capture:!0,passive:!0};return n.addEventListener(t,e,r),()=>n.removeEventListener(t,e,r)}function Ud(){return{map:{},getId(t){return!t||!t.__sn?-1:t.__sn.id},getNode(t){return this.map[t]||null},removeNodeFromMap(t){const e=t.__sn&&t.__sn.id;delete this.map[e],t.childNodes&&t.childNodes.forEach(n=>this.removeNodeFromMap(n))},has(t){return this.map.hasOwnProperty(t)},reset(){this.map={}}}}const Vt=`Please stop import mirror directly. Instead of that,\r now you can use replayer.getMirror() to access the mirror instance of a replayer,\r or you can use record.mirror to access the mirror instance during recording.`;let _i={map:{},getId(){return console.error(Vt),-1},getNode(){return console.error(Vt),null},removeNodeFromMap(){console.error(Vt)},has(){return console.error(Vt),!1},reset(){console.error(Vt)}};typeof window<"u"&&window.Proxy&&window.Reflect&&(_i=new Proxy(_i,{get(t,e,n){return e==="map"&&console.error(Vt),Reflect.get(t,e,n)}}));function Ne(t,e,n={}){let r=null,i=0;return function(s){let a=Date.now();!i&&n.leading===!1&&(i=a);let o=e-(a-i),c=this,u=arguments;o<=0||o>e?(r&&(clearTimeout(r),r=null),i=a,t.apply(c,u)):!r&&n.trailing!==!1&&(r=setTimeout(()=>{i=n.leading===!1?0:Date.now(),r=null,t.apply(c,u)},o))}}function wn(t,e,n,r,i=window){const s=i.Object.getOwnPropertyDescriptor(t,e);return i.Object.defineProperty(t,e,r?n:{set(a){setTimeout(()=>{n.set.call(this,a)},0),s&&s.set&&s.set.call(this,a)}}),()=>wn(t,e,s||{},!0)}function ne(t,e,n){try{if(!(e in t))return()=>{};const r=t[e],i=n(r);return typeof i=="function"&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:r}})),t[e]=i,()=>{t[e]=r}}catch(r){return()=>{}}}function Ks(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function Js(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function et(t,e,n,r){if(!t)return!1;if(t.nodeType===t.ELEMENT_NODE){let i=!1;const s=r&&t.matches(r);return typeof e=="string"?t.closest!==void 0?i=!s&&t.closest("."+e)!==null:i=!s&&t.classList.contains(e):!s&&t.classList.forEach(a=>{e.test(a)&&(i=!0)}),!i&&n&&(i=t.matches(n)),!s&&i||et(t.parentNode,e,n,r)}return t.nodeType===t.TEXT_NODE,et(t.parentNode,e,n,r)}function Un(t){return"__sn"in t?t.__sn.id===ke:!1}function Qs(t,e){if(Se(t))return!1;const n=e.getId(t);return e.has(n)?t.parentNode&&t.parentNode.nodeType===t.DOCUMENT_NODE?!1:t.parentNode?Qs(t.parentNode,e):!0:!0}function ta(t){return!!t.changedTouches}function Bd(t=window){"NodeList"in t&&!t.NodeList.prototype.forEach&&(t.NodeList.prototype.forEach=Array.prototype.forEach),"DOMTokenList"in t&&!t.DOMTokenList.prototype.forEach&&(t.DOMTokenList.prototype.forEach=Array.prototype.forEach),Node.prototype.contains||(Node.prototype.contains=function(n){if(!(0 in arguments))throw new TypeError("1 argument is required");do if(this===n)return!0;while(n=n&&n.parentNode);return!1})}function ea(t){return"__sn"in t?t.__sn.type===W.Element&&t.__sn.tagName==="iframe":!1}function na(t){return!!(t!=null&&t.shadowRoot)}function hi(t){return"__ln"in t}class Ld{constructor(){this.length=0,this.head=null}get(e){if(e>=this.length)throw new Error("Position outside of list range");let n=this.head;for(let r=0;r<e;r++)n=(n==null?void 0:n.next)||null;return n}addNode(e){const n={value:e,previous:null,next:null};if(e.__ln=n,e.previousSibling&&hi(e.previousSibling)){const r=e.previousSibling.__ln.next;n.next=r,n.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=n,r&&(r.previous=n)}else if(e.nextSibling&&hi(e.nextSibling)&&e.nextSibling.__ln.previous){const r=e.nextSibling.__ln.previous;n.previous=r,n.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=n,r&&(r.next=n)}else this.head&&(this.head.previous=n),n.next=this.head,this.head=n;this.length++}removeNode(e){const n=e.__ln;this.head&&(n.previous?(n.previous.next=n.next,n.next&&(n.next.previous=n.previous)):(this.head=n.next,this.head&&(this.head.previous=null)),e.__ln&&delete e.__ln,this.length--)}}const pi=(t,e)=>`${t}@${e}`;function mi(t){return"__sn"in t}class Md{constructor(){this.frozen=!1,this.locked=!1,this.texts=[],this.attributes=[],this.removes=[],this.mapRemoves=[],this.movedMap={},this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.processMutations=e=>{e.forEach(this.processMutation),this.emit()},this.emit=()=>{if(this.frozen||this.locked)return;const e=[],n=new Ld,r=o=>{let c=o,u=ke;for(;u===ke;)c=c&&c.nextSibling,u=c&&this.mirror.getId(c);return u},i=o=>{var c,u,d,l,h;const _=o.getRootNode?(c=o.getRootNode())===null||c===void 0?void 0:c.host:null;let p=_;for(;!((d=(u=p==null?void 0:p.getRootNode)===null||u===void 0?void 0:u.call(p))===null||d===void 0)&&d.host;)p=((h=(l=p==null?void 0:p.getRootNode)===null||l===void 0?void 0:l.call(p))===null||h===void 0?void 0:h.host)||null;const w=!this.doc.contains(o)&&(!p||!this.doc.contains(p));if(!o.parentNode||w)return;const D=Se(o.parentNode)?this.mirror.getId(_):this.mirror.getId(o.parentNode),S=r(o);if(D===-1||S===-1)return n.addNode(o);let O=be(o,{doc:this.doc,map:this.mirror.map,blockClass:this.blockClass,blockSelector:this.blockSelector,unblockSelector:this.unblockSelector,maskTextClass:this.maskTextClass,maskTextSelector:this.maskTextSelector,unmaskTextSelector:this.unmaskTextSelector,maskInputSelector:this.maskInputSelector,unmaskInputSelector:this.unmaskInputSelector,skipChild:!0,inlineStylesheet:this.inlineStylesheet,maskAllText:this.maskAllText,maskInputOptions:this.maskInputOptions,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:x=>{ea(x)&&this.iframeManager.addIframe(x),na(o)&&this.shadowDomManager.addShadowRoot(o.shadowRoot,document)},onIframeLoad:(x,v)=>{this.iframeManager.attachIframe(x,v),this.shadowDomManager.observeAttachShadow(x)}});O&&e.push({parentId:D,nextId:S,node:O})};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(const o of this.movedSet)er(this.removes,o,this.mirror)&&!this.movedSet.has(o.parentNode)||i(o);for(const o of this.addedSet)!nr(this.droppedSet,o)&&!er(this.removes,o,this.mirror)||nr(this.movedSet,o)?i(o):this.droppedSet.add(o);let s=null;for(;n.length;){let o=null;if(s){const c=this.mirror.getId(s.value.parentNode),u=r(s.value);c!==-1&&u!==-1&&(o=s)}if(!o)for(let c=n.length-1;c>=0;c--){const u=n.get(c);if(u){const d=this.mirror.getId(u.value.parentNode),l=r(u.value);if(d!==-1&&l!==-1){o=u;break}}}if(!o){for(;n.head;)n.removeNode(n.head.value);break}s=o.previous,n.removeNode(o.value),i(o.value)}const a={texts:this.texts.map(o=>({id:this.mirror.getId(o.node),value:o.value})).filter(o=>this.mirror.has(o.id)),attributes:this.attributes.map(o=>({id:this.mirror.getId(o.node),attributes:o.attributes})).filter(o=>this.mirror.has(o.id)),removes:this.removes,adds:e};!a.texts.length&&!a.attributes.length&&!a.removes.length&&!a.adds.length||(this.texts=[],this.attributes=[],this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.movedMap={},this.mutationCb(a))},this.processMutation=e=>{if(!Un(e.target))switch(e.type){case"characterData":{const n=e.target.textContent;!et(e.target,this.blockClass,this.blockSelector,this.unblockSelector)&&n!==e.oldValue&&this.texts.push({value:dn(e.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextSelector,this.maskAllText)&&n?this.maskTextFn?this.maskTextFn(n):n.replace(/[\S]/g,"*"):n,node:e.target});break}case"attributes":{const n=e.target;let r=n.getAttribute(e.attributeName);if(e.attributeName==="value"&&(r=Re({input:n,maskInputSelector:this.maskInputSelector,unmaskInputSelector:this.unmaskInputSelector,maskInputOptions:this.maskInputOptions,tagName:n.tagName,type:n.getAttribute("type"),value:r,maskInputFn:this.maskInputFn})),et(e.target,this.blockClass,this.blockSelector,this.unblockSelector)||r===e.oldValue)return;let i=this.attributes.find(s=>s.node===e.target);if(i||(i={node:e.target,attributes:{}},this.attributes.push(i)),e.attributeName==="type"&&n.tagName==="INPUT"&&(e.oldValue||"").toLowerCase()==="password"&&n.setAttribute("data-rr-is-password","true"),e.attributeName==="style"){const s=this.doc.createElement("span");e.oldValue&&s.setAttribute("style",e.oldValue),(i.attributes.style===void 0||i.attributes.style===null)&&(i.attributes.style={});try{const a=i.attributes.style;for(const o of Array.from(n.style)){const c=n.style.getPropertyValue(o),u=n.style.getPropertyPriority(o);(c!==s.style.getPropertyValue(o)||u!==s.style.getPropertyPriority(o))&&(u===""?a[o]=c:a[o]=[c,u])}for(const o of Array.from(s.style))n.style.getPropertyValue(o)===""&&(a[o]=!1)}catch(a){console.warn("[rrweb] Error when parsing update to style attribute:",a)}}else{const s=e.target;i.attributes[e.attributeName]=Xs(this.doc,s,s.tagName,e.attributeName,r,this.maskAllText,this.unmaskTextSelector,this.maskTextFn)}break}case"childList":{e.addedNodes.forEach(n=>this.genAdds(n,e.target)),e.removedNodes.forEach(n=>{const r=this.mirror.getId(n),i=Se(e.target)?this.mirror.getId(e.target.host):this.mirror.getId(e.target);et(e.target,this.blockClass,this.blockSelector,this.unblockSelector)||Un(n)||(this.addedSet.has(n)?(tr(this.addedSet,n),this.droppedSet.add(n)):this.addedSet.has(e.target)&&r===-1||Qs(e.target,this.mirror)||(this.movedSet.has(n)&&this.movedMap[pi(r,i)]?tr(this.movedSet,n):this.removes.push({parentId:i,id:r,isShadow:Se(e.target)?!0:void 0})),this.mapRemoves.push(n))});break}}},this.genAdds=(e,n)=>{if(!(n&&et(n,this.blockClass,this.blockSelector,this.unblockSelector))){if(mi(e)){if(Un(e))return;this.movedSet.add(e);let r=null;n&&mi(n)&&(r=n.__sn.id),r&&(this.movedMap[pi(e.__sn.id,r)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);et(e,this.blockClass,this.blockSelector,this.unblockSelector)||e.childNodes.forEach(r=>this.genAdds(r))}}}init(e){["mutationCb","blockClass","blockSelector","unblockSelector","maskTextClass","maskTextSelector","unmaskTextSelector","maskInputSelector","unmaskInputSelector","inlineStylesheet","maskAllText","maskInputOptions","maskTextFn","maskInputFn","recordCanvas","inlineImages","slimDOMOptions","doc","mirror","iframeManager","shadowDomManager","canvasManager"].forEach(n=>{this[n]=e[n]})}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}}function tr(t,e){t.delete(e),e.childNodes.forEach(n=>tr(t,n))}function er(t,e,n){const{parentNode:r}=e;if(!r)return!1;const i=n.getId(r);return t.some(s=>s.id===i)?!0:er(t,r,n)}function nr(t,e){const{parentNode:n}=e;return n?t.has(n)?!0:nr(t,n):!1}const k=t=>(...n)=>{try{return t(...n)}catch(r){try{r.__rrweb__=!0}catch(i){}throw r}},Mt=[];function Ue(t){try{if("composedPath"in t){const e=t.composedPath();if(e.length)return e[0]}else if("path"in t&&t.path.length)return t.path[0]}catch(e){}return t&&t.target}function ra(t,e){var n,r;const i=new Md;Mt.push(i),i.init(t);let s=window.MutationObserver||window.__rrMutationObserver;const a=(r=(n=window==null?void 0:window.Zone)===null||n===void 0?void 0:n.__symbol__)===null||r===void 0?void 0:r.call(n,"MutationObserver");a&&window[a]&&(s=window[a]);const o=new s(k(c=>{t.onMutation&&t.onMutation(c)===!1||i.processMutations(c)}));return o.observe(e,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),o}function Gd({mousemoveCb:t,sampling:e,doc:n,mirror:r}){if(e.mousemove===!1)return()=>{};const i=typeof e.mousemove=="number"?e.mousemove:50,s=typeof e.mousemoveCallback=="number"?e.mousemoveCallback:500;let a=[],o;const c=Ne(l=>{const h=Date.now()-o;k(t)(a.map(_=>(_.timeOffset-=h,_)),l),a=[],o=null},s),u=Ne(l=>{const h=Ue(l),{clientX:_,clientY:p}=ta(l)?l.changedTouches[0]:l;o||(o=Date.now()),a.push({x:_,y:p,id:r.getId(h),timeOffset:Date.now()-o}),c(typeof DragEvent<"u"&&l instanceof DragEvent?Z.Drag:l instanceof MouseEvent?Z.MouseMove:Z.TouchMove)},i,{trailing:!1}),d=[it("mousemove",k(u),n),it("touchmove",k(u),n),it("drag",k(u),n)];return k(()=>{d.forEach(l=>l())})}function Pd({mouseInteractionCb:t,doc:e,mirror:n,blockClass:r,blockSelector:i,unblockSelector:s,sampling:a}){if(a.mouseInteraction===!1)return()=>{};const o=a.mouseInteraction===!0||a.mouseInteraction===void 0?{}:a.mouseInteraction,c=[],u=d=>l=>{const h=Ue(l);if(et(h,r,i,s))return;const _=ta(l)?l.changedTouches[0]:l;if(!_)return;const p=n.getId(h),{clientX:w,clientY:D}=_;k(t)({type:ln[d],id:p,x:w,y:D})};return Object.keys(ln).filter(d=>Number.isNaN(Number(d))&&!d.endsWith("_Departed")&&o[d]!==!1).forEach(d=>{const l=d.toLowerCase(),h=k(u(d));c.push(it(l,h,e))}),k(()=>{c.forEach(d=>d())})}function ia({scrollCb:t,doc:e,mirror:n,blockClass:r,blockSelector:i,unblockSelector:s,sampling:a}){const o=Ne(c=>{const u=Ue(c);if(!u||et(u,r,i,s))return;const d=n.getId(u);if(u===e){const l=e.scrollingElement||e.documentElement;k(t)({id:d,x:l.scrollLeft,y:l.scrollTop})}else k(t)({id:d,x:u.scrollLeft,y:u.scrollTop})},a.scroll||100);return it("scroll",k(o),e)}function Yd({viewportResizeCb:t}){let e=-1,n=-1;const r=Ne(()=>{const i=Ks(),s=Js();(e!==i||n!==s)&&(k(t)({width:Number(s),height:Number(i)}),e=i,n=s)},200);return it("resize",k(r),window)}function gi(t,e){const n=Object.assign({},t);return e||delete n.userTriggered,n}const Fd=["INPUT","TEXTAREA","SELECT"],yi=new WeakMap;function zd({inputCb:t,doc:e,mirror:n,blockClass:r,blockSelector:i,unblockSelector:s,ignoreClass:a,ignoreSelector:o,maskInputSelector:c,unmaskInputSelector:u,maskInputOptions:d,maskInputFn:l,sampling:h,userTriggeredOnInput:_}){function p(v){let b=Ue(v);const N=b&&b.tagName,T=v.isTrusted;if(N==="OPTION"&&(b=b.parentElement),!b||!N||Fd.indexOf(N)<0||et(b,r,i,s))return;const E=b,U=qs(E);if(E.classList.contains(a)||o&&E.matches(o))return;let I=Kn(E,N,U),z=!1;(U==="radio"||U==="checkbox")&&(z=b.checked),dd({maskInputOptions:d,maskInputSelector:c,tagName:N,type:U})&&(I=Re({input:E,maskInputOptions:d,maskInputSelector:c,unmaskInputSelector:u,tagName:N,type:U,value:I,maskInputFn:l})),w(b,k(gi)({text:I,isChecked:z,userTriggered:T},_));const K=b.name;U==="radio"&&K&&z&&e.querySelectorAll(`input[type="radio"][name="${K}"]`).forEach(m=>{if(m!==b){const A=Re({input:m,maskInputOptions:d,maskInputSelector:c,unmaskInputSelector:u,tagName:N,type:U,value:Kn(m,N,U),maskInputFn:l});w(m,k(gi)({text:A,isChecked:!z,userTriggered:!1},_))}})}function w(v,b){const N=yi.get(v);if(!N||N.text!==b.text||N.isChecked!==b.isChecked){yi.set(v,b);const T=n.getId(v);t(Object.assign(Object.assign({},b),{id:T}))}}const S=(h.input==="last"?["change"]:["input","change"]).map(v=>it(v,k(p),e)),O=Object.getOwnPropertyDescriptor(HTMLInputElement.prototype,"value"),x=[[HTMLInputElement.prototype,"value"],[HTMLInputElement.prototype,"checked"],[HTMLSelectElement.prototype,"value"],[HTMLTextAreaElement.prototype,"value"],[HTMLSelectElement.prototype,"selectedIndex"],[HTMLOptionElement.prototype,"selected"]];return O&&O.set&&S.push(...x.map(v=>wn(v[0],v[1],{set(){k(p)({target:this})}}))),k(()=>{S.forEach(v=>v())})}function fn(t){const e=[];function n(r,i){if(qe("CSSGroupingRule")&&r.parentRule instanceof CSSGroupingRule||qe("CSSMediaRule")&&r.parentRule instanceof CSSMediaRule||qe("CSSSupportsRule")&&r.parentRule instanceof CSSSupportsRule||qe("CSSConditionRule")&&r.parentRule instanceof CSSConditionRule){const a=Array.from(r.parentRule.cssRules).indexOf(r);i.unshift(a)}else{const a=Array.from(r.parentStyleSheet.cssRules).indexOf(r);i.unshift(a)}return i}return n(t,e)}function $d({styleSheetRuleCb:t,mirror:e},{win:n}){if(!n.CSSStyleSheet||!n.CSSStyleSheet.prototype)return()=>{};const r=n.CSSStyleSheet.prototype.insertRule;n.CSSStyleSheet.prototype.insertRule=new Proxy(r,{apply:k((o,c,u)=>{const[d,l]=u,h=e.getId(c.ownerNode);return h!==-1&&t({id:h,adds:[{rule:d,index:l}]}),o.apply(c,u)})});const i=n.CSSStyleSheet.prototype.deleteRule;n.CSSStyleSheet.prototype.deleteRule=new Proxy(i,{apply:k((o,c,u)=>{const[d]=u,l=e.getId(c.ownerNode);return l!==-1&&t({id:l,removes:[{index:d}]}),o.apply(c,u)})});const s={};Ze("CSSGroupingRule")?s.CSSGroupingRule=n.CSSGroupingRule:(Ze("CSSMediaRule")&&(s.CSSMediaRule=n.CSSMediaRule),Ze("CSSConditionRule")&&(s.CSSConditionRule=n.CSSConditionRule),Ze("CSSSupportsRule")&&(s.CSSSupportsRule=n.CSSSupportsRule));const a={};return Object.entries(s).forEach(([o,c])=>{a[o]={insertRule:c.prototype.insertRule,deleteRule:c.prototype.deleteRule},c.prototype.insertRule=new Proxy(a[o].insertRule,{apply:k((u,d,l)=>{const[h,_]=l,p=e.getId(d.parentStyleSheet.ownerNode);return p!==-1&&t({id:p,adds:[{rule:h,index:[...fn(d),_||0]}]}),u.apply(d,l)})}),c.prototype.deleteRule=new Proxy(a[o].deleteRule,{apply:k((u,d,l)=>{const[h]=l,_=e.getId(d.parentStyleSheet.ownerNode);return _!==-1&&t({id:_,removes:[{index:[...fn(d),h]}]}),u.apply(d,l)})})}),k(()=>{n.CSSStyleSheet.prototype.insertRule=r,n.CSSStyleSheet.prototype.deleteRule=i,Object.entries(s).forEach(([o,c])=>{c.prototype.insertRule=a[o].insertRule,c.prototype.deleteRule=a[o].deleteRule})})}function Hd({styleDeclarationCb:t,mirror:e},{win:n}){const r=n.CSSStyleDeclaration.prototype.setProperty;n.CSSStyleDeclaration.prototype.setProperty=new Proxy(r,{apply:k((s,a,o)=>{var c,u;const[d,l,h]=o,_=e.getId((u=(c=a.parentRule)===null||c===void 0?void 0:c.parentStyleSheet)===null||u===void 0?void 0:u.ownerNode);return _!==-1&&t({id:_,set:{property:d,value:l,priority:h},index:fn(a.parentRule)}),s.apply(a,o)})});const i=n.CSSStyleDeclaration.prototype.removeProperty;return n.CSSStyleDeclaration.prototype.removeProperty=new Proxy(i,{apply:k((s,a,o)=>{var c,u;const[d]=o,l=e.getId((u=(c=a.parentRule)===null||c===void 0?void 0:c.parentStyleSheet)===null||u===void 0?void 0:u.ownerNode);return l!==-1&&t({id:l,remove:{property:d},index:fn(a.parentRule)}),s.apply(a,o)})}),k(()=>{n.CSSStyleDeclaration.prototype.setProperty=r,n.CSSStyleDeclaration.prototype.removeProperty=i})}function jd({mediaInteractionCb:t,blockClass:e,blockSelector:n,unblockSelector:r,mirror:i,sampling:s}){const a=c=>Ne(k(u=>{const d=Ue(u);if(!d||et(d,e,n,r))return;const{currentTime:l,volume:h,muted:_}=d;t({type:c,id:i.getId(d),currentTime:l,volume:h,muted:_})}),s.media||500),o=[it("play",a(0)),it("pause",a(1)),it("seeked",a(2)),it("volumechange",a(3))];return k(()=>{o.forEach(c=>c())})}function Wd({fontCb:t,doc:e}){const n=e.defaultView;if(!n)return()=>{};const r=[],i=new WeakMap,s=n.FontFace;n.FontFace=function(c,u,d){const l=new s(c,u,d);return i.set(l,{family:c,buffer:typeof u!="string",descriptors:d,fontSource:typeof u=="string"?u:JSON.stringify(Array.from(new Uint8Array(u)))}),l};const a=ne(e.fonts,"add",function(o){return function(c){return setTimeout(()=>{const u=i.get(c);u&&(t(u),i.delete(c))},0),o.apply(this,[c])}});return r.push(()=>{n.FontFace=s}),r.push(a),k(()=>{r.forEach(o=>o())})}function qd(t,e){const{mutationCb:n,mousemoveCb:r,mouseInteractionCb:i,scrollCb:s,viewportResizeCb:a,inputCb:o,mediaInteractionCb:c,styleSheetRuleCb:u,styleDeclarationCb:d,canvasMutationCb:l,fontCb:h}=t;t.mutationCb=(..._)=>{e.mutation&&e.mutation(..._),n(..._)},t.mousemoveCb=(..._)=>{e.mousemove&&e.mousemove(..._),r(..._)},t.mouseInteractionCb=(..._)=>{e.mouseInteraction&&e.mouseInteraction(..._),i(..._)},t.scrollCb=(..._)=>{e.scroll&&e.scroll(..._),s(..._)},t.viewportResizeCb=(..._)=>{e.viewportResize&&e.viewportResize(..._),a(..._)},t.inputCb=(..._)=>{e.input&&e.input(..._),o(..._)},t.mediaInteractionCb=(..._)=>{e.mediaInteaction&&e.mediaInteaction(..._),c(..._)},t.styleSheetRuleCb=(..._)=>{e.styleSheetRule&&e.styleSheetRule(..._),u(..._)},t.styleDeclarationCb=(..._)=>{e.styleDeclaration&&e.styleDeclaration(..._),d(..._)},t.canvasMutationCb=(..._)=>{e.canvasMutation&&e.canvasMutation(..._),l(..._)},t.fontCb=(..._)=>{e.font&&e.font(..._),h(..._)}}function Zd(t,e={}){const n=t.doc.defaultView;if(!n)return()=>{};qd(t,e);const r=ra(t,t.doc),i=Gd(t),s=Pd(t),a=ia(t),o=Yd(t),c=zd(t),u=jd(t),d=$d(t,{win:n}),l=Hd(t,{win:n}),h=t.collectFonts?Wd(t):()=>{},_=[];for(const p of t.plugins)_.push(p.observer(p.callback,n,p.options));return k(()=>{Mt.forEach(p=>p.reset()),r.disconnect(),i(),s(),a(),o(),c(),u();try{d(),l()}catch(p){}h(),_.forEach(p=>p())})}function qe(t){return typeof window[t]<"u"}function Ze(t){return!!(typeof window[t]<"u"&&window[t].prototype&&"insertRule"in window[t].prototype&&"deleteRule"in window[t].prototype)}class Vd{constructor(e){this.iframes=new WeakMap,this.mutationCb=e.mutationCb}addIframe(e){this.iframes.set(e,!0)}addLoadListener(e){this.loadListener=e}attachIframe(e,n){var r;this.mutationCb({adds:[{parentId:e.__sn.id,nextId:null,node:n}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),(r=this.loadListener)===null||r===void 0||r.call(this,e)}}class Xd{constructor(e){this.restorePatches=[],this.mutationCb=e.mutationCb,this.scrollCb=e.scrollCb,this.bypassOptions=e.bypassOptions,this.mirror=e.mirror;const n=this;this.restorePatches.push(ne(HTMLElement.prototype,"attachShadow",function(r){return function(){const i=r.apply(this,arguments);return this.shadowRoot&&n.addShadowRoot(this.shadowRoot,this.ownerDocument),i}}))}addShadowRoot(e,n){ra(Object.assign(Object.assign({},this.bypassOptions),{doc:n,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this}),e),ia(Object.assign(Object.assign({},this.bypassOptions),{scrollCb:this.scrollCb,doc:e,mirror:this.mirror}))}observeAttachShadow(e){if(e.contentWindow){const n=this;this.restorePatches.push(ne(e.contentWindow.HTMLElement.prototype,"attachShadow",function(r){return function(){const i=r.apply(this,arguments);return this.shadowRoot&&n.addShadowRoot(this.shadowRoot,e.contentDocument),i}}))}}reset(){this.restorePatches.forEach(e=>e())}}function Kd(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n}function Jd(t,e,n,r,i,s){const a=[],o=Object.getOwnPropertyNames(e.CanvasRenderingContext2D.prototype);for(const c of o)try{if(typeof e.CanvasRenderingContext2D.prototype[c]!="function")continue;const u=ne(e.CanvasRenderingContext2D.prototype,c,function(d){return function(...l){return et(this.canvas,n,i,r)||setTimeout(()=>{const h=[...l];if(c==="drawImage"&&h[0]&&h[0]instanceof HTMLCanvasElement){const _=h[0],p=_.getContext("2d");let w=p==null?void 0:p.getImageData(0,0,_.width,_.height),D=w==null?void 0:w.data;h[0]=JSON.stringify(D)}t(this.canvas,{type:ee["2D"],property:c,args:h})},0),d.apply(this,l)}});a.push(u)}catch(u){const d=wn(e.CanvasRenderingContext2D.prototype,c,{set(l){t(this.canvas,{type:ee["2D"],property:c,args:[l],setter:!0})}});a.push(d)}return()=>{a.forEach(c=>c())}}function Qd(t,e,n,r){const i=[];try{const s=ne(t.HTMLCanvasElement.prototype,"getContext",function(a){return function(o,...c){return et(this,e,n,r)||"__context"in this||(this.__context=o),a.apply(this,[o,...c])}});i.push(s)}catch(s){console.error("failed to patch HTMLCanvasElement.prototype.getContext")}return()=>{i.forEach(s=>s())}}var Kt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",tl=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var Ve=0;Ve<Kt.length;Ve++)tl[Kt.charCodeAt(Ve)]=Ve;var el=function(t){var e=new Uint8Array(t),n,r=e.length,i="";for(n=0;n<r;n+=3)i+=Kt[e[n]>>2],i+=Kt[(e[n]&3)<<4|e[n+1]>>4],i+=Kt[(e[n+1]&15)<<2|e[n+2]>>6],i+=Kt[e[n+2]&63];return r%3===2?i=i.substring(0,i.length-1)+"=":r%3===1&&(i=i.substring(0,i.length-2)+"=="),i};const Ei=new Map;function nl(t,e){let n=Ei.get(t);return n||(n=new Map,Ei.set(t,n)),n.has(e)||n.set(e,[]),n.get(e)}const sa=(t,e,n)=>{if(!t||!(aa(t,e)||typeof t=="object"))return;const r=t.constructor.name,i=nl(n,r);let s=i.indexOf(t);return s===-1&&(s=i.length,i.push(t)),s};function en(t,e,n){if(t instanceof Array)return t.map(r=>en(r,e,n));if(t===null)return t;if(t instanceof Float32Array||t instanceof Float64Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Uint8Array||t instanceof Uint16Array||t instanceof Int16Array||t instanceof Int8Array||t instanceof Uint8ClampedArray)return{rr_type:t.constructor.name,args:[Object.values(t)]};if(t instanceof ArrayBuffer){const r=t.constructor.name,i=el(t);return{rr_type:r,base64:i}}else{if(t instanceof DataView)return{rr_type:t.constructor.name,args:[en(t.buffer,e,n),t.byteOffset,t.byteLength]};if(t instanceof HTMLImageElement){const r=t.constructor.name,{src:i}=t;return{rr_type:r,src:i}}else{if(t instanceof ImageData)return{rr_type:t.constructor.name,args:[en(t.data,e,n),t.width,t.height]};if(aa(t,e)||typeof t=="object"){const r=t.constructor.name,i=sa(t,e,n);return{rr_type:r,index:i}}}}return t}const rl=(t,e,n)=>[...t].map(r=>en(r,e,n)),aa=(t,e)=>!!["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject","WebGLVertexArrayObjectOES"].filter(i=>typeof e[i]=="function").find(i=>t instanceof e[i]);function Si(t,e,n,r,i,s,a,o){const c=[],u=Object.getOwnPropertyNames(t);for(const d of u)try{if(typeof t[d]!="function")continue;const l=ne(t,d,function(h){return function(..._){const p=h.apply(this,_);if(sa(p,o,t),!et(this.canvas,r,s,i)){const w=a.getId(this.canvas),D=rl([..._],o,t),S={type:e,property:d,args:D};n(this.canvas,S)}return p}});c.push(l)}catch(l){const h=wn(t,d,{set(_){n(this.canvas,{type:e,property:d,args:[_],setter:!0})}});c.push(h)}return c}function il(t,e,n,r,i,s){const a=[];return a.push(...Si(e.WebGLRenderingContext.prototype,ee.WebGL,t,n,r,i,s,e)),typeof e.WebGL2RenderingContext<"u"&&a.push(...Si(e.WebGL2RenderingContext.prototype,ee.WebGL2,t,n,r,i,s,e)),()=>{a.forEach(o=>o())}}class sl{reset(){this.pendingCanvasMutations.clear(),this.resetObservers&&this.resetObservers()}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}constructor(e){this.pendingCanvasMutations=new Map,this.rafStamps={latestId:0,invokeId:null},this.frozen=!1,this.locked=!1,this.processMutation=function(n,r){(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(n)||this.pendingCanvasMutations.set(n,[]),this.pendingCanvasMutations.get(n).push(r)},this.mutationCb=e.mutationCb,this.mirror=e.mirror,e.recordCanvas===!0&&this.initCanvasMutationObserver(e.win,e.blockClass,e.blockSelector,e.unblockSelector)}initCanvasMutationObserver(e,n,r,i){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();const s=Qd(e,n,i,r),a=Jd(this.processMutation.bind(this),e,n,i,r,this.mirror),o=il(this.processMutation.bind(this),e,n,i,r,this.mirror);this.resetObservers=()=>{s(),a(),o()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){const e=n=>{this.rafStamps.latestId=n,requestAnimationFrame(e)};requestAnimationFrame(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,n)=>{const r=this.mirror.getId(n);this.flushPendingCanvasMutationFor(n,r)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,n){if(this.frozen||this.locked)return;const r=this.pendingCanvasMutations.get(e);if(!r||n===-1)return;const i=r.map(a=>Kd(a,["type"])),{type:s}=r[0];this.mutationCb({id:n,type:s,commands:i}),this.pendingCanvasMutations.delete(e)}}function q(t){return Object.assign(Object.assign({},t),{timestamp:Date.now()})}let H,we;const ge=Ud();function jt(t={}){const{emit:e,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:i="rr-block",blockSelector:s=null,unblockSelector:a=null,ignoreClass:o="rr-ignore",ignoreSelector:c=null,maskTextClass:u="rr-mask",maskTextSelector:d=null,maskInputSelector:l=null,unmaskTextSelector:h=null,unmaskInputSelector:_=null,inlineStylesheet:p=!0,maskAllText:w=!1,maskAllInputs:D,maskInputOptions:S,slimDOMOptions:O,maskInputFn:x,maskTextFn:v,hooks:b,packFn:N,sampling:T={},mousemoveWait:E,recordCanvas:U=!1,userTriggeredOnInput:I=!1,collectFonts:z=!1,inlineImages:K=!1,plugins:m,keepIframeSrcFn:A=()=>!1,onMutation:$}=t;if(!e)throw new Error("emit function is required");E!==void 0&&T.mousemove===void 0&&(T.mousemove=E);const Q=D===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,radio:!0,checkbox:!0}:S!==void 0?S:{},ft=O===!0||O==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:O==="all",headMetaDescKeywords:O==="all"}:O||{};Bd();let Ur,kn=0;const La=R=>{for(const at of m||[])at.eventProcessor&&(R=at.eventProcessor(R));return N&&(R=N(R)),R};H=(R,at)=>{var _t;if(!((_t=Mt[0])===null||_t===void 0)&&_t.isFrozen()&&R.type!==L.FullSnapshot&&!(R.type===L.IncrementalSnapshot&&R.data.source===Z.Mutation)&&Mt.forEach(rt=>rt.unfreeze()),e(La(R),at),R.type===L.FullSnapshot)Ur=R,kn=0;else if(R.type===L.IncrementalSnapshot){if(R.data.source===Z.Mutation&&R.data.isAttachIframe)return;kn++;const rt=r&&kn>=r,ot=n&&R.timestamp-Ur.timestamp>n;(rt||ot)&&we(!0)}};const Nn=R=>{H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.Mutation},R)}))},Br=R=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.Scroll},R)})),Lr=R=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.CanvasMutation},R)})),_e=new Vd({mutationCb:Nn}),Mr=new sl({recordCanvas:U,mutationCb:Lr,win:window,blockClass:i,blockSelector:s,unblockSelector:a,mirror:ge}),Dn=new Xd({mutationCb:Nn,scrollCb:Br,bypassOptions:{onMutation:$,blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:u,maskTextSelector:d,unmaskTextSelector:h,maskInputSelector:l,unmaskInputSelector:_,inlineStylesheet:p,maskAllText:w,maskInputOptions:Q,maskTextFn:v,maskInputFn:x,recordCanvas:U,inlineImages:K,sampling:T,slimDOMOptions:ft,iframeManager:_e,canvasManager:Mr},mirror:ge});we=(R=!1)=>{var at,_t,rt,ot;H(q({type:L.Meta,data:{href:window.location.href,width:Js(),height:Ks()}}),R),Mt.forEach(ct=>ct.lock());const[M,he]=Ad(document,{blockClass:i,blockSelector:s,unblockSelector:a,maskTextClass:u,maskTextSelector:d,unmaskTextSelector:h,maskInputSelector:l,unmaskInputSelector:_,inlineStylesheet:p,maskAllText:w,maskAllInputs:Q,maskTextFn:v,slimDOM:ft,recordCanvas:U,inlineImages:K,onSerialize:ct=>{ea(ct)&&_e.addIframe(ct),na(ct)&&Dn.addShadowRoot(ct.shadowRoot,document)},onIframeLoad:(ct,Ma)=>{_e.attachIframe(ct,Ma),Dn.observeAttachShadow(ct)},keepIframeSrcFn:A});if(!M)return console.warn("Failed to snapshot the document");ge.map=he,H(q({type:L.FullSnapshot,data:{node:M,initialOffset:{left:window.pageXOffset!==void 0?window.pageXOffset:(document==null?void 0:document.documentElement.scrollLeft)||((_t=(at=document==null?void 0:document.body)===null||at===void 0?void 0:at.parentElement)===null||_t===void 0?void 0:_t.scrollLeft)||(document==null?void 0:document.body.scrollLeft)||0,top:window.pageYOffset!==void 0?window.pageYOffset:(document==null?void 0:document.documentElement.scrollTop)||((ot=(rt=document==null?void 0:document.body)===null||rt===void 0?void 0:rt.parentElement)===null||ot===void 0?void 0:ot.scrollTop)||(document==null?void 0:document.body.scrollTop)||0}}})),Mt.forEach(ct=>ct.unlock())};try{const R=[];R.push(it("DOMContentLoaded",()=>{H(q({type:L.DomContentLoaded,data:{}}))}));const at=rt=>{var ot;return k(Zd)({onMutation:$,mutationCb:Nn,mousemoveCb:(M,he)=>H(q({type:L.IncrementalSnapshot,data:{source:he,positions:M}})),mouseInteractionCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.MouseInteraction},M)})),scrollCb:Br,viewportResizeCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.ViewportResize},M)})),inputCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.Input},M)})),mediaInteractionCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.MediaInteraction},M)})),styleSheetRuleCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.StyleSheetRule},M)})),styleDeclarationCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.StyleDeclaration},M)})),canvasMutationCb:Lr,fontCb:M=>H(q({type:L.IncrementalSnapshot,data:Object.assign({source:Z.Font},M)})),blockClass:i,ignoreClass:o,ignoreSelector:c,maskTextClass:u,maskTextSelector:d,unmaskTextSelector:h,maskInputSelector:l,unmaskInputSelector:_,maskInputOptions:Q,inlineStylesheet:p,sampling:T,recordCanvas:U,inlineImages:K,userTriggeredOnInput:I,collectFonts:z,doc:rt,maskAllText:w,maskInputFn:x,maskTextFn:v,blockSelector:s,unblockSelector:a,slimDOMOptions:ft,mirror:ge,iframeManager:_e,shadowDomManager:Dn,canvasManager:Mr,plugins:((ot=m==null?void 0:m.filter(M=>M.observer))===null||ot===void 0?void 0:ot.map(M=>({observer:M.observer,options:M.options,callback:he=>H(q({type:L.Plugin,data:{plugin:M.name,payload:he}}))})))||[]},b)};_e.addLoadListener(rt=>{try{R.push(at(rt.contentDocument))}catch(ot){console.warn(ot)}});const _t=()=>{we(),R.push(at(document))};return document.readyState==="interactive"||document.readyState==="complete"?_t():R.push(it("load",()=>{H(q({type:L.Load,data:{}})),_t()},window)),()=>{R.forEach(rt=>rt())}}catch(R){console.warn(R)}}jt.addCustomEvent=(t,e)=>{if(!H)throw new Error("please add custom event after start recording");H(q({type:L.Custom,data:{tag:t,payload:e}}))};jt.freezePage=()=>{Mt.forEach(t=>t.freeze())};jt.takeFullSnapshot=t=>{if(!we)throw new Error("please take full snapshot after start recording");we(t)};jt.mirror=ge;const al=["name","type","startTime","transferSize","duration"];function bi(t){return function(e){return al.every(n=>t[n]===e[n])}}function ol(t,e){const[n,r,i]=t.reduce((c,u)=>(u.entryType==="navigation"?c[0].push(u):u.entryType==="largest-contentful-paint"?c[1].push(u):c[2].push(u),c),[[],[],[]]),s=[],a=[];let o=r.length?r[r.length-1]:void 0;return e.forEach(c=>{if(c.entryType==="largest-contentful-paint"){(!o||o.startTime<c.startTime)&&(o=c);return}if(c.entryType==="navigation"){const u=c;c.duration>0&&!n.find(bi(u))&&!a.find(bi(u))&&a.push(u);return}s.push(c)}),[...o?[o]:[],...n,...i,...s,...a].sort((c,u)=>c.startTime-u.startTime)}function cl(t){const e=r=>{const i=ol(t.performanceEvents,r.getEntries());t.performanceEvents=i},n=new PerformanceObserver(e);return["element","event","first-input","largest-contentful-paint","layout-shift","longtask","navigation","paint","resource"].forEach(r=>{try{n.observe({type:r,buffered:!0})}catch(i){}}),n}const ul=`/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */ function t(t){let e=t.length;for(;--e>=0;)t[e]=0}const e=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),a=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),i=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),n=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),s=new Array(576);t(s);const r=new Array(60);t(r);const o=new Array(512);t(o);const l=new Array(256);t(l);const h=new Array(29);t(h);const d=new Array(30);function _(t,e,a,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}let f,c,u;function w(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}t(d);const m=t=>t<256?o[t]:o[256+(t>>>7)],b=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},g=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<<t.bi_valid&65535,b(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=a)},p=(t,e,a)=>{g(t,a[2*e],a[2*e+1])},k=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},v=(t,e,a)=>{const i=new Array(16);let n,s,r=0;for(n=1;n<=15;n++)r=r+a[n-1]<<1,i[n]=r;for(s=0;s<=e;s++){let e=t[2*s+1];0!==e&&(t[2*s]=k(i[e]++,e))}},y=t=>{let e;for(e=0;e<286;e++)t.dyn_ltree[2*e]=0;for(e=0;e<30;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},x=t=>{t.bi_valid>8?b(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},z=(t,e,a,i)=>{const n=2*e,s=2*a;return t[n]<t[s]||t[n]===t[s]&&i[e]<=i[a]},A=(t,e,a)=>{const i=t.heap[a];let n=a<<1;for(;n<=t.heap_len&&(n<t.heap_len&&z(e,t.heap[n+1],t.heap[n],t.depth)&&n++,!z(e,i,t.heap[n],t.depth));)t.heap[a]=t.heap[n],a=n,n<<=1;t.heap[a]=i},E=(t,i,n)=>{let s,r,o,_,f=0;if(0!==t.sym_next)do{s=255&t.pending_buf[t.sym_buf+f++],s+=(255&t.pending_buf[t.sym_buf+f++])<<8,r=t.pending_buf[t.sym_buf+f++],0===s?p(t,r,i):(o=l[r],p(t,o+256+1,i),_=e[o],0!==_&&(r-=h[o],g(t,r,_)),s--,o=m(s),p(t,o,n),_=a[o],0!==_&&(s-=d[o],g(t,s,_)))}while(f<t.sym_next);p(t,256,i)},R=(t,e)=>{const a=e.dyn_tree,i=e.stat_desc.static_tree,n=e.stat_desc.has_stree,s=e.stat_desc.elems;let r,o,l,h=-1;for(t.heap_len=0,t.heap_max=573,r=0;r<s;r++)0!==a[2*r]?(t.heap[++t.heap_len]=h=r,t.depth[r]=0):a[2*r+1]=0;for(;t.heap_len<2;)l=t.heap[++t.heap_len]=h<2?++h:0,a[2*l]=1,t.depth[l]=0,t.opt_len--,n&&(t.static_len-=i[2*l+1]);for(e.max_code=h,r=t.heap_len>>1;r>=1;r--)A(t,a,r);l=s;do{r=t.heap[1],t.heap[1]=t.heap[t.heap_len--],A(t,a,1),o=t.heap[1],t.heap[--t.heap_max]=r,t.heap[--t.heap_max]=o,a[2*l]=a[2*r]+a[2*o],t.depth[l]=(t.depth[r]>=t.depth[o]?t.depth[r]:t.depth[o])+1,a[2*r+1]=a[2*o+1]=l,t.heap[1]=l++,A(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,n=e.stat_desc.static_tree,s=e.stat_desc.has_stree,r=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length;let h,d,_,f,c,u,w=0;for(f=0;f<=15;f++)t.bl_count[f]=0;for(a[2*t.heap[t.heap_max]+1]=0,h=t.heap_max+1;h<573;h++)d=t.heap[h],f=a[2*a[2*d+1]+1]+1,f>l&&(f=l,w++),a[2*d+1]=f,d>i||(t.bl_count[f]++,c=0,d>=o&&(c=r[d-o]),u=a[2*d],t.opt_len+=u*(f+c),s&&(t.static_len+=u*(n[2*d+1]+c)));if(0!==w){do{for(f=l-1;0===t.bl_count[f];)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[l]--,w-=2}while(w>0);for(f=l;0!==f;f--)for(d=t.bl_count[f];0!==d;)_=t.heap[--h],_>i||(a[2*_+1]!==f&&(t.opt_len+=(f-a[2*_+1])*a[2*_],a[2*_+1]=f),d--)}})(t,e),v(a,h,t.bl_count)},Z=(t,e,a)=>{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)n=r,r=e[2*(i+1)+1],++o<l&&n===r||(o<h?t.bl_tree[2*n]+=o:0!==n?(n!==s&&t.bl_tree[2*n]++,t.bl_tree[32]++):o<=10?t.bl_tree[34]++:t.bl_tree[36]++,o=0,s=n,0===r?(l=138,h=3):n===r?(l=6,h=3):(l=7,h=4))},U=(t,e,a)=>{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),i=0;i<=a;i++)if(n=r,r=e[2*(i+1)+1],!(++o<l&&n===r)){if(o<h)do{p(t,n,t.bl_tree)}while(0!=--o);else 0!==n?(n!==s&&(p(t,n,t.bl_tree),o--),p(t,16,t.bl_tree),g(t,o-3,2)):o<=10?(p(t,17,t.bl_tree),g(t,o-3,3)):(p(t,18,t.bl_tree),g(t,o-11,7));o=0,s=n,0===r?(l=138,h=3):n===r?(l=6,h=3):(l=7,h=4)}};let S=!1;const D=(t,e,a,i)=>{g(t,0+(i?1:0),3),x(t),b(t,a),b(t,~a),a&&t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a};var T=(t,e,a,i)=>{let o,l,h=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,a=4093624447;for(e=0;e<=31;e++,a>>>=1)if(1&a&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<256;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),R(t,t.l_desc),R(t,t.d_desc),h=(t=>{let e;for(Z(t,t.dyn_ltree,t.l_desc.max_code),Z(t,t.dyn_dtree,t.d_desc.max_code),R(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*n[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),o=t.opt_len+3+7>>>3,l=t.static_len+3+7>>>3,l<=o&&(o=l)):o=l=a+5,a+4<=o&&-1!==e?D(t,e,a,i):4===t.strategy||l===o?(g(t,2+(i?1:0),3),E(t,s,r)):(g(t,4+(i?1:0),3),((t,e,a,i)=>{let s;for(g(t,e-257,5),g(t,a-1,5),g(t,i-4,4),s=0;s<i;s++)g(t,t.bl_tree[2*n[s]+1],3);U(t,t.dyn_ltree,e-1),U(t,t.dyn_dtree,a-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,h+1),E(t,t.dyn_ltree,t.dyn_dtree)),y(t),i&&x(t)},O={_tr_init:t=>{S||((()=>{let t,n,w,m,b;const g=new Array(16);for(w=0,m=0;m<28;m++)for(h[m]=w,t=0;t<1<<e[m];t++)l[w++]=m;for(l[w-1]=m,b=0,m=0;m<16;m++)for(d[m]=b,t=0;t<1<<a[m];t++)o[b++]=m;for(b>>=7;m<30;m++)for(d[m]=b<<7,t=0;t<1<<a[m]-7;t++)o[256+b++]=m;for(n=0;n<=15;n++)g[n]=0;for(t=0;t<=143;)s[2*t+1]=8,t++,g[8]++;for(;t<=255;)s[2*t+1]=9,t++,g[9]++;for(;t<=279;)s[2*t+1]=7,t++,g[7]++;for(;t<=287;)s[2*t+1]=8,t++,g[8]++;for(v(s,287,g),t=0;t<30;t++)r[2*t+1]=5,r[2*t]=k(t,5);f=new _(s,e,257,286,15),c=new _(r,a,0,30,15),u=new _(new Array(0),i,0,19,7)})(),S=!0),t.l_desc=new w(t.dyn_ltree,f),t.d_desc=new w(t.dyn_dtree,c),t.bl_desc=new w(t.bl_tree,u),t.bi_buf=0,t.bi_valid=0,y(t)},_tr_stored_block:D,_tr_flush_block:T,_tr_tally:(t,e,a)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=a,0===e?t.dyn_ltree[2*a]++:(t.matches++,e--,t.dyn_ltree[2*(l[a]+256+1)]++,t.dyn_dtree[2*m(e)]++),t.sym_next===t.sym_end),_tr_align:t=>{g(t,2,3),p(t,256,s),(t=>{16===t.bi_valid?(b(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}};var F=(t,e,a,i)=>{let n=65535&t|0,s=t>>>16&65535|0,r=0;for(;0!==a;){r=a>2e3?2e3:a,a-=r;do{n=n+e[i++]|0,s=s+n|0}while(--r);n%=65521,s%=65521}return n|s<<16|0};const L=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var N=(t,e,a,i)=>{const n=L,s=i+a;t^=-1;for(let a=i;a<s;a++)t=t>>>8^n[255&(t^e[a])];return-1^t},I={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},B={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:C,_tr_stored_block:H,_tr_flush_block:M,_tr_tally:j,_tr_align:K}=O,{Z_NO_FLUSH:P,Z_PARTIAL_FLUSH:Y,Z_FULL_FLUSH:G,Z_FINISH:X,Z_BLOCK:W,Z_OK:q,Z_STREAM_END:J,Z_STREAM_ERROR:Q,Z_DATA_ERROR:V,Z_BUF_ERROR:$,Z_DEFAULT_COMPRESSION:tt,Z_FILTERED:et,Z_HUFFMAN_ONLY:at,Z_RLE:it,Z_FIXED:nt,Z_DEFAULT_STRATEGY:st,Z_UNKNOWN:rt,Z_DEFLATED:ot}=B,lt=(t,e)=>(t.msg=I[e],e),ht=t=>2*t-(t>4?9:0),dt=t=>{let e=t.length;for(;--e>=0;)t[e]=0},_t=t=>{let e,a,i,n=t.w_size;e=t.hash_size,i=e;do{a=t.head[--i],t.head[i]=a>=n?a-n:0}while(--e);e=n,i=e;do{a=t.prev[--i],t.prev[i]=a>=n?a-n:0}while(--e)};let ft=(t,e,a)=>(e<<t.hash_shift^a)&t.hash_mask;const ct=t=>{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},ut=(t,e)=>{M(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,ct(t.strm)},wt=(t,e)=>{t.pending_buf[t.pending++]=e},mt=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},bt=(t,e,a,i)=>{let n=t.avail_in;return n>i&&(n=i),0===n?0:(t.avail_in-=n,e.set(t.input.subarray(t.next_in,t.next_in+n),a),1===t.state.wrap?t.adler=F(t.adler,e,n,a):2===t.state.wrap&&(t.adler=N(t.adler,e,n,a)),t.next_in+=n,t.total_in+=n,n)},gt=(t,e)=>{let a,i,n=t.max_chain_length,s=t.strstart,r=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-262?t.strstart-(t.w_size-262):0,h=t.window,d=t.w_mask,_=t.prev,f=t.strstart+258;let c=h[s+r-1],u=h[s+r];t.prev_length>=t.good_match&&(n>>=2),o>t.lookahead&&(o=t.lookahead);do{if(a=e,h[a+r]===u&&h[a+r-1]===c&&h[a]===h[s]&&h[++a]===h[s+1]){s+=2,a++;do{}while(h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&s<f);if(i=258-(f-s),s=f-258,i>r){if(t.match_start=e,r=i,i>=o)break;c=h[s+r-1],u=h[s+r]}}}while((e=_[e&d])>l&&0!=--n);return r<=t.lookahead?r:t.lookahead},pt=t=>{const e=t.w_size;let a,i,n;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-262)&&(t.window.set(t.window.subarray(e,e+e-i),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),_t(t),i+=e),0===t.strm.avail_in)break;if(a=bt(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=a,t.lookahead+t.insert>=3)for(n=t.strstart-t.insert,t.ins_h=t.window[n],t.ins_h=ft(t,t.ins_h,t.window[n+1]);t.insert&&(t.ins_h=ft(t,t.ins_h,t.window[n+3-1]),t.prev[n&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=n,n++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<262&&0!==t.strm.avail_in)},kt=(t,e)=>{let a,i,n,s=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,r=0,o=t.strm.avail_in;do{if(a=65535,n=t.bi_valid+42>>3,t.strm.avail_out<n)break;if(n=t.strm.avail_out-n,i=t.strstart-t.block_start,a>i+t.strm.avail_in&&(a=i+t.strm.avail_in),a>n&&(a=n),a<s&&(0===a&&e!==X||e===P||a!==i+t.strm.avail_in))break;r=e===X&&a===i+t.strm.avail_in?1:0,H(t,0,0,r),t.pending_buf[t.pending-4]=a,t.pending_buf[t.pending-3]=a>>8,t.pending_buf[t.pending-2]=~a,t.pending_buf[t.pending-1]=~a>>8,ct(t.strm),i&&(i>a&&(i=a),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+i),t.strm.next_out),t.strm.next_out+=i,t.strm.avail_out-=i,t.strm.total_out+=i,t.block_start+=i,a-=i),a&&(bt(t.strm,t.strm.output,t.strm.next_out,a),t.strm.next_out+=a,t.strm.avail_out-=a,t.strm.total_out+=a)}while(0===r);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),r?4:e!==P&&e!==X&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(n=t.window_size-t.strstart,t.strm.avail_in>n&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,n+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),n>t.strm.avail_in&&(n=t.strm.avail_in),n&&(bt(t.strm,t.window,t.strstart,n),t.strstart+=n,t.insert+=n>t.w_size-t.insert?t.w_size-t.insert:n),t.high_water<t.strstart&&(t.high_water=t.strstart),n=t.bi_valid+42>>3,n=t.pending_buf_size-n>65535?65535:t.pending_buf_size-n,s=n>t.w_size?t.w_size:n,i=t.strstart-t.block_start,(i>=s||(i||e===X)&&e!==P&&0===t.strm.avail_in&&i<=n)&&(a=i>n?n:i,r=e===X&&0===t.strm.avail_in&&a===i?1:0,H(t,t.block_start,a,r),t.block_start+=a,ct(t.strm)),r?3:1)},vt=(t,e)=>{let a,i;for(;;){if(t.lookahead<262){if(pt(t),t.lookahead<262&&e===P)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=ft(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-262&&(t.match_length=gt(t,a)),t.match_length>=3)if(i=j(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=ft(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=ft(t,t.ins_h,t.window[t.strstart+1]);else i=j(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===X?(ut(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ut(t,!1),0===t.strm.avail_out)?1:2},yt=(t,e)=>{let a,i,n;for(;;){if(t.lookahead<262){if(pt(t),t.lookahead<262&&e===P)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=ft(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length<t.max_lazy_match&&t.strstart-a<=t.w_size-262&&(t.match_length=gt(t,a),t.match_length<=5&&(t.strategy===et||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-3,i=j(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=n&&(t.ins_h=ft(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(ut(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=j(t,0,t.window[t.strstart-1]),i&&ut(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=j(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===X?(ut(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ut(t,!1),0===t.strm.avail_out)?1:2};function xt(t,e,a,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=n}const zt=[new xt(0,0,0,0,kt),new xt(4,4,8,4,vt),new xt(4,5,16,8,vt),new xt(4,6,32,32,vt),new xt(4,4,16,16,yt),new xt(8,16,32,32,yt),new xt(8,16,128,128,yt),new xt(8,32,128,256,yt),new xt(32,128,258,1024,yt),new xt(32,258,258,4096,yt)];function At(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=ot,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),dt(this.dyn_ltree),dt(this.dyn_dtree),dt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),dt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),dt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Et=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||42!==e.status&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&113!==e.status&&666!==e.status?1:0},Rt=t=>{if(Et(t))return lt(t,Q);t.total_in=t.total_out=0,t.data_type=rt;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?42:113,t.adler=2===e.wrap?0:1,e.last_flush=-2,C(e),q},Zt=t=>{const e=Rt(t);var a;return e===q&&((a=t.state).window_size=2*a.w_size,dt(a.head),a.max_lazy_match=zt[a.level].max_lazy,a.good_match=zt[a.level].good_length,a.nice_match=zt[a.level].nice_length,a.max_chain_length=zt[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},Ut=(t,e,a,i,n,s)=>{if(!t)return Q;let r=1;if(e===tt&&(e=6),i<0?(r=0,i=-i):i>15&&(r=2,i-=16),n<1||n>9||a!==ot||i<8||i>15||e<0||e>9||s<0||s>nt||8===i&&1!==r)return lt(t,Q);8===i&&(i=9);const o=new At;return t.state=o,o.strm=t,o.status=42,o.wrap=r,o.gzhead=null,o.w_bits=i,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=n+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<n+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=3*(o.lit_bufsize-1),o.level=e,o.strategy=s,o.method=a,Zt(t)};var St={deflateInit:(t,e)=>Ut(t,e,ot,15,8,st),deflateInit2:Ut,deflateReset:Zt,deflateResetKeep:Rt,deflateSetHeader:(t,e)=>Et(t)||2!==t.state.wrap?Q:(t.state.gzhead=e,q),deflate:(t,e)=>{if(Et(t)||e>W||e<0)return t?lt(t,Q):Q;const a=t.state;if(!t.output||0!==t.avail_in&&!t.input||666===a.status&&e!==X)return lt(t,0===t.avail_out?$:Q);const i=a.last_flush;if(a.last_flush=e,0!==a.pending){if(ct(t),0===t.avail_out)return a.last_flush=-1,q}else if(0===t.avail_in&&ht(e)<=ht(i)&&e!==X)return lt(t,$);if(666===a.status&&0!==t.avail_in)return lt(t,$);if(42===a.status&&0===a.wrap&&(a.status=113),42===a.status){let e=ot+(a.w_bits-8<<4)<<8,i=-1;if(i=a.strategy>=at||a.level<2?0:a.level<6?1:6===a.level?2:3,e|=i<<6,0!==a.strstart&&(e|=32),e+=31-e%31,mt(a,e),0!==a.strstart&&(mt(a,t.adler>>>16),mt(a,65535&t.adler)),t.adler=1,a.status=113,ct(t),0!==a.pending)return a.last_flush=-1,q}if(57===a.status)if(t.adler=0,wt(a,31),wt(a,139),wt(a,8),a.gzhead)wt(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),wt(a,255&a.gzhead.time),wt(a,a.gzhead.time>>8&255),wt(a,a.gzhead.time>>16&255),wt(a,a.gzhead.time>>24&255),wt(a,9===a.level?2:a.strategy>=at||a.level<2?4:0),wt(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(wt(a,255&a.gzhead.extra.length),wt(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(t.adler=N(t.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69;else if(wt(a,0),wt(a,0),wt(a,0),wt(a,0),wt(a,0),wt(a,9===a.level?2:a.strategy>=at||a.level<2?4:0),wt(a,3),a.status=113,ct(t),0!==a.pending)return a.last_flush=-1,q;if(69===a.status){if(a.gzhead.extra){let e=a.pending,i=(65535&a.gzhead.extra.length)-a.gzindex;for(;a.pending+i>a.pending_buf_size;){let n=a.pending_buf_size-a.pending;if(a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex,a.gzindex+n),a.pending),a.pending=a.pending_buf_size,a.gzhead.hcrc&&a.pending>e&&(t.adler=N(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex+=n,ct(t),0!==a.pending)return a.last_flush=-1,q;e=0,i-=n}let n=new Uint8Array(a.gzhead.extra);a.pending_buf.set(n.subarray(a.gzindex,a.gzindex+i),a.pending),a.pending+=i,a.gzhead.hcrc&&a.pending>e&&(t.adler=N(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex=0}a.status=73}if(73===a.status){if(a.gzhead.name){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=N(t.adler,a.pending_buf,a.pending-i,i)),ct(t),0!==a.pending)return a.last_flush=-1,q;i=0}e=a.gzindex<a.gzhead.name.length?255&a.gzhead.name.charCodeAt(a.gzindex++):0,wt(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(t.adler=N(t.adler,a.pending_buf,a.pending-i,i)),a.gzindex=0}a.status=91}if(91===a.status){if(a.gzhead.comment){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=N(t.adler,a.pending_buf,a.pending-i,i)),ct(t),0!==a.pending)return a.last_flush=-1,q;i=0}e=a.gzindex<a.gzhead.comment.length?255&a.gzhead.comment.charCodeAt(a.gzindex++):0,wt(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(t.adler=N(t.adler,a.pending_buf,a.pending-i,i))}a.status=103}if(103===a.status){if(a.gzhead.hcrc){if(a.pending+2>a.pending_buf_size&&(ct(t),0!==a.pending))return a.last_flush=-1,q;wt(a,255&t.adler),wt(a,t.adler>>8&255),t.adler=0}if(a.status=113,ct(t),0!==a.pending)return a.last_flush=-1,q}if(0!==t.avail_in||0!==a.lookahead||e!==P&&666!==a.status){let i=0===a.level?kt(a,e):a.strategy===at?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(pt(t),0===t.lookahead)){if(e===P)return 1;break}if(t.match_length=0,a=j(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===X?(ut(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ut(t,!1),0===t.strm.avail_out)?1:2})(a,e):a.strategy===it?((t,e)=>{let a,i,n,s;const r=t.window;for(;;){if(t.lookahead<=258){if(pt(t),t.lookahead<=258&&e===P)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(n=t.strstart-1,i=r[n],i===r[++n]&&i===r[++n]&&i===r[++n])){s=t.strstart+258;do{}while(i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&n<s);t.match_length=258-(s-n),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=j(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=j(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===X?(ut(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(ut(t,!1),0===t.strm.avail_out)?1:2})(a,e):zt[a.level].func(a,e);if(3!==i&&4!==i||(a.status=666),1===i||3===i)return 0===t.avail_out&&(a.last_flush=-1),q;if(2===i&&(e===Y?K(a):e!==W&&(H(a,0,0,!1),e===G&&(dt(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),ct(t),0===t.avail_out))return a.last_flush=-1,q}return e!==X?q:a.wrap<=0?J:(2===a.wrap?(wt(a,255&t.adler),wt(a,t.adler>>8&255),wt(a,t.adler>>16&255),wt(a,t.adler>>24&255),wt(a,255&t.total_in),wt(a,t.total_in>>8&255),wt(a,t.total_in>>16&255),wt(a,t.total_in>>24&255)):(mt(a,t.adler>>>16),mt(a,65535&t.adler)),ct(t),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?q:J)},deflateEnd:t=>{if(Et(t))return Q;const e=t.state.status;return t.state=null,113===e?lt(t,V):q},deflateSetDictionary:(t,e)=>{let a=e.length;if(Et(t))return Q;const i=t.state,n=i.wrap;if(2===n||1===n&&42!==i.status||i.lookahead)return Q;if(1===n&&(t.adler=F(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===n&&(dt(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const s=t.avail_in,r=t.next_in,o=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,pt(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=ft(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,pt(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=r,t.input=o,t.avail_in=s,i.wrap=n,q},deflateInfo:"pako deflate (from Nodeca project)"};const Dt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Tt=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)Dt(a,e)&&(t[e]=a[e])}}return t},Ot=t=>{let e=0;for(let a=0,i=t.length;a<i;a++)e+=t[a].length;const a=new Uint8Array(e);for(let e=0,i=0,n=t.length;e<n;e++){let n=t[e];a.set(n,i),i+=n.length}return a};let Ft=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Ft=!1}const Lt=new Uint8Array(256);for(let t=0;t<256;t++)Lt[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Lt[254]=Lt[254]=1;var Nt=t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,a,i,n,s,r=t.length,o=0;for(n=0;n<r;n++)a=t.charCodeAt(n),55296==(64512&a)&&n+1<r&&(i=t.charCodeAt(n+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),n++)),o+=a<128?1:a<2048?2:a<65536?3:4;for(e=new Uint8Array(o),s=0,n=0;s<o;n++)a=t.charCodeAt(n),55296==(64512&a)&&n+1<r&&(i=t.charCodeAt(n+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),n++)),a<128?e[s++]=a:a<2048?(e[s++]=192|a>>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},It=(t,e)=>{const a=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,n;const s=new Array(2*a);for(n=0,i=0;i<a;){let e=t[i++];if(e<128){s[n++]=e;continue}let r=Lt[e];if(r>4)s[n++]=65533,i+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&i<a;)e=e<<6|63&t[i++],r--;r>1?s[n++]=65533:e<65536?s[n++]=e:(e-=65536,s[n++]=55296|e>>10&1023,s[n++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Ft)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i<e;i++)a+=String.fromCharCode(t[i]);return a})(s,n)},Bt=(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+Lt[t[a]]>e?a:e};var Ct=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const Ht=Object.prototype.toString,{Z_NO_FLUSH:Mt,Z_SYNC_FLUSH:jt,Z_FULL_FLUSH:Kt,Z_FINISH:Pt,Z_OK:Yt,Z_STREAM_END:Gt,Z_DEFAULT_COMPRESSION:Xt,Z_DEFAULT_STRATEGY:Wt,Z_DEFLATED:qt}=B;function Jt(t){this.options=Tt({level:Xt,method:qt,chunkSize:16384,windowBits:15,memLevel:8,strategy:Wt},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Ct,this.strm.avail_out=0;let a=St.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==Yt)throw new Error(I[a]);if(e.header&&St.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Nt(e.dictionary):"[object ArrayBuffer]"===Ht.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=St.deflateSetDictionary(this.strm,t),a!==Yt)throw new Error(I[a]);this._dict_set=!0}}function Qt(t,e){const a=new Jt(e);if(a.push(t,!0),a.err)throw a.msg||I[a.err];return a.result}Jt.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let n,s;if(this.ended)return!1;for(s=e===~~e?e:!0===e?Pt:Mt,"string"==typeof t?a.input=Nt(t):"[object ArrayBuffer]"===Ht.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(s===jt||s===Kt)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(n=St.deflate(a,s),n===Gt)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),n=St.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===Yt;if(0!==a.avail_out){if(s>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},Jt.prototype.onData=function(t){this.chunks.push(t)},Jt.prototype.onEnd=function(t){t===Yt&&(this.result=Ot(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var Vt={Deflate:Jt,deflate:Qt,deflateRaw:function(t,e){return(e=e||{}).raw=!0,Qt(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,Qt(t,e)},constants:B};var $t=function(t,e){let a,i,n,s,r,o,l,h,d,_,f,c,u,w,m,b,g,p,k,v,y,x,z,A;const E=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),n=t.next_out,A=t.output,s=n-(e-t.avail_out),r=n+(t.avail_out-257),o=E.dmax,l=E.wsize,h=E.whave,d=E.wnext,_=E.window,f=E.hold,c=E.bits,u=E.lencode,w=E.distcode,m=(1<<E.lenbits)-1,b=(1<<E.distbits)-1;t:do{c<15&&(f+=z[a++]<<c,c+=8,f+=z[a++]<<c,c+=8),g=u[f&m];e:for(;;){if(p=g>>>24,f>>>=p,c-=p,p=g>>>16&255,0===p)A[n++]=65535&g;else{if(!(16&p)){if(0==(64&p)){g=u[(65535&g)+(f&(1<<p)-1)];continue e}if(32&p){E.mode=16191;break t}t.msg="invalid literal/length code",E.mode=16209;break t}k=65535&g,p&=15,p&&(c<p&&(f+=z[a++]<<c,c+=8),k+=f&(1<<p)-1,f>>>=p,c-=p),c<15&&(f+=z[a++]<<c,c+=8,f+=z[a++]<<c,c+=8),g=w[f&b];a:for(;;){if(p=g>>>24,f>>>=p,c-=p,p=g>>>16&255,!(16&p)){if(0==(64&p)){g=w[(65535&g)+(f&(1<<p)-1)];continue a}t.msg="invalid distance code",E.mode=16209;break t}if(v=65535&g,p&=15,c<p&&(f+=z[a++]<<c,c+=8,c<p&&(f+=z[a++]<<c,c+=8)),v+=f&(1<<p)-1,v>o){t.msg="invalid distance too far back",E.mode=16209;break t}if(f>>>=p,c-=p,p=n-s,v>p){if(p=v-p,p>h&&E.sane){t.msg="invalid distance too far back",E.mode=16209;break t}if(y=0,x=_,0===d){if(y+=l-p,p<k){k-=p;do{A[n++]=_[y++]}while(--p);y=n-v,x=A}}else if(d<p){if(y+=l+d-p,p-=d,p<k){k-=p;do{A[n++]=_[y++]}while(--p);if(y=0,d<k){p=d,k-=p;do{A[n++]=_[y++]}while(--p);y=n-v,x=A}}}else if(y+=d-p,p<k){k-=p;do{A[n++]=_[y++]}while(--p);y=n-v,x=A}for(;k>2;)A[n++]=x[y++],A[n++]=x[y++],A[n++]=x[y++],k-=3;k&&(A[n++]=x[y++],k>1&&(A[n++]=x[y++]))}else{y=n-v;do{A[n++]=A[y++],A[n++]=A[y++],A[n++]=A[y++],k-=3}while(k>2);k&&(A[n++]=A[y++],k>1&&(A[n++]=A[y++]))}break}}break}}while(a<i&&n<r);k=c>>3,a-=k,c-=k<<3,f&=(1<<c)-1,t.next_in=a,t.next_out=n,t.avail_in=a<i?i-a+5:5-(a-i),t.avail_out=n<r?r-n+257:257-(n-r),E.hold=f,E.bits=c};const te=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),ee=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),ae=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),ie=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var ne=(t,e,a,i,n,s,r,o)=>{const l=o.bits;let h,d,_,f,c,u,w=0,m=0,b=0,g=0,p=0,k=0,v=0,y=0,x=0,z=0,A=null;const E=new Uint16Array(16),R=new Uint16Array(16);let Z,U,S,D=null;for(w=0;w<=15;w++)E[w]=0;for(m=0;m<i;m++)E[e[a+m]]++;for(p=l,g=15;g>=1&&0===E[g];g--);if(p>g&&(p=g),0===g)return n[s++]=20971520,n[s++]=20971520,o.bits=1,0;for(b=1;b<g&&0===E[b];b++);for(p<b&&(p=b),y=1,w=1;w<=15;w++)if(y<<=1,y-=E[w],y<0)return-1;if(y>0&&(0===t||1!==g))return-1;for(R[1]=0,w=1;w<15;w++)R[w+1]=R[w]+E[w];for(m=0;m<i;m++)0!==e[a+m]&&(r[R[e[a+m]]++]=m);if(0===t?(A=D=r,u=20):1===t?(A=te,D=ee,u=257):(A=ae,D=ie,u=0),z=0,m=0,w=b,c=s,k=p,v=0,_=-1,x=1<<p,f=x-1,1===t&&x>852||2===t&&x>592)return 1;for(;;){Z=w-v,r[m]+1<u?(U=0,S=r[m]):r[m]>=u?(U=D[r[m]-u],S=A[r[m]-u]):(U=96,S=0),h=1<<w-v,d=1<<k,b=d;do{d-=h,n[c+(z>>v)+d]=Z<<24|U<<16|S|0}while(0!==d);for(h=1<<w-1;z&h;)h>>=1;if(0!==h?(z&=h-1,z+=h):z=0,m++,0==--E[w]){if(w===g)break;w=e[a+r[m]]}if(w>p&&(z&f)!==_){for(0===v&&(v=p),c+=b,k=w-v,y=1<<k;k+v<g&&(y-=E[k+v],!(y<=0));)k++,y<<=1;if(x+=1<<k,1===t&&x>852||2===t&&x>592)return 1;_=z&f,n[_]=p<<24|k<<16|c-s|0}}return 0!==z&&(n[c+z]=w-v<<24|64<<16|0),o.bits=p,0};const{Z_FINISH:se,Z_BLOCK:re,Z_TREES:oe,Z_OK:le,Z_STREAM_END:he,Z_NEED_DICT:de,Z_STREAM_ERROR:_e,Z_DATA_ERROR:fe,Z_MEM_ERROR:ce,Z_BUF_ERROR:ue,Z_DEFLATED:we}=B,me=16209,be=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function ge(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const pe=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<16180||e.mode>16211?1:0},ke=t=>{if(pe(t))return _e;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=16180,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,le},ve=t=>{if(pe(t))return _e;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,ke(t)},ye=(t,e)=>{let a;if(pe(t))return _e;const i=t.state;return e<0?(a=0,e=-e):(a=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?_e:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,ve(t))},xe=(t,e)=>{if(!t)return _e;const a=new ge;t.state=a,a.strm=t,a.window=null,a.mode=16180;const i=ye(t,e);return i!==le&&(t.state=null),i};let ze,Ae,Ee=!0;const Re=t=>{if(Ee){ze=new Int32Array(512),Ae=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(ne(1,t.lens,0,288,ze,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;ne(2,t.lens,0,32,Ae,0,t.work,{bits:5}),Ee=!1}t.lencode=ze,t.lenbits=9,t.distcode=Ae,t.distbits=5},Ze=(t,e,a,i)=>{let n;const s=t.state;return null===s.window&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new Uint8Array(s.wsize)),i>=s.wsize?(s.window.set(e.subarray(a-s.wsize,a),0),s.wnext=0,s.whave=s.wsize):(n=s.wsize-s.wnext,n>i&&(n=i),s.window.set(e.subarray(a-i,a-i+n),s.wnext),(i-=n)?(s.window.set(e.subarray(a-i,a),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=n))),0};var Ue={inflateReset:ve,inflateReset2:ye,inflateResetKeep:ke,inflateInit:t=>xe(t,15),inflateInit2:xe,inflate:(t,e)=>{let a,i,n,s,r,o,l,h,d,_,f,c,u,w,m,b,g,p,k,v,y,x,z=0;const A=new Uint8Array(4);let E,R;const Z=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(pe(t)||!t.output||!t.input&&0!==t.avail_in)return _e;a=t.state,16191===a.mode&&(a.mode=16192),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,_=o,f=l,x=le;t:for(;;)switch(a.mode){case 16180:if(0===a.wrap){a.mode=16192;break}for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(2&a.wrap&&35615===h){0===a.wbits&&(a.wbits=15),a.check=0,A[0]=255&h,A[1]=h>>>8&255,a.check=N(a.check,A,2,0),h=0,d=0,a.mode=16181;break}if(a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=me;break}if((15&h)!==we){t.msg="unknown compression method",a.mode=me;break}if(h>>>=4,d-=4,y=8+(15&h),0===a.wbits&&(a.wbits=y),y>15||y>a.wbits){t.msg="invalid window size",a.mode=me;break}a.dmax=1<<a.wbits,a.flags=0,t.adler=a.check=1,a.mode=512&h?16189:16191,h=0,d=0;break;case 16181:for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(a.flags=h,(255&a.flags)!==we){t.msg="unknown compression method",a.mode=me;break}if(57344&a.flags){t.msg="unknown header flags set",a.mode=me;break}a.head&&(a.head.text=h>>8&1),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=N(a.check,A,2,0)),h=0,d=0,a.mode=16182;case 16182:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.head&&(a.head.time=h),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,A[2]=h>>>16&255,A[3]=h>>>24&255,a.check=N(a.check,A,4,0)),h=0,d=0,a.mode=16183;case 16183:for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.head&&(a.head.xflags=255&h,a.head.os=h>>8),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=N(a.check,A,2,0)),h=0,d=0,a.mode=16184;case 16184:if(1024&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.length=h,a.head&&(a.head.extra_len=h),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=N(a.check,A,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=16185;case 16185:if(1024&a.flags&&(c=a.length,c>o&&(c=o),c&&(a.head&&(y=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(s,s+c),y)),512&a.flags&&4&a.wrap&&(a.check=N(a.check,i,c,s)),o-=c,s+=c,a.length-=c),a.length))break t;a.length=0,a.mode=16186;case 16186:if(2048&a.flags){if(0===o)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.name+=String.fromCharCode(y))}while(y&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=N(a.check,i,c,s)),o-=c,s+=c,y)break t}else a.head&&(a.head.name=null);a.length=0,a.mode=16187;case 16187:if(4096&a.flags){if(0===o)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.comment+=String.fromCharCode(y))}while(y&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=N(a.check,i,c,s)),o-=c,s+=c,y)break t}else a.head&&(a.head.comment=null);a.mode=16188;case 16188:if(512&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(4&a.wrap&&h!==(65535&a.check)){t.msg="header crc mismatch",a.mode=me;break}h=0,d=0}a.head&&(a.head.hcrc=a.flags>>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=16191;break;case 16189:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}t.adler=a.check=be(h),h=0,d=0,a.mode=16190;case 16190:if(0===a.havedict)return t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,de;t.adler=a.check=1,a.mode=16191;case 16191:if(e===re||e===oe)break t;case 16192:if(a.last){h>>>=7&d,d-=7&d,a.mode=16206;break}for(;d<3;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}switch(a.last=1&h,h>>>=1,d-=1,3&h){case 0:a.mode=16193;break;case 1:if(Re(a),a.mode=16199,e===oe){h>>>=2,d-=2;break t}break;case 2:a.mode=16196;break;case 3:t.msg="invalid block type",a.mode=me}h>>>=2,d-=2;break;case 16193:for(h>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if((65535&h)!=(h>>>16^65535)){t.msg="invalid stored block lengths",a.mode=me;break}if(a.length=65535&h,h=0,d=0,a.mode=16194,e===oe)break t;case 16194:a.mode=16195;case 16195:if(c=a.length,c){if(c>o&&(c=o),c>l&&(c=l),0===c)break t;n.set(i.subarray(s,s+c),r),o-=c,s+=c,l-=c,r+=c,a.length-=c;break}a.mode=16191;break;case 16196:for(;d<14;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(a.nlen=257+(31&h),h>>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=me;break}a.have=0,a.mode=16197;case 16197:for(;a.have<a.ncode;){for(;d<3;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.lens[Z[a.have++]]=7&h,h>>>=3,d-=3}for(;a.have<19;)a.lens[Z[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,E={bits:a.lenbits},x=ne(0,a.lens,0,19,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid code lengths set",a.mode=me;break}a.have=0,a.mode=16198;case 16198:for(;a.have<a.nlen+a.ndist;){for(;z=a.lencode[h&(1<<a.lenbits)-1],m=z>>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(g<16)h>>>=m,d-=m,a.lens[a.have++]=g;else{if(16===g){for(R=m+2;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(h>>>=m,d-=m,0===a.have){t.msg="invalid bit length repeat",a.mode=me;break}y=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===g){for(R=m+3;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=m,d-=m,y=0,c=3+(7&h),h>>>=3,d-=3}else{for(R=m+7;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=m,d-=m,y=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=me;break}for(;c--;)a.lens[a.have++]=y}}if(a.mode===me)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=me;break}if(a.lenbits=9,E={bits:a.lenbits},x=ne(1,a.lens,0,a.nlen,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid literal/lengths set",a.mode=me;break}if(a.distbits=6,a.distcode=a.distdyn,E={bits:a.distbits},x=ne(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,E),a.distbits=E.bits,x){t.msg="invalid distances set",a.mode=me;break}if(a.mode=16199,e===oe)break t;case 16199:a.mode=16200;case 16200:if(o>=6&&l>=258){t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,$t(t,f),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,16191===a.mode&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<<a.lenbits)-1],m=z>>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(b&&0==(240&b)){for(p=m,k=b,v=g;z=a.lencode[v+((h&(1<<p+k)-1)>>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=p,d-=p,a.back+=p}if(h>>>=m,d-=m,a.back+=m,a.length=g,0===b){a.mode=16205;break}if(32&b){a.back=-1,a.mode=16191;break}if(64&b){t.msg="invalid literal/length code",a.mode=me;break}a.extra=15&b,a.mode=16201;case 16201:if(a.extra){for(R=a.extra;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.length+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;z=a.distcode[h&(1<<a.distbits)-1],m=z>>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(0==(240&b)){for(p=m,k=b,v=g;z=a.distcode[v+((h&(1<<p+k)-1)>>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=p,d-=p,a.back+=p}if(h>>>=m,d-=m,a.back+=m,64&b){t.msg="invalid distance code",a.mode=me;break}a.offset=g,a.extra=15&b,a.mode=16203;case 16203:if(a.extra){for(R=a.extra;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.offset+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=me;break}a.mode=16204;case 16204:if(0===l)break t;if(c=f-l,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=me;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=n,u=r-a.offset,c=a.length;c>l&&(c=l),l-=c,a.length-=c;do{n[r++]=w[u++]}while(--c);0===a.length&&(a.mode=16200);break;case 16205:if(0===l)break t;n[r++]=a.length,l--,a.mode=16200;break;case 16206:if(a.wrap){for(;d<32;){if(0===o)break t;o--,h|=i[s++]<<d,d+=8}if(f-=l,t.total_out+=f,a.total+=f,4&a.wrap&&f&&(t.adler=a.check=a.flags?N(a.check,n,f,r-f):F(a.check,n,f,r-f)),f=l,4&a.wrap&&(a.flags?h:be(h))!==a.check){t.msg="incorrect data check",a.mode=me;break}h=0,d=0}a.mode=16207;case 16207:if(a.wrap&&a.flags){for(;d<32;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(4&a.wrap&&h!==(4294967295&a.total)){t.msg="incorrect length check",a.mode=me;break}h=0,d=0}a.mode=16208;case 16208:x=he;break t;case me:x=fe;break t;case 16210:return ce;default:return _e}return t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,(a.wsize||f!==t.avail_out&&a.mode<me&&(a.mode<16206||e!==se))&&Ze(t,t.output,t.next_out,f-t.avail_out),_-=t.avail_in,f-=t.avail_out,t.total_in+=_,t.total_out+=f,a.total+=f,4&a.wrap&&f&&(t.adler=a.check=a.flags?N(a.check,n,f,t.next_out-f):F(a.check,n,f,t.next_out-f)),t.data_type=a.bits+(a.last?64:0)+(16191===a.mode?128:0)+(16199===a.mode||16194===a.mode?256:0),(0===_&&0===f||e===se)&&x===le&&(x=ue),x},inflateEnd:t=>{if(pe(t))return _e;let e=t.state;return e.window&&(e.window=null),t.state=null,le},inflateGetHeader:(t,e)=>{if(pe(t))return _e;const a=t.state;return 0==(2&a.wrap)?_e:(a.head=e,e.done=!1,le)},inflateSetDictionary:(t,e)=>{const a=e.length;let i,n,s;return pe(t)?_e:(i=t.state,0!==i.wrap&&16190!==i.mode?_e:16190===i.mode&&(n=1,n=F(n,e,a,0),n!==i.check)?fe:(s=Ze(t,e,a,a),s?(i.mode=16210,ce):(i.havedict=1,le)))},inflateInfo:"pako inflate (from Nodeca project)"};var Se=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const De=Object.prototype.toString,{Z_NO_FLUSH:Te,Z_FINISH:Oe,Z_OK:Fe,Z_STREAM_END:Le,Z_NEED_DICT:Ne,Z_STREAM_ERROR:Ie,Z_DATA_ERROR:Be,Z_MEM_ERROR:Ce}=B;function He(t){this.options=Tt({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Ct,this.strm.avail_out=0;let a=Ue.inflateInit2(this.strm,e.windowBits);if(a!==Fe)throw new Error(I[a]);if(this.header=new Se,Ue.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Nt(e.dictionary):"[object ArrayBuffer]"===De.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=Ue.inflateSetDictionary(this.strm,e.dictionary),a!==Fe)))throw new Error(I[a])}He.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,n=this.options.dictionary;let s,r,o;if(this.ended)return!1;for(r=e===~~e?e:!0===e?Oe:Te,"[object ArrayBuffer]"===De.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),s=Ue.inflate(a,r),s===Ne&&n&&(s=Ue.inflateSetDictionary(a,n),s===Fe?s=Ue.inflate(a,r):s===Be&&(s=Ne));a.avail_in>0&&s===Le&&a.state.wrap>0&&0!==t[a.next_in];)Ue.inflateReset(a),s=Ue.inflate(a,r);switch(s){case Ie:case Be:case Ne:case Ce:return this.onEnd(s),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||s===Le))if("string"===this.options.to){let t=Bt(a.output,a.next_out),e=a.next_out-t,n=It(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(n)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(s!==Fe||0!==o){if(s===Le)return s=Ue.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},He.prototype.onData=function(t){this.chunks.push(t)},He.prototype.onEnd=function(t){t===Fe&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Ot(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const{Deflate:Me,deflate:je,deflateRaw:Ke,gzip:Pe}=Vt;var Ye=Me,Ge=je,Xe=B;const We=new class{constructor(){this._init()}clear(){this._init()}addEvent(t){if(!t)throw new Error("Adding invalid event");const e=this._hasEvents?",":"";this.deflate.push(e+t,Xe.Z_SYNC_FLUSH),this._hasEvents=!0}finish(){if(this.deflate.push("]",Xe.Z_FINISH),this.deflate.err)throw this.deflate.err;const t=this.deflate.result;return this._init(),t}_init(){this._hasEvents=!1,this.deflate=new Ye,this.deflate.push("[",Xe.Z_NO_FLUSH)}},qe={clear:()=>{We.clear()},addEvent:t=>We.addEvent(t),finish:()=>We.finish(),compress:t=>function(t){return Ge(t)}(t)};addEventListener("message",(function(t){const e=t.data.method,a=t.data.id,i=t.data.arg;if(e in qe&&"function"==typeof qe[e])try{const t=qe[e](i);postMessage({id:a,method:e,success:!0,response:t})}catch(t){postMessage({id:a,method:e,success:!1,response:t.message}),console.error(t)}})),postMessage({id:void 0,method:"init",success:!0,response:void 0});`;function dl(){const t=new Blob([ul]);return URL.createObjectURL(t)}function Rr(t){return t>9999999999?t:t*1e3}class oa{constructor(){this.events=[]}get hasEvents(){return this.events.length>0}get type(){return"sync"}destroy(){this.events=[]}async addEvent(e){this.events.push(e)}finish(){return new Promise(e=>{const n=this.events;this.events=[],e(JSON.stringify(n))})}clear(){this.events=[]}getEarliestTimestamp(){const e=this.events.map(n=>n.timestamp).sort()[0];return e?Rr(e):null}}class ll{constructor(e){this._worker=e,this._id=0}ensureReady(){return this._ensureReadyPromise?this._ensureReadyPromise:(this._ensureReadyPromise=new Promise((e,n)=>{this._worker.addEventListener("message",({data:r})=>{r.success?e():n()},{once:!0}),this._worker.addEventListener("error",r=>{n(r)},{once:!0})}),this._ensureReadyPromise)}destroy(){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Destroying compression worker"),this._worker.terminate()}postMessage(e,n){const r=this._getAndIncrementId();return new Promise((i,s)=>{const a=({data:o})=>{const c=o;if(c.method===e&&c.id===r){if(this._worker.removeEventListener("message",a),!c.success){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay]",c.response),s(new Error("Error in compression worker"));return}i(c.response)}};this._worker.addEventListener("message",a),this._worker.postMessage({id:r,method:e,arg:n})})}_getAndIncrementId(){return this._id++}}class fl{constructor(e){this._worker=new ll(e),this._earliestTimestamp=null}get hasEvents(){return!!this._earliestTimestamp}get type(){return"worker"}ensureReady(){return this._worker.ensureReady()}destroy(){this._worker.destroy()}addEvent(e){const n=Rr(e.timestamp);return(!this._earliestTimestamp||n<this._earliestTimestamp)&&(this._earliestTimestamp=n),this._sendEventToWorker(e)}finish(){return this._finishRequest()}clear(){this._earliestTimestamp=null,this._worker.postMessage("clear")}getEarliestTimestamp(){return this._earliestTimestamp}_sendEventToWorker(e){return this._worker.postMessage("addEvent",JSON.stringify(e))}async _finishRequest(){const e=await this._worker.postMessage("finish");return this._earliestTimestamp=null,e}}class _l{constructor(e){this._fallback=new oa,this._compression=new fl(e),this._used=this._fallback,this._ensureWorkerIsLoadedPromise=this._ensureWorkerIsLoaded()}get type(){return this._used.type}get hasEvents(){return this._used.hasEvents}destroy(){this._fallback.destroy(),this._compression.destroy()}clear(){return this._used.clear()}getEarliestTimestamp(){return this._used.getEarliestTimestamp()}addEvent(e){return this._used.addEvent(e)}async finish(){return await this.ensureWorkerIsLoaded(),this._used.finish()}ensureWorkerIsLoaded(){return this._ensureWorkerIsLoadedPromise}async _ensureWorkerIsLoaded(){try{await this._compression.ensureReady()}catch(e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Failed to load the compression worker, falling back to simple buffer");return}await this._switchToCompressionWorker()}async _switchToCompressionWorker(){const{events:e}=this._fallback,n=[];for(const r of e)n.push(this._compression.addEvent(r));this._used=this._compression;try{await Promise.all(n)}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("[Replay] Failed to add events when switching buffers.",r)}}}function hl({useCompression:t}){if(t&&window.Worker)try{const e=dl();(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Using compression worker");const n=new Worker(e);return new _l(n)}catch(e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Failed to create compression worker")}return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Using simple buffer"),new oa}function pl(t){ml(),t.session=void 0}function ml(){if("sessionStorage"in G)try{G.sessionStorage.removeItem(Tr)}catch(e){}}function rr(t,e,n=+new Date){return t===null||e===void 0||e<0?!0:e===0?!1:t+e<=n}function ca(t,e,n=+new Date){return rr(t.started,e.maxSessionLife,n)||rr(t.lastActivity,e.sessionIdleExpire,n)}function ua(t){return t===void 0?!1:Math.random()<t}function kr(t){if("sessionStorage"in G)try{G.sessionStorage.setItem(Tr,JSON.stringify(t))}catch(n){}}function Nr(t){const e=Date.now(),n=t.id||lt(),r=t.started||e,i=t.lastActivity||e,s=t.segmentId||0,a=t.sampled;return{id:n,started:r,lastActivity:i,segmentId:s,sampled:a,shouldRefresh:!0}}function gl(t,e){return ua(t)?"session":e?"buffer":!1}function yl({sessionSampleRate:t,allowBuffering:e,stickySession:n=!1}){const r=gl(t,e),i=Nr({sampled:r});return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Replay] Creating new session: ${i.id}`),n&&kr(i),i}function El(){if(!("sessionStorage"in G))return null;try{const e=G.sessionStorage.getItem(Tr);if(!e)return null;const n=JSON.parse(e);return Nr(n)}catch(e){return null}}function Bn({timeouts:t,currentSession:e,stickySession:n,sessionSampleRate:r,allowBuffering:i}){const s=e||n&&El();if(s)if(ca(s,t))if(s.shouldRefresh)(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Session has expired");else return{type:"new",session:Nr({sampled:!1})};else return{type:"saved",session:s};return{type:"new",session:yl({stickySession:n,sessionSampleRate:r,allowBuffering:i})}}async function Be(t,e,n){if(!t.eventBuffer||t.isPaused()||Rr(e.timestamp)+t.timeouts.sessionIdlePause<Date.now())return null;try{return n&&t.eventBuffer.clear(),await t.eventBuffer.addEvent(e)}catch(i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error(i),await t.stop("addEvent");const s=g().getClient();s&&s.recordDroppedEvent("internal_sdk_error","replay")}}function _n(t){return!t.type}function ir(t){return t.type==="transaction"}function Sl(t){return t.type==="replay_event"}function da(t){const e=bl();return(n,r)=>{if(!_n(n)&&!ir(n))return;const i=r&&r.statusCode;if(!(e&&(!i||i<200||i>=300))){if(ir(n)&&n.contexts&&n.contexts.trace&&n.contexts.trace.trace_id){t.getContext().traceIds.add(n.contexts.trace.trace_id);return}_n(n)&&(n.event_id&&t.getContext().errorIds.add(n.event_id),t.recordingMode==="buffer"&&n.tags&&n.tags.replayId&&setTimeout(()=>{t.sendBufferedReplayOrFlush()}))}}}function bl(){const t=g().getClient();if(!t)return!1;const e=t.getTransport();return e&&e.send.__sentry__baseTransport__||!1}var hn;(function(t){t[t.Document=0]="Document",t[t.DocumentType=1]="DocumentType",t[t.Element=2]="Element",t[t.Text=3]="Text",t[t.CDATA=4]="CDATA",t[t.Comment=5]="Comment"})(hn||(hn={}));function Gt(t){return{timestamp:Date.now()/1e3,type:"default",...t}}function la(t,e){e.category!=="sentry.transaction"&&(["ui.click","ui.input"].includes(e.category)?t.triggerUserActivity():t.checkAndHandleExpiredSession(),t.addUpdate(()=>(Be(t,{type:L.Custom,timestamp:(e.timestamp||0)*1e3,data:{tag:"breadcrumb",payload:pt(e,10,1e3)}}),e.category==="console")))}const wl=new Set(["id","class","aria-label","role","name","alt","title","data-test-id","data-testid"]);function Tl(t){const e={};for(const n in t)if(wl.has(n)){let r=n;(n==="data-testid"||n==="data-test-id")&&(r="testId"),e[r]=t[n]}return e}const vl=t=>e=>{if(!t.isEnabled())return;const n=Rl(e);n&&la(t,n)};function Rl(t){let e,n;const r=t.name==="click";try{n=r?Nl(t.event):fa(t.event),e=Pt(n,{maxStringLength:200})}catch(s){e="<unknown>"}const i=n&&"__sn"in n&&n.__sn.type===hn.Element?n.__sn:null;return Gt({category:`ui.${t.name}`,message:e,data:i?{nodeId:i.id,node:{id:i.id,tagName:i.tagName,textContent:n?Array.from(n.childNodes).map(s=>"__sn"in s&&s.__sn.type===hn.Text&&s.__sn.textContent).filter(Boolean).map(s=>s.trim()).join(""):"",attributes:Tl(i.attributes)}}:{}})}function fa(t){return Dl(t)?t.target:t}const kl="button,a";function Nl(t){const e=fa(t);return!e||!(e instanceof Element)?e:e.closest(kl)||e}function Dl(t){return!!t.target}function xl(t,e){return t.type||!t.exception||!t.exception.values||!t.exception.values.length?!1:e.originalException&&e.originalException.__rrweb__?!0:t.exception.values.some(n=>!n.stacktrace||!n.stacktrace.frames||!n.stacktrace.frames.length?!1:n.stacktrace.frames.some(r=>r.filename&&r.filename.includes("/rrweb/src/")))}function Il(t,e){return t.recordingMode!=="buffer"||e.message===vr||!e.exception||e.type?!1:ua(t.getOptions().errorSampleRate)}function Ol(t,e=!1){const n=e?da(t):void 0;return(r,i)=>{if(Sl(r))return delete r.breadcrumbs,r;if(!_n(r)&&!ir(r))return r;if(xl(r,i)&&!t.getOptions()._experiments.captureExceptions)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Ignoring error from rrweb internals",r),null;if((Il(t,r)||t.recordingMode==="session")&&(r.tags={...r.tags,replayId:t.getSessionId()}),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&t.getOptions()._experiments.traceInternals&&_n(r)){const o=Cl(r);Al({message:`Tagging event (${r.event_id}) - ${r.message} - ${o.type}: ${o.value}`})}return n&&n(r,{statusCode:200}),r}}function Al(t){const{category:e,level:n,message:r,...i}=t;hs({category:e||"console",level:n||"debug",message:`[debug]: ${r}`,...i})}function Cl(t){return{type:"Unknown",value:"n/a",...t.exception&&t.exception.values&&t.exception.values[0]}}function Tn(t,e){return e.map(({type:n,start:r,end:i,name:s,data:a})=>Be(t,{type:L.Custom,timestamp:r,data:{tag:"performanceSpan",payload:{op:n,description:s,startTimestamp:r,endTimestamp:i,data:a}}}))}function Ul(t){const{from:e,to:n}=t,r=Date.now()/1e3;return{type:"navigation.push",start:r,end:r,name:n,data:{previous:e}}}function Bl(t){return e=>{if(!t.isEnabled())return;const n=Ul(e);n!==null&&(t.getContext().urls.push(n.name),t.triggerUserActivity(),t.addUpdate(()=>(Tn(t,[n]),!1)))}}function Ll(t,e){return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&t.getOptions()._experiments.traceInternals?!1:Ml(e)}function Ml(t){const e=g().getClient(),n=e&&e.getDsn();return n?t.includes(n.host):!1}function vn(t,e){t.isEnabled()&&e!==null&&(Ll(t,e.name)||t.addUpdate(()=>(Tn(t,[e]),!0)))}function Gl(t){const{startTimestamp:e,endTimestamp:n,fetchData:r,response:i}=t;if(!n)return null;const{method:s,url:a}=r;return{type:"resource.fetch",start:e/1e3,end:n/1e3,name:a,data:{method:s,statusCode:i&&i.status}}}function Pl(t){return e=>{if(!t.isEnabled())return;const n=Gl(e);vn(t,n)}}function Yl(t){const{startTimestamp:e,endTimestamp:n,xhr:r}=t,i=r[Rt];if(!e||!n||!i)return null;const{method:s,url:a,status_code:o}=i;return a===void 0?null:{type:"resource.xhr",name:a,start:e/1e3,end:n/1e3,data:{method:s,statusCode:o}}}function Fl(t){return e=>{if(!t.isEnabled())return;const n=Yl(e);vn(t,n)}}const kt=10,Dr=11,sr=12,wt=13,ar=14,re=15,Et=20,st=21,or=22,ie=23,_a=["true","false","null"];function zl(t,e){if(!e.length)return t;let n=t;const r=e.length-1,i=e[r];n=$l(n,i);for(let s=r;s>=0;s--)switch(e[s]){case kt:n=`${n}}`;break;case Et:n=`${n}]`;break}return n}function $l(t,e){switch(e){case kt:return`${t}"~~":"~~"`;case Dr:return`${t}:"~~"`;case sr:return`${t}~~":"~~"`;case wt:return Wl(t);case ar:return`${t}~~"`;case re:return`${t},"~~":"~~"`;case Et:return`${t}"~~"`;case st:return Hl(t);case or:return`${t}~~"`;case ie:return`${t},"~~"`}return t}function Hl(t){const e=jl(t);if(e>-1){const n=t.slice(e+1);return _a.includes(n.trim())?`${t},"~~"`:`${t.slice(0,e+1)}"~~"`}return t}function jl(t){for(let e=t.length-1;e>=0;e--){const n=t[e];if(n===","||n==="[")return e}return-1}function Wl(t){const e=t.lastIndexOf(":"),n=t.slice(e+1);return _a.includes(n.trim())?`${t},"~~":"~~"`:`${t.slice(0,e+1)}"~~"`}function ql(t){const e=[];for(let n=0;n<t.length;n++)Zl(e,t,n);return e}function Zl(t,e,n){const r=t[t.length-1],i=e[n];if(!/\s/.test(i)){if(i==='"'&&!ha(e,n)){Vl(t,r);return}switch(i){case"{":Xl(t,r);break;case"[":Kl(t,r);break;case":":Jl(t,r);break;case",":Ql(t,r);break;case"}":tf(t,r);break;case"]":ef(t,r);break}}}function Vl(t,e){if(e===ar){t.pop(),t.push(re);return}if(e===or){t.pop(),t.push(ie);return}if(e===wt){t.push(ar);return}if(e===st){t.push(or);return}if(e===kt){t.push(sr);return}if(e===sr){t.pop(),t.push(Dr);return}}function Xl(t,e){if(!e){t.push(kt);return}if(e===wt){t.push(kt);return}if(e===st&&t.push(kt),e===Et){t.push(kt);return}}function Kl(t,e){if(!e){t.push(Et),t.push(st);return}if(e===wt){t.push(Et),t.push(st);return}if(e===st&&(t.push(Et),t.push(st)),e===Et){t.push(Et),t.push(st);return}}function Jl(t,e){e===Dr&&(t.pop(),t.push(wt))}function Ql(t,e){if(e===wt){t.pop();return}if(e===re){t.pop(),t.pop();return}if(e!==st&&e===ie){t.pop();return}}function tf(t,e){e===kt&&t.pop(),e===wt&&(t.pop(),t.pop()),e===re&&(t.pop(),t.pop(),t.pop()),t[t.length-1]===wt&&t.push(re),t[t.length-1]===st&&t.push(ie)}function ef(t,e){e===Et&&t.pop(),e===st&&(t.pop(),t.pop()),e===ie&&(t.pop(),t.pop(),t.pop()),t[t.length-1]===wt&&t.push(re),t[t.length-1]===st&&t.push(ie)}function ha(t,e){return t[e-1]==="\\"&&!ha(t,e-1)}function pa(t){const e=ql(t);return zl(t,e)}function pn(t,e){if(t)try{if(typeof t=="string")return e.encode(t).length;if(t instanceof URLSearchParams)return e.encode(t.toString()).length;if(t instanceof FormData){const n=Ea(t);return e.encode(n).length}if(t instanceof Blob)return t.size;if(t instanceof ArrayBuffer)return t.byteLength}catch(n){}}function ma(t){if(!t)return;const e=parseInt(t,10);return isNaN(e)?void 0:e}function ga(t){if(typeof t=="string")return t;if(t instanceof URLSearchParams)return t.toString();if(t instanceof FormData)return Ea(t)}function ya(t,e){if(!e)return null;const{startTimestamp:n,endTimestamp:r,url:i,method:s,statusCode:a,request:o,response:c}=e;return{type:t,start:n/1e3,end:r/1e3,name:i,data:ut({method:s,statusCode:a,request:o,response:c})}}function De(t){return{headers:{},size:t,_meta:{warnings:["URL_SKIPPED"]}}}function Nt(t,e,n){if(!e&&Object.keys(t).length===0)return;if(!e)return{headers:t};if(!n)return{headers:t,size:e};const r={headers:t,size:e},{body:i,warnings:s}=nf(n);return r.body=i,s.length>0&&(r._meta={warnings:s}),r}function cr(t,e){return Object.keys(t).reduce((n,r)=>{const i=r.toLowerCase();return e.includes(i)&&t[r]&&(n[i]=t[r]),n},{})}function Ea(t){return new URLSearchParams(t).toString()}function nf(t){if(!t||typeof t!="string")return{body:t,warnings:[]};const e=t.length>je;if(rf(t))try{const n=e?pa(t.slice(0,je)):t;return{body:JSON.parse(n),warnings:e?["JSON_TRUNCATED"]:[]}}catch(n){return{body:e?`${t.slice(0,je)}…`:t,warnings:e?["INVALID_JSON","TEXT_TRUNCATED"]:["INVALID_JSON"]}}return{body:e?`${t.slice(0,je)}…`:t,warnings:e?["TEXT_TRUNCATED"]:[]}}function rf(t){const e=t[0],n=t[t.length-1];return e==="["&&n==="]"||e==="{"&&n==="}"}function Sa(t,e){return ue(t,e)}async function sf(t,e,n){try{const r=await of(t,e,n),i=ya("resource.fetch",r);vn(n.replay,i)}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay] Failed to capture fetch breadcrumb",r)}}function af(t,e,n){const{input:r,response:i}=e,s=ba(r),a=pn(s,n.textEncoder),o=i?ma(i.headers.get("content-length")):void 0;a!==void 0&&(t.data.request_body_size=a),o!==void 0&&(t.data.response_body_size=o)}async function of(t,e,n){const{startTimestamp:r,endTimestamp:i}=e,{url:s,method:a,status_code:o=0,request_body_size:c,response_body_size:u}=t.data,d=Sa(s,n.networkDetailAllowUrls),l=d?cf(n,e.input,c):De(c),h=await uf(d,n,e.response,u);return{startTimestamp:r,endTimestamp:i,url:s,method:a,statusCode:o,request:l,response:h}}function cf({networkCaptureBodies:t,networkRequestHeaders:e},n,r){const i=lf(n,e);if(!t)return Nt(i,r,void 0);const s=ba(n),a=ga(s);return Nt(i,r,a)}async function uf(t,{networkCaptureBodies:e,textEncoder:n,networkResponseHeaders:r},i,s){if(!t&&s!==void 0)return De(s);const a=wa(i.headers,r);if(!e&&s!==void 0)return Nt(a,s,void 0);try{const o=i.clone(),c=await df(o),u=c&&c.length&&s===void 0?pn(c,n):s;return t?e?Nt(a,u,c):Nt(a,u,void 0):De(u)}catch(o){return Nt(a,s,void 0)}}async function df(t){try{return await t.text()}catch(e){return}}function ba(t=[]){if(!(t.length!==2||typeof t[1]!="object"))return t[1].body}function wa(t,e){const n={};return e.forEach(r=>{t.get(r)&&(n[r]=t.get(r))}),n}function lf(t,e){return t.length===1&&typeof t[0]!="string"?wi(t[0],e):t.length===2?wi(t[1],e):{}}function wi(t,e){if(!t)return{};const n=t.headers;return n?n instanceof Headers?wa(n,e):Array.isArray(n)?{}:cr(n,e):{}}async function ff(t,e,n){try{const r=hf(t,e,n),i=ya("resource.xhr",r);vn(n.replay,i)}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay] Failed to capture fetch breadcrumb",r)}}function _f(t,e,n){const{xhr:r,input:i}=e,s=pn(i,n.textEncoder),a=r.getResponseHeader("content-length")?ma(r.getResponseHeader("content-length")):pn(r.response,n.textEncoder);s!==void 0&&(t.data.request_body_size=s),a!==void 0&&(t.data.response_body_size=a)}function hf(t,e,n){const{startTimestamp:r,endTimestamp:i,input:s,xhr:a}=e,{url:o,method:c,status_code:u=0,request_body_size:d,response_body_size:l}=t.data;if(!o)return null;if(!Sa(o,n.networkDetailAllowUrls)){const S=De(d),O=De(l);return{startTimestamp:r,endTimestamp:i,url:o,method:c,statusCode:u,request:S,response:O}}const h=a[Rt],_=h?cr(h.request_headers,n.networkRequestHeaders):{},p=cr(pf(a),n.networkResponseHeaders),w=Nt(_,d,n.networkCaptureBodies?ga(s):void 0),D=Nt(p,l,n.networkCaptureBodies?e.xhr.responseText:void 0);return{startTimestamp:r,endTimestamp:i,url:o,method:c,statusCode:u,request:w,response:D}}function pf(t){const e=t.getAllResponseHeaders();return e?e.split(`\r `).reduce((n,r)=>{const[i,s]=r.split(": ");return n[i.toLowerCase()]=s,n},{}):{}}function mf(t){const e=g().getClient();try{const n=new TextEncoder,{networkDetailAllowUrls:r,networkCaptureBodies:i,networkRequestHeaders:s,networkResponseHeaders:a}=t.getOptions(),o={replay:t,textEncoder:n,networkDetailAllowUrls:r,networkCaptureBodies:i,networkRequestHeaders:s,networkResponseHeaders:a};e&&e.on?e.on("beforeAddBreadcrumb",(c,u)=>gf(o,c,u)):(V("fetch",Pl(t)),V("xhr",Fl(t)))}catch(n){}}function gf(t,e,n){if(e.data)try{yf(e)&&Sf(n)&&(_f(e,n,t),ff(e,n,t)),Ef(e)&&bf(n)&&(af(e,n,t),sf(e,n,t))}catch(r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Error when enriching network breadcrumb")}}function yf(t){return t.category==="xhr"}function Ef(t){return t.category==="fetch"}function Sf(t){return t&&t.xhr}function bf(t){return t&&t.response}let Ti=null;const wf=t=>e=>{if(!t.isEnabled())return;const n=Tf(e);n&&la(t,n)};function Tf(t){const e=t.getLastBreadcrumb&&t.getLastBreadcrumb();return Ti===e||!e||(Ti=e,e.category&&(["fetch","xhr","sentry.event","sentry.transaction"].includes(e.category)||e.category.startsWith("ui.")))?null:e.category==="console"?vf(e):Gt(e)}function vf(t){const e=t.data&&t.data.arguments;if(!Array.isArray(e)||e.length===0)return Gt(t);let n=!1;const r=e.map(i=>{if(!i)return i;if(typeof i=="string")return i.length>We?(n=!0,`${i.slice(0,We)}…`):i;if(typeof i=="object")try{const s=pt(i,7),a=JSON.stringify(s);if(a.length>We){const o=pa(a.slice(0,We)),c=JSON.parse(o);return n=!0,c}return s}catch(s){}return i});return Gt({...t,data:{...t.data,arguments:r,...n?{_meta:{warnings:["CONSOLE_ARG_TRUNCATED"]}}:{}}})}function Rf(t){const e=g().getScope(),n=g().getClient();e&&e.addScopeListener(wf(t)),V("dom",vl(t)),V("history",Bl(t)),mf(t),Ae(Ol(t,!vi(n))),vi(n)&&(n.on("afterSendEvent",da(t)),n.on("createDsc",r=>{const i=t.getSessionId();i&&t.isEnabled()&&t.recordingMode==="session"&&(r.replay_id=i)}))}function vi(t){return!!(t&&t.on)}async function kf(t){try{return Promise.all(Tn(t,[Nf(G.performance.memory)]))}catch(e){return[]}}function Nf(t){const{jsHeapSizeLimit:e,totalJSHeapSize:n,usedJSHeapSize:r}=t,i=Date.now()/1e3;return{type:"memory",name:"memory",start:i,end:i,data:{memory:{jsHeapSizeLimit:e,totalJSHeapSize:n,usedJSHeapSize:r}}}}const Ri={resource:Af,paint:If,navigation:Of,["largest-contentful-paint"]:Cf};function Df(t){return t.map(xf).filter(Boolean)}function xf(t){return Ri[t.entryType]===void 0?null:Ri[t.entryType](t)}function se(t){return((bt||G.performance.timeOrigin)+t)/1e3}function If(t){const{duration:e,entryType:n,name:r,startTime:i}=t,s=se(i);return{type:n,name:r,start:s,end:s+e,data:void 0}}function Of(t){const{entryType:e,name:n,decodedBodySize:r,duration:i,domComplete:s,encodedBodySize:a,domContentLoadedEventStart:o,domContentLoadedEventEnd:c,domInteractive:u,loadEventStart:d,loadEventEnd:l,redirectCount:h,startTime:_,transferSize:p,type:w}=t;return i===0?null:{type:`${e}.${w}`,start:se(_),end:se(s),name:n,data:{size:p,decodedBodySize:r,encodedBodySize:a,duration:i,domInteractive:u,domContentLoadedEventStart:o,domContentLoadedEventEnd:c,loadEventStart:d,loadEventEnd:l,domComplete:s,redirectCount:h}}}function Af(t){const{entryType:e,initiatorType:n,name:r,responseEnd:i,startTime:s,decodedBodySize:a,encodedBodySize:o,responseStatus:c,transferSize:u}=t;return["fetch","xmlhttprequest"].includes(n)?null:{type:`${e}.${n}`,start:se(s),end:se(i),name:r,data:{size:u,statusCode:c,decodedBodySize:a,encodedBodySize:o}}}function Cf(t){const{entryType:e,startTime:n,size:r}=t;let i=0;if(G.performance){const o=G.performance.getEntriesByType("navigation")[0];i=o&&o.activationStart||0}const s=Math.max(n-i,0),a=se(i)+s/1e3;return{type:e,name:e,start:a,end:a,data:{value:s,size:r,nodeId:jt.mirror.getId(t.element)}}}function Uf(t,e,n){let r,i,s;const a=n&&n.maxWait?Math.max(n.maxWait,e):0;function o(){return c(),r=t(),r}function c(){i!==void 0&&clearTimeout(i),s!==void 0&&clearTimeout(s),i=s=void 0}function u(){return i!==void 0||s!==void 0?o():r}function d(){return i&&clearTimeout(i),i=setTimeout(o,e),a&&s===void 0&&(s=setTimeout(o,a)),r}return d.cancel=c,d.flush=u,d}var ur;(function(t){t[t.DomContentLoaded=0]="DomContentLoaded";const n=1;t[t.Load=n]="Load";const r=2;t[t.FullSnapshot=r]="FullSnapshot";const i=3;t[t.IncrementalSnapshot=i]="IncrementalSnapshot";const s=4;t[t.Meta=s]="Meta";const a=5;t[t.Custom=a]="Custom";const o=6;t[t.Plugin=o]="Plugin"})(ur||(ur={}));function Bf(t){let e=!1;return(n,r)=>{if(!t.checkAndHandleExpiredSession()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("[Replay] Received replay event after session expired.");return}const i=r||!e;e=!0,t.addUpdate(()=>{if(t.recordingMode==="buffer"&&i&&t.setInitialState(),Be(t,n,i),!i)return!1;if(Mf(t,i),t.session&&t.session.previousSessionId)return!0;if(t.recordingMode==="buffer"&&t.session&&t.eventBuffer){const s=t.eventBuffer.getEarliestTimestamp();s&&(t.session.started=s,t.getOptions().stickySession&&kr(t.session))}return t.recordingMode==="session"&&t.flushImmediate(),!0})}}function Lf(t){const e=t.getOptions();return{type:ur.Custom,timestamp:Date.now(),data:{tag:"options",payload:{sessionSampleRate:e.sessionSampleRate,errorSampleRate:e.errorSampleRate,useCompressionOption:e.useCompression,blockAllMedia:e.blockAllMedia,maskAllText:e.maskAllText,maskAllInputs:e.maskAllInputs,useCompression:t.eventBuffer?t.eventBuffer.type==="worker":!1,networkDetailHasUrls:e.networkDetailAllowUrls.length>0,networkCaptureBodies:e.networkCaptureBodies,networkRequestHasHeaders:e.networkRequestHeaders.length>0,networkResponseHasHeaders:e.networkResponseHeaders.length>0}}}}function Mf(t,e){return!e||!t.session||t.session.segmentId!==0?Promise.resolve(null):Be(t,Lf(t),!1)}function Gf(t,e,n,r){return Wt(is(t,gr(t),r,n),[[{type:"replay_event"},t],[{type:"replay_recording",length:typeof e=="string"?new TextEncoder().encode(e).length:e.length},e]])}function Pf({recordingData:t,headers:e}){let n;const r=`${JSON.stringify(e)} `;if(typeof t=="string")n=`${r}${t}`;else{const s=new TextEncoder().encode(r);n=new Uint8Array(s.length+t.length),n.set(s),n.set(t,s.length)}return n}async function Yf({client:t,scope:e,replayId:n,event:r}){const i=typeof t._integrations=="object"&&t._integrations!==null&&!Array.isArray(t._integrations)?Object.keys(t._integrations):void 0,s=await Ss(t.getOptions(),r,{event_id:n,integrations:i},e);if(!s)return null;s.platform=s.platform||"javascript";const a=t.getSdkMetadata&&t.getSdkMetadata(),{name:o,version:c}=a&&a.sdk||{};return s.sdk={...s.sdk,name:o||"sentry.javascript.unknown",version:c||"0.0.0"},s}async function Ff({recordingData:t,replayId:e,segmentId:n,eventContext:r,timestamp:i,session:s}){const a=Pf({recordingData:t,headers:{segment_id:n}}),{urls:o,errorIds:c,traceIds:u,initialTimestamp:d}=r,l=g(),h=l.getClient(),_=l.getScope(),p=h&&h.getTransport(),w=h&&h.getDsn();if(!h||!_||!p||!w||!s.sampled)return;const D={type:td,replay_start_timestamp:d/1e3,timestamp:i/1e3,error_ids:c,trace_ids:u,urls:o,replay_id:e,segment_id:n,replay_type:s.sampled},S=await Yf({scope:_,client:h,replayId:e,event:D});if(!S){h.recordDroppedEvent("event_processor","replay",D),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("An event processor returned `null`, will not send event.");return}const O=Gf(S,a,w,h.getOptions().tunnel);let x;try{x=await p.send(O)}catch(v){const b=new Error(vr);try{b.cause=v}catch(N){}throw b}if(!x)return x;if(typeof x.statusCode=="number"&&(x.statusCode<200||x.statusCode>=300))throw new Ta(x.statusCode);return x}class Ta extends Error{constructor(e){super(`Transport returned status code ${e}`)}}async function va(t,e={count:0,interval:od}){const{recordingData:n,options:r}=t;if(n.length)try{return await Ff(t),!0}catch(i){if(i instanceof Ta)throw i;if(ps("Replays",{_retryCount:e.count}),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&r._experiments&&r._experiments.captureExceptions&&bn(i),e.count>=cd){const s=new Error(`${vr} - max retries exceeded`);try{s.cause=i}catch(a){}throw s}return e.interval*=++e.count,await new Promise((s,a)=>{setTimeout(async()=>{try{await va(t,e),s(!0)}catch(o){a(o)}},e.interval)})}}class F{__init(){this.eventBuffer=null}__init2(){this.performanceEvents=[]}__init3(){this.recordingMode="session"}__init4(){this.timeouts={sessionIdlePause:ed,sessionIdleExpire:nd,maxSessionLife:rd}}__init5(){this._performanceObserver=null}__init6(){this._flushLock=null}__init7(){this._lastActivity=Date.now()}__init8(){this._isEnabled=!1}__init9(){this._isPaused=!1}__init10(){this._hasInitializedCoreListeners=!1}__init11(){this._stopRecording=null}__init12(){this._context={errorIds:new Set,traceIds:new Set,urls:[],initialTimestamp:Date.now(),initialUrl:""}}constructor({options:e,recordingOptions:n}){F.prototype.__init.call(this),F.prototype.__init2.call(this),F.prototype.__init3.call(this),F.prototype.__init4.call(this),F.prototype.__init5.call(this),F.prototype.__init6.call(this),F.prototype.__init7.call(this),F.prototype.__init8.call(this),F.prototype.__init9.call(this),F.prototype.__init10.call(this),F.prototype.__init11.call(this),F.prototype.__init12.call(this),F.prototype.__init13.call(this),F.prototype.__init14.call(this),F.prototype.__init15.call(this),F.prototype.__init16.call(this),F.prototype.__init17.call(this),F.prototype.__init18.call(this),this._recordingOptions=n,this._options=e,this._debouncedFlush=Uf(()=>this._flush(),this._options.flushMinDelay,{maxWait:this._options.flushMaxDelay})}getContext(){return this._context}isEnabled(){return this._isEnabled}isPaused(){return this._isPaused}getOptions(){return this._options}initializeSampling(){const{errorSampleRate:e,sessionSampleRate:n}=this._options;if(!(e<=0&&n<=0||!this._loadAndCheckSession())){if(!this.session){this._handleException(new Error("Unable to initialize and create session"));return}this.session.sampled&&this.session.sampled!=="session"&&(this.recordingMode="buffer"),this._initializeRecording()}}start(){if(this._isEnabled&&this.recordingMode==="session")throw new Error("Replay recording is already in progress");if(this._isEnabled&&this.recordingMode==="buffer")throw new Error("Replay buffering is in progress, call `flush()` to save the replay");const e=this.session&&this.session.id,{session:n}=Bn({timeouts:this.timeouts,stickySession:!!this._options.stickySession,currentSession:this.session,sessionSampleRate:1,allowBuffering:!1});n.previousSessionId=e,this.session=n,this._initializeRecording()}startBuffering(){if(this._isEnabled)throw new Error("Replay recording is already in progress");const e=this.session&&this.session.id,{session:n}=Bn({timeouts:this.timeouts,stickySession:!!this._options.stickySession,currentSession:this.session,sessionSampleRate:0,allowBuffering:!0});n.previousSessionId=e,this.session=n,this.recordingMode="buffer",this._initializeRecording()}startRecording(){try{this._stopRecording=jt({...this._recordingOptions,...this.recordingMode==="buffer"&&{checkoutEveryNms:ad},emit:Bf(this),onMutation:this._onMutationHandler})}catch(e){this._handleException(e)}}stopRecording(){try{return this._stopRecording&&(this._stopRecording(),this._stopRecording=void 0),!0}catch(e){return this._handleException(e),!1}}async stop(e){if(this._isEnabled)try{if(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__){const n=`[Replay] Stopping Replay${e?` triggered by ${e}`:""}`;(this.getOptions()._experiments.traceInternals?console.warn:f.log)(n)}this._isEnabled=!1,this._removeListeners(),this.stopRecording(),this._debouncedFlush.cancel(),await this._flush({force:!0}),this.eventBuffer&&this.eventBuffer.destroy(),this.eventBuffer=null,pl(this)}catch(n){this._handleException(n)}}pause(){this._isPaused=!0,this.stopRecording()}resume(){this._loadAndCheckSession()&&(this._isPaused=!1,this.startRecording())}async sendBufferedReplayOrFlush({continueRecording:e=!0}={}){if(this.recordingMode==="session")return this.flushImmediate();await this.flushImmediate();const n=this.stopRecording();!e||!n||(this.recordingMode="session",this.session&&(this.session.shouldRefresh=!1,this._maybeSaveSession()),this.startRecording())}addUpdate(e){const n=e();this.recordingMode!=="buffer"&&n!==!0&&this._debouncedFlush()}triggerUserActivity(){if(this._updateUserActivity(),!this._stopRecording){if(!this._loadAndCheckSession())return;this.resume();return}this.checkAndHandleExpiredSession(),this._updateSessionActivity()}flushImmediate(){return this._debouncedFlush(),this._debouncedFlush.flush()}getSessionId(){return this.session&&this.session.id}checkAndHandleExpiredSession(){const e=this.getSessionId();if(this._lastActivity&&rr(this._lastActivity,this.timeouts.sessionIdlePause)&&this.session&&this.session.sampled==="session"){this.pause();return}return this._loadAndCheckSession()?e!==this.getSessionId()?(this._triggerFullSnapshot(),!1):!0:void 0}setInitialState(){const e=`${G.location.pathname}${G.location.hash}${G.location.search}`,n=`${G.location.origin}${e}`;this.performanceEvents=[],this._clearContext(),this._context.initialUrl=n,this._context.initialTimestamp=Date.now(),this._context.urls.push(n)}_initializeRecording(){this.setInitialState(),this._updateSessionActivity(),this.eventBuffer=hl({useCompression:this._options.useCompression}),this._removeListeners(),this._addListeners(),this._isEnabled=!0,this.startRecording()}_handleException(e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay]",e),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&this._options._experiments&&this._options._experiments.captureExceptions&&bn(e)}_loadAndCheckSession(){const{type:e,session:n}=Bn({timeouts:this.timeouts,stickySession:!!this._options.stickySession,currentSession:this.session,sessionSampleRate:this._options.sessionSampleRate,allowBuffering:this._options.errorSampleRate>0});e==="new"&&this.setInitialState();const r=this.getSessionId();return n.id!==r&&(n.previousSessionId=r),this.session=n,this.session.sampled?!0:(this.stop("session unsampled"),!1)}_addListeners(){try{G.document.addEventListener("visibilitychange",this._handleVisibilityChange),G.addEventListener("blur",this._handleWindowBlur),G.addEventListener("focus",this._handleWindowFocus),G.addEventListener("keydown",this._handleKeyboardEvent),this._hasInitializedCoreListeners||(Rf(this),this._hasInitializedCoreListeners=!0)}catch(e){this._handleException(e)}"PerformanceObserver"in G&&(this._performanceObserver=cl(this))}_removeListeners(){try{G.document.removeEventListener("visibilitychange",this._handleVisibilityChange),G.removeEventListener("blur",this._handleWindowBlur),G.removeEventListener("focus",this._handleWindowFocus),G.removeEventListener("keydown",this._handleKeyboardEvent),this._performanceObserver&&(this._performanceObserver.disconnect(),this._performanceObserver=null)}catch(e){this._handleException(e)}}__init13(){this._handleVisibilityChange=()=>{G.document.visibilityState==="visible"?this._doChangeToForegroundTasks():this._doChangeToBackgroundTasks()}}__init14(){this._handleWindowBlur=()=>{const e=Gt({category:"ui.blur"});this._doChangeToBackgroundTasks(e)}}__init15(){this._handleWindowFocus=()=>{const e=Gt({category:"ui.focus"});this._doChangeToForegroundTasks(e)}}__init16(){this._handleKeyboardEvent=()=>{this.triggerUserActivity()}}_doChangeToBackgroundTasks(e){if(!this.session)return;const n=ca(this.session,this.timeouts);e&&!n&&this._createCustomBreadcrumb(e),this._conditionalFlush()}_doChangeToForegroundTasks(e){if(!this.session)return;if(!this.checkAndHandleExpiredSession()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Document has become active, but session has expired");return}e&&this._createCustomBreadcrumb(e)}_triggerFullSnapshot(e=!0){try{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Replay] Taking full rrweb snapshot"),jt.takeFullSnapshot(e)}catch(n){this._handleException(n)}}_updateUserActivity(e=Date.now()){this._lastActivity=e}_updateSessionActivity(e=Date.now()){this.session&&(this.session.lastActivity=e,this._maybeSaveSession())}_createCustomBreadcrumb(e){this.addUpdate(()=>{Be(this,{type:L.Custom,timestamp:e.timestamp||0,data:{tag:"breadcrumb",payload:e}})})}_addPerformanceEntries(){const e=[...this.performanceEvents];return this.performanceEvents=[],Promise.all(Tn(this,Df(e)))}_conditionalFlush(){this.recordingMode!=="buffer"&&this.flushImmediate()}_clearContext(){this._context.errorIds.clear(),this._context.traceIds.clear(),this._context.urls=[]}_updateInitialTimestampFromEventBuffer(){const{session:e,eventBuffer:n}=this;if(!e||!n||e.segmentId)return;const r=n.getEarliestTimestamp();r&&r<this._context.initialTimestamp&&(this._context.initialTimestamp=r)}_popEventContext(){const e={initialTimestamp:this._context.initialTimestamp,initialUrl:this._context.initialUrl,errorIds:Array.from(this._context.errorIds),traceIds:Array.from(this._context.traceIds),urls:this._context.urls};return this._clearContext(),e}async _runFlush(){if(!this.session||!this.eventBuffer){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay] No session or eventBuffer found to flush.");return}if(await this._addPerformanceEntries(),!(!this.eventBuffer||!this.eventBuffer.hasEvents)&&(await kf(this),!!this.eventBuffer))try{this._updateInitialTimestampFromEventBuffer();const e=await this.eventBuffer.finish(),n=this.session.id,r=this._popEventContext(),i=this.session.segmentId++;this._maybeSaveSession(),await va({replayId:n,recordingData:e,segmentId:i,eventContext:r,session:this.session,options:this.getOptions(),timestamp:Date.now()})}catch(e){this._handleException(e),this.stop("sendReplay");const n=g().getClient();n&&n.recordDroppedEvent("send_error","replay")}}__init17(){this._flush=async({force:e=!1}={})=>{if(!(!this._isEnabled&&!e)){if(!this.checkAndHandleExpiredSession()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay] Attempting to finish replay event after session expired.");return}if(!this.session){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error("[Replay] No session found to flush.");return}if(this._debouncedFlush.cancel(),!this._flushLock){this._flushLock=this._runFlush(),await this._flushLock,this._flushLock=null;return}try{await this._flushLock}catch(n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.error(n)}finally{this._debouncedFlush()}}}}_maybeSaveSession(){this.session&&this._options.stickySession&&kr(this.session)}__init18(){this._onMutationHandler=e=>{const n=e.length,r=this._options._experiments.mutationLimit||0,i=this._options._experiments.mutationBreadcrumbLimit||1e3,s=r&&n>r;if(n>i||s){const a=Gt({category:"replay.mutations",data:{count:n}});this._createCustomBreadcrumb(a)}return s?(this._triggerFullSnapshot(!1),!1):!0}}}function pe(t,e,n,r){const i=typeof r=="string"?r.split(","):[],s=[...t,...i,...e];return typeof n<"u"&&(typeof n=="string"&&s.push(`.${n}`),console.warn("[Replay] You are using a deprecated configuration item for privacy. Read the documentation on how to use the new privacy configuration.")),s.join(",")}function zf({mask:t,unmask:e,block:n,unblock:r,ignore:i,blockClass:s,blockSelector:a,maskTextClass:o,maskTextSelector:c,ignoreClass:u}){const d=['base[href="/"]'],l=pe(t,[".sentry-mask","[data-sentry-mask]"],o,c),h=pe(e,[".sentry-unmask","[data-sentry-unmask]"]),_={maskTextSelector:l,unmaskTextSelector:h,maskInputSelector:l,unmaskInputSelector:h,blockSelector:pe(n,[".sentry-block","[data-sentry-block]",...d],s,a),unblockSelector:pe(r,[".sentry-unblock","[data-sentry-unblock]"]),ignoreSelector:pe(i,[".sentry-ignore","[data-sentry-ignore]",'input[type="file"]'],u)};return s instanceof RegExp&&(_.blockClass=s),o instanceof RegExp&&(_.maskTextClass=o),_}function ki(){return typeof window<"u"&&(!Qi()||$f())}function $f(){return typeof process<"u"&&process.type==="renderer"}const Ni='img,image,svg,video,object,picture,embed,map,audio,link[rel="icon"],link[rel="apple-touch-icon"]',Hf=["content-length","content-type","accept"];let Di=!1;class xe{static __initStatic(){this.id="Replay"}__init(){this.name=xe.id}constructor({flushMinDelay:e=id,flushMaxDelay:n=sd,stickySession:r=!0,useCompression:i=!0,_experiments:s={},sessionSampleRate:a,errorSampleRate:o,maskAllText:c=!0,maskAllInputs:u=!0,blockAllMedia:d=!0,networkDetailAllowUrls:l=[],networkCaptureBodies:h=!0,networkRequestHeaders:_=[],networkResponseHeaders:p=[],mask:w=[],unmask:D=[],block:S=[],unblock:O=[],ignore:x=[],maskFn:v,blockClass:b,blockSelector:N,maskInputOptions:T,maskTextClass:E,maskTextSelector:U,ignoreClass:I}={}){if(xe.prototype.__init.call(this),this._recordingOptions={maskAllInputs:u,maskAllText:c,maskInputOptions:{...T||{},password:!0},maskTextFn:v,maskInputFn:v,...zf({mask:w,unmask:D,block:S,unblock:O,ignore:x,blockClass:b,blockSelector:N,maskTextClass:E,maskTextSelector:U,ignoreClass:I}),slimDOMOptions:"all",inlineStylesheet:!0,inlineImages:!1,collectFonts:!0},this._initialOptions={flushMinDelay:e,flushMaxDelay:n,stickySession:r,sessionSampleRate:a,errorSampleRate:o,useCompression:i,blockAllMedia:d,maskAllInputs:u,maskAllText:c,networkDetailAllowUrls:l,networkCaptureBodies:h,networkRequestHeaders:xi(_),networkResponseHeaders:xi(p),_experiments:s},typeof a=="number"&&(console.warn(`[Replay] You are passing \`sessionSampleRate\` to the Replay integration. This option is deprecated and will be removed soon. Instead, configure \`replaysSessionSampleRate\` directly in the SDK init options, e.g.: Sentry.init({ replaysSessionSampleRate: ${a} })`),this._initialOptions.sessionSampleRate=a),typeof o=="number"&&(console.warn(`[Replay] You are passing \`errorSampleRate\` to the Replay integration. This option is deprecated and will be removed soon. Instead, configure \`replaysOnErrorSampleRate\` directly in the SDK init options, e.g.: Sentry.init({ replaysOnErrorSampleRate: ${o} })`),this._initialOptions.errorSampleRate=o),this._initialOptions.blockAllMedia&&(this._recordingOptions.blockSelector=this._recordingOptions.blockSelector?`${this._recordingOptions.blockSelector},${Ni}`:Ni),this._isInitialized&&ki())throw new Error("Multiple Sentry Session Replay instances are not supported");this._isInitialized=!0}get _isInitialized(){return Di}set _isInitialized(e){Di=e}setupOnce(){ki()&&(this._setup(),setTimeout(()=>this._initialize()))}start(){this._replay&&this._replay.start()}startBuffering(){this._replay&&this._replay.startBuffering()}stop(){return this._replay?this._replay.stop():Promise.resolve()}flush(e){return!this._replay||!this._replay.isEnabled()?Promise.resolve():this._replay.sendBufferedReplayOrFlush(e)}getReplayId(){if(!(!this._replay||!this._replay.isEnabled()))return this._replay.getSessionId()}_initialize(){this._replay&&this._replay.initializeSampling()}_setup(){const e=jf(this._initialOptions);this._replay=new F({options:e,recordingOptions:this._recordingOptions})}}xe.__initStatic();function jf(t){const e=g().getClient(),n=e&&e.getOptions(),r={sessionSampleRate:0,errorSampleRate:0,...ut(t)};return n?(t.sessionSampleRate==null&&t.errorSampleRate==null&&n.replaysSessionSampleRate==null&&n.replaysOnErrorSampleRate==null&&console.warn("Replay is disabled because neither `replaysSessionSampleRate` nor `replaysOnErrorSampleRate` are set."),typeof n.replaysSessionSampleRate=="number"&&(r.sessionSampleRate=n.replaysSessionSampleRate),typeof n.replaysOnErrorSampleRate=="number"&&(r.errorSampleRate=n.replaysOnErrorSampleRate),r):(console.warn("SDK client is not available."),r)}function xi(t){return[...Hf,...t.map(e=>e.toLowerCase())]}const C=nt;function Wf(){C&&C.document?C.document.addEventListener("visibilitychange",()=>{const t=le();if(C.document.hidden&&t){const e="cancelled";(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Transaction: ${e} -> since tab moved to the background, op: ${t.op}`),t.status||t.setStatus(e),t.setTag("visibilitychange","document.hidden"),t.finish()}}):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("[Tracing] Could not set up background tab detection due to lack of global document")}const xr=(t,e,n)=>{let r,i;return s=>{e.value>=0&&(s||n)&&(i=e.value-(r||0),(i||r===void 0)&&(r=e.value,e.delta=i,t(e)))}},qf=()=>`v3-${Date.now()}-${Math.floor(Math.random()*(9e12-1))+1e12}`,Zf=()=>{const t=C.performance.timing,e=C.performance.navigation.type,n={entryType:"navigation",startTime:0,type:e==2?"back_forward":e===1?"reload":"navigate"};for(const r in t)r!=="navigationStart"&&r!=="toJSON"&&(n[r]=Math.max(t[r]-t.navigationStart,0));return n},Ra=()=>C.__WEB_VITALS_POLYFILL__?C.performance&&(performance.getEntriesByType&&performance.getEntriesByType("navigation")[0]||Zf()):C.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0],ka=()=>{const t=Ra();return t&&t.activationStart||0},Ir=(t,e)=>{const n=Ra();let r="navigate";return n&&(C.document.prerendering||ka()>0?r="prerender":r=n.type.replace(/_/g,"-")),{name:t,value:typeof e>"u"?-1:e,rating:"good",delta:0,entries:[],id:qf(),navigationType:r}},Le=(t,e,n)=>{try{if(PerformanceObserver.supportedEntryTypes.includes(t)){const r=new PerformanceObserver(i=>{e(i.getEntries())});return r.observe(Object.assign({type:t,buffered:!0},n||{})),r}}catch(r){}},Rn=(t,e)=>{const n=r=>{(r.type==="pagehide"||C.document.visibilityState==="hidden")&&(t(r),e&&(removeEventListener("visibilitychange",n,!0),removeEventListener("pagehide",n,!0)))};addEventListener("visibilitychange",n,!0),addEventListener("pagehide",n,!0)},Vf=t=>{const e=Ir("CLS",0);let n,r=0,i=[];const s=o=>{o.forEach(c=>{if(!c.hadRecentInput){const u=i[0],d=i[i.length-1];r&&i.length!==0&&c.startTime-d.startTime<1e3&&c.startTime-u.startTime<5e3?(r+=c.value,i.push(c)):(r=c.value,i=[c]),r>e.value&&(e.value=r,e.entries=i,n&&n())}})},a=Le("layout-shift",s);if(a){n=xr(t,e);const o=()=>{s(a.takeRecords()),n(!0)};return Rn(o),o}};let nn=-1;const Xf=()=>C.document.visibilityState==="hidden"&&!C.document.prerendering?0:1/0,Kf=()=>{Rn(({timeStamp:t})=>{nn=t},!0)},Or=()=>(nn<0&&(nn=Xf(),Kf()),{get firstHiddenTime(){return nn}}),Jf=t=>{const e=Or(),n=Ir("FID");let r;const i=o=>{o.startTime<e.firstHiddenTime&&(n.value=o.processingStart-o.startTime,n.entries.push(o),r(!0))},s=o=>{o.forEach(i)},a=Le("first-input",s);r=xr(t,n),a&&Rn(()=>{s(a.takeRecords()),a.disconnect()},!0)},Ii={},Qf=t=>{const e=Or(),n=Ir("LCP");let r;const i=a=>{const o=a[a.length-1];if(o){const c=Math.max(o.startTime-ka(),0);c<e.firstHiddenTime&&(n.value=c,n.entries=[o],r())}},s=Le("largest-contentful-paint",i);if(s){r=xr(t,n);const a=()=>{Ii[n.id]||(i(s.takeRecords()),s.disconnect(),Ii[n.id]=!0,r(!0))};return["keydown","click"].forEach(o=>{addEventListener(o,a,{once:!0,capture:!0})}),Rn(a,!0),a}};function Ln(t){return typeof t=="number"&&isFinite(t)}function ae(t,{startTimestamp:e,...n}){return e&&t.startTimestamp>e&&(t.startTimestamp=e),t.startChild({startTimestamp:e,...n})}function j(t){return t/1e3}function Na(){return C&&C.addEventListener&&C.performance}let Oi=0,Y={},ht,Te;function t_(){const t=Na();if(t&&bt){t.mark&&C.performance.mark("sentry-tracing-init"),s_();const e=r_(),n=i_();return()=>{e&&e(),n&&n()}}return()=>{}}function e_(){Le("longtask",e=>{for(const n of e){const r=le();if(!r)return;const i=j(bt+n.startTime),s=j(n.duration);r.startChild({description:"Main UI thread blocked",op:"ui.long-task",startTimestamp:i,endTimestamp:i+s})}})}function n_(){Le("event",e=>{for(const n of e){const r=le();if(!r)return;if(n.name==="click"){const i=j(bt+n.startTime),s=j(n.duration);r.startChild({description:Pt(n.target),op:`ui.interaction.${n.name}`,startTimestamp:i,endTimestamp:i+s})}}},{durationThreshold:0})}function r_(){return Vf(t=>{const e=t.entries.pop();e&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding CLS"),Y.cls={value:t.value,unit:""},Te=e)})}function i_(){return Qf(t=>{const e=t.entries.pop();e&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding LCP"),Y.lcp={value:t.value,unit:"millisecond"},ht=e)})}function s_(){Jf(t=>{const e=t.entries.pop();if(!e)return;const n=j(bt),r=j(e.startTime);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding FID"),Y.fid={value:t.value,unit:"millisecond"},Y["mark.fid"]={value:n+r,unit:"second"}})}function a_(t){const e=Na();if(!e||!C.performance.getEntries||!bt)return;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Tracing] Adding & adjusting spans using Performance API");const n=j(bt),r=e.getEntries();let i,s;if(r.slice(Oi).forEach(a=>{const o=j(a.startTime),c=j(a.duration);if(!(t.op==="navigation"&&n+o<t.startTimestamp))switch(a.entryType){case"navigation":{c_(t,a,n),i=n+j(a.responseStart),s=n+j(a.requestStart);break}case"mark":case"paint":case"measure":{o_(t,a,o,c,n);const u=Or(),d=a.startTime<u.firstHiddenTime;a.name==="first-paint"&&d&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding FP"),Y.fp={value:a.startTime,unit:"millisecond"}),a.name==="first-contentful-paint"&&d&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding FCP"),Y.fcp={value:a.startTime,unit:"millisecond"});break}case"resource":{const u=a.name.replace(C.location.origin,"");d_(t,a,u,o,c,n);break}}}),Oi=Math.max(r.length-1,0),l_(t),t.op==="pageload"){typeof i=="number"&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding TTFB"),Y.ttfb={value:(i-t.startTimestamp)*1e3,unit:"millisecond"},typeof s=="number"&&s<=i&&(Y["ttfb.requestTime"]={value:(i-s)*1e3,unit:"millisecond"})),["fcp","fp","lcp"].forEach(o=>{if(!Y[o]||n>=t.startTimestamp)return;const c=Y[o].value,u=n+j(c),d=Math.abs((u-t.startTimestamp)*1e3),l=d-c;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Measurements] Normalized ${o} from ${c} to ${d} (${l})`),Y[o].value=d});const a=Y["mark.fid"];a&&Y.fid&&(ae(t,{description:"first input delay",endTimestamp:a.value+j(Y.fid.value),op:"ui.action",startTimestamp:a.value}),delete Y["mark.fid"]),"fcp"in Y||delete Y.cls,Object.keys(Y).forEach(o=>{t.setMeasurement(o,Y[o].value,Y[o].unit)}),f_(t)}ht=void 0,Te=void 0,Y={}}function o_(t,e,n,r,i){const s=i+n,a=s+r;return ae(t,{description:e.name,endTimestamp:a,op:e.entryType,startTimestamp:s}),s}function c_(t,e,n){["unloadEvent","redirect","domContentLoadedEvent","loadEvent","connect"].forEach(r=>{Xe(t,e,r,n)}),Xe(t,e,"secureConnection",n,"TLS/SSL","connectEnd"),Xe(t,e,"fetch",n,"cache","domainLookupStart"),Xe(t,e,"domainLookup",n,"DNS"),u_(t,e,n)}function Xe(t,e,n,r,i,s){const a=s?e[s]:e[`${n}End`],o=e[`${n}Start`];!o||!a||ae(t,{op:"browser",description:i||n,startTimestamp:r+j(o),endTimestamp:r+j(a)})}function u_(t,e,n){ae(t,{op:"browser",description:"request",startTimestamp:n+j(e.requestStart),endTimestamp:n+j(e.responseEnd)}),ae(t,{op:"browser",description:"response",startTimestamp:n+j(e.responseStart),endTimestamp:n+j(e.responseEnd)})}function d_(t,e,n,r,i,s){if(e.initiatorType==="xmlhttprequest"||e.initiatorType==="fetch")return;const a={};"transferSize"in e&&(a["http.response_transfer_size"]=e.transferSize),"encodedBodySize"in e&&(a["http.response_content_length"]=e.encodedBodySize),"decodedBodySize"in e&&(a["http.decoded_response_content_length"]=e.decodedBodySize),"renderBlockingStatus"in e&&(a["resource.render_blocking_status"]=e.renderBlockingStatus);const o=s+r,c=o+i;ae(t,{description:n,endTimestamp:c,op:e.initiatorType?`resource.${e.initiatorType}`:"resource.other",startTimestamp:o,data:a})}function l_(t){const e=C.navigator;if(!e)return;const n=e.connection;n&&(n.effectiveType&&t.setTag("effectiveConnectionType",n.effectiveType),n.type&&t.setTag("connectionType",n.type),Ln(n.rtt)&&(Y["connection.rtt"]={value:n.rtt,unit:"millisecond"})),Ln(e.deviceMemory)&&t.setTag("deviceMemory",`${e.deviceMemory} GB`),Ln(e.hardwareConcurrency)&&t.setTag("hardwareConcurrency",String(e.hardwareConcurrency))}function f_(t){ht&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding LCP Data"),ht.element&&t.setTag("lcp.element",Pt(ht.element)),ht.id&&t.setTag("lcp.id",ht.id),ht.url&&t.setTag("lcp.url",ht.url.trim().slice(0,200)),t.setTag("lcp.size",ht.size)),Te&&Te.sources&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Measurements] Adding CLS Data"),Te.sources.forEach((e,n)=>t.setTag(`cls.source.${n+1}`,Pt(e.node))))}const dr=["localhost",/^\//],mn={traceFetch:!0,traceXHR:!0,tracingOrigins:dr,tracePropagationTargets:dr};function Da(t){const{traceFetch:e,traceXHR:n,tracePropagationTargets:r,tracingOrigins:i,shouldCreateSpanForRequest:s}={traceFetch:mn.traceFetch,traceXHR:mn.traceXHR,...t},a=typeof s=="function"?s:u=>!0,o=u=>__(u,r||i),c={};e&&V("fetch",u=>{h_(u,a,o,c)}),n&&V("xhr",u=>{m_(u,a,o,c)})}function __(t,e){return ue(t,e||dr)}function h_(t,e,n,r){if(!Er()||!(t.fetchData&&e(t.fetchData.url)))return;if(t.endTimestamp){const c=t.fetchData.__span;if(!c)return;const u=r[c];u&&(t.response?u.setHttpStatus(t.response.status):t.error&&u.setStatus("internal_error"),u.finish(),delete r[c]);return}const i=t.response&&t.response.headers&&t.response.headers.get("content-length"),s=g().getScope(),a=s&&s.getSpan(),o=a&&a.transaction;if(a&&o){const{method:c,url:u}=t.fetchData,d=a.startChild({data:{url:u,type:"fetch",...i?{"http.response_content_length":i}:{},"http.method":c},description:`${c} ${u}`,op:"http.client"});t.fetchData.__span=d.spanId,r[d.spanId]=d;const l=t.args[0];t.args[1]=t.args[1]||{};const h=t.args[1];n(t.fetchData.url)&&(h.headers=p_(l,o.getDynamicSamplingContext(),d,h))}}function p_(t,e,n,r){const i=os(e),s=n.toTraceparent(),a=typeof Request<"u"&&Ut(t,Request)?t.headers:r.headers;if(a)if(typeof Headers<"u"&&Ut(a,Headers)){const o=new Headers(a);return o.append("sentry-trace",s),i&&o.append(jn,i),o}else if(Array.isArray(a)){const o=[...a,["sentry-trace",s]];return i&&o.push([jn,i]),o}else{const o="baggage"in a?a.baggage:void 0,c=[];return Array.isArray(o)?c.push(...o):o&&c.push(o),i&&c.push(i),{...a,"sentry-trace":s,baggage:c.length>0?c.join(","):void 0}}else return{"sentry-trace":s,baggage:i}}function m_(t,e,n,r){const i=t.xhr,s=i&&i[Rt];if(!Er()||i&&i.__sentry_own_request__||!(i&&s&&e(s.url)))return;if(t.endTimestamp){const u=i.__sentry_xhr_span_id__;if(!u)return;const d=r[u];d&&(d.setHttpStatus(s.status_code),d.finish(),delete r[u]);return}const a=g().getScope(),o=a&&a.getSpan(),c=o&&o.transaction;if(o&&c){const u=o.startChild({data:{...s.data,type:"xhr","http.method":s.method,url:s.url},description:`${s.method} ${s.url}`,op:"http.client"});if(i.__sentry_xhr_span_id__=u.spanId,r[i.__sentry_xhr_span_id__]=u,i.setRequestHeader&&n(s.url))try{i.setRequestHeader("sentry-trace",u.toTraceparent());const d=c.getDynamicSamplingContext(),l=os(d);l&&i.setRequestHeader(jn,l)}catch(d){}}}function g_(t,e=!0,n=!0){if(!C||!C.location){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn("Could not initialize routing instrumentation due to invalid location");return}let r=C.location.href,i;e&&(i=t({name:C.location.pathname,startTimestamp:bt?bt/1e3:void 0,op:"pageload",metadata:{source:"url"}})),n&&V("history",({to:s,from:a})=>{if(a===void 0&&r&&r.indexOf(s)!==-1){r=void 0;return}a!==s&&(r=void 0,i&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Finishing current transaction with op: ${i.op}`),i.finish()),i=t({name:C.location.pathname,op:"navigation",metadata:{source:"url"}}))})}const y_="BrowserTracing",E_={...Qe,markBackgroundTransactions:!0,routingInstrumentation:g_,startTransactionOnLocationChange:!0,startTransactionOnPageLoad:!0,enableLongTask:!0,_experiments:{},...mn};class Ar{__init(){this.name=y_}constructor(e){Ar.prototype.__init.call(this),_s(),this.options={...E_,...e},this.options._experiments.enableLongTask!==void 0&&(this.options.enableLongTask=this.options._experiments.enableLongTask),e&&!e.tracePropagationTargets&&e.tracingOrigins&&(this.options.tracePropagationTargets=e.tracingOrigins),this._collectWebVitals=t_(),this.options.enableLongTask&&e_(),this.options._experiments.enableInteractions&&n_()}setupOnce(e,n){this._getCurrentHub=n;const{routingInstrumentation:r,startTransactionOnLocationChange:i,startTransactionOnPageLoad:s,markBackgroundTransactions:a,traceFetch:o,traceXHR:c,tracePropagationTargets:u,shouldCreateSpanForRequest:d,_experiments:l}=this.options;r(h=>{const _=this._createRouteTransaction(h);return this.options._experiments.onStartRouteTransaction&&this.options._experiments.onStartRouteTransaction(_,h,n),_},s,i),a&&Wf(),l.enableInteractions&&this._registerInteractionListener(),Da({traceFetch:o,traceXHR:c,tracePropagationTargets:u,shouldCreateSpanForRequest:d})}_createRouteTransaction(e){if(!this._getCurrentHub){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`[Tracing] Did not create ${e.op} transaction because _getCurrentHub is invalid.`);return}const{beforeNavigate:n,idleTimeout:r,finalTimeout:i,heartbeatInterval:s}=this.options,a=e.op==="pageload",o=a?Ai("sentry-trace"):null,c=a?Ai("baggage"):null,u=o?ns(o):void 0,d=c?$o(c):void 0,l={...e,...u,metadata:{...e.metadata,dynamicSamplingContext:u&&!d?{}:d},trimEnd:!0},h=typeof n=="function"?n(l):l,_=h===void 0?{...l,sampled:!1}:h;_.metadata=_.name!==l.name?{..._.metadata,source:"custom"}:_.metadata,this._latestRouteName=_.name,this._latestRouteSource=_.metadata&&_.metadata.source,_.sampled===!1&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Will not send ${_.op} transaction because of beforeNavigate.`),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Tracing] Starting ${_.op} transaction on scope`);const p=this._getCurrentHub(),{location:w}=C,D=Jr(p,_,r,i,!0,{location:w},s);return D.registerBeforeFinishCallback(S=>{this._collectWebVitals(),a_(S)}),D}_registerInteractionListener(){let e;const n=()=>{const{idleTimeout:r,finalTimeout:i,heartbeatInterval:s}=this.options,a="ui.action.click",o=le();if(o&&o.op&&["navigation","pageload"].includes(o.op)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`[Tracing] Did not create ${a} transaction because a pageload or navigation transaction is in progress.`);return}if(e&&(e.setFinishReason("interactionInterrupted"),e.finish(),e=void 0),!this._getCurrentHub){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`[Tracing] Did not create ${a} transaction because _getCurrentHub is invalid.`);return}if(!this._latestRouteName){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.warn(`[Tracing] Did not create ${a} transaction because _latestRouteName is missing.`);return}const c=this._getCurrentHub(),{location:u}=C,d={name:this._latestRouteName,op:a,trimEnd:!0,metadata:{source:this._latestRouteSource||"url"}};e=Jr(c,d,r,i,!0,{location:u},s)};["click"].forEach(r=>{addEventListener(r,n,{once:!1,capture:!0})})}}function Ai(t){const e=ja(`meta[name=${t}]`);return e?e.getAttribute("content"):null}function Ie(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}function S_(t,e){const n=indexedDB.open(t);n.onupgradeneeded=()=>n.result.createObjectStore(e);const r=Ie(n);return i=>r.then(s=>i(s.transaction(e,"readwrite").objectStore(e)))}function xa(t){return Ie(t.getAllKeys())}function b_(t,e,n){return t(r=>xa(r).then(i=>{if(!(i.length>=n))return r.put(e,Math.max(...i,0)+1),Ie(r.transaction)}))}function w_(t){return t(e=>xa(e).then(n=>{if(n.length!==0)return Ie(e.get(n[0])).then(r=>(e.delete(n[0]),Ie(e.transaction).then(()=>r)))}))}function T_(t){let e;function n(){return e==null&&(e=S_(t.dbName||"sentry-offline",t.storeName||"queue")),e}return{insert:async r=>{try{const i=await rs(r,t.textEncoder);await b_(n(),i,t.maxQueueSize||30)}catch(i){}},pop:async()=>{try{const r=await w_(n());if(r)return Co(r,t.textEncoder||new TextEncoder,t.textDecoder||new TextDecoder)}catch(r){}}}}function v_(t){return e=>t({...e,createStore:T_})}function R_(t){return v_(Bc(t))}function k_(t){let e=[],n={};return{add(r,i){for(;e.length>=t;){const s=e.shift();s!==void 0&&delete n[s]}n[r]&&this.delete(r),e.push(r),n[r]=i},clear(){n={},e=[]},get(r){return n[r]},size(){return e.length},delete(r){if(!n[r])return!1;delete n[r];for(let i=0;i<e.length;i++)if(e[i]===r){e.splice(i,1);break}return!0}}}const lr=k_(20),Ci=1e6,rn=String(0),N_="main";let Ia="",Oa="",Aa="",fr=y.navigator&&y.navigator.userAgent||"",Ca="";const D_=y.navigator&&y.navigator.language||y.navigator&&y.navigator.languages&&y.navigator.languages[0]||"";function x_(t){return typeof t=="object"&&t!==null&&"getHighEntropyValues"in t}const Ui=y.navigator&&y.navigator.userAgentData;x_(Ui)&&Ui.getHighEntropyValues(["architecture","model","platform","platformVersion","fullVersionList"]).then(t=>{if(Ia=t.platform||"",Aa=t.architecture||"",Ca=t.model||"",Oa=t.platformVersion||"",t.fullVersionList&&t.fullVersionList.length>0){const e=t.fullVersionList[t.fullVersionList.length-1];fr=`${e.brand} ${e.version}`}}).catch(t=>{});function I_(t){return!("thread_metadata"in t)}function O_(t){return I_(t)?M_(t):t}function A_(t){if(!(!t||!t.sdk))return{name:t.sdk.name,version:t.sdk.version}}function C_(t,e){return e&&(t.sdk=t.sdk||{},t.sdk.name=t.sdk.name||e.name||"unknown sdk",t.sdk.version=t.sdk.version||e.version||"unknown sdk version",t.sdk.integrations=[...t.sdk.integrations||[],...e.integrations||[]],t.sdk.packages=[...t.sdk.packages||[],...e.packages||[]]),t}function U_(t,e,n,r){const i=t.sdkProcessingMetadata&&t.sdkProcessingMetadata.dynamicSamplingContext;return{event_id:t.event_id,sent_at:new Date().toISOString(),...e&&{sdk:e},...!!n&&{dsn:ce(r)},...t.type==="transaction"&&i&&{trace:ut({...i})}}}function B_(t){const e=t&&t.contexts&&t.contexts.trace&&t.contexts.trace.trace_id;return typeof e=="string"&&e.length!==32&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Profiling] Invalid traceId: ${e} on profiled event`),typeof e!="string"?"":e}function L_(t,e,n,r){if(t.type!=="transaction")throw new TypeError("Profiling events may only be attached to transactions, this should never occur.");const i=t.sdkProcessingMetadata.profile;if(i==null)throw new TypeError(`Cannot construct profiling event envelope without a valid profile. Got ${i} instead.`);if(!i.profile_id)throw new TypeError("Profile is missing profile_id");if(i.samples.length<=1)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Discarding profile because it contains less than 2 samples"),null;const s=B_(t),a=A_(n);C_(t,n&&n.sdk);const o=U_(t,a,r,e),c=O_(i),u=typeof t.start_timestamp=="number"?t.start_timestamp*1e3:Date.now(),d=typeof t.timestamp=="number"?t.timestamp*1e3:Date.now(),l={event_id:i.profile_id,timestamp:new Date(u).toISOString(),platform:"javascript",version:"1",release:t.release||"",environment:t.environment||En,runtime:{name:"javascript",version:y.navigator.userAgent},os:{name:Ia,version:Oa,build_number:fr},device:{locale:D_,model:Ca,manufacturer:fr,architecture:Aa,is_emulator:!1},profile:c,transactions:[{name:t.transaction||"",id:t.event_id||lt(),trace_id:s,active_thread_id:rn,relative_start_ns:"0",relative_end_ns:((d-u)*1e6).toFixed(0)}]};return Wt(o,[[{type:"profile"},l]])}function M_(t){let e,n=0;const r={samples:[],stacks:[],frames:[],thread_metadata:{[rn]:{name:N_}}};if(!t.samples.length)return r;const i=t.samples[0].timestamp;for(let s=0;s<t.samples.length;s++){const a=t.samples[s];if(a.stackId===void 0){e===void 0&&(e=n,r.stacks[e]=[],n++),r.samples[s]={elapsed_since_start_ns:((a.timestamp-i)*Ci).toFixed(0),stack_id:e,thread_id:rn};continue}let o=t.stacks[a.stackId];const c=[];for(;o;){c.push(o.frameId);const d=t.frames[o.frameId];r.frames[o.frameId]===void 0&&(r.frames[o.frameId]={function:d.name,file:d.resourceId?t.resources[d.resourceId]:void 0,line:d.line,column:d.column}),o=o.parentId===void 0?void 0:t.stacks[o.parentId]}const u={elapsed_since_start_ns:((a.timestamp-i)*Ci).toFixed(0),stack_id:n,thread_id:rn};r.stacks[n]=c,r.samples[s]=u,n++}return r}function G_(t,e){const n=lr.get(t);if(!n){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Couldn't find a transaction event for this profile, dropping it.");return}n.sdkProcessingMetadata=n.sdkProcessingMetadata||{},n.sdkProcessingMetadata&&!n.sdkProcessingMetadata.profile&&(n.sdkProcessingMetadata.profile=e);const i=g().getClient();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] getClient did not return a Client, removing profile from event and forwarding to next event processors.");return}const s=i.getDsn();if(!s){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] getDsn did not return a Dsn, removing profile from event and forwarding to next event processors.");return}const a=i.getTransport();if(!a){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] getTransport did not return a Transport, removing profile from event and forwarding to next event processors.");return}(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Preparing envelope and sending a profiling event");const o=L_(n,s);if(lr.delete(t),!o){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Failed to construct envelope");return}(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Envelope constructed, sending it"),a.send(o).then(null,c=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Error while sending event:",c)})}const Bi=3e4;let Li=!1;function P_(t){return typeof t=="function"}function Y_(t){return t?Ua(t):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Transaction is undefined, skipping profiling"),t)}function Ua(t){const e=y.Profiler;if(!P_(e))return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Profiling is not supported by this browser, Profiler interface missing on window object."),t;if(!t.sampled)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Transaction is not sampled, skipping profiling"),t;if(Li)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Profiling has been disabled for the duration of the current user session."),t;const n=g().getClient(),r=n&&n.getOptions(),i=r&&r.profilesSampleRate||0;if(i===void 0)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Profiling disabled, enable it by setting `profilesSampleRate` option to SDK init call."),t;if(Math.random()>i)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Skip profiling transaction due to sampling."),t;const s=10,a=Math.floor(Bi/s);let o;try{o=new e({sampleInterval:s,maxBufferSize:a})}catch(p){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&(f.log("[Profiling] Failed to initialize the Profiling constructor, this is likely due to a missing 'Document-Policy': 'js-profiling' header."),f.log("[Profiling] Disabling profiling for current user session.")),Li=!0}if(!o)return t;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Profiling] started profiling transaction: ${t.name||t.description}`);const c=lt();let u=null;function d(){if(t&&o){if(u){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] profile for:",t.name||t.description,"already exists, returning early");return}o.stop().then(p=>{if(l&&(y.clearTimeout(l),l=void 0),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Profiling] stopped profiling of transaction: ${t.name||t.description}`),!p){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log(`[Profiling] profiler returned null profile for: ${t.name||t.description}`,"this may indicate an overlapping transaction or a call to stopProfiling with a profile title that was never started");return}p.samples.length<2||(u={...p,profile_id:c},G_(c,u))}).catch(p=>((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] error while stopping profiler:",p),null))}}let l=y.setTimeout(()=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] max profile duration elapsed, stopping profiling for:",t.name||t.description),d()},Bi);const h=t.finish.bind(t);function _(){return t&&(d(),t.setContext("profile",{profile_id:c})),h()}return t.finish=_,t}function F_(t){return function(n,r){const i=t.call(this,n,r);return i===void 0?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Transaction is undefined, skipping profiling"),i):Ua(i)}}function z_(){const t=de();if(!t.__SENTRY__){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Can't find main carrier, profiling won't work.");return}if(t.__SENTRY__.extensions=t.__SENTRY__.extensions||{},!t.__SENTRY__.extensions.startTransaction){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] startTransaction does not exists, profiling will not work. Make sure you import @sentry/tracing package before @sentry/profiling-node as import order matters.");return}(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] startTransaction exists, patching it with profiling functionality..."),t.__SENTRY__.extensions.startTransaction=F_(t.__SENTRY__.extensions.startTransaction)}class Cr{constructor(){Cr.prototype.__init.call(this)}__init(){this.name="BrowserProfilingIntegration"}setupOnce(e){z_(),e(this.handleGlobalEvent.bind(this))}handleGlobalEvent(e){const n=e.contexts&&e.contexts.profile&&e.contexts.profile.profile_id;return n&&typeof n=="string"&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&f.log("[Profiling] Profiling event found, caching it."),lr.add(n,e)),e}}let Ba={};y.Sentry&&y.Sentry.Integrations&&(Ba=y.Sentry.Integrations);const $_={...Ba,...Zc,...Qu},H_=Object.freeze(Object.defineProperty({__proto__:null,Breadcrumbs:$t,BrowserClient:xs,BrowserProfilingIntegration:Cr,BrowserTracing:Ar,Dedupe:At,FunctionToString:Ft,GlobalHandlers:mt,HttpContext:Ot,Hub:yr,InboundFilters:xt,Integrations:$_,LinkedErrors:It,Replay:xe,SDK_VERSION:Zn,Scope:Dt,TryCatch:Ht,WINDOW:y,addBreadcrumb:hs,addGlobalEventProcessor:Ae,addTracingExtensions:_s,captureEvent:ac,captureException:bn,captureMessage:sc,captureUserFeedback:Ju,chromeStackLineParser:As,close:Vu,configureScope:oc,createTransport:Sr,createUserFeedbackEnvelope:Ds,defaultIntegrations:Hs,defaultRequestInstrumentationOptions:mn,defaultStackLineParsers:Bs,defaultStackParser:Ls,eventFromException:Rs,eventFromMessage:ks,extractTraceparentData:ns,flush:Zu,forceLoad:Wu,geckoStackLineParser:Cs,getActiveTransaction:le,getCurrentHub:g,getHubFromCarrier:cn,init:js,instrumentOutgoingRequests:Da,lastEventId:ju,makeBrowserOfflineTransport:R_,makeFetchTransport:Is,makeMain:Wn,makeMultiplexedTransport:Mc,makeXHRTransport:Os,onLoad:qu,onProfilingStartRouteTransaction:Y_,opera10StackLineParser:Ru,opera11StackLineParser:Du,setContext:ps,setExtra:uc,setExtras:cc,setTag:lc,setTags:dc,setUser:fc,showReportDialog:Hu,spanStatusfromHttpCode:ls,startTransaction:_c,trace:ic,winjsStackLineParser:Us,withScope:ms,wrap:Xu},Symbol.toStringTag,{value:"Module"})),j_="https://75521e9e145e4ede8272f960ecec887b@o23479.ingest.sentry.io/1545626",W_="production";var Ke=[];js({dsn:j_,environment:W_,ignoreErrors:["top.GLOBALS","originalCreateNotification","canvas.contentDocument","MyApp_RemoveAllHighlights","http://tt.epicplay.com","Can't find variable: ZiteReader","jigsaw is not defined","ComboSearch is not defined","http://loading.retry.widdit.com/","atomicFindClose","fb_xd_fragment","bmi_SafeAddOnload","EBCallBackMessageReceived","conduitPage","_tfa is not defined","Can't find variable: _tfa","Can't find variable: iom","iom is not defined","Can't find variable: _vwo_code","_vwo_code is not defined","Can't find variable: msDiscoverChatAvailable","Non-Error promise rejection captured with value:","undefined is not an object (evaluating","missing ) after argument list","null is not an object (evaluating","SecurityError","Failed to load","Failed to fetch","Unable to preload CSS","Load failed","vcmidOfContent is not defined","onGoogleTranslateError","Can't find variable: _AutofillCallbackHandler","Can't find variable: zaloJSV2","Can't find variable: appControl","appControl is not defined","ResizeObserver loop limit exceeded","out of memory","Can't find variable: __firefox__","UET is not defined","pushNotification","Identifier 'VIDEO_PLAYING' has already been declared","NetworkError when attempting to fetch resource.","Firebase SDK","zoid destroyed all components","transaction_id","Notification.requestPermission"],beforeSend(t,e){let n=!1;const r=a([/\/OneSignal\/OneSignal-Website-SDK/i,/C:\//i,/https:\/\/omnisnippet1\.com/i,/https:\/\/www\.googletagmanager\.com\/gtm\.js\?id=GTM-WWQRLLH&l=gtmLayer/i,/uploads\/2319\/websites/i,/i18n\/pixel\/static\/main/i,/assets\/firebase/i]),i=["/inshop/launcher-v2.js","/sdks/OneSignalSDK.js","/sdks/OneSignalPageSDKES6.js","","/gtm.js","/gtag/js","/uwt.js","/scripts/sdk/everflow.js","/js/widget.js"];function s(o){return Object.prototype.toString.call(o)==="[object String]"}function a(o){var c=[];for(let u=0;u<o.length;u++){let d=o[u];s(d)?c.push(d.replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1")):d&&d.source&&c.push(d.source)}return new RegExp(c.join("|"),"i")}if(t&&t.request&&t.request.url&&a([/graph\.facebook\.com/i,/connect\.facebook\.net\/en_US\/all\.js/i,/eatdifferent\.com\.woopra-ns\.com/i,/static\.woopra\.com\/js\/woopra\.js/i,/extensions\//i,/^chrome:\/\//i,/127\.0\.0\.1:4001\/isrunning/i,/webappstoolbarba\.texthelp\.com\//i,/metrics\.itunes\.apple\.com\.edgesuite\.net\//i,/dsw0trk\.com\/scripts\/sdk\/everflow\.js/i,/theme\.js\.download/i,/file:/i,/C:\//i,/sc\-static\.net\/scevent\.min\.js/i,/checkout\.bootstrap\.js/i]).test(t.request.url)||e&&e.originalException&&e.originalException.stack&&a([/\/\/js\.klarna\.com/i,/\<\!DOCTYPE html\>/i]).test(e.originalException.stack))return null;if(e&&e.originalException&&e.originalException.message)if(e.originalException.message in Ke){if(Ke[e.originalException.message]+=1,Ke[e.originalException.message]>5)return null}else Ke[e.originalException.message]=1;if(t&&t.exception&&t.exception.values&&t.exception.values[0]&&t.exception.values[0].stacktrace&&t.exception.values[0].stacktrace.frames&&t.exception.values[0].stacktrace.frames[0]){if(["<anonymous>","undefined"].includes(t.exception.values[0].stacktrace.frames[0].filename))return null;t.exception.values[0].stacktrace.frames.forEach(o=>{(i.includes(o.filename)||r.test(o.filename))&&(n=!0)})}return n?null:t}});window.Sentry=H_;export{q_ as __vite_legacy_guard}; </script> <style>@media (min-width: 0px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg-mobile.jpg?q=80&fm=webp&w=778&s=f33c3c0ba7889918251174f6bcd065f0');}}@media (min-width: 576px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg-bigger-mobile.jpg?q=80&fm=webp&w=778&s=68fda7c0b31c860925b5bc30c9ff4d47');}}@media (min-width: 768px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg-tablet.jpg?q=80&fm=webp&w=1037&s=6ebc2ef6ce63fbd2e18e77822e3dd647');}}@media (min-width: 1023px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg.jpg?q=80&fm=webp&w=1382&h=800&fit=max&s=c10a4429b280db438fe94a72772650de');}}@media (min-width: 1400px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg.jpg?q=80&fm=webp&w=1891&h=800&fit=max&s=7d0b077491ebf9dd20530b7ffcfde4f3');}}@media (min-width: 1560px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg.jpg?q=80&fm=webp&w=2106&h=800&fit=max&s=b57acc469ef67a02420c223b328d09af');}}@media (min-width: 1870px) {:root { --header-bg: url('https://get-derila.com/assets/theme/derila/product-9/header/bg.jpg?q=80&fm=webp&w=2525&h=800&fit=max&s=1dec6cebd4e63bffae00a55808f566ce');}}</style> <link rel="preload" as="style" href="https://get-derila.com/build/assets/product-211ab978.css" /><link rel="stylesheet" href="https://get-derila.com/build/assets/product-211ab978.css" data-navigate-track="reload" /> <link rel="preload" as="style" href="https://get-derila.com/build/assets/theme-64d605d0.css" /><link rel="stylesheet" href="https://get-derila.com/build/assets/theme-64d605d0.css" data-navigate-track="reload" /> <link rel="preload" as="style" href="https://get-derila.com/build/assets/main-90f63b7c.css" /><link rel="stylesheet" href="https://get-derila.com/build/assets/main-90f63b7c.css" data-navigate-track="reload" /> <link rel="preload" as="style" href="https://get-derila.com/build/assets/_ignore-rtl-build-41783ffe.css" /><link rel="stylesheet" href="https://get-derila.com/build/assets/_ignore-rtl-build-41783ffe.css" data-navigate-track="reload" /> <style> [wire\:loading][wire\:loading], [wire\:loading\.delay][wire\:loading\.delay], [wire\:loading\.inline-block][wire\:loading\.inline-block], [wire\:loading\.inline][wire\:loading\.inline], [wire\:loading\.block][wire\:loading\.block], [wire\:loading\.flex][wire\:loading\.flex], [wire\:loading\.table][wire\:loading\.table], [wire\:loading\.grid][wire\:loading\.grid], [wire\:loading\.inline-flex][wire\:loading\.inline-flex] { display: none; } [wire\:loading\.delay\.none][wire\:loading\.delay\.none], [wire\:loading\.delay\.shortest][wire\:loading\.delay\.shortest], [wire\:loading\.delay\.shorter][wire\:loading\.delay\.shorter], [wire\:loading\.delay\.short][wire\:loading\.delay\.short], [wire\:loading\.delay\.default][wire\:loading\.delay\.default], [wire\:loading\.delay\.long][wire\:loading\.delay\.long], [wire\:loading\.delay\.longer][wire\:loading\.delay\.longer], [wire\:loading\.delay\.longest][wire\:loading\.delay\.longest] { display: none; } [wire\:offline][wire\:offline] { display: none; } [wire\:dirty]:not(textarea):not(input):not(select) { display: none; } [x-cloak]:not([x-cloak-pointer-events-none]) { display: none !important; } [x-cloak][x-cloak-pointer-events-none] { pointer-events: none; } </style> <link rel="modulepreload" href="https://get-derila.com/build/assets/lazyload-b45a339c.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/will-be-removed-861b7b05.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/jquery-5fc13275.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/intersection-observer-90e9e37b.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/index-9b5fec24.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/_commonjsHelpers-042e6b4d.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/theme-a7886786.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/livewire.esm-0a5f2012.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/bootstrap-265771b1.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/whoops-b9817266.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/normalize-636e2359.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/text-wrapper-04ace8f7.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/track-visited-pages-8c5cc3a9.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/choices-90da538a.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/format-price-5af0b78f.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/product-value-parser-25984bef.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/dynamic-module-import-a60ef581.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/helpers-19863c19.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/debounce-b1b63336.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/preload-helper-6f27e6cf.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/alpine-c3ce3ad7.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/cart-option-a8aecb77.js" /><link rel="modulepreload" href="https://get-derila.com/build/assets/product-value-encoder-a50bb29a.js" /><script type="module" src="https://get-derila.com/build/assets/lazyload-b45a339c.js" data-navigate-track="reload"></script><script type="module" src="https://get-derila.com/build/assets/will-be-removed-861b7b05.js" data-navigate-track="reload"></script><script type="module" src="https://get-derila.com/build/assets/theme-a7886786.js" data-navigate-track="reload"></script><script type="module" src="https://get-derila.com/build/assets/alpine-c3ce3ad7.js" data-navigate-track="reload"></script> <style> :root { --btn-background-primary: #4277F0; } </style> <style> @keyframes scalePulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.2); } } .scale-pulse { animation: scalePulse 1500ms ease-in-out; } </style> <script> var orbServerData = JSON.parse('{\u0022gtmLayerPage\u0022:\u0022landing\u0022,\u0022pageCategory\u0022:\u0022index\u0022,\u0022brand\u0022:\u0022derila\u0022,\u0022country\u0022:\u0022SG\u0022,\u0022company\u0022:null,\u0022locale\u0022:\u0022en\u0022,\u0022currency\u0022:\u0022EUR\u0022}'); var orbSessionData = JSON.parse('{\u0022uuid\u0022:\u0022019380b4-24ca-7e7f-b647-46dc278d1ff2\u0022,\u0022subid1\u0022:null,\u0022subid2\u0022:null,\u0022subid3\u0022:null,\u0022subid4\u0022:null,\u0022subid5\u0022:null,\u0022utm_campaign\u0022:null,\u0022product_page_version\u0022:\u002215\u0022,\u0022transaction_id\u0022:null,\u0022affiliate_id\u0022:null,\u0022offid\u0022:null,\u0022ttclid\u0022:null}'); orbSessionData = Object.assign({}, orbServerData, orbSessionData); </script> <script> window.gtmLayer = [{ page: orbServerData.gtmLayerPage || null, page_category: orbServerData.pageCategory, subid: window.orbSessionData.subid1, subid_2: window.orbSessionData.subid2, subid_3: window.orbSessionData.subid3, subid_4: window.orbSessionData.subid4, subid_5: window.orbSessionData.subid5, transaction_id: window.orbSessionData.transaction_id, affiliate_id: window.orbSessionData.affiliate_id, }]; </script> <!-- Facebook Pixel Code --> <script> !function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window,document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); </script> <script> (function () { const fbGlobalPixel = '903090581609834'; fbq('init', fbGlobalPixel); fbq('trackSingle', fbGlobalPixel, 'PageView'); window.addEventListener("customer-info-form-touched", function () { fbq('trackSingle', fbGlobalPixel, 'InitiateCheckout'); }); })(); </script> <noscript> <img height="1" width="1" alt="" src="https://www.facebook.com/tr?id=903090581609834&ev=PageView&noscript=1"/> </noscript> <script> (function () { const fbBrandPixel = '1483246915738596'; fbq('init', fbBrandPixel); fbq('trackSingle', fbBrandPixel, 'PageView'); window.addEventListener("customer-info-form-touched", function () { fbq('trackSingle', fbBrandPixel, 'InitiateCheckout'); }); })(); </script> <noscript> <img height="1" width="1" alt="" src="https://www.facebook.com/tr?id=1483246915738596&ev=PageView&noscript=1"/> </noscript> <script> (function () { window.addEventListener("customer-info-form-touched", function () { let data = { brand: 'derila', url: 'https://get-derila.com', pixel_type: 'brand' }; fetch('https://get-derila.com/send-meta-initiate-checkout-event', { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content') }, body: JSON.stringify(data) }).catch((error) => { }); }); })(); </script> <!-- End Facebook Pixel Code --> <script> (function(h,o,t,j,a,r){ h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; h._hjSettings={hjid:3023628,hjsv:6}; a=o.getElementsByTagName('head')[0]; r=o.createElement('script');r.async=1; r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; a.appendChild(r); })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv='); </script> <script type="text/javascript"> (function(c,l,a,r,i,t,y){ c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); })(window, document, "clarity", "script", "n44re5d4t7"); </script> <!-- Global site tag (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-2DT0NCM1Q4&l=gaLayer"></script> <script> window.gaLayer = window.gaLayer || []; function gatag() { if (arguments[2]) { arguments[2].real_timestamp = Date.now(); } gaLayer.push(arguments); } function setConsentMode(necessary, marketing, analytics, preferences) { var consentMode = { 'functionality_storage': necessary ? 'granted' : 'denied', 'security_storage': necessary ? 'granted' : 'denied', 'ad_storage': marketing ? 'granted' : 'denied', 'analytics_storage': analytics ? 'granted' : 'denied', 'personalization_storage': preferences ? 'granted' : 'denied', }; gatag('consent', 'update', consentMode); localStorage.setItem('consentMode', JSON.stringify(consentMode)); } var eventParameters = { page: '' || location.pathname, page_category: 'index', upsell_index: null, product_page_version: window.orbSessionData && window.orbSessionData.product_page_version }; var userProperties = window.orbSessionData && { uuid: window.orbSessionData.uuid, locale: window.orbSessionData.locale, currency: window.orbSessionData.currency, brand: window.orbSessionData.brand, country: window.orbSessionData.country, company: window.orbSessionData.company, subid1: window.orbSessionData.subid1, subid2: window.orbSessionData.subid2, subid3: window.orbSessionData.subid3, subid4: window.orbSessionData.subid4, subid5: window.orbSessionData.subid5, utm_campaign: window.orbSessionData.utm_campaign } || {}; gatag('js', new Date()); gatag('config', 'G-2DT0NCM1Q4', eventParameters); // This used as "User flow active" property (by Jurate) gatag('config', 'G-XMK7FRFCX5', eventParameters); gatag('set', 'user_properties', userProperties); gatag('event', 'split_test_view', JSON.parse('{\u0022split_test_id\u0022:3642,\u0022split_test_variation\u0022:\u00227190_#2 Show Old Tracking Page Version\u0022,\u0022event_action\u0022:\u0022Viewed 3642\u0022,\u0022event_label\u0022:\u00227190_#2 Show Old Tracking Page Version\u0022,\u0022event_category\u0022:\u0022Split tests\u0022}')); addEventListener('hashchange', function () { var newFragment = location.hash; gatag('event', 'page_view', { 'page_path': location.pathname + location.search + newFragment, 'url_fragment': newFragment.replace('#', '') }); }); </script> <script> (function(a, t, o, m, i) { a[m] = a[m] || []; a[m].push({ t: new Date().getTime(), event: 'snippetRun' }); var f = t.getElementsByTagName( o )[0], e = t.createElement(o); e.async = !0; e.dataset.namespace = "paypal_sdk"; e.src = 'https://www.paypal.com/sdk/js?components=shopping&client-id=' + i; f.parentNode.insertBefore(e, f); })(window, document, 'script', 'shoppingDDL', 'AU7kkFMn3BFZcexbHND2uDWokuqqYIm3RRTNDgKKMxTn5yWzDcnvcFE6rew0P65pqHFRmXTgDC7AGSVT'); var pptag = { send: function(e, p) { shoppingDDL.push({ event: e, payload: p }); }, set: function(s) { shoppingDDL.push({ set: s }); } }; pptag.send('page_view', { page_type: 'PRODUCT_PAGE_VIEW', }) </script> <script> function initialize(i, t) { var e; i.getElementById(t) ? initFreshChat() : ( (e = i.createElement("script")).id = t, e.async = !0, e.src = "https://wchat.freshchat.com/js/widget.js", e.onload = initFreshChat, i.head.appendChild(e) ) } function initiateCall() { setTimeout(function () { initialize(document, "freshchat-js-sdk"); }, 2000); } function initFreshChat() { if (window.fcWidget !== undefined) { window.fcWidget.init({ token: "8f45d611-cca6-497c-b3db-a29cc93d7273", host: "https://wchat.freshchat.com", }); } } function openChat() { if (window.fcWidget.isLoaded() === true) { window.fcWidget.track('open_campaign', { trigger: true, }) } } if (document.readyState === 'complete') { initiateCall(); } else { window.addEventListener ? window.addEventListener("load", initiateCall, false) : window.attachEvent("load", initiateCall, false); } </script> <link rel="manifest" href="/firebase-manifest.json"/> <div wire:snapshot="{&quot;data&quot;:{&quot;uuid&quot;:&quot;019380b4-24ca-7e7f-b647-46dc278d1ff2&quot;,&quot;showPushEngageCustomPrompt&quot;:false,&quot;listeners&quot;:[[&quot;tokenRetrieved&quot;],{&quot;s&quot;:&quot;arr&quot;}],&quot;params&quot;:[{&quot;uuid&quot;:&quot;019380b4-24ca-7e7f-b647-46dc278d1ff2&quot;,&quot;hj&quot;:&quot;1&quot;,&quot;gae&quot;:&quot;1&quot;,&quot;eppss&quot;:&quot;1&quot;,&quot;sndv&quot;:&quot;1&quot;,&quot;ipp&quot;:&quot;1&quot;,&quot;sruep&quot;:&quot;1&quot;,&quot;sale&quot;:&quot;bf2024&quot;,&quot;ppdf&quot;:&quot;credit&quot;,&quot;_&quot;:&quot;7190,2624,4288,5829,6102,6108,6341,7035,7399&quot;,&quot;sntp&quot;:&quot;0&quot;},{&quot;s&quot;:&quot;arr&quot;}],&quot;brand&quot;:&quot;derila&quot;},&quot;memo&quot;:{&quot;id&quot;:&quot;CX1QWxxPyMA5sOSyBYtr&quot;,&quot;name&quot;:&quot;web-push-token&quot;,&quot;path&quot;:&quot;\/&quot;,&quot;method&quot;:&quot;GET&quot;,&quot;children&quot;:[],&quot;scripts&quot;:[],&quot;assets&quot;:[],&quot;errors&quot;:[],&quot;locale&quot;:&quot;en&quot;},&quot;checksum&quot;:&quot;85e50e74d1cb9486cbaa4c541d06e53bda753babaeee50417edd58620838de8a&quot;}" wire:effects="{&quot;listeners&quot;:[&quot;tokenRetrieved&quot;]}" wire:id="CX1QWxxPyMA5sOSyBYtr"> <link rel="modulepreload" href="https://get-derila.com/build/assets/firebase-9cd3834a.js" /><script type="module" src="https://get-derila.com/build/assets/firebase-9cd3834a.js" data-navigate-track="reload"></script> <script> document.addEventListener('alpine:init', function () { document.addEventListener('DOMContentLoaded', function () { let pushLocalCp = localStorage.getItem('pushcp-019380b4-24ca-7e7f-b647-46dc278d1ff2'); let notificationRequest = window.Notification && Notification.permission !== "denied" && Notification.permission !== "granted"; showNotification(); function showNotification() { let pushLocal = localStorage.getItem('push-019380b4-24ca-7e7f-b647-46dc278d1ff2'); if (!window.Notification) { return; } Notification.requestPermission() .then(async (permission) => { if (permission !== "granted") { return; } window.getFirebaseToken(window.firebaseMessaging, {vapidKey: 'BLWJQmUJwG7dktRIbr636SlG571NSxbnyngqLvC6qqXBUYMVK2sw-LiE7UjTcZ41atkn28vqnqf2N2nBfOL-_IQ'}) .then((currentToken) => { if (currentToken && (!pushLocal || pushLocal < Date.now())) { Livewire.dispatch('tokenRetrieved', {token: currentToken}); localStorage.setItem('push-019380b4-24ca-7e7f-b647-46dc278d1ff2', Date.now() + (1000 * 60 * 60 * 24)) } }) .catch(() => {}) } ) } }); }) </script> </div> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Organization", "name": "Derila", "url": "https://get-derila.com/derila/product?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0", "logo": "https://get-derila.com/images/logos/derila.svg", "sameAs": [ "https://www.facebook.com/people/Derila/100083287444891/", "https://www.instagram.com/derilaofficial/" ] } </script> <script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "name": "Derila Memory Foam Pillow ", "image": [ "https://get-derila.com/theme/derila/product/google-graph-1.jpg", "https://get-derila.com/theme/derila/product/google-graph-2.jpg", "https://get-derila.com/theme/derila/product/google-graph-3.jpg" ], "description": "The Derila pillow has been meticulously crafted to maintain spinal alignment during sleep, thereby widening the airway and enhancing the flow of air into the lungs. Consequently, this leads to increased oxygen intake and a reduction in snoring, offering a more peaceful night’s sleep.", "sku": "5060694460837", "brand": { "@type": "Brand", "name": "Derila" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.0, "reviewCount": 159 }, "offers": { "@type": "AggregateOffer", "offerCount": 4, "lowPrice": 39.95, "highPrice": 99.96, "priceCurrency": "USD" }, "additionalProperty": [ { "@type": "PropertyValue", "name": "Weight", "value": "750 g" }, { "@type": "PropertyValue", "name": "Size", "value": "50 x 30 x 10 cm" }, { "@type": "PropertyValue", "name": "Materials", "value": "Memory Foam" }, { "@type": "PropertyValue", "name": "Fill", "value": "Memory Foam" }, { "@type": "PropertyValue", "name": "Shape", "value": "Moulded Pillow" }, { "@type": "PropertyValue", "name": "Recommended use", "value": "Back / Side Sleepers" }, { "@type": "PropertyValue", "name": "Special features", "value": "Removable / Washable Pillow Cover" } ] } </script> </head> <body class="derila-product-15 bf2024 " > <div class="tw-max-w-[2000px] tw-mx-auto tw-text-base"> <div id="sticky-middle-banner" data-normalize-bp="sm" data-normalize-height="sale-banners" class="bf-2024-bg tw-sticky tw-top-[-1px] tw-z-[20] tw-py-2"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <div class="bf2024-pp-text-color tw-flex tw-justify-center sm:tw-justify-between tw-items-center tw-flex-col sm:tw-flex-row"> <div class="tw-flex tw-items-center tw-max-w-[100%] sm:tw-max-w-[70%] sm:tw-w-full"> <p x-data="{ fullyDisplay: false }" x-init="document.addEventListener('DOMContentLoaded', () => { setTimeout(() => { this.fullyDisplay = true}, 1000) })" @font-size-adjusted="fullyDisplay = true" x-bind:class="fullyDisplay ? '!tw-opacity-100' : ''" data-ignore-child-elements="true" class="tw-opacity-0 tw-flex-grow-1 tw-flex-basis-0 tw-min-w-0 tw-flex-shrink-1 tw-whitespace-nowrap tw-font-[900] tw-italic tw-text-[26px] tw-mb-0 tw-me-1 md:tw-me-3"> BLACK FRIDAY <span class="tw-font-[500]">SALE</span> </p> <div class="tw-flex tw-flex-shrink-0 tw-items-center"> <svg class="flip-rtl tw-h-[22.4px] sm:tw-h-[36.8px] tw-relative tw-end-[-5px] sm:tw-end-[-2px]" viewBox="182.0893 224.42 19.1997 42" width="19.1997" height="42" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M 199.544 224.42 C 197.713 224.42 195.988 225.261 194.889 226.69 L 183.02 242.128 C 181.779 243.742 181.779 245.962 183.02 247.578 L 194.889 264.15 C 195.988 265.579 197.713 266.42 199.544 266.42 L 201.289 266.42 L 201.289 224.42 L 199.544 224.42 Z M 192.566 247.132 C 193.851 247.132 194.893 246.116 194.893 244.863 C 194.893 243.609 193.851 242.593 192.566 242.593 C 191.28 242.593 190.238 243.609 190.238 244.863 C 190.238 246.116 191.28 247.132 192.566 247.132 Z" fill="black" transform="matrix(1, 0, 0, 1, 0, -2.842170943040401e-14)"/> </svg> <div class="tw-rounded-e-[5px] tw-pe-3 tw-ps-1 tw-py-1 sm:tw-py-2 tw-bg-black tw-flex tw-items-center"> <p class="bf2024-badge-color tw-whitespace-nowrap tw-w-full tw-text-[18px] sm:tw-text-[26px] tw-italic tw-leading-[0.8] tw-mb-0"> <span class="tw-text-white tw-font-bold tw-text-[16px] sm:tw-text-[24px]">70%</span> OFF </p> </div> </div> </div> <div data-time="900000" data-include-hours="true" class="sm:tw-max-w-[30%] md:tw-max-w-[unset] countdown tw-flex tw-items-center tw-text-xs md:tw-text-base tw-mt-2 sm:tw-mt-0 sm:tw-ms-4"> <p class="tw-whitespace-nowrap tw-flex-grow-1 tw-flex-basis-0 tw-min-w-0 tw-flex-shrink-1 tw-font-[600] tw-text-xs md:tw-text-sm tw-mb-0"> Time Left </p> <div class="tw-ms-3 tw-font-bold tw-flex tw-items-center tw-justify-center tw-rounded tw-bg-[#FFFFFF66] tw-w-[22px] tw-h-[22px] md:tw-h-[42px] md:tw-w-[42px] flip-rtl--only-parent"> <span class="hours-1">0</span> <span class="hours-2">0</span> </div> <svg class="tw-mx-1 md:tw-mx-2" width="3" height="12" viewBox="0 0 3 12" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="1.5" cy="1.5" r="1.5" fill="black" fill-opacity="0.17"/> <circle cx="1.5" cy="10.5" r="1.5" fill="black" fill-opacity="0.17"/> </svg> <div class="tw-font-bold tw-flex tw-items-center tw-justify-center tw-rounded tw-bg-[#FFFFFF66] tw-w-[22px] tw-h-[22px] md:tw-h-[42px] md:tw-w-[42px] flip-rtl--only-parent"> <span class="minutes-1">0</span> <span class="minutes-2">0</span> </div> <svg class="tw-mx-1 md:tw-mx-2" width="3" height="12" viewBox="0 0 3 12" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="1.5" cy="1.5" r="1.5" fill="black" fill-opacity="0.17"/> <circle cx="1.5" cy="10.5" r="1.5" fill="black" fill-opacity="0.17"/> </svg> <div class="tw-font-bold tw-flex tw-items-center tw-justify-center tw-rounded tw-bg-[#FFFFFF66] tw-w-[22px] tw-h-[22px] md:tw-h-[42px] md:tw-w-[42px] flip-rtl--only-parent"> <span class="seconds-1">0</span> <span class="seconds-2">0</span> </div> </div> </div> </div> </div> <div class="tw-text-black"> <div data-ga-section="1 - Navigation" class="tw-bg-white tw-py-1"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <nav id="nav" x-data="{ expanded: false }"> <div class="tw-py-s8 md:tw-py-s16 tw-text-base lg:tw-text-sm xl:tw-text-base tw-uppercase"> <div class="tw-flex tw-align-center tw-items-center tw-flex-nowrap"> <div class="tw-grow lg:tw-grow-0 tw-text-center lg:tw-text-left"> <a class="tw-inline-block tw-cursor-pointer tw-text-inherit" href="https://get-derila.com/?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" data-ga-category="Element" data-ga-click="1 - Navigation (Logo)" > <img class="tw-max-w-[105px] md:tw-max-w-[150px] tw-max-h-[40px] tw-inline-block" aria-label="Derila logo, go to homepage" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/images/logos/derila.svg" alt="Derila" > </a> </div> <div class="tw-grow tw-hidden lg:tw-flex tw-items-center tw-justify-end tw-px-0"> <div> <a data-wrap-text href="https://get-derila.com/derila/tracking?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-ml-6 tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (/derila/tracking)" > Track order </a> </div> <div> <a data-wrap-text href="https://support.derila.com/en/support/tickets/new" class="tw-ml-6 tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (Link 2)" > Contact </a> </div> <div> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-text-inherit tw-inline-block tw-font-bold tw-transition-all hover:tw-scale-105 tw-underline hover:tw-underline tw-leading-tight tw-ml-6" data-ga-category="Call To Action" data-ga-click="1 - Navigation (CTA)" > Order Now! </a> </div> </div> <div class="tw-grow-0 lg:tw-hidden tw-flex tw-justify-end" @click="expanded = ! expanded"> <span x-show="!expanded" class="tw-w-8 tw-cursor-pointer" data-ga-category="Element" data-ga-click="1 - Navigation (Hamburger Open)"> <svg class="tw-w-[inherit]" viewBox="0 0 50 23" width="30" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor"><rect y="0" width="50" height="3"/><rect y="10" width="50" height="3"/><rect y="20" width="50" height="3"/></g></svg> </span> <span x-show="expanded" class="tw-w-8 tw-cursor-pointer" style="display: none;" data-ga-category="Element" data-ga-click="1 - Navigation (Hamburger Close)"> <svg class="tw-w-[inherit]" x="0px" y="0px" width="30" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xmlns="http://www.w3.org/2000/svg" xml:space="preserve"><g fill="currentColor"><path d="M10,39.4c0,8.8,2.9,14.7,8.8,20.6l441.4,441.4L21.8,940c-5.9,5.9-8.8,11.8-8.8,20.6c0,5.9,2.9,14.7,8.8,20.6c5.9,5.9,11.8,8.8,20.6,8.8c5.9,0,14.7-2.9,20.6-8.8l438.5-438.5L940,981.2c5.9,5.9,11.8,8.8,20.6,8.8c5.9,0,14.7-2.9,20.6-8.8c2.9-5.9,8.8-14.7,8.8-20.6c0-8.8-5.9-14.7-8.8-20.6L542.7,501.5L981.2,60c5.9-5.9,8.8-11.8,8.8-20.6c0-5.9-2.9-14.7-8.8-20.6c-5.9-2.9-11.8-8.8-20.6-8.8c-5.9,0-14.7,5.9-20.6,8.8L501.5,460.3L60,18.8C54.1,15.9,48.2,10,39.4,10c-5.9,0-14.7,5.9-20.6,8.8C13,24.7,10,33.5,10,39.4z"/></g></svg> </span> </div> </div> <div class="d-flex tw-align-center tw-items-center"> <div x-show="expanded" x-collapse style="display:none;" class="tw-grow tw-basis-full tw-text-center lg:tw-hidden tw-pb-2" > <div class="tw-mt-5 tw-flex tw-justify-center"> <a data-wrap-text href="https://get-derila.com/derila/tracking?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (/derila/tracking)" > Track order </a> </div> <div class="tw-mt-5 tw-flex tw-justify-center"> <a data-wrap-text href="https://support.derila.com/en/support/tickets/new" class="tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (Link 2)" > Contact </a> </div> <div class="tw-mt-5 tw-flex tw-justify-center"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-text-inherit tw-inline-block tw-font-bold tw-transition-all hover:tw-scale-105 tw-underline hover:tw-underline tw-leading-tight" data-ga-category="Call To Action" data-ga-click="1 - Navigation (CTA)" > Order Now! </a> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="tw-bg-no-repeat tw-bg-cover tw-bg-[0_20%] md:tw-bg-center tw-bg-no-repeat flip-rtl" style="background-image: var(--header-bg);" > <div class="tw-pb-s40 md:tw-py-s40 tw-bg-cover tw-bg-no-repeat tw-bg-center tw-flex tw-flex-col tw-justify-center tw-text-white flip-rtl !tw-py-s16 xl:!tw-py-s80 md:!tw-pb-s40" data-ga-section="2 - Header" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <div class="tw-flex tw-justify-center md:tw-justify-start "> <div> <span class="tw-hidden md:tw-inline tw-pb-32 md:tw-pb-0 !tw-block tw-text-center"> <div class="tw-relative"> <img height="72" width="456" class="tw-max-w-[150px] tw-mx-auto tw-mb-2" src="https://get-derila.com/assets/theme/gadgets/stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=3528047370d8167955a8fbdd4a4c70d5" alt="Stars" > </div> <h1 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 tw-mb-6 tw-font-bold tw-text-h3-mob md:tw-text-h3"> Derila - America’s #1 Pillow Perfected </h1> </span> <div class="tw-text-center tw-flex tw-flex-col tw-items-center"> <p class="my-0 tw-font-bold tw-text-[26px] sm:tw-text-[34px] ">Discount</p> <p class="tw-my-0 tw-font-bold tw-relative tw-leading-none tw-text-[115px] "> <nobr>-70%</nobr> </p> <p class="tw-text-h2-mob md:tw-text-h3-mob tw-font-bold tw-mb-s16 tw-leading-tight tw-capitalize ">Last Chance</p> <p data-wrap-text class="tw-my-0 tw-text-lg sm:tw-text-[22px] tw-mb-s16 ">Last day to Grab this BIG Promo</p> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="btn btn-primary btn-medium tw-mb-s12" data-ga-category="Call To Action" data-ga-click="2 - Header (CTA)" > Get -70% Discount </a> <p class="tw-text-note1 tw-font-bold tw-mb-0 "> - Only € 39,95 vs. € 133,17 (retail) <br> - Available Online Only <br> - While supplies last </p> </div> </div> </div> </div> </div> <div class="md:tw-pt-s16 md:tw-pb-s40 flip-rtl"> <div class="tw-text-white tw-overflow-hidden"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <div class="tw-hidden md:tw-block tw-py-5"> <div class="tw-flex tw-items-center tw-justify-center md:-tw-mx-5 xl:-tw-mx-10"> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 1)" > <img height="98" width="99" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/1.png?q=80&amp;fm=png&amp;fit=max&amp;s=bd013b29987852dff213ebfa767a879f" alt="NBC logo" > </div> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 2)" > <img height="96" width="96" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/2.png?q=80&amp;fm=png&amp;fit=max&amp;s=7b318e55355394694e983eb882cbd9d4" alt="ABC logo" > </div> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 3)" > <img height="93" width="115" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/3.png?q=80&amp;fm=png&amp;fit=max&amp;s=e4437ba6c8fe04bbf8af206447a7a126" alt="Fox News logo" > </div> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 4)" > <img height="110" width="110" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/4.png?q=80&amp;fm=png&amp;fit=max&amp;s=dc4b14e8f8bb7a0e8cd2e2670e6bb9d1" alt="USA Today logo" > </div> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 5)" > <img height="49" width="167" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/5.png?q=80&amp;fm=png&amp;fit=max&amp;s=ce7b844b66c5997c97b338510fcafd1c" alt="CBS logo" > </div> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 6)" > <img height="70" width="170" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/6.png?q=80&amp;fm=png&amp;fit=max&amp;s=f4ee446e9bcb86cef8945dde120612d8" alt="Digital Journal logo" > </div> <div class="tw-max-w-[17%] md:tw-px-5 xl:tw-px-10" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 7)" > <img height="32" width="232" class="tw-max-h-[60px]" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/7.png?q=80&amp;fm=png&amp;fit=max&amp;s=62a83b379a5bcb9622216f5f0e105e0f" alt="Benzinga logo" > </div> </div> <p class="tw-text-base tw-mb-0 tw-mt-10 tw-text-center">Ergonomic Pillow Benefits Mentioned On</p> </div> <div class="md:tw-hidden tw-py-5"> <!-- Class tw-hidden prevents flickering --> <div x-cloak class="tw-cursor-grab tw-hidden " x-data="SC_674bf4c5df18b"> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 1)" > <img height="98" width="99" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/1.png?q=80&amp;fm=png&amp;fit=max&amp;s=bd013b29987852dff213ebfa767a879f" alt="NBC logo" > </div> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 2)" > <img height="96" width="96" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/2.png?q=80&amp;fm=png&amp;fit=max&amp;s=7b318e55355394694e983eb882cbd9d4" alt="ABC logo" > </div> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 3)" > <img height="93" width="115" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/3.png?q=80&amp;fm=png&amp;fit=max&amp;s=e4437ba6c8fe04bbf8af206447a7a126" alt="Fox News logo" > </div> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 4)" > <img height="110" width="110" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/4.png?q=80&amp;fm=png&amp;fit=max&amp;s=dc4b14e8f8bb7a0e8cd2e2670e6bb9d1" alt="USA Today logo" > </div> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 5)" > <img height="49" width="167" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/5.png?q=80&amp;fm=png&amp;fit=max&amp;s=ce7b844b66c5997c97b338510fcafd1c" alt="CBS logo" > </div> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 6)" > <img height="70" width="170" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/6.png?q=80&amp;fm=png&amp;fit=max&amp;s=f4ee446e9bcb86cef8945dde120612d8" alt="Digital Journal logo" > </div> <div class="tw-basis-1/2 tw-flex tw-justify-center tw-items-center" data-ga-category="Element" data-ga-click="2 - Header (Carousel image 7)" > <img height="32" width="232" class="tw-max-h-[50px] tw-max-w-[140px] tw-w-auto tw-px-5" src="https://get-derila.com/assets/theme/derila/product-9/header/channels/7.png?q=80&amp;fm=png&amp;fit=max&amp;s=62a83b379a5bcb9622216f5f0e105e0f" alt="Benzinga logo" > </div> </div> </div> <p class="tw-block tw-mb-s24 md:tw-hidden tw-text-sm tw-text-center">Ergonomic Pillow Benefits Mentioned On:</p> </div> </div> </div> </div> <div class="tw-bg-[#F2F2F2] tw-py-14 tw-text-black tw-overflow-hidden" data-ga-section="3 - Deep sleep"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <h2 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 tw-relative tw-z-[2] tw-font-bold"> Best Deep Sleep Pillow. Period. </h2> <p class="tw-text-base tw-mb-0 tw-mt-6 tw-text-center tw-relative tw-z-[2] "> Imagine coming back home after seemingly endless day at work to your Dream pillow. <span class="tw-hidden md:tw-inline "> Its soft, cloud-like memory foam and silky cover is where you find solace! It's more than a pillow, it is a sanctuary for your body and mind. </span> </p> <div class="tw-h-[300px] md:tw-h-[400px] sm:tw-my-12"> <div class="tw-hidden lg:tw-block tw-w-full tw-h-full"> <div data-ga-category="Element" data-ga-click="3 - Deep sleep (Video Block Wrapper)" class="tw-w-full tw-h-full"> <div id="video-placeholder" class="tw-relative tw-cursor-pointer tw-flex tw-relative tw-z-[1]" data-ga-category="Element" data-ga-click="3 - Deep sleep (How to/See it in action Video)"> </div> <video class="tw-w-full tw-w-full tw-h-full tw-scale-[2] lg:tw-scale-[2.5] tw-relative tw-z-[1]" autoplay loop playsinline muted preload="none" id="video" style=""> <source src=https://media.enence.com/theme/derila/product-9/new-derila-video-desktop.mp4 type="video/mp4"> </video> </div> </div> <div class="lg:tw-hidden tw-w-full tw-h-full"> <div data-ga-category="Element" data-ga-click="3 - Deep sleep (Video Block Wrapper)" class="tw-w-full tw-h-full"> <div id="video-placeholder" class="tw-relative tw-cursor-pointer tw-flex tw-relative tw-z-[1]" data-ga-category="Element" data-ga-click="3 - Deep sleep (How to/See it in action Video)"> </div> <video class="tw-w-full tw-w-full tw-h-full tw-scale-[2] lg:tw-scale-[2.5] tw-relative tw-z-[1]" autoplay loop playsinline muted preload="none" id="video" style=""> <source src=https://media.enence.com/theme/derila/product-9/new-derila-video.mp4 type="video/mp4"> </video> </div> </div> </div> <div class="tw-flex tw-justify-center tw-relative tw-z-[2]"> <div class="tw-flex tw-flex-col md:tw-hidden"> <p class="tw-text-h4 tw-mb-0 tw-font-bold tw-text-center">ENJOY THE BENEFITS</p> <div class="tw-flex tw-items-center tw-pb-2"> <div class="tw-px-3"> <svg width="18" height="19" viewBox="0 0 18 19" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="9" cy="9.5" r="9" fill="#1AC70E"/> <path d="M12.6029 6L8.26478 10.8659L5.39709 7.64954L4 9.21635L6.8677 12.4329L8.26478 14L9.66168 12.4329L14 7.56708L12.6029 6Z" fill="white"/> </svg> </div> <p class="tw-text-base tw-mb-0">Relieves shoulder muscles</p> </div> <div class="tw-flex tw-items-center tw-pb-2"> <div class="tw-px-3"> <svg width="18" height="19" viewBox="0 0 18 19" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="9" cy="9.5" r="9" fill="#1AC70E"/> <path d="M12.6029 6L8.26478 10.8659L5.39709 7.64954L4 9.21635L6.8677 12.4329L8.26478 14L9.66168 12.4329L14 7.56708L12.6029 6Z" fill="white"/> </svg> </div> <p class="tw-text-base tw-mb-0">Protects the cervical spine</p> </div> <div class="tw-flex tw-items-center tw-pb-2"> <div class="tw-px-3"> <svg width="18" height="19" viewBox="0 0 18 19" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="9" cy="9.5" r="9" fill="#1AC70E"/> <path d="M12.6029 6L8.26478 10.8659L5.39709 7.64954L4 9.21635L6.8677 12.4329L8.26478 14L9.66168 12.4329L14 7.56708L12.6029 6Z" fill="white"/> </svg> </div> <p class="tw-text-base tw-mb-0">Provides head support for side sleeping</p> </div> <div class="tw-flex tw-items-center tw-pb-2"> <div class="tw-px-3"> <svg width="18" height="19" viewBox="0 0 18 19" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="9" cy="9.5" r="9" fill="#1AC70E"/> <path d="M12.6029 6L8.26478 10.8659L5.39709 7.64954L4 9.21635L6.8677 12.4329L8.26478 14L9.66168 12.4329L14 7.56708L12.6029 6Z" fill="white"/> </svg> </div> <p class="tw-text-base tw-mb-0">Supports your neck</p> </div> </div> <div class="tw-mx-0 tw-max-w-full tw-hidden md:tw-flex tw-flex-row tw-mt-10 tw-gap-4 lg:tw-gap-10"> <div class="tw-basis-1/3"> <div class="tw-flex tw-items-center tw-gap-3"> <p class="tw-text-base tw-mb-0 tw-font-bold">NECK SUPPORT AREA</p> </div> <ul class="tw-list-disc ltr:tw-ml-10 rtl:tw-mr-10 ltr:md:tw-ml-4 rlt:md:tw-mr-4 tw-mt-2"> <li class="tw-text-base tw-mb-0">Relieves shoulder muscles</li> <li class="tw-text-base tw-mb-0">Relaxes your head</li> <li class="tw-text-base tw-mb-0">Protects the cervical spine</li> </ul> </div> <div class="tw-basis-1/3"> <div class="tw-flex tw-items-center tw-gap-3"> <p class="tw-text-base tw-mb-0 tw-font-bold">SOFT FACIAL AREA</p> </div> <ul class="tw-list-disc ltr:tw-ml-10 rtl:tw-mr-10 ltr:md:tw-ml-4 rlt:md:tw-mr-4 tw-mt-2"> <li class="tw-text-base tw-mb-0">Alleviates facial pressure</li> <li class="tw-text-base tw-mb-0">Provides neck and head support for side sleeping</li> </ul> </div> <div class="tw-basis-1/3"> <div class="tw-flex tw-items-center tw-gap-3"> <p class="tw-text-base tw-mb-0 tw-font-bold">SHOULDER FIXATION AREA</p> </div> <ul class="tw-list-disc ltr:tw-ml-10 rtl:tw-mr-10 ltr:md:tw-ml-4 rlt:md:tw-mr-4 tw-mt-2"> <li class="tw-text-base tw-mb-0">Fit shoulder shape</li> <li class="tw-text-base tw-mb-0">Supports your neck</li> <li class="tw-text-base tw-mb-0">Relieves pressure</li> </ul> </div> </div> </div> </div> </div> <div id="sticky-middle-banner" data-normalize-bp="sm" data-normalize-height="sale-banners" class="tw-flex tw-items-center bf-2024-bg tw-sticky tw-top-[-1px] tw-z-[20] tw-py-s16 md:tw-py-s8"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <div class="tw-flex tw-justify-center sm:tw-justify-between tw-items-center tw-flex-col sm:tw-flex-row"> <img class="tw-hidden lg:tw-block tw-max-w-[132px] tw-max-h-[44px]" src="https://get-derila.com/images/logos/black/derila.svg" alt="" > <div class="bf2024-pp-text-color tw-mb-2 sm:tw-mb-0 tw-flex tw-items-center tw-max-w-[100%] sm:tw-max-w-[60%] sm:tw-w-full tw-justify-center lg:tw-ms-3 sm:tw-me-3"> <p x-data="{ fullyDisplay: false }" x-init="document.addEventListener('DOMContentLoaded', () => { setTimeout(() => { this.fullyDisplay = true}, 1000) })" @font-size-adjusted="fullyDisplay = true" x-bind:class="fullyDisplay ? '!tw-opacity-100' : ''" data-ignore-child-elements="true" class="tw-opacity-0 tw-flex-grow-1 tw-flex-basis-0 tw-min-w-0 tw-flex-shrink-1 tw-whitespace-nowrap tw-font-[900] tw-italic tw-text-[26px] tw-mb-0 tw-me-1 md:tw-me-3"> BLACK FRIDAY <span class="tw-font-[500]">SALE</span> </p> <div class="tw-flex tw-flex-shrink-0 tw-items-center"> <svg class="flip-rtl tw-h-[22.4px] sm:tw-h-[36.8px] tw-relative tw-end-[-5px] sm:tw-end-[-2px]" viewBox="182.0893 224.42 19.1997 42" width="19.1997" height="42" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M 199.544 224.42 C 197.713 224.42 195.988 225.261 194.889 226.69 L 183.02 242.128 C 181.779 243.742 181.779 245.962 183.02 247.578 L 194.889 264.15 C 195.988 265.579 197.713 266.42 199.544 266.42 L 201.289 266.42 L 201.289 224.42 L 199.544 224.42 Z M 192.566 247.132 C 193.851 247.132 194.893 246.116 194.893 244.863 C 194.893 243.609 193.851 242.593 192.566 242.593 C 191.28 242.593 190.238 243.609 190.238 244.863 C 190.238 246.116 191.28 247.132 192.566 247.132 Z" fill="black" transform="matrix(1, 0, 0, 1, 0, -2.842170943040401e-14)"/> </svg> <div class="tw-rounded-e-[5px] tw-pe-3 tw-ps-1 tw-py-1 sm:tw-py-2 tw-bg-black tw-flex tw-items-center"> <p class="bf2024-badge-color tw-whitespace-nowrap tw-w-full tw-text-[18px] sm:tw-text-[26px] tw-italic tw-leading-[0.8] tw-mb-0"> <span class="tw-text-white tw-font-bold tw-text-[16px] sm:tw-text-[24px]">70%</span> OFF </p> </div> </div> </div> <a data-ga-category="Call To Action" data-ga-click="3 - Deep sleep (CTA)" class="btn !tw-leading-tight btn-primary btn- ignore btn-black tw-text-white !tw-py-s8 tw-max-w-[290px] lg:tw-max-w-[290px] tw-whitespace-nowrap !tw-bg-none" href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> <span data-adjust-font class="tw-w-full tw-block"> Order Now! </span> </a> </div> </div> </div> <div class="tw-pt-[90px] tw-pb-10 md:tw-py-20 tw-text-white tw-bg-[50%_0%] tw-bg-cover sm:tw-bg-[35%_center] lg:tw-bg-[44%_center] tw-bg-no-repeat flip-rtl " data-srcset="https://get-derila.com/theme/derila/product-9/your-opinion/bg-mobile.jpg 0, https://get-derila.com/theme/derila/product-9/your-opinion/bg.jpg 768" data-ga-section="4 - Your opinion" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-grid md:tw-grid-cols-2 md:tw-grid-flow-col tw-gap-x-s40 tw-gap-y-s24 !tw-gap-y-0 md:!tw-gap-y-6 tw-relative tw-z-[1] flip-rtl" > <div class="md:tw-hidden"> <img height="343" width="422" class="md:tw-hidden tw-max-w-[140px] tw-w-full tw-ml-auto tw-mb-2" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;422&quot; height=&quot;343&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/your-opinion/badge.png?q=80&amp;fm=png&amp;fit=max&amp;s=6d8c2de0f1558209a88e911ce3e0c029" alt="Users&#039; choice badge" > <h2 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h2-mob md:tw-text-h2 tw-font-bold tw-text-h2-mob md:tw-text-h1 tw-mb-2" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> Your Opinion Matters the Most </h2> </div> <div class=" "> </div> <div class="tw-grid tw-content-center tw-gap-y-6 md:tw-col-span-1 "> <div class="tw-hidden md:tw-block wb-word"> <img height="343" width="422" class="md:tw-hidden tw-max-w-[140px] tw-w-full tw-ml-auto tw-mb-2" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;422&quot; height=&quot;343&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/your-opinion/badge.png?q=80&amp;fm=png&amp;fit=max&amp;s=6d8c2de0f1558209a88e911ce3e0c029" alt="Users&#039; choice badge" > <h2 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h2-mob md:tw-text-h2 tw-font-bold tw-text-h2-mob md:tw-text-h1 tw-mb-2" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> Your Opinion Matters the Most </h2> </div> <div class="tw-text-center md:tw-text-left"> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0 !tw-text-left"> At Derila, we take pride in crafting ergonomic pillows that transform the way our customers experience sleep. Our commitment to quality and comfort is reflected in the fact that 8 out of 10 of our clients not only prefer our Derila ergonomic pillow but also choose to never return to their old ones after making the switch. </p> <p class="md:tw-hidden tw-text-base tw-mb-0 !tw-text-left"> At Derila, we take pride in crafting orthopedic pillows that transform the way our customers experience sleep. </p> <div class="tw-flex tw-flex-col lg:tw-flex-row tw-items-center tw-gap-8 tw-mt-5 lg:tw-mt-0 "> <a href="#reviews" class="tw-rounded-lg tw-border tw-border-white tw-text-white tw-font-bold tw-p-3 tw-max-w-fit tw-text-center" data-ga-category="Link" data-ga-click="4 - Your opinion (Link)" > CHECK OUR HAPPY CUSTOMERS </a> <img height="343" width="422" class="tw-hidden md:tw-block tw-max-w-[140px] tw-w-full" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;422&quot; height=&quot;343&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/your-opinion/badge.png?q=80&amp;fm=png&amp;fit=max&amp;s=6d8c2de0f1558209a88e911ce3e0c029" alt="Users&#039; choice badge" > </div> </div> </div> </div> </div> <div class="tw-py-10 md:tw-py-20 tw-text-black" data-ga-section="5 - Old pillow revolution"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <h2 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 tw-hidden md:tw-block tw-mb-10 tw-font-bold"> How We Revolutionized The Good Old Pillow </h2> </div> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-grid md:tw-grid-cols-2 md:tw-grid-flow-col tw-gap-x-s40 tw-gap-y-s24 tw-relative" > <div class="md:tw-hidden"> <h3 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 ltr:md:!tw-text-left tw-mb-0 tw-font-bold"> No More Pain In The Morning </h3> </div> <div class="md:tw-order-1 "> <img height="607" width="814" class="" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;814&quot; height=&quot;607&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/revolutionized/right.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=75ea1a508095d75b37e04b0a1ad25af8" alt="Neck pain" > </div> <div class="tw-grid tw-content-center tw-gap-y-6 md:tw-col-span-1 "> <div class="tw-hidden md:tw-block wb-word"> <h3 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 ltr:md:!tw-text-left tw-mb-0 tw-font-bold"> No More Pain In The Morning </h3> </div> <img height="556" width="534" class="tw-absolute tw-start-[5%] md:tw-start-0 tw-top-[-2%] md:tw-top-0 tw-max-w-[95px] md:tw-max-w-[355px] tw-z-[-1]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;534&quot; height=&quot;556&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/revolutionized/number.png?q=80&amp;fm=png&amp;fit=max&amp;s=f0f6b5888f089183d7ff9a723042dac0" alt="" > <p class="tw-text-base tw-mb-0"> Some experts say that neck pain is natural and is caused by poor posture during the day like working too long at a computer. We don't agree! Here at Derila we aim towards improving peoples lives. That is why we spent years in development to create one of the most technically advanced ergonomic memory foam pillows. </p> <div class="tw-text-center md:tw-text-left"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="5 - Old pillow revolution (CTA)" > Get -70% Discount </a> </div> </div> </div> </div> <div class="tw-bg-cover tw-bg-[center_0] md:tw-bg-center tw-bg-no-repeat tw-pt-10 md:tw-pt-20 tw-text-black" data-srcset="https://get-derila.com/theme/derila/product-9/ultimate-deep/bg-mobile.jpg 0, https://get-derila.com/theme/derila/product-9/ultimate-deep/bg.jpg 768" data-ga-section="6 - Ultimate deep sleep" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-relative" > <img height="555" width="534" class="tw-absolute tw-start-[5%] md:tw-start-0 tw-top-[-2%] md:tw-top-0 tw-max-w-[95px] md:tw-max-w-[355px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;534&quot; height=&quot;555&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/ultimate-deep/number.png?q=80&amp;fm=png&amp;fit=max&amp;s=d62b10b8442fc512abe2ac49bbfc3478" alt="" > <div class="tw-flex tw-flex-col md:tw-flex-row tw-gap-8 tw-relative"> <div class="md:tw-basis-6/12 tw-self-center"> <h3 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h1-mob md:tw-text-h1 tw-mb-8 tw-font-bold" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> Ultimate Deep Sleep Pillow </h3> <p class="tw-text-base tw-mb-s24">By offering proper alignment and pressure relief, our pillow helps alleviate common sleep disruptors like neck pain and discomfort, enabling users to remain in deep sleep stages for longer periods. </p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-s24">The result is a more restorative and rejuvenating sleep experience, leaving you feeling energized and refreshed when you wake up in the morning.</p> <div x-data="{ open: false }" class="tw-text-base md:tw-hidden"> <p x-show="!open" @click="open = true" class="tw-mb-0 tw-font-bold tw-cursor-pointer"> Read more... </p> <div x-show="open" class="tw-text-base"> <p class="tw-mb-0">The result is a more restorative and rejuvenating sleep experience, leaving you feeling energized and refreshed when you wake up in the morning.</p> </div> </div> </div> <div class="md:tw-basis-6/12 md:tw-self-end"> <div class="tw-mx-auto tw-relative tw-max-w-[420px]"> <img height="969" width="627" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;627&quot; height=&quot;969&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/ultimate-deep/phone.png?q=80&amp;fm=png&amp;fit=max&amp;s=adaa20a4de40fa5cc6801a5e9515c9e1" alt="Sleep score summary" > <div x-data="{ count: 0, observer: null, pulse: false, timeout: null }" x-init=" observer = new IntersectionObserver(function(entries) { if(entries[0].isIntersecting) { // set a timeout to check after 500ms timeout = setTimeout(function() { if(entries[0].isIntersecting) { // Check again after 500ms var interval = setInterval(function() { count++; if(count >= 97) { clearInterval(interval); pulse = true; setTimeout(function() { pulse = false; }, 1500); } }, 31); observer.disconnect(); } }, 500); } else { clearTimeout(timeout); // clear the timeout if the element is not in view } }, { threshold: 0.1 }); observer.observe($el); " class="tw-absolute tw-top-[42%] tw-font-bold tw-left-1/2 tw-translate-x-[-50%] tw-text-white" > <div :class="{ 'scale-pulse': pulse }"> <span x-text="count" class="tw-text-[65px] lg:tw-text-[85px] tw-leading-[1px]"></span> </div> </div> </div> </div> </div> </div> </div> <div data-ga-section="7 - Derila vs standard pillows"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-text-black tw-my-10 tw-relative" > <h3 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 tw-mb-10 tw-font-bold"> Derila vs Standard Pillows </h3> <div class="tw-grid tw-gap-7 tw-grid-cols-1 md:tw-grid-cols-2 "> <div class="md:tw-basis-0 md:tw-flex-grow md:tw-max-w-full tw-relative"> <img height="571" width="861" class="tw-w-full" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;861&quot; height=&quot;571&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-2/back-1.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;0=1&amp;s=5fedc276ba30725b5e160a23febd7ae6" alt="Standard pillow support" > <h4 data-wrap-text class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-mt-6 tw-mb-2 tw-relative tw-z-[1]" auto-align="auto-align"> Standard pillows </h4> <p class="tw-text-base tw-mb-s24 md:tw-mb-0 tw-relative tw-z-[1]"> Traditional pillows aren&#039;t built for support, meaning your spine ends up in an unnatural curve – often resulting in pain, discomfort and poor-quality sleep. </p> </div> <div class="md:tw-basis-0 md:tw-flex-grow md:tw-max-w-full tw-relative"> <img height="571" width="861" class="tw-w-full" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;861&quot; height=&quot;571&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-2/back-2.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;0=1&amp;s=3629a8d85fe246d8459c36aed22f0002" alt="Derila support pillow" > <h4 data-wrap-text class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-mt-6 tw-mb-2 tw-relative tw-z-[1]" auto-align="auto-align"> Derila support pillow </h4> <p class="tw-text-base tw-mb-s24 md:tw-mb-0 tw-relative tw-z-[1] !tw-mb-0"> Derila uses advanced memory foam technology to straighten and support your spine in its natural position, reducing pain and improving sleep. </p> </div> </div> <img height="629" width="600" class="tw-absolute tw-start-[5%] md:tw-start-0 tw-top-[-2%] md:tw-top-[15%] tw-max-w-[95px] md:tw-max-w-[355px] tw-z-[-1] md:tw-z-[0]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;600&quot; height=&quot;629&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/standard-pillows/number.png?q=80&amp;fm=png&amp;fit=max&amp;s=116876a8da0135e4eb010dcbf640812e" alt="" > </div> </div> <div class="tw-bg-[#F2F2F2] tw-py-10 md:tw-py-20 tw-text-black" data-ga-section="8 - Designed for all"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-relative" > <img height="555" width="588" class="tw-absolute tw-start-[5%] md:tw-start-[unset] md:tw-end-0 lg:tw-end-[5%] md:tw-top-[-5%] md:tw-top-0 tw-max-w-[95px] md:tw-max-w-[355px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;588&quot; height=&quot;555&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/designed-for-all/number.png?q=80&amp;fm=png&amp;fit=max&amp;s=a054a27100ec907cb7ae22bec946bc0b" alt="" > <div class="tw-flex tw-flex-col md:tw-flex-row tw-gap-3 md:tw-gap-14 tw-relative"> <div class="tw-order-2 md:tw-order-1 tw-basis-1/2 tw-flex tw-flex-col tw-text-center tw-font-bold"> <div class="tw-basis-1/2 tw-flex tw-flex-col md:tw-flex-row md:tw-gap-4 tw-text-base"> <div> <img height="428" width="545" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;545&quot; height=&quot;428&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/designed-for-all/1.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=22bcb4e0e11cd10bd61d2a1a0f777b31" alt="Derila back sleeping" > <p class="tw-my-4">Back</p> </div> <div> <img height="428" width="545" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;545&quot; height=&quot;428&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/designed-for-all/2.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=56244300f33adaa80878a77bcaca7646" alt="Derila side sleeping" > <p class="tw-my-4">Side</p> </div> </div> <div class="tw-basis-1/2 tw-flex tw-flex-col md:tw-flex-row md:tw-gap-4 tw-text-base"> <div> <img height="428" width="545" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;545&quot; height=&quot;428&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/designed-for-all/3.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=1c8d3084586d6ceec48d97dd873ee427" alt="Derila stomach sleeping" > <p class="tw-my-4 md:tw-mb-0">Stomach</p> </div> <div> <img height="428" width="545" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;545&quot; height=&quot;428&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/designed-for-all/4.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=277f536cfb52bdfad07c8f8606b8d8ab" alt="Derila ever-changing sleeping" > <p class="tw-my-4 md:tw-mb-0">Ever-changing</p> </div> </div> <div class="md:tw-hidden tw-text-center tw-mt-5"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="8 - Designed for all (CTA)" > Get -70% Discount </a> </div> </div> <div class="tw-order-1 md:tw-order-2 tw-basis-1/2 tw-self-center"> <h3 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h1-mob md:tw-text-h1 tw-font-bold tw-mb-2" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> Designed For All Sleeping Positions </h3> <p class="tw-text-base tw-mb-s24 tw-mt-3"> Here At Derila we dedicated an exhaustive two-year journey to engineer the perfect pillow catering to all sleeping positions. Tirelessly researching and testing, we harnessed cutting-edge technology to create a versatile pillow that seamlessly adapts to the individual needs of every sleeper. </p> <div class="tw-hidden md:tw-block"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="8 - Designed for all (CTA)" > Get -70% Discount </a> </div> </div> </div> </div> </div> <div class="tw-py-10 md:tw-py-20 tw-text-black" data-ga-section="9 - Stop snoring now"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-grid md:tw-grid-cols-2 md:tw-grid-flow-col tw-gap-x-s40 tw-gap-y-s24 tw-relative" > <div class="md:tw-hidden"> <h3 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 ltr:md:!tw-text-left tw-mb-0 tw-font-bold"> Stop Snoring Today </h3> </div> <div class="md:tw-order-1 "> <img height="607" width="814" class="" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;814&quot; height=&quot;607&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/stop-snoring/right.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=f559f7a20770b03fb1c9248cbc9ceb9e" alt="Standard pillow snoring" > </div> <div class="tw-grid tw-content-center tw-gap-y-6 md:tw-col-span-1 "> <div class="tw-hidden md:tw-block wb-word"> <h3 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 ltr:md:!tw-text-left tw-mb-0 tw-font-bold"> Stop Snoring Today </h3> </div> <img height="740" width="784" class="tw-absolute tw-start-[5%] md:tw-start-0 tw-top-[-5%] md:tw-top-0 tw-max-w-[95px] md:tw-max-w-[355px] tw-z-[-1]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;784&quot; height=&quot;740&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/stop-snoring/number.png?q=80&amp;fm=png&amp;fit=max&amp;s=d119f68de88862617ed10c0a556160ac" alt="" > <p class="tw-text-base tw-mb-0">8 out of 10 of our customers felt a significant reduction or completely stopped snoring! How? Frequently, snoring arises due to the constriction of the airway resulting from specific sleeping positions, causing the respiratory tissues to vibrate audibly during inhalation and exhalation, resulting in disruptive snoring sounds.</p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0">The Derila pillow has been meticulously crafted to maintain spinal alignment during sleep, thereby widening the airway and enhancing the flow of air into the lungs. Consequently, this leads to increased oxygen intake and a reduction in snoring, offering a more peaceful night’s sleep.</p> <div x-data="{ open: false }" class="tw-text-base md:tw-hidden"> <p x-show="!open" @click="open = true" class="tw-mb-0 tw-font-bold tw-cursor-pointer"> Read more... </p> <div x-show="open" class="tw-text-base"> <p class="tw-mb-0">The Derila pillow has been meticulously crafted to maintain spinal alignment during sleep, thereby widening the airway and enhancing the flow of air into the lungs. Consequently, this leads to increased oxygen intake and a reduction in snoring, offering a more peaceful night’s sleep.</p> </div> </div> </div> </div> </div> <div class="tw-py-10 md:tw-py-20 tw-text-white tw-bg-[50%_20%] tw-bg-cover md:tw-bg-[71%_center] tw-bg-no-repeat flip-rtl" data-srcset="https://get-derila.com/theme/derila/product-9/memory-foam/bg-mobile.jpg 0, https://get-derila.com/theme/derila/product-9/memory-foam/bg.jpg 768" data-ga-section="10 - Memory foam" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-grid md:tw-grid-cols-2 md:tw-grid-flow-col tw-gap-x-s40 tw-gap-y-s24 !tw-gap-y-0 md:!tw-gap-y-6 tw-relative flip-rtl" > <div class="md:tw-hidden"> <h2 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 ltr:md:!tw-text-left tw-mb-52 md:tw-mb-0 tw-font-bold"> Memory Foam is The New Standard </h2> </div> <div class="md:tw-order-1 "> </div> <div class="tw-grid tw-content-center tw-gap-y-6 md:tw-col-span-1 "> <div class="tw-hidden md:tw-block wb-word"> <h2 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 ltr:md:!tw-text-left tw-mb-52 md:tw-mb-0 tw-font-bold"> Memory Foam is The New Standard </h2> </div> <p class="tw-text-base tw-mb-0"> An ergonomic memory foam pillow stands as the best option for a good night's sleep due to its remarkable ability to provide customized support and comfort. </p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0">Derila's memory foam material adapts to the unique contours of your head and neck, ensuring proper spinal alignment and reducing pressure points.</p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0"> Derila’s ergonomic design not only promotes healthier sleep postures but also enhances blood circulation, making it an excellent choice for those seeking nights comfort. </p> <div x-data="{ open: false }" class="tw-text-base md:tw-hidden"> <p x-show="!open" @click="open = true" class="tw-mb-0 tw-font-bold tw-cursor-pointer"> Read more... </p> <div x-show="open" class="tw-text-base"> <p class="">Derila&#039;s memory foam material adapts to the unique contours of your head and neck, ensuring proper spinal alignment and reducing pressure points.</p> <p class="tw-mb-0">Derila’s orthopedic design not only promotes healthier sleep postures but also enhances blood circulation, making it an excellent choice for those seeking nights comfort.</p> </div> </div> <div class="tw-text-center md:tw-text-left"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="10 - Memory foam (CTA)" > Get -70% Discount </a> </div> </div> </div> </div> <div class="tw-py-10 md:tw-py-20 tw-text-black" data-ga-section="11 - You asked we delivered"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-relative" > <div class="tw-flex tw-flex-col md:tw-flex-row tw-gap-3 md:tw-gap-14"> <h2 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h1-mob md:tw-text-h1 md:tw-hidden tw-mb-2 tw-font-bold" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> You Asked We Delivered </h2> <div class="tw-basis-1/2 md:tw-flex md:tw-flex-col md:tw-justify-center" x-data="{ isStandard: true }"> <div class="md:tw-hidden tw-font-bold tw-text-center"> <img height="297" width="706" class="tw-max-w-[80%] tw-mx-auto tw-mt-3 tw-mb-6" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;706&quot; height=&quot;297&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/you-asked/3-mob.png?q=80&amp;fm=png&amp;fit=max&amp;s=c83dbe3bc923e10d0c5d55221badb037" alt="Derila support pillow" > <p class="tw-mb-0"> <span x-show="isStandard"> Width: 50 cm / 19.6 in<br> Height: 30 cm / 11.8 in </span> <span x-show="!isStandard"> Width: 60 cm / 23.6 in<br> Height: 34 cm / 13.3 in </span> </p> </div> <div class="tw-hidden md:tw-block tw-mb-s16 lg:tw-h-[250px]"> <div class="tw-flex tw-flex-col tw-items-center lg:tw-max-w-[400px] tw-mx-auto" x-show="isStandard"> <div class="tw-flex tw-flex-row tw-items-center tw-text-center tw-justify-center"> <img height="342" width="734" class="" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;734&quot; height=&quot;342&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/you-asked/1-standard.png?q=80&amp;fm=png&amp;fit=max&amp;s=fb58432d7164acc7034a61e96001ab44" alt="Pillow Standard Size 50x30cm" > <div class="[writing-mode:vertical-rl] [text-orientation:mixed]"> <p class="tw-text-xs tw-font-bold tw-mb-0 tw-whitespace-nowrap"> 30 cm / 11.8 in </p> </div> </div> <p class="tw-text-xs tw-font-bold tw-mb-0"> 50 cm / 19.6 in </p> </div> <div class="tw-flex tw-flex-col tw-items-center lg:tw-max-w-[500px] tw-mx-auto" x-show="!isStandard"> <div class="tw-flex tw-flex-row tw-items-center tw-text-center tw-justify-center"> <img height="342" width="734" class="" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;734&quot; height=&quot;342&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/you-asked/1-standard.png?q=80&amp;fm=png&amp;fit=max&amp;s=fb58432d7164acc7034a61e96001ab44" alt="Pillow Plus Size 60x34cm" > <div class="[writing-mode:vertical-rl] [text-orientation:mixed]"> <p class="tw-text-xs tw-font-bold tw-mb-0 tw-whitespace-nowrap"> 34 cm / 13.3 in </p> </div> </div> <p class="tw-text-xs tw-font-bold tw-mb-0"> 60 cm / 23.6 in </p> </div> </div> <div class="tw-flex tw-flex-col lg:tw-flex-row tw-text-[#AFAFAF] tw-text-sm tw-gap-3 lg:tw-gap-8 lg:tw-mt-6"> <button x-bind:class="{ '!tw-bg-[#E3E3E3] tw-font-bold !tw-border-[#E3E3E3] !tw-text-black tw-disabled': isStandard }" @click="isStandard = true" x-bind:disabled="isStandard" class="tw-bg-white tw-p-2 tw-border tw-rounded-lg tw-border-[#D4D4D4] tw-min-w-[205px] tw-max-w-[290px] tw-w-full tw-mx-auto tw-mt-4 lg:tw-mt-0 tw-text-base" > Standard </button> <button x-bind:class="{ '!tw-bg-[#E3E3E3] tw-font-bold !tw-border-[#E3E3E3] !tw-text-black tw-disabled': !isStandard }" @click="isStandard = false" x-bind:disabled="!isStandard" class="tw-bg-white tw-p-2 tw-border tw-rounded-lg tw-border-[#D4D4D4] tw-min-w-[205px] tw-max-w-[290px] tw-w-full tw-mx-auto tw-text-base" > Plus Size </button> </div> </div> <div class="tw-order-1 md:tw-order-2 tw-basis-1/2"> <h2 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h1-mob md:tw-text-h1 tw-hidden md:tw-block tw-font-bold" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> You Asked We Delivered </h2> <p class="tw-text-base tw-mt-5 tw-mb-0">You can now choose preferred Derila size!</p> <p class="tw-text-base tw-my-5"> Whether you choose the Plus size or regular Derila ergonomic pillow, you can still enjoy the same high-quality materials, hypoallergenic properties, and ergonomic support that are the hallmarks of our brand. </p> <div class="tw-text-center md:tw-text-left"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="11 - You asked we delivered (CTA)" > Get -70% Discount </a> </div> </div> </div> </div> </div> <div class="tw-bg-[#F4F4F4] tw-py-10 tw-text-black"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <h2 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 tw-mb-6 tw-font-bold"> See It In Action! </h2> <div data-ga-category="Element" data-ga-click="11 - You asked we delivered (Video Block Wrapper)" class="tw-w-full tw-h-full"> <div class="youtube-video" data-id="CS816z11ZwI" data-ga-category="Element" data-ga-click="11 - You asked we delivered (How to Video)"> <img height="839" width="1511" tabindex="0" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;1511&quot; height=&quot;839&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/see-it-in-action/thumbnail.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=b4f5085a6bf5cbe90ee25af59d98bb27" alt="See it in action Derila video thumbnail" > <div class="play-button"></div> <div class="iframe-container" style="display:none;"></div> </div> </div> </div> </div> <div class="tw-py-s40 md:tw-py-s80 md:tw-pb-0 md:tw-pt-s40 tw-bg-cover tw-bg-no-repeat tw-bg-center tw-overflow-hidden" data-srcset="https://get-derila.com/theme/derila/product-9/tiktok/bg-mobile.jpg 0, https://get-derila.com/theme/derila/product-9/tiktok/bg.jpg 768" data-ga-section="12 - TikTok banner" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <div class="tw-flex tw-flex-col md:tw-flex-row tw-gap-8 tw-text-white"> <div class="md:tw-basis-6/12 tw-order-2 md:tw-order-1 tw-self-center md:tw-self-end"> <div class="tw-mx-auto tw-relative tw-max-w-[234px] sm:tw-max-w-[294px] sm:tw-rounded-[49px] tw-overflow-hidden tw-rounded-[38px] tw-relative tw-mb-0 md:tw-mb-[-25%] tw-z-[1]"> <img height="969" width="627" class="tw-relative tw-z-[1]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;627&quot; height=&quot;969&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/tiktok/phone-mobile.png?q=80&amp;fm=png&amp;fit=max&amp;s=aba4ab7fc26ccd845a9a805988da24b4" alt="Mobile phone" > <div data-ga-category="Element" data-ga-click="12 - TikTok banner (Video Block Wrapper)" class="tw-w-full tw-h-full"> <div id="video-placeholder" class="tw-relative tw-cursor-pointer tw-flex" data-ga-category="Element" data-ga-click="12 - TikTok banner (How to/See it in action Video)"> </div> <video class="tw-w-full tw-absolute tw-top-1/2 tw-translate-y-[-51%] tw-rounded-t-[60px] !tw-scale-[1.3] tw-max-w-[98%] lazyload" autoplay loop playsinline muted preload="none" id="video" style=""> <source data-src=https://media.enence.com/theme/derila/product-9/tiktok/derila.mp4 type="video/mp4"> </video> </div> <img height="969" width="627" class="tw-absolute tw-w-[84%] tw-top-[52%] tw-left-1/2 -tw-translate-x-1/2 -tw-translate-y-1/2" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;627&quot; height=&quot;969&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/emura/product-2/tiktok-screen-icons.png?q=80&amp;fm=png&amp;fit=max&amp;s=9ae6541439e6e6a18f3a71985380442f" alt="TikTok screen icons" > </div> <div class="md:tw-hidden tw-mt-8 tw-text-center"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="12 - TikTok banner (CTA)" > Get -70% Discount </a> </div> </div> <div class="tw-order-1 md:tw-order-2 md:tw-basis-6/12 tw-self-center"> <img height="121" width="414" class="tw-w-full tw-max-w-[150px] sm:tw-max-w-[220px] md:tw-max-w-[260px] tw-mx-auto md:tw-mx-0" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;414&quot; height=&quot;121&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/tiktok/tiktok.png?q=80&amp;fm=png&amp;fit=max&amp;s=709bf6546d8d7293fbbf7c3d9ff04aa1" alt="TikTok logo" > <div class="md:tw-pb-s40 tw-text-center md:tw-text-start"> <h3 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h3-mob md:tw-text-h3 tw-text-h3-mob md:tw-text-h3 tw-my-6 tw-break-all tw-font-bold"> #MadeMeBuyIt </h3> <p class="tw-text-base tw-hidden md:tw-block tw-mb-5"> Discover the pillow that TikTok users can't stop talking about! Our ergonomic memory foam pillows have taken the TikTok community by storm, with countless users raving about their transformative sleep experiences. If you're ready to upgrade your sleep quality and join the trend, our pillows are the perfect choice. </p> <p class="tw-text-base md:tw-hidden tw-text-center">Discover the pillow that TikTok users can't stop talking about! </p> <div class="tw-hidden md:tw-block"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="12 - TikTok banner (CTA)" > Get -70% Discount </a> </div> </div> </div> </div> </div> </div> <div id="reviews" class="tw-pb-s40 md:tw-pb-s80 tw-text-black"> <div class="tw-py-s40 md:tw-pt-s80"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-mb-s40" > <h2 data-wrap-text class="tw-text-center tw-text-h1-mob md:tw-text-h1 tw-mb-4 tw-font-bold"> Trusted by 11.000+ people </h2> <div class="tw-grid tw-grid-cols-[auto_1fr_auto] tw-gap-s16 tw-font-bold md:tw-px-[61px] tw-mb-s32"> <p class="tw-text-base tw-mb-0">Excellent</p> <div class="tw-bg-[#F2F2F5] tw-min-h-[28px]"> <div class="tw-bg-[#00B67A] tw-min-h-[28px]" style="width: 74%"></div> </div> <p class="tw-text-base tw-mb-0">74%</p> <p class="tw-text-base tw-mb-0">Great</p> <div class="tw-bg-[#F2F2F5] tw-min-h-[28px]"> <div class="tw-bg-[#89CC41] tw-min-h-[28px]" style="width: 23%"></div> </div> <p class="tw-text-base tw-mb-0">23%</p> <p class="tw-text-base tw-mb-0">Average</p> <div class="tw-bg-[#F2F2F5] tw-min-h-[28px]"> <div class="tw-bg-[#B9B9B9] tw-min-h-[28px]" style="width: 3%"></div> </div> <p class="tw-text-base tw-mb-0">3%</p> </div> </div> <div data-ga-section="13 - Customer Reviews"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" x-data="initReviews" > <div class="sm:tw-columns-2 md:tw-columns-3 tw-gap-6"> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': true || showAllReviewsForMobile, 'tw-hidden': false && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 1)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Nancy S. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> I have spent hundreds on specialty pillows and this one by far is the best!! I was skeptical when I unpacked it as it appears a bit flimsy and light but I have slept soundly each night for a week so far and bought 2 more!! </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/1.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=a70dde1c5553186848dc683896012636" alt="Nancy S. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': true || showAllReviewsForMobile, 'tw-hidden': false && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 2)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Hellen L. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> I really love my pillow. I experienced bad sleeping positions before, and headache and shoulder pains every day. Now- 4.day with my new pillow, I have slept like a baby and my pain is gone. </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/2.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=8f933be46e01c11b6fa70e3cf5e96463" alt="Hellen L. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': true || showAllReviewsForMobile, 'tw-hidden': false && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 3)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Faye C. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> Great product! After letting it retain the original shape; I started using it the next night. Have been using it every night since then and each of those nights; had the best sleep in a long time. </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/3.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=dc68816388f00969bb97b84c25464475" alt="Faye C. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 4)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Gretchen F. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> An excellent shape; head and cervical spine come to rest; the neck pain is gradually saying goodbye! I have no hesitation in recommending this pillow! Thanks very much! </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/4.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=48342073d8314d645ff70c8f893abf72" alt="Gretchen F. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 5)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Matt D. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> The structure of the fitting is ideal, not too hard not too soft! i love the concept of reverse laying on the head cause it helps my neck out greatly! i’m gonna buy another one for my wife since she liked it too! great product ! </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/5.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=5858711c9b8a6549ddd64395a6e2b96c" alt="Matt D. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 6)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Dilip G. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> I love my pillow. Its the right shape and its not hard like the other special pillows - its nice and soft. </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/6.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=282df5ae8d9de6d9b1d96f9158d1d7ee" alt="Dilip G. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 7)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Bonnie B. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> This is the best pillow I have found for cervical spine issues and a short neck… it’s super soft, yet gives support to the neck. I have tried many different and very expensive pillows , and this is the best… I got the regular standard size which is perfect for me… </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/7.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=0e522f817183813315b9b7d51a8e8587" alt="Bonnie B. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 8)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Dan O. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> The pillow helped me a lot. The big advantage is actually the beveled center of the pillow. I have tried different neck support pillows but this one really helped. It is firm, but still so soft that side sleepers are very comfortable. </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/11.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=6ad3989404574466dda7c6597d41c0ee" alt="Dan O. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 9)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> William P. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> I bought Derila pillow for myself as I love memory foam pillows and derila is great, but strange thing happened as my cat loves it so much and it became her favourite place to lay down. Do you have any plans to launch product line for pets? </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/12.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=99d226901137ebab2ec56692499be030" alt="William P. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 10)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Elizabeth M. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> I`ve had many pillows where I`ve been told this is the best, but my head and neck disagreed. I`ve found the best with the Derila pillow. It`s ergonomic and skin-friendly, just great! </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/10.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=bf096e3bfca7bb5c1a5ee544f22ebe0b" alt="Elizabeth M. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] tw-mb-6" :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 11)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Kelley O. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> Absolutely love this pillow! Have tried so many different pillows but all caused me to continue with neck pain in the mornings, but NOT this one. Sleeping the best I have in years. </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/8.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=def0aa7ab825b7428479a610f756f2de" alt="Kelley O. Derila pillow review" > </div> </div> <div class="tw-p-3 md:tw-p-4 tw-border tw-rounded-md tw-break-inside-avoid !tw-border-0 tw-text-black tw-bg-[#F8F8F8] " :class="{ 'tw-block': false || showAllReviewsForMobile, 'tw-hidden': true && !showAllReviewsForMobile, 'md:tw-block': true }" data-ga-category="Element" data-ga-click="13 - Customer Reviews (Review - 12)" > <div class="tw-grid tw-grid-cols-[auto_1fr] tw-gap-x-s8 tw-items-center"> <div class="tw-mb-2 tw-font-bold"> Soni M. </div> </div> <div class="tw-mb-2 tw-flex tw-text-[#1AC70E]"> <svg class="tw-h-[1.2em]" fill="none" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"><path d="m22 11-2.44-2.77996.34-3.68-3.61-.82-1.89-3.180001-3.4 1.460001-3.4-1.460001-1.89 3.180001-3.61.81.34 3.68-2.44 2.78996 2.44 2.78-.34 3.69 3.61.82 1.89 3.18 3.4-1.47 3.4 1.46 1.89-3.18 3.61-.82-.34-3.68zm-13 5-4-4 1.41-1.41 2.59 2.58 6.59-6.58996 1.41 1.42z" fill="currentColor"/></svg> <span class="tw-ms-3"> Verified Customer </span> </div> <img height="29" width="182" class="tw-mb-2 tw-object-contain tw-h-5 tw-object-left" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;182&quot; height=&quot;29&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/green-stars.png?q=80&amp;fm=png&amp;fit=max&amp;s=a3f84ba434eed3132c22370cd575e4e0" alt="Trustpilot stars" > <p class="tw-mb-0"> I stopped snoring the first night I used my pillow and have not snored since. My husband says best money ever spent on a pillow. I wanted to buy another one as a gift but they ran out of stock. Waiting for black friday deals now. Overall great product. I would recommend. </p> <div class="tw-w-3/4 tw-pt-2"> <img height="280" width="279" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;279&quot; height=&quot;280&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/assets/theme/derila/product-9/reviews/9.jpg?q=80&amp;fm=jpg&amp;fit=max&amp;s=de71b9d06845b478d49f15575f609746" alt="Soni M. Derila pillow review" > </div> </div> </div> <div class="tw-flex md:tw-hidden tw-justify-center tw-rounded tw-py-2 tw-mt-5 tw-mx-10 tw-items-center tw-bg-[#00B67A] tw-text-white" :class="showAllReviewsForMobile ? 'tw-hidden' : 'tw-block'" x-on:click="showMore()" > <p class="tw-uppercase tw-text-base tw-mb-0 tw-font-bold">Load More</p> </div> </div> </div> </div> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-text-center" > <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="13 - Customer Reviews (CTA)" > Get -70% Discount </a> </div> </div> <div class="tw-py-10 tw-bg-[#F4F4F4] tw-text-black"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <div class="tw-flex tw-flex-col" data-ga-section="14 - Frequently Asked Questions"> <h2 data-wrap-text class="tw-text-center tw-text-h2-mob md:tw-text-h2 !tw-text-h2-mob md:!tw-text-h1 tw-mb-6 tw-font-bold"> Frequently Asked Questions </h2> <div class="tw-flex tw-flex-col tw-basis-full" data-ga-category="Element" data-ga-click="14 - Frequently Asked Questions (Question1)" > <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> <div class="tw-flex tw-items-start tw-my-1 tw-cursor-pointer" x-data="{ open: false }" x-on:click="open = !open" x-on:keydown.enter="open = !open" tabindex="0" > <svg x-show="!open" class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.70725 7.37824C7.51972 7.56571 7.26541 7.67103 7.00025 7.67103C6.73508 7.67103 6.48077 7.56571 6.29325 7.37824L0.636247 1.72124C0.540736 1.62899 0.464554 1.51865 0.412145 1.39665C0.359735 1.27464 0.33215 1.14342 0.330996 1.01064C0.329843 0.877863 0.355144 0.746184 0.405425 0.623287C0.455706 0.500391 0.52996 0.388738 0.623853 0.294846C0.717746 0.200953 0.829396 0.1267 0.952292 0.0764189C1.07519 0.026138 1.20687 0.000836522 1.33965 0.00199034C1.47243 0.00314417 1.60365 0.0307305 1.72565 0.0831395C1.84766 0.135548 1.958 0.21173 2.05025 0.307241L7.00025 5.25724L11.9502 0.307241C12.1388 0.125083 12.3915 0.0242886 12.6536 0.026567C12.9158 0.0288455 13.1667 0.134014 13.3521 0.319422C13.5375 0.504831 13.6426 0.755643 13.6449 1.01784C13.6472 1.28004 13.5464 1.53264 13.3642 1.72124L7.70725 7.37824Z" fill="currentColor"/></svg> <svg x-show="open" x-cloak class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="9" viewBox="0 0 14 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.29324 0.964043C6.48077 0.776572 6.73508 0.671257 7.00024 0.671257C7.26541 0.671257 7.51971 0.776572 7.70724 0.964043L13.3642 6.62104C13.4598 6.71329 13.5359 6.82363 13.5883 6.94564C13.6408 7.06764 13.6683 7.19886 13.6695 7.33164C13.6706 7.46442 13.6453 7.5961 13.5951 7.719C13.5448 7.84189 13.4705 7.95355 13.3766 8.04744C13.2827 8.14133 13.1711 8.21558 13.0482 8.26587C12.9253 8.31615 12.7936 8.34145 12.6608 8.34029C12.5281 8.33914 12.3968 8.31155 12.2748 8.25915C12.1528 8.20674 12.0425 8.13055 11.9502 8.03504L7.00024 3.08504L2.05024 8.03504C1.86164 8.2172 1.60904 8.318 1.34684 8.31572C1.08464 8.31344 0.833831 8.20827 0.648423 8.02286C0.463015 7.83745 0.357846 7.58664 0.355568 7.32445C0.353289 7.06225 0.454083 6.80965 0.636242 6.62104L6.29324 0.964043Z" fill="currentColor"/></svg> <div> <p class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-flex tw-items-center tw-mb-0"> How long will it take to receive my Derila Pillow? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > At Derila we strive to provide a seamless shopping experience for our valued customers. We are proud to operate from several strategically located main warehouses in the USA, Canada, Europe, and Asia. On average, you can expect to receive your order within approximately 4 to 5 working days from the date of purchase. Please keep in mind that shipping times may vary slightly depending on your specific location and any unforeseen circumstances, but rest assured, we work diligently to get your ergonomic memory foam pillow to you as quickly as possible. If you have any further questions or need assistance with your order, our customer support team is always here to help! </p> </div> </div> </div> <div class="tw-flex tw-flex-col tw-basis-full" data-ga-category="Element" data-ga-click="14 - Frequently Asked Questions (Question2)" > <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> <div class="tw-flex tw-items-start tw-my-1 tw-cursor-pointer" x-data="{ open: false }" x-on:click="open = !open" x-on:keydown.enter="open = !open" tabindex="0" > <svg x-show="!open" class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.70725 7.37824C7.51972 7.56571 7.26541 7.67103 7.00025 7.67103C6.73508 7.67103 6.48077 7.56571 6.29325 7.37824L0.636247 1.72124C0.540736 1.62899 0.464554 1.51865 0.412145 1.39665C0.359735 1.27464 0.33215 1.14342 0.330996 1.01064C0.329843 0.877863 0.355144 0.746184 0.405425 0.623287C0.455706 0.500391 0.52996 0.388738 0.623853 0.294846C0.717746 0.200953 0.829396 0.1267 0.952292 0.0764189C1.07519 0.026138 1.20687 0.000836522 1.33965 0.00199034C1.47243 0.00314417 1.60365 0.0307305 1.72565 0.0831395C1.84766 0.135548 1.958 0.21173 2.05025 0.307241L7.00025 5.25724L11.9502 0.307241C12.1388 0.125083 12.3915 0.0242886 12.6536 0.026567C12.9158 0.0288455 13.1667 0.134014 13.3521 0.319422C13.5375 0.504831 13.6426 0.755643 13.6449 1.01784C13.6472 1.28004 13.5464 1.53264 13.3642 1.72124L7.70725 7.37824Z" fill="currentColor"/></svg> <svg x-show="open" x-cloak class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="9" viewBox="0 0 14 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.29324 0.964043C6.48077 0.776572 6.73508 0.671257 7.00024 0.671257C7.26541 0.671257 7.51971 0.776572 7.70724 0.964043L13.3642 6.62104C13.4598 6.71329 13.5359 6.82363 13.5883 6.94564C13.6408 7.06764 13.6683 7.19886 13.6695 7.33164C13.6706 7.46442 13.6453 7.5961 13.5951 7.719C13.5448 7.84189 13.4705 7.95355 13.3766 8.04744C13.2827 8.14133 13.1711 8.21558 13.0482 8.26587C12.9253 8.31615 12.7936 8.34145 12.6608 8.34029C12.5281 8.33914 12.3968 8.31155 12.2748 8.25915C12.1528 8.20674 12.0425 8.13055 11.9502 8.03504L7.00024 3.08504L2.05024 8.03504C1.86164 8.2172 1.60904 8.318 1.34684 8.31572C1.08464 8.31344 0.833831 8.20827 0.648423 8.02286C0.463015 7.83745 0.357846 7.58664 0.355568 7.32445C0.353289 7.06225 0.454083 6.80965 0.636242 6.62104L6.29324 0.964043Z" fill="currentColor"/></svg> <div> <p class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-flex tw-items-center tw-mb-0"> What’s the best pillow for my sleep position? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > The Derila Memory Foam Ergonomic Pillow is the ultimate result of our extensive research and development efforts dedicated to perfecting a pillow that suits all sleeping positions. We understand that each person's sleep preferences vary, and our commitment to innovation led us to invest significant time and resources in designing a pillow that accommodates every need. Through rigorous testing and feedback from sleep experts, we've crafted a pillow that seamlessly adapts to your unique sleeping posture, ensuring optimal spinal alignment and reducing discomfort. With Derila, you're not just getting a pillow; you're experiencing the culmination of years of research and development dedicated to providing you with the best sleep possible. </p> </div> </div> </div> <div class="tw-flex tw-flex-col tw-basis-full" data-ga-category="Element" data-ga-click="14 - Frequently Asked Questions (Question3)" > <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> <div class="tw-flex tw-items-start tw-my-1 tw-cursor-pointer" x-data="{ open: false }" x-on:click="open = !open" x-on:keydown.enter="open = !open" tabindex="0" > <svg x-show="!open" class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.70725 7.37824C7.51972 7.56571 7.26541 7.67103 7.00025 7.67103C6.73508 7.67103 6.48077 7.56571 6.29325 7.37824L0.636247 1.72124C0.540736 1.62899 0.464554 1.51865 0.412145 1.39665C0.359735 1.27464 0.33215 1.14342 0.330996 1.01064C0.329843 0.877863 0.355144 0.746184 0.405425 0.623287C0.455706 0.500391 0.52996 0.388738 0.623853 0.294846C0.717746 0.200953 0.829396 0.1267 0.952292 0.0764189C1.07519 0.026138 1.20687 0.000836522 1.33965 0.00199034C1.47243 0.00314417 1.60365 0.0307305 1.72565 0.0831395C1.84766 0.135548 1.958 0.21173 2.05025 0.307241L7.00025 5.25724L11.9502 0.307241C12.1388 0.125083 12.3915 0.0242886 12.6536 0.026567C12.9158 0.0288455 13.1667 0.134014 13.3521 0.319422C13.5375 0.504831 13.6426 0.755643 13.6449 1.01784C13.6472 1.28004 13.5464 1.53264 13.3642 1.72124L7.70725 7.37824Z" fill="currentColor"/></svg> <svg x-show="open" x-cloak class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="9" viewBox="0 0 14 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.29324 0.964043C6.48077 0.776572 6.73508 0.671257 7.00024 0.671257C7.26541 0.671257 7.51971 0.776572 7.70724 0.964043L13.3642 6.62104C13.4598 6.71329 13.5359 6.82363 13.5883 6.94564C13.6408 7.06764 13.6683 7.19886 13.6695 7.33164C13.6706 7.46442 13.6453 7.5961 13.5951 7.719C13.5448 7.84189 13.4705 7.95355 13.3766 8.04744C13.2827 8.14133 13.1711 8.21558 13.0482 8.26587C12.9253 8.31615 12.7936 8.34145 12.6608 8.34029C12.5281 8.33914 12.3968 8.31155 12.2748 8.25915C12.1528 8.20674 12.0425 8.13055 11.9502 8.03504L7.00024 3.08504L2.05024 8.03504C1.86164 8.2172 1.60904 8.318 1.34684 8.31572C1.08464 8.31344 0.833831 8.20827 0.648423 8.02286C0.463015 7.83745 0.357846 7.58664 0.355568 7.32445C0.353289 7.06225 0.454083 6.80965 0.636242 6.62104L6.29324 0.964043Z" fill="currentColor"/></svg> <div> <p class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-flex tw-items-center tw-mb-0"> How do I wash my Derila pillow? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > Our pillows are made of all brand new materials that are produced specifically for your pillow, because of this, new pillows don't need to be washed right out of the box. If you do wish to wash, we ask that you follow these directions: <br/><br/> Removable Pillowcase <br/> To Wash: Wash in cold water, delicate cycle. Do not use fabric softener or bleach. To Dry: Tumble dry low. Make sure the cover is completely dry before use. <br/><br/> Inner Pillow Liner <br/> To Wash: Secure the zipper closed with a safety pin to ensure that it does not open/spill memory foam during the wash. Wash in cold water, delicate cycle. Do not use fabric softener or bleach.To Dry: Dry one pillow at a time. Tumble dry low until the inner pillow is completely dry before use. This may take several cycles and differs depending on your washer and dryer. </p> </div> </div> </div> <div class="tw-flex tw-flex-col tw-basis-full" data-ga-category="Element" data-ga-click="14 - Frequently Asked Questions (Question4)" > <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> <div class="tw-flex tw-items-start tw-my-1 tw-cursor-pointer" x-data="{ open: false }" x-on:click="open = !open" x-on:keydown.enter="open = !open" tabindex="0" > <svg x-show="!open" class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.70725 7.37824C7.51972 7.56571 7.26541 7.67103 7.00025 7.67103C6.73508 7.67103 6.48077 7.56571 6.29325 7.37824L0.636247 1.72124C0.540736 1.62899 0.464554 1.51865 0.412145 1.39665C0.359735 1.27464 0.33215 1.14342 0.330996 1.01064C0.329843 0.877863 0.355144 0.746184 0.405425 0.623287C0.455706 0.500391 0.52996 0.388738 0.623853 0.294846C0.717746 0.200953 0.829396 0.1267 0.952292 0.0764189C1.07519 0.026138 1.20687 0.000836522 1.33965 0.00199034C1.47243 0.00314417 1.60365 0.0307305 1.72565 0.0831395C1.84766 0.135548 1.958 0.21173 2.05025 0.307241L7.00025 5.25724L11.9502 0.307241C12.1388 0.125083 12.3915 0.0242886 12.6536 0.026567C12.9158 0.0288455 13.1667 0.134014 13.3521 0.319422C13.5375 0.504831 13.6426 0.755643 13.6449 1.01784C13.6472 1.28004 13.5464 1.53264 13.3642 1.72124L7.70725 7.37824Z" fill="currentColor"/></svg> <svg x-show="open" x-cloak class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="9" viewBox="0 0 14 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.29324 0.964043C6.48077 0.776572 6.73508 0.671257 7.00024 0.671257C7.26541 0.671257 7.51971 0.776572 7.70724 0.964043L13.3642 6.62104C13.4598 6.71329 13.5359 6.82363 13.5883 6.94564C13.6408 7.06764 13.6683 7.19886 13.6695 7.33164C13.6706 7.46442 13.6453 7.5961 13.5951 7.719C13.5448 7.84189 13.4705 7.95355 13.3766 8.04744C13.2827 8.14133 13.1711 8.21558 13.0482 8.26587C12.9253 8.31615 12.7936 8.34145 12.6608 8.34029C12.5281 8.33914 12.3968 8.31155 12.2748 8.25915C12.1528 8.20674 12.0425 8.13055 11.9502 8.03504L7.00024 3.08504L2.05024 8.03504C1.86164 8.2172 1.60904 8.318 1.34684 8.31572C1.08464 8.31344 0.833831 8.20827 0.648423 8.02286C0.463015 7.83745 0.357846 7.58664 0.355568 7.32445C0.353289 7.06225 0.454083 6.80965 0.636242 6.62104L6.29324 0.964043Z" fill="currentColor"/></svg> <div> <p class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-flex tw-items-center tw-mb-0"> Does it really stop the snoring? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > While we can't guarantee that our pillow will eliminate snoring for everyone, it's essential to understand that snoring can be caused by various factors. However, we've invested significant resources in designing our Derila ergonomic memory foam pillow, and we've received feedback from thousands of satisfied customers who have reported a reduction or even the complete resolution of their snoring issues. Our pillow's innovative design promotes proper spinal alignment and ensures comfortable sleep positions, which can contribute to a more peaceful night's rest. While individual results may vary, we're confident that our pillow can make a significant difference in addressing snoring concerns for many individuals. </p> </div> </div> </div> <div class="tw-flex tw-flex-col tw-basis-full" data-ga-category="Element" data-ga-click="14 - Frequently Asked Questions (Question5)" > <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> <div class="tw-flex tw-items-start tw-my-1 tw-cursor-pointer" x-data="{ open: false }" x-on:click="open = !open" x-on:keydown.enter="open = !open" tabindex="0" > <svg x-show="!open" class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.70725 7.37824C7.51972 7.56571 7.26541 7.67103 7.00025 7.67103C6.73508 7.67103 6.48077 7.56571 6.29325 7.37824L0.636247 1.72124C0.540736 1.62899 0.464554 1.51865 0.412145 1.39665C0.359735 1.27464 0.33215 1.14342 0.330996 1.01064C0.329843 0.877863 0.355144 0.746184 0.405425 0.623287C0.455706 0.500391 0.52996 0.388738 0.623853 0.294846C0.717746 0.200953 0.829396 0.1267 0.952292 0.0764189C1.07519 0.026138 1.20687 0.000836522 1.33965 0.00199034C1.47243 0.00314417 1.60365 0.0307305 1.72565 0.0831395C1.84766 0.135548 1.958 0.21173 2.05025 0.307241L7.00025 5.25724L11.9502 0.307241C12.1388 0.125083 12.3915 0.0242886 12.6536 0.026567C12.9158 0.0288455 13.1667 0.134014 13.3521 0.319422C13.5375 0.504831 13.6426 0.755643 13.6449 1.01784C13.6472 1.28004 13.5464 1.53264 13.3642 1.72124L7.70725 7.37824Z" fill="currentColor"/></svg> <svg x-show="open" x-cloak class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="9" viewBox="0 0 14 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.29324 0.964043C6.48077 0.776572 6.73508 0.671257 7.00024 0.671257C7.26541 0.671257 7.51971 0.776572 7.70724 0.964043L13.3642 6.62104C13.4598 6.71329 13.5359 6.82363 13.5883 6.94564C13.6408 7.06764 13.6683 7.19886 13.6695 7.33164C13.6706 7.46442 13.6453 7.5961 13.5951 7.719C13.5448 7.84189 13.4705 7.95355 13.3766 8.04744C13.2827 8.14133 13.1711 8.21558 13.0482 8.26587C12.9253 8.31615 12.7936 8.34145 12.6608 8.34029C12.5281 8.33914 12.3968 8.31155 12.2748 8.25915C12.1528 8.20674 12.0425 8.13055 11.9502 8.03504L7.00024 3.08504L2.05024 8.03504C1.86164 8.2172 1.60904 8.318 1.34684 8.31572C1.08464 8.31344 0.833831 8.20827 0.648423 8.02286C0.463015 7.83745 0.357846 7.58664 0.355568 7.32445C0.353289 7.06225 0.454083 6.80965 0.636242 6.62104L6.29324 0.964043Z" fill="currentColor"/></svg> <div> <p class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-flex tw-items-center tw-mb-0"> Do you have any plans to launch product line for pets? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > We're delighted to hear that our Derila pillow has brought joy to your family, including your beloved cat! While we currently don't have specific plans to launch a product line for pets, we're thrilled that our pillow has found such a cozy spot in your furry friend's heart. Our primary focus remains on providing top-quality ergonomic memory foam pillows for humans to enjoy a restful sleep experience. We appreciate your enthusiasm and the love your cat has shown for our product, and we'll certainly keep your feedback in mind as we continue to explore new possibilities. </p> </div> </div> </div> <div class="tw-flex tw-flex-col tw-basis-full" data-ga-category="Element" data-ga-click="14 - Frequently Asked Questions (Question6)" > <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> <div class="tw-flex tw-items-start tw-my-1 tw-cursor-pointer" x-data="{ open: false }" x-on:click="open = !open" x-on:keydown.enter="open = !open" tabindex="0" > <svg x-show="!open" class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.70725 7.37824C7.51972 7.56571 7.26541 7.67103 7.00025 7.67103C6.73508 7.67103 6.48077 7.56571 6.29325 7.37824L0.636247 1.72124C0.540736 1.62899 0.464554 1.51865 0.412145 1.39665C0.359735 1.27464 0.33215 1.14342 0.330996 1.01064C0.329843 0.877863 0.355144 0.746184 0.405425 0.623287C0.455706 0.500391 0.52996 0.388738 0.623853 0.294846C0.717746 0.200953 0.829396 0.1267 0.952292 0.0764189C1.07519 0.026138 1.20687 0.000836522 1.33965 0.00199034C1.47243 0.00314417 1.60365 0.0307305 1.72565 0.0831395C1.84766 0.135548 1.958 0.21173 2.05025 0.307241L7.00025 5.25724L11.9502 0.307241C12.1388 0.125083 12.3915 0.0242886 12.6536 0.026567C12.9158 0.0288455 13.1667 0.134014 13.3521 0.319422C13.5375 0.504831 13.6426 0.755643 13.6449 1.01784C13.6472 1.28004 13.5464 1.53264 13.3642 1.72124L7.70725 7.37824Z" fill="currentColor"/></svg> <svg x-show="open" x-cloak class="tw-mr-4 tw-min-w-[25px] tw-mt-2" width="14" height="9" viewBox="0 0 14 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.29324 0.964043C6.48077 0.776572 6.73508 0.671257 7.00024 0.671257C7.26541 0.671257 7.51971 0.776572 7.70724 0.964043L13.3642 6.62104C13.4598 6.71329 13.5359 6.82363 13.5883 6.94564C13.6408 7.06764 13.6683 7.19886 13.6695 7.33164C13.6706 7.46442 13.6453 7.5961 13.5951 7.719C13.5448 7.84189 13.4705 7.95355 13.3766 8.04744C13.2827 8.14133 13.1711 8.21558 13.0482 8.26587C12.9253 8.31615 12.7936 8.34145 12.6608 8.34029C12.5281 8.33914 12.3968 8.31155 12.2748 8.25915C12.1528 8.20674 12.0425 8.13055 11.9502 8.03504L7.00024 3.08504L2.05024 8.03504C1.86164 8.2172 1.60904 8.318 1.34684 8.31572C1.08464 8.31344 0.833831 8.20827 0.648423 8.02286C0.463015 7.83745 0.357846 7.58664 0.355568 7.32445C0.353289 7.06225 0.454083 6.80965 0.636242 6.62104L6.29324 0.964043Z" fill="currentColor"/></svg> <div> <p class="tw-text-h6-mob md:tw-text-h6 tw-font-bold tw-flex tw-items-center tw-mb-0"> My package arrived vacuum-sealed. Nice but why? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > The reason for this vacuum-sealed packaging is to ensure the product remains in its optimal condition during transit. It helps protect the item from dust, moisture, and potential damage, maintaining its freshness and quality until it reaches you. It's just one of the ways we take extra care to deliver the best possible product to our valued customers. </p> </div> </div> <hr class="tw-my-4 tw-border-1 tw-border-[#E7E7E7]"/> </div> </div> </div> </div> <div class="tw-bg-cover tw-bg-no-repeat tw-bg-[50%_30%] md:tw-bg-[35_center] tw-pt-60 tw-pb-10 md:tw-py-44 flip-rtl" data-srcset="https://get-derila.com/theme/derila/product-9/dont-miss/bg-mobile.jpg 0, https://get-derila.com/theme/derila/product-9/dont-miss/bg.jpg 768" data-ga-section="15 - Do not miss" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl flip-rtl" > <div class="tw-flex"> <div class="tw-max-w-[500px] tw-mx-auto md:tw-mx-0 tw-text-white"> <h2 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h1-mob md:tw-text-h1 tw-mb-0 tw-font-bold" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> Don't Miss Out! </h2> <h2 data-wrap-text class="tw-text-center md:[text-align:unset] tw-text-h1-mob md:tw-text-h1 tw-font-bold" auto-align="auto-align" centered-only-mobile="centered-only-mobile"> Act Quickly Before This Promo Ends! </h2> <div class="tw-text-center md:tw-text-left tw-mt-6"> <a href="https://get-derila.com/derila/order?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-bg-btn tw-inline-block tw-font-bold tw-px-10 tw-py-2 tw-rounded-md tw-text-center tw-text-btn-text tw-transition-all tw-drop-shadow-sm hover:tw-scale-105 hover:tw-brightness-[1.03] hover:tw-drop-shadow-md tw-leading-tight" data-ga-category="Call To Action" data-ga-click="15 - Do not miss (CTA)" > Get -70% Discount </a> </div> </div> </div> </div> </div> <div class="tw-pb-[95px] md:tw-pb-[45px]"> <footer class="tw-bg-footer-bg tw-text-footer-text tw-py-7" data-ga-section="16 - Footer" > <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl" > <span data-ga-category="Link" data-ga-click="16 - Footer (Logo)"> <svg class="tw-max-w-[12rem] tw-mb-7 tw-mx-auto md:tw-mx-0" width="167" height="41" viewBox="0 0 167 41" fill="none" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor"><path d="M0 30.5042C0.419346 30.5541 0.820681 30.5965 1.21944 30.6489C2.41584 30.7957 3.62708 30.7873 4.82119 30.6239C6.60217 30.4128 8.32796 29.886 9.91252 29.0699C13.7715 27.0569 16.3442 24.0162 17.5868 19.9279C18.0258 18.4623 18.2203 16.9381 18.1631 15.413C18.1455 14.7297 18.0698 14.0489 17.9367 13.3776C17.8929 13.1681 17.9367 13.1032 18.1682 13.188C19.8913 13.7697 21.4878 14.657 22.8762 15.8047C24.3113 16.9975 25.4869 18.4556 26.3346 20.0937C27.1822 21.7318 27.6849 23.5173 27.8132 25.3458C27.9592 27.364 27.6457 29.3887 26.8948 31.2763C26.1439 33.164 24.9739 34.8684 23.4679 36.2688C21.76 37.8749 19.6608 39.036 17.3656 39.6437C15.9449 40.0371 14.468 40.2056 12.992 40.1426C10.0942 40.0287 7.30086 39.0623 4.98333 37.3718C2.66581 35.6813 0.933943 33.3468 0.0180106 30.6788C0.00809974 30.6211 0.00208219 30.5627 0 30.5042Z"/><path d="M61.5226 26.7303C61.5249 29.1539 60.8048 31.5265 59.449 33.5625C58.0971 35.6404 56.1878 37.3227 53.9255 38.4291C51.6483 39.611 49.1042 40.2264 46.5213 40.2201C44.5768 40.2207 42.6487 39.8749 40.8331 39.1999C39.0456 38.557 37.402 37.5874 35.9914 36.3438C34.5841 35.1196 33.4465 33.6322 32.6469 31.9711C31.8393 30.2748 31.4365 28.4238 31.4686 26.5557C31.4618 24.6955 31.8726 22.8561 32.6726 21.1653C33.4601 19.5122 34.5857 18.0314 35.9811 16.8126C37.3806 15.5542 39.0273 14.582 40.8228 13.954C44.4884 12.6634 48.5053 12.6634 52.1709 13.954L52.7626 14.2034L53.3517 14.4528V3.97632L61.5226 4.00126V26.7303ZM49.8658 21.0531C48.8405 20.4826 47.679 20.1824 46.4969 20.1824C45.3147 20.1824 44.1532 20.4826 43.1279 21.0531C42.1008 21.6218 41.2305 22.4228 40.5913 23.3878C39.9595 24.3335 39.6301 25.4391 39.6445 26.5657C39.64 27.4248 39.8207 28.2754 40.1752 29.0627C40.5296 29.8501 41.0499 30.557 41.7027 31.138C42.9822 32.3638 44.7084 33.0512 46.5072 33.0512C48.3059 33.0512 50.0321 32.3638 51.3116 31.138C51.9647 30.5573 52.4853 29.8505 52.8398 29.063C53.1942 28.2756 53.3748 27.4249 53.3697 26.5657C53.3832 25.4389 53.053 24.3333 52.4204 23.3878C51.7768 22.4202 50.9 21.6189 49.8658 21.0531Z"/><path d="M84.6284 13.9611C86.3401 14.6187 87.9105 15.5796 89.2592 16.7948C90.6316 18.0371 91.7246 19.5409 92.4696 21.2119C93.2147 22.8829 93.5958 24.6851 93.589 26.5055V26.8547L93.5633 27.0044L93.5119 27.426H90.3346V27.4759H72.7066C72.8986 28.8451 73.5569 30.1128 74.577 31.0778C75.1764 31.6756 75.8933 32.1507 76.6854 32.4752C77.4775 32.7997 78.3286 32.9668 79.1885 32.9668C80.0484 32.9668 80.8995 32.7997 81.6916 32.4752C82.4837 32.1507 83.2006 31.6756 83.8 31.0778L83.8514 31.0279L83.9286 30.9281L84.0058 30.8533L84.0573 30.7785L88.4617 36.8898C87.3048 37.8246 86.0101 38.5864 84.6207 39.1497C82.6017 39.9191 80.4331 40.2491 78.2681 40.1163C76.1032 39.9835 73.9947 39.3913 72.0918 38.3814C69.9126 37.2287 68.0841 35.541 66.7895 33.4874C65.6443 31.6434 64.9702 29.5607 64.8235 27.4129C64.6767 25.2651 65.0614 23.1144 65.9456 21.1401C66.6901 19.5017 67.7732 18.0287 69.128 16.8122C70.4515 15.5723 72.0184 14.6028 73.7357 13.9611C75.4723 13.2941 77.3245 12.9554 79.1923 12.9634C81.0538 12.9528 82.8997 13.2916 84.6284 13.9611ZM84.2168 22.5319C83.7081 21.9261 83.0996 21.4061 82.4159 20.9929C81.4362 20.4392 80.3225 20.1474 79.1885 20.1474C78.0545 20.1474 76.9408 20.4392 75.9611 20.9929C75.2773 21.4061 74.6688 21.9261 74.1602 22.5319H84.2168Z"/><path d="M110.319 20.5937C109.818 20.291 109.241 20.1278 108.652 20.1223H108.191C106.115 20.1971 105.065 21.6189 105.065 24.3453V39.3991H96.8662V24.3453C96.8662 17.1165 100.639 13.3159 108.186 12.9434H108.646C109.204 12.9662 109.761 13.0161 110.314 13.093L110.319 20.5937Z"/><path d="M117.589 10.9553C116.841 10.9703 116.104 10.781 115.462 10.4091C114.82 10.0438 114.287 9.52176 113.918 8.89496C113.539 8.25115 113.336 7.52372 113.329 6.7822C113.314 6.04991 113.509 5.32796 113.892 4.69687C114.277 4.07498 114.813 3.55419 115.454 3.18027C116.097 2.80951 116.834 2.6203 117.582 2.634C118.337 2.62033 119.081 2.80939 119.732 3.18027C120.368 3.55507 120.898 4.07598 121.276 4.69687C121.645 5.33846 121.839 6.06108 121.839 6.79592C121.839 7.53076 121.645 8.25337 121.276 8.89496C120.899 9.51114 120.368 10.0257 119.732 10.3916C119.085 10.7675 118.344 10.9626 117.589 10.9553ZM121.816 13.9861V39.449H113.643V14.006L121.816 13.9861Z"/><path d="M125.5 4.14995L133.673 4.125V39.3486L125.5 39.4484V4.14995Z"/><path d="M158.851 38.6534C158.211 38.9277 157.802 39.0749 157.647 39.1248C155.535 39.9069 153.275 40.2447 151.018 40.1157C148.761 39.9867 146.558 39.3938 144.555 38.3765C142.302 37.2593 140.394 35.5858 139.021 33.5248C137.64 31.4436 136.918 29.0153 136.945 26.5405C136.939 24.7011 137.338 22.8816 138.116 21.2039C138.894 19.5261 140.032 18.0289 141.455 16.8123C142.864 15.5797 144.503 14.6203 146.284 13.9861C148.101 13.3163 150.028 12.9715 151.972 12.9684C153.915 12.9601 155.843 13.2983 157.66 13.9662C159.444 14.5916 161.081 15.5548 162.476 16.7998C163.86 18.0217 164.99 19.488 165.808 21.1201C166.607 22.8201 167.017 24.6674 167.012 26.5355L166.986 39.479L158.864 39.4042L158.851 38.6534ZM151.959 20.1473C150.787 20.1402 149.634 20.4318 148.615 20.9929C147.587 21.5611 146.717 22.3622 146.078 23.3277C145.445 24.2823 145.115 25.3959 145.129 26.5305C145.124 27.3861 145.304 28.233 145.659 29.0165C146.013 29.7999 146.534 30.5022 147.187 31.0778C148.474 32.2887 150.197 32.9659 151.99 32.9659C153.783 32.9659 155.506 32.2887 156.793 31.0778C157.446 30.5022 157.967 29.7999 158.321 29.0165C158.676 28.233 158.856 27.3861 158.851 26.5305C158.866 25.3961 158.537 24.2825 157.905 23.3277C157.265 22.3627 156.395 21.5617 155.368 20.9929C154.328 20.4261 153.152 20.1344 151.959 20.1473Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6.54771 12.7263L7.5279 15.6647L10.7103 15.6597L8.13248 17.4682L9.12038 20.4016L6.54771 18.5832L3.97761 20.4016L4.96551 17.4682L2.3877 15.6597L5.57009 15.6647L6.54771 12.7263Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16.3335 0L17.3111 2.93842L20.4935 2.93093L17.9157 4.74188L18.9036 7.6753L16.3335 5.85688L13.7608 7.6753L14.7513 4.74188L12.1709 2.93093L15.3559 2.93842L16.3335 0Z"/></g></svg> </span> <div class="tw-flex tw-justify-center md:tw-block"> <div class="tw-grid tw-grid-cols-1 lg:tw-grid-cols-4 md:tw-grid-cols-2 tw-gap-5"> <hr class="tw-border-[#909090] tw-block md:tw-hidden"> <div> <div class="tw-font-bold tw-self-center md:tw-order-first"> SHOP </div> <div class="tw-mt-4"> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/wholesale)" href="https://get-derila.com/derila/wholesale?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Wholesale </a> </div> </div> <div> <div class="tw-font-bold tw-self-center md:tw-order-first"> INFO </div> <div class="tw-mt-4"> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/terms)" href="https://get-derila.com/derila/terms?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Terms of Service </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/privacy)" href="https://get-derila.com/derila/privacy?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Privacy policy </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/shipping)" href="https://get-derila.com/derila/shipping?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Shipping policy </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/billing-policy)" href="https://get-derila.com/derila/billing-policy?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Billing policy </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/about-us)" href="https://get-derila.com/derila/about-us?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> About Us </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" rel=&quot;nofollow noopener noreferrer&quot; data-ga-category="Link" data-ga-click="16 - Footer (Affiliates)" href="https://ekomlita.everflowclient.io/affiliate/signup/?q=5J473L"> Affiliate </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/user-guide)" href="https://get-derila.com/derila/user-guide?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> User Guide </a> </div> </div> <div> <div class="tw-font-bold tw-self-center md:tw-order-first"> ORDER </div> <div class="tw-mt-4"> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/tracking)" href="https://get-derila.com/derila/tracking?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Track My Order </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (/derila/return)" href="https://get-derila.com/derila/return?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0"> Returns &amp; Refunds Policy </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (Order Link 3)" href="https://support.derila.com/en/support/tickets/new"> FAQ </a> <a class="tw-text-footer-text tw-text-opacity-50 tw-block tw-mt-1" data-ga-category="Link" data-ga-click="16 - Footer (Order Link 4)" href="https://support.derila.com/en/support/tickets/new"> Contact </a> </div> </div> <div> <div class="tw-font-bold tw-self-center md:tw-order-first"> CUSTOMER SERVICES: </div> <div class="tw-mt-4"> <div class="tw-text-footer-text tw-text-opacity-50"> <svg class="tw-h-[1.4em] tw-inline-block tw-me-2" enable-background="new 0 0 512 512" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="m488.9 373-75.9-64.6c-.4-.3-.7-.6-1.1-.8-19.9-12.7-45.5-9.9-62.2 6.8l-41.4 41.4c-2.9 2.9-7.1 3.7-10.9 2.2-46.7-19.3-85.1-48.4-114.1-86.5-22.1-29-30.1-52.1-31.1-55.3-.1-.7-.3-1.4-.6-2.1-1.6-3.8-.7-8 2.2-10.9l41.4-41.4c16.7-16.7 19.5-42.3 6.8-62.2-.1-.2-.2-.3-.3-.5l-54.8-76.2c-17.4-26.8-54.9-30.8-77.5-8.3l-8.3 8.3-29.6 29.7c-35.3 35.2-41.1 88.3-16.7 153.3 20.9 55.7 62.7 116.7 117.7 171.7 56.3 56.3 118.9 98.9 176.3 119.8 56.8 20.8 117.3 23.3 160.1-19.5l27.9-27.9c22.5-22.4 18.5-59.7-7.9-77zm-88.3-48.9 75.9 64.5c.3.3.7.6 1.1.8 16.2 10.3 18.7 33 5.1 46.5l-2.1 2.1-129.4-96.9 12.6-12.6c9.9-9.8 24.9-11.6 36.8-4.4zm-270.5-290.2c.1.2.2.3.3.5l54.8 76.2c7.4 11.9 5.7 27.1-4.2 37.1l-12.2 12.2-87.6-128.8 2.3-2.3c13.7-13.6 36.3-11 46.6 5.1zm185.6 444.8c-54.7-20-114.8-60.9-169.1-115.2-53-53-93.2-111.5-113.1-164.6-14.9-39.9-24.9-95.1 12.2-132.2l21.2-21.2 87.5 128.7-14.8 14.8c-8.4 8.4-11 20.8-6.8 31.8 3.2 13 17.7 39.8 32.3 59.7 21.6 29.2 60.7 69.5 124.7 95.9 11.2 4.7 24.1 2.1 32.7-6.5l14.5-14.5 129.4 96.9-11.6 11.5c-39.8 39.8-97.6 30.1-139.1 14.9z" fill="currentColor"/></svg> Contact us: </div> <div class="tw-items-center tw-mt-1"> <a href="tel:+16093183319" data-ga-category="Link" data-ga-click="16 - Footer (Phone Number)" class="tw-text-footer-text tw-text-opacity-50 tw-block tw-text-left" > +1 (609) 318-3319 </a> <a href="tel:+442080891401" data-ga-category="Link" data-ga-click="16 - Footer (Phone Number)" class="tw-text-footer-text tw-text-opacity-50 tw-block tw-text-left" > +442080891401 </a> <a href="tel:+498004009820" data-ga-category="Link" data-ga-click="16 - Footer (Phone Number)" class="tw-text-footer-text tw-text-opacity-50 tw-block tw-text-left" > +498004009820 </a> <a href="tel:+61290995803" data-ga-category="Link" data-ga-click="16 - Footer (Phone Number)" class="tw-text-footer-text tw-text-opacity-50 tw-block tw-text-left" > +61290995803 </a> </div> <div class="tw-flex tw-text-footer-text tw-text-opacity-50 tw-items-center tw-mt-1"> <svg class="tw-h-[1.4em] tw-inline-block tw-me-2" enable-background="new 0 0 483.3 483.3" viewBox="0 0 483.3 483.3" xmlns="http://www.w3.org/2000/svg"><path d="m424.3 57.8h-365.2c-32.6 0-59.1 26.4-59.1 59v249.6c0 32.6 26.5 59.1 59.1 59.1h365.1c32.6 0 59.1-26.5 59.1-59.1v-249.4c.1-32.7-26.4-59.2-59-59.2zm32.1 308.7c0 17.7-14.4 32.1-32.1 32.1h-365.2c-17.7 0-32.1-14.4-32.1-32.1v-249.5c0-17.7 14.4-32.1 32.1-32.1h365.1c17.7 0 32.1 14.4 32.1 32.1z" fill="currentColor"/><path d="m304.8 238.6 118.2-106c5.5-5 6-13.5 1-19.1-5-5.5-13.5-6-19.1-1l-163 146.3-31.8-28.4c-.1-.1-.2-.2-.2-.3-.7-.7-1.4-1.3-2.2-1.9l-129.4-115.9c-5.6-5-14.1-4.5-19.1 1.1s-4.5 14.1 1.1 19.1l119.6 106.9-119.1 111.6c-5.4 5.1-5.7 13.6-.6 19.1 2.7 2.8 6.3 4.3 9.9 4.3 3.3 0 6.6-1.2 9.2-3.6l120.9-113.1 32.8 29.3c2.6 2.3 5.8 3.4 9 3.4s6.5-1.2 9-3.5l33.7-30.2 120.2 114.2c2.6 2.5 6 3.7 9.3 3.7 3.6 0 7.1-1.4 9.8-4.2 5.1-5.4 4.9-14-.5-19.1z" fill="currentColor"/></svg> <a href="https://get-derila.com/derila/contact?uuid=019380b4-24ca-7e7f-b647-46dc278d1ff2&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;ipp=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7190%2C2624%2C4288%2C5829%2C6102%2C6108%2C6341%2C7035%2C7399&amp;sntp=0" class="tw-text-footer-text tw-text-opacity-50 tw-inline-block" data-ga-category="Link" data-ga-click="16 - Footer (Email)" > Send us an email </a> </div> </div> </div> </div> </div> </div> </footer> <div class="tw-bg-white tw-text-black tw-py-2"> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-flex tw-flex-col tw-justify-between tw-items-center md:tw-flex-row" > <p class="tw-tex-p tw-mb-0">® 2024 Derila All rights reserved. </p> <div class=" tw-w-full md:tw-w-auto"> <div class="tw-flex tw-flex-row tw-flex-wrap tw-items-center tw-justify-center"> <img class="tw-m-2 md:tw-my-0 tw-object-contain tw-w-[60px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/theme/images/processors/visa.svg" alt="Visa" > <img class="tw-m-2 md:tw-my-0 tw-object-contain tw-w-[60px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/theme/images/processors/mastercard.svg" alt="Mastercard" > <img class="tw-m-2 md:tw-my-0 tw-object-contain tw-w-[60px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/theme/images/processors/paypal.svg" alt="Paypal" > <img class="tw-m-2 md:tw-my-0 tw-object-contain tw-w-[60px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/theme/images/processors/klarna.svg" alt="Klarna" > <img class="tw-m-2 md:tw-my-0 tw-object-contain tw-w-[60px]" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/theme/images/processors/amex-color.svg" alt="American Experess" > </div> </div> <div wire:snapshot="{&quot;data&quot;:{&quot;locale&quot;:&quot;en&quot;,&quot;shouldRender&quot;:true,&quot;languageSelector&quot;:[[&quot;de&quot;,&quot;en&quot;,&quot;es&quot;,&quot;es-mx&quot;,&quot;fi&quot;,&quot;fr&quot;,&quot;it&quot;,&quot;nl&quot;,&quot;nb&quot;,&quot;sv&quot;,&quot;pt&quot;,&quot;pt-br&quot;,&quot;ar&quot;,&quot;ja&quot;,&quot;zh-tw&quot;,&quot;pl&quot;,&quot;ms&quot;,&quot;th&quot;,&quot;tr&quot;,&quot;ko&quot;,&quot;ro&quot;,&quot;el&quot;,&quot;cs&quot;,&quot;sl&quot;,&quot;sk&quot;,&quot;hu&quot;,&quot;da&quot;,&quot;hr&quot;,&quot;es-co&quot;,&quot;bg&quot;,&quot;he&quot;,&quot;tl-ph&quot;,&quot;sr&quot;],{&quot;s&quot;:&quot;arr&quot;}],&quot;currentUrl&quot;:&quot;https:\/\/get-derila.com&quot;},&quot;memo&quot;:{&quot;id&quot;:&quot;HBbsRsxIwQvtjAw8HCoE&quot;,&quot;name&quot;:&quot;footer-language-selector&quot;,&quot;path&quot;:&quot;\/&quot;,&quot;method&quot;:&quot;GET&quot;,&quot;children&quot;:[],&quot;scripts&quot;:[],&quot;assets&quot;:[],&quot;errors&quot;:[],&quot;locale&quot;:&quot;en&quot;},&quot;checksum&quot;:&quot;ff475398ce733842cf871a1d7c12188d97d1fc05f0139a079808f6c1e224be8b&quot;}" wire:effects="[]" wire:id="HBbsRsxIwQvtjAw8HCoE" class=""> <div x-cloak class="tw-flex tw-justify-center" x-data="{ expanded: false }"> <div x-on:click="expanded = true" class="tw-flex tw-cursor-pointer tw-px-s8 tw-relative"> <div class="tw-uppercase"> ENGLISH </div> <div class="tw-flex tw-justify-center tw-align-center tw-mx-s4" :class="expanded ? 'tw-rotate-180' : ''"> <img class="tw-self-start tw-my-auto" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;&quot; height=&quot;&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/images/expand.svg" alt="" > </div> </div> <div x-on:click.outside="expanded = false" x-on:click="expanded = false" x-show="expanded" class="tw-px-s12 tw-py-s8 !tw-outline-[1px] tw-bg-[#F2F2F2] !tw-outline !tw-outline-[#B2B2B2] tw-absolute tw-bottom-0 tw-mb-s48 tw-max-h-[300px] tw-overflow-y-scroll"> <div class="tw-me-s4 tw-flex tw-flex-col"> <a href="https://get-derila.com/?l=de" wire:click.prevent="changeLocale('de')" class="dropdown-item tw-text-black "> DEUTSCH </a> <a href="https://get-derila.com/" wire:click.prevent="changeLocale('en')" class="dropdown-item tw-text-black font-weight-bold"> ENGLISH </a> <a href="https://get-derila.com/?l=es" wire:click.prevent="changeLocale('es')" class="dropdown-item tw-text-black "> ESPAñOL </a> <a href="https://get-derila.com/?l=es-mx" wire:click.prevent="changeLocale('es-mx')" class="dropdown-item tw-text-black "> ESPAñOL (MéXICO) </a> <a href="https://get-derila.com/?l=fi" wire:click.prevent="changeLocale('fi')" class="dropdown-item tw-text-black "> SUOMI </a> <a href="https://get-derila.com/?l=fr" wire:click.prevent="changeLocale('fr')" class="dropdown-item tw-text-black "> FRANçAIS </a> <a href="https://get-derila.com/?l=it" wire:click.prevent="changeLocale('it')" class="dropdown-item tw-text-black "> ITALIANO </a> <a href="https://get-derila.com/?l=nl" wire:click.prevent="changeLocale('nl')" class="dropdown-item tw-text-black "> NEDERLANDS </a> <a href="https://get-derila.com/?l=nb" wire:click.prevent="changeLocale('nb')" class="dropdown-item tw-text-black "> NORSK BOKMåL </a> <a href="https://get-derila.com/?l=sv" wire:click.prevent="changeLocale('sv')" class="dropdown-item tw-text-black "> SVENSKA </a> <a href="https://get-derila.com/?l=pt" wire:click.prevent="changeLocale('pt')" class="dropdown-item tw-text-black "> PORTUGUêS </a> <a href="https://get-derila.com/?l=pt-br" wire:click.prevent="changeLocale('pt-br')" class="dropdown-item tw-text-black "> PORTUGUêS (BRASIL) </a> <a href="https://get-derila.com/?l=ar" wire:click.prevent="changeLocale('ar')" class="dropdown-item tw-text-black "> العربية </a> <a href="https://get-derila.com/?l=ja" wire:click.prevent="changeLocale('ja')" class="dropdown-item tw-text-black "> 日本語 </a> <a href="https://get-derila.com/?l=zh-tw" wire:click.prevent="changeLocale('zh-tw')" class="dropdown-item tw-text-black "> 中文(台灣) </a> <a href="https://get-derila.com/?l=pl" wire:click.prevent="changeLocale('pl')" class="dropdown-item tw-text-black "> POLSKI </a> <a href="https://get-derila.com/?l=ms" wire:click.prevent="changeLocale('ms')" class="dropdown-item tw-text-black "> MELAYU </a> <a href="https://get-derila.com/?l=th" wire:click.prevent="changeLocale('th')" class="dropdown-item tw-text-black "> ไทย </a> <a href="https://get-derila.com/?l=tr" wire:click.prevent="changeLocale('tr')" class="dropdown-item tw-text-black "> TüRKçE </a> <a href="https://get-derila.com/?l=ko" wire:click.prevent="changeLocale('ko')" class="dropdown-item tw-text-black "> 한국어 </a> <a href="https://get-derila.com/?l=ro" wire:click.prevent="changeLocale('ro')" class="dropdown-item tw-text-black "> ROMâNă </a> <a href="https://get-derila.com/?l=el" wire:click.prevent="changeLocale('el')" class="dropdown-item tw-text-black "> Ελληνικά </a> <a href="https://get-derila.com/?l=cs" wire:click.prevent="changeLocale('cs')" class="dropdown-item tw-text-black "> čEšTINA </a> <a href="https://get-derila.com/?l=sl" wire:click.prevent="changeLocale('sl')" class="dropdown-item tw-text-black "> SLOVENščINA </a> <a href="https://get-derila.com/?l=sk" wire:click.prevent="changeLocale('sk')" class="dropdown-item tw-text-black "> SLOVENčINA </a> <a href="https://get-derila.com/?l=hu" wire:click.prevent="changeLocale('hu')" class="dropdown-item tw-text-black "> MAGYAR </a> <a href="https://get-derila.com/?l=da" wire:click.prevent="changeLocale('da')" class="dropdown-item tw-text-black "> DANSK </a> <a href="https://get-derila.com/?l=hr" wire:click.prevent="changeLocale('hr')" class="dropdown-item tw-text-black "> HRVATSKI </a> <a href="https://get-derila.com/?l=es-co" wire:click.prevent="changeLocale('es-co')" class="dropdown-item tw-text-black "> ESPAñOL (COLOMBIA) </a> <a href="https://get-derila.com/?l=bg" wire:click.prevent="changeLocale('bg')" class="dropdown-item tw-text-black "> български </a> <a href="https://get-derila.com/?l=he" wire:click.prevent="changeLocale('he')" class="dropdown-item tw-text-black "> עברית </a> <a href="https://get-derila.com/?l=tl-ph" wire:click.prevent="changeLocale('tl-ph')" class="dropdown-item tw-text-black "> TAGALOG (PILIPINAS) </a> <a href="https://get-derila.com/?l=sr" wire:click.prevent="changeLocale('sr')" class="dropdown-item tw-text-black "> српски </a> </div> </div> </div> </div> </div> </div> </div> <script> document.addEventListener('alpine:init', function () { Alpine.data('SC_674bf4c5df18b', function () { var config = { buildMarkup: true, options: { mediaQuery: 'min', type: "loop", perPage: "2", arrows: false, autoplay: true, classes: {"arrow":"splide__arrow tw-bg-[#ccc] [\u0026\u003Esvg]:!tw-fill-black ","prev":"splide__arrow--prev md:!tw-start-[-40px]","next":"splide__arrow--next md:!tw-end-[-40px]"}, interval: 5000, speed: 400, pagination: false, padding: null, direction: "ltr", perMove: null, width: null, lazyLoad: true, breakpoints: Object.assign({ 768: { // md perPage: 3, }, }, []) } }; window.dynamicLoadModule('alpine-splide').then(AlpineSplide => { Object.assign(this, AlpineSplide(config)); this.splideInit(); window.adjustFontSize(this.splide.root); if (config.options.pagination) { /** Sometimes pagination dots do not appear. This trigger fixes that. * Didn't find a way to attach "mounted" event for to alpine through alpne-splide. **/ window.dispatchEvent(new Event('resize')); } this.splide.root.classList.remove("tw-hidden"); this.$dispatch('initiated', this.splide); }) }) }) </script> <script> document.addEventListener("DOMContentLoaded", function () { var youtubeVideos = document.querySelectorAll(".youtube-video"); var eventsList = ["click", "keypress"]; youtubeVideos.forEach(function (video) { eventsList.forEach(function (event) { video.addEventListener(event, function () { video.style.paddingBottom = '56.25%'; var videoId = this.getAttribute("data-id"); var iframe = document.createElement("iframe"); iframe.setAttribute("src", (videoId.indexOf("?") !== -1 ? ("https://www.youtube.com/embed/" + videoId) : ("https://www.youtube.com/embed/" + videoId + "?autoplay=1&mute=1&rel=0")) ); iframe.setAttribute("frameborder", "0"); iframe.setAttribute("allow", "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"); iframe.setAttribute("allowfullscreen", ""); iframe.setAttribute("width", "100%"); iframe.setAttribute("height", "100%"); var iframeContainer = this.querySelector(".iframe-container"); iframeContainer.innerHTML = ""; iframeContainer.appendChild(iframe); iframeContainer.style.display = "block"; this.querySelector("img").style.display = "none"; this.querySelector(".play-button").style.display = "none"; }); }); }); }); </script> <style> .youtube-video .iframe-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .youtube-video { position: relative; display: block; width: 100%; overflow: hidden; } .youtube-video img { width: 100%; height: auto; } .youtube-video .play-button { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 64px; height: 64px; cursor: pointer; } </style> <script> function initReviews() { return { showAllReviewsForMobile: !Boolean(1), showMore() { this.showAllReviewsForMobile = !this.showAllReviewsForMobile; } } } </script> <script> (function () { document.querySelectorAll('[data-ga-click]').forEach((element) => { element.addEventListener('click', function (event) { typeof gatag !== 'undefined' && gatag('event', 'Click', { 'event_category': element.dataset.gaCategory, 'event_label': element.dataset.gaClick }); }); }); })(); (function () { function handleIntersection(entries, observer) { entries.forEach(function (entry) { if (entry.isIntersecting) { const sectionId = entry.target.dataset.gaSection; typeof gatag !== 'undefined' && gatag('event', 'Scroll', { 'event_category': 'Section', 'event_label': sectionId }); observer.unobserve(entry.target); } }); } var observer = new IntersectionObserver(handleIntersection); document.querySelectorAll('[data-ga-section]').forEach(function (section) { observer.observe(section); }.bind(this)); })() </script> <script> window.addEventListener('DOMContentLoaded', function () { var videoIdElement = document.querySelector('#video-placeholder'); if (videoIdElement) { videoIdElement.addEventListener('click', function (e) { e.currentTarget.classList.add('tw-hidden'); e.currentTarget.nextElementSibling.style.display = 'block'; var event = new Event('playVideo'); document.dispatchEvent(event); }); } }); </script> <script> window.addEventListener('DOMContentLoaded', function () { var videoIdElement = document.querySelector('#video-placeholder'); if (videoIdElement) { videoIdElement.addEventListener('click', function (e) { e.currentTarget.classList.add('tw-hidden'); e.currentTarget.nextElementSibling.style.display = 'block'; var event = new Event('playVideo'); document.dispatchEvent(event); }); } }); </script> <script> window.addEventListener('DOMContentLoaded', function () { var videoIdElement = document.querySelector('#video-placeholder'); if (videoIdElement) { videoIdElement.addEventListener('click', function (e) { e.currentTarget.classList.add('tw-hidden'); e.currentTarget.nextElementSibling.style.display = 'block'; var event = new Event('playVideo'); document.dispatchEvent(event); }); } }); </script> <style> .bf-2024-bg { background: -webkit-gradient(linear, left top, right top, from(#FFCC01), color-stop(31%, #FA9601), color-stop(63.5%, #F5AE00), color-stop(100%, #E98B00), to(#FF5E4D)); background: -o-linear-gradient(left, #FFCC01 0%, #FA9601 31%, #F5AE00 63.5%, #E98B00 100%, #FF5E4D 100%); background: linear-gradient(90deg, #FFCC01 0%, #FA9601 31%, #F5AE00 63.5%, #E98B00 100%, #FF5E4D 100%); } .bf2024-pp-text-color { color: #000; } .bf2024-op-text-color { color: #000; } .bf2024-badge-color { color: #EEB301; } </style> <div x-data="modalIndexPushEngageModal('push-engage-modal')" id="push-engage-modal" @afterpointselected.window="closeModal()" @modal-open.window="handleOpenEvent($event)" class="tw-pointer-events-none"> <div x-show="open" style="display: none;" class="tw-fixed tw-z-[99999] tw-inset-0 tw-overflow-y-auto" tabindex="-1" role="dialog" aria-modal="true" x-trap.noscroll="open" @keyup.escape.stop="closeModal()" > <div class="tw-flex tw-justify-center tw-min-h-screen tw-items-start"> <!-- Overlay --> <!-- Modal --> <div class="tw-container tw-px-container md:tw-px-container-md lg:tw-px-container-lg xl:tw-px-container-xl tw-my-3 sm:tw-my-5 tw-h-full tw-w-auto tw-pointer-events-auto" > <div class="tw-align-middle tw-bg-white tw-rounded-lg tw-text-start tw-overflow-hidden tw-shadow-xl tw-transform tw-transition-all tw-w-full tw-h-full "> <div class="tw-h-full"> <div class="tw-bg-white tw-p-4 tw-h-full"> <div class="tw-h-full"> <div class="tw-bg-white tw-text-black tw-text-sm md:tw-text-base tw-max-w-[600px]"> <div class="tw-grid md:tw-px-s16 tw-grid-cols-[20%_1fr] tw-gap-s16 md:tw-gap-s24 tw-flex-wrap"> <div> <img height="115" width="85" onerror="this.src = `https://get-derila.com/theme/nuubu/common/notification_logo.svg`" src='data:image/svg+xml;charset=utf-8,<svg fill="transparent" width=&quot;85&quot; height=&quot;115&quot; xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"/></svg>' data-src="https://get-derila.com/theme/derila/common/notification_logo.svg" alt="logo" > </div> <div class="tw-flex tw-flex-col tw-justify-between"> <div class="tw-text-left"> <strong></strong> <p class="tw-mb-0 tw-leading-tight">Subscribe to our updates and get exclusive discounts!</p> </div> <div class="tw-flex tw-justify-end tw-pt-3"> <button type="button" class="modal-body__no-button tw-opacity-40 tw-shadow-md tw-bg-black tw-text-white tw-rounded tw-px-2 tw-py-1 tw-text-sm md:tw-text-base tw-mr-3 tw-cursor-not-allowed" @click="closeModal()" > Later </button> <button type="button" class="modal-body__yes-button tw-bg-btn tw-shadow-md tw-text-btn-text tw-rounded tw-px-2 tw-py-1 tw-text-sm md:tw-text-base" @click="closeModal()" > Subscribe </button> </div> </div> </div> </div> </div> <div @click="closeModal()" class="tw-absolute tw-top-0 tw-end-0 tw-cursor-pointer tw-bg-inherit tw-p-1 tw-pt-2 tw-pe-2 " tabindex="0" @keyup.enter.stop="closeModal()" data-ga-category="Element" data-ga-click="16 - Footer (Close Modal Button)" > <svg class="tw-w-[10px]" x="0px" y="0px" width="30" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xmlns="http://www.w3.org/2000/svg" xml:space="preserve"><g fill="currentColor"><path d="M10,39.4c0,8.8,2.9,14.7,8.8,20.6l441.4,441.4L21.8,940c-5.9,5.9-8.8,11.8-8.8,20.6c0,5.9,2.9,14.7,8.8,20.6c5.9,5.9,11.8,8.8,20.6,8.8c5.9,0,14.7-2.9,20.6-8.8l438.5-438.5L940,981.2c5.9,5.9,11.8,8.8,20.6,8.8c5.9,0,14.7-2.9,20.6-8.8c2.9-5.9,8.8-14.7,8.8-20.6c0-8.8-5.9-14.7-8.8-20.6L542.7,501.5L981.2,60c5.9-5.9,8.8-11.8,8.8-20.6c0-5.9-2.9-14.7-8.8-20.6c-5.9-2.9-11.8-8.8-20.6-8.8c-5.9,0-14.7,5.9-20.6,8.8L501.5,460.3L60,18.8C54.1,15.9,48.2,10,39.4,10c-5.9,0-14.7,5.9-20.6,8.8C13,24.7,10,33.5,10,39.4z"/></g></svg> </div> </div> </div> </div> </div> </div> </div> </div> <script> document.addEventListener('alpine:init', function () { Alpine.data('modalIndexPushEngageModal', function (id) { return { open: false, id: id, openModal() { this.open = true; this.$dispatch('modal-opened', { id: this.id }); }, closeModal() { this.open = false; }, handleOpenEvent(event) { if (event.detail.id === this.id) { this.openModal(); } }, } }); }) </script> </div> <script data-navigate-once="true">window.livewireScriptConfig = {"csrf":"rLAYzjDd2ymjj4BwBjzggGCcwZO6jmxfc3Rh0V5G","uri":"\/livewire\/update","progressBar":"","nonce":""};</script> <link rel="modulepreload" href="https://get-derila.com/build/assets/tracktor-68a71fb6.js" /><script type="module" src="https://get-derila.com/build/assets/tracktor-68a71fb6.js" data-navigate-track="reload"></script> <script> window.addEventListener('load', function () { typeof tracktor !== "undefined" && tracktor.init('https://tracktor.me', "019380b4-24ca-7e7f-b647-46dc278d1ff2") .then(function () { tracktor.recordVisit( {"uuid":"019380b4-24ca-7e7f-b647-46dc278d1ff2","hj":"1","gae":"1","eppss":"1","sndv":"1","ipp":"1","sruep":"1","sale":"bf2024","ppdf":"credit","_":"7190,2624,4288,5829,6102,6108,6341,7035,7399"}, [{"key":"page_category","value":"index"},{"key":"ip_country","value":"SG"},{"key":"brand","value":"derila"},{"key":"locale","value":"en"}], null ).catch(function (error) { console.error(error); tracktor.initFallback("019380b4-24ca-7e7f-b647-46dc278d1ff2").then(function () { tracktor.recordVisit( {"uuid":"019380b4-24ca-7e7f-b647-46dc278d1ff2","hj":"1","gae":"1","eppss":"1","sndv":"1","ipp":"1","sruep":"1","sale":"bf2024","ppdf":"credit","_":"7190,2624,4288,5829,6102,6108,6341,7035,7399"}, [{"key":"page_category","value":"index"},{"key":"ip_country","value":"SG"},{"key":"brand","value":"derila"},{"key":"locale","value":"en"}], null ).catch((error) => console.error(error)); }) }); tracktor.addInputListeners(); }) .catch((error) => console.error(error)); }); </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10