PageSourceSearch

https://www.floyd.no/sw.js

js floyd.no collected 2026-10-04 20:14:38 UTC 33,027 bytes, 199 lines download raw bytes

1/*! @version pwa-studio: 13.2.0, build-id: 1214827, @magento/venia-ui: ~10.2.0, @magento/pwa-theme-venia: ~1.4.0, @magento/pwa-buildpack: ~11.4.2, @magento/peregrine: ~13.1.1, @magento/pagebuilder: ~8.2.0, @magento/eslint-config: ~1.5.0, @magento/babel-preset-peregrine: ~1.2.2, @apollo/client: ~3.5.0 */
2!function(e){var t={}
3function __webpack_require__(r){if(t[r])return t[r].exports
4var s=t[r]={i:r,l:!1,exports:{}},a=!0
5try{e[r].call(s.exports,s,s.exports,__webpack_require__),a=!1}finally{a&&delete t[r]}return s.l=!0,s.exports}__webpack_require__.m=e,__webpack_require__.c=t,__webpack_require__.d=function(e,t,r){__webpack_require__.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.t=function(e,t){if(1&t&&(e=__webpack_require__(e)),8&t)return e
6if(4&t&&"object"==typeof e&&e&&e.__esModule)return e
7var r=Object.create(null)
8if(__webpack_require__.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)__webpack_require__.d(r,s,function(t){return e[t]}.bind(null,s))
9return r},__webpack_require__.n=function(e){var t=e&&e.__esModule?function getDefault(){return e.default}:function getModuleExports(){return e}
10return __webpack_require__.d(t,"a",t),t},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.p="/",__webpack_require__(__webpack_require__.s="0Gu+")}({"0Gu+":function(e,t,r){"use strict"
11r.r(t)
12var s={},a=(e,t)=>{s[e]&&(s[e]=s[e].filter(e=>t!==e))}
13r("Bxln")
14const n=(e,...t)=>{let r=e
15return t.length>0&&(r+=` :: ${JSON.stringify(t)}`),r}
16class WorkboxError_WorkboxError extends Error{constructor(e,t){super(n(e,t)),this.name=e,this.details=t}}const o=new Set
17const c={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!=typeof registration?registration.scope:""},i=e=>[c.prefix,e,c.suffix].filter(e=>e&&e.length>0).join("-"),h={updateDetails:e=>{(e=>{for(const t of Object.keys(c))e(t)})(t=>{"string"==typeof e[t]&&(c[t]=e[t])})},getGoogleAnalyticsName:e=>e||i(c.googleAnalytics),getPrecacheName:e=>e||i(c.precache),getPrefix:()=>c.prefix,getRuntimeName:e=>e||i(c.runtime),getSuffix:()=>c.suffix}
18function stripParams(e,t){const r=new URL(e)
19for(const e of t)r.searchParams.delete(e)
20return r.href}let l
21class Deferred{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const u=e=>{return new URL(String(e),location.href).href.replace(new RegExp(`^${location.origin}`),"")}
22function timeout(e){return new Promise(t=>setTimeout(t,e))}function waitUntil(e,t){const r=t()
23return e.waitUntil(r),r}const f={get googleAnalytics(){return h.getGoogleAnalyticsName()},get precache(){return h.getPrecacheName()},get prefix(){return h.getPrefix()},get runtime(){return h.getRuntimeName()},get suffix(){return h.getSuffix()}}
24async function copyResponse(e,t){let r=null
25if(e.url){r=new URL(e.url).origin}if(r!==self.location.origin)throw new WorkboxError_WorkboxError("cross-origin-copy-response",{origin:r})
26const s=e.clone(),a={headers:new Headers(s.headers),status:s.status,statusText:s.statusText},n=t?t(a):a,o=function canConstructResponseFromBodyStream(){if(void 0===l){const e=new Response("")
27if("body"in e)try{new Response(e.body),l=!0}catch(e){l=!1}l=!1}return l}()?s.body:await s.blob()
28return new Response(o,n)}r("xwD5")
29const d="__WB_REVISION__"
30function createCacheKey(e){if(!e)throw new WorkboxError_WorkboxError("add-to-cache-list-unexpected-type",{entry:e})
31if("string"==typeof e){const t=new URL(e,location.href)
32return{cacheKey:t.href,url:t.href}}const{revision:t,url:r}=e
33if(!r)throw new WorkboxError_WorkboxError("add-to-cache-list-unexpected-type",{entry:e})
34if(!t){const e=new URL(r,location.href)
35return{cacheKey:e.href,url:e.href}}const s=new URL(r,location.href),a=new URL(r,location.href)
36return s.searchParams.set(d,t),{cacheKey:s.href,url:a.href}}class PrecacheInstallReportPlugin{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=(async({request:e,state:t})=>{t&&(t.originalRequest=e)}),this.cachedResponseWillBeUsed=(async({event:e,state:t,cachedResponse:r})=>{if("install"===e.type&&t&&t.originalRequest&&t.originalRequest instanceof Request){const e=t.originalRequest.url
37r?this.notUpdatedURLs.push(e):this.updatedURLs.push(e)}return r})}}class PrecacheCacheKeyPlugin{constructor({precacheController:e}){this.cacheKeyWillBeUsed=(async({request:e,params:t})=>{const r=t&&t.cacheKey||this._precacheController.getCacheKeyForURL(e.url)
38return r?new Request(r):e}),this._precacheController=e}}r("aqiC")
39function toRequest(e){return"string"==typeof e?new Request(e):e}class StrategyHandler_StrategyHandler{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new Deferred,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map
40for(const e of this._plugins)this._pluginStateMap.set(e,{})
41this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this
42let r=toRequest(e)
43if("navigate"===r.mode&&t instanceof FetchEvent&&t.preloadResponse){const e=await t.preloadResponse
44if(e)return e}const s=this.hasCallback("fetchDidFail")?r.clone():null
45try{for(const e of this.iterateCallbacks("requestWillFetch"))r=await e({request:r.clone(),event:t})}catch(e){if(e instanceof Error)throw new WorkboxError_WorkboxError("plugin-error-request-will-fetch",{thrownErrorMessage:e.message})}const a=r.clone()
46try{let e
47e=await fetch(r,"navigate"===r.mode?void 0:this._strategy.fetchOptions)
48for(const r of this.iterateCallbacks("fetchDidSucceed"))e=await r({event:t,request:a,response:e})
49return e}catch(e){throw s&&await this.runCallbacks("fetchDidFail",{error:e,event:t,originalRequest:s.clone(),request:a.clone()}),e}}async fetchAndCachePut(e){const t=await this.fetch(e),r=t.clone()
50return this.waitUntil(this.cachePut(e,r)),t}async cacheMatch(e){const t=toRequest(e)
51let r
52const{cacheName:s,matchOptions:a}=this._strategy,n=await this.getCacheKey(t,"read"),o=Object.assign(Object.assign({},a),{cacheName:s})
53r=await caches.match(n,o)
54for(const e of this.iterateCallbacks("cachedResponseWillBeUsed"))r=await e({cacheName:s,matchOptions:a,cachedResponse:r,request:n,event:this.event})||void 0
55return r}async cachePut(e,t){const r=toRequest(e)
56await timeout(0)
57const s=await this.getCacheKey(r,"write")
58if(!t)throw new WorkboxError_WorkboxError("cache-put-with-no-response",{url:u(s.url)})
59const a=await this._ensureResponseSafeToCache(t)
60if(!a)return!1
61const{cacheName:n,matchOptions:c}=this._strategy,i=await self.caches.open(n),h=this.hasCallback("cacheDidUpdate"),l=h?await async function cacheMatchIgnoreParams(e,t,r,s){const a=stripParams(t.url,r)
62if(t.url===a)return e.match(t,s)
63const n=Object.assign(Object.assign({},s),{ignoreSearch:!0}),o=await e.keys(t,n)
64for(const t of o)if(a===stripParams(t.url,r))return e.match(t,s)}(i,s.clone(),["__WB_REVISION__"],c):null
65try{await i.put(s,h?a.clone():a)}catch(e){if(e instanceof Error)throw"QuotaExceededError"===e.name&&await async function executeQuotaErrorCallbacks(){for(const e of o)await e()}(),e}for(const e of this.iterateCallbacks("cacheDidUpdate"))await e({cacheName:n,oldResponse:l,newResponse:a.clone(),request:s,event:this.event})
66return!0}async getCacheKey(e,t){if(!this._cacheKeys[t]){let r=e
67for(const e of this.iterateCallbacks("cacheKeyWillBeUsed"))r=toRequest(await e({mode:t,request:r,event:this.event,params:this.params}))
68this._cacheKeys[t]=r}return this._cacheKeys[t]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0
69return!1}async runCallbacks(e,t){for(const r of this.iterateCallbacks(e))await r(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if("function"==typeof t[e]){const r=this._pluginStateMap.get(t),s=s=>{const a=Object.assign(Object.assign({},s),{state:r})
70return t[e](a)}
71yield s}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e
72for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,r=!1
73for(const e of this.iterateCallbacks("cacheWillUpdate"))if(r=!0,!(t=await e({request:this.request,response:t,event:this.event})||void 0))break
74return r||t&&200!==t.status&&(t=void 0),t}}class Strategy_Strategy{constructor(e={}){this.cacheName=h.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e)
75return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request})
76const t=e.event,r="string"==typeof e.request?new Request(e.request):e.request,s="params"in e?e.params:void 0,a=new StrategyHandler_StrategyHandler(this,{event:t,request:r,params:s}),n=this._getResponse(a,r,t)
77return[n,this._awaitComplete(n,a,r,t)]}async _getResponse(e,t,r){await e.runCallbacks("handlerWillStart",{event:r,request:t})
78let s=void 0
79try{if(!(s=await this._handle(t,e))||"error"===s.type)throw new WorkboxError_WorkboxError("no-response",{url:t.url})}catch(a){if(a instanceof Error)for(const n of e.iterateCallbacks("handlerDidError"))if(s=await n({error:a,event:r,request:t}))break
80if(!s)throw a}for(const a of e.iterateCallbacks("handlerWillRespond"))s=await a({event:r,request:t,response:s})
81return s}async _awaitComplete(e,t,r,s){let a,n
82try{a=await e}catch(n){}try{await t.runCallbacks("handlerDidRespond",{event:s,request:r,response:a}),await t.doneWaiting()}catch(e){e instanceof Error&&(n=e)}if(await t.runCallbacks("handlerDidComplete",{event:s,request:r,response:a,error:n}),t.destroy(),n)throw n}}class PrecacheStrategy_PrecacheStrategy extends Strategy_Strategy{constructor(e={}){e.cacheName=h.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=!1!==e.fallbackToNetwork,this.plugins.push(PrecacheStrategy_PrecacheStrategy.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const r=await t.cacheMatch(e)
83return r||(t.event&&"install"===t.event.type?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let r
84if(!this._fallbackToNetwork)throw new WorkboxError_WorkboxError("missing-precache-entry",{cacheName:this.cacheName,url:e.url})
85return r=await t.fetch(e)}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded()
86const r=await t.fetch(e)
87if(!await t.cachePut(e,r.clone()))throw new WorkboxError_WorkboxError("bad-precaching-response",{url:e.url,status:r.status})
88return r}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0
89for(const[r,s]of this.plugins.entries())s!==PrecacheStrategy_PrecacheStrategy.copyRedirectedCacheableResponsesPlugin&&(s===PrecacheStrategy_PrecacheStrategy.defaultPrecacheCacheabilityPlugin&&(e=r),s.cacheWillUpdate&&t++)
900===t?this.plugins.push(PrecacheStrategy_PrecacheStrategy.defaultPrecacheCacheabilityPlugin):t>1&&null!==e&&this.plugins.splice(e,1)}}PrecacheStrategy_PrecacheStrategy.defaultPrecacheCacheabilityPlugin={cacheWillUpdate:async({response:e})=>!e||e.status>=400?null:e},PrecacheStrategy_PrecacheStrategy.copyRedirectedCacheableResponsesPlugin={cacheWillUpdate:async({response:e})=>e.redirected?await copyResponse(e):e}
91class PrecacheController_PrecacheController{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:r=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new PrecacheStrategy_PrecacheStrategy({cacheName:h.getPrecacheName(e),plugins:[...t,new PrecacheCacheKeyPlugin({precacheController:this})],fallbackToNetwork:r}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[]
92for(const r of e){"string"==typeof r?t.push(r):r&&void 0===r.revision&&t.push(r.url)
93const{cacheKey:e,url:s}=createCacheKey(r),a="string"!=typeof r&&r.revision?"reload":"default"
94if(this._urlsToCacheKeys.has(s)&&this._urlsToCacheKeys.get(s)!==e)throw new WorkboxError_WorkboxError("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(s),secondEntry:e})
95if("string"!=typeof r&&r.integrity){if(this._cacheKeysToIntegrities.has(e)&&this._cacheKeysToIntegrities.get(e)!==r.integrity)throw new WorkboxError_WorkboxError("add-to-cache-list-conflicting-integrities",{url:s})
96this._cacheKeysToIntegrities.set(e,r.integrity)}if(this._urlsToCacheKeys.set(s,e),this._urlsToCacheModes.set(s,a),t.length>0){t.join(", ")
971}}}install(e){return waitUntil(e,async()=>{const t=new PrecacheInstallReportPlugin
98this.strategy.plugins.push(t)
99for(const[t,r]of this._urlsToCacheKeys){const s=this._cacheKeysToIntegrities.get(r),a=this._urlsToCacheModes.get(t),n=new Request
99(t,{integrity:s,cache:a,credentials:"same-origin"})
100await Promise.all(this.strategy.handleAll({params:{cacheKey:r},request:n,event:e}))}const{updatedURLs:r,notUpdatedURLs:s}=t
101return{updatedURLs:r,notUpdatedURLs:s}})}activate(e){return waitUntil(e,async()=>{const e=await self.caches.open(this.strategy.cacheName),t=await e.keys(),r=new Set(this._urlsToCacheKeys.values()),s=[]
102for(const a of t)r.has(a.url)||(await e.delete(a),s.push(a.url))
103return{deletedURLs:s}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href)
104return this._urlsToCacheKeys.get(t.href)}async matchPrecache(e){const t=e instanceof Request?e.url:e,r=this.getCacheKeyForURL(t)
105if(r){return(await self.caches.open(this.strategy.cacheName)).match(r)}}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e)
106if(!t)throw new WorkboxError_WorkboxError("non-precached-url",{url:e})
107return r=>(r.request=new Request(e),r.params=Object.assign({cacheKey:t},r.params),this.strategy.handle(r))}}let p
108const g=()=>(p||(p=new PrecacheController_PrecacheController),p)
109r("5tLK")
110const _="GET",y=e=>e&&"object"==typeof e?e:{handle:e}
111class Route_Route{constructor(e,t,r=_){this.handler=y(t),this.match=e,this.method=r}setCatchHandler(e){this.catchHandler=y(e)}}class RegExpRoute_RegExpRoute extends Route_Route{constructor(e,t,r){super(({url:t})=>{const r=e.exec(t.href)
112if(r&&(t.origin===location.origin||0===r.index))return r.slice(1)},t,r)}}class Router_Router{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,r=this.handleRequest({request:t,event:e})
113r&&e.respondWith(r)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&"CACHE_URLS"===e.data.type){const{payload:t}=e.data
1140
115const r=Promise.all(t.urlsToCache.map(t=>{"string"==typeof t&&(t=[t])
116const r=new Request(...t)
117return this.handleRequest({request:r,event:e})}))
118e.waitUntil(r),e.ports&&e.ports[0]&&r.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const r=new URL(e.url,location.href)
119if(!r.protocol.startsWith("http"))return void 0
120const s=r.origin===location.origin,{params:a,route:n}=this.findMatchingRoute({event:t,request:e,sameOrigin:s,url:r})
121let o=n&&n.handler
122const c=e.method
123if(!o&&this._defaultHandlerMap.has(c)&&(o=this._defaultHandlerMap.get(c)),!o)return void 0
124let i
125try{i=o.handle({url:r,request:e,event:t,params:a})}catch(e){i=Promise.reject(e)}const h=n&&n.catchHandler
126return i instanceof Promise&&(this._catchHandler||h)&&(i=i.catch(async s=>{if(h){0
127try{return await h.handle({url:r,request:e,event:t,params:a})}catch(e){e instanceof Error&&(s=e)}}if(this._catchHandler)return this._catchHandler.handle({url:r,request:e,event:t})
128throw s})),i}findMatchingRoute({url:e,sameOrigin:t,request:r,event:s}){const a=this._routes.get(r.method)||[]
129for(const n of a){let a
130const o=n.match({url:e,sameOrigin:t,request:r,event:s})
131if(o)return a=o,Array.isArray(a)&&0===a.length?a=void 0:o.constructor===Object&&0===Object.keys(o).length?a=void 0:"boolean"==typeof o&&(a=void 0),{route:n,params:a}}return{}}setDefaultHandler(e,t=_){this._defaultHandlerMap.set(t,y(e))}setCatchHandler(e){this._catchHandler=y(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new WorkboxError_WorkboxError("unregister-route-but-not-found-with-method",{method:e.method})
132const t=this._routes.get(e.method).indexOf(e)
133if(!(t>-1))throw new WorkboxError_WorkboxError("unregister-route-route-not-registered")
134this._routes.get(e.method).splice(t,1)}}let w
135const m=()=>(w||((w=new Router_Router).addFetchListener(),w.addCacheListener()),w)
136function registerRoute(e,t,r){let s
137if("string"==typeof e){const a=new URL(e,location.href)
1380,s=new Route_Route(({url:e})=>e.href===a.href,t,r)}else if(e instanceof RegExp)s=new RegExpRoute_RegExpRoute(e,t,r)
139else if("function"==typeof e)s=new Route_Route(e,t,r)
140else{if(!(e instanceof Route_Route))throw new WorkboxError_WorkboxError("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"})
141s=e}return m().registerRoute(s),s}class PrecacheRoute_PrecacheRoute extends Route_Route{constructor(e,t){super(({request:r})=>{const s=e.getURLsToCacheKeys()
142for(const e of function*generateURLVariations(e,{ignoreURLParametersMatching:t=[/^utm_/,/^fbclid$/],directoryIndex:r="index.html",cleanURLs:s=!0,urlManipulation:a}={}){const n=new URL(e,location.href)
143n.hash="",yield n.href
144const o=function removeIgnoredSearchParams(e,t=[]){for(const r of[...e.searchParams.keys()])t.some(e=>e.test(r))&&e.searchParams.delete(r)
145return e}(n,t)
146if(yield o.href,r&&o.pathname.endsWith("/")){const e=new URL(o.href)
147e.pathname+=r,yield e.href}if(s){const e=new URL(o.href)
148e.pathname+=".html",yield e.href}if(a){const e=a({url:n})
149for(const t of e)yield t.href}}(r.url,t)){const t=s.get(e)
150if(t)return{cacheKey:t}}},e.strategy)}}function precacheAndRoute(e,t){!function precache(e){g().precache(e)}(e),function addRoute(e){const t=g()
151registerRoute(new PrecacheRoute_PrecacheRoute(t,e))}(t)}class CacheFirst_CacheFirst extends Strategy_Strategy{async _handle(e,t){let r=await t.cac
151heMatch(e),s=void 0
152if(r)0
153else{0
154try{r=await t.fetchAndCachePut(e)}catch(e){e instanceof Error&&(s=e)}0}if(!r)throw new WorkboxError_WorkboxError("no-response",{url:e.url,error:s})
155return r}}const b={cacheWillUpdate:async({response:e})=>200===e.status||0===e.status?e:null}
156class StaleWhileRevalidate_StaleWhileRevalidate extends Strategy_Strategy{constructor(e={}){super(e),this.plugins.some(e=>"cacheWillUpdate"in e)||this.plugins.unshift(b)}async _handle(e,t){const r=t.fetchAndCachePut(e).catch(()=>{})
157let s,a=await t.cacheMatch(e)
158if(a)0
159else{0
160try{a=await r}catch(e){e instanceof Error&&(s=e)}}if(!a)throw new WorkboxError_WorkboxError("no-response",{url:e.url,error:s})
161return a}}r("yXPU"),r("jLCR")
162const R=(e,t)=>t.some(t=>e instanceof t)
163let v,x
164const k=new WeakMap,C=new WeakMap,P=new WeakMap,E=new WeakMap,q=new WeakMap
165let S={get(e,t,r){if(e instanceof IDBTransaction){if("done"===t)return C.get(e)
166if("objectStoreNames"===t)return e.objectStoreNames||P.get(e)
167if("store"===t)return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return wrap(e[t])},set:(e,t,r)=>(e[t]=r,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e}
168function wrapFunction(e){return e!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?function getCursorAdvanceMethods(){return x||(x=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}().includes(e)?function(...t){return e.apply(W(this),t),wrap(k.get(this))}:function(...t){return wrap(e.apply(W(this),t))}:function(t,...r){const s=e.call(W(this),t,...r)
169return P.set(s,t.sort?t.sort():[t]),wrap(s)}}function transformCachableValue(e){return"function"==typeof e?wrapFunction(e):(e instanceof IDBTransaction&&function cacheDonePromiseForTransaction(e){if(C.has(e))return
170const t=new Promise((t,r)=>{const s=()=>{e.removeEventListener("complete",a),e.removeEventListener("error",n),e.removeEventListener("abort",n)},a=()=>{t(),s()},n=()=>{r(e.error||new DOMException("AbortError","AbortError")),s()}
171e.addEventListener("complete",a),e.addEventListener("error",n),e.addEventListener("abort",n)})
172C.set(e,t)}(e),R(e,function getIdbProxyableTypes(){return v||(v=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}())?new Proxy(e,S):e)}function wrap(e){if(e instanceof IDBRequest)return function promisifyRequest(e){const t=new Promise((t,r)=>{const s=()=>{e.removeEventListener("success",a),e.removeEventListener("error",n)},a=()=>{t(wrap(e.result)),s()},n=()=>{r(e.error),s()}
173e.addEventListener("success",a),e.addEventListener("error",n)})
174return t.then(t=>{t instanceof IDBCursor&&k.set(t,e)}).catch(()=>{}),q.set(t,e),t}(e)
175if(E.has(e))return E.get(e)
176const t=transformCachableValue(e)
177return t!==e&&(E.set(e,t),q.set(t,e)),t}const W=e=>q.get(e)
178const L=["get","getKey","getAll","getAllKeys","count"],U=["put","add","delete","clear"],K=new Map
179function getMethod(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return
180if(K.get(t))return K.get(t)
181const r=t.replace(/FromIndex$/,""),s=t!==r,a=U.includes(r)
182if(!(r in(s?IDBIndex:IDBObjectStore).prototype)||!a&&!L.includes(r))return
183const n=async function(e,...t){const n=this.transaction(e,a?"readwrite":"readonly")
184let o=n.store
185return s&&(o=o.index(t.shift())),(await Promise.all([o[r](...t),a&&n.done]))[0]}
186return K.set(t,n),n}!function replaceTraps(e){S=e(S)}(e=>({...e,get:(t,r,s)=>getMethod(t,r)||e.get(t,r,s),has:(t,r)=>!!getMethod(t,r)||e.has(t,r)}))
187r("2KUI")
188var T="PREFETCH_IMAGES",M=(new RegExp(/\.(?:png|jpg|jpeg)$/),e=>new Promise(t=>{caches.match(e).then(r=>{t(r||(e=>fetch(e,{mode:"cors"}).then(t=>caches.open("images").then(r=>r.put(e,t.clone())).then(()=>t)))(e))})})),N=(e,t)=>(()=>!(navigator.connection&&"effectiveType"in navigator.connection)||"4g"===navigator.connection.effectiveType)()?Promise.all(e.urls.map(M)).then(e=>(t.ports[0].postMessage({status:"done"}),e)).catch(e=>(t.ports[0].postMessage({status:"error",message:JSON.stringify(e)}),null)):(t.ports[0].postMessage({status:"error",message:"Slow Network detected. Not pre-fetching images. ".concat(e.urls)}),null)
189importScripts("https://storage.googleapis.com/workbox-cdn/releases/6.0.2/workbox-sw.js"),function skipWaiting(){self.skipWaiting()}(),function clientsClaim(){self.addEventListener("activate",()=>self.clients.claim())}(),precacheAndRoute([{'revision':null,'url':'/1.89c392e28a6cf35649d3.js'},{'revision':null,'url':'/10.1c7c2f1b62b20f8c127a.js'},{'revision':null,'url':'/100.9053e1a4dcbba4191976.js'},{'revision':null,'url':'/101.94683d85608d446f9be9.js'},{'revision':null,'url':'/102.ff83d2557d6741ca4fdd.js'},{'revision':null,'url':'/103.f600fd9b769869bbdd2a.js'},{'revision':null,'url':'/104.8950f186ae5582bd18fe.js'},{'revision':null,'url':'/11.d40414a18fa555a99e30.js'},{'revision':null,'url':'/12.2ce3a1d7eb25d953a82a.js'},{'revision':null,'url':'/13.d2cf01878c9f08285ffb.js'},{'revision':null,'url':'/14.c88d984ba915cd2dbe0d.js'},{'revision':null,'url':'/15.60ac9b244e6b23b67c4a.js'},{'revision':null,'url':'/16.8f5fe2676cb9c25b9520.js'},{'revision':null,'url':'/2.bd7b9fc0c288ca039ed4.js'},{'revision':null,'url':'/3.576a3484ff97dfeb87e7.js'},{'revision':null,'url':'/5.396bd694afdeb6727220.js'},{'revision':null,'url':'/56.aaa70904e21a83f918e7.js'},{'revision':null,'url':'/57.8be816dfb308833d80ad.js'},{'revision':null,'url':'/58.d05f896b05cb530e0ebb.js'},{'revision':null,'url':'/59.25e2b68082734e4a3dfc.js'},{'revision':null,'url':'/6.68f069311af2815ba683.js'},{'revision':null,'url':'/60.22d4a6e4e60245f44bcc.js'},{'revision':null,'url':'/61.3f41f2421f082900b8df.js'},{'revision':null,'url':'/62.8146d3a118ecb8a859d6.js'},{'revision':null,'url':'/63.3e418fa965b4b6d66936.js'},{'revision':null,'url':'/64.d9655a9b1d4e4c09234e.js'},{'revision':null,'url':'/65.0fa7b2e9634d91f32f97.js'},{'revision':null,'url':'/66.22e9ac4f23e286a0c4d8.js'},{'revision':null,'url':'/67.b3cdc794d93eab2f3339.js'},{'revision':null,'url':'/68.96478fcc7900760d7c36.js'},{'revision':null,'url':'/69.e583ef3a3f287b71435c.js'},{'revision':null,'url':'/7.ecb3d21c7be040121d0e.js'},{'revision':null,'url':'/70.681440625bfe9b8f7720.js'},{'revision':null,'url':'/71.03b98f3450b146c005e0.js'},{'revision':null,'url':'/72.868c58eac7f4b360f757.js'},{'revision':null,'url':'/73.e671f3f16c5b89a755f9.js'},{'revision':null,'url':'/74.7b5a0a02eec1f1fe3bfd.js'},{'revision':null,'url':'/75.6ff484a538036575a1c9.js'},{'revision':null,'url':'/76.4127551692caef56e1a5.js'},{'revision':null,'url':'/77.4ff9ead59a51f468a3d0.js'},{'revision':null,'url':'/78.6d9bcbb80bf7d9dcdeae.js'},{'revision':null,'url':'/79.e50669fa9497dda71403.js'},{'revision':null,'url':'/8.849cf5110cb127932061.js'},{'revision':null,'url':'/80.45f491bee103961da7d1.js'},{'revision':null,'url':'/81.3558ae0008583313956c.js'},{'revision':null,'url':'/82.17490d57633fe41a087b.js'},{'revision':null,'url':'/83.b42efdb4347b2282ee05.js'},{'revision':null,'url':'/84.7e36a85ac1e52306ac27.js'},{'revision':null,'url':'/85.f1b1df0aaa5e3ab1c08d.js'},{'revision':null,'url':'/86.195f9fb76c5610af264d.js'},{'revision':null,'url':'/87.50e00fd31defc52fa938.js'},{'revision':null,'url':'/88.57f3fbade4ade0965b9e.js'},{'revision':null,'url':'/89.25112b9cfce595092f30.js'},{'revision':null,'url':'/90.df51cf6d44051f262243.js'},{'revision':null,'url':'/91.b536b84fccee6a8addea.js'},{'revision':null,'url':'/92.d21dc620c93b6eb3002d.js'},{'revision':null,'url':'/93.6e9a815b712f12533de0.js'},{'revision':null,'url':'/94.151a8011c363337d85cf.js'},{'revision':null,'url':'/95.a141e98c4a4edac2d7e8.js'},{'revision':null,'url':'/96.d6d982f748799d3122cc.js'},{'revision':null,'url':'/97.fd6c01346fa8762142f9.js'},{'revision':null,'url':'/98.f9bed44940e71209a9cb.js'},{'revision':null,'url':'/99.8f2acfcd3d2e0a7e5770.js'},{'revision':null,'url':'/AccountMenu.f024a27fbf9a182f75dd.js'},{'revision':null,'url':'/AmBrandsLayoutDefault.4fc8d9b203000f9afc9a.js'},{'revision':null,'url':'/AmBrandsLayoutFiltered.d3dcd753f136bf410120.js'},{'revision':null,'url':'/AuthModal.089ee097bfd7981f4af4.js'},{'revision':null,'url':'/BecomeMemberSlideInTrigger.771bbca97807df93034a.js'}
189,{'revision':null,'url':'/BrandList.608258d76491c8e8d74e.js'},{'revision':null,'url':'/BrandPage.f6fd75efc0610ad20474.js'},{'revision':null,'url':'/Checkbox.4d953dbcf56043e17a6c.js'},{'revision':null,'url':'/CmsPage.6212c6a704632d5c8142.js'},{'revision':null,'url':'/ConfigurableOptionPopups.cd366d18a49c81721c7d.js'},{'revision':null,'url':'/EditModal.3b4d6e8e297871aa14dd.js'},{'revision':null,'url':'/FilterBlockDesktopExpanded.eb2a1d872be2e49dd9f2.js'},{'revision':null,'url':'/FilterModal.0bdafea8e60e6645134b.js'},{'revision':null,'url':'/FindStoresSlideInTrigger.f1f2e8cf60accbf347c5.js'},{'revision':null,'url':'/MiniCart.0bfa904c0db4e10424be.js'},{'revision':null,'url':'/NavigationDesktop.1af5b89b4f6606116278.js'},{'revision':null,'url':'/Options.3a11aea4b7b42da9a54a.js'},{'revision':null,'url':'/RedirectPage.022c0dadd46e3f84b74a.js'},{'revision':null,'url':'/ReviewsComponent.b576ab5b5cc55590ab65.js'},{'revision':null,'url':'/RootCmp_BRAND_LIST_PAGE__default.d06b22a9978543eb25a1.js'},{'revision':null,'url':'/RootCmp_BRAND_PAGE__default.3e7f47880a769091d59f.js'},{'revision':null,'url':'/RootCmp_CATEGORY__default.4c1345c0a7f13b83e2e0.js'},{'revision':null,'url':'/RootCmp_CUSTOM_SEARCH__default.62d8248e980f312f1422.js'},{'revision':null,'url':'/RootCmp_PRODUCT__default.6269944d12d12ce10201.js'},{'revision':null,'url':'/RootCmp_SEARCH__default.2ae984ab649a8a1d9e21.js'},{'revision':null,'url':'/Search.479647837ac567d4b2ab.js'},{'revision':null,'url':'/SearchWithButton.b9ff3070bd0cae78b422.js'},{'revision':null,'url':'/StarsComponent.811d292da6f9c765d3d6.js'},{'revision':null,'url':'/StockAlertSubscription.0f2d25e8e189b72f653c.js'},{'revision':null,'url':'/WishlistSlideInTrigger.f15619b42b1e92e6e251.js'},{'revision':null,'url':'/client.386b4860e377ef17438d.js'},{'revision':'26b7666829f50bc62c2c6f592c92547a','url':'/error-g79.svg'},{'revision':null,'url':'/i18n-da_DK.1907ec8c12ed90cc974b.js'},{'revision':null,'url':'/i18n-de_DE.f4020ed3751015440057.js'},{'revision':null,'url':'/i18n-en_US.3a989b9980dcd4f057c2.js'},{'revision':null,'url':'/i18n-nb_NO.03f4241f4a612bee6c1a.js'},{'revision':null,'url':'/i18n-sv_SE.c009de52c59e7b815d4a.js'},{'revision':'10879ae6d7f7f193dde071d647f7234f','url':'/icon-button-loader-aLP.svg'},{'revision':'c6c3c9ea81f14f3dc0302fea8ed1e288','url':'/icon-calendar-hUo.svg'},{'revision':'3db24c7b5ca43a349e974d4007d3c3b6','url':'/icon-clock-oyY.svg'},{'revision':'2a22a9a83fcfc99e62485ade65a81827','url':'/icon-composition-5Q1.svg'},{'revision':'a1c56f32c4964549eb12f8fd30614a21','url':'/icon-error-57q.svg'},{'revision':'88ca40409c5ca22aeb700b500ba1e715','url':'/icon-error-white-3GT.svg'},{'revision':'4ecbdc7afb0b981d8dcb323195b0282c','url':'/icon-fit-6sg.svg'},{'revision':'30896f92d683627a8486ae31acc90154','url':'/icon-vipps-bnE.svg'},{'revision':'5ccaef4b31cff5b8c808c5125a37188e','url':'/info-ixG.svg'},{'revision':'2d7ed76967147b69d65baf07f3950061','url':'/logo-cYJ.svg'},{'revision':'a93360fb07f7f6adc62402a2d93668c8','url':'/noProductsFound-qKk.svg'},{'revision':null,'url':'/runtime.ed6a40bcaee51a47f942.js'},{'revision':'008c5550d0ee6854dbc42d002e6a543c','url':'/static/icons/safari-pinned-tab.svg'},{'revision':'09568df3a042a6d466c775553608569f','url':'/static/img/floyd-mp-logo.svg'},{'revision':'3849670c1fed798eea38eb56795e8f1d','url':'/static/svg/cookies.svg'},{'revision':'26b7666829f50bc62c2c6f592c92547a','url':'/static/svg/error.svg'},{'revision':'2a22a9a83fcfc99e62485ade65a81827','url':'/static/svg/icon-composition.svg'},{'revision':'88ca40409c5ca22aeb700b500ba1e715','url':'/static/svg/icon-error-white.svg'},{'revision':'a1c56f32c4964549eb12f8fd30614a21','url':'/static/svg/icon-error.svg'},{'revision':'4ecbdc7afb0b981d8dcb323195b0282c','url':'/static/svg/icon-fit.svg'},{'revision':'30896f92d683627a8486ae31acc90154','url':'/static/svg/icon-vipps.svg'},{'revision':'5ccaef4b31cff5b8c808c5125a37188e','url':'/static/svg/info.svg'},{'revision':'ce68104423f9be8133961bd9365ed36f','url':'/static/svg/logo-10y.svg'},{'revision':'2d7ed76967147b69d65baf07f3950061','url':'/static/svg/logo.svg'},{'revision':'f7f438bb197bd5f8ebc9906a0765e72b','url':'/static/svg/s
189pinner.js'},{'revision':'c19d247dee81e7f1f8fcb3967d831319','url':'/static/svg/success.svg'},{'revision':'230a5b7ef6ccef8ade7569b88f6c177c','url':'/static/svg/warning.svg'},{'revision':null,'url':'/subscribeToOutOfStock.51ef78aca8afda10c7af.js'},{'revision':'c19d247dee81e7f1f8fcb3967d831319','url':'/success-46A.svg'},{'revision':null,'url':'/vendors.59f67efff843fe00d665.js'},{'revision':null,'url':'/vendors~AuthModal.72d466732dfb05e957c5.js'},{'revision':null,'url':'/vendors~EditModal.b089e6ca229c7c6be90c.js'},{'revision':null,'url':'/vendors~RootCmp_SEARCH__default.95d9d663cfcdeb2fcb35.js'},{'revision':'230a5b7ef6ccef8ade7569b88f6c177c','url':'/warning-gjK.svg'}]||[]),registerRoute(new RegExp("(robots.txt|favicon.ico|manifest.json)"),new StaleWhileRevalidate_StaleWhileRevalidate),registerRoute(new RegExp(/\.js$/),new CacheFirst_CacheFirst),registerRoute(e=>{var{url:t}=e
190return t.origin===self.location.origin&&(e=>(e=>{if("/"===e.pathname)return!0})(e)||new RegExp("\\.html$").test(e.pathname))(t)},new StaleWhileRevalidate_StaleWhileRevalidate({plugins:[{cacheKeyWillBeUsed:()=>"index.html"}],cacheName:f.precache})),((e,t)=>(s[e]||(s[e]=[]),s[e].push(t),()=>a(e,t)))(T,N),self.addEventListener("message",e=>{var{type:t,payload:r}=e.data;((e,t,r)=>{var a=s[e]
191a&&a.forEach(e=>{e(t,r)})})(t,r,e)})},"2KUI":function(e,t,r){"use strict"
192try{self["workbox:expiration:6.2.4"]&&_()}catch(e){}},"5tLK":function(e,t,r){"use strict"
193try{self["workbox:routing:6.2.4"]&&_()}catch(e){}},Bxln:function(e,t,r){"use strict"
194try{self["workbox:core:6.2.4"]&&_()}catch(e){}},aqiC:function(e,t,r){"use strict"
195try{self["workbox:strategies:6.2.4"]&&_()}catch(e){}},jLCR:function(e,t,r){"use strict"
196try{self["workbox:cacheable-response:6.2.4"]&&_()}catch(e){}},xwD5:function(e,t,r){"use strict"
197try{self["workbox:precaching:6.2.4"]&&_()}catch(e){}},yXPU:function(e,t){function asyncGeneratorStep(e,t,r,s,a,n,o){try{var c=e[n](o),i=c.value}catch(e){return void r(e)}c.done?t(i):Promise.resolve(i).then(s,a)}e.exports=function _asyncToGenerator(e){return function(){var t=this,r=arguments
198return new Promise(function(s,a){var n=e.apply(t,r)
199function _next(e){asyncGeneratorStep(n,s,a,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(n,s,a,_next,_throw,"throw",e)}_next(void 0)})}},e.exports.default=e.exports,e.exports.__esModule=!0}})

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.