const CACHE="tinkertoy-v0.2.2-2026-08-21T19:06:38.527Z";
const PRECACHE=["./","./index.html","./manifest.webmanifest","./icon.svg","./fonts/fonts.css","./fonts/Barlow-400-normal-latin.woff2","./fonts/Barlow-700-normal-latin-ext.woff2","./fonts/Barlow-600-normal-latin.woff2","./fonts/Barlow-400-normal-latin-ext.woff2","./fonts/Barlow-700-normal-latin.woff2","./fonts/Barlow-600-normal-latin-ext.woff2","./fonts/Barlow-400-italic-latin.woff2","./fonts/Barlow-500-normal-latin.woff2","./fonts/Barlow-400-italic-latin-ext.woff2","./fonts/Barlow-500-normal-latin-ext.woff2","./vendor/mermaid.min.js","./videos/vsrc_01kxhgw9tdf3etmkb5tqnese1r/video.mp4"];
self.addEventListener("install",function(e){e.waitUntil(caches.open(CACHE).then(function(c){return Promise.all(PRECACHE.map(function(u){return c.add(new Request(u,{cache:"reload"})).catch(function(){});}));}).then(function(){return self.skipWaiting();}));});
self.addEventListener("activate",function(e){e.waitUntil(caches.keys().then(function(ks){return Promise.all(ks.map(function(k){return k===CACHE?null:caches.delete(k);}));}).then(function(){return self.clients.claim();}));});
self.addEventListener("fetch",function(e){if(e.request.method!=="GET")return;e.respondWith(caches.match(e.request,{ignoreSearch:true}).then(function(r){return r||fetch(e.request).then(function(resp){if(resp&&resp.status===200&&resp.type==="basic"){var cp=resp.clone();caches.open(CACHE).then(function(c){c.put(e.request,cp);});}return resp;}).catch(function(){return caches.match("./index.html");});}));});