CINXE.COM

Derila - Sveriges främsta kudde fulländad: 70 % rabatt! | Derila

<!DOCTYPE html> <html lang="sv" 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 - Sveriges främsta kudde fulländad: 70 % rabatt! | 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="Derilas minnesskumkudde hjälper dig att hålla huvud, nacke och rygg i bästa möjliga position ✅. Köp Derila nu med 70 % rabatt."> <link rel="canonical" href="https://get-derila.com/?l=sv"/> <meta name="robots" content="noindex, nofollow"> <meta name="csrf-token" content="tkvHaclI5K4Drw3tsbvIfBKYy5TLxkn0buY69ZEH"> <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 = 'pVqrbPHsmuad9rKy'; if (cookieSessionId === requestSessionId) { localStorage.setItem('last_csrf_token', 'tkvHaclI5K4Drw3tsbvIfBKYy5TLxkn0buY69ZEH') } 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-12b35257.css" /><link rel="stylesheet" href="https://get-derila.com/build/assets/product-12b35257.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:\u0022product-1\u0022,\u0022pageCategory\u0022:\u0022product\u0022,\u0022brand\u0022:\u0022derila\u0022,\u0022country\u0022:\u0022SG\u0022,\u0022company\u0022:\u0022Everflow\u0022,\u0022locale\u0022:\u0022sv\u0022,\u0022currency\u0022:\u0022SEK\u0022}'); var orbSessionData = JSON.parse('{\u0022uuid\u0022:\u0022019371af-4ec3-7d51-9245-661daa6464b6\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:\u0022792\u0022,\u0022offid\u0022:\u002237\u0022,\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> <!-- 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> <script type="text/javascript"> function getEverflowCookie(name) { let matches = document.cookie.match(new RegExp( "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)" )); return matches ? decodeURIComponent(matches[1]) : undefined; } </script> <script type="text/javascript" src="https://www.dsw0trk.com/scripts/sdk/everflow.js"></script> <script type="text/javascript"> if (typeof EF !== 'undefined') { function getEverflowParam(name) { return EF.urlParameter(name) ?? orbSessionData[name] ?? null } EF.click({ offer_id: getEverflowParam('offid'), affiliate_id: getEverflowParam('affiliate_id'), sub1: getEverflowParam('subid'), sub2: getEverflowParam('subid2'), sub3: getEverflowParam('subid3'), sub4: getEverflowParam('subid4'), sub5: getEverflowParam('subid5'), uid: getEverflowParam('uid'), source_id: getEverflowParam('source_id'), parameters: { "ttclid" : getEverflowParam('ttclid'), "cjevent" : getEverflowCookie('cje') ?? null }, }).then(function (transactionId) { // TODO IE doesn't support promises if (!transactionId) { return; } var date = new Date(); date.setTime(date.getTime() + (2880*60*1000)); document.cookie = "transaction_id=" + transactionId + '; expires=' + date.toUTCString() + "; path=/"; }); } </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: 'product-1' || location.pathname, page_category: 'product', 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:\u00227189_#1 Show New Tracking Page Version\u0022,\u0022event_action\u0022:\u0022Viewed 3642\u0022,\u0022event_label\u0022:\u00227189_#1 Show New 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> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Organization", "name": "Derila", "url": "https://get-derila.com/derila/product?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1", "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 minnesskumkudde ", "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": "Derila-kudden är omsorgsfullt utformad för att bibehålla ryggradens position under sömnen och därigenom vidga luftvägarna och förbättra luftflödet till lungorna. Följaktligen leder detta till ökat syreintag och en minskning av snarkning, vilket i sin tur ger en mer rofylld nattsömn.", "sku": "5060694460837", "brand": { "@type": "Brand", "name": "Derila" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.0, "reviewCount": 159 }, "offers": { "@type": "AggregateOffer", "offerCount": 4, "lowPrice": 436.00, "highPrice": 1088.00, "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": "Minnesskum " }, { "@type": "PropertyValue", "name": "Fill", "value": "Minnesskum " }, { "@type": "PropertyValue", "name": "Shape", "value": "Formgjuten kudde" }, { "@type": "PropertyValue", "name": "Recommended use", "value": "Rygg-/sidosovare" }, { "@type": "PropertyValue", "name": "Special features", "value": "Avtagbart/tvättbart kuddfodral" } ] } </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]">REA</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> RABATT </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"> Tid kvar </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/?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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-logotypen, gå till startsidan" 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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" class="tw-ml-6 tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (/derila/tracking)" > Spåra beställning </a> </div> <div> <a data-wrap-text href="https://support.derila.com/sv/support/home" class="tw-ml-6 tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (Link 2)" > Kontakta </a> </div> <div> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Beställ nu! </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" class="tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (/derila/tracking)" > Spåra beställning </a> </div> <div class="tw-mt-5 tw-flex tw-justify-center"> <a data-wrap-text href="https://support.derila.com/sv/support/home" class="tw-text-current" data-ga-category="Link" data-ga-click="1 - Navigation (Link 2)" > Kontakta </a> </div> <div class="tw-mt-5 tw-flex tw-justify-center"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Beställ nu! </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="Stjärnor" > </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 - Sveriges främsta kudde nu fulländad </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] ">Rabatt</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 ">Sista chansen</p> <p data-wrap-text class="tw-my-0 tw-text-lg sm:tw-text-[22px] tw-mb-s16 ">Sista dagen för att ta del av denna FANTASTISKA kampanj</p> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" class="btn btn-primary btn-medium tw-mb-s12" data-ga-category="Call To Action" data-ga-click="2 - Header (CTA)" > Få 70 % rabatt </a> <p class="tw-text-note1 tw-font-bold tw-mb-0 "> - Endast 436,00 kr jämfört med 1 453,33 kr (försäljningspris) <br> - Endast tillgängligt online <br> - Så länge lagret räcker </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </div> </div> <p class="tw-text-base tw-mb-0 tw-mt-10 tw-text-center">Fördelar med ergonomiska kuddar som nämns på</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_67481c7eb5db3"> <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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </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-logotyp" > </div> </div> </div> <p class="tw-block tw-mb-s24 md:tw-hidden tw-text-sm tw-text-center">Fördelar med ergonomiska kuddar som nämns på:</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"> Bästa kudden för djup sömn. Punk slut. </h2> <p class="tw-text-base tw-mb-0 tw-mt-6 tw-text-center tw-relative tw-z-[2] "> Tänk dig att komma hem till din drömkudde efter en till synes oändlig dag på jobbet. <span class="tw-hidden md:tw-inline "> Dess mjuka, molnliknande minnesskum och silkeslena överdrag är den plats där du finner tröst! Det är mer än bara en kudde, det är en fristad för både kropp och sinne. </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">DRA NYTTA AV FÖRDELARNA</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">Lindrar musklerna i axlarna</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">Skyddar halskotpelaren</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">Ger stöd för huvudet när du sover på sidan</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">Stödjer din nacke</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">STÖDYTA FÖR NACKEN</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">Lindrar musklerna i axlarna</li> <li class="tw-text-base tw-mb-0">Gör ditt huvud avslappnat</li> <li class="tw-text-base tw-mb-0">Skyddar halskotpelaren</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">MJUK YTA FÖR ANSIKTET</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">Lindrar tryck i ansiktet</li> <li class="tw-text-base tw-mb-0">Ger stöd för nacke och huvud vid sidosovande</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">FIXERINGSYTA FÖR AXLARNA</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">Anpassar sig efter axlarnas form</li> <li class="tw-text-base tw-mb-0">Stödjer din nacke</li> <li class="tw-text-base tw-mb-0">Lindrar tryck</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]">REA</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> RABATT </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> <span data-adjust-font class="tw-w-full tw-block"> Beställ nu! </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="Symbol för användarnas val" > <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"> Din åsikt betyder mest </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="Symbol för användarnas val" > <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"> Din åsikt betyder mest </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"> På Derila är vi stolta över att tillverka ergonomiska kuddar som förändrar våra kunders sömnupplevelse. Vårt engagemang för kvalitet och komfort återspeglas i det faktum att 8 av 10 av våra kunder inte bara föredrar vår ergonomiska Derila-kudde utan också väljer att aldrig återvända till sina gamla kuddar efter att ha bytt. </p> <p class="md:tw-hidden tw-text-base tw-mb-0 !tw-text-left"> På Derila är vi stolta över att tillverka ortopediska kuddar som förändrar hur våra kunder upplever sömn. </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)" > KOLLA IN VÅRA NÖJDA KUNDER </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="Symbol för användarnas val" > </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"> Hur vi revolutionerade den gamla goda kudden </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"> Ingen mer smärta på morgonen </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="Smärta i nacken" > </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"> Ingen mer smärta på morgonen </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"> Vissa experter menar att nackbesvär är naturligt och orsakas av dålig hållning under dagen, som att arbeta för länge framför datorn. Men vi håller inte med om detta! Här på Derila strävar vi efter att förbättra människors liv. Därför har vi ägnat flera år åt att utveckla en av de mest tekniskt avancerade ergonomiska minnesskumkuddarna. </p> <div class="tw-text-center md:tw-text-left"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Den ultimata kudden för djupsömn </h3> <p class="tw-text-base tw-mb-s24">Genom att erbjuda korrekt justering och tryckavlastning hjälper vår kudde till att lindra vanliga sömnstörningar som nacksmärta och obehag, vilket gör det möjligt för användare att bli kvar i de djupa sömnstadierna under längre perioder. </p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-s24">Resultatet är en mer återhämtande och föryngrande sömnupplevelse, så att du känner dig energisk och fräsch när du vaknar på morgonen.</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"> Läs mer... </p> <div x-show="open" class="tw-text-base"> <p class="tw-mb-0">Resultatet är en mer återhämtande och föryngrande sömnupplevelse, så att du känner dig energisk och fräsch när du vaknar på morgonen.</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="Sammanfattning av sömnresultat" > <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 standardkuddar </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="Stöd från standardkudde" > <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"> Standardkuddar </h4> <p class="tw-text-base tw-mb-s24 md:tw-mb-0 tw-relative tw-z-[1]"> Traditionella kuddar är inte utformade för att ge stöd, vilket innebär att din ryggrad hamnar i en onaturlig kurva - något som ofta leder till smärta, obehag och dålig sömnkvalitet. </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 stödkudde" > <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 stödkudde </h4> <p class="tw-text-base tw-mb-s24 md:tw-mb-0 tw-relative tw-z-[1] !tw-mb-0"> Derila använder avancerad teknik med minnesskum för att räta ut och stödja din ryggrad i dess naturliga position, minska smärta och förbättra sömnen. </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 sova på rygg" > <p class="tw-my-4">Ryggen</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 sova på sidan" > <p class="tw-my-4">Sidan</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 sova på mage" > <p class="tw-my-4 md:tw-mb-0">Magen</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 ständigt föränderlig sömn" > <p class="tw-my-4 md:tw-mb-0">Passar för alla sovställningar</p> </div> </div> <div class="md:tw-hidden tw-text-center tw-mt-5"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Utformad för alla sovställningar </h3> <p class="tw-text-base tw-mb-s24 tw-mt-3"> Här på Derila har vi ägnat två år åt att utveckla den perfekta kudden för alla sovställningar. Genom intensiv forskning och prövning har vi med hjälp av den modernaste tekniken skapat en mångsidig kudde som sömlöst anpassar sig till varje sovandes individuella behov. </p> <div class="tw-hidden md:tw-block"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Sluta snarka idag </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="Snarkning med standardkudde" > </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"> Sluta snarka idag </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 av 10 av våra kunder upplevde en avsevärd minskning av snarkningar eller slutade snarka helt! Hur kommer det sig? Snarkning beror ofta på att luftvägarna förträngs i vissa sovställningar, vilket får vävnaderna i andningsvägarna att vibrera hörbart under inandning och utandning, något som resulterar i störande snarkljud.</p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0">Derila-kudden är omsorgsfullt utformad för att bibehålla ryggradens position under sömnen och därigenom vidga luftvägarna och förbättra luftflödet till lungorna. Följaktligen leder detta till ökat syreintag och en minskning av snarkning, vilket i sin tur ger en mer rofylld nattsömn.</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"> Läs mer... </p> <div x-show="open" class="tw-text-base"> <p class="tw-mb-0">Derila-kudden är omsorgsfullt utformad för att bibehålla ryggradens position under sömnen och därigenom vidga luftvägarna och förbättra luftflödet till lungorna. Följaktligen leder detta till ökat syreintag och en minskning av snarkning, vilket i sin tur ger en mer rofylld nattsömn.</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"> Minnesskum är den nya standarden </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"> Minnesskum är den nya standarden </h2> </div> <p class="tw-text-base tw-mb-0"> En ergonomisk minneskumkudde är det bästa alternativet för en god natts sömn tack vare dess anmärkningsvärda förmåga att ge individuellt anpassat stöd och komfort. </p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0">Derilas minnesskummaterial anpassar sig efter huvudets och nackens unika konturer, vilket säkerställer en korrekt inriktning av ryggraden och minskar antalet tryckpunkter.</p> <p class="tw-hidden md:tw-block tw-text-base tw-mb-0"> Med sin ergonomiska design främjar Derila inte bara en sundare sovställning utan även blodcirkulationen, vilket gör den till ett utmärkt val för alla som vill ha nattlig komfort. </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"> Läs mer... </p> <div x-show="open" class="tw-text-base"> <p class="">Derilas minnesskummaterial anpassar sig efter huvudets och nackens unika konturer, vilket säkerställer en korrekt inriktning av ryggraden och minskar antalet tryckpunkter.</p> <p class="tw-mb-0">Derilas ortopediska design främjar inte bara hälsosamma sovställningar utan ökar också blodcirkulationen, vilket gör den till ett utmärkt val för dem som söker nattlig komfort.</p> </div> </div> <div class="tw-text-center md:tw-text-left"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Du frågade, vi levererade </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 stödkudde " > <p class="tw-mb-0"> <span x-show="isStandard"> Bredd: 50 cm / 19.6 in<br> Höjd: 30 cm / 11.8 in </span> <span x-show="!isStandard"> Bredd: 60 cm / 23.6 in<br> Höjd: 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="Standardmått för kudde: 50x30 cm" > <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 tum </p> </div> </div> <p class="tw-text-xs tw-font-bold tw-mb-0"> 50 cm/19.6 tum </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="Standardmått för stor kudde: 60x34 cm" > <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 tum </p> </div> </div> <p class="tw-text-xs tw-font-bold tw-mb-0"> 60 cm/23.6 tum </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" > Plusstorlek </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"> Du frågade, vi levererade </h2> <p class="tw-text-base tw-mt-5 tw-mb-0">Nu kan du välja den storlek du föredrar från Derila!</p> <p class="tw-text-base tw-my-5"> Oavsett om du väljer plusstorlek eller den vanliga ergonomiska Derila-kudden kan du fortfarande njuta av samma högkvalitativa material, allergivänliga egenskaper och ergonomiska stöd som är kännetecknen för vårt varumärke. </p> <div class="tw-text-center md:tw-text-left"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Se själv hur den fungerar! </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="Se den i bruk Derila miniatyrvideo" > <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="Mobiltelefon" > <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 skärmikoner" > </div> <div class="md:tw-hidden tw-mt-8 tw-text-center"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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-logotyp" > <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"> Upptäck kudden som TikTok-användare inte kan sluta prata om! Våra ergonomiska minneskumkuddar har tagit TikTok-communityn med storm, med otaliga användare som berättar om sina omvälvande sömnupplevelser. Om du är redo att uppgradera din sömnkvalitet och haka på trenden är våra kuddar det perfekta valet. </p> <p class="tw-text-base md:tw-hidden tw-text-center">Upptäck kudden som TikTok-användare inte kan sluta prata om!</p> <div class="tw-hidden md:tw-block"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Väljs av 11.000+ personer </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">Utmärkt</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">Bra</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">Genomsnittlig</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"> Lisa 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag har spenderat tusentals kronor på specialkuddar och den här är absolut bäst!! Jag var skeptisk när jag packade upp den eftersom den kändes lite tunn och lätt, men jag har sovit ordentligt varje natt i en vecka hittills och köpte 2 till!! </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="Lisa S. Derila-kudde recension" > </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"> Helena 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag älskar verkligen min kudde. Jag upplevde dåliga sovställningar tidigare och huvudvärk och axelsmärtor varje dag. Efter 4 dagar med min nya kudde har jag sovit som en bebis och min smärta är borta. </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="Helena L. Derila-kudde recension" > </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"> Åsa 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Fantastisk produkt! Efter att ha låtit den behålla den ursprungliga formen; Jag började använda den nästa natt. Har använt den varje natt sedan dess och var och en av dessa nätter; hade den bästa sömnen på länge. </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="Åsa C. Derila-kudde recension" > </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"> Karin 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Fantastisk passform; huvudet och halskotpelaren får vila och nacksmärtan säger gradvis adjö! Jag tvekar inte att rekommendera den här kudden! Tack så mycket! </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="Karin F. Derila-kudde recension" > </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"> Martin 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Passformen är idealisk, inte för hård inte för mjuk! Jag älskar konceptet med att ligga omvänd på huvudet eftersom det hjälper min nacke väldigt mycket! Jag ska köpa en annan till min fru eftersom hon också gillade den! Utmärkt produkt! </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="Martin D. Derila-kudde recension" > </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"> Filip 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag älskar min kudde. Den har rätt passform och är inte hård som de andra specialkuddarna - den är mjuk och skön. </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="Filip G. Derila-kudde recension" > </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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Det här är den bästa kudden jag kunnat hittat för mina problem med halskotpelaren och kort nacke... den är supermjuk men ger ändå stöd åt nacken. Jag har provat många olika och mycket dyra kuddar, och det här är den bästa... Jag köpte den vanliga standardstorleken som är perfekt för mig... </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-kudde recension" > </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"> Daniel 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Kudden har hjälpt mig mycket. Den stora fördelen är faktiskt den avfasade mitten av kudden. Jag har provat olika kuddar för nackstöd men den här hjälpte verkligen. Den är fast, men ändå så mjuk att sidosovande är mycket bekvämt. </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="Daniel O. Derila-kudde recension" > </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"> Jonas 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag köpte Derila-kudden till mig själv eftersom jag älskar minneskumkuddar och derila är bra, men något märkligt hände när min katt gjorde den till sin favoritplats att lägga sig på. Hon verkligen älskar den! Har ni några planer på att lansera en produktlinje för husdjur? </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="Jonas P. Derila-kudde recension" > </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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag har haft många kuddar där jag har fått höra att det här är den bästa, men mitt huvud och nacke höll inte med. Jag har hittat den bästa med Derila-kudden. Den är ergonomisk och hudvänlig, helt underbar! </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-kudde recension" > </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"> Frida 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag älskar verkligen den här kudden! Har provat så många olika kuddar och alla fick mig att fortsätta att ha ont i nacken på morgnarna, men INTE den här. Jag har sovit bättre än jag har gjort på flera år. </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="Frida O. Derila-kudde recension" > </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"> Sonja 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"> Verifierad kund </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="Stjärnor på Trustpilot" > <p class="tw-mb-0"> Jag slutade snarka den första natten jag använde min kudde och har inte snarkat sedan dess. Min man säger att det är de bästa pengar han någonsin spenderat på en kudde. Jag ville köpa en till som gåva men de tog slut i lagret. Väntar på black friday-erbjudanden nu. Överlag bra produkt. Jag rekommenderar den. </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="Sonja M. Derila-kudde recension" > </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">Hämta mer</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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> Vanliga frågor </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"> Hur lång tid tar det att få min Derila-kudde? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > På Derila strävar vi efter att ge våra kunder en enkel och smidig shoppingupplevelse. Vi är stolta över att bedriva verksamhet från flera strategiskt belägna huvudlager i USA, Kanada, Europa och Asien. I genomsnitt kan du förvänta dig att få din beställning inom cirka 4 till 5 arbetsdagar från inköpsdatumet. Tänk på att leveranstiderna kan variera något beroende på din specifika plats och eventuella oförutsedda omständigheter, men var säker på att vi arbetar flitigt för att få din ergonomiska minneskumkudde till dig så snabbt som möjligt. Om du har några ytterligare frågor eller behöver hjälp med din beställning finns vårt kundtjänstteam alltid här för att hjälpa dig! </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"> Vilken är den bästa kudden för min sovställning? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > Derilas ergonomiska minnesskumkudde är det slutliga resultatet av våra omfattande forsknings- och utvecklingsinsatser för att skapa en kudde som passar alla sovställningar. Vi är medvetna om att alla människor har olika sömnpreferenser, och vårt engagemang för innovation har lett till att vi har lagt ner mycket tid och resurser på att utforma en kudde som tillgodoser allas behov. Genom rigorösa tester och feedback från sömnexperter har vi skapat en kudde som enkelt anpassar sig till din unika sovställning, vilket säkerställer optimal ryggradsinriktning och minskar obehag. Med Derila får du inte bara en kudde; du får uppleva kulmen av åratals forskning och utveckling dedikerad till att ge dig bästa möjliga sömn. </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"> Hur tvättar jag min Derila-kudde? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > Våra kuddar är tillverkade av helt nya material som produceras specifikt för din kudde, på grund av detta behöver nya kuddar inte tvättas direkt ur förpackningen. Om du ändå vill tvätta dem ber vi dig att följa dessa anvisningar: <br/><br/> Avtagbart kuddöverdrag <br/> Tvättning: Tvätta i kallt vatten, fintvätt. Använd inte sköljmedel eller blekmedel. Torkning: Torktumla på låga temperaturer. Se till att överdraget är helt torrt före användning. <br/><br/> Inre kuddfodral <br/> Tvätta: Stäng dragkedjan med en säkerhetsnål för att förhindra att den öppnas eller att minnesskummet läcker ut under tvätten. Tvätta i kallt vatten, fintvätt. Använd inte sköljmedel eller blekmedel. Torka: Torka en kudde i taget. Torktumla på låga temperaturer tills innerkudden är helt torr före användning. Detta kan ta flera cykler och varierar beroende på din tvättmaskin och torktumlare. </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"> Stoppar den verkligen snarkningar? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > Även om vi inte kan garantera att vår kudde kommer att eliminera snarkningar för alla, är det viktigt att förstå att snarkningar kan orsakas av olika faktorer. Vi har dock lagt ner betydande resurser på att utforma vår ergonomiska Derila-kudde med minnesskum, och vi har fått feedback från tusentals nöjda kunder som har rapporterat en minskning eller till och med en fullständig lösning på snarkningsproblemen. Vår kuddes innovativa design främjar korrekt ryggradsinriktning och säkerställer bekväma sömnpositioner, vilket kan bidra till en mer rofylld natts sömn. Även om individuella resultat kan variera är vi övertygade om att vår kudde kan göra en betydande skillnad när det gäller att ta itu med snarkningsproblem för många individer. </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"> Har ni några planer på att lansera en produktserie för husdjur? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > Det är fantastiskt roligt att höra att vår Derila-kudde har skänkt glädje till din familj, inklusive din älskade katt! Även om vi för närvarande inte har några specifika planer på att lansera en produktlinje för husdjur, är vi glada över att vår kudde har blivit en så omtyckt plats för din lurviga vän. Vårt primära fokus är fortfarande att tillhandahålla ergonomiska minneskumkuddar av högsta kvalitet för att människor ska kunna njuta av en vilsam sömn. Vi uppskattar din entusiasm och den kärlek som din katt har visat för vår produkt, och vi kommer säkert att ha din feedback i åtanke när vi fortsätter att utforska nya möjligheter. </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"> Mitt paket kom vakuumförseglat. Trevligt, men varför? </p> <p class="tw-font-normal tw-mb-0" x-show="open" x-bind:class="open ? 'tw-mt-4' : 'tw-mt-0'" x-cloak > Anledningen till den vakuumförseglade förpackningen är att säkerställa att produkten förblir i sitt optimala skick under transporten. Det skyddar varan från damm, fukt och eventuella skador, så att den håller sig fräsch och håller hög kvalitet tills den når dig. Det är bara ett av de sätt som vi tar extra hänsyn till för att leverera den bästa möjliga produkten till våra uppskattade kunder. </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"> Missa inte chansen! </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"> Agera snabbt innan denna kampanj slutar! </h2> <div class="tw-text-center md:tw-text-left tw-mt-6"> <a href="https://get-derila.com/derila/order?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" 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)" > Få 70 % rabatt </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"> BUTIK </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Grossistförsäljning </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Användarvillkor </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Integritetspolicy </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Fraktpolicy </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Faktureringspolicy </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Om oss </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"> Partnerprogram </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Användarhandbok </a> </div> </div> <div> <div class="tw-font-bold tw-self-center md:tw-order-first"> BESTÄLLNING </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Spåra min beställning </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1"> Policy för returer och återbetalningar </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/sv/support/home"> Vanliga frågor och svar </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/sv/support/home"> Kontakta </a> </div> </div> <div> <div class="tw-font-bold tw-self-center md:tw-order-first"> KUNDTJÄNST: </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> Kontakta oss: </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?l=sv&amp;c=sek&amp;vndr=evf&amp;evf=1&amp;offid=37&amp;affiliate_id=792&amp;uuid=019371af-4ec3-7d51-9245-661daa6464b6&amp;hj=1&amp;gae=1&amp;eppss=1&amp;sndv=1&amp;sruep=1&amp;sale=bf2024&amp;ppdf=credit&amp;_=7189%2C2624%2C4288%2C5829%2C6102%2C6341%2C7035%2C7399&amp;sntp=1" class="tw-text-footer-text tw-text-opacity-50 tw-inline-block" data-ga-category="Link" data-ga-click="16 - Footer (Email)" > Mejla oss </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 Alla rättigheter förbehållna. </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;sv&quot;,&quot;shouldRender&quot;:false,&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\/derila\/product-1?affiliate_id=792&amp;c=sek&amp;evf=1&amp;l=sv&amp;offid=37&amp;source_id=og-se&amp;uid=4236&amp;vndr=evf&quot;},&quot;memo&quot;:{&quot;id&quot;:&quot;uqH8OIHFDXFNehUPDTtx&quot;,&quot;name&quot;:&quot;footer-language-selector&quot;,&quot;path&quot;:&quot;derila\/product-1&quot;,&quot;method&quot;:&quot;GET&quot;,&quot;children&quot;:[],&quot;scripts&quot;:[],&quot;assets&quot;:[],&quot;errors&quot;:[],&quot;locale&quot;:&quot;sv&quot;},&quot;checksum&quot;:&quot;7fe026b3c3d43e7e166c115e49090757589d525d09f4e9f4c9a28751a5832964&quot;}" wire:effects="[]" wire:id="uqH8OIHFDXFNehUPDTtx" class="tw-hidden"> </div> </div> </div> </div> <script> document.addEventListener('alpine:init', function () { Alpine.data('SC_67481c7eb5db3', 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> <script data-navigate-once="true">window.livewireScriptConfig = {"csrf":"tkvHaclI5K4Drw3tsbvIfBKYy5TLxkn0buY69ZEH","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', "019371af-4ec3-7d51-9245-661daa6464b6") .then(function () { tracktor.recordVisit( {"l":"sv","c":"sek","vndr":"evf","evf":"1","offid":"37","affiliate_id":"792","uuid":"019371af-4ec3-7d51-9245-661daa6464b6","hj":"1","gae":"1","eppss":"1","sndv":"1","sruep":"1","sale":"bf2024","ppdf":"credit","_":"7189,2624,4288,5829,6102,6341,7035,7399","sntp":"1"}, [{"key":"page_category","value":"product"},{"key":"ip_country","value":"SG"},{"key":"brand","value":"derila"},{"key":"locale","value":"sv"},{"key":"vendor","value":"evf"}], null ).catch(function (error) { console.error(error); tracktor.initFallback("019371af-4ec3-7d51-9245-661daa6464b6").then(function () { tracktor.recordVisit( {"l":"sv","c":"sek","vndr":"evf","evf":"1","offid":"37","affiliate_id":"792","uuid":"019371af-4ec3-7d51-9245-661daa6464b6","hj":"1","gae":"1","eppss":"1","sndv":"1","sruep":"1","sale":"bf2024","ppdf":"credit","_":"7189,2624,4288,5829,6102,6341,7035,7399","sntp":"1"}, [{"key":"page_category","value":"product"},{"key":"ip_country","value":"SG"},{"key":"brand","value":"derila"},{"key":"locale","value":"sv"},{"key":"vendor","value":"evf"}], 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