PageSourceSearch

https://www.swishr.co.uk/privacy-policy

html swishr.co.uk collected 2026-10-02 02:09:56 UTC 164,869 bytes, 41 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta property="og:site_name" content="Swishr"/><link rel="icon" href="/_next/static/media/favicon.57a565a2.ico"/><link rel="shortcut icon" href="/_next/static/media/favicon.57a565a2.ico"/><title>Swishr - Privacy Policy</title><meta name="next-head-count" content="6"/>
1<script>
1<script type="text/javascript">
2;window.NREUM||(NREUM={});NREUM.init={distributed_tracing:{enabled:true},performance:{capture_measures:true},browser_consent_mode:{enabled:false},privacy:{cookies_enabled:true},ajax:{deny_list:["bam.eu01.nr-data.net"],capture_payloads:'none'}};
3
4;NREUM.loader_config={accountID:"3038447",trustKey:"3038447",agentID:"538833338",licenseKey:"NRJS-636978fd4018ddee497",applicationID:"538833338"};
5;NREUM.info={beacon:"bam.eu01.nr-data.net",errorBeacon:"bam.eu01.nr-data.net",licenseKey:"NRJS-636978fd4018ddee497",applicationID:"538833338",sa:1};
6;/*! For license information please see nr-loader-spa-1.311.0.min.js.LICENSE.txt */
7(()=>{var e,t,r={384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>a,Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),o=r(1910);const a={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,o.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:a.beacon,errorBeacon:a.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>u,K7:()=>c,P3:()=>d,XX:()=>i,Yy:()=>a,df:()=>s,qY:()=>n,v4:()=>o});const n="events",i="jserrors",s="browser/blobs",o="rum",a="browser/logs",c={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},d={[c.pageViewEvent]:1,[c.pageViewTiming]:2,[c.metrics]:3,[c.jserrors]:4,[c.softNav]:5,[c.ajax]:6,[c.sessionTrace]:7,[c.sessionReplay]:8,[c.logging]:9,[c.genericEvents]:10},u={[c.pageViewEvent]:o,[c.pageViewTiming]:n,[c.ajax]:n,[c.softNav]:n,[c.metrics]:i,[c.jserrors]:i,[c.sessionTrace]:s,[c.sessionReplay]:s,[c.logging]:a,[c.genericEvents]:"ins"}},944:(e,t,r)=>{"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>s,ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},s={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},o="log",a=n.K7.logging},1541:(e,t,r)=>{"use strict";r.d(t,{U:()=>i,f:()=>n});const n={MFE:"MFE",BA:"BA"};function i(e,t){if(2!==t?.harvestEndpointVersion)return{};const r=t.agentRef.runtime.appMetadata.agents[0].entityGuid;return e?{"source.id":e.id,"source.name":e.name,"source.type":e.type,"parent.id":e.parent?.id||r,"parent.type":e.parent?.type||n.BA}:{"entity.guid":r,appId:t.agentRef.info.applicationID}}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>a,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),o=r(2646);function a(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>
7e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,a=i.i.handlers;if(s&&!s.aborted&&s.backlog&&a){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=a[t];if(r){for(let t=0;e&&t<e.length;++t)h(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof o.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete a[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function h(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},1738:(e,t,r)=>{"use strict";r.d(t,{U:()=>h,Y:()=>l});var n=r(3241),i=r(9908),s=r(1863),o=r(944),a=r(3969),c=r(8362),d=r(860),u=r(4261);function l(e,t,r,s){const l=s||r;!l||l[e]&&l[e]!==c.d.prototype[e]||(l[e]=function(){(0,i.p)(a.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:u.Pl+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,o.R)(23,e)}})}function h(e,t,r,n,o){const a=e.info;null===r?delete a.jsAttributes[t]:a.jsAttributes[t]=r,(o||null===r)&&(0,i.p)(u.Pl+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},1741:(e,t,r)=>{"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e(i.$9,e,t)}start(){return this.#e(i.d3)}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},1910:(e,t,r)=>{"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},2555:(e,t,r)=>{"use strict";r.d(t,{D:()=>a,f:()=>o});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function o(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}const a=e=>(0,i.a)(e,s)},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>o,H3:()=>n,g:()=>d,iL:()=>c,tS:()=>a,uh:()=>i,wk:()=>s});const n="NRBA",i="SESSION",s=144e5,o=18e5,a={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},d={OFF:0,FULL:1,ERROR:2}},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},2843:(e,t,r)=>{"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},3241:(e,t,r)=>{"use strict";r.d(t,{W:()=>s});var n=r(6154);const i="newrelic";function s(e={}){try{n.gm.dispatchEvent(new CustomEvent(i,{detail:e}))}catch(e){}}},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(7836);const i=()=>{const e=[];return function(t,r){if(e.length>0){const t=e.indexOf(this);if(~t?e.splice(t+1):e.push(this),~e.indexOf(r))return}else e.push(r);return r}};function s(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},3333:(e,t,r)=>{"use strict";r.d(t,{$v:()=>u,TZ:()=>n,Xh:()=>c,Zp:()=>i,kd:()=>d,mq:()=>a,nf:()=>o,qN:()=>s});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],s=["focus","blur"],o=4,a=1e3,c=2e3,d=["PageAction","UserAction","BrowserPerformance"],u={RESOURCES:"experimental.resources",REGIST
7ER:"register"}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>s,YM:()=>d});var n=r(7836),i=r(5607);const s="nr@original:".concat(i.W),o=50;var a=Object.prototype.hasOwnProperty,c=!1;function d(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,s){n||(n="");const o="-"===n.charAt(0);for(let a=0;a<t.length;a++){const c=t[a],d=e[c];l(d)||(e[c]=r(d,o?c+n:n,i,c,s))}},r.flag=s,r;function r(t,r,n,c,d){return l(t)?t:(r||(r=""),nrWrapper[s]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var s,a,l,h;let f;try{a=this,s=[...arguments],l="function"==typeof n?n(s,a):n||{}}catch(t){u([t,"",[s,a,c],l],e)}i(r+"start",[s,a,c],l,d);const p=performance.now();let g;try{return h=t.apply(a,s),g=performance.now(),h}catch(e){throw g=performance.now(),i(r+"err",[s,a,e],l,d),f=e,f}finally{const e=g-p,t={start:p,end:g,duration:e,isLongTask:e>=o,methodName:c,thrownError:f};t.isLongTask&&i("long-task",[t,a],l,d),i(r+"end",[s,a,h],l,d)}}}function i(r,n,i,s){if(!c||t){var o=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=o}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[s])}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=o;var i=s.handlers={};function s(e,t,r,s){o(s||n.d,i,e,t,r)}function o(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var o=t[s]=t[s]||{};(o[r]=o[r]||[]).push([e,i])}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>a,Lc:()=>d,Rz:()=>u,TZ:()=>n,bD:()=>s,d3:()=>o,jx:()=>l,sl:()=>h,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",s="resource",o="-start",a="-end",c="fn"+o,d="fn"+a,u="pushState",l=1e3,h=3e4},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),o=r(3969),a=r(993);function c(e,t,r={},c=a.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(o.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)(a.ET,[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(a.p_).some(t=>t===e.toUpperCase().trim())}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>l,OV:()=>s,Qu:()=>h,TZ:()=>c,ih:()=>f,pP:()=>a,t1:()=>u,tC:()=>i,wD:()=>d});var n=r(860);const i=["click","keydown","submit"],s="popstate",o="api",a="initialPageLoad",c=n.K7.softNav,d=5e3,u=500,l={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},h={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},f={IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>a,rs:()=>i,xV:()=>o,z_:()=>s});const n=r(860).K7.metrics,i="sm",s="cm",o="storeSupportabilityMetrics",a="storeEventMetrics"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},4261:(e,t,r)=>{"use strict";r.d(t,{$9:()=>u,BL:()=>c,CH:()=>p,Dl:()=>R,Fw:()=>w,PA:()=>v,Pl:()=>n,Pv:()=>x,Tb:()=>h,U2:()=>o,V1:()=>A,Wb:()=>T,bt:()=>b,cD:()=>y,d3:()=>E,dT:()=>d,eY:()=>g,fF:()=>f,hG:()=>s,hw:()=>i,k6:()=>a,nb:()=>m,o5:()=>l});const n="api-",i=n+"ixn-",s="addPageAction",o="addToTrace",a="addRelease",c="finished",d="interaction",u="log",l="noticeError",h="pauseReplay",f="recordCustomEvent",p="recordReplay",g="register",m="setApplicationVersion",v="setCurrentRouteName",y="setCustomAttribute",b="setErrorHandler",w="setPageViewName",R="setUserId",E="start",T="wrapLogger",A="measure",x="consent"},5205:(e,t,r)=>{"use strict";r.d(t,{j:()=>x});var n=r(384),i=r(1741);var s=r(2555),o=r(3333);const a=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var c=r(2614),d=r(944),u=r(8122);const l="[data-nr-mask]",h=e=>(0,u.a)(e,(()=>{const e={feature_flags:[],experimental:{allow_registered_children:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},api:{get allow_registered_children(){return e.feature_flags.includes(o.$v.REGIST
7ER)||e.experimental.allow_registered_children},set allow_registered_children(t){e.experimental.allow_registered_children=t},duplicate_registered_data:!1},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:c.wk,inactiveMs:c.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){a(t)?e.mask_selector="".concat(t,",").concat(l):""===t||null===t?e.mask_selector=l:(0,d.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){a(t)?e.block_selector+=",".concat(t):""!==t&&(0,d.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,d.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}})());var f=r(6154),p=r(9324);let g=0;const m={buildEnv:p.F3,distMethod:p.Xs,version:p.xv,originTime:f.WN},v={consented:!1},y={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||v.consented},set consented(e){v.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,harvester:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++g}},b=e=>{const t=(0,u.a)(e,y),r=Object.keys(m).reduce((e,t)=>(e[t]={value:m[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)},w=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};var R=r(7836),E=r(3241);const T={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},A=e=>(0,u.a)(e,T);function x(e,t={},r,o){let{init:a,info:c,loader_config:d,runtime:u={},exposed:l=!0}=t;if(!c){const e=(0,n.pV)();a=e.init,c=e.info,d=e.loader_config}e.init=h(a||{}),e.loader_config=A(d||{}),c.jsAttributes??={},f.bv&&(c.jsAttributes.isWorker=!0),e.info=(0,s.D)(c);const p=e.init;e.runtime??=b(u),p.proxy.assets&&w(p.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,n.pV)();Object.getOwnPropertyNames(i.W.prototype).forEach(r=>{const n=i.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let s=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return s?s(...t):n})})}(e),e.runtime.loaderType=r,e.ee=R.ee.get(e.agentIdentifier),e.exposed=l,(0,E.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.runtime.configured=!0)}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>o,SR:()=>s,rF:()=>a});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function o(e){return!0===e?.session_replay.preload&&s(e)}function a(e,t){try{if("string"==typeof t?.type){if("password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,Qr:()=>c,sB:()=>a});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(s())return e();const r=(0,i.J)(e),o=setInterval(()=>{s()&&(clearInterval(o),r())},500);(0,n.sp)("load",r,t)}function a(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>s,gm:()=>o,lR:()=>l,m:()=>c,mw:()=>a,sb:()=>u,zk:()=>f});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),o=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),a=Boolean("hidden"===o?.document?.visibilityState),c=""+o?.location,d=/iPad|iPhone|iPod/.test(o.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=o.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)(),f=()=>{const e=o?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<o.performance.now())return e}},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>u,Qb:()=>l,TZ:()=>i,Ug:()=>o,Vh:()=>s,_s:()=>a,bc:()=>d,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,s="errorDuringReplay",o=.12,a={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
7,d={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},u=5e3,l={API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>o,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function o(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,o;i>0?(s=r.substring(0,i),o=r.substring(i)):(s=r,o="*");let[c]=s.split(":");n.push({hostname:a(c),pathname:a(o,!0)})}}function a(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7699:(e,t,r)=>{"use strict";r.d(t,{It:()=>s,KC:()=>a,No:()=>i,qh:()=>o});var n=r(860);const i=16e3,s=1e6,o="SESSION_ERROR",a={[n.K7.logging]:!0,[n.K7.genericEvents]:!1,[n.K7.jserrors]:!1,[n.K7.ajax]:!1}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>i});var n=r(6154);const i=e=>n.RI&&!0===e?.privacy.cookies_enabled},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>a,ee:()=>c});var n=r(384),i=r(8990),s=r(2646),o=r(5607);const a="nr@context:".concat(o.W),c=function e(t,r){var n={},o={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var h={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var a=f(n);g(e).forEach(e=>{e.apply(a,r)});var d=v()[o[e]];d&&d.push([h,e,r,a]);return a},get:m,listeners:g,context:f,buffer:function(e,t){const r=v();if(t=t||"feature",h.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{o[n]=t,t in r||(r[t]=[])})},abort:function(){h._aborted=!0,Object.keys(h.backlog).forEach(e=>{delete h.backlog[e]})},isBuffering:function(e){return!!v()[o[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(h,"aborted",{get:()=>{let e=h._aborted||!1;return e||(t&&(e=t.aborted),e)}}),h;function f(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,a,()=>new s.y(a)):new s.y(a)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(h,t)}function v(){return h.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c)},7866:(e,t,r)=>{"use strict";r.d(t,{Nc:()=>s,cn:()=>a,fL:()=>i,h3:()=>n,hB:()=>o});
7const n=/function (.+?)\s*\(/,i=/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,s=/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,o=/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i,a=/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i},8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let o in s)if(void 0!==e[o])try{if(null===e[o]){r[o]=null;continue}Array.isArray(e[o])&&Array.isArray(t[o])?r[o]=Array.from(new Set([...e[o],...t[o]])):e[o]instanceof Map||e[o]instanceof Set||e[o]instanceof Date||e[o]instanceof RegExp?r[o]=e[o]:"object"==typeof e[o]&&"object"==typeof t[o]?r[o]=i(e[o],t[o]):r[o]=e[o]}catch(e){r[o]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>h});var n=r(7836),i=r(3434),s=r(8990),o=r(6154);const a={},c=o.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function h(e){var t=function(e){return(e||n.ee).get("events")}(e);if(a[t.debugId]++)return t;a[t.debugId]=1;var r=(0,i.YM)(t,!0);function h(e){r.inPlace(e,[d,u],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(o.RI&&f(document,h),c&&f(c.prototype,h),f(o.gm,h)),t.on(d+"-start",function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)&&"newrelic"!==e[0]){var i=(0,s.I)(n,l,function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n});this.wrapped=e[1]=i}}),t.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),t}function f(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},8362:(e,t,r)=>{"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},9119:(e,t,r)=>{"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},9324:(e,t,r)=>{"use strict";r.d(t,{AJ:()=>o,F3:()=>i,Xs:()=>s,Yq:()=>a,xv:()=>n});const n="1.311.0",i="PROD",s="CDN",o="@newrelic/rrweb",a="1.0.1"},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>a,ZF:()=>c,bz:()=>o,el:()=>d});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function s(e,t){return e?15&e[t]:16*Math.random()|0}function o(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map(e=>"x"===e?s(t,r++).toString(16):"y"===e?(3&s()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const o=[];for(var a=0;a<e;a++)o.push(s(r,i++).toString(16));return o.join("")}function c(){return a(16)}function d(){return a(32)}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var s=n[e]={exports:{}};return r[e](s,s.exports,i),s.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((t,r)=>(i.f[r](e,t),t),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}
7[e]+"-1.311.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.311.0.PROD:",i.l=(r,n,s,o)=>{if(e[r])e[r].push(n);else{var a,c;if(void 0!==s)for(var d=document.getElementsByTagName("script"),u=0;u<d.length;u++){var l=d[u];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+s){a=l;break}}if(!a){c=!0;var h={478:"sha512-vY59SCk9qtxvflEssAAOGTD+u8wwyRgLXGVNkCgGDw0oa/PLyIiED4GD8bXD183DjLKmNY74PbniKM37udIcGQ==",249:"sha512-KpUVwsSae1hL/Tf26T6FKCrLB9eTDydIG6KHBHMUYlAqPaN8PXvwOhlGgSdbKwyoWewutQdkRC8uH9RMassxkQ==",212:"sha512-/NIUu4i7qxd6M+n+feWaYoGMnztP6+9UId6r8S6nYQQNWt5rOub1y0A6es1cYuczYrhlmlPvO1mRu3Co44QEHA=="};(a=document.createElement("script")).charset="utf-8",i.nc&&a.setAttribute("nonce",i.nc),a.setAttribute("data-webpack",t+s),a.src=r,0!==a.src.indexOf(window.location.origin+"/")&&(a.crossOrigin="anonymous"),h[o]&&(a.integrity=h[o])}e[r]=[n];var f=(t,n)=>{a.onerror=a.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],a.parentNode&&a.parentNode.removeChild(a),i&&i.forEach(e=>e(n)),t)return t(n)},p=setTimeout(f.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=f.bind(null,a.onerror),a.onload=f.bind(null,a.onload),c&&document.head.appendChild(a)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var s=new Promise((r,i)=>n=e[t]=[r,i]);r.push(n[2]=s);var o=i.p+i.u(t),a=new Error;i.l(o,r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var s=r&&("load"===r.type?"missing":r.type),o=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed: ("+s+": "+o+")",a.name="ChunkLoadError",a.type=s,a.request=o,n[1](a)}},"chunk-"+t,t)}};var t=(t,r)=>{var n,s,[o,a,c]=r,d=0;if(o.some(t=>0!==e[t])){for(n in a)i.o(a,n)&&(i.m[n]=a[n]);if(c)c(i)}for(t&&t(r);d<o.length;d++)s=o[d],i.o(e,s)&&e[s]&&e[s][0](),e[s]=0},r=self["webpackChunk:NRBA-1.311.0.PROD"]=self["webpackChunk:NRBA-1.311.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(8362),t=i(860);const r=Object.values(t.K7);var n=i(5205);var s=i(9908),o=i(1863),a=i(4261),c=i(1738);var d=i(1687),u=i(4234),l=i(5289),h=i(6154),f=i(944),p=i(5270),g=i(7767),m=i(6389),v=i(7699);class y extends u.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,m.J)(()=>{(0,d.Ak)(e,this.featureName),t()}))}):(0,d.Ak)(e,t)}importAggregator(e,t,r={}){if(this.featAggregate)return;const n=async()=>{let n;await this.deferred;try{if((0,g.V)(e.init)){const{setupAgentSession:t}=await i.e(478).then(i.bind(i,8766));n=t(e)}}catch(e){(0,f.R)(20,e),this.ee.emit("internal-error",[e]),(0,s.p)(v.qh,[e],void 0,this.featureName,this.ee)}try{if(!this.#t(this.featureName,n,e.init))return(0,d.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:i}=await t();this.featAggregate=new i(e,r),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,f.R)(34,e),this.abortHandler?.(),(0,d.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1),this.ee&&this.ee.abort()}};h.RI?(0,l.GG)(()=>n(),!0):n()}#t(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,p.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}}var b=i(6630),w=i(2614),R=i(3241);class E extends y{static featureName=b.T;constructor(e){var t;super(e,b.T),this.setupInspectionEvents(),t=e,(0,c.Y)(a.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,s.p)(a.Pl+a.Fw,[(0,o.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>i.e(478).then(i.bind(i,5839)))}setupInspectionEvents(){const e=(e,t)=>
7{e&&(0,R.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,l.sB)(t=>{e(t,"DOMContentLoaded")}),(0,l.GG)(t=>{e(t,"load")}),(0,l.Qr)(t=>{e(t,"navigate")}),this.ee.on(w.tS.UPDATE,(e,t)=>{(0,R.W)({type:"lifecycle",name:"session",data:t})})}}var T=i(384);class A extends e.d{constructor(e){var t;(super(),h.gm)?(this.features={},(0,T.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(E),(0,n.j)(this,e,e.loaderType||"agent"),t=this,(0,c.Y)(a.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,c.U)(t,e,r,a.cD,n);(0,f.R)(40,typeof r)}else(0,f.R)(39,typeof e)},t),function(e){(0,c.Y)(a.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,f.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,s.p)(a.Pl+"setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,c.U)(e,"enduser.id",t,a.Dl,!0)},e)}(this),function(e){(0,c.Y)(a.nb,function(t){if("string"==typeof t||null===t)return(0,c.U)(e,"application.version",t,a.nb,!1);(0,f.R)(42,typeof t)},e)}(this),function(e){(0,c.Y)(a.d3,function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,c.Y)(a.Pv,function(t=!0){if("boolean"==typeof t){if((0,s.p)(a.Pl+a.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum()})}}else(0,f.R)(65,typeof t)},e)}(this),this.run()):(0,f.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return r.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),n=[...this.desiredFeatures];n.sort((e,r)=>
7t.P3[e.featureName]-t.P3[r.featureName]),n.forEach(r=>{if(!e[r.featureName]&&r.featureName!==t.K7.pageViewEvent)return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,f.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,f.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,T.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var x=i(2843),S=i(782);class _ extends y{static featureName=S.T;constructor(e){super(e,S.T),h.RI&&((0,x.u)(()=>(0,s.p)("docHidden",[(0,o.t)()],void 0,S.T,this.ee),!0),(0,x.G)(()=>(0,s.p)("winPagehide",[(0,o.t)()],void 0,S.T,this.ee)),this.importAggregator(e,()=>i.e(478).then(i.bind(i,9917))))}}var O=i(3969);class P extends y{static featureName=O.TZ;constructor(e){super(e,O.TZ),h.RI&&document.addEventListener("securitypolicyviolation",e=>{(0,s.p)(O.xV,["Generic/CSPViolation/Detected"],void 0,this.featureName,this.ee)}),this.importAggregator(e,()=>i.e(478).then(i.bind(i,6555)))}}var N=i(6774),k=i(3878),D=i(3304);class j{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,D.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return M(e)?e:new j(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function I(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(M(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return C(e.reason)}const r=C(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new j(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return M(e.error)?e.error:C(e)}function M(e){return e instanceof Error&&!!e.stack}function H(e,r,n,i,a=(0,o.t)()){"string"==typeof e&&(e=new Error(e)),(0,s.p)("err",[e,a,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,s.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var B=i(1541),K=i(993),W=i(3785);function F(e,{customAttributes:t={},level:r=K.p_.INFO}={},n,i,s=(0,o.t)()){(0,W.R)(n.ee,e,t,r,!1,i,s)}function U(e,r,n,i,c=(0,o.t)()){(0,s.p)(a.Pl+a.hG,[c,e,r,i],void 0,t.K7.genericEvents,n.ee)}function V(e,r,n,i,c=(0,o.t)()){const{start:d,end:u,customAttributes:l}=r||{},h={customAttributes:l||{}};if("object"!=typeof h.customAttributes||"string"!=typeof e||0===e.length)return void(0,f.R)(57);const p=(e,t)=>null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(h.start=p(d,0),h.end=p(u,c),Number.isNaN(h.start)||Number.isNaN(h.end))(0,f.R)(57);else{if(h.duration=h.end-h.start,!(h.duration<0))return(0,s.p)(a.Pl+a.V1,[h,e,i],void 0,t.K7.genericEvents,n.ee),h;(0,f.R)(58)}}function z(e,r={},n,i,c=(0,o.t)()){(0,s.p)(a.Pl+a.fF,[c,e,r,i],void 0,t.K7.genericEvents,n.ee)}var G=i(9119),Y=i(7866);let q;try{q=J(Q()).at(0)}catch(e){q=J(e).at(0)}const Z=new Set;let X=[];if(h.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&e.name.endsWith(".js"))(e)){Z.size>250&&Z.delete(Z.values().next().value),Z.add(e);const t=[];X.forEach(({test:r,addedAt:n},i)=>{(r(e)||(0,o.t)()-n>1e4)&&t.push(i)}),X=X.filter((e,r)=>!t.includes(r))}})}).observe({type:"resource",buffered:!0})}function J(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(Y.cn)||e.match(Y.hB)||e.match(Y.fL);if(r&&r[2])t.add((0,G.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);
7r&&r[1]&&t.add((0,G.L)(r[1]))}}return[...t]}function Q(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function ee(){const e={registeredAt:(0,o.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,asset:void 0,type:"unknown"},t=Q();if(!t)return e;const r=h.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const n=J(t),i=(n.length>1?n.filter(e=>!q.endsWith(e)&&!e.endsWith(q)):n).at(0);if(!i)return e;if(r.includes(i))return e.asset=(0,G.L)(r),e.type="inline",e;const s=performance.getEntriesByType("resource").find(a)||[...Z].find(a);function a(e){const t=(0,G.L)(e.name);return t.endsWith(i)||i.endsWith(t)}function c(t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType}s?c(s):function(e){if(!e||!h.gm.document)return!1;try{const t=h.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,G.L)(r.href)===e)return!0}catch(e){}return!1}(i)&&(e.asset=i,e.type="preload",X.push({addedAt:(0,o.t)(),test:e=>!!a(e)&&(c(e),!0)}))}catch(d){}return e}const te=["name","id","type"];function re(e){(0,c.Y)(a.eY,function(t){return ne(e,t)},e)}function ne(e,r,n){(0,f.R)(54,"newrelic.register"),r||={},r.type=B.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,r.parent=n||{},("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={});const i=ee(),a={};Object.entries(r.tags).forEach(([e,t])=>{te.includes(e)||(a["source.".concat(e)]=t)}),r.isolated??=!0;let c=()=>{};const d=e.runtime.registeredEntities;if(!r.isolated){const e=d.find(({metadata:{target:{id:e}}})=>e===r.id&&!r.isolated);if(e)return e}const u=e=>{r.blocked=!0,c=e};function l(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.allow_registered_children||u((0,m.J)(()=>(0,f.R)(55))),l(r.id)&&l(r.name)||u((0,m.J)(()=>(0,f.R)(48,r)));const h={addPageAction:(t,n={})=>y(U,[t,{...a,...n},e],r),deregister:()=>{g(),u((0,m.J)(()=>(0,f.R)(68)))},log:(t,n={})=>y(F,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>y(V,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>y(H,[t,{...a,...n},e],r),register:(t={})=>y(ne,[e,t],h.metadata.target),recordCustomEvent:(t,n={})=>y(z,[t,{...a,...n},e],r),setApplicationVersion:e=>v("application.version",e),setCustomAttribute:(e,t)=>v(e,t),setUserId:e=>v("enduser.id",e),metadata:{customAttributes:a,target:r,timings:i}},p=()=>(r.blocked&&c(),r.blocked);
7function g(){i.reportedAt||(i.reportedAt=(0,o.t)(),h.recordCustomEvent("MicroFrontEndTiming",{assetUrl:i.asset,assetType:i.type,timeToLoad:i.registeredAt-i.fetchStart,timeToBeRequested:i.fetchStart,timeToFetch:i.fetchEnd-i.fetchStart,timeToRegister:i.registeredAt-i.fetchEnd,timeAlive:i.reportedAt-i.registeredAt}))}p()||(d.push(h),(0,x.G)(g));const v=(e,t)=>{p()||(a[e]=t)},y=(r,n,i)=>{if(p()&&r!==ne)return;const a=(0,o.t)();(0,s.p)(O.xV,["API/register/".concat(r.name,"/called")],void 0,t.K7.metrics,e.ee);try{if(e.init.api.duplicate_registered_data&&r!==ne){let e=n;if(n[1]instanceof Object){const t={"child.id":i.id,"child.type":i.type};e="customAttributes"in n[1]?[n[0],{...n[1],customAttributes:{...n[1].customAttributes,...t}},...n.slice(2)]:[n[0],{...n[1],...t},...n.slice(2)]}r(...e,void 0,a)}return r(...n,i,a)}catch(e){(0,f.R)(50,e)}};return h}class ie extends y{static featureName=N.T;constructor(e){var t;super(e,N.T),t=e,(0,c.Y)(a.o5,(e,r)=>H(e,r,t),t),function(e){(0,c.Y)(a.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,c.Y)(a.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),re(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,s.p)("ierr",[C(t),(0,o.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),h.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,s.p)("err",[I(t),(0,o.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,k.jT)(!1,this.removeOnAbort?.signal)),h.gm.addEventListener("error",t=>{this.abortHandler&&(0,s.p)("err",[L(t),(0,o.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,k.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#r,this.importAggregator(e,()=>i.e(478).then(i.bind(i,2176)))}#r(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var se=i(8990);let oe=1;function ae(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===h.gm?0:(0,se.I)(e,"nr@id",function(){return oe++})}function ce(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,D.A)(e).length}catch(e){return}}}var de=i(8139),ue=i(7836),le=i(3434);const he={},fe=["open","send"];function pe(e){var t=e||ue.ee;const r=function(e){return(e||ue.ee).get("xhr")}(t);if(void 0===h.gm.XMLHttpRequest)return r;if(he[r.debugId]++)return r;he[r.debugId]=1,(0,de.u)(t);var n=(0,le.YM)(r),i=h.gm.XMLHttpRequest,s=h.gm.MutationObserver,o=h.gm.Promise,a=h.gm.setInterval,c="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],u=[],l=h.gm.XMLHttpRequest=function(e){const t=new i(e),s=r.context(t);try{r.emit("new-xhr",[t],s),t.addEventListener(c,(o=s,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,r.emit("xhr-resolved",[],e)),n.inPlace(e,d,"fn-",b)}),(0,k.jT)(!1))}catch(e){(0,f.R)(15,e);try{r.emit("internal-error",[e])}catch(e){}}var o;return t};function p(e,t){n.inPlace(t,["onreadystatechange"],"fn-",b)}if(function(e,t){for(var r in e)t[r]=e[r]}(i,l),l.prototype=i.prototype,n.inPlace(l.prototype,fe,"-xhr-",b),r.on("send-xhr-start",function(e,t){p(e,t),function(e){u.push(e),s&&(g?g.then(y):a?a(y):(m=-m,v.data=m))}(t)}),r.on("open-xhr-start",p),s){var g=o&&o.resolve();if(!a&&!o){var m=1,v=document.createTextNode(m);new s(y).observe(v,{characterData:!0})}}else t.on("fn-end",function(e){e[0]&&e[0].type===c||y()});function y(){for(var e=0;e<u.length;e++)p(0,u[e]);u.length&&(u=[])}function b(e,t){return t}return r}var ge="fetch-",me=ge+"body-",ve=["arrayBuffer","blob","json","text","formData"],ye=h.gm.Request,be=h.gm.Response,we="prototype";const Re={};function Ee(e){const t=function(e){return(e||ue.ee).get("fetch")}(e);if(!(ye&&be&&h.gm.fetch))return t;if(Re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],s={};t.emit(n+"before-start",[r],s),s[ue.P]&&s[ue.P].dt&&(e=s[ue.P].dt);var o=i.apply(this,r);return t.emit(n+"start",[r,e],o),o.then(function(e){return t.emit(n+"end",[null,e],o),e},function(e){throw t.emit(n+"end",[e],o),e})})}
7return Re[t.debugId]=1,ve.forEach(e=>{r(ye[we],e,me),r(be[we],e,me)}),r(h.gm,"fetch",ge),t.on(ge+"end",function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(ge+"done",[null,r],n)}else t.emit(ge+"done",[e],n)}),t}var Te=i(7485),Ae=i(9566);class xe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s=(0,Ae.ZF)(),o=(0,Ae.el)(),a=Date.now(),c={spanId:s,traceId:o,timestamp:a};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(s,o),c.traceContextStateHeader=this.generateTraceContextStateHeader(s,a,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(s,o,a,r,n,i)),c}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof h.gm?.btoa))return null;var o={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(o.d.tk=s),btoa((0,D.A)(o))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Te.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Se=i(9300),_e=i(7295);function Oe(e){return"string"==typeof e?e:e instanceof(0,T.dV)().o.REQ?e.url:h.gm?.URL&&e instanceof URL?e.href:void 0}var Pe=["load","error","abort","timeout"],Ne=Pe.length,ke=(0,T.dV)().o.REQ,De=(0,T.dV)().o.XHR;const je="X-NewRelic-App-Data";class Ce extends y{static featureName=Se.T;constructor(e){super(e,Se.T),this.dt=new xe(e),this.handler=(e,t,r,n)=>(0,s.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};h.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};Ie(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}Ee(this.ee),pe(this.ee),function(e,r,n,i){function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=T,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){A(t,e)},(0,k.jT)(!1)),h.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,k.jT)(!1))}function c(e){this.params={method:e[0]},Ie(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=ce(i);a&&(n.txSize=a)}this.startTime=(0,o.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit("internal-error",[e])}catch(e){}}};for(var c=0;c<Ne;c++)t.addEventListener(Pe[c],this.listener,(0,k.jT)(!1))}function l(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function f(e,t){var r=""+ae(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+ae(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function g(){this.endTime=(0,o.t)()}function m(e,t){t instanceof De&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function v(e,t){t instanceof De&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function y(e,t,r){t instanceof De&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,o.t)()))}function b(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,o.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&h.RI&&(t=""+h.gm.location.href):e[0]&&e[0].url?t=e[0].url:h.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Te.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)a(e[0].headers,n)&&(this.dt=n);else{var s={};for(var o in r)s[o]=r[o];s.headers=new Headers(r.headers||{}),a(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function a(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,o.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r=this.opts||{},n=this.target;Ie(this,Oe(n));var i=(""+(n&&n instanceof ke&&n.method||r.method||"GET")).toUpperCase();this.params.method=i,this.body=r.body,this.txSize=ce(r.body)||0}function E(e,r){if(this.endTime=(0,o.t)(),this.params||(this.params={}),(0,_e.iW)(this.params))return;let i;this.params.status=r?r.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(i=+this.rxSize);const s={txSize:this.txSize,rxSize:i,duration:(0,o.t)()-this.startTime};n("xhr",[this.params,s,this.startTime,this.endTime,"fetch"],this,t.K7.ajax)}function T(e){const r=this.params,i=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<Ne;t++)e.removeEventListener(Pe[t],this.listener,!1);r.aborted||(0,_e.iW)(r)||(i.duration=(0,o.t)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==r.status&&(r.status=0):A(this,e),i.cbTime=this.cbTime,n("xhr",[r,i,this.startTime,this.endTime,"xhr"],this,t.K7.ajax))}}function A(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?ce(e.response):"text"===r||""===r||void 0===r?ce(e.responseText):void 0}(n,e.lastSize);if(i&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(je)>=0){var o=n.getResponseHeader(je);o&&((0,s.p)(O.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=o.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",c),r.on("open-xhr-end",d),r.on("send-xhr-start",u),r.on("xhr-cb-time",l),r.on("xhr-load-added",f),r.on("xhr-load-removed",p),r.on("xhr-resolved",g),r.on("addEventListener-end",m),r.on("removeEventListener-end",v),r.on("fn-end",b),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",y),r.on("fetch-done",E)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>i.e(478).then(i.bind(i,3845)))}}function Ie(e,t){var r=(0,Te.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const Le={}
7,Me=["pushState","replaceState"];function He(e){const t=function(e){return(e||ue.ee).get("history")}(e);return!h.RI||Le[t.debugId]++||(Le[t.debugId]=1,(0,le.YM)(t).inPlace(window.history,Me,"-")),t}var Be=i(3738);function Ke(e){(0,c.Y)(a.BL,function(r=Date.now()){const n=r-h.WN;n<0&&(0,f.R)(62,r),(0,s.p)(O.XG,[a.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:a.BL,start:r,origin:"nr"}),(0,s.p)(a.Pl+a.hG,[n,a.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:We,bD:Fe,d3:Ue,Kp:Ve,TZ:ze,Lc:Ge,uP:Ye,Rz:qe}=Be;class Ze extends y{static featureName=ze;constructor(e){var r;super(e,ze),r=e,(0,c.Y)(a.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const n={n:e.name,s:e.start-h.WN,e:(e.end||e.start)-h.WN,o:e.origin||"",t:"api"};n.s<0||n.e<0||n.e<n.s?(0,f.R)(61,{start:n.s,end:n.e}):(0,s.p)("bstApi",[n],void 0,t.K7.sessionTrace,r.ee)},r),Ke(e);if(!(0,g.V)(e.init))return void this.deregisterDrain();const n=this.ee;let d;He(n),this.eventsEE=(0,de.u)(n),this.eventsEE.on(Ye,function(e,t){this.bstStart=(0,o.t)()}),this.eventsEE.on(Ge,function(e,r){(0,s.p)("bst",[e[0],r,this.bstStart,(0,o.t)()],void 0,t.K7.sessionTrace,n)}),n.on(qe+Ue,function(e){this.time=(0,o.t)(),this.startPath=location.pathname+location.hash}),n.on(qe+Ve,function(e){(0,s.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,n)});try{d=new PerformanceObserver(e=>{const r=e.getEntries();(0,s.p)(We,[r],void 0,t.K7.sessionTrace,n)}),d.observe({type:Fe,buffered:!0})}catch(e){}this.importAggregator(e,()=>i.e(478).then(i.bind(i,6974)),{resourceObserver:d})}}var Xe=i(6344);class $e extends y{static featureName=Xe.TZ;#n;recorder;constructor(e){var r;let n;super(e,Xe.TZ),r=e,(0,c.Y)(a.CH,function(){(0,s.p)(a.CH,[],void 0,t.K7.sessionReplay,r.ee)},r),function(e){(0,c.Y)(a.Tb,function(){(0,s.p)(a.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);try{n=JSON.parse(localStorage.getItem("".concat(w.H3,"_").concat(w.uh)))}catch(e){}(0,p.SR)(e.init)&&this.ee.on(a.CH,()=>this.#i()),this.#s(n)&&this.importRecorder().then(e=>{e.startRecording(Xe.Qb.PRELOAD,n?.sessionReplayMode)}),this.importAggregator(this.agentRef,()=>i.e(478).then(i.bind(i,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,s.p)(Xe.Vh,[e],void 0,this.featureName,this.ee))})}#s(e){return e&&(e.sessionReplayMode===w.g.FULL||e.sessionReplayMode===w.g.ERROR)||(0,p.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#n??=Promise.all([i.e(478),i.e(249)]).then(i.bind(i,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#n)}#i(){this.blocked||(this.featAggregate?this.featAggregate.mode!==w.g.FULL&&this.featAggregate.initializeRecording(w.g.FULL,!0,Xe.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(Xe.Qb.API,w.g.FULL)}))}}var Je=i(3962);class Qe extends y{static featureName=Je.TZ;constructor(e){if(super(e,Je.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,c.Y)(a.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var a={},c=this,d="function"==typeof i;return(0,s.p)(O.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((d?"":"no-")+"fn-start",[(0,o.t)(),c,d],a),d)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],a),t}finally{r.emit("fn-end",[(0,o.t)()],a)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{c.Y.apply(this,[r,function(){return(0,s.p)(a.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,c.Y)(a.PA,function(){(0,s.p)(a.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!h.RI||!(0,T.dV)().o.MO)return;const r=He(this.ee);try{this.removeOnAbort=new AbortController}catch(e){}Je.tC.forEach(e=>{(0,k.sp)(e,e=>{l(e)},!0,this.removeOnAbort?.signal)}
7);const n=()=>(0,s.p)("newURL",[(0,o.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n),(0,k.sp)(Je.OV,e=>{l(e),(0,s.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let d=!1;const u=new((0,T.dV)().o.MO)((e,t)=>{d||(d=!0,requestAnimationFrame(()=>{(0,s.p)("newDom",[(0,o.t)()],void 0,this.featureName,this.ee),d=!1}))}),l=(0,m.s)(e=>{"loading"!==document.readyState&&((0,s.p)("newUIEvent",[e],void 0,this.featureName,this.ee),u.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),u.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>i.e(478).then(i.bind(i,4393)),{domObserver:u})}}var et=i(3333);const tt={},rt=new Set;function nt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class it{constructor(e,t){this.timestamp=(0,o.t)(),this.currentUrl=(0,G.L)(window.location.href),this.socketId=(0,Ae.LA)(8),this.requestedUrl=(0,G.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class st extends y{static featureName=et.TZ;constructor(e){super(e,et.TZ);const r=e.init.feature_flags.includes("websockets"),n=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,r];var d;let u,l;if(d=e,(0,c.Y)(a.hG,(e,t)=>U(e,t,d),d),function(e){(0,c.Y)(a.fF,(t,r)=>z(t,r,e),e)}(e),Ke(e),re(e),function(e){(0,c.Y)(a.V1,(t,r)=>V(t,r,e),e)}(e),r&&(l=function(e){if(!(0,T.dV)().o.WS)return e;const t=e.get("websockets");if(tt[t.debugId]++)return t;tt[t.debugId]=1,(0,x.G)(()=>{const e=(0,o.t)();rt.forEach(r=>{r.nrData.closedAt=e,r.nrData.closeCode=1001,r.nrData.closeReason="Page navigating away",r.nrData.closeWasClean=!1,r.nrData.openedAt&&(r.nrData.connectedDuration=e-r.nrData.openedAt),t.emit("ws",[r.nrData],r)})});class r extends WebSocket{static name="WebSocket";static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return r.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new it(e[0],e[1]),this.addEventListener("open",()=>{this.nrData.openedAt=(0,o.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),rt.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=nt(e.data);this.nrData.messageOrigin??=(0,G.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,o.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,rt.delete(this),t.emit("ws",[this.nrData],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=nt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return h.gm.WebSocket=r,t}(this.ee)),h.RI){if(Ee(this.ee),pe(this.ee),u=He(this.ee),e.init.user_actions.enabled){function f(t){const r=(0,Te.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function p(){u.emit("navChange")}
7et.Zp.forEach(e=>(0,k.sp)(e,e=>(0,s.p)("ua",[e],void 0,this.featureName,this.ee),!0)),et.qN.forEach(e=>{const t=(0,m.s)(e=>{(0,s.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,k.sp)(e,t)}),h.gm.addEventListener("error",()=>{(0,s.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,k.jT)(!1,this.removeOnAbort?.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,s.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)})}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Oe(e[0]))&&(0,s.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),u.on("pushState-end",p),u.on("replaceState-end",p),window.addEventListener("hashchange",p,(0,k.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",p,(0,k.jT)(!0,this.removeOnAbort?.signal))}if(e.init.performance.resources.enabled&&h.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,s.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}r&&l.on("ws",e=>{(0,s.p)("ws-complete",[e],void 0,this.featureName,this.ee)});try{this.removeOnAbort=new AbortController}catch(g){}this.abortHandler=()=>{this.removeOnAbort?.abort(),this.abortHandler=void 0},n.some(e=>e)?this.importAggregator(e,()=>i.e(478).then(i.bind(i,8019))):this.deregisterDrain()}}var ot=i(2646);const at=new Map;function ct(e,t,r,n,i=!0){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,f.R)(29);const s=function(e){return(e||ue.ee).get("logger")}(e),o=(0,le.YM)(s),a=new ot.y(ue.P);a.level=n.level,a.customAttributes=n.customAttributes,a.autoCaptured=i;const c=t[r]?.[le.Jt]||t[r];return at.set(c,a),o.inPlace(t,[r],"wrap-logger-",()=>at.get(c)),s}var dt=i(1910);class ut extends y{static featureName=K.TZ;constructor(e){var t;super(e,K.TZ),t=e,(0,c.Y)(a.$9,(e,r)=>F(e,r,t),t),function(e){(0,c.Y)(a.Wb,(t,r,{customAttributes:n={},level:i=K.p_.INFO}={})=>{ct(e.ee,t,r,{customAttributes:n,level:i},!1)},e)}(e),re(e);const r=this.ee;["log","error","warn","info","debug","trace"].forEach(e=>{(0,dt.i)(h.gm.console[e]),ct(r,h.gm.console,e,{level:"log"===e?"info":e})}),this.ee.on("wrap-logger-end",function([e]){const{level:t,customAttributes:n,autoCaptured:i}=this;(0,W.R)(r,e,n,t,i)}),this.importAggregator(e,()=>i.e(478).then(i.bind(i,5288)))}}new A({features:[Ce,E,_,Ze,$e,P,ie,st,ut,Qe],loaderType:"spa"})})()})();
8</script>
8
9</script>
9<link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/b585aeb95d5c28ac.css?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" as="style"/><link rel="stylesheet" href="/_next/static/css/b585aeb95d5c28ac.css?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" data-n-g=""/><link rel="preload" href="/_next/static/css/ebdb34adc611a13b.css?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" as="style"/><link rel="stylesheet" href="/_next/static/css/ebdb34adc611a13b.css?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" data-n-p=""/><noscript data-n-css=""></noscript>
9<script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx"></script>
9<script src="/_next/static/chunks/webpack-0bbf9947353baa12.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<script src="/_next/static/chunks/framework-945b357d4a851f4b.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<script src="/_next/static/chunks/main-672d7339b8a619f0.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<script src="/_next/static/chunks/pages/_app-67d36bb5fbf7be4b.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<script src="/_next/static/chunks/pages/privacy-policy-768ee5fa71e9bb5e.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<script src="/_next/static/85dTmfTuF-7kQH9NCFz5a/_buildManifest.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<script src="/_next/static/85dTmfTuF-7kQH9NCFz5a/_ssgManifest.js?dpl=dpl_3TckBCKRFqaCWYTUsBb7C3PGfcjx" defer=""></script>
9<style>.css-var-R6{--ant-blue:#1677FF;--ant-purple:#722ED1;--ant-cyan:#13C2C2;--ant-green:#52C41A;--ant-magenta:#EB2F96;--ant-pink:#EB2F96;--ant-red:#F5222D;--ant-orange:#FA8C16;--ant-yellow:#FADB14;--ant-volcano:#FA541C;--ant-geekblue:#2F54EB;--ant-gold:#FAAD14;--ant-lime:#A0D911;--ant-color-primary:#000000;--ant-color-success:#52c41a;--ant-color-warning:#faad14;--ant-color-error:#ff3636;--ant-color-info:#000000;--ant-color-link:#000000;--ant-color-text-base:#000;--ant-color-bg-base:#fff;--ant-font-family:Geist;--ant-font-family-code:'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;--ant-font-size:14px;--ant-line-width:1px;--ant-line-type:solid;--ant-motion-ease-out-circ:cubic-bezier(0.08, 0.82, 0.17, 1);--ant-motion-ease-in-out-circ:cubic-bezier(0.78, 0.14, 0.15, 0.86);--ant-motion-ease-out:cubic-bezier(0.215, 0.61, 0.355, 1);--ant-motion-ease-in-out:cubic-bezier(0.645, 0.045, 0.355, 1);--ant-motion-ease-out-back:cubic-bezier(0.12, 0.4, 0.29, 1.46);--ant-motion-ease-in-back:cubic-bezier(0.71, -0.46, 0.88, 0.6);--ant-motion-ease-in-quint:cubic-bezier(0.755, 0.05, 0.855, 0.06);--ant-motion-ease-out-quint:cubic-bezier(0.23, 1, 0.32, 1);--ant-border-radius:4px;--ant-size-unit:4px;--ant-size-step:4px;--ant-size-popup-arrow:16px;--ant-control-height:32px;--ant-z-index-base:0;--ant-z-index-popup-base:1000;--ant-opacity-image:1;--ant-color-primary-hover:rgba(0, 0, 0, 0.8);--ant-color-primary-active:rgba(0, 0, 0, 0.7);--ant-color-link-hover:rgba(0, 0, 0, 0.8);--ant-color-text-secondary:#767676;--ant-color-text:#545454;--ant-color-text-description:#545454;--ant-color-state-warning-bg:#fff7e6;--ant-color-state-warning-border:#ffd591;--ant-color-state-warning-text:#d46b08;--ant-color-state-success-bg:#f6ffed;--ant-color-state-success-border:#b7eb8f;--ant-color-state-success-text:#389e0d;--ant-color-product-price:#545454;--ant-color-product-description:#545454;--ant-color-sign-up:#545454;--ant-main-background-color:#fafafa;--ant-main-content-background-color:#ffffff;--ant-main-header-color:#ffffff;--ant-main-footer-color:#fafafa;--ant-menu-main-background-color:#fafafa;--ant-menu-main-background-image:none;--ant-menu-menu-list-background-color:#ffffff;--ant-menu-category-list-background-color:#ffffff;--ant-menu-basket-background-color:#ffffff;--ant-menu-product-item-background-color:#ffffff;--ant-menu-product-item-border-color:none;--ant-location-main-background-color-left:#fafafa;--ant-location-main-background-color-right:#fafafa;--ant-location-main-background-image-left:none;--ant-location-main-background-image-right:none;--ant-checkout-section-background-color:;--ant-blue-1:#e6f4ff;--ant-blue-2:#bae0ff;--ant-blue-3:#91caff;--ant-blue-4:#69b1ff;--ant-blue-5:#4096ff;--ant-blue-6:#1677ff;--ant-blue-7:#0958d9;--ant-blue-8:#003eb3;--ant-blue-9:#002c8c;--ant-blue-10:#001d66;--ant-purple-1:#f9f0ff;--ant-purple-2:#efdbff;--ant-purple-3:#d3adf7;--ant-purple-4:#b37feb;--ant-purple-5:#9254de;--ant-purple-6:#722ed1;--ant-purple-7:#531dab;--ant-purple-8:#391085;--ant-purple-9:#22075e;--ant-purple-10:#120338;--ant-cyan-1:#e6fffb;--ant-cyan-2:#b5f5ec;--ant-cyan-3:#87e8de;--ant-cyan-4:#5cdbd3;--ant-cyan-5:#36cfc9;--ant-cyan-6:#13c2c2;--ant-cyan-7:#08979c;--ant-cyan-8:#006d75;--ant-cyan-9:#00474f;--ant-cyan-10:#002329;--ant-green-1:#f6ffed;--ant-green-2:#d9f7be;--ant-green-3:#b7eb8f;--ant-green-4:#95de64;--ant-green-5:#73d13d;--ant-green-6:#52c41a;--ant-green-7:#389e0d;--ant-green-8:#237804;--ant-green-9:#135200;--ant-green-10:#092b00;--ant-magenta-1:#fff0f6;--ant-magenta-2:#ffd6e7;--ant-magenta-3:#ffadd2;--ant-magenta-4:#ff85c0;--ant-magenta-5:#f759ab;--ant-magenta-6:#eb2f96;--ant-magenta-7:#c41d7f;--ant-magenta-8:#9e1068;--ant-magenta-9:#780650;--ant-magenta-10:#520339;--ant-pink-1:#fff0f6;--ant-pink-2:#ffd6e7;--ant-pink-3:#ffadd2;--ant-pink-4:#ff85c0;--ant-pink-5:#f759ab;--ant-pink-6:#eb2f96;--ant-pink-7:#c41d7f;--ant-pink-8:#9e1068;--ant-pink-9:#780650;--ant-pink-10:#520339;--ant-red-1:#fff1f0;--ant-red-2:#ffccc7;--ant-red-3:#ffa39e;--ant-red-4:#ff7875;--ant-red-5:#ff4d4f;--ant-red-6:#f5222d;--ant-red-7:#cf1322;--ant-red-8:#a8071a;--ant-red-9:#820014;--ant-red-10:#5c0011;--ant-orange-1:#fff7e6;--ant-orange-2:#ffe7ba;--ant-orange-3:#ffd591;--ant-orange-4:#ffc069;--ant-orange-5:#ffa940;--ant-orange-6:#fa8c16;--ant-orange-7:#d46b08;--ant-orange-8:#ad4e00;--ant-orange-9:#873800;--ant-orange-10:#612500;--ant-yellow-1:#feffe6;--ant-yellow-2:#ffffb8;--ant-yellow-3:#fffb8f;--ant-yellow-4:#fff566;--ant-yellow-5:#ffec3d;--ant-yellow-6:#fadb14;--ant-yellow-7:#d4b106;--ant-yellow-8:#ad8b00;--ant-yellow-9:#876800;--ant-yellow-10:#614700;--ant-volcano-1:#fff2e8;--ant-volcano-2:#ffd8bf;--ant-volcano-3:#ffbb96;--ant-volcano-4:#ff9c6e;--ant-volcano-5:#ff7a45;--ant-volcano-6:#fa541c;--ant-volcano-7:#d4380d;--ant-volcano-8:#ad2102;--ant-volcano-9:#871400;--ant-volcano-10:#610b00;--ant-geekblue-1:#f0f5ff;--ant-geekblue-2:#d6e4ff;--ant-geekblue-3:#adc6ff;--ant-geekblue-4:#85a5ff;--ant-geekblue-5:#597ef7;--ant-geekblue-6:#2f54eb;--ant-geekblue-7:#1d39c4;--ant-geekblue-8:#10239e;--ant-geekblue-9:#061178;--ant-geekblue-10:#030852;--ant-gold-1:#fffbe6;--ant-gold-2:#fff1b8;--ant-gold-3:#ffe58f;--ant-gold-4:#ffd666;--ant-gold-5:#ffc53d;--ant-gold-6:#faad14;--ant-gold-7:#d48806;--ant-gold-8:#ad6800;--ant-gold-9:#874d00;--ant-gold-10:#613400;--ant-lime-1:#fcffe6;--ant-lime-2:#f4ffb8;--ant-lime-3:#eaff8f;--ant-lime-4:#d3f261;--ant-lime-5:#bae637;--ant-lime-6:#a0d911;--ant-lime-7:#7cb305;--ant-lime-8:#5b8c00;--ant-lime-9:#3f6600;--ant-lime-10:#254000;--ant-color-text-tertiary:rgba(0,0,0,0.45);--ant-color-text-quaternary:rgba(0,0,0,0.25);--ant-color-fill:rgba(0,0,0,0.15);--ant-color-fill-secondary:rgba(0,0,0,0.06);--ant-color-fill-tertiary:rgba(0,0,0,0.04);--ant-color-fill-quaternary:rgba(0,0,0,0.02);--ant-color-bg-solid:rgb(0,0,0);--ant-color-bg-solid-hover:rgba(0,0,0,0.75);--ant-color-bg-solid-active:rgba(0,0,0,0.95);--ant-color-bg-layout:#f5f5f5;--ant-color-bg-container:#ffffff;--ant-color-bg-elevated:#ffffff;--ant-color-bg-spotlight:rgba(0,0,0,0.85);--ant-color-bg-blur:transparent;--ant-color-border:#d9d9d9;--ant-color-border-secondary:#f0f0f0;--ant-color-primary-bg:#404040;--ant-color-primary-bg-hover:#333333;--ant-color-primary-border:#262626;--ant-color-primary-border-hover:#1a1a1a;--ant-color-primary-text-hover:#0d0d0d;--ant-color-primary-text:#000000;--ant-color-primary-text-active:#000000;--ant-color-success-bg:#f6ffed;--ant-color-success-bg-hover:#d9f7be;--ant-color-success-border:#b7eb8f;--ant-color-success-border-hover:#95de64;--ant-color-success-hover:#95de64;--ant-color-success-active:#389e0d;--ant-color-success-text-hover:#73d13d;
9--ant-color-success-text:#52c41a;--ant-color-success-text-active:#389e0d;--ant-color-error-bg:#fff2f0;--ant-color-error-bg-hover:#ffded9;--ant-color-error-bg-filled-hover:#ffd5d0;--ant-color-error-bg-active:#ffb8b0;--ant-color-error-border:#ffb8b0;--ant-color-error-border-hover:#ff8f87;--ant-color-error-hover:#ff645e;--ant-color-error-active:#d92329;--ant-color-error-text-hover:#ff645e;--ant-color-error-text:#ff3636;--ant-color-error-text-active:#d92329;--ant-color-warning-bg:#fffbe6;--ant-color-warning-bg-hover:#fff1b8;--ant-color-warning-border:#ffe58f;--ant-color-warning-border-hover:#ffd666;--ant-color-warning-hover:#ffd666;--ant-color-warning-active:#d48806;--ant-color-warning-text-hover:#ffc53d;--ant-color-warning-text:#faad14;--ant-color-warning-text-active:#d48806;--ant-color-info-bg:#404040;--ant-color-info-bg-hover:#333333;--ant-color-info-border:#262626;--ant-color-info-border-hover:#1a1a1a;--ant-color-info-hover:#1a1a1a;--ant-color-info-active:#000000;--ant-color-info-text-hover:#0d0d0d;--ant-color-info-text:#000000;--ant-color-info-text-active:#000000;--ant-color-link-active:#000000;--ant-color-bg-mask:rgba(0,0,0,0.45);--ant-color-white:#fff;--ant-font-size-sm:12px;--ant-font-size-lg:16px;
9--ant-font-size-xl:20px;--ant-font-size-heading-1:38px;--ant-font-size-heading-2:30px;--ant-font-size-heading-3:24px;--ant-font-size-heading-4:20px;--ant-font-size-heading-5:16px;--ant-line-height:1.5714285714285714;--ant-line-height-lg:1.5;--ant-line-height-sm:1.6666666666666667;--ant-font-height:22px;--ant-font-height-lg:24px;--ant-font-height-sm:20px;--ant-line-height-heading-1:1.2105263157894737;--ant-line-height-heading-2:1.2666666666666666;--ant-line-height-heading-3:1.3333333333333333;--ant-line-height-heading-4:1.4;--ant-line-height-heading-5:1.5;--ant-size-xxl:48px;--ant-size-xl:32px;--ant-size-lg:24px;--ant-size-md:20px;--ant-size-ms:16px;--ant-size:16px;--ant-size-sm:12px;--ant-size-xs:8px;--ant-size-xxs:4px;--ant-control-height-sm:24px;--ant-control-height-xs:16px;--ant-control-height-lg:40px;--ant-motion-duration-fast:0.1s;--ant-motion-duration-mid:0.2s;--ant-motion-duration-slow:0.3s;--ant-line-width-bold:2px;--ant-border-radius-xs:1px;--ant-border-radius-sm:4px;--ant-border-radius-lg:4px;--ant-border-radius-outer:4px;--ant-color-fill-content:rgba(0,0,0,0.06);--ant-color-fill-content-hover:rgba(0,0,0,0.15);--ant-color-fill-alter:rgba(0,0,0,0.02);--ant-color-bg-container-disabled:rgba(0,0,0,0.04);--ant-color-border-bg:#ffffff;--ant-color-split:rgba(5,5,5,0.06);--ant-color-text-placeholder:rgba(0,0,0,0.25);--ant-color-text-disabled:rgba(0,0,0,0.25);--ant-color-text-heading:#545454;--ant-color-text-label:#767676;--ant-color-text-light-solid:#fff;--ant-color-highlight:#ff3636;--ant-color-bg-text-hover:rgba(0,0,0,0.06);--ant-color-bg-text-active:rgba(0,0,0,0.15);--ant-color-icon:rgba(0,0,0,0.45);--ant-color-icon-hover:#545454;--ant-color-error-outline:rgba(255,38,5,0.06);--ant-color-warning-outline:rgba(255,215,5,0.1);--ant-font-size-icon:12px;--ant-line-width-focus:3px;--ant-control-outline-width:2px;--ant-control-interactive-size:16px;--ant-control-item-bg-hover:rgba(0,0,0,0.04);--ant-control-item-bg-active:#404040;--ant-control-item-bg-active-hover:#333333;--ant-control-item-bg-active-disabled:rgba(0,0,0,0.15);--ant-control-tmp-outline:rgba(0,0,0,0.02);--ant-control-outline:rgba(0,0,0,0.75);--ant-font-weight-strong:600;--ant-opacity-loading:0.65;--ant-link-decoration:none;--ant-link-hover-decoration:none;--ant-link-focus-decoration:none;--ant-control-padding-horizontal:12px;--ant-control-padding-horizontal-sm:8px;--ant-padding-xxs:4px;--ant-padding-xs:8px;--ant-padding-sm:12px;--ant-padding:16px;--ant-padding-md:20px;--ant-padding-lg:24px;--ant-padding-xl:32px;--ant-padding-content-horizontal-lg:24px;--ant-padding-content-vertical-lg:16px;--ant-padding-content-horizontal:16px;
9--ant-padding-content-vertical:12px;--ant-padding-content-horizontal-sm:16px;--ant-padding-content-vertical-sm:8px;--ant-margin-xxs:4px;--ant-margin-xs:8px;--ant-margin-sm:12px;--ant-margin:16px;--ant-margin-md:20px;--ant-margin-lg:24px;--ant-margin-xl:32px;--ant-margin-xxl:48px;--ant-box-shadow:
10      0 6px 16px 0 rgba(0, 0, 0, 0.08),
11      0 3px 6px -4px rgba(0, 0, 0, 0.12),
12      0 9px 28px 8px rgba(0, 0, 0, 0.05)
13    ;--ant-box-shadow-secondary:
14      0 6px 16px 0 rgba(0, 0, 0, 0.08),
15      0 3px 6px -4px rgba(0, 0, 0, 0.12),
16      0 9px 28px 8px rgba(0, 0, 0, 0.05)
17    ;--ant-box-shadow-tertiary:
18      0 1px 2px 0 rgba(0, 0, 0, 0.03),
19      0 1px 6px -1px rgba(0, 0, 0, 0.02),
20      0 2px 4px 0 rgba(0, 0, 0, 0.02)
21    ;--ant-box-shadow-popover-arrow:2px 2px 5px rgba(0, 0, 0, 0.05);--ant-box-shadow-card:
22      0 1px 2px -2px rgba(0,0,0,0.16),
23      0 3px 6px 0 rgba(0,0,0,0.12),
24      0 5px 12px 4px rgba(0,0,0,0.09)
25    ;--ant-box-shadow-drawer-right:
26      -6px 0 16px 0 rgba(0, 0, 0, 0.08),
27      -3px 0 6px -4px rgba(0, 0, 0, 0.12),
28      -9px 0 28px 8px rgba(0, 0, 0, 0.05)
29    ;--ant-box-shadow-drawer-left:
30      6px 0 16px 0 rgba(0, 0, 0, 0.08),
31      3px 0 6px -4px rgba(0, 0, 0, 0.12),
32      9px 0 28px 8px rgba(0, 0, 0, 0.05)
33    ;--ant-box-shadow-drawer-up:
34      0 6px 16px 0 rgba(0, 0, 0, 0.08),
35      0 3px 6px -4px rgba(0, 0, 0, 0.12),
36      0 9px 28px 8px rgba(0, 0, 0, 0.05)
37    ;--ant-box-shadow-drawer-down:
38      0 -6px 16px 0 rgba(0, 0, 0, 0.08),
39      0 -3px 6px -4px rgba(0, 0, 0, 0.12),
40      0 -9px 28px 8px rgba(0, 0, 0, 0.05)
41    ;--ant-box-shadow-tabs-overflow-left:inset 10px 0 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-right:inset -10px 0 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-top:inset 0 10px 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-bottom:inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08);}a.css-1ylxgcl{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);background-color:transparent;outline:none;cursor:pointer;transition:color var(--ant-motion-duration-slow);-webkit-text-decoration-skip:objects;}a.css-1ylxgcl:hover{color:var(--ant-color-link-hover);}a.css-1ylxgcl:active{color:var(--ant-color-link-active);}a.css-1ylxgcl:active,a.css-1ylxgcl:hover{text-decoration:var(--ant-link-hover-decoration);outline:0;}a.css-1ylxgcl:focus{text-decoration:var(--ant-link-focus-decoration);outline:0;}a.css-1ylxgcl[disabled]{color:var(--ant-color-text-disabled);cursor:not-allowed;}.css-1ylxgcl a{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);background-color:transparent;outline:none;cursor:pointer;transition:color var(--ant-motion-duration-slow);-webkit-text-decoration-skip:objects;}.css-1ylxgcl a:hover{color:var(--ant-color-link-hover);}.css-1ylxgcl a:active{color:var(--ant-color-link-active);}.css-1ylxgcl a:active,.css-1ylxgcl a:hover{text-decoration:var(--ant-link-hover-decoration);outline:0;}.css-1ylxgcl a:focus{text-decoration:var(--ant-link-focus-decoration);outline:0;}.css-1ylxgcl a[disabled]{color:var(--ant-color-text-disabled);cursor:not-allowed;}.css-1ylxgcl.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.css-1ylxgcl.anticon >*{line-height:1;}.css-1ylxgcl.anticon svg{display:inline-block;}.css-1ylxgcl.anticon .anticon .anticon-icon{display:block;}.css-1ylxgcl.ant-app{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.css-1ylxgcl.ant-app::before,.css-1ylxgcl.ant-app::after{box-sizing:border-box;}.css-1ylxgcl.ant-app [class^="ant-app"],.css-1ylxgcl.ant-app [class*=" ant-app"]{box-sizing:border-box;}.css-1ylxgcl.ant-app [class^="ant-app"]::before,.css-1ylxgcl.ant-app [class*=" ant-app"]::before,.css-1ylxgcl.ant-app [class^="ant-app"]::after,.css-1ylxgcl.ant-app [class*=" ant-app"]::after{box-sizing:border-box;}.css-1ylxgcl.ant-app{color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);font-family:var(--ant-font-family);}.css-1ylxgcl.ant-app.ant-app-rtl{direction:rtl;}.css-1ylxgcl.ant-layout{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.css-1ylxgcl.ant-layout::before,.css-1ylxgcl.ant-layout::after{box-sizing:border-box;}.css-1ylxgcl.ant-layout [class^="ant-layout"],.css-1ylxgcl.ant-layout [class*=" ant-layout"]{box-sizing:border-box;}.css-1ylxgcl.ant-layout [class^="ant-layout"]::before,.css-1ylxgcl.ant-layout [class*=" ant-layout"]::before,.css-1ylxgcl.ant-layout [class^="ant-layout"]::after,.css-1ylxgcl.ant-layout [class*=" ant-layout"]::after{box-sizing:border-box;}.css-1ylxgcl.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:var(--ant-layout-body-bg);}.css-1ylxgcl.ant-layout,.css-1ylxgcl.ant-layout *{box-sizing:border-box;}.css-1ylxgcl.ant-layout.ant-layout-has-sider{flex-direction:row;}.css-1ylxgcl.ant-layout.ant-layout-has-sider >.ant-layout,.css-1ylxgcl.ant-layout.ant-layout-has-sider >.ant-layout-content{width:0;}.css-1ylxgcl.ant-layout .ant-layout-header,.css-1ylxgcl.ant-layout.ant-layout-footer{flex:0 0 auto;}.css-1ylxgcl.ant-layout-rtl{direction:rtl;}.css-1ylxgcl.ant-layout-header{height:var(--ant-layout-header-height);padding:var(--ant-layout-header-padding);color:var(--ant-layout-header-color);line-height:var(--ant-layout-header-height);background:var(--ant-layout-header-bg);}.css-1ylxgcl.ant-layout-header .ant-menu{line-height:inherit;}.css-1ylxgcl.ant-layout-footer{padding:var(--ant-layout-footer-padding);color:var(--ant-color-text);font-size:var(--ant-font-size);background:var(--ant-layout-footer-bg);}.css-1ylxgcl.ant-layout-content{flex:auto;color:var(--ant-color-text);min-height:0;}.css-var-R6.ant-layout{--ant-layout-color-bg-header:#001529;--ant-layout-color-bg-body:#f5f5f5;--ant-layout-color-bg-trigger:#002140;--ant-layout-body-bg:#FAFAFA;--ant-layout-header-bg:#FFFFFF;--ant-layout-header-height:64px;--ant-layout-header-padding:0 50px;--ant-layout-header-color:#545454;--ant-layout-footer-padding:24px 50px;--ant-layout-footer-bg:#f5f5f5;--ant-layout-sider-bg:#001529;--ant-layout-trigger-height:48px;--ant-layout-trigger-bg:#002140;--ant-layout-trigger-color:#fff;--ant-layout-zero-trigger-width:40px;--ant-layout-zero-trigger-height:40px;--ant-layout-light-sider-bg:#ffffff;--ant-layout-light-trigger-bg:#ffffff;--ant-layout-light-trigger-color:#545454;}.css-1ylxgcl.ant-flex{display:flex;margin:0;padding:0;}.css-1ylxgcl.ant-flex-vertical{flex-direction:column;}.css-1ylxgcl.ant-flex-rtl{direction:rtl;}.css-1ylxgcl.ant-flex:empty{display:none;}.css-1ylxgcl.ant-flex-gap-small{gap:var(--ant-padding-xs);}.css-1ylxgcl.ant-flex-gap-middle{gap:var(--ant-padding);}.css-1ylxgcl.ant-flex-gap-large{gap:var(--ant-padding-lg);}.css-1ylxgcl.ant-flex-wrap-wrap{flex-wrap:wrap;}.css-1ylxgcl.ant-flex-wrap-nowrap{flex-wrap:nowrap;}.css-1ylxgcl.ant-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse;}.css-1ylxgcl.ant-flex-align-center{align-items:center;}.css-1ylxgcl.ant-flex-align-start{align-items:start;}
41.css-1ylxgcl.ant-flex-align-end{align-items:end;}.css-1ylxgcl.ant-flex-align-flex-start{align-items:flex-start;}.css-1ylxgcl.ant-flex-align-flex-end{align-items:flex-end;}.css-1ylxgcl.ant-flex-align-self-start{align-items:self-start;}.css-1ylxgcl.ant-flex-align-self-end{align-items:self-end;}.css-1ylxgcl.ant-flex-align-baseline{align-items:baseline;}.css-1ylxgcl.ant-flex-align-normal{align-items:normal;}.css-1ylxgcl.ant-flex-align-stretch{align-items:stretch;}.css-1ylxgcl.ant-flex-justify-flex-start{justify-content:flex-start;}.css-1ylxgcl.ant-flex-justify-flex-end{justify-content:flex-end;}.css-1ylxgcl.ant-flex-justify-start{justify-content:start;}.css-1ylxgcl.ant-flex-justify-end{justify-content:end;}.css-1ylxgcl.ant-flex-justify-center{justify-content:center;}.css-1ylxgcl.ant-flex-justify-space-between{justify-content:space-between;}.css-1ylxgcl.ant-flex-justify-space-around{justify-content:space-around;}.css-1ylxgcl.ant-flex-justify-space-evenly{justify-content:space-evenly;}.css-1ylxgcl.ant-flex-justify-stretch{justify-content:stretch;}.css-1ylxgcl.ant-flex-justify-normal{justify-content:normal;}.css-1ylxgcl.ant-flex-justify-left{justify-content:left;}.css-1ylxgcl.ant-flex-justify-right{justify-content:right;}.css-1ylxgcl.ant-typography{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.css-1ylxgcl.ant-typography::before,.css-1ylxgcl.ant-typography::after{box-sizing:border-box;}.css-1ylxgcl.ant-typography [class^="ant-typography"],.css-1ylxgcl.ant-typography [class*=" ant-typography"]{box-sizing:border-box;}.css-1ylxgcl.ant-typography [class^="ant-typography"]::before,.css-1ylxgcl.ant-typography [class*=" ant-typography"]::before,.css-1ylxgcl.ant-typography [class^="ant-typography"]::after,.css-1ylxgcl.ant-typography [class*=" ant-typography"]::after{box-sizing:border-box;}.css-1ylxgcl.ant-typography{color:var(--ant-color-text);word-break:break-word;line-height:var(--ant-line-height);}.css-1ylxgcl.ant-typography.ant-typography-secondary{color:var(--ant-color-text-description);}.css-1ylxgcl.ant-typography.ant-typography-success{color:var(--ant-color-success-text);}.css-1ylxgcl.ant-typography.ant-typography-warning{color:var(--ant-color-warning-text);}.css-1ylxgcl.ant-typography.ant-typography-danger{color:var(--ant-color-error-text);}a.css-1ylxgcl.ant-typography.ant-typography-danger:active,a.css-1ylxgcl.ant-typography.ant-typography-danger:focus{color:var(--ant-color-error-text-active);}a.css-1ylxgcl.ant-typography.ant-typography-danger:hover{color:var(--ant-color-error-text-hover);}.css-1ylxgcl.ant-typography.ant-typography-disabled{color:var(--ant-color-text-disabled);cursor:not-allowed;user-select:none;}div.css-1ylxgcl.ant-typography,.css-1ylxgcl.ant-typography p{margin-bottom:1em;}h1.css-1ylxgcl.ant-typography,div.css-1ylxgcl.ant-typography-h1,div.css-1ylxgcl.ant-typography-h1>textarea,.css-1ylxgcl.ant-typography h1{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-1);line-height:var(--ant-line-height-heading-1);}h2.css-1ylxgcl.ant-typography,div.css-1ylxgcl.ant-typography-h2,div.css-1ylxgcl.ant-typography-h2>textarea,.css-1ylxgcl.ant-typography h2{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-2);line-height:var(--ant-line-height-heading-2);}h3.css-1ylxgcl.ant-typography,div.css-1ylxgcl.ant-typography-h3,div.css-1ylxgcl.ant-typography-h3>textarea,.css-1ylxgcl.ant-typography h3{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-3);line-height:var(--ant-line-height-heading-3);}h4.css-1ylxgcl.ant-typography,div.css-1ylxgcl.ant-typography-h4,div.css-1ylxgcl.ant-typography-h4>textarea,.css-1ylxgcl.ant-typography h4{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);
41font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-4);line-height:var(--ant-line-height-heading-4);}h5.css-1ylxgcl.ant-typography,div.css-1ylxgcl.ant-typography-h5,div.css-1ylxgcl.ant-typography-h5>textarea,.css-1ylxgcl.ant-typography h5{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-5);line-height:var(--ant-line-height-heading-5);}.css-1ylxgcl.ant-typography+h1.ant-typography,.css-1ylxgcl.ant-typography+h2.ant-typography,.css-1ylxgcl.ant-typography+h3.ant-typography,.css-1ylxgcl.ant-typography+h4.ant-typography,.css-1ylxgcl.ant-typography+h5.ant-typography{margin-top:var(--ant-typography-title-margin-top);}.css-1ylxgcl.ant-typography div +h1,.css-1ylxgcl.ant-typography ul +h1,.css-1ylxgcl.ant-typography li +h1,.css-1ylxgcl.ant-typography p +h1,.css-1ylxgcl.ant-typography h1 +h1,.css-1ylxgcl.ant-typography h2 +h1,.css-1ylxgcl.ant-typography h3 +h1,.css-1ylxgcl.ant-typography h4 +h1,.css-1ylxgcl.ant-typography h5 +h1,.css-1ylxgcl.ant-typography div +h2,.css-1ylxgcl.ant-typography ul +h2,.css-1ylxgcl.ant-typography li +h2,.css-1ylxgcl.ant-typography p +h2,.css-1ylxgcl.ant-typography h1 +h2,.css-1ylxgcl.ant-typography h2 +h2,.css-1ylxgcl.ant-typography h3 +h2,.css-1ylxgcl.ant-typography h4 +h2,.css-1ylxgcl.ant-typography h5 +h2,.css-1ylxgcl.ant-typography div +h3,.css-1ylxgcl.ant-typography ul +h3,.css-1ylxgcl.ant-typography li +h3,.css-1ylxgcl.ant-typography p +h3,.css-1ylxgcl.ant-typography h1 +h3,.css-1ylxgcl.ant-typography h2 +h3,.css-1ylxgcl.ant-typography h3 +h3,.css-1ylxgcl.ant-typography h4 +h3,.css-1ylxgcl.ant-typography h5 +h3,.css-1ylxgcl.ant-typography div +h4,.css-1ylxgcl.ant-typography ul +h4,.css-1ylxgcl.ant-typography li +h4,.css-1ylxgcl.ant-typography p +h4,.css-1ylxgcl.ant-typography h1 +h4,.css-1ylxgcl.ant-typography h2 +h4,.css-1ylxgcl.ant-typography h3 +h4,.css-1ylxgcl.ant-typography h4 +h4,.css-1ylxgcl.ant-typography h5 +h4,.css-1ylxgcl.ant-typography div +h5,.css-1ylxgcl.ant-typography ul +h5,.css-1ylxgcl.ant-typography li +h5,.css-1ylxgcl.ant-typography p +h5,.css-1ylxgcl.ant-typography h1 +h5,.css-1ylxgcl.ant-typography h2 +h5,.css-1ylxgcl.ant-typography h3 +h5,.css-1ylxgcl.ant-typography h4 +h5,.css-1ylxgcl.ant-typography h5 +h5{margin-top:var(--ant-typography-title-margin-top);}.css-1ylxgcl.ant-typography code{margin:0 0.2em;padding-inline:0.4em;padding-block:0.2em 0.1em;font-size:85%;font-family:var(--ant-font-family-code);background:rgba(150, 150, 150, 0.1);border:1px solid rgba(100, 100, 100, 0.2);border-radius:3px;}.css-1ylxgcl.ant-typography kbd{margin:0 0.2em;padding-inline:0.4em;padding-block:0.15em 0.1em;font-size:90%;font-family:var(--ant-font-family-code);background:rgba(150, 150, 150, 0.06);border:1px solid rgba(100, 100, 100, 0.2);border-bottom-width:2px;border-radius:3px;}.css-1ylxgcl.ant-typography mark{padding:0;background-color:#ffe58f;}.css-1ylxgcl.ant-typography u,.css-1ylxgcl.ant-typography ins{text-decoration:underline;text-decoration-skip-ink:auto;}.css-1ylxgcl.ant-typography s,.css-1ylxgcl.ant-typography del{text-decoration:line-through;}.css-1ylxgcl.ant-typography strong{font-weight:var(--ant-font-weight-strong);}.css-1ylxgcl.ant-typography ul,.css-1ylxgcl.ant-typography ol{margin-inline:0;margin-block:0 1em;padding:0;}.css-1ylxgcl.ant-typography ul li,.css-1ylxgcl.ant-typography ol li{margin-inline:20px 0;margin-block:0;padding-inline:4px 0;padding-block:0;}.css-1ylxgcl.ant-typography ul{list-style-type:circle;}.css-1ylxgcl.ant-typography ul ul{list-style-type:disc;}.css-1ylxgcl.ant-typography ol{list-style-type:decimal;}.css-1ylxgcl.ant-typography pre,.css-1ylxgcl.ant-typography blockquote{margin:1em 0;}.css-1ylxgcl.ant-typography pre{padding:0.4em 0.6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150, 150, 150, 0.1);border:1px solid rgba(100, 100, 100, 0.2);border-radius:3px;font-family:var(--ant-font-family-code);}.css-1ylxgcl.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:transparent;border:0;}.css-1ylxgcl.ant-typography blockquote{padding-inline:0.6em 0;padding-block:0;border-inline-start:4px solid rgba(100, 100, 100, 0.2);opacity:0.85;}a.css-1ylxgcl.ant-typography,.css-1ylxgcl.ant-typography a{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);outline:none;cursor:pointer;transition:all var(--ant-motion-duration-slow);border:0;padding:0;background:none;user-select:text;}a.css-1ylxgcl.ant-typography:focus-visible,.css-1ylxgcl.ant-typography a:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}a.css-1ylxgcl.ant-typography:hover,.css-1ylxgcl.ant-typography a:hover{color:var(--ant-color-link-hover);text-decoration:var(--ant-link-hover-decoration);}a.css-1ylxgcl.ant-typography:focus,.css-1ylxgcl.ant-typography a:focus{color:var(--ant-color-link-hover);text-decoration:var(--ant-link-focus-decoration);}a.css-1ylxgcl.ant-typography:active,.css-1ylxgcl.ant-typography a:active{color:var(--ant-color-link-active);text-decoration:var(--ant-link-hover-decoration);}a.css-1ylxgcl.ant-typography[disabled],.css-1ylxgcl.ant-typography a[disabled],a.css-1ylxgcl.ant-typography.ant-typography-disabled,.css-1ylxgcl.ant-typography a.ant-typography-disabled{color:var(--ant-color-text-disabled);cursor:not-allowed;}a.css-1ylxgcl.ant-typography[disabled]:active,.css-1ylxgcl.ant-typography a[disabled]:active,a.css-1ylxgcl.ant-typography.ant-typography-disabled:active,.css-1ylxgcl.ant-typography a.ant-typography-disabled:active,a.css-1ylxgcl.ant-typography[disabled]:hover,.css-1ylxgcl.ant-typography a[disabled]:hover,a.css-1ylxgcl.ant-typography.ant-typography-disabled:hover,.css-1ylxgcl.ant-typography a.ant-typography-disabled:hover{color:var(--ant-color-text-disabled);}a.css-1ylxgcl.ant-typography[disabled]:active,.css-1ylxgcl.ant-typography a[disabled]:active,a.css-1ylxgcl.ant-typography.ant-typography-disabled:active,.css-1ylxgcl.ant-typography a.ant-typography-disabled:active{pointer-events:none;}.css-1ylxgcl.ant-typography .ant-typography-expand,.css-1ylxgcl.ant-typography .ant-typography-collapse,.css-1ylxgcl.ant-typography .ant-typography-edit,.css-1ylxgcl.ant-typography .ant-typography-copy{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);outline:none;cursor:pointer;transition:all var(--ant-motion-duration-slow);border:0;padding:0;background:none;user-select:none;margin-inline-start:var(--ant-margin-xxs);}.css-1ylxgcl.ant-typography .ant-typography-expand:focus-visible,.css-1ylxgcl.ant-typography .ant-typography-collapse:focus-visible,.css-1ylxgcl.ant-typography .ant-typography-edit:focus-visible,.css-1ylxgcl.ant-typography .ant-typography-copy:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.css-1ylxgcl.ant-typography .ant-typography-expand:hover,.css-1ylxgcl.ant-typography .ant-typography-collapse:hover,.css-1ylxgcl.ant-typography .ant-typography-edit:hover,.css-1ylxgcl.ant-typography .ant-typography-copy:hover{color:var(--ant-color-link-hover);text-decoration:var(--ant-link-hover-decoration);}.css-1ylxgcl.ant-typography .ant-typography-expand:focus,.css-1ylxgcl.ant-typography .ant-typography-collapse:focus,.css-1ylxgcl.ant-typography .ant-typography-edit:focus,.css-1ylxgcl.ant-typography .ant-typography-copy:focus{color:var(--ant-color-link-hover);text-decoration:var(--ant-link-focus-decoration);}.css-1ylxgcl.ant-typography .ant-typography-expand:active,.css-1ylxgcl.ant-typography .ant-typography-collapse:active,.css-1ylxgcl.ant-typography .ant-typography-edit:active,.css-1ylxgcl.ant-typography .ant-typography-copy:active{color:var(--ant-color-link-active);text-decoration:var(--ant-link-hover-decoration);}.css-1ylxgcl.ant-typography-edit-content{position:relative;}div.css-1ylxgcl.ant-typography-edit-content{inset-inline-start:calc(var(--ant-padding-sm) * -1);inset-block-start:calc(var(--ant-padding-sm) / -2 + 1px);margin-bottom:calc(var(--ant-padding-sm) / 2 - 2px);}.css-1ylxgcl.ant-typography-edit-content .ant-typography-edit-content-confirm{position:absolute;inset-inline-end:calc(var(--ant-margin-xs) + 2px);inset-block-end:var(--ant-margin-xs);color:var(--ant-color-icon);font-weight:normal;font-size:var(--ant-font-size);font-style:normal;pointer-events:none;}.css-1ylxgcl.ant-typography-edit-content textarea{margin:0!important;-moz-transition:none;height:1em;}.css-1ylxgcl.ant-typography .ant-typography-copy-success,.css-1ylxgcl.ant-typography .ant-typography-copy-success:hover,.css-1ylxgcl.ant-typography .ant-typography-copy-success:focus{color:var(--ant-color-success);}.css-1ylxgcl.ant-typography .ant-typography-copy-icon-only{margin-inline-start:0;}a.css-1ylxgcl.ant-typography-ellipsis,span.css-1ylxgcl.ant-typography-ellipsis{display:inline-block;max-width:100%;}.css-1ylxgcl.ant-typography-ellipsis-single-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}a.css-1ylxgcl.ant-typography-ellipsis-single-line,span.css-1ylxgcl.ant-typography-ellipsis-single-line{vertical-align:bottom;}.css-1ylxgcl.ant-typography-ellipsis-single-line >code{padding-block:0;max-width:calc(100% - 1.2em);display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;box-sizing:content-box;}.css-1ylxgcl.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;}.css-1ylxgcl.ant-typography-rtl{direction:rtl;}.css-var-R6.ant-typography{--ant-typography-title-margin-top:1.2em;--ant-typography-title-margin-bottom:0.5em;}.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.anticon >*{line-height:1;}.anticon svg{display:inline-block;}.anticon .anticon .anticon-icon{display:block;}.data-ant-cssinjs-cache-path{content:"v35r7l|ant-design-icons|anticon:2opqyr;fvc1fe|Shared|ant:uu6yiz;fvc1fe|App-App|ant-app|anticon:khi5l0;fvc1fe|Layout-Layout|ant-layout|anticon:1wmgmug;fvc1fe|Flex-Flex|ant-flex|anticon:1j2zdc6;fvc1fe|Typography-Typography|ant-typography|anticon:a8xy0w";}</style></head><body class="font-geist"><div id="__next"><div class="css-1ylxgcl ant-app css-var-R6"><div class="ant-layout css-1ylxgcl css-var-R6" style="min-height:100vh;background-color:var(--ant-main-background-color)"><header class="ant-layout-header AppHeader_header___y_45 css-1ylxgcl css-var-R6"><div class="ant-flex css-1ylxgcl css-var-R6 ant-flex-align-center" style="gap:8px"><a href="/"></a></div><div class="ant-flex css-1ylxgcl css-var-R6 ant-flex-align-center ant-flex-justify-center" style="flex:1"></div><div class="ant-flex css-1ylxgcl css-var-R6" style="min-width:fit-content;gap:12px"></div></header><main class="ant-layout-content page_layout__r3xnY css-1ylxgcl css-var-R6"><div class="page_wrapper__7io97 ant-flex css-1ylxgcl css-var-R6 ant-flex-align-stretch ant-flex-vertical"><h2 class="ant-typography css-1ylxgcl css-var-R6" style="margin-bottom:0">Privacy Policy</h2><p class="page_subtitle__gXKcS">How we collect, use, and protect your personal data</p><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">1. Introduction</h3><div class="page_content__lm8Fs"><p>This Privacy Policy describes how your personal data is handled when you use this application or website (&quot;this Application&quot;). Two parties may be involved:<!-- --> <!-- --> Limited, which provides the underlying technology and acts as the data processor, and the business whose branding appears on the service you are using, which acts as the data controller and decides why and how your data is used.</p><p>Protecting your privacy matters to us. When we ask you for information that identifies you, we use it only as set out here. This Application collects some personal data from its users, and you can print this policy at any time using your browser&#x27;s print function.</p></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">2. The Data We Collect</h3><div class="page_content__lm8Fs"><p>Depending on how you use this Application, we may collect the following, either directly or through third parties: cookies and usage data;
41 your first and last name, phone number, company name, and email address; username, country, language, and password; geographic position and communicated data; device information, unique advertising identifiers (such as Google Advertiser ID or IDFA), and purchase history. On mobile, we may also request device permissions covering contacts, camera, precise (non-continuous) location, phone, SMS, and Bluetooth sharing.</p><p>Each category is explained either in the relevant section below or in a notice shown to you before the data is collected. You may provide some data yourself; usage data is gathered automatically as you use the service. Unless stated otherwise, the data we request is necessary, and withholding it may prevent the service from working. Where data is optional, you may decline to provide it without affecting the service. If you are unsure what is required, please contact the Owner.</p><p>Any use of cookies or other trackers, whether by this Application or by third-party services it relies on, serves to deliver the service you have requested and the additional purposes described here and in the Cookie Policy. You are responsible for any third-party personal data you obtain, publish, or share through this Application.</p></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">3. How and Where We Process Your Data</h3><div class="page_content__lm8Fs"><h4 class="page_subSectionTitle__xBX1b">Methods</h4><p>The Owner applies appropriate security measures to guard against unauthorised access, disclosure, alteration, or destruction of your data. Processing is carried out with computers and IT tools, following procedures tied to the stated purposes. Besides the Owner, your data may in some cases be accessible to staff involved in operating this Application (in administration, sales, marketing, legal, or system administration) or to external parties — such as technical service providers, mail carriers, hosting providers, IT firms, or communications agencies — appointed where necessary as data processors. You may request an up-to-date list of these parties at any time.</p><h4 class="page_subSectionTitle__xBX1b">Place</h4><p>Your data is processed at the Owner&#x27;s offices and wherever the parties involved in processing are located. Depending on your location, this may mean transferring your data to a country other than your own; the section on data transfers below explains the safeguards that apply.</p><h4 class="page_subSectionTitle__xBX1b">Retention</h4><p>Unless stated otherwise, personal data is kept for as long as needed for the purpose it was collected for, and may be held longer to meet a legal obligation or because you have consented. In practice: data tied to a contract is kept until the contract is fully performed; data held for the Owner&#x27;s legitimate interests is kept as long as needed for those interests; and data may be kept longer where you consent or where the law requires. Once the retention period ends, the data is deleted, and rights such as access, erasure, rectification, and portability can no longer be exercised over it.</p></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">4. Why We Process Your Data</h3><div class="page_content__lm8Fs"><p>We process your data to provide and operate the service, meet our legal obligations, respond to enforcement requests, protect our rights and those of our users and third parties, and detect fraudulent or malicious activity. Beyond that, the specific purposes include:</p><ul><li>Analytics, and content performance and feature testing (A/B testing)</li><li>Registration and authentication, and access to third-party accounts</li><li>Contacting you, managing contacts and sending messages, and handling support and feedback requests</li><li>Handling payments and selling goods and services online</li><li>Hosting and backend infrastructure, platform services, and infrastructure monitoring</li><li>Displaying content from external platforms and interacting with external social networks and live chat platforms</li><li>Location-based interactions and location processing, and device permissions for accessing personal data</li><li>Advertising, remarketing and behavioural targeting, and transfers of data outside the EU</li></ul></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">5. Device Permissions (Mobile)</h3><div class="page_content__lm8Fs"><p>On mobile, this Application may ask for permissions that let it access certain device data. By default you must grant these before the relevant data can be accessed, and you can revoke them at any time through your device settings or by contacting the Owner. The exact steps depend on your device and software, and revoking a permission may affect how well the Application works.</p><ul><li><strong>Bluetooth sharing</strong> — scanning for and connecting to nearby devices and transferring data between them.</li><li><strong>Camera</strong> — accessing the camera to capture images and video.</li><li><strong>Contacts</strong> — accessing and, where applicable, changing contacts and profiles on your device.</li><li><strong>Phone</strong> — read-only access to telephony features such as the device phone number, network information, and call status.</li><li><strong>Precise location (non-continuous)</strong> — accessing your precise location to provide location-based services; your position is not tracked continuously, so we cannot derive it on an ongoing basis.</li><li><strong>SMS</strong> — sending, receiving, and reading SMS messages.</li></ul></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">6. Third-Party Services We Use</h3><div class="page_content__lm8Fs"><p>Personal data is collected for the purposes below using the following services. Where a service states &quot;various types of data,&quot; the specifics are set out in that provider&#x27;s own privacy policy. Services that connect to third-party accounts are not activated automatically and require your explicit authorisation.</p><h4 class="page_subSectionTitle__xBX1b">
41Analytics</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Google Analytics (Universal Analytics) — Google Inc.</td><td>Tracks and examines use of the service and prepares activity reports, which may be shared with and used to personalise ads across other Google services. Cookies; usage data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Access to third-party accounts</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Stripe account access — Stripe, Inc.</td><td>Connects to your Stripe account. Various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Contacting the user</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Contact form — this Application</td><td>Uses details you submit to reply to your requests. Company name; email; first and last name; phone number.</td></tr><tr><td>Phone contact — this Application</td><td>Users who provide a phone number may be contacted for commercial, promotional, or support purposes. Phone number.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Content performance and feature testing (A/B testing)</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Firebase Remote Config — Google LLC</td><td>A/B testing and configuration. Various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Displaying content from external platforms</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Google Maps widget — Google Inc.</td><td>Embeds interactive maps; may collect traffic data on pages where it is installed. Cookies; usage data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Handling payments</h4><p>These services process payments by card, bank transfer, or other means, and we share only the information needed to complete the transaction. Some may also send timed messages such as invoices or payment notifications.</p><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>ChargeBee — ChargeBee Inc.</td><td>Various types of data. United States.</td></tr><tr><td>GoCardless — GoCardless Limited</td><td>Various types of data. United States.</td></tr><tr><td>PayPal — PayPal Inc.</td><td>Various types of data. See the PayPal privacy policy.</td></tr><tr><td>Spreedly — Spreedly Inc.</td><td>Various types of data. United States.</td></tr><tr><td>SOFORT — SOFORT GmbH</td><td>Various types of data. Germany.</td></tr><tr><td>Stripe — Stripe Inc.</td><td>Various types of data. United States.</td></tr><tr><td>WorldPay — WorldPay Limited</td><td>Various types of data. United Kingdom.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Hosting and backend infrastructure</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Amazon Web Services (AWS) — Amazon Web Services, Inc.</td><td>Various types of data. Ireland.</td></tr><tr><td>Cloudinary — Cloudinary Ltd.</td><td>Various types of data. Israel.</td></tr><tr><td>GitHub Pages — GitHub, Inc.</td><td>Various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">
41Infrastructure monitoring</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Crashlytics — Google Inc.</td><td>Geographic position; unique advertising identifiers; various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Interaction with external platforms, live chat, and support</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>PayPal button and widgets — PayPal Inc.</td><td>Interaction with the PayPal platform. Cookies; usage data. See the PayPal privacy policy.</td></tr><tr><td>LiveChat Widget — LiveChat, Inc.</td><td>Live chat; conversations may be logged. Cookies; data communicated while using the service; usage data. United States.</td></tr><tr><td>Zendesk Widget — Zendesk, Inc.</td><td>Support and feedback. Company name; country; email; first and last name; phone number; username. United States.</td></tr><tr><td>Zendesk — Zendesk, Inc.</td><td>Managing support and contact requests. Various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Managing contacts and sending messages</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Amazon Simple Email Service — Amazon.com Inc.</td><td>Email management and sending. Email address. United States.</td></tr><tr><td>Firebase Cloud Messaging — Google, Inc.</td><td>Cross-platform messages and notifications. Various types of data. United States.</td></tr><tr><td>Firebase Notifications — Google LLC</td><td>Notifications, integrable with analytics audiences. Various types of data. United States.</td></tr><tr><td>OneSignal — Lilomi, Inc.</td><td>Cross-platform messages and notifications; may use precise location, advertising identifiers, and cookie-like tech, and may support interest-based advertising and research. Cookies; email; geographic position; language; advertising identifiers; usage data. United States. Opt out of push via device settings and of ad features via device advertising settings.</td></tr><tr><td>Twilio — Twilio, Inc.</td><td>Phone number management and communication. Phone number. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Platform services and hosting</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>WordPress.com — Automattic Inc.</td><td>Builds, runs, and hosts this Application. Various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Registration and authentication</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>Direct registration — this Application</td><td>You register via the form. Email; first and last name; language; password; phone number.</td></tr><tr><td>Log In with PayPal — PayPal Inc.</td><td>Various types of data. See the PayPal privacy policy.</td></tr><tr><td>Stripe OAuth — Stripe, Inc.</td><td>Various types of data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Remarketing and behavioural targeting</h4><p>These services serve advertising based on your past use of this Application, using trackers and usage data shared with advertising partners; some support email-list-based remarketing. You can opt out via each service and via the Network Advertising Initiative opt-out page, or through your device&#x27;s advertising settings.</p><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>AdRoll — AdRoll, Inc.</td><td>Cookies; usage data. United States.</td></tr><tr><td>Google Ads Remarketing — Google LLC</td><td>Connects activity to the Google Ads network and DoubleClick cookie; opt out via Google Ads Settings. Cookies; usage data. United States.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Advertising</h4><p>These services use your data to show banners and other advertisements, which may be based on your interests. Not all personal data is used for this. Some may use trackers or behavioural retargeting, including activity detected outside this Application.</p><table class="page_table__WV8B_"><thead><tr><th>
41Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>NextRoll — NextRoll, Inc.</td><td>Hashes your email to serve targeted ads across your connected devices (cross-device tracking). Device information; purchase history; tracker; advertising identifiers; usage data. Ireland.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Location processing and location-based interactions</h4><table class="page_table__WV8B_"><thead><tr><th>Service (provider)</th><th>Data processed / place</th></tr></thead><tbody><tr><td>VROMO</td><td>Delivery management system. Cookies; usage data. Ireland.</td></tr><tr><td>Non-continuous geolocation — this Application</td><td>Collects and uses location to provide location-based services, only with your authorisation and not on a continuous basis. Geographic position.</td></tr></tbody></table><h4 class="page_subSectionTitle__xBX1b">Business partners and restaurants</h4><p>We may share your personal data with business partners and restaurants you have placed an order with, so they can process and deliver it. We share details such as your email and information about your order with that partner for the performance of our contract; the partner has its own responsibilities for that data, and in turn shares data with us so we can provide our services to you.</p></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">7. Transfers Outside the European Union</h3><div class="page_content__lm8Fs"><p>Where data collected within the EU is transferred to a country outside it, the transfer relies on one of the legal bases below, and you can ask the Owner which applies to a given service:</p><ul><li><strong>Consent</strong> — data is transferred only after you have explicitly consented, having been informed of the possible risks where there is no adequacy decision or appropriate safeguards.</li><li><strong>Standard contractual clauses</strong> — the transfer uses the European Commission&#x27;s standard contractual clauses, under which recipients commit to EU data-protection standards.</li><li><strong>Adequacy decision</strong> — the transfer relies on a European Commission decision recognising that the destination country offers comparable protection; an up-to-date list is published on the Commission&#x27;s website.</li><li><strong>Other bases</strong> — where none of the above applies, a transfer may proceed only if necessary for a contract with or in the interest of the user, for important public-interest reasons, for legal claims, or to protect someone&#x27;s vital interests where they cannot consent.</li></ul></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">8. Your Rights Under the GDPR</h3><div class="page_content__lm8Fs"><p>To the extent permitted by law, you may:</p><ul><li>Withdraw consent at any time where processing is based on consent.</li><li>Object to processing carried out on a legal basis other than consent.</li><li>Access your data, learn whether it is being processed, and obtain a copy.</li><li>Verify its accuracy and ask for it to be corrected or updated.</li><li>Restrict processing, so that the Owner only stores your data.</li><li>Have your data erased.</li><li>Receive your data in a structured, machine-readable format and, where feasible, have it transferred to another controller.</li><li>Lodge a complaint with your competent data protection authority.</li></ul><p>Where processing serves a public interest, official authority, or the Owner&#x27;s legitimate interests, you may object by citing grounds relating to your particular situation. Where your data is processed for direct marketing, you may object at any time, free of charge and without giving a reason, after which it will no longer be used for that purpose.</p><h4 class="page_subSectionTitle__xBX1b">How to exercise your rights</h4><p>You can direct any request to the Owner using the contact details in this document. Requests are free and answered as soon as possible, always within one month. Any rectification, erasure, or restriction will be communicated to each recipient of your data where feasible, and the Owner will tell you who those recipients are on request.</p><h4 class="page_subSectionTitle__xBX1b">Legal basis of processing</h4><p>The Owner may process your data where: you have consented for one or more purposes; processing is needed to perform an agreement with you or take pre-contractual steps; processing is required by a legal obligation; processing serves a task in the public interest or official authority; or processing serves the legitimate interests of the Owner or a third party. The Owner can clarify the specific basis that applies, including whether providing data is a statutory or contractual requirement.</p></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">9. Additional Information</h3><div class="page_content__lm8Fs"><ul><li><strong>Profiling</strong> — the Owner may use your personal and usage data to build or update profiles in order to evaluate your choices, preferences, and behaviour. You always have the right to object to profiling.</li><li><strong>Data from other sources</strong> — the Owner may have lawfully obtained data about you from third parties; where this happens, you can find details in the relevant sections or by contacting the Owner.</li><li><strong>Push notifications</strong> — this Application may send push notifications, including for direct marketing of its own or third-party products. You can opt out via your device settings, though disabling them may reduce the usefulness of the Application.</li><li><strong>Selling online</strong> — data collected to complete a purchase may include the payment means used, depending on the payment system.</li><li><strong>Equal protection</strong> — the Owner shares data only with carefully selected third parties that offer equivalent protection to that described here and required by law.</li><li><strong>Legal action</strong> — your data may be used in court or in the stages leading to legal action arising from misuse of this Application, and may be disclosed at the request of public authorities.</li><li><strong>System logs and maintenance</strong> — this Application and third-party services may collect system logs and other data (such as IP address) for operation and maintenance.</li><li><strong>Cookies</strong> — this Application uses trackers; see the Cookie Policy for details, including how to opt out of interest-based advertising.</li><li><strong>Changes</strong> — the Owner may update this policy at any time by posting it on this page and, where feasible, notifying users. Please check this page regularly and note the date below. Where changes affect consent-based processing, new consent will be collected where required.</li><li><strong>Information not covered here</strong> — further details about the collection or processing of personal data can be requested from the Owner at any time.</li></ul></div></section><section class="page_section__ovu4r"><h3 class="page_sectionTitle__gi_rY">10. Definitions</h3><div class="page_content__lm8Fs"><ul><li><strong>Personal data</strong> — any information that, directly or indirectly, allows a natural person to be identified.</li><li><strong>Usage data</strong> — information collected automatically, such as IP addresses or domain names, request times and methods, response size and status codes, country of origin, browser and operating-system characteristics, time spent per page, the path followed through the Application, and other device and environment parameters.</li><li><strong>User</strong> — the individual using this Application, who unless stated otherwise is the data subject.</li><li><strong>Data subject</strong> — the natural person to whom the personal data refers.</li><li><strong>Data processor</strong> — the party that processes personal data on behalf of the controller; here, <!-- --> Limited.</li><li><strong>Data controller (Owner)</strong> — the party that, alone or with others, determines the purposes and means of processing; here, the business whose branding appears on this Application.</li><li><strong>This Application</strong> — the means by which your personal data is collected and processed.</li><li><strong>Service</strong>
41 — the service this Application provides, as described in its terms and on this site or application.</li><li><strong>European Union (EU)</strong> — unless stated otherwise, all references include the current EU member states and the European Economic Area.</li><li><strong>Cookie</strong> — a tracker consisting of a small set of data stored in your browser.</li><li><strong>Tracker</strong> — any technology — cookies, unique identifiers, web beacons, embedded scripts, e-tags, fingerprinting — that enables tracking by accessing or storing information on your device.</li></ul><p>This policy relates solely to this Application unless stated otherwise within it.</p></div></section><p class="page_lastUpdated__edIWB">Last updated: June 2026</p></div><div class="ant-flex css-1ylxgcl css-var-R6"><footer id="footer" class="Footer_footer__ddZ2A"><div class="ant-flex css-1ylxgcl css-var-R6 ant-flex-align-center ant-flex-vertical"><div class="Footer_copyright__CP_2u ant-flex css-1ylxgcl css-var-R6"><span class="ant-typography ant-typography-secondary css-1ylxgcl css-var-R6">Copyright<!-- --> © <!-- -->2026<!-- --> </span><span class="Footer_dash__Tb_Dk">|</span><div class="ant-flex css-1ylxgcl css-var-R6" style="gap:8px"><a href="/terms-and-conditions">Terms and Conditions</a><span>|</span><a href="/privacy-policy">Privacy Policy</a></div><span class="Footer_dash__Tb_Dk">|</span><a href="/cookie-policy">Cookie Policy</a></div></div></footer></div></main></div><!--$--><!--/$--><!--$--><!--/$--></div></div>
41<script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"website":{"id":42,"version":null,"scheme":"https","standardWebsiteURL":"www.swishr.co.uk","mobileWebsiteURL":null,"standardFolderPath":"/swishr","mobileFolderPath":null,"redirectIndexUrl":null,"rootStaticUrl":"/static/swishr","redirectIfNotWWW":true,"logoUrl":null,"altLogoUrl":null,"faviconUrl":null,"domain":"www.swishr.co.uk","type":"WEBSITE","widget":false},"company":{"id":714,"version":null,"name":"Swishr","description":"Swishr","locationWebLogoUrl":"http://res.cloudinary.com/blue-plus-technologies-ltd/image/upload/v1731342443/n2n3t6t3eroa7hw8by2i.png","companyType":"PORTAL","companyTier":"MERCHANT","deliveryZoneType":"RADIUS_MILES","active":true,"archive":false,"clientSendPushNotification":true,"androidAppURL":"https://play.google.com/store/apps/details?id=com.swishr.swishrapp\u0026hl=en_US","salesCompanyName":"Swishr","salesCompanyWebsite":"https://www.swishr.co.uk","registrationDate":"2024-06-16 13:12:00","expiryDate":null,"tradingName":null,"registeredCountry":"United Kingdom","addressLine1":null,"addressLine2":null,"city":null,"postalCode":null,"dataControllerFirstName":null,"dataControllerLastName":null,"dataControllerPhone":null,"dataControllerEmail":null,"corporateNumber":null,"taxNumber":null,"packagePlan":null,"signedDPA":false,"maxLocation":1000,"resellerCompanyId":1020,"primaryWebHost":"https://www.swishr.co.uk","offline":false,"offlineMessage":null,"companyLocales":[],"languageLocales":[{"id":769,"version":null,"country":"GB","language":"en","companyId":714,"default":true,"isDefault":true}],"deliveryZoneSettings":[],"workFlowSettings":[{"id":143,"version":null,"channel":"ALL","companyId":714,"workFlowSettingParams":[{"id":596,"version":null,"key":"add_address_map_service","value":"zipcode2_no_geo","workFlowSettingId":143},{"id":597,"version":null,"key":"store_search_map_service","value":"zipcode2_no_geo","workFlowSettingId":143},{"id":598,"version":null,"key":"add_address_pin_my_location","value":"no","workFlowSettingId":143},{"id":599,"version":null,"key":"store_search_pin_my_location","value":"no","workFlowSettingId":143},{"id":806,"version":null,"key":"default_view","value":"store_listing","workFlowSettingId":143}]}],"country":{"id":1,"version":null,"country":"United Kingdom"},"companyLocale":{"id":731,"version":null,"country":"GB","language":"en","companyId":714,"default":true,"isDefault":true},"companySetting":{"id":40,"version":null,"enableDriverTip":true,"enableOTPPhoneVerification":false,"enableGuestCheckout":false,"storeSignUpToEmail":"[email protected]","driverSignUpToEmail":"[email protected]","driverDeliveryChargeShareRate":0,"companyId":714},"iosappURL":"https://apps.apple.com/gb/app/swishr-food-more/id6680155951"},"theme":null,"locale":"en","messages":{"additionaldirections.required":"Additional Directions is required.","address.required":"Address required","addressline1.required":"Address Line 1 required","addressline2.required":"Address Line 2 required","addresstype.required":"Address Type is required.","age.required":"Age is required.","apartment.required":"Apartment is required.","apartmentbuildingname.required":"Apartment/Building Name is required.","apartmentfloor.required":"Apartment Floor is required.","apartmentnumber.required":"Apartment Number is required.","APPLEPAY":"Apple Pay","GOOGLEPAY":"Google Pay","area.maxlength":"Area must not exceed 40 characters.","area.minlength":"Area must be at least 3 characters.","area.required":"Area is required.","asap.minutes":"{0} minutes","become.driver.api.error":"Something went wrong. Please try again.","become.driver.city":"Town / City","become.driver.email":"Email Address","become.driver.fullname":"Full Name","become.driver.message":"Message","become.driver.phone":"Phone Number","become.driver.subtitle":"Join our delivery team and start earning today.","become.driver.success.message":"Thank you for your interest. We will be in touch soon.","become.driver.success.title":"Application Submitted","become.driver.title":"Become a Driver","captcha.invalid":"Invalid CAPTCHA. Please try again.","CARD":"CARD","CARDTERMINAL":"CARD TERMINAL","CASH":"CASH","city.required":"City required","citytown.required":"City Town is required.","common.error.generic":"Error Message","coordinates.required":"Coordinates is required.","coupon.conflict.description":"Do you want to remove the current one and use this instead?","coupon.conflict.title":"You can only apply one offer per order","coupon.onetime.login.description":"This offer is limited to one use per customer. Please log in or create an account to use it.","coupon.onetime.login.title":"Login Required","dateofbirth.required":"Date of Birth is required.","directions.required":"Directions is required.","directionslandmarks.required":"Directions Landmarks is required.","email.alreadyinuse":"Email address already in use","email.invalid":"Email is invali
41d","email.required":"Email required","error.404.title":"We can't find that page","error.404.description":"The page you're looking for may have moved or is no longer available. Let's get you back on track.","error.500.title":"Something went wrong on our end","error.500.description":"We hit an unexpected error while loading this page. Please try again in a moment — if it keeps happening, come back a little later.","error.button.homepage":"Go to homepage","error.button.try.again":"Try again","error.branch.closed":"The store is currently not open for orders.","error.cart.missing":"Cart is missing","error.checkout.session.failed":"Unable to proceed to checkout, please try again.","error.customer.missing":"Customer information is missing","error.customer.missing.trans.id":"Customer or transaction ID is missing","error.guest.address.missing":"Please add a delivery address before placing the order","error.guest.contact.missing":"Please add your contact details before placing the order","error.guest.email.invalid":"Please enter a valid email address","error.guest.email.missing":"Email is required","error.guest.firstname.missing":"First name is required","error.guest.lastname.missing":"Last name is required","error.guest.phone.missing":"Phone number is required","error.line.items.missing":"Order items are missing","error.order.not.available":"Order is not available","error.order.time.missing":"Please select order time","error.payment.method.missing":"Payment method is missing","error.payment.unsupported.processor":"Payment processor is not supported","error.phone.number.missing":"Phone number is missing","error.preorder.failed.confirm.time.slot":"Failed to confirm pre-order time slot","error.table.number.missing":"Table number is missing","firstname.required":"First Name required","forgotlogindetails.submit.success":"Thank you, the password-reset email has now been sent to you","fullname.required":"Full name required","gender.required":"Gender is required.","header.addaddress":"ADD ADDRESS","header.editaddress":"EDIT ADDRESS","header.order.detail":"ORDER DETAIL","header.reset.password":"Reset Password","home.required":"Home is required.","homenumber.required":"Home Number is required.","info.card.savecard":"Save card for future payments","label.add.delivery.instructions":"Add delivery instructions","label.add.order.notes":"Add order notes","label.additional":"Additional","label.additionaldirections":"Additional Directions","label.address.delete.description":"Are you sure you want to delete this address?","label.address.delete.title":"Delete address","label.address.duplicated":"The same address cannot be used for both fields","label.address.message.default":"The address has been updated to the default.","label.address.message.delete":"The address has been deleted.","label.address.message.saved":"New address has been added.","label.address.message.update":"The address has been updated.","label.addressline1":"Address Line 1","label.addressline2":"Address Line 2","label.addresstype":"Address Type","label.age":"Age","label.agreetoterms":"Agree to Terms and Conditions","label.all.stores":"All Stores","label.allergens":"Allergens","label.allergies":"Allergies","label.allergies.message":"If you or someone you're ordering for has an allergy, please contact the merchant directly by","label.allergies.modal.message":"If you have a health-threatening allergy, we strongly recommend contacting the store directly at {0} before placing your order.","label.allergies.modal.title":"Allergy \u0026 Dietary Information","label.amount":"Amount","label.apartment":"Apartment","label.apartmentbuildingname":"Apartment/Building Name","label.apartmentfloor":"Apartment Floor","label.apartmentnumber":"Apartment Number","label.area":"Area","label.arriving.now":"Arriving now","label.asap":"ASAP","label.at.the.address":"At the address","label.away":"away","label.bag.fee":"Bag Fee","label.bag.fee.description":"Businesses are legally obligated to charge customers for specific types of carrier bags. The fee is determined by the average number of bags used per order.","label.basket.is.empty":"Your basket is empty","label.branchdeliveryzones":"Delivery Zones","label.bundle.customize":"Customize","label.bundle.customize.required":"Please customize this item","label.button.add.more.item":"Add more items","label.button.apply":"Apply","label.button.back":"Back","label.button.back.home":"Back Home","label.button.back.to.store":"Back to store","label.button.back.to.website":"Back to {0}","label.button.basket":"Basket","label.button.cancel":"Cancel","label.button.change":"Change","label.button.checkout":"Checkout","label.button.confirm":"Confirm","label.button.continue.app":"Continue to app","label.button.continue.browser":"Continue to browser","label.button.discard":"Discard","label.button.location.confirm":"Confirm Location","label.button.login":"Log In","label.button.login.register":"Login/Register","label.button.ok":"Ok","label.button.order":"Order","label.button.paybycard.standard":"Pay By Card","label.button.pay":"Pay","label.cart.item.count":"{0} item","label.cart.items.count":"{0} items","label.cart.total":"Cart Total","label.clear.cart":"Clear cart","label.confirm.remove.cart.item":"Are you sure you want to remove this item?","label.confirmation":"Confirmation","label.continue.shopping":"Continue shopping","label.each":"each","label.error.google.pay.unavailable":"Google Pay is not available on this device","label.button.register.popup":"Sign Up","label.button.reset":"Reset","label.button.resetpassword":"Reset Password","label.button.save":"Save","label.button.schedule":"Schedule","label.button.submit":"Submit","label.button.submitordertorestaurant":"Place Order","label.button.trackorder":"Track Order","label.button.update":"Update","label.call.driver":" Call {0} and enter {1} as pin code if you want to reach the driver.","label.call.store":"Call Store","label.call.us":"C
41all us","label.card.add.new":"Add New Card","label.card.fee":"Card Fee","label.card.remove.description":"Are you sure you want to remove this card?","label.card.remove.title":"Remove card","label.card.save":"Save card","label.category.paused":"This category is currently paused until {0} as the {1}","label.category.unavailable":"This category is currently unavailable","label.catering":"Catering","label.catering.hours":"Catering Hours","label.catering.time":"Delivery time","label.choose":"choose","label.choose.date.time":"Choose date/time","label.city":"City","label.citytown":"City Town","label.collection":"Collection","label.collection.hours":"Collection Hours","label.confirm.delete.basket":"Are you sure you want to delete this basket?","label.contact.support":"Need help with this order?","label.contactusemail.message.failure":"Something went wrong with your request please try again after some time","label.contactusemail.message.success":"We received your request regarding {0}","label.coordinates":"Coordinates","label.coordinates.required":"Please select your address on the map","label.copyright":"Copyright","label.coupon.add":"Add coupon","label.coupon.available":"Available coupons","label.coupon.apply":"Apply","label.coupon.empty":"No coupons available","label.coupon.remove":"Remove","label.create.new.basket":"Create New Basket?","label.create.new.basket.content":"This will clear your existing basket and start a new basket with {0}.","label.curb-side.hours":"Curb-Side Hours","label.curbside":"Curbside","label.curbside.time":"Pick up time","label.custom":"Custom","label.dateofbirth":"Date of Birth","label.deliver.to":"Deliver to","label.delivery":"Delivery","label.delivery.driver":"Delivery driver","label.delivery.fee":"Delivery Fee","label.delivery.hours":"Delivery Hours","label.delivery.instructions":"Delivery instructions","label.delivery.instructions.add.your.note":"Add your note","label.delivery.instructions.input.placeholder":"For example \"Please knock instead of using doorbell\", or \"Please leave order on the porch\".","label.delivery.instructions.message":"Leave instructions for the delivery person","label.delivery.time":"Delivery time","label.delivery.to":"Delivery to","label.deliveryzonename":"Zone Name","label.directions":"Directions","label.directionslandmarks":"Directions Landmarks","label.discount":"Discount","label.distance":"Distance","label.drivertip":"Tips","label.eat-in.hours":"Eat-in Hours","label.eat.in":"Eat-in","label.eat.in.time":"Ready at","label.email":"Email","label.email.us":"Email us","label.enter.amount":"Enter Amount","label.error":"Error Message","label.error.deleted":"Delete Failed","label.error.saved":"Save Failed","label.error.saving":"There was an error while saving data. Please try again later","label.error.standard":"Error","label.estimated.arrival":"Estimated arrival","label.fill.your.basket":"Fill your basket","label.find.store.by.name":"Find store by name","label.firstname":"First Name","label.free":"Free","label.free.delivery":"Free Delivery","label.free.uppercase":"FREE","label.fri":"Fri","label.friday":"Friday","label.fullname":"Full name","label.gender":"Gender","label.gender.agender":"Agender","label.gender.female":"Female","label.gender.genderfluid":"Genderfluid","label.gender.male":"Male","label.gender.nonbinary":"Non-binary","label.geolocation.coordinates.not.foun
41d":"Could not find coordinates for this address","label.geolocation.failed.to.get.coordinates":"Failed to get coordinates","label.google.maps.api.not.loaded":"Google Maps API is not loaded","label.got.it":"Got it!","label.guest.checkout":"Checkout","label.guest.contact.details":"Contact Details","label.guest.continue.as.guest":"Continue as Guest","label.guest.select.order.type":"How would you like to receive your order?","label.home":"Home","label.home.delivery.address":"Enter your address","label.homenumber":"Home Number","label.hours":"Hours","label.image":"Image","label.impressum":"Impressum","label.impressum.contact":"Contact","label.impressum.content.responsible":"Responsible for content","label.impressum.dispute.resolution":"Dispute resolution","label.impressum.fax":"Fax: {0}","label.impressum.mstv":"§ 18 Abs. 2 MStV","label.impressum.provider":"Provider","label.impressum.register.and.vat":"Register \u0026 VAT","label.impressum.registered.address":"Registered address","label.impressum.represented.by":"Represented by {0}","label.impressum.tel":"Tel: {0}","label.impressum.vat.id":"VAT ID {0}","label.impressum.vsbg":"§ 36 VSBG","label.input.your.tip.amount.placeholder":"Please input your tip amount","label.input.your.tip.amount.required":"Input your tip amount","label.instructions":"Instructions","label.invalid":"Invalid","label.item":"Item","label.item.instructions":"Instructions","label.lastname":"Last Name","label.link.addaddress":"Add Address","label.link.address.book":"Address Book","label.link.alreadyregister.popup":"Already have an account?","label.link.backtologin":"Back to login","label.link.click.here":"clicking here","label.link.contact.us":"Contact Us","label.link.cookie.policy":"Cookie Policy","label.link.delete":"Delete","label.link.edit":"Edit","label.link.forgotten.login":"Forgot your password?","label.link.login":"Login","label.link.logout":"Log Out","label.link.loyalty":"Loyalty","label.link.marketing.preferences":"Marketing Preferences","label.link.order.history":"Order History","label.link.personal.info":"Personal Info","label.link.privacy.policy":"Privacy Policy","label.link.review":"Reviews","label.link.signup":"Sign Up","label.link.update.password":"Update Password","label.location":"Location","label.location.delivery.invalidPostcode":"Invalid postcode","label.location.delivery.noRestaurants":"Sorry, there are no restaurants servicing the supplied address.","label.location.delivery.postcode":"Enter your full postcode","label.location.delivery.title":"Where we should delivery your order?","label.location.pickup.locations":"locations","label.location.pickup.searchPlaceholder":"Search by city, street or postcode","label.locationresults.all":"All","label.marketing.email":"Email","label.marketing.preferences.description":"Get promotions and offers by","label.marketing.push":"Push notification","label.marketing.sms":"SMS text message","label.menu":"Menu","label.menu.paused":"This menu is currently paused until {0} as the {1}","label.menu.unavailable":"This menu is currently unavailable.","label.minimum.delivery":"Minimum Delivery","label.mins":"mins","label.mon":"Mon","label.monday":"Monday","label.neighbourhood":"Neighbourhood","label.newcustomer":"New Customer?","label.newpassword":"New Password","label.newpassword.confirm":"Confirm New Password","label.no":"No","label.no.available.method":"No available method","label.no.data":"No data","label.no.delivery.address":"You don't have a delivery address saved yet","label.no.preorder.available":"No pre-order dates available","label.no.store.found":"Search for \"{0}\"","label.no.store.found.suggestion":"We couldn’t find any stores that match your search.","label.number":"Number","label.office":"Office","label.officebuildingname":"Office Building Name","label.officefloor":"Office Floor","label.open.now":"Open Now","label.optional":"(optional)","label.or":"or","label.order.accepted":"Your order has been accepted!","label.order.cancelled":"Your order has been cancelled","label.order.capital":"ORDER","label.order.catering.from":"From","label.order.catering.to":"To","label.order.collection.from":"From","label.order.collection.location":"Location","label.order.completed":"You received your order!","label.order.curbside.from":"From","label.order.curbside.location":"Location","label.order.delivery.from":"From","label.order.delivery.to":"To","label.order.driver.arrived":"Driver has arrived to collect your order and is waiting for your order to be ready.","label.order.driver.at.drop.off":"Time to meet {0} at the door.","label.order.driver.at.drop.off.no.name":"Time to meet driver at the door.","label.order.driver.en.route":"A driver has accepted y
41our delivery and is en route to collect your order. Your order is still being prepared.","label.order.driver.failed":"Delivery was not successful.","label.order.eat.in.at":"At","label.order.expectedat":"Expected at","label.order.notes":"Order Notes","label.order.notes.input.placeholder":"For example \"Extra hot please\", or \"Please leave order on the porch\".","label.order.notes.instructions.message":"Add a note about your order. If you or the person you're ordering for has a food allergy, please contact the store directly. Do not include allergy or intolerance information in this note.","label.order.on.the.way":"Your order is on the way!","label.order.pending":"Your order is awaiting confirmation from the store","label.order.pickup.from":"From","label.order.pickup.location":"Location","label.order.placeat":"Placed at","label.order.preorder.confirmed":"Pre-order confirmed! Your order will be prepared and ready at the designated time.","label.order.prepared":"The store has accepted your order, and it's being prepared!","label.order.ready.to.pickup":"Your order is ready to be picked up","label.order.ready.to.pickup.counter":"Your order is ready to be picked up at the counter.","label.order.rejected":"Your order has been rejected","label.order.rejected.reason":"Your order has been rejected for the following reason:","label.orderreference":"Order Reference","label.over.x":"Over {0}","label.password":"Password","label.payment.processing":"Please wait while we are processing your payment. This will take a few seconds.","label.paymentmethod":"Payment Method","label.paymentmethod.title":"How would you like to pay?","label.paymenttype":"Payment Type","label.personal.info.message.update":"Personal info has been updated","label.phone":"Telephone/Mobile","label.phone.edit":"Edit phone number","label.phoneno":"Phone no.","label.pickup":"Pickup","label.pickup.at":"Pickup at","label.pickup.at.counter":"Pickup at counter","label.pickup.from.counter":"Pickup from counter","label.pickup.point":"Pickup point","label.pickup.time":"Pickup time","label.please.select":"Please select {0}.","label.postalcode":"Postalcode","label.postcode":"Postcode","label.proceed.to.checkout":"Proceed to Checkout","label.product.add.item":"Add Item","label.product.done":"Done","label.product.save":"Save ({0})","label.product.paused":"This product is currently paused until {0} as the {1}","label.product.unavailable":"This product is currently unavailable","label.product.update.item":"Update Item","label.promo.code.invalid":"The promo code is invalid, expired, or already used.","label.promocode.add":"Add promo code","label.promocode.enter":"Enter your promo code","label.promocode.enterHere":"Enter your promo code here","label.promocode.title":"Promo Code: {0}","label.promocodediscount":"Promo Code Discount","label.voucherdiscount":"Voucher Discount","label.voucher.title":"Voucher: {0}","label.voucher.notApplied":"Voucher {0} isn't applied","label.voucher.yours":"Your vouchers","label.voucher.empty":"No vouchers available","label.voucher.expiresin":"Expires in {0} days","label.voucher.code":"Code: {0}","label.promotion":"Promotion","label.promotion.delivery":"Delivery Discount","label.promotion.order":"Order Discount","label.quantity.short":"Qty","label.question.create.new.basket":"Create New Basket?","label.rating":"Rating","label.receivepromotionemail":"Receive promotions by Email","label.receivepromotionsms":"Receive promotions by SMS","label.request.failed":"Request failed","label.required":"Required","label.results.for":"results for","label.review.message.error":"Your review is not added , please try again","label.review.message.success":"Thank you for your review","label.reviews.button.revieworder":"Review","label.reviews.enter.your.review":"Enter your review...","label.reviews.how.was.your.order.with":"How was your order with","label.reviews.leavereview":"Leave a review","label.reviews.orderdeliveryservice":"Delivery service","label.reviews.orderfoodquality":"Food quality","label.reviews.ordervalueforMoney":"Value for money","label.reviews.review":"Review","label.sat":"Sat","label.saturday":"Saturday","label.schedule.for.later":"Schedule for later","label.schedule.order":"Schedule Order","label.search.no.product.found":"Sorry, we couldn't find the product that you are looking for.","label.search.products":"Search products","label.select.at.least":"You must select at least {0} options from {1}.","label.select.max":"You must select max {0} options from {1}.","label.select.up.to":"Select up to {0}","label.select.up.to.min.max":"Select up to {0} (min = {1}, max = {2})","label.service.fee":"Service Fee","label.service.fee.fix.description":"This fee is {0}% of your basket before promotions or discounts are applied. It is capped at {1}.","label.service.fee.percentage.description":"This fee is {0}% of your basket before promotions or discounts are applied. It has a minimum of {1} and is capped at {2}.","label.set.date.time":"Set date and time","label.show.more":"Show more","label.show.total.item":"Show {0} items","label.signup.message.failed":"Signup Failed","label.signup.message.success":"Signup successfully","label.sort":"Sort","label.sort.by":"Sort by","label.sort.delivery":"Delivery","label.sort.rating":"Rating","label.specialinstructions":"Special Instructions","label.spend.to.save":"Spend {0} save {1}","label.offer.off":"{0} OFF","label.offer.min":"Min: {0}","label.start.typing.search.products":"Start typing to search products","label.status":"Status","label.store.close"
41:"Closed","label.store.closed":"Closed","label.store.list.no.branches.found":"We couldn’t find any stores that match your search.","label.store.modal.title":"Store Information","label.store.more.results":"More results","label.store.offline":"Offline","label.store.open":"Open","label.store.orderforlater":"Order for Later","label.storename":"Store name","label.street":"Street","label.streetaddress":"Street Address","label.subdistrict":"Sub District","label.subtotal":"Subtotal","label.success":"Success","label.success.deleted":"Deleted Successfully","label.success.saved":"Saved successfully","label.sun":"Sun","label.sunday":"Sunday","label.table":"Table","label.table.number":"Table number","label.table.select":"Select a table","label.table.selection":"Table number selection","label.table.selecttablenumber":"Please select a table number for your order","label.table.served":"Your order will be served to Table {0}","label.terms.and.conditions":"Terms and Conditions","label.thu":"Thu","label.thursday":"Thursday","label.time":"time","label.time.slot.expired":"Time Slot Expired","label.time.slot.expired.message":"This time slot is no longer available. Please select another time slot.","label.total":"Total","label.total.capital":"TOTAL","label.total.order":"Total Order","label.track.driver":"Track driver on {0}","label.tue":"Tue","label.tuesday":"Tuesday","label.unit.price":"Unit price","label.view.cart":"View cart","label.view.detail":"View Detail","label.warning":"Warning","label.wed":"Wed","label.wednesday":"Wednesday","label.when.order":"When would you like to order for?","label.yes":"Yes","label.your.cart":"Your Cart","label.your.cart.items":"Your cart items","label.your.items":"Your Items","label.zipcode":"Zipcode","label.zipcode.first.part":"First part","label.zipcode.second.part":"Second part","lastname.required":"Last Name required","locationresults.button.viewmenu":"View Menu","loyalty.available":"Available {0}","loyalty.card.title":"Loyalty Card","loyalty.choose.store":"Choose a store","loyalty.enrol":"Enrol","loyalty.expiry":"Expiry date","loyalty.featured.deals.added.to.cart":"Added to cart","loyalty.featured.deals.applied.count":"{0}/{1} items applied","loyalty.featured.deals.points.required":"{0} points","loyalty.featured.deals.redeem":"Redeem","loyalty.featured.deals.remove":"Remove","loyalty.featured.deals.remove.confirm.description":"This item will be removed from your order.","loyalty.featured.deals.remove.confirm.title":"Remove this item?","loyalty.featured.deals.scroll.left":"Scroll left","loyalty.featured.deals.scroll.right":"Scroll right","loyalty.featured.deals.select":"Select","loyalty.featured.deals.stamps.required":"{0} stamps","loyalty.featured.deals.subtitle":"Redeem items with your points","loyalty.featured.deals.title":"Featured Deals","loyalty.featured.deals.view.terms":"View terms \u0026 conditions","loyalty.greeting":"Hi, {0},","loyalty.how.deals.description.middle":"and deeper discounts available only to","loyalty.how.deals.description.prefix":"Get access to special offers and deeper discounts available only to","loyalty.how.deals.description.suffix":".","loyalty.how.deals.link1":"deals","loyalty.how.deals.link2":"members","loyalty.how.deals.title":"Exclusive Deals","loyalty.how.earn.points.description":"Tap to see your rewards—what's unlocked and what's still locked for you.","loyalty.how.earn.title":"Earn {0} fast","loyalty.how.it.works":"How it works","loyalty.how.redeem.description":"Use your {0} to unlock {1} products and exclusive rewards, online or in-store.","loyalty.how.redeem.link1":"free","loyalty.how.redeem.link2":"Freebies","loyalty.how.redeem.title":"Redeem for {0}","loyalty.how.see.rewards":"see your rewards","loyalty.how.title":"Collect {0} to earn rewards!","loyalty.join.description":"By joining our loyalty program you get access to special offers and deeper discounts available only to members.","loyalty.join.title":"Join our loyalty program","loyalty.no.program":"No loyalty program available for this branch.","loyalty.not.logged.in":"Please log in to view your loyalty program.","loyalty.point.boosts.tab":"Point Boosts","loyalty.points":"Points","loyalty.reward.add.to.order":"Add to order","loyalty.reward.applied.automatically":"Applied Automatically","loyalty.reward.different.branch.content":"Your basket contains items from another store. Redeeming this reward will clear your existing basket.","loyalty.reward.different.branch.title":"Start a new basket?","loyalty.reward.remove.description":"This reward will be removed from your order.","loyalty.reward.remove.from.order":"Remove from order","loyalty.reward.remove.title":"Remove this reward?","loyalty.reward.terms.available.all.channels":"Available on all channels where promo codes are accepted","loyalty.reward.terms.cannot.combine":"Cannot be combined with other promo codes or coupons","loyalty.reward.terms.limited.time":"Valid for a limited time only","loyalty.reward.terms.maximum.discount":"Maximum discount amount: {0}","loyalty.reward.terms.minimum.spend":"Minimum spend: {0}","loyalty.reward.terms.one.time.use":"One time use only","loyalty.reward.terms.order.types":"Applies to specific order types: {0}","loyalty.reward.terms.payment.methods":"Applies to specific payment methods: {0}","loyalty.reward.terms.platform.specific":"Promo code is only available when ordering via: {0}","loyalty.reward.terms.time.period":"Applies to specific time period: {0}","loyalty.reward.terms.title":"Terms \u0026 Conditions:","loyalty.reward.valid.until":"Offer valid until {0}","loyalty.rewards.and.offers.title":"Rewards \u0026 Offers","loyalty.rewards.tab":"Rewards","loyalty.stamp.boosts.tab":"Stamp Boosts","loyalty.stamps":"Stamps","loyalty.tier.orders":"Become a {0} when you have placed {1} orders","loyalty.tier.section.title":"Become a valued member and earn more {0}","loyalty.tier.spending":"Become a {0} when you have spent {1}{2}","loyalty.tier.total.points":"Become a {0} when you have earned {1} points","loyalty.tier.total.stamps":"Become a {0} when you have earned {1} stamps","loyalty.view.rewards":"View Rewards","loyalty.your.points":"Your Points","loyalty.your.stamps":"Your Stamps","message.required":"Message required","neighbourhood.required":"Neighbourhood is required.","newpassword.confirmpassword.invalid":"New Password and Confirm New Password do not match","newpassword.required":"New Password required","number.required":"Number is required.","office.required":"Office is required.","officebuildingname.required":"Office Building Name is required.","officefloor.required":"Office Floor is required.","order.details.tip":"Tips","orders.statuses.accepted":"ACCEPTED","orders.statuses.autoconfirmed":"AUTOCONFIRMED","orders.statuses.cancelled":"CANCELLED","orders.statuses.completed":"COMPLETED","orders.statuses.inprogress":"IN PROGRESS","orders.statuses.onitsway":"ON ITS WAY","orders.statuses.pending":"PENDING","orders.statuses.preordered":"PREORDER","orders.statuses.processed":"PROCESSED","orders.statuses.readytopickup":"READY TO PICKUP","orders.statuses.rejected":"REJECTED","page.not.foun
41d":"Sorry, the page you visited does not exist","page.title.addressbook":"Address Book","page.title.marketing.preferences":"Marketing Preferences","page.title.orderhistory":"Order History","page.title.ordersummary":"Order Summary","page.title.updatepassword":"Update Password","page.title.user.profile":"Account settings","password.confirm.required":"Confirm New Password Required","password.invalid":"Password is invalid","password.required":"Password required","PAYPAL":"PAYPAL","phone.invalid":"Invalid phone number","phone.required":"Telephone/Mobile Number required","postalcode.required":"Postal code is required.","postcode.enter":"Enter your post code","postcode.input":"Please input your post code!","postcode.invalid":"Please Enter Valid Postcode","postcode.no.location.found":"No location found for this Post Code.","postcode.required":"Postcode required","reset.password.info":"Please enter your email, we need to send you a link to reset your password","reward.all.milestones.reached.description":"Tap to claim your rewards and redeem them on your order.","reward.all.milestones.reached.title":"You've unlocked all rewards!","reward.collect.points.title":"Collect points \u0026 earn rewards","reward.delivery.discount.amount":"You've earned a {0}{1} discount on your delivery fee. Tap to add it to your order.","reward.delivery.discount.amount.auto":"You've earned a {0}{1} discount on your delivery fee. This will be automatically applied to your order.","reward.delivery.discount.percentage":"You've unlocked {0}% off delivery. Tap to add it to your order.","reward.delivery.discount.percentage.auto":"You've unlocked {0}% off delivery. This will be automatically applied to your order.","reward.delivery.free":"Place an order and automatically get your delivery free of charge.","reward.expires":"Expires: {0}","reward.order.discount.amount":"You've earned a {0}{1} discount. Tap to add it to your order.","reward.order.discount.amount.auto":"You've earned a {0}{1} discount. This will be automatically applied to your order.","reward.order.discount.percentage":"You've unlocked a {0}% discount on your order. Tap to add it to your order.","reward.order.discount.percentage.auto":"You've unlocked a {0}% discount on your order. This will be automatically applied to your order.","reward.points.away":"You're just {0} points away to unlock your next reward! Tap to view all rewards.","reward.stamps.away":"{0} more stamps to claim next reward ({1}/{2})","reward.you.have.reward":"You have a reward","store.no.reviews":"There are currently no reviews submitted for this store.","store.signup.subtitle":"Fill in the form below and we'll get in touch with you shortly","store.signup.title":"Register your store","storename.required":"Store name required","street.required":"Street is required.","streetaddress.required":"Street Address is required.","subdistrict.required":"Sub District is required.","text.if.less.than":"if less than","text.over":"over","updatepassword.submit.error":"Unable to update your password. Please verify your current password and try again.","updatepassword.submit.success":"Your password has been successfully updated","zipcode.required":"Zipcode required","label.delivery.closed.capital":"DELIVERY CLOSED","label.collection.closed.capital":"COLLECTION CLOSED","label.catering.closed.capital":"CATERING CLOSED","label.curb-side.closed.capital":"CURB-SIDE CLOSED","label.eat-in.closed.capital":"EAT-IN CLOSED","label.delivery.offline.capital":"DELIVERY OFFLINE","label.collection.offline.capital":"COLLECTION OFFLINE","label.catering.offline.capital":"CATERING OFFLINE","label.curb-side.offline.capital":"CURB-SIDE OFFLINE","label.eat-in.offline.capital":"EAT-IN OFFLINE","label.service.not.available":"{0} isn't available right now","label.more.dates":"More dates","label.less.dates":"Less dates","label.free.used":"First {0} toppings are FREE","label.free.used.count":"Used {0}/{1}","label.link.referrals":"Refer a friend","referral.not.logged.in":"Please sign in to see your referrals.","referral.no.program":"No referral programme available at the moment.","referral.ends.in":"Ends in {0}
41 days","referral.share.title":"Share your code","referral.copied":"Copied","referral.copy.failed":"Could not copy. Please copy it manually.","referral.how.it.works":"How rewards unlock","referral.summary.title":"Your progress","referral.summary.invited":"Invited","referral.summary.signedup":"Signed up","referral.summary.completed":"Completed","referral.summary.earned":"Earned","referral.summary.pending":"Pending","referral.summary.remaining":"Rewards left","referral.invitees.title":"Friends you invited","referral.invitees.empty":"You have not invited anyone yet.","referral.rewards.title":"Rewards earned","referral.rewards.empty":"No rewards yet.","referral.status.pending":"Pending","referral.status.earned":"Earned","referral.status.issued":"Issued","referral.terms":"Terms and conditions","referral.help":"Help","label.referral.code":"Referral code","referral.code.invalid":"This referral code is not valid.","referral.eyebrow":"Referral programme","referral.you.get":"You get up to","referral.they.get":"They get up to","referral.share.subtitle":"Friends enter the code at signup, or the link fills it in for them.","referral.your.code":"Your code","referral.your.link":"Your link","referral.step.you":"You get","referral.invited.at":"Invited {0}","referral.signedout.title":"Sign in to get your code","referral.noprogram.title":"No referral programme yet","referral.banner.invited.by":"{0} invited you","referral.banner.invited":"You were invited","referral.banner.reward":"Get {0} when you sign up.","referral.code.prefilled":"Prefilled from your invite link. You can edit it.","referral.code.from.link":"from link","referral.copy":"Copy","referral.friend.completed":"All rewards earned","referral.friend.day.left":"1 day left","referral.friend.days.left":"{0} days left","referral.status.cancelled":"Cancelled","referral.friend.expired":"Expired","referral.friend.cancelled":"Cancelled","label.freeItem.near.single":"You're {0} away from free {1}","label.freeItem.near.choice":"You're {0} away from a free item","label.freeItem.unlocked.single":"You've unlocked free {0}!","label.freeItem.unlocked.choice":"You've unlocked a free item!","label.freeItem.add":"Add {0}","label.freeItem.code.near.single":"Spend {0} more to get free {1} with code {2}","label.freeItem.code.near.choice":"Spend {0} more to unlock your free item with code {1}","label.freeItem.code.unlocked.single":"Your code {0} gets you free {1}!","label.freeItem.code.unlocked.choice":"Your code {0} gets you a free item. Pick one:","referral.share.hint":"Share the code with your friend to use this when they create an account with us","storefront.menu.choose":"Choose a menu","storefront.menu.count.for.order.type":"{0} menus for {1}","storefront.menu.categories.count":"{0} categories","storefront.menu.categories.count.one":"1 category","storefront.menu.view":"View menu","storefront.menu.start.ordering":"Start ordering","storefront.categories.title":"Categories","storefront.product.add":"Add","storefront.product.choose.options":"Choose options","storefront.cart.added":"Added to cart"},"gtmId":null},"__N_SSP":true},"page":"/privacy-policy","query":{},"buildId":"85dTmfTuF-7kQH9NCFz5a","isFallback":false,"isExperimentalCompile":false,"gssp":true,"appGip":true,"scriptLoader":[]}</script>
41</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.