From c8fcb171549c103af66372ff5b26dfed11628733 Mon Sep 17 00:00:00 2001 From: thepaperpilot Date: Sat, 3 Dec 2022 22:41:41 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20thepaper?= =?UTF-8?q?pilot/Advent-Incremental@f83a3cb1ecf67c78c235177d3f1322243a3548?= =?UTF-8?q?94=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/elf.9fbfa563.png | Bin 0 -> 6595 bytes assets/index.16d9910a.js | 15 --------------- assets/index.5721d5fe.js | 15 +++++++++++++++ .../{index.08f311a5.css => index.791c7ca4.css} | 2 +- index.html | 4 ++-- sw.js | 2 +- 6 files changed, 19 insertions(+), 19 deletions(-) create mode 100644 assets/elf.9fbfa563.png delete mode 100644 assets/index.16d9910a.js create mode 100644 assets/index.5721d5fe.js rename assets/{index.08f311a5.css => index.791c7ca4.css} (99%) diff --git a/assets/elf.9fbfa563.png b/assets/elf.9fbfa563.png new file mode 100644 index 0000000000000000000000000000000000000000..094acb0ea7d7dd992bc7bb51ae43ef4c58ac4489 GIT binary patch literal 6595 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 MY3Qq0tJ=r>50FUA00000 literal 0 HcmV?d00001 diff --git a/assets/index.16d9910a.js b/assets/index.16d9910a.js deleted file mode 100644 index 50fca04..0000000 --- a/assets/index.16d9910a.js +++ /dev/null @@ -1,15 +0,0 @@ -/* empty css */import"./vue.92681fcb.js";import{Z as S,u as Sn,q as Ht,C as l,b1 as Le,aa as R,aE as _,a0 as M,a1 as m,aK as Ge,G as re,t as T,aC as Kn,w as Te,b2 as Ae,a8 as c,O as V,ao as Bi,I as le,ay as cn,ar as bt,aG as Yt,A as fe,_ as U,b6 as F,b8 as Mn,bs as Di,aq as _t,bu as Lt,bb as dn,T as Oi,a7 as y,j as Ri,l as ce,bv as Un,J as L,$ as E,aH as Xe,aF as Ze,al as sn,aL as dt,aN as ve,z as Je,H as Vi,aJ as Jn,bn as qi,br as Li,be as Ui}from"./@vue.4ce677c2.js";import{i as Gi}from"./is-plain-object.906d88e8.js";import{c as Xn}from"./nanoevents.1080beb7.js";import{L as ut}from"./lz-string.731cedc5.js";import{Y as Hi}from"./vue-next-select.a2bfab1d.js";import{s as ji,u as Zn}from"./vue-toastification.6f567382.js";import{D as zi}from"./vuedraggable.7949458c.js";import{p as Wi}from"./vue-textarea-autosize.35804eaf.js";import{v as Qi,n as Ki}from"./workbox-window.8d14e8b7.js";import"./sortablejs.29100d8a.js";const Ji=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const r of s)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const r={};return s.integrity&&(r.integrity=s.integrity),s.referrerpolicy&&(r.referrerPolicy=s.referrerpolicy),s.crossorigin==="use-credentials"?r.credentials="include":s.crossorigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(s){if(s.ep)return;s.ep=!0;const r=n(s);fetch(s.href,r)}};Ji();const Xi="modulepreload",Gn={},Zi="./",rn=function(t,n){return!n||n.length===0?t():Promise.all(n.map(i=>{if(i=`${Zi}${i}`,i in Gn)return;Gn[i]=!0;const s=i.endsWith(".css"),r=s?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${i}"]${r}`))return;const o=document.createElement("link");if(o.rel=s?"stylesheet":Xi,s||(o.as="script",o.crossOrigin=""),o.href=i,document.head.appendChild(o),s)return new Promise((u,f)=>{o.addEventListener("load",u),o.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>t())},Yi="./projInfo-schema.json",es="Advent Incremental",ts="An incremental game you play a day at a time, leading up to Christmas!",ns="advent-incremental",is="thepaperpilot",ss="",rs="",as="0.2",ls="Initial Commit",os=!0,us=!1,cs=2,ds=!0,fs=null,ms="",hs=["main"],ps=3600,gs=0,vs=!0,ys="base64";var W={$schema:Yi,title:es,description:ts,id:ns,author:is,discordName:ss,discordLink:rs,versionNumber:as,versionTitle:ls,allowGoBack:os,defaultShowSmall:us,defaultDecimalsShown:cs,useHeader:ds,banner:fs,logo:ms,initialTabs:hs,maxTickLength:ps,offlineLimit:gs,enablePausing:vs,exportEncoding:ys};const wn=17,bs=9e15,_s=Math.log10(9e15),ws=1/9e15,Ns=308,ks=-324,Hn=5,Cs=function(){const e=[];for(let n=ks+1;n<=Ns;n++)e.push(Number("1e"+n));const t=323;return function(n){return e[n+t]}}(),pt=[2,Math.E,3,4,5,6,7,8,9,10],Ss=[[1,1.0891168053867777,1.1789745164521264,1.2701428397304229,1.3632066654400328,1.4587804913784246,1.557523817412741,1.660158301473385,1.767487542936873,1.8804205225512542,2],[1,1.1121114330934,1.23103892493161,1.35838369631113,1.49605193039935,1.64635423375119,1.81213853570186,1.99697132461829,2.20538955455724,2.44325744833852,Math.E],[1,1.1187738849693603,1.2464963939368214,1.38527004705667,1.5376664685821402,1.7068895236551784,1.897001227148399,2.1132403089001035,2.362480153784171,2.6539010333870774,3],[1,1.1367350847096405,1.2889510672956703,1.4606478703324786,1.6570295196661111,1.8850062585672889,2.1539465047453485,2.476829779693097,2.872061932789197,3.3664204535587183,4],[1,1.1494592900767588,1.319708228183931,1.5166291280087583,1.748171114438024,2.0253263297298045,2.3636668498288547,2.7858359149579424,3.3257226212448145,4.035730287722532,5],[1,1.159225940787673,1.343712473580932,1.5611293155111927,1.8221199554561318,2.14183924486326,2.542468319282638,3.0574682501653316,3.7390572020926873,4.6719550537360774,6],[1,1.1670905356972596,1.3632807444991446,1.5979222279405536,1.8842640123816674,2.2416069644878687,2.69893426559423,3.3012632110403577,4.121250340630164,5.281493033448316,7],[1,1.1736630594087796,1.379783782386201,1.6292821855668218,1.9378971836180754,2.3289975651071977,2.8384347394720835,3.5232708454565906,4.478242031114584,5.868592169644505,8],[1,1.1793017514670474,1.394054150657457,1.65664127441059,1.985170999970283,2.4069682290577457,2.9647310119960752,3.7278665320924946,4.814462547283592,6.436522247411611,9],[1,1.18422737399915,1.4066113788546144,1.680911177655277,2.027492094355525,2.4775152854601967,3.080455730250329,3.918234505962507,5.1332705696484595,6.9878696918072905,10]],Ms=[[-1,-.9194161097107025,-.8335625019330468,-.7425599821143978,-.6466611521029437,-.5462617907227869,-.4419033816638769,-.3342645487554494,-.224140440909962,-.11241087890006762,0],[-1,-.90603157029014,-.80786507256596,-.7064666939634,-.60294836853664,-.49849837513117,-.39430303318768,-.29147201034755,-.19097820800866,-.09361896280296,0],[-1,-.9021579584316141,-.8005762598234203,-.6964780623319391,-.5911906810998454,-.486050182576545,-.3823089430815083,-.28106046722897615,-.1831906535795894,-.08935809204418144,0],[-1,-.8917227442365535,-.781258746326964,-.6705130326902455,-.5612813129406509,-.4551067709033134,-.35319256652135966,-.2563741554088552,-.1651412821106526,-.0796919581982668,0],[-1,-.8843387974366064,-.7678744063886243,-.6529563724510552,-.5415870994657841,-.4352842206588936,-.33504449124791424,-.24138853420685147,-.15445285440944467,-.07409659641336663,0],[-1,-.8786709358426346,-.7577735191184886,-.6399546189952064,-.527284921869926,-.4211627631006314,-.3223479611761232,-.23107655627789858,-.1472057700818259,-.07035171210706326,0],[-1,-.8740862815291583,-.7497032990976209,-.6297119746181752,-.5161838335958787,-.41036238255751956,-.31277212146489963,-.2233976621705518,-.1418697367979619,-.06762117662323441,0],[-1,-.8702632331800649,-.7430366914122081,-.6213373075161548,-.5072025698095242,-.40171437727184167,-.30517930701410456,-.21736343968190863,-.137710238299109,-.06550774483471955,0],[-1,-.8670016295947213,-.7373984232432306,-.6143173985094293,-.49973884395492807,-.394584953527678,-.2989649949848695,-.21245647317021688,-.13434688362382652,-.0638072667348083,0],[-1,-.8641642839543857,-.732534623168535,-.6083127477059322,-.4934049257184696,-.3885773075899922,-.29376029055315767,-.2083678561173622,-.13155653399373268,-.062401588652553186,0]],h=function(t){return a.fromValue_noAlloc(t)},B=function(e,t,n){return a.fromComponents(e,t,n)},q=function(t,n,i){return a.fromComponents_noNormalize(t,n,i)},at=function(t,n){const i=n+1,s=Math.ceil(Math.log10(Math.abs(t))),r=Math.round(t*Math.pow(10,i-s))*Math.pow(10,s-i);return parseFloat(r.toFixed(Math.max(i-s,0)))},Nn=function(e){return Math.sign(e)*Math.log10(Math.abs(e))},Is=function(e){if(!isFinite(e))return e;if(e<-50)return e===Math.trunc(e)?Number.NEGATIVE_INFINITY:0;let t=1;for(;e<10;)t=t*e,++e;e-=1;let n=.9189385332046727;n=n+(e+.5)*Math.log(e),n=n-e;const i=e*e;let s=e;return n=n+1/(12*s),s=s*i,n=n+1/(360*s),s=s*i,n=n+1/(1260*s),s=s*i,n=n+1/(1680*s),s=s*i,n=n+1/(1188*s),s=s*i,n=n+691/(360360*s),s=s*i,n=n+7/(1092*s),s=s*i,n=n+3617/(122400*s),Math.exp(n)/t},Yn=.5671432904097838,jn=function(e,t=1e-10){let n,i;if(!Number.isFinite(e)||e===0)return e;if(e===1)return Yn;e<10?n=0:n=Math.log(e)-Math.log(Math.log(e));for(let s=0;s<100;++s){if(i=(e*Math.exp(-n)+n*n)/(n+1),Math.abs(i-n).5?1:-1;if(Math.random()*20<1)return q(t,0,1);const n=Math.floor(Math.random()*(e+1));let i=n===0?Math.random()*616-308:Math.random()*16;Math.random()>.9&&(i=Math.trunc(i));let s=Math.pow(10,i);return Math.random()>.9&&(s=Math.trunc(s)),B(t,n,s)}static affordGeometricSeries_core(e,t,n,i){const s=t.mul(n.pow(i));return w.floor(e.div(s).mul(n.sub(1)).add(1).log10().div(n.log10()))}static sumGeometricSeries_core(e,t,n,i){return t.mul(n.pow(i)).mul(w.sub(1,n.pow(e))).div(w.sub(1,n))}static affordArithmeticSeries_core(e,t,n,i){const r=t.add(i.mul(n)).sub(n.div(2)),o=r.pow(2);return r.neg().add(o.add(n.mul(e).mul(2)).sqrt()).div(n).floor()}static sumArithmeticSeries_core(e,t,n,i){const s=t.add(i.mul(n));return e.div(2).mul(s.mul(2).plus(e.sub(1).mul(n)))}static efficiencyOfPurchase_core(e,t,n){return e.div(t).add(e.div(n))}normalize(){if(this.sign===0||this.mag===0&&this.layer===0)return this.sign=0,this.mag=0,this.layer=0,this;if(this.layer===0&&this.mag<0&&(this.mag=-this.mag,this.sign=-this.sign),this.layer===0&&this.mag=bs)return this.layer+=1,this.mag=t*Math.log10(e),this;for(;e<_s&&this.layer>0;)this.layer-=1,this.layer===0?this.mag=Math.pow(10,this.mag):(this.mag=t*Math.pow(10,e),e=Math.abs(this.mag),t=Math.sign(this.mag));return this.layer===0&&(this.mag<0?(this.mag=-this.mag,this.sign=-this.sign):this.mag===0&&(this.sign=0)),this}fromComponents(e,t,n){return this.sign=e,this.layer=t,this.mag=n,this.normalize(),this}fromComponents_noNormalize(e,t,n){return this.sign=e,this.layer=t,this.mag=n,this}fromMantissaExponent(e,t){return this.layer=1,this.sign=Math.sign(e),e=Math.abs(e),this.mag=t+Math.log10(e),this.normalize(),this}fromMantissaExponent_noNormalize(e,t){return this.fromMantissaExponent(e,t),this}fromDecimal(e){return this.sign=e.sign,this.layer=e.layer,this.mag=e.mag,this}fromNumber(e){return this.mag=Math.abs(e),this.sign=Math.sign(e),this.layer=0,this.normalize(),this}fromString(e){e=e.replace(",","");const t=e.split("^^^");if(t.length===2){const b=parseFloat(t[0]),g=parseFloat(t[1]),N=t[1].split(";");let k=1;if(N.length===2&&(k=parseFloat(N[1]),isFinite(k)||(k=1)),isFinite(b)&&isFinite(g)){const x=w.pentate(b,g,k);return this.sign=x.sign,this.layer=x.layer,this.mag=x.mag,this}}const n=e.split("^^");if(n.length===2){const b=parseFloat(n[0]),g=parseFloat(n[1]),N=n[1].split(";");let k=1;if(N.length===2&&(k=parseFloat(N[1]),isFinite(k)||(k=1)),isFinite(b)&&isFinite(g)){const x=w.tetrate(b,g,k);return this.sign=x.sign,this.layer=x.layer,this.mag=x.mag,this}}const i=e.split("^");if(i.length===2){const b=parseFloat(i[0]),g=parseFloat(i[1]);if(isFinite(b)&&isFinite(g)){const N=w.pow(b,g);return this.sign=N.sign,this.layer=N.layer,this.mag=N.mag,this}}e=e.trim().toLowerCase();let s,r,o=e.split("pt");if(o.length===2){s=10,r=parseFloat(o[0]),o[1]=o[1].replace("(",""),o[1]=o[1].replace(")","");let b=parseFloat(o[1]);if(isFinite(b)||(b=1),isFinite(s)&&isFinite(r)){const g=w.tetrate(s,r,b);return this.sign=g.sign,this.layer=g.layer,this.mag=g.mag,this}}if(o=e.split("p"),o.length===2){s=10,r=parseFloat(o[0]),o[1]=o[1].replace("(",""),o[1]=o[1].replace(")","");let b=parseFloat(o[1]);if(isFinite(b)||(b=1),isFinite(s)&&isFinite(r)){const g=w.tetrate(s,r,b);return this.sign=g.sign,this.layer=g.layer,this.mag=g.mag,this}}const u=e.split("e"),f=u.length-1;if(f===0){const b=parseFloat(e);if(isFinite(b))return this.fromNumber(b)}else if(f===1){const b=parseFloat(e);if(isFinite(b)&&b!==0)return this.fromNumber(b)}const d=e.split("e^");if(d.length===2){this.sign=1,d[0].charAt(0)=="-"&&(this.sign=-1);let b="";for(let g=0;g=43&&N<=57||N===101)b+=d[1].charAt(g);else return this.layer=parseFloat(b),this.mag=parseFloat(d[1].substr(g+1)),this.normalize(),this}}if(f<1)return this.sign=0,this.layer=0,this.mag=0,this;const p=parseFloat(u[0]);if(p===0)return this.sign=0,this.layer=0,this.mag=0,this;let v=parseFloat(u[u.length-1]);if(f>=2){const b=parseFloat(u[u.length-2]);isFinite(b)&&(v*=Math.sign(b),v+=Nn(b))}if(!isFinite(p))this.sign=u[0]==="-"?-1:1,this.layer=f,this.mag=v;else if(f===1)this.sign=Math.sign(p),this.layer=1,this.mag=v+Math.log10(Math.abs(p));else if(this.sign=Math.sign(p),this.layer=f,f===2){const b=w.mul(B(1,2,v),h(p));return this.sign=b.sign,this.layer=b.layer,this.mag=b.mag,this}else this.mag=v;return this.normalize(),this}fromValue(e){return e instanceof w||e!=null&&typeof e=="object"&&"sign"in e&&"mag"in e&&"layer"in e?this.fromDecimal(e):typeof e=="number"?this.fromNumber(e):typeof e=="string"?this.fromString(e):(this.sign=0,this.layer=0,this.mag=0,this)}toNumber(){return Number.isFinite(this.layer)?this.layer===0?this.sign*this.mag:this.layer===1?this.sign*Math.pow(10,this.mag):this.mag>0?this.sign>0?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:0:Number.NaN}mantissaWithDecimalPlaces(e){return isNaN(this.m)?Number.NaN:this.m===0?0:at(this.m,e)}magnitudeWithDecimalPlaces(e){return isNaN(this.mag)?Number.NaN:this.mag===0?0:at(this.mag,e)}toString(){return isNaN(this.layer)||isNaN(this.sign)||isNaN(this.mag)?"NaN":this.mag===Number.POSITIVE_INFINITY||this.layer===Number.POSITIVE_INFINITY?this.sign===1?"Infinity":"-Infinity":this.layer===0?this.mag<1e21&&this.mag>1e-7||this.mag===0?(this.sign*this.mag).toString():this.m+"e"+this.e:this.layer===1?this.m+"e"+this.e:this.layer<=Hn?(this.sign===-1?"-":"")+"e".repeat(this.layer)+this.mag:(this.sign===-1?"-":"")+"(e^"+this.layer+")"+this.mag}toExponential(e){return this.layer===0?(this.sign*this.mag).toExponential(e):this.toStringWithDecimalPlaces(e)}toFixed(e){return this.layer===0?(this.sign*this.mag).toFixed(e):this.toStringWithDecimalPlaces(e)}toPrecision(e){return this.e<=-7?this.toExponential(e-1):e>this.e?this.toFixed(e-this.exponent-1):this.toExponential(e-1)}valueOf(){return this.toString()}toJSON(){return this.toString()}toStringWithDecimalPlaces(e){return this.layer===0?this.mag<1e21&&this.mag>1e-7||this.mag===0?(this.sign*this.mag).toFixed(e):at(this.m,e)+"e"+at(this.e,e):this.layer===1?at(this.m,e)+"e"+at(this.e,e):this.layer<=Hn?(this.sign===-1?"-":"")+"e".repeat(this.layer)+at(this.mag,e):(this.sign===-1?"-":"")+"(e^"+this.layer+")"+at(this.mag,e)}abs(){return q(this.sign===0?0:1,this.layer,this.mag)}neg(){return q(-this.sign,this.layer,this.mag)}negate(){return this.neg()}negated(){return this.neg()}sgn(){return this.sign}round(){return this.mag<0?w.dZero:this.layer===0?B(this.sign,0,Math.round(this.mag)):this}floor(){return this.mag<0?w.dZero:this.layer===0?B(this.sign,0,Math.floor(this.mag)):this}ceil(){return this.mag<0?w.dZero:this.layer===0?B(this.sign,0,Math.ceil(this.mag)):this}trunc(){return this.mag<0?w.dZero:this.layer===0?B(this.sign,0,Math.trunc(this.mag)):this}add(e){const t=h(e);if(!Number.isFinite(this.layer))return this;if(!Number.isFinite(t.layer)||this.sign===0)return t;if(t.sign===0)return this;if(this.sign===-t.sign&&this.layer===t.layer&&this.mag===t.mag)return q(0,0,0);let n,i;if(this.layer>=2||t.layer>=2)return this.maxabs(t);if(w.cmpabs(this,t)>0?(n=this,i=t):(n=t,i=this),n.layer===0&&i.layer===0)return h(n.sign*n.mag+i.sign*i.mag);const s=n.layer*Math.sign(n.mag),r=i.layer*Math.sign(i.mag);if(s-r>=2)return n;if(s===0&&r===-1){if(Math.abs(i.mag-Math.log10(n.mag))>wn)return n;{const o=Math.pow(10,Math.log10(n.mag)-i.mag),u=i.sign+n.sign*o;return B(Math.sign(u),1,i.mag+Math.log10(Math.abs(u)))}}if(s===1&&r===0){if(Math.abs(n.mag-Math.log10(i.mag))>wn)return n;{const o=Math.pow(10,n.mag-Math.log10(i.mag)),u=i.sign+n.sign*o;return B(Math.sign(u),1,Math.log10(i.mag)+Math.log10(Math.abs(u)))}}if(Math.abs(n.mag-i.mag)>wn)return n;{const o=Math.pow(10,n.mag-i.mag),u=i.sign+n.sign*o;return B(Math.sign(u),1,i.mag+Math.log10(Math.abs(u)))}}plus(e){return this.add(e)}sub(e){return this.add(h(e).neg())}subtract(e){return this.sub(e)}minus(e){return this.sub(e)}mul(e){const t=h(e);if(!Number.isFinite(this.layer))return this;if(!Number.isFinite(t.layer))return t;if(this.sign===0||t.sign===0)return q(0,0,0);if(this.layer===t.layer&&this.mag===-t.mag)return q(this.sign*t.sign,0,1);let n,i;if(this.layer>t.layer||this.layer==t.layer&&Math.abs(this.mag)>Math.abs(t.mag)?(n=this,i=t):(n=t,i=this),n.layer===0&&i.layer===0)return h(n.sign*i.sign*n.mag*i.mag);if(n.layer>=3||n.layer-i.layer>=2)return B(n.sign*i.sign,n.layer,n.mag);if(n.layer===1&&i.layer===0)return B(n.sign*i.sign,1,n.mag+Math.log10(i.mag));if(n.layer===1&&i.layer===1)return B(n.sign*i.sign,1,n.mag+i.mag);if(n.layer===2&&i.layer===1){const s=B(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(B(Math.sign(i.mag),i.layer-1,Math.abs(i.mag)));return B(n.sign*i.sign,s.layer+1,s.sign*s.mag)}if(n.layer===2&&i.layer===2){const s=B(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(B(Math.sign(i.mag),i.layer-1,Math.abs(i.mag)));return B(n.sign*i.sign,s.layer+1,s.sign*s.mag)}throw Error("Bad arguments to mul: "+this+", "+e)}multiply(e){return this.mul(e)}times(e){return this.mul(e)}div(e){const t=h(e);return this.mul(t.recip())}divide(e){return this.div(e)}divideBy(e){return this.div(e)}dividedBy(e){return this.div(e)}recip(){return this.mag===0?w.dNaN:this.layer===0?B(this.sign,0,1/this.mag):B(this.sign,this.layer,-this.mag)}reciprocal(){return this.recip()}reciprocate(){return this.recip()}cmp(e){const t=h(e);return this.sign>t.sign?1:this.sign0?this.layer:-this.layer,i=t.mag>0?t.layer:-t.layer;return n>i?1:nt.mag?1:this.mag0?t:this}clamp(e,t){return this.max(e).min(t)}clampMin(e){return this.max(e)}clampMax(e){return this.min(e)}cmp_tolerance(e,t){const n=h(e);return this.eq_tolerance(n,t)?0:this.cmp(n)}compare_tolerance(e,t){return this.cmp_tolerance(e,t)}eq_tolerance(e,t){const n=h(e);if(t==null&&(t=1e-7),this.sign!==n.sign||Math.abs(this.layer-n.layer)>1)return!1;let i=this.mag,s=n.mag;return this.layer>n.layer&&(s=Nn(s)),this.layer0?B(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):B(1,0,Math.log10(this.mag))}log10(){return this.sign<=0?w.dNaN:this.layer>0?B(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):B(this.sign,0,Math.log10(this.mag))}log(e){return e=h(e),this.sign<=0||e.sign<=0||e.sign===1&&e.layer===0&&e.mag===1?w.dNaN:this.layer===0&&e.layer===0?B(this.sign,0,Math.log(this.mag)/Math.log(e.mag)):w.div(this.log10(),e.log10())}log2(){return this.sign<=0?w.dNaN:this.layer===0?B(this.sign,0,Math.log2(this.mag)):this.layer===1?B(Math.sign(this.mag),0,Math.abs(this.mag)*3.321928094887362):this.layer===2?B(Math.sign(this.mag),1,Math.abs(this.mag)+.5213902276543247):B(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}ln(){return this.sign<=0?w.dNaN:this.layer===0?B(this.sign,0,Math.log(this.mag)):this.layer===1?B(Math.sign(this.mag),0,Math.abs(this.mag)*2.302585092994046):this.layer===2?B(Math.sign(this.mag),1,Math.abs(this.mag)+.36221568869946325):B(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}logarithm(e){return this.log(e)}pow(e){const t=h(e),n=this,i=t;if(n.sign===0)return i.eq(0)?q(1,0,1):n;if(n.sign===1&&n.layer===0&&n.mag===1)return n;if(i.sign===0)return q(1,0,1);if(i.sign===1&&i.layer===0&&i.mag===1)return n;const s=n.absLog10().mul(i).pow10();return this.sign===-1?Math.abs(i.toNumber()%2)%2===1?s.neg():Math.abs(i.toNumber()%2)%2===0?s:w.dNaN:s}pow10(){if(!Number.isFinite(this.layer)||!Number.isFinite(this.mag))return w.dNaN;let e=this;if(e.layer===0){const t=Math.pow(10,e.sign*e.mag);if(Number.isFinite(t)&&Math.abs(t)>=.1)return B(1,0,t);if(e.sign===0)return w.dOne;e=q(e.sign,e.layer+1,Math.log10(e.mag))}return e.sign>0&&e.mag>=0?B(e.sign,e.layer+1,e.mag):e.sign<0&&e.mag>=0?B(-e.sign,e.layer+1,-e.mag):w.dOne}pow_base(e){return h(e).pow(this)}root(e){const t=h(e);return this.pow(t.recip())}factorial(){return this.mag<0?this.add(1).gamma():this.layer===0?this.add(1).gamma():this.layer===1?w.exp(w.mul(this,w.ln(this).sub(1))):w.exp(this)}gamma(){if(this.mag<0)return this.recip();if(this.layer===0){if(this.lt(q(1,0,24)))return h(Is(this.sign*this.mag));const e=this.mag-1;let t=.9189385332046727;t=t+(e+.5)*Math.log(e),t=t-e;const n=e*e;let i=e,s=12*i,r=1/s,o=t+r;if(o===t||(t=o,i=i*n,s=360*i,r=1/s,o=t-r,o===t))return w.exp(t);t=o,i=i*n,s=1260*i;let u=1/s;return t=t+u,i=i*n,s=1680*i,u=1/s,t=t-u,w.exp(t)}else return this.layer===1?w.exp(w.mul(this,w.ln(this).sub(1))):w.exp(this)}lngamma(){return this.gamma().ln()}exp(){return this.mag<0?w.dOne:this.layer===0&&this.mag<=709.7?h(Math.exp(this.sign*this.mag)):this.layer===0?B(1,1,this.sign*Math.log10(Math.E)*this.mag):this.layer===1?B(1,2,this.sign*(Math.log10(.4342944819032518)+this.mag)):B(1,this.layer+1,this.sign*this.mag)}sqr(){return this.pow(2)}sqrt(){if(this.layer===0)return h(Math.sqrt(this.sign*this.mag));if(this.layer===1)return B(1,2,Math.log10(this.mag)-.3010299956639812);{const e=w.div(q(this.sign,this.layer-1,this.mag),q(1,0,2));return e.layer+=1,e.normalize(),e}}cube(){return this.pow(3)}cbrt(){return this.pow(1/3)}tetrate(e=2,t=q(1,0,1)){if(e===1)return w.pow(this,t);if(e===0)return new w(t);if(this.eq(w.dOne))return w.dOne;if(this.eq(-1))return w.pow(this,t);if(e===Number.POSITIVE_INFINITY){const s=this.toNumber();if(s<=1.444667861009766&&s>=.06598803584531254){if(s>1.444667861009099)return new w(Math.E);const r=w.ln(this).neg();return r.lambertw().div(r)}else return s>1.444667861009766?new w(Number.POSITIVE_INFINITY):w.dNaN}if(this.eq(w.dZero)){let s=Math.abs((e+1)%2);return s>1&&(s=2-s),new w(s)}if(e<0)return w.iteratedlog(t,this,-e);t=h(t);const n=e;e=Math.trunc(e);const i=n-e;if(this.gt(w.dZero)&&this.lte(1.444667861009766)){e=Math.min(1e4,e);for(let s=0;s3)return q(t.sign,t.layer+(e-s-1),t.mag);if(s>1e4)return t}return t}iteratedexp(e=2,t=q(1,0,1)){return this.tetrate(e,t)}iteratedlog(e=10,t=1){if(t<0)return w.tetrate(e,-t,this);e=h(e);let n=h(this);const i=t;t=Math.trunc(t);const s=i-t;if(n.layer-e.layer>3){const r=Math.min(t,n.layer-e.layer-3);t-=r,n.layer-=r}for(let r=0;r1e4)return n}return s>0&&s<1&&(e.eq(10)?n=n.layeradd10(-s):n=n.layeradd(-s,e)),n}slog(e=10){if(e=h(e),e.lte(w.dZero)||e.eq(w.dOne))return w.dNaN;if(e.lt(w.dOne))return this.eq(w.dOne)?w.dZero:this.eq(w.dZero)?w.dNegOne:w.dNaN;if(this.mag<0||this.eq(w.dZero))return w.dNegOne;let t=0,n=h(this);if(n.layer-e.layer>3){const i=n.layer-e.layer-3;t+=i,n.layer-=i}for(let i=0;i<100;++i)if(n.lt(w.dZero))n=w.pow(e,n),t-=1;else{if(n.lte(w.dOne))return h(t+w.slog_critical(e.toNumber(),n.toNumber()));t+=1,n=w.log(n,e)}return h(t)}static slog_critical(e,t){return e>10?t-1:w.critical_section(e,t,Ms)}static tetrate_critical(e,t){return w.critical_section(e,t,Ss)}static critical_section(e,t,n){t*=10,t<0&&(t=0),t>10&&(t=10),e<2&&(e=2),e>10&&(e=10);let i=0,s=0;for(let u=0;ue){const f=(e-pt[u])/(pt[u+1]-pt[u]);i=n[u][Math.floor(t)]*(1-f)+n[u+1][Math.floor(t)]*f,s=n[u][Math.ceil(t)]*(1-f)+n[u+1][Math.ceil(t)]*f;break}const r=t-Math.floor(t);return i*(1-r)+s*r}layeradd10(e){e=w.fromValue_noAlloc(e).toNumber();const t=h(this);if(e>=1){t.mag<0&&t.layer>0?(t.sign=0,t.mag=0,t.layer=0):t.sign===-1&&t.layer==0&&(t.sign=1,t.mag=-t.mag);const n=Math.trunc(e);e-=n,t.layer+=n}if(e<=-1){const n=Math.trunc(e);if(e-=n,t.layer+=n,t.layer<0)for(let i=0;i<100;++i){if(t.layer++,t.mag=Math.log10(t.mag),!isFinite(t.mag))return t.sign===0&&(t.sign=1),t.layer<0&&(t.layer=0),t.normalize();if(t.layer>=0)break}}for(;t.layer<0;)t.layer++,t.mag=Math.log10(t.mag);return t.sign===0&&(t.sign=1,t.mag===0&&t.layer>=1&&(t.layer-=1,t.mag=1)),t.normalize(),e!==0?t.layeradd(e,10):t}layeradd(e,t){const i=this.slog(t).toNumber()+e;return i>=0?w.tetrate(t,i):Number.isFinite(i)?i>=-1?w.log(w.tetrate(t,i+1),t):w.log(w.log(w.tetrate(t,i+2),t),t):w.dNaN}lambertw(){if(this.lt(-.3678794411710499))throw Error("lambertw is unimplemented for results less than -1, sorry!");if(this.mag<0)return h(jn(this.toNumber()));if(this.layer===0)return h(jn(this.sign*this.mag));if(this.layer===1)return zn(this);if(this.layer===2)return zn(this);if(this.layer>=3)return q(this.sign,this.layer-1,this.mag);throw"Unhandled behavior in lambertw()"}ssqrt(){if(this.sign==1&&this.layer>=3)return q(this.sign,this.layer-1,this.mag);const e=this.ln();return e.div(e.lambertw())}pentate(e=2,t=q(1,0,1)){t=h(t);const n=e;e=Math.trunc(e);const i=n-e;i!==0&&(t.eq(w.dOne)?(++e,t=new w(i)):this.eq(10)?t=t.layeradd10(i):t=t.layeradd(i,this));for(let s=0;s10)return t}return t}sin(){return this.mag<0?this:this.layer===0?h(Math.sin(this.sign*this.mag)):q(0,0,0)}cos(){return this.mag<0?w.dOne:this.layer===0?h(Math.cos(this.sign*this.mag)):q(0,0,0)}tan(){return this.mag<0?this:this.layer===0?h(Math.tan(this.sign*this.mag)):q(0,0,0)}asin(){return this.mag<0?this:this.layer===0?h(Math.asin(this.sign*this.mag)):q(Number.NaN,Number.NaN,Number.NaN)}acos(){return this.mag<0?h(Math.acos(this.toNumber())):this.layer===0?h(Math.acos(this.sign*this.mag)):q(Number.NaN,Number.NaN,Number.NaN)}atan(){return this.mag<0?this:this.layer===0?h(Math.atan(this.sign*this.mag)):h(Math.atan(this.sign*(1/0)))}sinh(){return this.exp().sub(this.negate().exp()).div(2)}cosh(){return this.exp().add(this.negate().exp()).div(2)}tanh(){return this.sinh().div(this.cosh())}asinh(){return w.ln(this.add(this.sqr().add(1).sqrt()))}acosh(){return w.ln(this.add(this.sqr().sub(1).sqrt()))}atanh(){return this.abs().gte(1)?q(Number.NaN,Number.NaN,Number.NaN):w.ln(this.add(1).div(h(1).sub(this))).div(2)}ascensionPenalty(e){return e===0?this:this.root(w.pow(10,e))}egg(){return this.add(9)}lessThanOrEqualTo(e){return this.cmp(e)<1}lessThan(e){return this.cmp(e)<0}greaterThanOrEqualTo(e){return this.cmp(e)>-1}greaterThan(e){return this.cmp(e)>0}};let a=w;a.dZero=q(0,0,0);a.dOne=q(1,0,1);a.dNegOne=q(-1,0,1);a.dTwo=q(1,0,2);a.dTen=q(1,0,10);a.dNaN=q(Number.NaN,Number.NaN,Number.NaN);a.dInf=q(1,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY);a.dNegInf=q(-1,Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);a.dNumberMax=B(1,0,Number.MAX_VALUE);a.dNumberMin=B(1,0,Number.MIN_VALUE);const As=new a(1);function Ot(e,t,n=!0){let i=a.log10(e).floor(),s=a.div(e,a.pow(10,i));s.toStringWithDecimalPlaces(t)==="10"&&(s=As,i=i.add(1));const r=i.gte(1e9)?Fe(i,Math.max(Math.max(t,3),W.defaultDecimalsShown)):i.gte(1e4)?an(i,0):i.toStringWithDecimalPlaces(0);return n?s.toStringWithDecimalPlaces(t)+"e"+r:"e"+r}function an(e,t){if(e==null)return"NaN";if(e=new a(e),e.mag<.001)return 0 .toFixed(t);const i=e.toStringWithDecimalPlaces(t).split(".");return i[0]=i[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),i.length==1?i[0]:i[0]+"."+i[1]}function ei(e,t){return e==null?"NaN":(e=new a(e),e.mag<1e-4?0 .toFixed(t):(e.mag<.1&&t!==0&&(t=Math.max(Math.max(t,e.log10().negate().ceil().toNumber()),W.defaultDecimalsShown)),e.toStringWithDecimalPlaces(t)))}const Ps=new a("eeee1000"),$s=new a("e100000"),Wn=new a("e1000"),ti=new a(1e9),Es=new a(1e6),xs=new a(1e3),Ts=new a(.98),Fs=new a(.001),ni=new a(0);function Fe(e,t,n){if(t==null&&(t=W.defaultDecimalsShown),n=n!=null?n:W.defaultShowSmall,e=new a(e),isNaN(e.sign)||isNaN(e.layer)||isNaN(e.mag))return"NaN";if(e.sign<0)return"-"+Fe(e.neg(),t);if(e.mag===Number.POSITIVE_INFINITY)return"Infinity";if(e.gte(Ps)){const i=e.slog();return i.gte(Es)?"F"+Fe(i.floor()):a.pow(10,i.sub(i.floor())).toStringWithDecimalPlaces(3)+"F"+an(i.floor(),0)}else{if(e.gte($s))return Ot(e,0,!1);if(e.gte(Wn))return Ot(e,0);if(e.gte(ti))return Ot(e,t);if(e.gte(xs))return an(e,0);if(e.gte(Fs)||!n)return ei(e,t);if(e.eq(ni))return 0 .toFixed(t)}return e=si(e),e.lt(Wn)?Ot(e,t).replace(/([^(?:e|F)]*)$/,"-$1"):Fe(e,t)+"\u207B\xB9"}function Ee(e){return e=new a(e),e.sign<0?"-"+Ee(e.neg()):e.gte(ti)||e.lte(Ts)&&!e.eq(ni)?Fe(e):Fe(e,0)}function ii(e){return a.lt(e,0)?"-"+ii(a.neg(e)):a.gt(e,2**51)?Fe(a.div(e,31536e3))+"y":(e=new a(e).toNumber(),e<60?Fe(e)+"s":e<3600?Ee(Math.floor(e/60))+"m "+Fe(e%60)+"s":e<86400?Ee(Math.floor(e/3600))+"h "+Ee(Math.floor(e/60)%60)+"m "+Ee(e%60)+"s":e<31536e3?Ee(Math.floor(e/84600)%365)+"d "+Ee(Math.floor(e/3600)%24)+"h "+Ee(Math.floor(e/60)%60)+"m":Ee(Math.floor(e/31536e3))+"y "+Ee(Math.floor(e/84600)%365)+"d "+Ee(Math.floor(e/3600)%24)+"h")}function Bs(e,t,n){e=new a(e);let i=e.toStringWithDecimalPlaces(t);return new a(i).gte(n)&&(i=a.sub(n,Math.pow(.1,t)).toStringWithDecimalPlaces(t)),i}function Ds(e,t){return Fe(e,t,!0)}function si(e){let t=a.log10(e).ceil();const n=a.div(e,a.pow(10,t));return t=t.neg(),e=new a(10).pow(t).times(n),e}var Os=Object.freeze(Object.defineProperty({__proto__:null,default:a,exponentialFormat:Ot,commaFormat:an,regularFormat:ei,format:Fe,formatWhole:Ee,formatTime:ii,toPlaces:Bs,formatSmall:Ds,invertOOM:si},Symbol.toStringTag,{value:"Module"}));const{exponentialFormat:Rs,commaFormat:Vs,regularFormat:qs,format:ee,formatWhole:z,formatTime:fn,toPlaces:Ls,formatSmall:Us,invertOOM:Gs}=Os;window.Decimal=a;window.exponentialFormat=Rs;window.commaFormat=Vs;window.regularFormat=qs;window.format=ee;window.formatWhole=z;window.formatTime=fn;window.toPlaces=Ls;window.formatSmall=Us;window.invertOOM=Gs;function ri(e){let t=e.replace(/([A-Z])/g," $1");return t=t.charAt(0).toUpperCase()+t.slice(1),t}function kn(e){return typeof e=="function"}var K=(e=>(e.Up="Up",e.Down="Down",e.Left="Left",e.Right="Right",e.Default="Up",e))(K||{});const Ut=Symbol("DoNotCache");function $(e,t){const n=e[t];kn(n)&&n.length===0&&!n[Ut]?e[t]=S(n.bind(e)):kn(n)&&(e[t]=n.bind(e),e[t][Ut]=!0)}function we(e){return kn(e)&&!e[Ut]&&(e=S(e)),e}const ft=Symbol("Component"),mt=Symbol("GatherProps");let Hs=0;function jt(e="feature-"){return e+Hs++}var de=(e=>(e[e.Visible=0]="Visible",e[e.Hidden=1]="Hidden",e[e.None=2]="None",e))(de||{});function O(e){return e[Ut]=!0,e}function te(e,t=2){return e?0:t}function ge(e,t,n){e[t]===void 0&&n!=null&&(e[t]=n)}const gt={variables:{"--foreground":"#dfdfdf","--background":"#0f0f0f","--feature-foreground":"#0f0f0f","--tooltip-background":"rgba(0, 0, 0, 0.75)","--raised-background":"#0f0f0f","--points":"#ffffff","--locked":"#bf8f8f","--highlighted":"#333","--bought":"#77bf5f","--danger":"rgb(220, 53, 69)","--link":"#02f2f2","--outline":"#dfdfdf","--accent1":"#627a82","--accent2":"#658262","--accent3":"#7c6282","--border-radius":"15px","--modal-border":"solid 2px var(--color)","--feature-margin":"0px"},floatingTabs:!0,mergeAdjacent:!0,showPin:!0};var In=(e=>(e.Classic="classic",e.Paper="paper",e.Nordic="nordic",e.Aqua="aqua",e))(In||{}),zt={classic:gt,paper:{...gt,variables:{...gt.variables,"--background":"#2a323d","--feature-foreground":"#000","--raised-background":"#333c4a","--locked":"#3a3e45","--bought":"#5C8A58","--outline":"#333c4a","--border-radius":"4px","--modal-border":"","--feature-margin":"5px"},floatingTabs:!1},nordic:{...gt,variables:{...gt.variables,"--foreground":"#D8DEE9","--background":"#2E3440","--feature-foreground":"#000","--raised-background":"#3B4252","--points":"#E5E9F0","--locked":"#4c566a","--highlighted":"#434c5e","--bought":"#8FBCBB","--danger":"#D08770","--link":"#88C0D0","--outline":"#3B4252","--accent1":"#B48EAD","--accent2":"#A3BE8C","--accent3":"#EBCB8B","--border-radius":"4px","--modal-border":"solid 2px #3B4252","--feature-margin":"5px"},floatingTabs:!1},aqua:{...gt,variables:{...gt.variables,"--foreground":"#bfdfff","--background":"#001f3f","--tooltip-background":"rgba(0, 15, 31, 0.75)","--raised-background":"#001f3f","--points":"#dfefff","--locked":"#c4a7b3","--outline":"#bfdfff"}}};const ie=Symbol("ProxyState"),Ct=Symbol("ProxyPath");function Be(e,t={}){const n=t;let i=!1;function s(){return i||(Object.assign(n,e(n)),i=!0),n}return new Proxy(n,{get(r,o){return o===ie?s():s()[o]},set(r,o,u){return s()[o]=u,!0},has(r,o){return o===ie?!0:Reflect.has(s(),o)},ownKeys(){return Reflect.ownKeys(s())},getOwnPropertyDescriptor(r,o){return i||(Object.assign(n,e(n)),i=!0),Object.getOwnPropertyDescriptor(r,o)}})}var Z=window.state=Sn({lastTenTicks:[],hasNaN:!1,NaNPath:[]});const ai=Ht({id:"",devSpeed:null,name:"",tabs:[],time:-1,autosave:!0,offlineProd:!0,offlineTime:null,timePlayed:0,keepGoing:!1,modID:"",modVersion:"",layers:{}});function li(e){return JSON.stringify(e,(t,n)=>l(n))}const oi={get(e,t){var i;if(t===ie||t===Ct)return e[t];const n=e[ie][t];if(t!=="value"&&(Gi(n)||Array.isArray(n))){if(n!==((i=e[t])==null?void 0:i[ie])){const s=[...e[Ct],t];e[t]=new Proxy({[ie]:n,[Ct]:s},oi)}return e[t]}return n},set(e,t,n,i){if(!Z.hasNaN&&(typeof n=="number"&&isNaN(n)||n instanceof a&&(isNaN(n.sign)||isNaN(n.layer)||isNaN(n.mag)))){const s=e[ie][t];if(!(typeof s=="number"&&isNaN(s)||s instanceof a&&(isNaN(s.sign)||isNaN(s.layer)||isNaN(s.mag))))throw ai.autosave=!1,Z.hasNaN=!0,Z.NaNPath=[...e[Ct],t],Z.NaNReceiver=i,console.error("Attempted to set NaN value",[...e[Ct],t],e[ie]),"Attempted to set NaN value. See above for details"}return e[ie][t]=n,!0},ownKeys(e){return Reflect.ownKeys(e[ie])},has(e,t){return Reflect.has(e[ie],t)},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(e[ie],t)}};var A=window.player=new Proxy({[ie]:ai,[Ct]:["player"]},oi);const ye=Xn();let St=null,Rt=null;function ln(){const e=Date.now();let t=(e-A.time)/1e3;A.time=e;const n=t;if(Z.lastTenTicks.push(n),Z.lastTenTicks.length>10&&(Z.lastTenTicks=Z.lastTenTicks.slice(1)),!((Rt==null?void 0:Rt.value)&&!A.keepGoing)&&!Z.hasNaN&&(t=Math.max(t,0),A.devSpeed!==0)){if(A.offlineTime!=null){if(a.gt(A.offlineTime,W.offlineLimit*3600)&&(A.offlineTime=W.offlineLimit*3600),a.gt(A.offlineTime,0)&&A.devSpeed!==0){const i=Math.max(A.offlineTime/10,t);A.offlineTime=A.offlineTime-i,t+=i}else A.devSpeed===0&&(A.offlineTime+=t);(!A.offlineProd||a.lt(A.offlineTime,0))&&(A.offlineTime=null)}t=Math.min(t,W.maxTickLength),A.devSpeed!=null&&(t*=A.devSpeed),Number.isFinite(t)||(t=1e308),!a.eq(t,0)&&(A.timePlayed+=t,Number.isFinite(A.timePlayed)||(A.timePlayed=1e308),ye.emit("update",t,n),ne.unthrottled?(requestAnimationFrame(ln),St!=null&&(clearInterval(St),St=null)):St==null&&(St=setInterval(ln,50)))}}async function js(){Rt=(await rn(()=>Promise.resolve().then(function(){return ki}),void 0)).hasWon,Le(Rt,e=>{e&&ye.emit("gameWon")}),ne.unthrottled?requestAnimationFrame(ln):St=setInterval(ln,50)}document.fonts.onloadingdone=()=>ye.emit("fontsLoaded");var zs=Object.freeze(Object.defineProperty({__proto__:null,globalBus:ye,startGameLoop:js},Symbol.toStringTag,{value:"Module"}));function ui(e={}){return Object.assign({id:`${W.id}-0`,name:"Default Save",tabs:W.initialTabs.slice(),time:Date.now(),autosave:!0,offlineProd:!0,offlineTime:0,timePlayed:0,keepGoing:!1,modID:W.id,modVersion:W.versionNumber,layers:{}},e)}function Re(e){const t=ut.compressToUTF16(li(e!=null?e:A[ie]));return localStorage.setItem((e!=null?e:A[ie]).id,t),t}async function Ws(){Ks();try{let e=localStorage.getItem(ne.active);if(e==null){await vt(Mt());return}if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=ut.decompressFromUTF16(e);else throw"Unable to determine save encoding";const t=JSON.parse(e);if(t.modID!==W.id){await vt(Mt());return}t.id=ne.active,await vt(t)}catch(e){console.error(`Failed to load save. Falling back to new save. -`,e),await vt(Mt())}}function Mt(){const e=tn(),t=ui({id:e});return Re(t),ne.saves.push(e),t}function tn(){let e,t=0;do e=`${W.id}-${t++}`;while(localStorage.getItem(e));return e}async function vt(e){console.info("Loading save",e);const{layers:t,removeLayer:n,addLayer:i}=await rn(()=>Promise.resolve().then(function(){return vr}),void 0),{fixOldSave:s,getInitialLayers:r}=await rn(()=>Promise.resolve().then(function(){return ki}),void 0);for(const o in t){const u=t[o];u&&n(u)}r(e).forEach(o=>i(o,e)),e=ui(e),e.offlineProd&&e.time&&e.devSpeed!==0&&(e.offlineTime==null&&(e.offlineTime=0),e.offlineTime+=Math.min(e.offlineTime+(Date.now()-e.time)/1e3,W.offlineLimit*3600)),e.time=Date.now(),e.modVersion!==W.versionNumber&&s(e.modVersion,e),Object.assign(A,e),ne.active=A.id,ye.emit("onLoad")}setInterval(()=>{A.autosave&&Re()},1e3);window.onbeforeunload=()=>{A.autosave&&Re()};window.save=Re;const Qs=window.hardReset=async()=>{await vt(Mt())},Gt=Ht({active:"",saves:[],showTPS:!0,theme:In.Nordic,unthrottled:!1});Le(Gt,e=>{const t=ut.compressToUTF16(JSON.stringify(e));localStorage.setItem(W.id,t)},{deep:!0});var ne=window.settings=Gt;window.hardResetSettings=()=>{const e={active:"",saves:[],showTPS:!0,theme:In.Nordic};ye.emit("loadSettings",e),Object.assign(Gt,e),Qs()};function Ks(){try{let e=localStorage.getItem(W.id);if(e!=null&&e!==""){if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=ut.decompressFromUTF16(e);else{console.warn("Unable to determine settings encoding",e);return}const t=JSON.parse(e);typeof t=="object"&&Object.assign(Gt,t)}ye.emit("loadSettings",Gt)}catch{}}const ci=Ht([]);function Js(e){ci.push(e)}const Xs=Ht([]),Zs=Ht([]),Ys={class:"table"},nn=R({__name:"Column",setup(e){const t=S(()=>zt[ne.theme].mergeAdjacent);return(n,i)=>(_(),M("div",Ys,[m("div",{class:re(["col",{mergeAdjacent:l(t)}])},[Ge(n.$slots,"default")],2)]))}}),er={class:"table"},di=R({__name:"Row",setup(e){const t=S(()=>zt[ne.theme].mergeAdjacent);return(n,i)=>(_(),M("div",er,[m("div",{class:re(["row",{mergeAdjacent:l(t)}])},[Ge(n.$slots,"default")],2)]))}});function fi(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Bi(e)}function Q(e,t="span"){return typeof e=="function"?R({render:e}):typeof e=="string"?e.length>0?(e=e.trim(),e.charAt(0)!=="<"&&(e=`<${t}>${e}`),R({template:e})):R({render:()=>({})}):e}function he(e){if(ht(e))return typeof e=="function"?e():Q(e);const t=e[ft];return c(t,e[mt](),null)}function qe(...e){let t;return c(di,null,fi(t=e.map(he))?t:{default:()=>[t]})}function tr(...e){let t;return c(nn,null,fi(t=e.map(he))?t:{default:()=>[t]})}function He(e){if(ht(e))return typeof e=="function"?e():typeof e=="string"?c(V,null,[e]):c(e,null,null);const t=e[ft];return c(t,e[mt](),null)}function ht(e){return typeof e=="string"?!0:typeof e=="object"?e==null?!1:"render"in e||"component"in e:typeof e=="function"&&e[Ut]===!0}function mi(e,t,n){const i=T(null),s=T(void 0);function r(f){i.value||(i.value=setInterval(u,250)),s.value=f,n&&(n.value=!0)}function o(){i.value&&(clearInterval(i.value),i.value=null),n&&(n.value=!1)}function u(){t&&t.value?t.value():e&&e.value&&e.value(s.value)}return Kn(o),{start:r,stop:o,handleHolding:u}}function hi(e,t="div"){const n=Te();return Ae(()=>{n.value=Q(oe(e),t)}),n}function At(e,t="div"){const n=Te(null);return Ae(()=>{const i=oe(e);n.value=i==null?null:Q(i,t)}),n}function nr(e){return S(()=>oe(e))}function oe(e){return l(l(e))}function P(...e){return e.includes(Object)||e.push(Object),e}const xe=R({__name:"Spacer",props:{width:{default:"8px"},height:{default:"17px"}},setup(e){return(t,n)=>(_(),M("div",{style:le({width:e.width,height:e.height})},null,4))}});var J=(e,t)=>{const n=e.__vccOpts||e;for(const[i,s]of t)n[i]=s;return n};const ir=R({__name:"Context",emits:["updateNodes"],setup(e,{emit:t}){var p;const n=T({}),i=new ResizeObserver(u),s=T(null);cn(()=>{const v=s.value;v!=null&&i.observe(v)});let r=!0,o=T((p=s.value)==null?void 0:p.getBoundingClientRect());function u(){r&&(r=!1,bt(()=>{var v;o.value=(v=s.value)==null?void 0:v.getBoundingClientRect(),Object.values(n.value).filter(b=>b).forEach(b=>b.rect=b.element.getBoundingClientRect()),t("updateNodes",n.value),r=!0}))}ye.on("fontsLoaded",u);const f={attributes:!1,childList:!0,subtree:!1};Yt(An,(v,b)=>{const g=new MutationObserver(()=>d(v));g.observe(b,f),n.value[v]={element:b,observer:g,rect:b.getBoundingClientRect()},u()}),Yt(Pn,v=>{var b;(b=n.value[v])==null||b.observer.disconnect(),n.value[v]=void 0,u()}),Yt($n,n),Yt(En,o);function d(v){const b=n.value[v];b!=null&&(b.rect=b.element.getBoundingClientRect(),t("updateNodes",n.value))}return(v,b)=>(_(),M(V,null,[Ge(v.$slots,"default",{},void 0,!0),m("div",{ref_key:"resizeListener",ref:s,class:"resize-listener"},null,512)],64))}});var pi=J(ir,[["__scopeId","data-v-2b1dc1bc"]]);const sr=["onPointerdown"],rr={class:"modal-wrapper"},ar={class:"modal-container"},lr={class:"modal-header"},or=y(" default header "),ur={class:"modal-body"},cr=y(" default body "),dr={class:"modal-footer"},fr=m("div",{class:"modal-default-flex-grow"},null,-1),je=R({__name:"Modal",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{expose:t,emit:n}){const s=fe(e),r=S(()=>s.modelValue||u.value);function o(){n("update:modelValue",!1)}const u=T(!1),f=T(null),d=S(()=>{var p,v;return(v=(p=f.value)==null?void 0:p.nodes)!=null?v:null});return t({isOpen:r,nodes:d}),(p,v)=>(_(),U(Oi,{to:"#modal-root"},[c(dn,{name:"modal",onBeforeEnter:v[0]||(v[0]=b=>u.value=!0),onAfterLeave:v[1]||(v[1]=b=>u.value=!1)},{default:F(()=>[Mn(m("div",_t({class:"modal-mask",onPointerdown:Lt(o,["self"])},p.$attrs),[m("div",rr,[m("div",ar,[m("div",lr,[Ge(p.$slots,"header",{shown:l(r)},()=>[or])]),m("div",ur,[c(pi,{ref_key:"contextRef",ref:f},{default:F(()=>[Ge(p.$slots,"body",{shown:l(r)},()=>[cr])]),_:3},512)]),m("div",dr,[Ge(p.$slots,"footer",{shown:l(r)},()=>[m("div",{class:"modal-default-footer"},[fr,m("button",{class:"button modal-default-button",onClick:o}," Close ")])])])])])],16,sr),[[Di,e.modelValue]])]),_:3})]))}}),Cn=Symbol("PersistentState"),on=Symbol("DefaultValue"),un=Symbol("StackTrace"),gi=Symbol("Deleted");function mr(){var e;return((e=new Error().stack)==null?void 0:e.split(` -`).slice(3,5).map(t=>t.trim()).join(` -`))||""}function Me(e){const t=ce(e)?e:T(e);return t[Cn]=t,t[on]=ce(e)?e.value:e,t[un]=mr(),t[gi]=!1,Ve.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",t,` -Created at: -`+t[un]):It[Ve[Ve.length-1]].add(t),t}ye.on("addLayer",(e,t)=>{const n=[],i=(s,r=[])=>{let o=!1;return Object.keys(s).forEach(u=>{const f=s[u];if(f&&typeof f=="object")if(Cn in f){if(o=!0,f[gi]){console.warn("Deleted persistent ref present in returned object. Ignoring...",f,` -Created at: -`+f[un]);return}It[e.id].delete(ie in f?f[ie]:f);const d=r.reduce((v,b)=>(b in v||(v[b]={}),v[b]),t),p=d[u];d[u]=f[Cn],Ri(d)?p!=null?d[u]=p:d[u]=f[on]:p!=null?d[u].value=p:d[u].value=f[on]}else!(f instanceof a)&&!ce(f)&&!n.includes(f)&&(typeof f.type=="symbol"&&n.push(f),i(f,[...r,u])&&(Un(f)&&!Un(s)?console.warn("Found array that contains persistent values when adding layer. Keep in mind changing the order of elements in the array will mess with existing player saves.",ie in s?s[ie]:s,u):o=!0))}),o};i(e),It[e.id].forEach(s=>{console.error(`Created persistent ref in ${e.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,s,` -Created at: -`+s[un])}),It[e.id].clear()});const An=Symbol("RegisterNode"),Pn=Symbol("UnregisterNode"),$n=Symbol("Nodes"),En=Symbol("Bounds"),pe=Sn({});window.layers=pe;const It={},Ve=[];function Wt(e,t){return Be(()=>{const n={},i=n.emitter=Xn();if(n.on=i.on.bind(i),n.emit=i.emit.bind(i),n.nodes=T({}),n.id=e,Ve.push(e),It[e]=new Set,n.minimized=Me(!1),Object.assign(n,t.call(n)),Ve[Ve.length-1]==null||Ve[Ve.length-1]!==e)throw`Adding layers stack in invalid state. This should not happen -Stack: ${Ve} -Trying to pop ${n.id}`;return Ve.pop(),$(n,"color"),$(n,"display"),$(n,"name"),ge(n,"name",n.id),$(n,"minWidth"),ge(n,"minWidth",600),$(n,"minimizable"),ge(n,"minimizable",!0),n})}function vi(e,t){if(console.info("Adding layer",e.id),pe[e.id]){console.error("Attempted to add layer with same ID as existing layer",e.id,pe[e.id]);return}ge(t,"layers",{}),t.layers[e.id]==null&&(t.layers[e.id]={}),pe[e.id]=e,ye.emit("addLayer",e,t.layers[e.id])}function hr(e){return pe[e]}function yi(e){console.info("Removing layer",e.id),ye.emit("removeLayer",e),pe[e.id]=void 0}function pr(e){yi(e),vi(e,A)}function gr(e){const t=T(!1);return{openModal:()=>t.value=!0,modal:O(()=>c(je,{modelValue:t.value,"onUpdate:modelValue":n=>t.value=n},{header:()=>c("h2",null,[l(e.name)]),body:l(e.display)}))}}ye.on("update",function(t){Object.values(pe).forEach(n=>{n==null||n.emit("preUpdate",t)}),Object.values(pe).forEach(n=>{n==null||n.emit("update",t)}),Object.values(pe).forEach(n=>{n==null||n.emit("postUpdate",t)})});var vr=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:An,UnregisterNodeInjectionKey:Pn,NodesInjectionKey:$n,BoundsInjectionKey:En,layers:pe,persistentRefs:It,addingLayers:Ve,createLayer:Wt,addLayer:vi,getLayer:hr,removeLayer:yi,reloadLayer:pr,setupLayerModal:gr},Symbol.toStringTag,{value:"Module"}));const yr={},br={class:"notif"};function _r(e,t){return _(),M("div",br,"!")}var Qn=J(yr,[["render",_r],["__scopeId","data-v-66323fd4"]]);const mn=e=>(Xe("data-v-949cc93c"),e=e(),Ze(),e),wr={key:0,class:"day feature dontMerge opened"},Nr={class:"date"},kr=y("Dec"),Cr=mn(()=>m("br",null,null,-1)),Sr={class:"date"},Mr=y("Dec"),Ir=mn(()=>m("br",null,null,-1)),Ar=mn(()=>m("div",{class:"doors"},null,-1)),Pr={class:"date"},$r=y("Dec"),Er=mn(()=>m("br",null,null,-1)),xr={key:0,class:"material-icons lock"},Tr=R({__name:"Day",props:{day:null,symbol:null,opened:null,shouldNotify:null},emits:["openLore","openLayer","unlockLayer"],setup(e,{emit:t}){const n=e,i=S(()=>a.gte(H.day.value,n.day)&&new Date().getMonth()===11&&new Date().getDate()>=n.day);function s(){i.value&&t("unlockLayer")}return(r,o)=>e.opened.value?(_(),M("div",wr,[c(dn,{appear:"",name:"door"},{default:F(()=>[m("div",{class:"doors",onClick:o[0]||(o[0]=u=>t("openLayer"))},[m("div",Nr,[kr,Cr,y(L(e.day),1)]),m("div",Sr,[Mr,Ir,y(L(e.day),1)])])]),_:1}),m("div",{class:"icon",style:le({backgroundImage:`url(${e.symbol})`})},null,4),m("div",{class:"lore",onClick:o[1]||(o[1]=u=>t("openLore"))},"?"),l(e.shouldNotify)?(_(),U(Qn,{key:0})):E("",!0)])):(_(),M("div",{key:1,class:re(["day feature dontMerge",{can:l(i),locked:!l(i),canOpen:l(i)}]),onClick:s},[Ar,m("div",Pr,[$r,Er,y(L(e.day),1)]),l(i)?E("",!0):(_(),M("div",xr,"lock")),l(i)?(_(),U(Qn,{key:1})):E("",!0)],2))}});var Fr=J(Tr,[["__scopeId","data-v-949cc93c"]]);const Br={key:0},Dr={key:0,class:"mark star"},Or=["src"],Rr=R({__name:"MarkNode",props:{mark:{type:[Boolean,String]}},setup(e){return(t,n)=>e.mark?(_(),M("div",Br,[e.mark===!0?(_(),M("div",Dr)):(_(),M("img",{key:1,class:"mark",src:e.mark},null,8,Or))])):E("",!0)}});var hn=J(Rr,[["__scopeId","data-v-2207999f"]]);const Vr=R({__name:"Node",props:{id:null},setup(e){const n=fe(e),i=sn(An,()=>{}),s=sn(Pn,()=>{}),r=Te(null),o=S(()=>r.value&&r.value.parentElement);return Le([o,n.id],([u,f],[d,p])=>{d&&s(l(p)),u&&i(f,u)}),Kn(()=>s(l(n.id))),(u,f)=>(_(),M("div",{class:"node",ref_key:"node",ref:r},null,512))}});var Qt=J(Vr,[["__scopeId","data-v-a48cb382"]]),qr=R({props:{display:{type:P(Object,String,Function),required:!0},visibility:{type:P(Number),required:!0},style:P(Object,String,Array),classes:P(Object),onClick:Function,onHold:Function,canClick:{type:P(Boolean),required:!0},small:Boolean,mark:P(Boolean,String),id:{type:String,required:!0},isHolding:Object},components:{Node:Qt,MarkNode:hn},setup(e){const{display:t,onClick:n,onHold:i}=fe(e),s=Te("");Ae(()=>{const u=oe(t);if(u==null){s.value="";return}if(ht(u)){s.value=Q(u);return}const f=Q(u.title||"","h3"),d=Q(u.description,"div");s.value=Q(O(()=>c("span",null,[u.title?c("div",null,[c(f,null,null)]):null,c(d,null,null)])))});const{start:r,stop:o}=mi(n,i,e.isHolding);return{start:r,stop:o,comp:s,Visibility:de,unref:l}}});function Lr(e,t,n,i,s,r){var f;const o=dt("MarkNode"),u=dt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("button",{key:0,style:le([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(f=e.unref(e.style))!=null?f:[]]),onClick:t[0]||(t[0]=(...d)=>e.onClick&&e.onClick(...d)),onMousedown:t[1]||(t[1]=(...d)=>e.start&&e.start(...d)),onMouseleave:t[2]||(t[2]=(...d)=>e.stop&&e.stop(...d)),onMouseup:t[3]||(t[3]=(...d)=>e.stop&&e.stop(...d)),onTouchstartPassive:t[4]||(t[4]=(...d)=>e.start&&e.start(...d)),onTouchendPassive:t[5]||(t[5]=(...d)=>e.stop&&e.stop(...d)),onTouchcancelPassive:t[6]||(t[6]=(...d)=>e.stop&&e.stop(...d)),class:re({feature:!0,clickable:!0,can:e.unref(e.canClick),locked:!e.unref(e.canClick),small:e.small,...e.unref(e.classes)})},[e.unref(e.comp)?(_(),U(ve(e.unref(e.comp)),{key:0})):E("",!0),c(o,{mark:e.unref(e.mark)},null,8,["mark"]),c(u,{id:e.id},null,8,["id"])],38)):E("",!0)}var bi=J(qr,[["render",Lr],["__scopeId","data-v-8cedd7da"]]);const Ur=Symbol("Clickable");function _e(e){return Be(()=>{var n;const t=(n=e==null?void 0:e())!=null?n:{};if(t.id=jt("clickable-"),t.type=Ur,t[ft]=bi,t.isHolding=T(!1),$(t,"visibility"),ge(t,"visibility",de.Visible),$(t,"canClick"),ge(t,"canClick",!0),$(t,"classes"),$(t,"style"),$(t,"mark"),$(t,"display"),t.onClick){const i=t.onClick.bind(t);t.onClick=function(s){l(t.canClick)&&i(s)}}if(t.onHold){const i=t.onHold.bind(t);t.onHold=function(){l(t.canClick)&&i()}}return t[mt]=function(){const{display:i,visibility:s,style:r,classes:o,onClick:u,onHold:f,isHolding:d,canClick:p,small:v,mark:b,id:g}=this;return{display:i,visibility:s,style:l(r),classes:o,onClick:u,onHold:f,isHolding:d,canClick:p,small:v,mark:b,id:g}},t})}function yt(e,t="points",n=0,i=void 0){const s=ce(e)?e:Me(e);return s.displayName=t,s.precision=n,s.small=i,s}function _i(e){const t=Me(e.value);return Le(e,(n,i)=>{a.gt(n,i)&&(t.value=a.add(t.value,a.sub(n,i)))}),t}new a("10^^8");new a("1e100");function xn(e,t){const n=t!=null?t:e.value;return a.eq(e.precision,0)?z(e.small?n:a.floor(n)):ee(n,e.precision,e.small)}const Gr=["x1","y1","x2","y2"],Hr=R({__name:"Link",props:{link:null,startNode:null,endNode:null,boundingRect:null},setup(e){const n=fe(e),i=S(()=>{const r=n.startNode.value.rect,o=n.boundingRect.value,u=o?{x:r.x+r.width/2-o.x,y:r.y+r.height/2-o.y}:{x:0,y:0};return n.link.value.offsetStart&&(u.x+=n.link.value.offsetStart.x,u.y+=n.link.value.offsetStart.y),u}),s=S(()=>{const r=n.endNode.value.rect,o=n.boundingRect.value,u=o?{x:r.x+r.width/2-o.x,y:r.y+r.height/2-o.y}:{x:0,y:0};return n.link.value.offsetEnd&&(u.x+=n.link.value.offsetEnd.x,u.y+=n.link.value.offsetEnd.y),u});return(r,o)=>(_(),M("line",_t({"stroke-width":"15px",stroke:"white"},e.link,{x1:l(i).x,y1:l(i).y,x2:l(s).x,y2:l(s).y}),null,16,Gr))}});const jr=R({__name:"Links",props:{links:null},setup(e){var f;const n=Je(e,"links"),i=T(null),s=sn($n,T({})),r=sn(En,T(void 0)),o=T((f=i.value)==null?void 0:f.getBoundingClientRect());Le(r,()=>{var d;return o.value=(d=i.value)==null?void 0:d.getBoundingClientRect()}),cn(()=>{var d;return o.value=(d=i.value)==null?void 0:d.getBoundingClientRect()});const u=S(()=>{var p,v;const d=s.value;return(v=(p=n.value)==null?void 0:p.filter(b=>{var g,N;return((g=d[b.startNode.id])==null?void 0:g.rect)&&((N=d[b.startNode.id])==null?void 0:N.rect)}))!=null?v:[]});return(d,p)=>(_(),M(V,null,[l(u)?(_(),M("svg",Vi(_t({key:0},d.$attrs)),[(_(!0),M(V,null,Jn(l(u),(v,b)=>(_(),U(Hr,{key:b,link:v,boundingRect:o.value,startNode:l(s)[v.startNode.id],endNode:l(s)[v.endNode.id]},null,8,["link","boundingRect","startNode","endNode"]))),128))],16)):E("",!0),m("div",{ref_key:"resizeListener",ref:i,class:"resize-listener"},null,512)],64))}});var zr=J(jr,[["__scopeId","data-v-063f6d6b"]]);R({props:{nodes:{type:P(Array),required:!0},leftSideNodes:P(Array),rightSideNodes:P(Array),branches:P(Array)},components:{Links:zr},setup(e){const{nodes:t,leftSideNodes:n,rightSideNodes:i}=fe(e),s=Te();Ae(()=>{const u=oe(t);s.value=Q(O(()=>c(V,null,[u.map(f=>c("span",{class:"row tree-row",style:"margin: 50px auto;"},[f.map(He)]))])))});const r=Te();Ae(()=>{const u=oe(n);r.value=u?Q(O(()=>c("span",{class:"left-side-nodes small"},[u.map(He)]))):""});const o=Te();return Ae(()=>{const u=oe(i);o.value=u?Q(O(()=>c("span",{class:"side-nodes small"},[u.map(He)]))):""}),{unref:l,nodesComp:s,leftNodesComp:r,rightNodesComp:o}}});R({props:{display:P(Object,String,Function),visibility:{type:P(Number),required:!0},style:P(String,Object,Array),classes:P(Object),onClick:Function,onHold:Function,color:P(String),glowColor:P(String),canClick:{type:P(Boolean),required:!0},mark:P(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:hn,Node:Qt},setup(e){const{onClick:t,onHold:n,display:i}=fe(e),s=At(i),{start:r,stop:o}=mi(t,n);return{start:r,stop:o,comp:s,unref:l,Visibility:de,isCoercableComponent:ht}}});function wi(e){const t=[],n={};let i=!1;function s(){return i||(t.push(...e()),n.base=t.map(u=>we(u.base)),n.baseText=t.map(u=>we(u.baseText)),n.visible=t.map(u=>we(u.visible)),i=!0),t}const r=Me({});return[O(()=>{const u=s();let f=!0;const d=u.map((p,v)=>{var k,x,be;if(l(n.visible[v])===!1)return null;const b=c("h3",{onClick:()=>r.value[v]=!r.value[v],style:"cursor: pointer"},[c("span",{class:"modifier-toggle"+(l(r.value[v])?" collapsed":"")},[y("\u25BC")]),p.title,p.subtitle?c("span",{class:"subtitle"},[y(" ("),p.subtitle,y(")")]):null]),g=l(r.value[v])?null:c(V,null,[c("div",{class:"modifier-container"},[c("span",{class:"modifier-amount"},[ee((k=l(n.base[v]))!=null?k:1),p.unit]),c("span",{class:"modifier-description"},[He((x=l(n.baseText[v]))!=null?x:"Base")])]),He(l(p.modifier.description))]),N=!f;return f=!1,c(V,null,[N?c("br",null,null):null,c("div",null,[b,c("br",null,null),g,c("hr",null,null),y("Total: "),ee(p.modifier.apply((be=l(n.base[v]))!=null?be:1)),p.unit])])});return c(V,null,[d])}),r]}const Wr=R({props:{progress:{type:P(String,Object,Number),required:!0},width:{type:P(Number),required:!0},height:{type:P(Number),required:!0},direction:{type:P(String),required:!0},display:P(Object,String,Function),visibility:{type:P(Number),required:!0},style:P(Object,String,Array),classes:P(Object),borderStyle:P(Object,String,Array),textStyle:P(Object,String,Array),baseStyle:P(Object,String,Array),fillStyle:P(Object,String,Array),mark:P(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:hn,Node:Qt},setup(e){const{progress:t,width:n,height:i,direction:s,display:r}=fe(e),o=S(()=>{let d=t.value instanceof a?t.value.toNumber():Number(t.value);return(1-Math.min(Math.max(d,0),1))*100}),u=S(()=>{const d={width:oe(n)+.5+"px",height:oe(i)+.5+"px"};switch(l(s)){case K.Up:d.clipPath=`inset(${o.value}% 0% 0% 0%)`,d.width=oe(n)+1+"px";break;case K.Down:d.clipPath=`inset(0% 0% ${o.value}% 0%)`,d.width=oe(n)+1+"px";break;case K.Right:d.clipPath=`inset(0% ${o.value}% 0% 0%)`;break;case K.Left:d.clipPath=`inset(0% 0% 0% ${o.value} + '%)`;break;case K.Default:d.clipPath="inset(0% 50% 0% 0%)";break}return d}),f=At(r);return{normalizedProgress:o,barStyle:u,component:f,unref:l,Visibility:de}}});function Qr(e,t,n,i,s,r){var f,d,p,v,b,g,N;const o=dt("MarkNode"),u=dt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("div",{key:0,style:le([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px",visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(f=e.unref(e.style))!=null?f:{}]),class:re({bar:!0,...e.unref(e.classes)})},[m("div",{class:"overlayTextContainer border",style:le([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(d=e.unref(e.borderStyle))!=null?d:{}])},[e.component?(_(),M("span",{key:0,class:"overlayText",style:le(e.unref(e.textStyle))},[(_(),U(ve(e.component)))],4)):E("",!0)],4),m("div",{class:"border",style:le([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(p=e.unref(e.style))!=null?p:{},(v=e.unref(e.baseStyle))!=null?v:{},(b=e.unref(e.borderStyle))!=null?b:{}])},[m("div",{class:"fill",style:le([e.barStyle,(g=e.unref(e.style))!=null?g:{},(N=e.unref(e.fillStyle))!=null?N:{}])},null,4)],4),c(o,{mark:e.unref(e.mark)},null,8,["mark"]),c(u,{id:e.id},null,8,["id"])],6)):E("",!0)}var Kr=J(Wr,[["render",Qr],["__scopeId","data-v-02d0d7b2"]]);const Jr=Symbol("Bar");function Vt(e){return Be(()=>{const t=e();return t.id=jt("bar-"),t.type=Jr,t[ft]=Kr,$(t,"visibility"),ge(t,"visibility",de.Visible),$(t,"width"),$(t,"height"),$(t,"direction"),$(t,"style"),$(t,"classes"),$(t,"borderStyle"),$(t,"baseStyle"),$(t,"textStyle"),$(t,"fillStyle"),$(t,"progress"),$(t,"display"),$(t,"mark"),t[mt]=function(){const{progress:n,width:i,height:s,direction:r,display:o,visibility:u,style:f,classes:d,borderStyle:p,textStyle:v,baseStyle:b,fillStyle:g,mark:N,id:k}=this;return{progress:n,width:i,height:s,direction:r,display:o,visibility:u,style:l(f),classes:d,borderStyle:p,textStyle:v,baseStyle:b,fillStyle:g,mark:N,id:k}},t})}const Xr=Symbol("Buyable");function Ke(e){const t=Me(0);return Be(()=>{var r,o,u;const n=e();if(n.canPurchase==null&&(n.resource==null||n.cost==null))throw console.warn("Cannot create buyable without a canPurchase property or a resource and cost property",n),"Cannot create buyable without a canPurchase property or a resource and cost property";n.id=jt("buyable-"),n.type=Xr,n[ft]=bi,n.amount=t,n.amount[on]=(r=n.initialValue)!=null?r:0,n.canAfford=S(()=>{const f=n,d=l(f.cost);return f.resource!=null&&d!=null&&a.gte(f.resource.value,d)}),n.canPurchase==null&&(n.canPurchase=S(()=>l(n.visibility)===de.Visible&&l(n.canAfford)&&a.lt(n.amount.value,l(n.purchaseLimit)))),n.maxed=S(()=>a.gte(n.amount.value,l(n.purchaseLimit))),$(n,"classes");const i=n.classes;n.classes=S(()=>{const f=l(i)||{};return n.maxed.value&&(f.bought=!0),f}),$(n,"canPurchase"),n.canClick=n.canPurchase,n.onClick=n.purchase=(u=(o=n.onClick)!=null?o:n.purchase)!=null?u:function(){var p;const f=n;if(!l(f.canPurchase))return;const d=l(f.cost);f.cost!=null&&f.resource!=null&&(f.resource.value=a.sub(f.resource.value,d),f.amount.value=a.add(f.amount.value,1)),(p=f.onPurchase)==null||p.call(f,d)},$(n,"display");const s=n.display;return n.display=O(()=>{const f=l(s);if(ht(f)){const d=Q(f);return c(d,null,null)}if(f!=null&&n.cost!=null&&n.resource!=null){const d=n,p=Q(f.title||"","h3"),v=Q(f.description||""),b=Q(f.effectDisplay||"");return c("span",null,[f.title?c("div",null,[c(p,null,null)]):null,f.description?c(v,null,null):null,f.showAmount===!1?null:c("div",null,[c("br",null,null),l(d.purchaseLimit)===a.dInf?c(V,null,[y("Amount: "),z(d.amount.value)]):c(V,null,[y("Amount: "),z(d.amount.value),y(" /")," ",z(l(d.purchaseLimit))])]),f.effectDisplay?c("div",null,[c("br",null,null),y("Currently: "),c(b,null,null)]):null,d.cost&&!d.maxed.value?c("div",null,[c("br",null,null),y("Cost: "),ee(l(d.cost)||0)," ",n.resource.displayName]):null])}return""}),$(n,"visibility"),ge(n,"visibility",de.Visible),$(n,"cost"),$(n,"resource"),$(n,"purchaseLimit"),ge(n,"purchaseLimit",a.dInf),$(n,"style"),$(n,"mark"),$(n,"small"),n[mt]=function(){const{display:f,visibility:d,style:p,classes:v,onClick:b,canClick:g,small:N,mark:k,id:x}=this;return{display:f,visibility:d,style:l(p),classes:v,onClick:b,canClick:g,small:N,mark:k,id:x}},n})}const Zr=R({__name:"Sticky",setup(e){const t=T("0"),n=new ResizeObserver(s),i=Te(null);function s(){let r=i.value;if(r==null)return;let o=0;for(;r.previousSibling;){const u=r.previousSibling;u.dataset&&"vSticky"in u.dataset&&(o+=u.offsetHeight),r=u}t.value=o+"px"}return bt(s),document.fonts.ready.then(s),cn(()=>{var o;const r=(o=i.value)==null?void 0:o.parentElement;r&&n.observe(r)}),(r,o)=>(_(),M("div",{class:"sticky",style:le({top:t.value}),ref_key:"element",ref:i,"data-v-sticky":""},[Ge(r.$slots,"default",{},void 0,!0)],4))}});var Yr=J(Zr,[["__scopeId","data-v-cccac690"]]);const ea=R({__name:"Resource",props:{resource:null,color:null},setup(e){const t=e,n=S(()=>xn(t.resource));return(i,s)=>(_(),M("h2",{style:le({color:e.color,"text-shadow":"0px 0px 10px "+e.color})},L(l(n)),5))}});const ta={class:"main-display"},na={key:0},ia={key:1},sa=y(", "),qt=R({__name:"MainDisplay",props:{resource:null,color:null,classes:null,style:null,effectDisplay:null},setup(e){const n=fe(e),i=T(null),s=At(n.effectDisplay),r=S(()=>a.lt(n.resource.value,"1e1000"));return(o,u)=>(_(),U(Yr,null,{default:F(()=>{var f,d,p,v;return[m("div",{class:re(["main-display-container",(f=e.classes)!=null?f:{}]),style:le([{height:`${((p=(d=i.value)==null?void 0:d.$el.clientHeight)!=null?p:0)+50}px`},(v=e.style)!=null?v:{}])},[m("div",ta,[l(r)?(_(),M("span",na,"You have ")):E("",!0),c(ea,{resource:e.resource,color:e.color||"white"},null,8,["resource","color"]),y(" "+L(e.resource.displayName),1),l(s)?(_(),M("span",ia,[sa,(_(),U(ve(l(s)),{ref_key:"effectRef",ref:i},null,512))])):E("",!0)])],6)]}),_:1}))}});var ra=R({props:{display:{type:P(String,Object,Function),required:!0},visibility:{type:P(Number),required:!0},style:P(String,Object,Array),classes:P(Object),resource:Object,cost:P(String,Object,Number),canPurchase:{type:P(Boolean),required:!0},bought:{type:P(Boolean),required:!0},mark:P(Boolean,String),id:{type:String,required:!0},purchase:{type:Function,required:!0}},components:{Node:Qt,MarkNode:hn},setup(e){const{display:t,cost:n}=fe(e),i=Te("");return Ae(()=>{const s=oe(t);if(s==null){i.value="";return}if(ht(s)){i.value=Q(s);return}const r=oe(n),o=Q(s.title||"","h3"),u=Q(s.description,"div"),f=Q(s.effectDisplay||"");i.value=Q(O(()=>{var d;return c("span",null,[s.title?c("div",null,[c(o,null,null)]):null,c(u,null,null),s.effectDisplay?c("div",null,[y("Currently: "),c(f,null,null)]):null,e.resource!=null?c(V,null,[c("br",null,null),y("Cost: "),e.resource&&xn(e.resource,r)," ",(d=e.resource)==null?void 0:d.displayName]):null])}))}),{component:i,unref:l,Visibility:de}}});const aa=["disabled"];function la(e,t,n,i,s,r){var f;const o=dt("MarkNode"),u=dt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("button",{key:0,style:le([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(f=e.unref(e.style))!=null?f:{}]),onClick:t[0]||(t[0]=(...d)=>e.purchase&&e.purchase(...d)),class:re({feature:!0,upgrade:!0,can:e.unref(e.canPurchase),locked:!e.unref(e.canPurchase),bought:e.unref(e.bought),...e.unref(e.classes)}),disabled:!e.unref(e.canPurchase)},[e.unref(e.component)?(_(),U(ve(e.unref(e.component)),{key:0})):E("",!0),c(o,{mark:e.unref(e.mark)},null,8,["mark"]),c(u,{id:e.id},null,8,["id"])],14,aa)):E("",!0)}var oa=J(ra,[["render",la],["__scopeId","data-v-7742f590"]]);const ua=Symbol("Upgrade");function ae(e){const t=Me(!1);return Be(()=>{const n=e();return n.id=jt("upgrade-"),n.type=ua,n[ft]=oa,n.canAfford==null&&(n.resource==null||n.cost==null)&&console.warn("Error: can't create upgrade without a canAfford property or a resource and cost property",n),n.bought=t,n.canAfford==null?n.canAfford=S(()=>{const i=n;return i.resource!=null&&i.cost!=null&&a.gte(i.resource.value,l(i.cost))}):$(n,"canAfford"),n.canPurchase=S(()=>l(n.visibility)===de.Visible&&l(n.canAfford)&&!l(n.bought)),n.purchase=function(){var s;const i=n;!l(i.canPurchase)||(i.resource!=null&&i.cost!=null&&(i.resource.value=a.sub(i.resource.value,l(i.cost))),t.value=!0,(s=i.onPurchase)==null||s.call(i))},$(n,"visibility"),ge(n,"visibility",de.Visible),$(n,"classes"),$(n,"style"),$(n,"display"),$(n,"mark"),$(n,"cost"),$(n,"resource"),n[mt]=function(){const{display:i,visibility:s,style:r,classes:o,resource:u,cost:f,canPurchase:d,bought:p,mark:v,id:b,purchase:g}=this;return{display:i,visibility:s,style:l(r),classes:o,resource:u,cost:f,canPurchase:d,bought:p,mark:v,id:b,purchase:g}},n})}function Y(e){return Be(()=>{const{addend:t,description:n,enabled:i}=e(),s=we(t),r=we(n),o=i==null?void 0:we(i);return{apply:u=>a.add(u,l(s)),revert:u=>a.sub(u,l(s)),enabled:o,description:n==null?void 0:O(()=>c("div",{class:"modifier-container"},[c("span",{class:"modifier-amount"},[a.gte(l(s),0)?"+":"",ee(l(s))]),l(r)?c("span",{class:"modifier-description"},[He(l(r))]):null]))}})}function ue(e){return Be(()=>{const{multiplier:t,description:n,enabled:i}=e(),s=we(t),r=we(n),o=i==null?void 0:we(i);return{apply:u=>a.times(u,l(s)),revert:u=>a.div(u,l(s)),enabled:o,description:n==null?void 0:O(()=>c("div",{class:"modifier-container"},[c("span",{class:"modifier-amount"},[y("x"),ee(l(s))]),l(r)?c("span",{class:"modifier-description"},[He(l(r))]):null]))}})}function ca(e){return Be(()=>{const{exponent:t,description:n,enabled:i,supportLowNumbers:s}=e(),r=we(t),o=we(n),u=i==null?void 0:we(i);return{apply:f=>{let d=f;return s&&(d=a.add(d,1)),d=a.pow(d,l(r)),s&&(d=a.sub(d,1)),d},revert:f=>{let d=f;return s&&(d=a.add(d,1)),d=a.root(d,l(r)),s&&(d=a.sub(d,1)),d},enabled:u,description:n==null?void 0:O(()=>c("div",{class:"modifier-container"},[c("span",{class:"modifier-amount"},[y("^"),ee(l(r))]),l(o)?c("span",{class:"modifier-description"},[He(l(o)),s?" (+1 effective)":null]):null]))}})}function Se(e){return Be(()=>{const t=e();return{apply:n=>t.filter(i=>l(i.enabled)!==!1).reduce((i,s)=>s.apply(i),n),revert:t.every(n=>n.revert!=null)?n=>t.filter(i=>l(i.enabled)!==!1).reduceRight((i,s)=>s.revert(i),n):void 0,enabled:S(()=>t.filter(n=>l(n.enabled)!==!1).length>0),description:O(()=>c(V,null,[t.filter(n=>l(n.enabled)!==!1).map(n=>l(n.description)).filter(n=>n).map(He)]))}})}const da="coal",en=3,Ue=Wt(da,function(){const e="Coal",t="#151716",n="#B2BeB5",i="var(--foreground)",s=yt(0,"coal"),r=_i(s),o=yt(0,"ash"),u=1e7,f=Vt(()=>({direction:K.Right,width:600,height:25,fillStyle:`backgroundColor: ${t}`,progress:()=>a.log10(r.value).div(Math.log10(u)),display:O(()=>c(V,null,[z(r.value),y("/"),z(u)]))})),d=Me(0),p=S(()=>a.times(d.value,1e3)),v=S(()=>a.times(d.value,.1)),b=S(()=>a.times(d.value,50)),g=Ke(()=>({resource:me.logs,cost(){return a.times($e.amount.value,10).plus(this.amount.value).pow(1.5).times(1e4)},display:O(()=>c(V,null,[c("h3",null,[y("Small Fire")]),c("br",null,null),y("Burn 1000 logs for 0.1 coal and 50 ash"),c("br",null,null),c("br",null,null),y("Currently:"),c("br",null,null),y("-"),ee(p.value),y(" logs/sec"),c("br",null,null),y("+"),ee(v.value),y(" coal/sec"),c("br",null,null),y("+"),ee(b.value),y(" ash/sec"),c("br",null,null),c("br",null,null),y("Cost: "),z(l(g.cost)),y(" "),g.resource.displayName])),onPurchase(){d.value=a.add(d.value,1)},style:{color:i,width:"160px"}})),N=_e(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(d.value,0)},onClick(){d.value=0}})),k=_e(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(d.value,0)},onClick(){d.value=a.sub(d.value,1)}})),x=_e(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(d.value,g.amount.value)},onClick(){d.value=a.add(d.value,1)}})),be=_e(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(d.value,g.amount.value)},onClick(){d.value=g.amount.value}})),I=yt(g.amount,"small fires"),C=Me(0),j=S(()=>a.times(C.value,1e4)),Ne=S(()=>a.times(C.value,10)),De=S(()=>a.times(C.value,1e3)),$e=Ke(()=>({resource:I,cost:10,display:O(()=>c(V,null,[c("h3",null,[y("Bonfire")]),c("br",null,null),y("Burn 10,000 logs for 10 coal and 1000 ash"),c("br",null,null),c("br",null,null),y("Currently:"),c("br",null,null),y("-"),ee(j.value),y(" logs/sec"),c("br",null,null),y("+"),ee(Ne.value),y(" coal/sec"),c("br",null,null),y("+"),ee(De.value),y(" ash/sec"),c("br",null,null),c("br",null,null),y("Cost: "),z(l($e.cost)),y(" "),$e.resource.displayName])),onPurchase(D){d.value=a.sub(d.value,D).max(0),C.value=a.add(C.value,1)},style:{color:i,width:"160px"}})),Jt=_e(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(C.value,0)},onClick(){C.value=0}})),gn=_e(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(C.value,0)},onClick(){C.value=a.sub(C.value,1)}})),Xt=_e(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(C.value,$e.amount.value)},onClick(){C.value=a.add(C.value,1)}})),Pt=_e(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(C.value,$e.amount.value)},onClick(){C.value=$e.amount.value}})),X=Me(0),ze=S(()=>a.times(X.value,1e6)),$t=S(()=>a.times(X.value,1e4)),We=S(()=>a.times(X.value,1e4)),Oe=Ke(()=>({resource:me.logs,cost(){return a.pow(1.1,this.amount.value).times(1e7)},display:O(()=>c(V,null,[c("h3",null,[y("Charcoal Kiln")]),c("br",null,null),y("Burn 1,000,000 logs for 10,000 coal and 10,000 ash"),c("br",null,null),c("br",null,null),y("Currently:"),c("br",null,null),y("-"),ee(ze.value),y(" logs/sec"),c("br",null,null),y("+"),ee($t.value),y(" coal/sec"),c("br",null,null),y("+"),ee(We.value),y(" ash/sec"),c("br",null,null),c("br",null,null),y("Cost: "),z(l(Oe.cost)),y(" "),Oe.resource.displayName])),onPurchase(){X.value=a.add(X.value,1)},style:{color:i,width:"160px"}})),Et=_e(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(X.value,0)},onClick(){X.value=0}})),vn=_e(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(X.value,0)},onClick(){X.value=a.sub(X.value,1)}})),et=_e(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(X.value,Oe.amount.value)},onClick(){X.value=a.add(X.value,1)}})),Zt=_e(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(X.value,Oe.amount.value)},onClick(){X.value=Oe.amount.value}})),tt=ae(()=>({resource:s,cost:5,display:{title:"Warmer Cutters",description:"Cut down twice as many trees/s"},style:{color:i}})),nt=ae(()=>({resource:s,cost:5,display:{title:"Warmer Planters",description:"Plant twice as many trees/s"},style:{color:i}})),ke=ae(()=>({resource:o,cost:5e3,display:{title:"Ashy Soil",description:"Trees give 25% more logs"},style:{color:i}})),Qe=ae(()=>({resource:I,cost:10,display:{title:"Bigger Fires",description:"Put all those fires together into a larger blaze"},onPurchase(){I.value=a.add(I.value,this.cost)},style:{color:i}})),wt=[tt,nt,ke,Qe],Ce=ae(()=>({resource:s,cost:250,display:{title:"Dedicated Cutter Heaters",description:"Double the bonus from Heated Cutters"},style:{color:i},visibility:()=>te(Qe.bought.value)})),xt=ae(()=>({resource:s,cost:250,display:{title:"Dedicated Planter Heaters",description:"Double the bonus from Heated Planters"},style:{color:i},visibility:()=>te(Qe.bought.value)})),it=ae(()=>({canAfford(){return a.gte(me.logs.value,1e5)&&a.gte(o.value,1e5)},onPurchase(){me.logs.value=a.sub(me.logs.value,1e5),o.value=a.sub(o.value,1e5)},display:O(()=>c(V,null,[c("h3",null,[y("Mulched Soil")]),c("br",null,null),y("Double the bonus from Fertilized Soil"),c("br",null,null),c("br",null,null),y("Cost: "),z(1e5),y(" "),me.logs.displayName,c("br",null,null),z(1e5),y(" "),o.displayName])),style:{color:i},visibility:()=>te(Qe.bought.value)})),Tt=ae(()=>({resource:me.logs,cost:1e7,display:{title:"Efficient Fires",description:"Move the fires underground to keep the coal from turning to ash"},style:{color:i},visibility:()=>te(Qe.bought.value)})),yn=[Ce,xt,it,Tt],st=Ke(()=>({resource:s,cost(){let D=this.amount.value;return a.gte(D,50)&&(D=a.pow(D,2).div(50)),a.gte(D,100)&&(D=a.pow(D,2).div(100)),a.gte(D,1e3)&&(D=a.pow(D,2).div(1e3)),a.add(D,1).pow(2.5).times(10)},display:{title:"Heated Cutters",description:"Even warmer cutters cut down trees faster",effectDisplay:O(()=>c(V,null,[y("Cutters cut down trees "),ee(Bt.value),y("x faster")]))},style:{color:i},visibility:()=>te(tt.bought.value)})),Nt=Ke(()=>({resource:s,cost(){let D=this.amount.value;return a.gte(D,50)&&(D=a.pow(D,2).div(50)),a.gte(D,100)&&(D=a.pow(D,2).div(100)),a.gte(D,1e3)&&(D=a.pow(D,2).div(1e3)),a.add(D,1).pow(2.5).times(10)},display:{title:"Heated Planters",description:"Even warmer planters plant trees faster",effectDisplay:O(()=>c(V,null,[y("Planters plant trees "),ee(Dn.value),y("x faster")]))},style:{color:i},visibility:()=>te(nt.bought.value)})),rt=Ke(()=>({resource:o,cost(){let D=this.amount.value;return a.gte(D,50)&&(D=a.pow(D,2).div(50)),a.gte(D,100)&&(D=a.pow(D,2).div(100)),a.gte(D,1e3)&&(D=a.pow(D,2).div(1e3)),a.add(D,1).pow(1.5).times(5e4)},display:{title:"Fertilized Soil",description:"More fertilizer helps trees grow bigger",effectDisplay:O(()=>c(V,null,[y("Trees give "),ee(On.value),y("x more logs")]))},style:{color:i},visibility:()=>te(ke.bought.value)})),Ft=[st,Nt,rt],G=Se(()=>[Y(()=>({addend(){return a.times(st.amount.value,.25)},description:"Heated Cutters",enabled(){return a.gt(st.amount.value,0)}})),ue(()=>({multiplier:2,description:"Dedicated Cutter Heaters",enabled:Ce.bought}))]),Bt=S(()=>G.apply(1)),bn=Se(()=>[Y(()=>({addend(){return a.times(Nt.amount.value,.25)},description:"Heated Planters",enabled(){return a.gt(Nt.amount.value,0)}})),ue(()=>({multiplier:2,description:"Dedicated Planter Heaters",enabled:xt.bought}))]),Dn=S(()=>bn.apply(1)),Pi=Se(()=>[Y(()=>({addend(){return a.times(rt.amount.value,.25)},description:"Fertilized Soil",enabled(){return a.gt(rt.amount.value,0)}})),ue(()=>({multiplier:2,description:"Mulched Soil",enabled:it.bought}))]),On=S(()=>Pi.apply(1)),Rn=Se(()=>[Y(()=>({addend(){return v.value},description:"Small Fires",enabled(){return a.gt(d.value,0)}})),Y(()=>({addend(){return Ne.value},description:"Bonfires",enabled(){return a.gt(C.value,0)}})),Y(()=>({addend(){return $t.value},description:"Charcoal Kilns",enabled(){return a.gt(X.value,0)}}))]),$i=S(()=>Rn.apply(0)),Vn=Se(()=>[Y(()=>({addend(){return b.value},description:"Small Fires",enabled(){return a.gt(d.value,0)}})),Y(()=>({addend(){return De.value},description:"Bonfires",enabled(){return a.gt(C.value,0)}})),Y(()=>({addend(){return We.value},description:"Charcoal Kilns",enabled(){return a.gt(X.value,0)}}))]),Ei=S(()=>Vn.apply(0)),qn=Se(()=>[Y(()=>({addend(){return a.negate(p.value)},description:"Small Fires",enabled(){return a.gt(d.value,0)}})),Y(()=>({addend(){return a.negate(j.value)},description:"Bonfires",enabled(){return a.gt(C.value,0)}})),Y(()=>({addend(){return a.negate(ze.value)},description:"Charcoal Kilns",enabled(){return a.gt(X.value,0)}}))]),Ln=S(()=>qn.apply(0)),[xi,Ti]=wi(()=>[{title:"Log Consumption",modifier:qn,base:0,visible(){return a.gt(d.value,0)||a.gt(C.value,0)||a.gt(X.value,0)}},{title:"Coal Gain",modifier:Rn,base:0,visible(){return a.gt(d.value,0)||a.gt(C.value,0)||a.gt(X.value,0)}},{title:"Ash Gain",modifier:Vn,base:0,visible(){return a.gt(d.value,0)||a.gt(C.value,0)||a.gt(X.value,0)}}]),_n=T(!1),Fi=O(()=>c(je,{modelValue:_n.value,"onUpdate:modelValue":D=>_n.value=D},{header:()=>c("h2",null,[e,y(" Modifiers")]),body:xi}));return ye.on("update",D=>{a.lt(H.day.value,en)||a.times(D,Ln.value).negate().gt(me.logs.value)||(me.logs.value=a.times(D,Ln.value).plus(me.logs.value),s.value=a.times(D,$i.value).plus(s.value),o.value=a.times(D,Ei.value).plus(o.value))}),Ae(()=>{H.day.value===en&&a.gte(r.value,u)&&(H.loreTitle.value="Day complete!",H.loreBody.value="Santa looks at all the coal you've gathered and tells you you've done well! He says you should take the rest of the day off so you're refreshed for tomorrow's work. Good Job!",H.day.value=en+1,H.minimized.value=!1,A.devSpeed=0)}),{name:e,color:t,coal:s,totalCoal:r,ash:o,activeFires:d,buildFire:g,activeBonfires:C,buildBonfire:$e,activeKilns:X,buildKiln:Oe,warmerCutters:tt,warmerPlanters:nt,basicFertilizer:ke,unlockBonfire:Qe,dedicatedCutters:Ce,dedicatedPlanters:xt,betterFertilizer:it,unlockKiln:Tt,heatedCutters:st,heatedPlanters:Nt,moreFertilizer:rt,computedHeatedCutterEffect:Bt,computedHeatedPlanterEffect:Dn,computedFertilizerEffect:On,generalTabCollapsed:Ti,minWidth:700,display:O(()=>c(V,null,[c("div",null,[H.day.value===en?`Reach ${z(u)} ${s.displayName} to complete the day`:"Day Complete!"," ",y("-")," ",c("button",{class:"button",style:"display: inline-block;",onClick:()=>_n.value=!0},[y("Check Modifiers")])]),he(f),he(Fi),c(xe,null,null),c(qt,{resource:s,color:t,style:"margin-bottom: 0",effectDisplay:void 0},null),c(xe,null,null),c(qt,{resource:o,color:n,style:"margin-bottom: 0",effectDisplay:void 0},null),c(xe,null,null),c(di,null,{default:()=>[c(nn,null,{default:()=>[he(g),c("div",null,[z(d.value),y("/"),z(g.amount.value)]),qe(N,k,x,be)]}),Qe.bought.value?c(V,null,[c(xe,null,null),c(nn,null,{default:()=>[he($e),c("div",null,[z(C.value),y("/"),z($e.amount.value)]),qe(Jt,gn,Xt,Pt)]})]):void 0,Tt.bought.value?c(V,null,[c(xe,null,null),c(nn,null,{default:()=>[he(Oe),c("div",null,[z(X.value),y("/"),z(Oe.amount.value)]),qe(Et,vn,et,Zt)]})]):void 0]}),c(xe,null,null),qe(...wt),qe(...yn),qe(...Ft)]))}});function fa(e){return Be(()=>{const t=e();return t.currentGain==null&&(t.currentGain=S(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=a.floor(n).max(0),l(t.buyMax)||(n=n.min(1)),n})),t.actualGain==null&&(t.actualGain=t.currentGain),t.currentAt==null&&(t.currentAt=S(()=>{let n=t.scaling.currentAt(t);return t.roundUpCost&&(n=a.ceil(n)),n})),t.nextAt==null&&(t.nextAt=S(()=>{let n=t.scaling.nextAt(t);return t.roundUpCost&&(n=a.ceil(n)),n})),t.convert==null&&(t.convert=function(){var s;const n=l(t.currentGain),i=l(t.currentAt);t.gainResource.value=a.add(t.gainResource.value,n),t.spend(n,i),(s=t.onConvert)==null||s.call(t,n)}),t.spend==null&&(t.spend=function(){t.baseResource.value=0}),$(t,"currentGain"),$(t,"actualGain"),$(t,"currentAt"),$(t,"nextAt"),$(t,"buyMax"),ge(t,"buyMax",!0),$(t,"roundUpCost"),ge(t,"roundUpCost",!0),t})}function ma(e,t){const n=we(e),i=we(t);return{currentGain(s){let r=l(s.baseResource.value);if(s.costModifier&&(r=s.costModifier.apply(r)),a.lt(r,l(n)))return 0;const o=a.div(r,l(n)).pow(l(i));return o.isNan()?new a(0):o},currentAt(s){let r=l(s.currentGain);return s.gainModifier&&(r=s.gainModifier.revert(r)),r=a.max(0,r).root(l(i)).times(l(n)),s.costModifier&&(r=s.costModifier.revert(r)),r},nextAt(s){let r=a.add(l(s.currentGain),1).floor();return s.gainModifier&&(r=s.gainModifier.revert(r)),r=a.max(0,r).root(l(i)).times(l(n)).max(l(n)),s.costModifier&&(r=s.costModifier.revert(r)),r}}}function ha(e){return fa(()=>{const t=e();return ge(t,"buyMax",!1),t.currentGain==null&&(t.currentGain=S(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=a.floor(n).max(t.gainResource.value),l(t.buyMax)||(n=n.min(a.add(t.gainResource.value,1))),n})),t.actualGain==null&&(t.actualGain=S(()=>{let n=a.sub(a.floor(t.scaling.currentGain(t)),t.gainResource.value).max(0);return l(t.buyMax)||(n=n.min(1)),n})),ge(t,"convert",function(){var s;const n=l(t.actualGain),i=l(t.currentAt);t.gainResource.value=t.gainModifier?t.gainModifier.apply(l(t.currentGain)):l(t.currentGain),t.spend(n,i),(s=t.onConvert)==null||s.call(t,n)}),t})}const pa={class:"field"},ga={key:0,class:"field-title"},Tn=R({__name:"Select",props:{title:null,modelValue:null,options:null,placeholder:null,closeOnSelect:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){var o;const n=e,i=At(Je(n,"title"),"span"),s=T((o=n.options.find(u=>u.value===n.modelValue))!=null?o:null);Le(Je(n,"modelValue"),u=>{var f;oe(s)!==u&&(s.value=(f=n.options.find(d=>d.value===u))!=null?f:null)});function r(u){t("update:modelValue",u.value)}return(u,f)=>(_(),M("div",pa,[l(i)?(_(),M("span",ga,[(_(),U(ve(l(i))))])):E("",!0),c(l(Hi),{options:e.options,modelValue:s.value,"onUpdate:modelValue":[f[0]||(f[0]=d=>s.value=d),r],min:1,"label-by":"label",placeholder:e.placeholder,"close-on-select":e.closeOnSelect},null,8,["options","modelValue","placeholder","close-on-select"])]))}});var va=R({props:{visibility:{type:P(Number),required:!0},display:{type:P(String,Object,Function),required:!0},style:P(String,Object,Array),classes:P(Object),earned:{type:P(Boolean),required:!0},id:{type:String,required:!0}},components:{Node:Qt},setup(e){const{display:t}=fe(e),n=Te("");return Ae(()=>{const i=oe(t);if(i==null){n.value="";return}if(ht(i)){n.value=Q(i);return}const s=Q(i.requirement,"h3"),r=Q(i.effectDisplay||"","b"),o=Q(i.optionsDisplay||"","span");n.value=Q(O(()=>c("span",null,[c(s,null,null),i.effectDisplay?c("div",null,[c(r,null,null)]):null,i.optionsDisplay?c("div",{class:"equal-spaced"},[c(o,null,null)]):null])))}),{comp:n,unref:l,Visibility:de}}});function ya(e,t,n,i,s,r){var u;const o=dt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("div",{key:0,style:le([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(u=e.unref(e.style))!=null?u:{}]),class:re({feature:!0,milestone:!0,done:e.unref(e.earned),...e.unref(e.classes)})},[(_(),U(ve(e.unref(e.comp)))),c(o,{id:e.id},null,8,["id"])],6)):E("",!0)}var ba=J(va,[["render",ya],["__scopeId","data-v-f4e8794e"]]);ye.on("setupVue",e=>e.use(ji));const _a=Zn(),wa=Symbol("Milestone");let ct;(function(e){e.All="all",e.Configurable="configurable",e.Incomplete="incomplete",e.None="none"})(ct||(ct={}));function lt(e){const t=Me(!1);return Be(()=>{var s;const n=(s=e==null?void 0:e())!=null?s:{};n.id=jt("milestone-"),n.type=wa,n[ft]=ba,n.earned=t,n.complete=function(){t.value=!0},$(n,"visibility"),ge(n,"visibility",de.Visible);const i=n.visibility;if(n.visibility=S(()=>{const r=l(n.display);switch(ne.msDisplay){default:case ct.All:return l(i);case ct.Configurable:return l(n.earned)&&!(r!=null&&typeof r=="object"&&"optionsDisplay"in r)?de.None:l(i);case ct.Incomplete:return l(n.earned)?de.None:l(i);case ct.None:return de.None}}),$(n,"style"),$(n,"classes"),$(n,"display"),n[mt]=function(){const{visibility:r,display:o,style:u,classes:f,earned:d,id:p}=this;return{visibility:r,display:o,style:l(u),classes:f,earned:d,id:p}},n.shouldEarn){const r=n;Ae(()=>{var o,u;if(ne.active===A.id&&!r.earned.value&&l(r.visibility)===de.Visible&&((o=r.shouldEarn)==null?void 0:o.call(r))&&(r.earned.value=!0,(u=r.onComplete)==null||u.call(r),r.display)){const f=l(r.display),d=Q(ht(f)?f:f.requirement);_a(c(V,null,[c("h3",null,[y("Milestone earned!")]),c("div",null,[c(d,null,null)])]))}})}return n})}ye.on("loadSettings",e=>{ge(e,"msDisplay",ct.All)});const Na=Object.values(ct).map(e=>({label:ri(e),value:e}));Js(O(()=>c(Tn,{title:"Show Milestones",options:Na,"onUpdate:modelValue":e=>ne.msDisplay=e,modelValue:ne.msDisplay},null)));const ka="workshop",kt=2,Ie=Wt(ka,function(){const e="Workshop",t="#D66B02",n="#D66B02",i=yt(0,"foundation progress"),s=ha(()=>({scaling:ma(250,1.5),baseResource:me.logs,gainResource:i,roundUpCost:!0,buyMax:!1,spend(x,be){me.logs.value=a.sub(me.logs.value,be)}})),r=_e(()=>({display:O(()=>c(V,null,[c("b",{style:"font-size: x-large"},[y("Build part of the foundation")]),c("br",null,null),c("br",null,null),c("span",{style:"font-size: large"},[y("Cost:")," ",xn(me.logs,a.gte(s.actualGain.value,1)?s.currentAt.value:s.nextAt.value)," ",me.logs.displayName])])),visibility:()=>te(H.day.value===kt),canClick:()=>a.gte(s.actualGain.value,1),onClick(){!l(this.canClick)||s.convert()},style:"width: 600px; min-height: unset"})),o=lt(()=>({display:{requirement:"1% Foundation Completed",effectDisplay:"Trees give 5% more logs for each % of foundation completed"},shouldEarn:()=>a.gte(i.value,1)})),u=lt(()=>({display:{requirement:"10% Foundation Completed",effectDisplay:"Cut an additional tree per second for each 5% of foundation completed"},shouldEarn:()=>a.gte(i.value,10),visibility:()=>te(o.earned.value)})),f=lt(()=>({display:{requirement:"20% Foundation Completed",effectDisplay:"Plant an additional tree per second for each 10% of foundation completed"},shouldEarn:()=>a.gte(i.value,20),visibility:()=>te(u.earned.value)})),d=lt(()=>({display:{requirement:"30% Foundation Completed",effectDisplay:"All automatic tree cutting is doubled"},shouldEarn:()=>a.gte(i.value,30),visibility:()=>te(f.earned.value)})),p=lt(()=>({display:{requirement:"40% Foundation Completed",effectDisplay:"All automatic tree planting is doubled"},shouldEarn:()=>a.gte(i.value,40),visibility:()=>te(d.earned.value)})),v=lt(()=>({display:{requirement:"50% Foundation Completed",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>a.gte(i.value,50),visibility:()=>te(p.earned.value)})),b=lt(()=>({display:{requirement:"75% Foundation Completed",effectDisplay:"The forest gains an extra tree for every 2% of foundation completed"},shouldEarn:()=>a.gte(i.value,75),visibility:()=>te(v.earned.value)})),g=lt(()=>({display:{requirement:"100% Foundation Completed",effectDisplay:"Trees' log gain is now raised to the 1.1th power"},shouldEarn:()=>a.gte(i.value,100),visibility:()=>te(b.earned.value)})),N={logGainMilestone1:o,autoCutMilestone1:u,autoPlantMilestone1:f,autoCutMilestone2:d,autoPlantMilestone2:p,logGainMilestone2:v,morePlantsMilestone1:b,logGainMilestone3:g},k=Vt(()=>({direction:K.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>a.div(i.value,100),display:O(()=>H.day.value===kt?c(V,null,[z(i.value),y("%")]):"")}));return Ae(()=>{H.day.value===kt&&a.gte(i.value,100)&&(H.loreTitle.value="Day complete!",H.loreBody.value="The workshop complete, Santa once again dismisses you for the day. With a strong foundation, this workshop should suffice for supporting future work toward this impossible mission. Good Job!",H.day.value=kt+1,H.minimized.value=!1,A.devSpeed=0)}),{name:e,day:kt,color:t,foundationProgress:i,foundationConversion:s,milestones:N,minWidth:700,display:O(()=>c(V,null,[c("div",null,[H.day.value===kt?"Complete the foundation to complete the day":"Day Complete!"]),he(k),c(xe,null,null),he(r),c(xe,null,null),tr(...Object.values(N))]))}}),Ca="trees",Dt=1,me=Wt(Ca,function(){const e="Trees",t="#4BDC13",n="green",i=yt(0,"logs"),s=_i(i),r=yt(0,"saplings"),o=1e4,u=Se(()=>[Y(()=>({addend:()=>a.times($e.amount.value,10),description:"Expand Forest",enabled:C.bought})),Y(()=>({addend:()=>a.div(Ie.foundationProgress.value,2),description:"75% Foundation Completed",enabled:Ie.milestones.morePlantsMilestone1.earned}))]),f=yt(S(()=>a.sub(u.apply(10),r.value)),"trees"),d=ae(()=>({resource:i,cost:10,display:{title:"Wooden Fingers",description:"Cut down an additional tree per click"}})),p=ae(()=>({resource:i,cost:10,display:{title:"Leafy Fingers",description:"Plant an additional tree per click"}})),v=ae(()=>({resource:i,cost:25,display:{title:"Automated Knives",description:"Cut down a tree every second"}})),b=ae(()=>({resource:i,cost:25,display:{title:"Automated Spade",description:"Plant a tree every second"}})),g=ae(()=>({resource:i,cost:40,display:{title:"Research I",description:"Trees give 25% more logs, and unlock more upgrades"}})),N=[d,p,v,b,g],k=ae(()=>({resource:i,cost:50,visibility:()=>te(g.bought.value),display:{title:"Sharper Fingers",description:"Manually cut trees twice as often"}})),x=ae(()=>({resource:i,cost:50,visibility:()=>te(g.bought.value),display:{title:"Greener Fingers",description:"Manually Plant trees twice as often"}})),be=ae(()=>({resource:i,cost:150,visibility:()=>te(g.bought.value),display:{title:"Smart Knives",description:"Each time you manually chop trees, gain 1s of automatic tree chopping production"}})),I=ae(()=>({resource:i,cost:150,visibility:()=>te(g.bought.value),display:{title:"Smart Spades",description:"Each time you manually plant trees, gain 1s of automatic tree planting production"}})),C=ae(()=>({resource:i,cost:300,visibility:()=>te(g.bought.value),display:{title:"Research II",description:"Trees give 25% more logs, and unlock repeatable purchases"}})),j=[k,x,be,I,C],Ne=Ke(()=>({resource:i,cost(){let G=this.amount.value;return a.gte(G,50)&&(G=a.pow(G,2).div(50)),a.gte(G,100)&&(G=a.pow(G,2).div(100)),a.gte(G,1e3)&&(G=a.pow(G,2).div(1e3)),a.times(100,G).add(200)},display:{title:"Generic Cutters",description:"Each cutter cuts down 1 tree/s"},visibility:()=>te(C.bought.value)})),De=Ke(()=>({resource:i,cost(){let G=this.amount.value;return a.gte(G,50)&&(G=a.pow(G,2).div(50)),a.gte(G,100)&&(G=a.pow(G,2).div(100)),a.gte(G,1e3)&&(G=a.pow(G,2).div(1e3)),a.times(100,G).add(200)},display:{title:"Generic Planters",description:"Each planter plants 0.5 trees/s"},visibility:()=>te(C.bought.value)})),$e=Ke(()=>({resource:i,cost(){return a.pow(a.add(this.amount.value,1),1.5).times(500)},display:{title:"Expand Forest",description:"Add 10 trees to the forest"},visibility:()=>te(C.bought.value)})),Jt=[Ne,De,$e],gn=Vt(()=>({direction:K.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>a.log10(s.value).div(Math.log10(o)),display:O(()=>H.day.value===Dt?c(V,null,[z(s.value),y("/"),z(o)]):"")})),Xt=Se(()=>[Y(()=>({addend:1,description:"Wooden Fingers",enabled:d.bought})),Y(()=>({addend:We,description:"Smart Knives",enabled:be.bought}))]),Pt=S(()=>Xt.apply(1)),X=Se(()=>[ue(()=>({multiplier:.5,description:"Sharper Fingers",enabled:k.bought}))]),ze=S(()=>X.apply(1)),$t=Se(()=>[Y(()=>({addend:1,description:"Automated Knives",enabled:v.bought})),Y(()=>({addend:Ne.amount,description:"Generic Cutters",enabled:C.bought})),Y(()=>({addend:()=>a.div(Ie.foundationProgress.value,5).floor(),description:"10% Foundation Completed",enabled:Ie.milestones.autoCutMilestone1.earned})),ue(()=>({multiplier:2,description:"30% Foundation Completed",enabled:Ie.milestones.autoCutMilestone2.earned})),ue(()=>({multiplier:2,description:"Warmer Cutters",enabled:Ue.warmerCutters.bought})),ue(()=>({multiplier:Ue.computedHeatedCutterEffect,description:"Heated Cutters",enabled:()=>a.gt(Ue.heatedCutters.amount.value,0)}))]),We=S(()=>$t.apply(0)),Oe=Se(()=>[Y(()=>({addend:1,description:"Leafy Fingers",enabled:p.bought})),Y(()=>({addend:tt,description:"Smart Spades",enabled:I.bought}))]),Et=S(()=>Oe.apply(1)),vn=Se(()=>[ue(()=>({multiplier:.5,description:"Greener Fingers",enabled:x.bought}))]),et=S(()=>vn.apply(1)),Zt=Se(()=>[Y(()=>({addend:1,description:"Automated Spade",enabled:b.bought})),Y(()=>({addend:()=>a.div(De.amount.value,2),description:"Generic Planters",enabled:C.bought})),Y(()=>({addend:()=>a.div(Ie.foundationProgress.value,10).floor(),description:"20% Foundation Completed",enabled:Ie.milestones.autoPlantMilestone1.earned})),ue(()=>({multiplier:2,description:"40% Foundation Completed",enabled:Ie.milestones.autoPlantMilestone2.earned})),ue(()=>({multiplier:2,description:"Warmer Planters",enabled:Ue.warmerPlanters.bought})),ue(()=>({multiplier:Ue.computedHeatedPlanterEffect,description:"Heated Planters",enabled:()=>a.gt(Ue.heatedPlanters.amount.value,0)}))]),tt=S(()=>Zt.apply(0)),nt=Se(()=>[ue(()=>({multiplier:1.25,description:"Research I",enabled:g.bought})),ue(()=>({multiplier:1.25,description:"Research II",enabled:C.bought})),ue(()=>({multiplier:()=>a.div(Ie.foundationProgress.value,20).add(1),description:"1% Foundation Completed",enabled:Ie.milestones.logGainMilestone1.earned})),ue(()=>({multiplier:2,description:"50% Foundation Completed",enabled:Ie.milestones.logGainMilestone2.earned})),ue(()=>({multiplier:1.25,description:"Ashy Soil",enabled:Ue.basicFertilizer.bought})),ue(()=>({multiplier:Ue.computedFertilizerEffect,description:"Fertilized Soil",enabled:()=>a.gt(Ue.moreFertilizer.amount.value,0)})),ca(()=>({exponent:1.1,description:"100% Foundation Completed",enabled:Ie.milestones.logGainMilestone3.earned}))]),ke=Me(0),Qe=Vt(()=>({direction:K.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>a.div(ke.value,ze.value)})),wt=_e(()=>({display:{title:"Cut trees",description:O(()=>c(V,null,[y("Cut down up to "),z(a.floor(Pt.value))," ",y("tree"),a.eq(Pt.value,1)?"":"s",y(" at once!"),c("br",null,null),he(Qe)]))},style:{minHeight:"80px"},canClick:()=>a.gte(f.value,1)&&a.gte(ke.value,ze.value),onClick(){if(a.lt(ke.value,ze.value))return;const G=a.floor(a.min(f.value,a.times(Pt.value,a.div(ke.value,ze.value).floor())));i.value=a.add(i.value,nt.apply(G)),r.value=a.add(r.value,G),ke.value=0}})),Ce=Me(0),xt=Vt(()=>({direction:K.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>a.div(Ce.value,et.value)})),it=_e(()=>({display:{title:"Plant trees",description:O(()=>c(V,null,[y("Plant up to "),z(a.floor(Et.value))," ",y("tree"),a.eq(Et.value,1)?"":"s",y(" at once!"),c("br",null,null),he(xt)]))},style:{minHeight:"80px"},canClick:()=>a.gte(r.value,1)&&a.gte(Ce.value,et.value),onClick(){if(a.lt(Ce.value,et.value))return;const G=a.floor(a.min(r.value,a.times(Et.value,a.div(Ce.value,et.value).floor())));r.value=a.sub(r.value,G),Ce.value=0}})),[Tt,yn]=wi(()=>[{title:"Logs per Tree",modifier:nt,base:1,visible:g.bought},{title:"Manual Cutting Amount",modifier:Xt,base:1,visible:d.bought,unit:"/click"},{title:"Manual Planting Amount",modifier:Oe,base:1,visible:p.bought,unit:"/click"},{title:"Auto Cutting Amount",modifier:$t,base:0,visible:v.bought,unit:"/s"},{title:"Auto Planting Amount",modifier:Zt,base:0,visible:b.bought,unit:"/s"},{title:"Forest Size",modifier:u,base:10,visible:C.bought}]),st=T(!1),Nt=O(()=>c(je,{modelValue:st.value,"onUpdate:modelValue":G=>st.value=G},{header:()=>c("h2",null,[e,y(" Modifiers")]),body:Tt}));ye.on("update",G=>{if(a.lt(H.day.value,Dt))return;a.gte(ke.value,ze.value)?ke.value=ze.value:(ke.value=a.add(ke.value,G),wt.isHolding.value&&wt.onClick()),a.gte(Ce.value,et.value)?Ce.value=et.value:(Ce.value=a.add(Ce.value,G),it.isHolding.value&&it.onClick());const Bt=a.min(f.value,a.times(We.value,G));i.value=a.add(i.value,nt.apply(Bt)),r.value=a.add(r.value,Bt);const bn=a.min(r.value,a.times(tt.value,G));r.value=a.sub(r.value,bn)}),Ae(()=>{H.day.value===Dt&&a.gte(s.value,o)&&(H.loreTitle.value="Day complete!",H.loreBody.value="Santa looks at all the wood you've gathered and tells you you've done well! He says you should take the rest of the day off so you're refreshed for tomorrow's work. Good Job!",H.day.value=Dt+1,H.minimized.value=!1,A.devSpeed=0)});const rt=S(()=>a.sub(We.value,tt.value)),Ft=S(()=>a.sub(tt.value,We.value));return{name:e,color:t,logs:i,totalLogs:s,trees:f,saplings:r,cutTree:wt,plantTree:it,row1Upgrades:N,row2Upgrades:j,row1Buyables:Jt,manualCutProgress:ke,manualPlantProgress:Ce,generalTabCollapsed:yn,minWidth:700,display:O(()=>c(V,null,[c("div",null,[H.day.value===Dt?`Reach ${z(1e4)} ${i.displayName} to complete the day`:"Day Complete!"," ",y("-")," ",c("button",{class:"button",style:"display: inline-block;",onClick:()=>st.value=!0},[y("Check Modifiers")])]),he(gn),he(Nt),c(xe,null,null),c(qt,{resource:i,color:t,style:"margin-bottom: 0",effectDisplay:a.gt(We.value,0)?`+${ee(nt.apply(We.value))}/s`:void 0},null),c(qt,{resource:r,color:n,style:"margin-bottom: 0",effectDisplay:{[-1]:`${z(rt.value)}/s`,0:void 0,1:`+${z(rt.value)}/s`}[a.compare(rt.value,0)]},null),c(qt,{resource:f,color:n,style:"margin-bottom: 0",effectDisplay:{[-1]:`${z(Ft.value)}/s`,0:void 0,1:`+${z(Ft.value)}/s`}[a.compare(Ft.value,0)]},null),c(xe,null,null),qe(wt,it),c("div",null,[y("Tip: You can hold down on actions to perform them automatically")]),c(xe,null,null),qe(...N),qe(...j),qe(...Jt)]))}});var Sa="./assets/tree.35808197.png",Ma="./assets/sws.714ad454.png",Ia="data:image/png;base64,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";const H=Wt("main",function(){const e=Me(1),t=T(""),n=T("");function i(r){const o=Me(!1);return Be(()=>{const u=r(),f=we(u.shouldNotify);return{...u,opened:o,shouldNotify:f,[ft]:Fr,[mt]:function(){const{day:d,layer:p,symbol:v,opened:b,shouldNotify:g,story:N}=this;return{day:d,symbol:v,opened:b,shouldNotify:g,onOpenLore(){var k,x;t.value=l((x=(k=pe[p!=null?p:"trees"])==null?void 0:k.name)!=null?x:""),n.value=N},onOpenLayer(){if(window.matchMedia("(min-width: 1468px)").matches)if(A.tabs.includes(p!=null?p:"trees")){const k=A.tabs.lastIndexOf(p!=null?p:"trees");A.tabs.splice(k,1)}else A.tabs.push(p!=null?p:"trees"),H.minimized.value=!0;else A.tabs.splice(1,1/0,p!=null?p:"trees")},onUnlockLayer(){b.value=!0,setTimeout(()=>{var k,x;t.value=l((x=(k=pe[p!=null?p:"trees"])==null?void 0:k.name)!=null?x:""),n.value=N,A.devSpeed=null},1e3)}}}}})}const s=[i(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:Sa,story:"Oh no! Santa forgot about Christmas and it's only 25 days away! He's asked for your help due to your history getting large quantities of things in short amounts of time. Unfortunately you're really starting from scratch here - let's start with getting wood, which you'll need for everything from building workshops to wrapping paper to many of the toys themselves!"})),i(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:Ma,story:"Santa looked over your tree farm and was impressed with how much you could accomplish in just one day. Today's goal is to get a workshop built up for the elves to work in - and apparently, they need quite a lot of space to work!"})),i(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:Ia,story:"Santa tells you that unfortunately there are quite a few naughty children out there this year, and he's going to need you to gather as much coal as you can for him to give out."})),i(()=>({day:4,shouldNotify:!1,layer:null,symbol:"",story:"Alright, it seems you finally have enough things setup to start bringing in the elves! Unfortunately, it seems they'll need to be retrained on how to help, since they're out of practice by 11 months!"})),i(()=>({day:5,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:6,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:7,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:8,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:9,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:10,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:11,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:12,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:13,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:14,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:15,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:16,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:17,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:18,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:19,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:20,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:21,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:22,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:23,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:24,shouldNotify:!1,layer:null,symbol:"",story:""}))];return{name:"Calendar",days:s,day:e,loreTitle:t,loreBody:n,minWidth:700,display:O(()=>c(V,null,[A.devSpeed===0?c("div",null,[y("Game Paused")]):null,A.devSpeed&&A.devSpeed!==1?c("div",null,[y("Dev Speed: "),ee(A.devSpeed),y("x")]):null,A.offlineTime?c("div",null,[y("Offline Time: "),fn(A.offlineTime)]):null,c(xe,null,null),c("div",{class:"advent"},[s.reduce((r,o)=>(r[r.length-1].length===4&&r.push([]),r[r.length-1].push(o),r),[[]]).map(r=>qe(...r))])]))}}),Aa=e=>[H,me,Ie,Ue],Ni=S(()=>!1);function Pa(e,t){}var ki=Object.freeze(Object.defineProperty({__proto__:null,main:H,getInitialLayers:Aa,hasWon:Ni,fixOldSave:Pa},Symbol.toStringTag,{value:"Module"}));const $a=R({components:{Context:pi},props:{index:{type:Number,required:!0},tab:{type:Function,required:!0},display:{type:P(Object,String,Function),required:!0},minimized:{type:Object,required:!0},minWidth:{type:P(Number,String),required:!0},name:{type:P(String),required:!0},color:P(String),minimizable:P(Boolean),nodes:{type:Object,required:!0}},setup(e){const{display:t,index:n,minimized:i,minWidth:s,tab:r}=fe(e),o=hi(t),u=S(()=>W.allowGoBack&&n.value>0&&!i.value);function f(){A.tabs.splice(l(e.index),1)}bt(()=>p(i.value,l(s.value))),Le([i,nr(s)],([v,b])=>p(v,b));function d(v){e.nodes.value=v}function p(v,b){const g=typeof b=="number"||Number.isNaN(parseInt(b))?b+"px":b,N=r.value();N!=null&&(v?(N.style.flexGrow="0",N.style.flexShrink="0",N.style.width="60px",N.style.minWidth=N.style.flexBasis="",N.style.margin="0"):(N.style.flexGrow="",N.style.flexShrink="",N.style.width="",N.style.minWidth=N.style.flexBasis=g,N.style.margin=""))}return{component:o,showGoBack:u,updateNodes:d,unref:l,goBack:f}}});function Ea(e,t,n,i,s,r){const o=dt("Context");return _(),M("div",{class:"layer-container",style:le({"--layer-color":e.unref(e.color)})},[e.showGoBack?(_(),M("button",{key:0,class:"goBack",onClick:t[0]||(t[0]=(...u)=>e.goBack&&e.goBack(...u))},"\u274C")):E("",!0),e.minimized.value?(_(),M("button",{key:1,class:"layer-tab minimized",onClick:t[1]||(t[1]=u=>e.minimized.value=!1)},[m("div",null,L(e.unref(e.name)),1)])):(_(),M("div",{key:2,class:re(["layer-tab",{showGoBack:e.showGoBack}])},[c(o,{onUpdateNodes:e.updateNodes},{default:F(()=>[(_(),U(ve(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(_(),M("button",{key:3,class:"minimize",onClick:t[2]||(t[2]=u=>e.minimized.value=!0)}," \u25BC ")):E("",!0)],4)}var xa=J($a,[["render",Ea],["__scopeId","data-v-0158bec3"]]);const Ci=e=>(Xe("data-v-4b4bda40"),e=e(),Ze(),e),Ta=Ci(()=>m("h2",null,"Changelog",-1)),Fa=Ci(()=>m("details",{open:""},[m("summary",null,[y("v0.0 Initial Commit - "),m("time",null,"2021-09-04")]),y(" This is the first release :D "),m("ul",null,[m("li",{class:"feature"},"Did everything"),m("li",{class:"fix"},"Had some fun"),m("li",{class:"breaking"},"Removed everything"),m("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),Ba=R({__name:"Changelog",setup(e,{expose:t}){const n=T(!1);return t({open(){n.value=!0}}),(i,s)=>(_(),U(je,{modelValue:n.value,"onUpdate:modelValue":s[0]||(s[0]=r=>n.value=r)},{header:F(()=>[Ta]),body:F(()=>[Fa]),_:1},8,["modelValue"]))}});var Da=J(Ba,[["__scopeId","data-v-4b4bda40"]]),Oa=R({props:{element:Object,display:{type:P(Object,String,Function),required:!0},style:P(Object,String,Array),classes:P(Object),direction:P(String),xoffset:P(String),yoffset:P(String),pinned:Object},setup(e){const{element:t,display:n,pinned:i}=fe(e),s=T(!1),r=S(()=>(oe(i)||s.value)&&o.value),o=At(n),u=Te(Q(O(()=>{const p=oe(t);return p==null?"":He(p)})));function f(p){const v=i;p.shiftKey&&v&&(v.value=!v.value,p.stopPropagation(),p.preventDefault())}const d=S(()=>oe(i)&&zt[ne.theme].showPin);return{Direction:K,isHovered:s,isShown:r,comp:o,elementComp:u,unref:l,togglePinned:f,showPin:d}}});const Ra={key:0,class:"material-icons pinned"};function Va(e,t,n,i,s,r){return _(),M("div",{class:re(["tooltip-container",{shown:e.isShown}]),onMouseenter:t[0]||(t[0]=o=>e.isHovered=!0),onMouseleave:t[1]||(t[1]=o=>e.isHovered=!1),onClickCapture:t[2]||(t[2]=(...o)=>e.togglePinned&&e.togglePinned(...o))},[Ge(e.$slots,"default",{},void 0,!0),e.elementComp?(_(),U(ve(e.elementComp),{key:0})):E("",!0),c(dn,{name:"fade"},{default:F(()=>{var o;return[e.isShown?(_(),M("div",{key:0,class:re(["tooltip",{top:e.unref(e.direction)===e.Direction.Up,left:e.unref(e.direction)===e.Direction.Left,right:e.unref(e.direction)===e.Direction.Right,bottom:e.unref(e.direction)===e.Direction.Down,...e.unref(e.classes)}]),style:le([{"--xoffset":e.unref(e.xoffset)||"0px","--yoffset":e.unref(e.yoffset)||"0px"},(o=e.unref(e.style))!=null?o:{}])},[e.showPin?(_(),M("span",Ra,"push_pin")):E("",!0),e.comp?(_(),U(ve(e.comp),{key:1})):E("",!0)],6)):E("",!0)]}),_:1})],34)}var se=J(Oa,[["render",Va],["__scopeId","data-v-6102fa3a"]]);const qa={class:"info-modal-header"},La=["src","alt"],Ua={class:"info-modal-title"},Ga={key:0},Ha={key:0},ja={key:0},za=m("div",null," Made in Profectus, by thepaperpilot with inspiration from Acameada and Jacorb ",-1),Wa=m("br",null,null,-1),Qa=m("br",null,null,-1),Ka=["href"],Ja=m("span",{class:"material-icons info-modal-discord"},"discord",-1),Xa=m("div",null,[m("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link"},[m("span",{class:"material-icons info-modal-discord"},"discord"),y(" The Paper Pilot Community ")])],-1),Za=m("div",null,[m("a",{href:"https://discord.gg/F3xveHV",class:"info-modal-discord-link"},[m("span",{class:"material-icons info-modal-discord"},"discord"),y(" The Modding Tree ")])],-1),Ya=m("br",null,null,-1);var el=R({__name:"Info",props:{changelog:null},setup(e,{expose:t}){const n=e,{title:i,logo:s,author:r,discordName:o,discordLink:u,versionNumber:f,versionTitle:d}=W,p=fe(n),v=T(!1),b=S(()=>fn(A.timePlayed)),g=S(()=>Q(O(()=>c(V,null,[Xs.map(he)]))));t({open(){v.value=!0}});function N(){var k;(k=l(p.changelog))==null||k.open()}return(k,x)=>(_(),U(je,{modelValue:v.value,"onUpdate:modelValue":x[0]||(x[0]=be=>v.value=be)},{header:F(()=>[m("div",qa,[l(s)?(_(),M("img",{key:0,class:"info-modal-logo",src:l(s),alt:l(i)},null,8,La)):E("",!0),m("div",Ua,[m("h2",null,L(l(i)),1),m("h4",null,[y(" v"+L(l(f)),1),l(d)?(_(),M("span",Ga,": "+L(l(d)),1)):E("",!0)])])])]),body:F(({shown:be})=>[be?(_(),M("div",Ha,[l(r)?(_(),M("div",ja,"By "+L(l(r)),1)):E("",!0),za,Wa,m("div",{class:"link",onClick:N},"Changelog"),Qa,m("div",null,[l(u)?(_(),M("a",{key:0,href:l(u),class:"info-modal-discord-link"},[Ja,y(" "+L(l(o)),1)],8,Ka)):E("",!0)]),Xa,Za,Ya,m("div",null,"Time Played: "+L(l(b)),1),(_(),U(ve(l(g))))])):E("",!0)]),_:1},8,["modelValue"]))}});const tl={class:"field"},nl=R({__name:"Toggle",props:{title:null,modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,i=S(()=>Q(l(n.title)||"","span")),s=S({get(){return!!n.modelValue},set(r){t("update:modelValue",r)}});return(r,o)=>(_(),M("label",tl,[Mn(m("input",{type:"checkbox",class:"toggle","onUpdate:modelValue":o[0]||(o[0]=u=>ce(s)?s.value=u:null)},null,512),[[qi,l(s)]]),(_(),U(ve(l(i))))]))}});var ot=J(nl,[["__scopeId","data-v-2b109500"]]);const Si=e=>(Xe("data-v-bc13791c"),e=e(),Ze(),e),il=Si(()=>m("div",{class:"header"},[m("h2",null,"Options")],-1)),sl=Si(()=>m("hr",null,null,-1));var rl=R({__name:"Options",setup(e,{expose:t}){const n=T(!1);t({open(){n.value=!0}});const i=Object.keys(zt).map(N=>({label:ri(N),value:N})),s=S(()=>Q(O(()=>c(V,null,[ci.map(he)])))),{showTPS:r,theme:o,unthrottled:u}=fe(ne),{autosave:f,offlineProd:d}=fe(A),p=S({get(){return A.devSpeed===0},set(N){A.devSpeed=N?0:null}}),v=O(()=>c("span",null,[y("Offline Production"),c(se,{display:"Save-specific"},{default:()=>[y("*")]})])),b=O(()=>c("span",null,[y("Autosave"),c(se,{display:"Save-specific"},{default:()=>[y("*")]})])),g=O(()=>c("span",null,[y("Pause game"),c(se,{display:"Save-specific"},{default:()=>[y("*")]})]));return(N,k)=>(_(),U(je,{modelValue:n.value,"onUpdate:modelValue":k[6]||(k[6]=x=>n.value=x)},{header:F(()=>[il]),body:F(()=>[c(Tn,{title:"Theme",options:l(i),modelValue:l(o),"onUpdate:modelValue":k[0]||(k[0]=x=>ce(o)?o.value=x:null)},null,8,["options","modelValue"]),(_(),U(ve(l(s)))),c(ot,{title:"Show TPS",modelValue:l(r),"onUpdate:modelValue":k[1]||(k[1]=x=>ce(r)?r.value=x:null)},null,8,["modelValue"]),sl,c(ot,{title:"Unthrottled",modelValue:l(u),"onUpdate:modelValue":k[2]||(k[2]=x=>ce(u)?u.value=x:null)},null,8,["modelValue"]),c(ot,{title:l(v),modelValue:l(d),"onUpdate:modelValue":k[3]||(k[3]=x=>ce(d)?d.value=x:null)},null,8,["title","modelValue"]),c(ot,{title:l(b),modelValue:l(f),"onUpdate:modelValue":k[4]||(k[4]=x=>ce(f)?f.value=x:null)},null,8,["title","modelValue"]),l(W).enablePausing?(_(),U(ot,{key:0,title:l(g),modelValue:l(p),"onUpdate:modelValue":k[5]||(k[5]=x=>ce(p)?p.value=x:null)},null,8,["title","modelValue"])):E("",!0)]),_:1},8,["modelValue"]))}});var al=J(rl,[["__scopeId","data-v-bc13791c"]]);const ll=["onSubmit"],ol={class:"field"},ul={key:0,class:"field-title"},cl=["placeholder"],dl=R({__name:"Text",props:{title:null,modelValue:null,textArea:{type:Boolean},placeholder:null,maxHeight:null,submitOnBlur:{type:Boolean}},emits:["update:modelValue","submit","cancel"],setup(e,{emit:t}){const n=e,i=At(Je(n,"title"),"span"),s=Te(null);cn(()=>{var f;(f=s.value)==null||f.focus()});const r=S({get(){return l(n.modelValue)||""},set(f){t("update:modelValue",f)}});function o(){t("submit")}function u(){n.submitOnBlur!==!1?t("submit"):t("cancel")}return(f,d)=>(_(),M("form",{onSubmit:Lt(o,["prevent"])},[m("div",ol,[l(i)?(_(),M("span",ul,[(_(),U(ve(l(i))))])):E("",!0),e.textArea?(_(),U(l(Wi),{key:1,modelValue:l(r),"onUpdate:modelValue":d[0]||(d[0]=p=>ce(r)?r.value=p:null),placeholder:e.placeholder,maxHeight:e.maxHeight,onBlur:u,ref_key:"field",ref:s},null,8,["modelValue","placeholder","maxHeight"])):Mn((_(),M("input",{key:2,type:"text","onUpdate:modelValue":d[1]||(d[1]=p=>ce(r)?r.value=p:null),placeholder:e.placeholder,class:re({fullWidth:!e.title}),onBlur:u,ref_key:"field",ref:s},null,42,cl)),[[Li,l(r)]])])],40,ll))}});var Mi=J(dl,[["__scopeId","data-v-67b44a54"]]);const fl={key:0},ml=["onClick","disabled"],hl={key:0},pl=["onClick"],gl=R({__name:"DangerButton",props:{disabled:{type:Boolean},skipConfirm:{type:Boolean}},emits:["click","confirmingChanged"],setup(e,{emit:t}){const i=fe(e),s=T(!1);Le(s,u=>{t("confirmingChanged",u)});function r(){if(l(i.skipConfirm)){t("click");return}s.value&&t("click"),s.value=!s.value}function o(){s.value=!1}return(u,f)=>(_(),M("span",{class:re(["container",{confirming:s.value}])},[s.value?(_(),M("span",fl,"Are you sure?")):E("",!0),m("button",{onClick:Lt(r,["stop"]),class:"button danger",disabled:e.disabled},[s.value?(_(),M("span",hl,"Yes")):Ge(u.$slots,"default",{key:1},void 0,!0)],8,ml),s.value?(_(),M("button",{key:1,class:"button",onClick:Lt(o,["stop"])},"No",8,pl)):E("",!0)],2))}});var vl=J(gl,[["__scopeId","data-v-2f8ef34c"]]);const yl=["onClick"],bl=R({__name:"FeedbackButton",props:{left:{type:Boolean}},emits:["click"],setup(e,{emit:t}){const n=T(!1),i=T(null);function s(){t("click"),i.value&&clearTimeout(i.value),n.value=!1,bt(()=>{n.value=!0,i.value=setTimeout(()=>n.value=!1,500)})}return(r,o)=>(_(),M("button",{onClick:Lt(s,["stop"]),class:re(["feedback",{activated:n.value,left:e.left}])},[Ge(r.$slots,"default",{},void 0,!0)],10,yl))}});var _l=J(bl,[["__scopeId","data-v-01a1b95c"]]);const Ye=e=>(Xe("data-v-5285ac49"),e=e(),Ze(),e),wl=Ye(()=>m("div",{class:"handle material-icons"},"drag_handle",-1)),Nl={key:0,class:"actions"},kl=Ye(()=>m("span",{class:"material-icons"},"content_paste",-1)),Cl=Ye(()=>m("span",{class:"material-icons"},"content_copy",-1)),Sl=Ye(()=>m("span",{class:"material-icons"},"edit",-1)),Ml=Ye(()=>m("span",{class:"material-icons",style:{margin:"-2px"}},"delete",-1)),Il={key:1,class:"actions"},Al=Ye(()=>m("span",{class:"material-icons"},"check",-1)),Pl=Ye(()=>m("span",{class:"material-icons"},"close",-1)),$l={key:2,class:"details"},El={class:"save-version"},xl=Ye(()=>m("br",null,null,-1)),Tl={key:0},Fl={key:1},Bl={key:3,class:"details"},Dl={key:4,class:"details error"},Ol=Ye(()=>m("br",null,null,-1)),Rl=R({__name:"Save",props:{save:null},emits:["export","open","duplicate","delete","editName"],setup(e,{emit:t}){const n=e,{save:i}=fe(n),s=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),r=T(!1),o=T(!1),u=T("");Le(r,()=>u.value=i.value.name||"");const f=S(()=>i.value&&i.value.id===A.id),d=S(()=>f.value?A.time:i.value&&i.value.time||0),p=hi(S(()=>{var b,g,N,k;return`Day ${(k=(N=(g=(b=i.value)==null?void 0:b.layers)==null?void 0:g.main)==null?void 0:N.day)!=null?k:1}`}));function v(){t("editName",u.value),r.value=!1}return(b,g)=>(_(),M("div",{class:re(["save",{active:l(f)}])},[wl,r.value?(_(),M("div",Il,[m("button",{onClick:v,class:"button"},[c(se,{display:"Save",direction:l(K).Left,class:"info"},{default:F(()=>[Al]),_:1},8,["direction"])]),m("button",{onClick:g[5]||(g[5]=N=>r.value=!r.value),class:"button"},[c(se,{display:"Cancel",direction:l(K).Left,class:"info"},{default:F(()=>[Pl]),_:1},8,["direction"])])])):(_(),M("div",Nl,[l(i).error==null&&!o.value?(_(),U(_l,{key:0,onClick:g[0]||(g[0]=N=>t("export")),class:"button",left:""},{default:F(()=>[c(se,{display:"Export",direction:l(K).Left,class:"info"},{default:F(()=>[kl]),_:1},8,["direction"])]),_:1})):E("",!0),l(i).error==null&&!o.value?(_(),M("button",{key:1,onClick:g[1]||(g[1]=N=>t("duplicate")),class:"button"},[c(se,{display:"Duplicate",direction:l(K).Left,class:"info"},{default:F(()=>[Cl]),_:1},8,["direction"])])):E("",!0),l(i).error==null&&!o.value?(_(),M("button",{key:2,onClick:g[2]||(g[2]=N=>r.value=!r.value),class:"button"},[c(se,{display:"Edit Name",direction:l(K).Left,class:"info"},{default:F(()=>[Sl]),_:1},8,["direction"])])):E("",!0),c(vl,{disabled:l(f),onClick:g[3]||(g[3]=N=>t("delete")),onConfirmingChanged:g[4]||(g[4]=N=>o.value=N)},{default:F(()=>[c(se,{display:"Delete",direction:l(K).Left,class:"info"},{default:F(()=>[Ml]),_:1},8,["direction"])]),_:1},8,["disabled"])])),l(i).error==null&&!r.value?(_(),M("div",$l,[m("button",{class:"button open",onClick:g[6]||(g[6]=N=>t("open"))},[m("h3",null,L(l(i).name),1)]),m("span",El,"v"+L(l(i).modVersion),1),xl,l(d)?(_(),M("div",Tl,"Last played "+L(l(s).format(l(d))),1)):E("",!0),l(p)?(_(),M("div",Fl,[(_(),U(ve(l(p))))])):E("",!0)])):l(i).error==null&&r.value?(_(),M("div",Bl,[c(Mi,{modelValue:u.value,"onUpdate:modelValue":g[7]||(g[7]=N=>u.value=N),class:"editname",onSubmit:v},null,8,["modelValue"])])):(_(),M("div",Dl,[y(" Error: Failed to load save with id "+L(l(i).id),1),Ol,y(L(l(i).error),1)]))],2))}});var Vl=J(Rl,[["__scopeId","data-v-5285ac49"]]);const Fn=e=>(Xe("data-v-3b9991aa"),e=e(),Ze(),e),ql=Fn(()=>m("h2",null,"Saves Manager",-1)),Ll={class:"modal-footer"},Ul={class:"field"},Gl=Fn(()=>m("span",{class:"field-title"},"Create Save",-1)),Hl={class:"field-buttons"},jl={class:"footer"},zl=Fn(()=>m("div",{style:{"flex-grow":"1"}},null,-1)),Wl=R({__name:"SavesManager",setup(e,{expose:t}){const n=T(!1),i=T(null);t({open(){n.value=!0}});const s=T(!1),r=T(""),o=T(null);Le(r,I=>{I?bt(()=>{try{if(I[0]!=="{")if(I[0]==="e")I=decodeURIComponent(escape(atob(I)));else if(I[0]==="\u1BE1")I=ut.decompressFromUTF16(I);else{console.warn("Unable to determine preset encoding",I),s.value=!0;return}const C=JSON.parse(I);if(typeof C!="object"){s.value=!0;return}const j=tn();C.id=j,Re(C),r.value="",s.value=!1,ne.saves.push(j)}catch{s.value=!0}}):s.value=!1});let u={},f=T(Object.keys(u).reduce((I,C)=>(I.push({label:C.split("/").slice(-1)[0].slice(0,-4),value:u[C]}),I),[]));const d=Sn({});function p(I){if(d[I]==null){let C=localStorage.getItem(I);if(C==null)d[I]={error:"Save doesn't exist in localStorage",id:I};else if(C==="dW5kZWZpbmVk")d[I]={error:"Save is undefined",id:I};else try{if(C[0]!=="{")if(C[0]==="e")C=decodeURIComponent(escape(atob(C)));else if(C[0]==="\u1BE1")C=ut.decompressFromUTF16(C);else return console.warn("Unable to determine preset encoding",C),s.value=!0,d[I]={error:"Unable to determine preset encoding",id:I},d[I];d[I]={...JSON.parse(C),id:I}}catch(j){d[I]={error:j,id:I},console.warn(`SavesManager: Failed to load info about save with id ${I}: -${j} -${C}`)}}return d[I]}Le(n,I=>{I&&Object.keys(d).forEach(C=>delete d[C])});const v=S(()=>ne.saves.reduce((I,C)=>(I[C]=p(C),I),{}));function b(I){let C;switch(A.id===I?C=li(A[ie]):C=JSON.stringify(v.value[I]),W.exportEncoding){default:console.warn(`Unknown save encoding: ${W.exportEncoding}. Defaulting to lz`);case"lz":C=ut.compressToUTF16(C);break;case"base64":C=btoa(unescape(encodeURIComponent(C)));break;case"plain":break}const j=document.createElement("textarea");j.value=C,document.body.appendChild(j),j.select(),j.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(j)}function g(I){A.id===I&&Re();const C={...v.value[I],id:tn()};Re(C),ne.saves.push(C.id)}function N(I){ne.saves=ne.saves.filter(C=>C!==I),localStorage.removeItem(I),d[I]=void 0}function k(I){v.value[A.id].time=A.time,Re(),d[A.id]=void 0,vt(v.value[I]),d[I]=void 0}function x(I){if(o.value=I,bt(()=>{o.value=null}),I[0]!=="{")if(I[0]==="e")I=decodeURIComponent(escape(atob(I)));else if(I[0]==="\u1BE1")I=ut.decompressFromUTF16(I);else{console.warn("Unable to determine preset encoding",I);return}const C=JSON.parse(I);C.id=tn(),Re(C),ne.saves.push(C.id),k(C.id)}function be(I,C){const j=v.value[I];j&&(j.name=C,A.id===I?(A.name=C,Re()):(Re(j),d[I]=void 0))}return(I,C)=>(_(),U(je,{modelValue:n.value,"onUpdate:modelValue":C[4]||(C[4]=j=>n.value=j),ref_key:"modal",ref:i},{header:F(()=>[ql]),body:F(({shown:j})=>[j?(_(),U(l(zi),{key:0,list:l(ne).saves,handle:".handle",itemKey:Ne=>Ne},{item:F(({element:Ne})=>[c(Vl,{save:l(v)[Ne],onOpen:De=>k(Ne),onExport:De=>b(Ne),onEditName:De=>be(Ne,De),onDuplicate:De=>g(Ne),onDelete:De=>N(Ne)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):E("",!0)]),footer:F(()=>[m("div",Ll,[c(Mi,{modelValue:r.value,"onUpdate:modelValue":C[0]||(C[0]=j=>r.value=j),title:"Import Save",placeholder:"Paste your save here!",class:re({importingFailed:s.value})},null,8,["modelValue","class"]),m("div",Ul,[Gl,m("div",Hl,[m("button",{class:"button",onClick:C[1]||(C[1]=j=>k(l(Mt)().id))},"New Game"),Object.keys(l(f)).length>0?(_(),U(Tn,{key:0,options:l(f),modelValue:o.value,"onUpdate:modelValue":C[2]||(C[2]=j=>x(j)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):E("",!0)])]),m("div",jl,[zl,m("button",{class:"button modal-default-button",onClick:C[3]||(C[3]=j=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var Ii=J(Wl,[["__scopeId","data-v-3b9991aa"]]);const Pe=e=>(Xe("data-v-4a3f8425"),e=e(),Ze(),e),Ql=["src","alt"],Kl={key:1,class:"title"},Jl=Pe(()=>m("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),Xl={class:"discord"},Zl={class:"discord-links"},Yl={key:0},eo=["href"],to=Pe(()=>m("li",null,[m("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),no=Pe(()=>m("li",null,[m("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),io={href:"https://forums.moddingtree.com/",target:"_blank"},so=Pe(()=>m("span",{class:"material-icons"},"forum",-1)),ro=Pe(()=>m("span",{class:"material-icons"},"info",-1)),ao=Pe(()=>m("span",{class:"material-icons"},"library_books",-1)),lo=Pe(()=>m("span",{class:"material-icons"},"settings",-1)),oo=Pe(()=>m("span",{class:"material-icons"},"library_books",-1)),uo=Pe(()=>m("span",{class:"material-icons"},"settings",-1)),co=Pe(()=>m("span",{class:"material-icons"},"info",-1)),fo={href:"https://forums.moddingtree.com/",target:"_blank"},mo=Pe(()=>m("span",{class:"material-icons"},"forum",-1)),ho={class:"discord"},po={class:"discord-links"},go={key:0},vo=["href"],yo=Pe(()=>m("li",null,[m("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),bo=Pe(()=>m("li",null,[m("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),_o=R({__name:"Nav",setup(e){const t=T(null),n=T(null),i=T(null),s=T(null),{useHeader:r,banner:o,title:u,discordName:f,discordLink:d,versionNumber:p}=W;function v(){window.open(d,"mywindow")}return(b,g)=>(_(),M(V,null,[l(r)?(_(),M("div",_t({key:0,class:"nav"},b.$attrs),[l(o)?(_(),M("img",{key:0,src:l(o),class:"banner",alt:l(u)},null,8,Ql)):(_(),M("div",Kl,L(l(u)),1)),m("div",{onClick:g[0]||(g[0]=N=>{var k;return(k=s.value)==null?void 0:k.open()}),class:"version-container"},[c(se,{display:"Changelog",direction:l(K).Down,class:"version"},{default:F(()=>[m("span",null,"v"+L(l(p)),1)]),_:1},8,["direction"])]),Jl,m("div",Xl,[m("span",{onClick:v,class:"material-icons"},"discord"),m("ul",Zl,[l(d)?(_(),M("li",Yl,[m("a",{href:l(d),target:"_blank"},L(l(f)),9,eo)])):E("",!0),to,no])]),m("div",null,[m("a",io,[c(se,{display:"Forums",direction:l(K).Down,yoffset:"5px"},{default:F(()=>[so]),_:1},8,["direction"])])]),m("div",{onClick:g[1]||(g[1]=N=>{var k;return(k=t.value)==null?void 0:k.open()})},[c(se,{display:"Info",direction:l(K).Down,class:"info"},{default:F(()=>[ro]),_:1},8,["direction"])]),m("div",{onClick:g[2]||(g[2]=N=>{var k;return(k=n.value)==null?void 0:k.open()})},[c(se,{display:"Saves",direction:l(K).Down,xoffset:"-20px"},{default:F(()=>[ao]),_:1},8,["direction"])]),m("div",{onClick:g[3]||(g[3]=N=>{var k;return(k=i.value)==null?void 0:k.open()})},[c(se,{display:"Options",direction:l(K).Down,xoffset:"-66px"},{default:F(()=>[lo]),_:1},8,["direction"])])],16)):(_(),M("div",_t({key:1,class:"overlay-nav"},b.$attrs),[m("div",{onClick:g[4]||(g[4]=N=>{var k;return(k=s.value)==null?void 0:k.open()}),class:"version-container"},[c(se,{display:"Changelog",direction:l(K).Right,xoffset:"25%",class:"version"},{default:F(()=>[m("span",null,"v"+L(l(p)),1)]),_:1},8,["direction"])]),m("div",{onClick:g[5]||(g[5]=N=>{var k;return(k=n.value)==null?void 0:k.open()})},[c(se,{display:"Saves",direction:l(K).Right},{default:F(()=>[oo]),_:1},8,["direction"])]),m("div",{onClick:g[6]||(g[6]=N=>{var k;return(k=i.value)==null?void 0:k.open()})},[c(se,{display:"Options",direction:l(K).Right},{default:F(()=>[uo]),_:1},8,["direction"])]),m("div",{onClick:g[7]||(g[7]=N=>{var k;return(k=t.value)==null?void 0:k.open()})},[c(se,{display:"Info",direction:l(K).Right},{default:F(()=>[co]),_:1},8,["direction"])]),m("div",null,[m("a",fo,[c(se,{display:"Forums",direction:l(K).Right,xoffset:"7px"},{default:F(()=>[mo]),_:1},8,["direction"])])]),m("div",ho,[m("span",{onClick:v,class:"material-icons"},"discord"),m("ul",po,[l(d)?(_(),M("li",go,[m("a",{href:l(d),target:"_blank"},L(l(f)),9,vo)])):E("",!0),yo,bo])])],16)),c(el,{ref_key:"info",ref:t,changelog:s.value},null,8,["changelog"]),c(Ii,{ref_key:"savesManager",ref:n},null,512),c(al,{ref_key:"options",ref:i},null,512),c(Da,{ref_key:"changelog",ref:s},null,512)],64))}});var Ai=J(_o,[["__scopeId","data-v-4a3f8425"]]);const Bn=e=>(Xe("data-v-62ae8bac"),e=e(),Ze(),e),wo={class:"inner-tab"},No={key:0},ko=Bn(()=>m("br",null,null,-1)),Co=y(" You can help continue the "),So=Bn(()=>m("i",null,"advent",-1)),Mo=y("ure at: "),Io=Bn(()=>m("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link"},[m("span",{class:"material-icons info-modal-discord"},"discord"),y(" The Paper Pilot Community ")],-1)),Ao=[ko,Co,So,Mo,Io],Po=R({__name:"Game",setup(e){const t=Je(A,"tabs"),n=S(()=>Object.keys(pe)),i=W.useHeader;function s(r){const{display:o,minimized:u,minWidth:f,name:d,color:p,minimizable:v,nodes:b}=r;return{display:o,minimized:u,minWidth:f,name:d,color:p,minimizable:v,nodes:b}}return(r,o)=>(_(),M("div",{class:re(["tabs-container",{useHeader:l(i)}])},[(_(!0),M(V,null,Jn(l(t),(u,f)=>{var d,p;return _(),M("div",{key:f,class:re(["tab",l((d=l(pe)[u])==null?void 0:d.classes)]),ref_for:!0,ref:`tab-${f}`,style:le(l((p=l(pe)[u])==null?void 0:p.style))},[f===0&&!l(i)?(_(),U(Ai,{key:0})):E("",!0),m("div",wo,[l(n).includes(u)?(_(),U(xa,_t({key:0},s(l(pe)[u]),{index:f,tab:()=>{var v;return(v=r.$refs[`tab-${f}`])==null?void 0:v[0]}}),null,16,["index","tab"])):(_(),U(ve(u),{key:1,index:f},null,8,["index"]))])],6)}),128)),c(je,{"model-value":l(H).loreBody.value!=="","onUpdate:modelValue":o[0]||(o[0]=()=>l(H).loreBody.value="")},{header:F(()=>[m("h2",null,L(l(H).loreTitle.value),1)]),body:F(()=>[y(L(l(H).loreBody.value)+" ",1),l(H).days[l(H).day.value-1].opened.value?E("",!0):(_(),M("div",No,Ao))]),_:1},8,["model-value"])],2))}});var $o=J(Po,[["__scopeId","data-v-62ae8bac"]]);const Kt=e=>(Xe("data-v-4a50ce42"),e=e(),Ze(),e),Eo={class:"game-over-modal-header"},xo=["src","alt"],To={class:"game-over-modal-title"},Fo=Kt(()=>m("h2",null,"Congratulations!",-1)),Bo={key:0},Do=Kt(()=>m("br",null,null,-1)),Oo=Kt(()=>m("div",null," Please check the Discord to discuss the game or to check for new content updates! ",-1)),Ro=Kt(()=>m("br",null,null,-1)),Vo=["href"],qo=Kt(()=>m("span",{class:"material-icons game-over-modal-discord"},"discord",-1)),Lo=R({__name:"GameOverScreen",setup(e){const{title:t,logo:n,discordName:i,discordLink:s,versionNumber:r,versionTitle:o}=W,u=S(()=>fn(A.timePlayed)),f=S(()=>Ni.value&&!A.keepGoing),d=Je(A,"autosave");function p(){A.keepGoing=!0}function v(){vt(Mt())}return(b,g)=>(_(),U(je,{"model-value":l(f)},{header:F(()=>[m("div",Eo,[l(n)?(_(),M("img",{key:0,class:"game-over-modal-logo",src:l(n),alt:l(t)},null,8,xo)):E("",!0),m("div",To,[Fo,m("h4",null,"You've beaten "+L(l(t))+" v"+L(l(r))+": "+L(l(o)),1)])])]),body:F(({shown:N})=>[N?(_(),M("div",Bo,[m("div",null,"It took you "+L(l(u))+" to beat the game.",1),Do,Oo,Ro,m("div",null,[m("a",{href:l(s),class:"game-over-modal-discord-link"},[qo,y(" "+L(l(i)),1)],8,Vo)]),c(ot,{title:"Autosave",modelValue:l(d),"onUpdate:modelValue":g[0]||(g[0]=k=>ce(d)?d.value=k:null)},null,8,["modelValue"])])):E("",!0)]),footer:F(()=>[m("div",{class:"game-over-footer"},[m("button",{onClick:p,class:"button"},"Keep Going"),m("button",{onClick:v,class:"button danger"},"Play Again")])]),_:1},8,["model-value"]))}});var Uo=J(Lo,[["__scopeId","data-v-4a50ce42"]]);const pn=e=>(Xe("data-v-3de07c06"),e=e(),Ze(),e),Go=pn(()=>m("div",{class:"nan-modal-header"},[m("h2",null,"NaN value detected!")],-1)),Ho={key:0},jo=pn(()=>m("br",null,null,-1)),zo=["href"],Wo=pn(()=>m("span",{class:"material-icons nan-modal-discord"},"discord",-1)),Qo=pn(()=>m("br",null,null,-1)),Ko={class:"nan-footer"},Jo=R({__name:"NaNScreen",setup(e){const{discordName:t,discordLink:n}=W,i=Je(A,"autosave"),s=Je(Z,"hasNaN"),r=T(null),o=S(()=>{var g;return(g=Z.NaNPath)==null?void 0:g.join(".")}),u=S(()=>{var g;return(g=Z.NaNPath)==null?void 0:g.slice(-1)[0]}),f=S(()=>Z.NaNReceiver&&u.value?Z.NaNReceiver[u.value]:null),d=S({get(){return A.devSpeed===0},set(g){A.devSpeed=g?null:0}});function p(){Z.NaNReceiver&&u.value&&(Z.NaNReceiver[u.value]=new a(0),Z.hasNaN=!1)}function v(){Z.NaNReceiver&&u.value&&(Z.NaNReceiver[u.value]=new a(1),Z.hasNaN=!1)}function b(){Z.NaNReceiver&&u.value&&(Z.NaNReceiver[u.value]=new a(NaN),Z.hasNaN=!1)}return(g,N)=>(_(),M(V,null,[c(je,_t({modelValue:l(s),"onUpdate:modelValue":N[4]||(N[4]=k=>ce(s)?s.value=k:null)},g.$attrs),{header:F(()=>[Go]),body:F(()=>[m("div",null,[y(' Attempted to assign "'+L(l(o))+'" to NaN',1),l(f)?(_(),M("span",Ho,L(" ")+"(previously "+L(l(ee)(l(f)))+")",1)):E("",!0),y(". Auto-saving has been "+L(l(i)?"enabled":"disabled")+". Check the console for more details, and consider sharing it with the developers on discord. ",1)]),jo,m("div",null,[m("a",{href:l(n),class:"nan-modal-discord-link"},[Wo,y(" "+L(l(t)),1)],8,zo)]),Qo,c(ot,{title:"Autosave",modelValue:l(i),"onUpdate:modelValue":N[0]||(N[0]=k=>ce(i)?i.value=k:null)},null,8,["modelValue"]),l(W).enablePausing?(_(),U(ot,{key:0,title:"Pause game",modelValue:l(d),"onUpdate:modelValue":N[1]||(N[1]=k=>ce(d)?d.value=k:null)},null,8,["modelValue"])):E("",!0)]),footer:F(()=>[m("div",Ko,[m("button",{onClick:N[2]||(N[2]=k=>{var x;return(x=r.value)==null?void 0:x.open()}),class:"button"},"Open Saves Manager"),m("button",{onClick:p,class:"button"},"Set to 0"),m("button",{onClick:v,class:"button"},"Set to 1"),l(f)&&l(a).neq(l(f),0)&&l(a).neq(l(f),1)?(_(),M("button",{key:0,onClick:N[3]||(N[3]=k=>s.value=!1),class:"button"}," Set to previous ")):E("",!0),m("button",{onClick:b,class:"button danger"},"Ignore")])]),_:1},16,["modelValue"]),c(Ii,{ref_key:"savesManager",ref:r},null,512)],64))}});var Xo=J(Jo,[["__scopeId","data-v-3de07c06"]]);const Zo={key:0,class:"tpsDisplay"},Yo={key:0,class:"low"},eu=R({__name:"TPS",setup(e){const t=S(()=>a.div(Z.lastTenTicks.length,Z.lastTenTicks.reduce((r,o)=>r+o,0))),n=T([]);Ae(()=>{n.value.push(Math.round(t.value.toNumber())),n.value.length>10&&(n.value=n.value.slice(1))});const i=S(()=>n.value.reduce((r,o)=>a.max(r,o),0)),s=S(()=>a.sub(t.value,i.value).gt(1));return(r,o)=>l(t).isNan()?E("",!0):(_(),M("div",Zo,[y(" TPS: "+L(l(z)(l(t)))+" ",1),c(dn,{name:"fade"},{default:F(()=>[l(s)?(_(),M("span",Yo,L(l(z)(l(i))),1)):E("",!0)]),_:1})]))}});var tu=J(eu,[["__scopeId","data-v-46a3ed5b"]]);var nu=R({__name:"App",setup(e){const t=W.useHeader,n=S(()=>zt[ne.theme].variables),i=Je(ne,"showTPS"),s=S(()=>Q(O(()=>c(V,null,[Zs.map(he)]))));return(r,o)=>(_(),M(V,null,[m("div",{id:"modal-root",style:le(l(n))},null,4),m("div",{class:re(["app",{useHeader:l(t)}]),style:le(l(n))},[l(t)?(_(),U(Ai,{key:0})):E("",!0),c($o),l(l(i))?(_(),U(tu,{key:1})):E("",!0),c(Uo),c(Xo),(_(),U(ve(l(s))))],6)],64))}});var iu=J(nu,[["__scopeId","data-v-7c41425b"]]);function su(e={}){const{immediate:t=!1,onNeedRefresh:n,onOfflineReady:i,onRegistered:s,onRegisterError:r}=e;let o,u;const f=async(d=!0)=>{d&&(o==null||o.addEventListener("controlling",p=>{p.isUpdate&&window.location.reload()})),u&&u.waiting&&await Ki(u.waiting,{type:"SKIP_WAITING"})};if("serviceWorker"in navigator){o=new Qi("./sw.js",{scope:"./",type:"classic"}),o.addEventListener("activated",d=>{d.isUpdate||i==null||i()});{const d=()=>{n==null||n()};o.addEventListener("waiting",d),o.addEventListener("externalwaiting",d)}o.register({immediate:t}).then(d=>{u=d,s==null||s(d)}).catch(d=>{r==null||r(d)})}return f}function ru(e={}){const{immediate:t=!0,onNeedRefresh:n,onOfflineReady:i,onRegistered:s,onRegisterError:r}=e,o=T(!1),u=T(!1);return{updateServiceWorker:su({immediate:t,onNeedRefresh(){o.value=!0,n==null||n()},onOfflineReady(){u.value=!0,i==null||i()},onRegistered:s,onRegisterError:r}),offlineReady:u,needRefresh:o}}document.title=W.title;window.projInfo=W;if(W.id==="")throw"Project ID is empty! Please select a unique ID for this project in /src/data/projInfo.json";requestAnimationFrame(async()=>{console.log(`%cMade in Profectus%c -Learn more at www.moddingtree.com`,"font-weight: bold; font-size: 24px; color: #A3BE8C; background: #2E3440; padding: 4px 8px; border-radius: 8px;","padding: 4px;"),await Ws();const{globalBus:e,startGameLoop:t}=await rn(()=>Promise.resolve().then(function(){return zs}),void 0),n=window.vue=Ui(iu);e.emit("setupVue",n),n.mount("#app"),bt(()=>{const i=Zn(),{updateServiceWorker:s}=ru({onNeedRefresh(){i.info("New content available, click or reload to update.",{timeout:!1,closeOnClick:!1,draggable:!1,icon:{iconClass:"material-icons",iconChildren:"refresh",iconTag:"i"},rtl:!1,onClick(){s()}})},onOfflineReady(){i.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(r){r&&setInterval(r.update,60*60*1e3)}})}),t()}); diff --git a/assets/index.5721d5fe.js b/assets/index.5721d5fe.js new file mode 100644 index 0000000..435ac89 --- /dev/null +++ b/assets/index.5721d5fe.js @@ -0,0 +1,15 @@ +/* empty css */import"./vue.92681fcb.js";import{Z as S,u as An,q as nn,C as r,b1 as ze,aa as L,aE as _,a0 as M,a1 as m,aK as Ke,G as ue,t as x,aC as Yn,w as Le,b2 as Fe,a8 as u,O as B,ao as qi,I as he,ay as gn,ar as Mt,aG as rn,A as _e,_ as j,b6 as R,b8 as En,bs as Li,aq as It,bu as Xt,bb as vn,T as Gi,a7 as v,j as Ui,l as me,bv as zn,J as H,$ as T,aH as tt,aF as nt,al as dn,aL as pt,aN as ke,z as et,H as Hi,aJ as ei,bn as ji,br as zi,be as Wi}from"./@vue.4ce677c2.js";import{i as Qi}from"./is-plain-object.906d88e8.js";import{c as ti}from"./nanoevents.1080beb7.js";import{L as mt}from"./lz-string.731cedc5.js";import{Y as Ki}from"./vue-next-select.a2bfab1d.js";import{s as Ji,u as ni}from"./vue-toastification.6f567382.js";import{D as Xi}from"./vuedraggable.7949458c.js";import{p as Zi}from"./vue-textarea-autosize.35804eaf.js";import{v as Yi,n as es}from"./workbox-window.8d14e8b7.js";import"./sortablejs.29100d8a.js";const ts=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const l of s)if(l.type==="childList")for(const o of l.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const l={};return s.integrity&&(l.integrity=s.integrity),s.referrerpolicy&&(l.referrerPolicy=s.referrerpolicy),s.crossorigin==="use-credentials"?l.credentials="include":s.crossorigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function i(s){if(s.ep)return;s.ep=!0;const l=n(s);fetch(s.href,l)}};ts();const ns="modulepreload",Wn={},is="./",fn=function(t,n){return!n||n.length===0?t():Promise.all(n.map(i=>{if(i=`${is}${i}`,i in Wn)return;Wn[i]=!0;const s=i.endsWith(".css"),l=s?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${i}"]${l}`))return;const o=document.createElement("link");if(o.rel=s?"stylesheet":ns,s||(o.as="script",o.crossOrigin=""),o.href=i,document.head.appendChild(o),s)return new Promise((c,f)=>{o.addEventListener("load",c),o.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>t())},ss="./projInfo-schema.json",as="Advent Incremental",ls="An incremental game you play a day at a time, leading up to Christmas!",rs="advent-incremental",os="thepaperpilot",us="",cs="",ds="0.2",fs="Initial Commit",ms=!0,hs=!1,ps=2,gs=!0,vs=null,ys="",bs=["main"],_s=3600,ws=0,Ns=!0,ks="base64";var W={$schema:ss,title:as,description:ls,id:rs,author:os,discordName:us,discordLink:cs,versionNumber:ds,versionTitle:fs,allowGoBack:ms,defaultShowSmall:hs,defaultDecimalsShown:ps,useHeader:gs,banner:vs,logo:ys,initialTabs:bs,maxTickLength:_s,offlineLimit:ws,enablePausing:Ns,exportEncoding:ks};const Sn=17,Cs=9e15,Ss=Math.log10(9e15),Ms=1/9e15,Is=308,As=-324,Qn=5,Es=function(){const e=[];for(let n=As+1;n<=Is;n++)e.push(Number("1e"+n));const t=323;return function(n){return e[n+t]}}(),Nt=[2,Math.E,3,4,5,6,7,8,9,10],Ps=[[1,1.0891168053867777,1.1789745164521264,1.2701428397304229,1.3632066654400328,1.4587804913784246,1.557523817412741,1.660158301473385,1.767487542936873,1.8804205225512542,2],[1,1.1121114330934,1.23103892493161,1.35838369631113,1.49605193039935,1.64635423375119,1.81213853570186,1.99697132461829,2.20538955455724,2.44325744833852,Math.E],[1,1.1187738849693603,1.2464963939368214,1.38527004705667,1.5376664685821402,1.7068895236551784,1.897001227148399,2.1132403089001035,2.362480153784171,2.6539010333870774,3],[1,1.1367350847096405,1.2889510672956703,1.4606478703324786,1.6570295196661111,1.8850062585672889,2.1539465047453485,2.476829779693097,2.872061932789197,3.3664204535587183,4],[1,1.1494592900767588,1.319708228183931,1.5166291280087583,1.748171114438024,2.0253263297298045,2.3636668498288547,2.7858359149579424,3.3257226212448145,4.035730287722532,5],[1,1.159225940787673,1.343712473580932,1.5611293155111927,1.8221199554561318,2.14183924486326,2.542468319282638,3.0574682501653316,3.7390572020926873,4.6719550537360774,6],[1,1.1670905356972596,1.3632807444991446,1.5979222279405536,1.8842640123816674,2.2416069644878687,2.69893426559423,3.3012632110403577,4.121250340630164,5.281493033448316,7],[1,1.1736630594087796,1.379783782386201,1.6292821855668218,1.9378971836180754,2.3289975651071977,2.8384347394720835,3.5232708454565906,4.478242031114584,5.868592169644505,8],[1,1.1793017514670474,1.394054150657457,1.65664127441059,1.985170999970283,2.4069682290577457,2.9647310119960752,3.7278665320924946,4.814462547283592,6.436522247411611,9],[1,1.18422737399915,1.4066113788546144,1.680911177655277,2.027492094355525,2.4775152854601967,3.080455730250329,3.918234505962507,5.1332705696484595,6.9878696918072905,10]],$s=[[-1,-.9194161097107025,-.8335625019330468,-.7425599821143978,-.6466611521029437,-.5462617907227869,-.4419033816638769,-.3342645487554494,-.224140440909962,-.11241087890006762,0],[-1,-.90603157029014,-.80786507256596,-.7064666939634,-.60294836853664,-.49849837513117,-.39430303318768,-.29147201034755,-.19097820800866,-.09361896280296,0],[-1,-.9021579584316141,-.8005762598234203,-.6964780623319391,-.5911906810998454,-.486050182576545,-.3823089430815083,-.28106046722897615,-.1831906535795894,-.08935809204418144,0],[-1,-.8917227442365535,-.781258746326964,-.6705130326902455,-.5612813129406509,-.4551067709033134,-.35319256652135966,-.2563741554088552,-.1651412821106526,-.0796919581982668,0],[-1,-.8843387974366064,-.7678744063886243,-.6529563724510552,-.5415870994657841,-.4352842206588936,-.33504449124791424,-.24138853420685147,-.15445285440944467,-.07409659641336663,0],[-1,-.8786709358426346,-.7577735191184886,-.6399546189952064,-.527284921869926,-.4211627631006314,-.3223479611761232,-.23107655627789858,-.1472057700818259,-.07035171210706326,0],[-1,-.8740862815291583,-.7497032990976209,-.6297119746181752,-.5161838335958787,-.41036238255751956,-.31277212146489963,-.2233976621705518,-.1418697367979619,-.06762117662323441,0],[-1,-.8702632331800649,-.7430366914122081,-.6213373075161548,-.5072025698095242,-.40171437727184167,-.30517930701410456,-.21736343968190863,-.137710238299109,-.06550774483471955,0],[-1,-.8670016295947213,-.7373984232432306,-.6143173985094293,-.49973884395492807,-.394584953527678,-.2989649949848695,-.21245647317021688,-.13434688362382652,-.0638072667348083,0],[-1,-.8641642839543857,-.732534623168535,-.6083127477059322,-.4934049257184696,-.3885773075899922,-.29376029055315767,-.2083678561173622,-.13155653399373268,-.062401588652553186,0]],h=function(t){return a.fromValue_noAlloc(t)},V=function(e,t,n){return a.fromComponents(e,t,n)},U=function(t,n,i){return a.fromComponents_noNormalize(t,n,i)},ct=function(t,n){const i=n+1,s=Math.ceil(Math.log10(Math.abs(t))),l=Math.round(t*Math.pow(10,i-s))*Math.pow(10,s-i);return parseFloat(l.toFixed(Math.max(i-s,0)))},Mn=function(e){return Math.sign(e)*Math.log10(Math.abs(e))},Ts=function(e){if(!isFinite(e))return e;if(e<-50)return e===Math.trunc(e)?Number.NEGATIVE_INFINITY:0;let t=1;for(;e<10;)t=t*e,++e;e-=1;let n=.9189385332046727;n=n+(e+.5)*Math.log(e),n=n-e;const i=e*e;let s=e;return n=n+1/(12*s),s=s*i,n=n+1/(360*s),s=s*i,n=n+1/(1260*s),s=s*i,n=n+1/(1680*s),s=s*i,n=n+1/(1188*s),s=s*i,n=n+691/(360360*s),s=s*i,n=n+7/(1092*s),s=s*i,n=n+3617/(122400*s),Math.exp(n)/t},ii=.5671432904097838,Kn=function(e,t=1e-10){let n,i;if(!Number.isFinite(e)||e===0)return e;if(e===1)return ii;e<10?n=0:n=Math.log(e)-Math.log(Math.log(e));for(let s=0;s<100;++s){if(i=(e*Math.exp(-n)+n*n)/(n+1),Math.abs(i-n).5?1:-1;if(Math.random()*20<1)return U(t,0,1);const n=Math.floor(Math.random()*(e+1));let i=n===0?Math.random()*616-308:Math.random()*16;Math.random()>.9&&(i=Math.trunc(i));let s=Math.pow(10,i);return Math.random()>.9&&(s=Math.trunc(s)),V(t,n,s)}static affordGeometricSeries_core(e,t,n,i){const s=t.mul(n.pow(i));return w.floor(e.div(s).mul(n.sub(1)).add(1).log10().div(n.log10()))}static sumGeometricSeries_core(e,t,n,i){return t.mul(n.pow(i)).mul(w.sub(1,n.pow(e))).div(w.sub(1,n))}static affordArithmeticSeries_core(e,t,n,i){const l=t.add(i.mul(n)).sub(n.div(2)),o=l.pow(2);return l.neg().add(o.add(n.mul(e).mul(2)).sqrt()).div(n).floor()}static sumArithmeticSeries_core(e,t,n,i){const s=t.add(i.mul(n));return e.div(2).mul(s.mul(2).plus(e.sub(1).mul(n)))}static efficiencyOfPurchase_core(e,t,n){return e.div(t).add(e.div(n))}normalize(){if(this.sign===0||this.mag===0&&this.layer===0)return this.sign=0,this.mag=0,this.layer=0,this;if(this.layer===0&&this.mag<0&&(this.mag=-this.mag,this.sign=-this.sign),this.layer===0&&this.mag=Cs)return this.layer+=1,this.mag=t*Math.log10(e),this;for(;e0;)this.layer-=1,this.layer===0?this.mag=Math.pow(10,this.mag):(this.mag=t*Math.pow(10,e),e=Math.abs(this.mag),t=Math.sign(this.mag));return this.layer===0&&(this.mag<0?(this.mag=-this.mag,this.sign=-this.sign):this.mag===0&&(this.sign=0)),this}fromComponents(e,t,n){return this.sign=e,this.layer=t,this.mag=n,this.normalize(),this}fromComponents_noNormalize(e,t,n){return this.sign=e,this.layer=t,this.mag=n,this}fromMantissaExponent(e,t){return this.layer=1,this.sign=Math.sign(e),e=Math.abs(e),this.mag=t+Math.log10(e),this.normalize(),this}fromMantissaExponent_noNormalize(e,t){return this.fromMantissaExponent(e,t),this}fromDecimal(e){return this.sign=e.sign,this.layer=e.layer,this.mag=e.mag,this}fromNumber(e){return this.mag=Math.abs(e),this.sign=Math.sign(e),this.layer=0,this.normalize(),this}fromString(e){e=e.replace(",","");const t=e.split("^^^");if(t.length===2){const b=parseFloat(t[0]),g=parseFloat(t[1]),N=t[1].split(";");let k=1;if(N.length===2&&(k=parseFloat(N[1]),isFinite(k)||(k=1)),isFinite(b)&&isFinite(g)){const E=w.pentate(b,g,k);return this.sign=E.sign,this.layer=E.layer,this.mag=E.mag,this}}const n=e.split("^^");if(n.length===2){const b=parseFloat(n[0]),g=parseFloat(n[1]),N=n[1].split(";");let k=1;if(N.length===2&&(k=parseFloat(N[1]),isFinite(k)||(k=1)),isFinite(b)&&isFinite(g)){const E=w.tetrate(b,g,k);return this.sign=E.sign,this.layer=E.layer,this.mag=E.mag,this}}const i=e.split("^");if(i.length===2){const b=parseFloat(i[0]),g=parseFloat(i[1]);if(isFinite(b)&&isFinite(g)){const N=w.pow(b,g);return this.sign=N.sign,this.layer=N.layer,this.mag=N.mag,this}}e=e.trim().toLowerCase();let s,l,o=e.split("pt");if(o.length===2){s=10,l=parseFloat(o[0]),o[1]=o[1].replace("(",""),o[1]=o[1].replace(")","");let b=parseFloat(o[1]);if(isFinite(b)||(b=1),isFinite(s)&&isFinite(l)){const g=w.tetrate(s,l,b);return this.sign=g.sign,this.layer=g.layer,this.mag=g.mag,this}}if(o=e.split("p"),o.length===2){s=10,l=parseFloat(o[0]),o[1]=o[1].replace("(",""),o[1]=o[1].replace(")","");let b=parseFloat(o[1]);if(isFinite(b)||(b=1),isFinite(s)&&isFinite(l)){const g=w.tetrate(s,l,b);return this.sign=g.sign,this.layer=g.layer,this.mag=g.mag,this}}const c=e.split("e"),f=c.length-1;if(f===0){const b=parseFloat(e);if(isFinite(b))return this.fromNumber(b)}else if(f===1){const b=parseFloat(e);if(isFinite(b)&&b!==0)return this.fromNumber(b)}const d=e.split("e^");if(d.length===2){this.sign=1,d[0].charAt(0)=="-"&&(this.sign=-1);let b="";for(let g=0;g=43&&N<=57||N===101)b+=d[1].charAt(g);else return this.layer=parseFloat(b),this.mag=parseFloat(d[1].substr(g+1)),this.normalize(),this}}if(f<1)return this.sign=0,this.layer=0,this.mag=0,this;const p=parseFloat(c[0]);if(p===0)return this.sign=0,this.layer=0,this.mag=0,this;let y=parseFloat(c[c.length-1]);if(f>=2){const b=parseFloat(c[c.length-2]);isFinite(b)&&(y*=Math.sign(b),y+=Mn(b))}if(!isFinite(p))this.sign=c[0]==="-"?-1:1,this.layer=f,this.mag=y;else if(f===1)this.sign=Math.sign(p),this.layer=1,this.mag=y+Math.log10(Math.abs(p));else if(this.sign=Math.sign(p),this.layer=f,f===2){const b=w.mul(V(1,2,y),h(p));return this.sign=b.sign,this.layer=b.layer,this.mag=b.mag,this}else this.mag=y;return this.normalize(),this}fromValue(e){return e instanceof w||e!=null&&typeof e=="object"&&"sign"in e&&"mag"in e&&"layer"in e?this.fromDecimal(e):typeof e=="number"?this.fromNumber(e):typeof e=="string"?this.fromString(e):(this.sign=0,this.layer=0,this.mag=0,this)}toNumber(){return Number.isFinite(this.layer)?this.layer===0?this.sign*this.mag:this.layer===1?this.sign*Math.pow(10,this.mag):this.mag>0?this.sign>0?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:0:Number.NaN}mantissaWithDecimalPlaces(e){return isNaN(this.m)?Number.NaN:this.m===0?0:ct(this.m,e)}magnitudeWithDecimalPlaces(e){return isNaN(this.mag)?Number.NaN:this.mag===0?0:ct(this.mag,e)}toString(){return isNaN(this.layer)||isNaN(this.sign)||isNaN(this.mag)?"NaN":this.mag===Number.POSITIVE_INFINITY||this.layer===Number.POSITIVE_INFINITY?this.sign===1?"Infinity":"-Infinity":this.layer===0?this.mag<1e21&&this.mag>1e-7||this.mag===0?(this.sign*this.mag).toString():this.m+"e"+this.e:this.layer===1?this.m+"e"+this.e:this.layer<=Qn?(this.sign===-1?"-":"")+"e".repeat(this.layer)+this.mag:(this.sign===-1?"-":"")+"(e^"+this.layer+")"+this.mag}toExponential(e){return this.layer===0?(this.sign*this.mag).toExponential(e):this.toStringWithDecimalPlaces(e)}toFixed(e){return this.layer===0?(this.sign*this.mag).toFixed(e):this.toStringWithDecimalPlaces(e)}toPrecision(e){return this.e<=-7?this.toExponential(e-1):e>this.e?this.toFixed(e-this.exponent-1):this.toExponential(e-1)}valueOf(){return this.toString()}toJSON(){return this.toString()}toStringWithDecimalPlaces(e){return this.layer===0?this.mag<1e21&&this.mag>1e-7||this.mag===0?(this.sign*this.mag).toFixed(e):ct(this.m,e)+"e"+ct(this.e,e):this.layer===1?ct(this.m,e)+"e"+ct(this.e,e):this.layer<=Qn?(this.sign===-1?"-":"")+"e".repeat(this.layer)+ct(this.mag,e):(this.sign===-1?"-":"")+"(e^"+this.layer+")"+ct(this.mag,e)}abs(){return U(this.sign===0?0:1,this.layer,this.mag)}neg(){return U(-this.sign,this.layer,this.mag)}negate(){return this.neg()}negated(){return this.neg()}sgn(){return this.sign}round(){return this.mag<0?w.dZero:this.layer===0?V(this.sign,0,Math.round(this.mag)):this}floor(){return this.mag<0?w.dZero:this.layer===0?V(this.sign,0,Math.floor(this.mag)):this}ceil(){return this.mag<0?w.dZero:this.layer===0?V(this.sign,0,Math.ceil(this.mag)):this}trunc(){return this.mag<0?w.dZero:this.layer===0?V(this.sign,0,Math.trunc(this.mag)):this}add(e){const t=h(e);if(!Number.isFinite(this.layer))return this;if(!Number.isFinite(t.layer)||this.sign===0)return t;if(t.sign===0)return this;if(this.sign===-t.sign&&this.layer===t.layer&&this.mag===t.mag)return U(0,0,0);let n,i;if(this.layer>=2||t.layer>=2)return this.maxabs(t);if(w.cmpabs(this,t)>0?(n=this,i=t):(n=t,i=this),n.layer===0&&i.layer===0)return h(n.sign*n.mag+i.sign*i.mag);const s=n.layer*Math.sign(n.mag),l=i.layer*Math.sign(i.mag);if(s-l>=2)return n;if(s===0&&l===-1){if(Math.abs(i.mag-Math.log10(n.mag))>Sn)return n;{const o=Math.pow(10,Math.log10(n.mag)-i.mag),c=i.sign+n.sign*o;return V(Math.sign(c),1,i.mag+Math.log10(Math.abs(c)))}}if(s===1&&l===0){if(Math.abs(n.mag-Math.log10(i.mag))>Sn)return n;{const o=Math.pow(10,n.mag-Math.log10(i.mag)),c=i.sign+n.sign*o;return V(Math.sign(c),1,Math.log10(i.mag)+Math.log10(Math.abs(c)))}}if(Math.abs(n.mag-i.mag)>Sn)return n;{const o=Math.pow(10,n.mag-i.mag),c=i.sign+n.sign*o;return V(Math.sign(c),1,i.mag+Math.log10(Math.abs(c)))}}plus(e){return this.add(e)}sub(e){return this.add(h(e).neg())}subtract(e){return this.sub(e)}minus(e){return this.sub(e)}mul(e){const t=h(e);if(!Number.isFinite(this.layer))return this;if(!Number.isFinite(t.layer))return t;if(this.sign===0||t.sign===0)return U(0,0,0);if(this.layer===t.layer&&this.mag===-t.mag)return U(this.sign*t.sign,0,1);let n,i;if(this.layer>t.layer||this.layer==t.layer&&Math.abs(this.mag)>Math.abs(t.mag)?(n=this,i=t):(n=t,i=this),n.layer===0&&i.layer===0)return h(n.sign*i.sign*n.mag*i.mag);if(n.layer>=3||n.layer-i.layer>=2)return V(n.sign*i.sign,n.layer,n.mag);if(n.layer===1&&i.layer===0)return V(n.sign*i.sign,1,n.mag+Math.log10(i.mag));if(n.layer===1&&i.layer===1)return V(n.sign*i.sign,1,n.mag+i.mag);if(n.layer===2&&i.layer===1){const s=V(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(V(Math.sign(i.mag),i.layer-1,Math.abs(i.mag)));return V(n.sign*i.sign,s.layer+1,s.sign*s.mag)}if(n.layer===2&&i.layer===2){const s=V(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(V(Math.sign(i.mag),i.layer-1,Math.abs(i.mag)));return V(n.sign*i.sign,s.layer+1,s.sign*s.mag)}throw Error("Bad arguments to mul: "+this+", "+e)}multiply(e){return this.mul(e)}times(e){return this.mul(e)}div(e){const t=h(e);return this.mul(t.recip())}divide(e){return this.div(e)}divideBy(e){return this.div(e)}dividedBy(e){return this.div(e)}recip(){return this.mag===0?w.dNaN:this.layer===0?V(this.sign,0,1/this.mag):V(this.sign,this.layer,-this.mag)}reciprocal(){return this.recip()}reciprocate(){return this.recip()}cmp(e){const t=h(e);return this.sign>t.sign?1:this.sign0?this.layer:-this.layer,i=t.mag>0?t.layer:-t.layer;return n>i?1:nt.mag?1:this.mag0?t:this}clamp(e,t){return this.max(e).min(t)}clampMin(e){return this.max(e)}clampMax(e){return this.min(e)}cmp_tolerance(e,t){const n=h(e);return this.eq_tolerance(n,t)?0:this.cmp(n)}compare_tolerance(e,t){return this.cmp_tolerance(e,t)}eq_tolerance(e,t){const n=h(e);if(t==null&&(t=1e-7),this.sign!==n.sign||Math.abs(this.layer-n.layer)>1)return!1;let i=this.mag,s=n.mag;return this.layer>n.layer&&(s=Mn(s)),this.layer0?V(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):V(1,0,Math.log10(this.mag))}log10(){return this.sign<=0?w.dNaN:this.layer>0?V(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):V(this.sign,0,Math.log10(this.mag))}log(e){return e=h(e),this.sign<=0||e.sign<=0||e.sign===1&&e.layer===0&&e.mag===1?w.dNaN:this.layer===0&&e.layer===0?V(this.sign,0,Math.log(this.mag)/Math.log(e.mag)):w.div(this.log10(),e.log10())}log2(){return this.sign<=0?w.dNaN:this.layer===0?V(this.sign,0,Math.log2(this.mag)):this.layer===1?V(Math.sign(this.mag),0,Math.abs(this.mag)*3.321928094887362):this.layer===2?V(Math.sign(this.mag),1,Math.abs(this.mag)+.5213902276543247):V(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}ln(){return this.sign<=0?w.dNaN:this.layer===0?V(this.sign,0,Math.log(this.mag)):this.layer===1?V(Math.sign(this.mag),0,Math.abs(this.mag)*2.302585092994046):this.layer===2?V(Math.sign(this.mag),1,Math.abs(this.mag)+.36221568869946325):V(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}logarithm(e){return this.log(e)}pow(e){const t=h(e),n=this,i=t;if(n.sign===0)return i.eq(0)?U(1,0,1):n;if(n.sign===1&&n.layer===0&&n.mag===1)return n;if(i.sign===0)return U(1,0,1);if(i.sign===1&&i.layer===0&&i.mag===1)return n;const s=n.absLog10().mul(i).pow10();return this.sign===-1?Math.abs(i.toNumber()%2)%2===1?s.neg():Math.abs(i.toNumber()%2)%2===0?s:w.dNaN:s}pow10(){if(!Number.isFinite(this.layer)||!Number.isFinite(this.mag))return w.dNaN;let e=this;if(e.layer===0){const t=Math.pow(10,e.sign*e.mag);if(Number.isFinite(t)&&Math.abs(t)>=.1)return V(1,0,t);if(e.sign===0)return w.dOne;e=U(e.sign,e.layer+1,Math.log10(e.mag))}return e.sign>0&&e.mag>=0?V(e.sign,e.layer+1,e.mag):e.sign<0&&e.mag>=0?V(-e.sign,e.layer+1,-e.mag):w.dOne}pow_base(e){return h(e).pow(this)}root(e){const t=h(e);return this.pow(t.recip())}factorial(){return this.mag<0?this.add(1).gamma():this.layer===0?this.add(1).gamma():this.layer===1?w.exp(w.mul(this,w.ln(this).sub(1))):w.exp(this)}gamma(){if(this.mag<0)return this.recip();if(this.layer===0){if(this.lt(U(1,0,24)))return h(Ts(this.sign*this.mag));const e=this.mag-1;let t=.9189385332046727;t=t+(e+.5)*Math.log(e),t=t-e;const n=e*e;let i=e,s=12*i,l=1/s,o=t+l;if(o===t||(t=o,i=i*n,s=360*i,l=1/s,o=t-l,o===t))return w.exp(t);t=o,i=i*n,s=1260*i;let c=1/s;return t=t+c,i=i*n,s=1680*i,c=1/s,t=t-c,w.exp(t)}else return this.layer===1?w.exp(w.mul(this,w.ln(this).sub(1))):w.exp(this)}lngamma(){return this.gamma().ln()}exp(){return this.mag<0?w.dOne:this.layer===0&&this.mag<=709.7?h(Math.exp(this.sign*this.mag)):this.layer===0?V(1,1,this.sign*Math.log10(Math.E)*this.mag):this.layer===1?V(1,2,this.sign*(Math.log10(.4342944819032518)+this.mag)):V(1,this.layer+1,this.sign*this.mag)}sqr(){return this.pow(2)}sqrt(){if(this.layer===0)return h(Math.sqrt(this.sign*this.mag));if(this.layer===1)return V(1,2,Math.log10(this.mag)-.3010299956639812);{const e=w.div(U(this.sign,this.layer-1,this.mag),U(1,0,2));return e.layer+=1,e.normalize(),e}}cube(){return this.pow(3)}cbrt(){return this.pow(1/3)}tetrate(e=2,t=U(1,0,1)){if(e===1)return w.pow(this,t);if(e===0)return new w(t);if(this.eq(w.dOne))return w.dOne;if(this.eq(-1))return w.pow(this,t);if(e===Number.POSITIVE_INFINITY){const s=this.toNumber();if(s<=1.444667861009766&&s>=.06598803584531254){if(s>1.444667861009099)return new w(Math.E);const l=w.ln(this).neg();return l.lambertw().div(l)}else return s>1.444667861009766?new w(Number.POSITIVE_INFINITY):w.dNaN}if(this.eq(w.dZero)){let s=Math.abs((e+1)%2);return s>1&&(s=2-s),new w(s)}if(e<0)return w.iteratedlog(t,this,-e);t=h(t);const n=e;e=Math.trunc(e);const i=n-e;if(this.gt(w.dZero)&&this.lte(1.444667861009766)){e=Math.min(1e4,e);for(let s=0;s3)return U(t.sign,t.layer+(e-s-1),t.mag);if(s>1e4)return t}return t}iteratedexp(e=2,t=U(1,0,1)){return this.tetrate(e,t)}iteratedlog(e=10,t=1){if(t<0)return w.tetrate(e,-t,this);e=h(e);let n=h(this);const i=t;t=Math.trunc(t);const s=i-t;if(n.layer-e.layer>3){const l=Math.min(t,n.layer-e.layer-3);t-=l,n.layer-=l}for(let l=0;l1e4)return n}return s>0&&s<1&&(e.eq(10)?n=n.layeradd10(-s):n=n.layeradd(-s,e)),n}slog(e=10){if(e=h(e),e.lte(w.dZero)||e.eq(w.dOne))return w.dNaN;if(e.lt(w.dOne))return this.eq(w.dOne)?w.dZero:this.eq(w.dZero)?w.dNegOne:w.dNaN;if(this.mag<0||this.eq(w.dZero))return w.dNegOne;let t=0,n=h(this);if(n.layer-e.layer>3){const i=n.layer-e.layer-3;t+=i,n.layer-=i}for(let i=0;i<100;++i)if(n.lt(w.dZero))n=w.pow(e,n),t-=1;else{if(n.lte(w.dOne))return h(t+w.slog_critical(e.toNumber(),n.toNumber()));t+=1,n=w.log(n,e)}return h(t)}static slog_critical(e,t){return e>10?t-1:w.critical_section(e,t,$s)}static tetrate_critical(e,t){return w.critical_section(e,t,Ps)}static critical_section(e,t,n){t*=10,t<0&&(t=0),t>10&&(t=10),e<2&&(e=2),e>10&&(e=10);let i=0,s=0;for(let c=0;ce){const f=(e-Nt[c])/(Nt[c+1]-Nt[c]);i=n[c][Math.floor(t)]*(1-f)+n[c+1][Math.floor(t)]*f,s=n[c][Math.ceil(t)]*(1-f)+n[c+1][Math.ceil(t)]*f;break}const l=t-Math.floor(t);return i*(1-l)+s*l}layeradd10(e){e=w.fromValue_noAlloc(e).toNumber();const t=h(this);if(e>=1){t.mag<0&&t.layer>0?(t.sign=0,t.mag=0,t.layer=0):t.sign===-1&&t.layer==0&&(t.sign=1,t.mag=-t.mag);const n=Math.trunc(e);e-=n,t.layer+=n}if(e<=-1){const n=Math.trunc(e);if(e-=n,t.layer+=n,t.layer<0)for(let i=0;i<100;++i){if(t.layer++,t.mag=Math.log10(t.mag),!isFinite(t.mag))return t.sign===0&&(t.sign=1),t.layer<0&&(t.layer=0),t.normalize();if(t.layer>=0)break}}for(;t.layer<0;)t.layer++,t.mag=Math.log10(t.mag);return t.sign===0&&(t.sign=1,t.mag===0&&t.layer>=1&&(t.layer-=1,t.mag=1)),t.normalize(),e!==0?t.layeradd(e,10):t}layeradd(e,t){const i=this.slog(t).toNumber()+e;return i>=0?w.tetrate(t,i):Number.isFinite(i)?i>=-1?w.log(w.tetrate(t,i+1),t):w.log(w.log(w.tetrate(t,i+2),t),t):w.dNaN}lambertw(){if(this.lt(-.3678794411710499))throw Error("lambertw is unimplemented for results less than -1, sorry!");if(this.mag<0)return h(Kn(this.toNumber()));if(this.layer===0)return h(Kn(this.sign*this.mag));if(this.layer===1)return Jn(this);if(this.layer===2)return Jn(this);if(this.layer>=3)return U(this.sign,this.layer-1,this.mag);throw"Unhandled behavior in lambertw()"}ssqrt(){if(this.sign==1&&this.layer>=3)return U(this.sign,this.layer-1,this.mag);const e=this.ln();return e.div(e.lambertw())}pentate(e=2,t=U(1,0,1)){t=h(t);const n=e;e=Math.trunc(e);const i=n-e;i!==0&&(t.eq(w.dOne)?(++e,t=new w(i)):this.eq(10)?t=t.layeradd10(i):t=t.layeradd(i,this));for(let s=0;s10)return t}return t}sin(){return this.mag<0?this:this.layer===0?h(Math.sin(this.sign*this.mag)):U(0,0,0)}cos(){return this.mag<0?w.dOne:this.layer===0?h(Math.cos(this.sign*this.mag)):U(0,0,0)}tan(){return this.mag<0?this:this.layer===0?h(Math.tan(this.sign*this.mag)):U(0,0,0)}asin(){return this.mag<0?this:this.layer===0?h(Math.asin(this.sign*this.mag)):U(Number.NaN,Number.NaN,Number.NaN)}acos(){return this.mag<0?h(Math.acos(this.toNumber())):this.layer===0?h(Math.acos(this.sign*this.mag)):U(Number.NaN,Number.NaN,Number.NaN)}atan(){return this.mag<0?this:this.layer===0?h(Math.atan(this.sign*this.mag)):h(Math.atan(this.sign*(1/0)))}sinh(){return this.exp().sub(this.negate().exp()).div(2)}cosh(){return this.exp().add(this.negate().exp()).div(2)}tanh(){return this.sinh().div(this.cosh())}asinh(){return w.ln(this.add(this.sqr().add(1).sqrt()))}acosh(){return w.ln(this.add(this.sqr().sub(1).sqrt()))}atanh(){return this.abs().gte(1)?U(Number.NaN,Number.NaN,Number.NaN):w.ln(this.add(1).div(h(1).sub(this))).div(2)}ascensionPenalty(e){return e===0?this:this.root(w.pow(10,e))}egg(){return this.add(9)}lessThanOrEqualTo(e){return this.cmp(e)<1}lessThan(e){return this.cmp(e)<0}greaterThanOrEqualTo(e){return this.cmp(e)>-1}greaterThan(e){return this.cmp(e)>0}};let a=w;a.dZero=U(0,0,0);a.dOne=U(1,0,1);a.dNegOne=U(-1,0,1);a.dTwo=U(1,0,2);a.dTen=U(1,0,10);a.dNaN=U(Number.NaN,Number.NaN,Number.NaN);a.dInf=U(1,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY);a.dNegInf=U(-1,Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);a.dNumberMax=V(1,0,Number.MAX_VALUE);a.dNumberMin=V(1,0,Number.MIN_VALUE);const xs=new a(1);function Qt(e,t,n=!0){let i=a.log10(e).floor(),s=a.div(e,a.pow(10,i));s.toStringWithDecimalPlaces(t)==="10"&&(s=xs,i=i.add(1));const l=i.gte(1e9)?Ge(i,Math.max(Math.max(t,3),W.defaultDecimalsShown)):i.gte(1e4)?mn(i,0):i.toStringWithDecimalPlaces(0);return n?s.toStringWithDecimalPlaces(t)+"e"+l:"e"+l}function mn(e,t){if(e==null)return"NaN";if(e=new a(e),e.mag<.001)return 0 .toFixed(t);const i=e.toStringWithDecimalPlaces(t).split(".");return i[0]=i[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),i.length==1?i[0]:i[0]+"."+i[1]}function si(e,t){return e==null?"NaN":(e=new a(e),e.mag<1e-4?0 .toFixed(t):(e.mag<.1&&t!==0&&(t=Math.max(Math.max(t,e.log10().negate().ceil().toNumber()),W.defaultDecimalsShown)),e.toStringWithDecimalPlaces(t)))}const Fs=new a("eeee1000"),Bs=new a("e100000"),Xn=new a("e1000"),ai=new a(1e9),Ds=new a(1e6),Os=new a(1e3),Rs=new a(.98),Vs=new a(.001),li=new a(0);function Ge(e,t,n){if(t==null&&(t=W.defaultDecimalsShown),n=n!=null?n:W.defaultShowSmall,e=new a(e),isNaN(e.sign)||isNaN(e.layer)||isNaN(e.mag))return"NaN";if(e.sign<0)return"-"+Ge(e.neg(),t);if(e.mag===Number.POSITIVE_INFINITY)return"Infinity";if(e.gte(Fs)){const i=e.slog();return i.gte(Ds)?"F"+Ge(i.floor()):a.pow(10,i.sub(i.floor())).toStringWithDecimalPlaces(3)+"F"+mn(i.floor(),0)}else{if(e.gte(Bs))return Qt(e,0,!1);if(e.gte(Xn))return Qt(e,0);if(e.gte(ai))return Qt(e,t);if(e.gte(Os))return mn(e,0);if(e.gte(Vs)||!n)return si(e,t);if(e.eq(li))return 0 .toFixed(t)}return e=oi(e),e.lt(Xn)?Qt(e,t).replace(/([^(?:e|F)]*)$/,"-$1"):Ge(e,t)+"\u207B\xB9"}function qe(e){return e=new a(e),e.sign<0?"-"+qe(e.neg()):e.gte(ai)||e.lte(Rs)&&!e.eq(li)?Ge(e):Ge(e,0)}function ri(e){return a.lt(e,0)?"-"+ri(a.neg(e)):a.gt(e,2**51)?Ge(a.div(e,31536e3))+"y":(e=new a(e).toNumber(),e<60?Ge(e)+"s":e<3600?qe(Math.floor(e/60))+"m "+Ge(e%60)+"s":e<86400?qe(Math.floor(e/3600))+"h "+qe(Math.floor(e/60)%60)+"m "+qe(e%60)+"s":e<31536e3?qe(Math.floor(e/84600)%365)+"d "+qe(Math.floor(e/3600)%24)+"h "+qe(Math.floor(e/60)%60)+"m":qe(Math.floor(e/31536e3))+"y "+qe(Math.floor(e/84600)%365)+"d "+qe(Math.floor(e/3600)%24)+"h")}function qs(e,t,n){e=new a(e);let i=e.toStringWithDecimalPlaces(t);return new a(i).gte(n)&&(i=a.sub(n,Math.pow(.1,t)).toStringWithDecimalPlaces(t)),i}function Ls(e,t){return Ge(e,t,!0)}function oi(e){let t=a.log10(e).ceil();const n=a.div(e,a.pow(10,t));return t=t.neg(),e=new a(10).pow(t).times(n),e}var Gs=Object.freeze(Object.defineProperty({__proto__:null,default:a,exponentialFormat:Qt,commaFormat:mn,regularFormat:si,format:Ge,formatWhole:qe,formatTime:ri,toPlaces:qs,formatSmall:Ls,invertOOM:oi},Symbol.toStringTag,{value:"Module"}));const{exponentialFormat:Us,commaFormat:Hs,regularFormat:js,format:te,formatWhole:G,formatTime:yn,toPlaces:zs,formatSmall:Ws,invertOOM:Qs}=Gs;window.Decimal=a;window.exponentialFormat=Us;window.commaFormat=Hs;window.regularFormat=js;window.format=te;window.formatWhole=G;window.formatTime=yn;window.toPlaces=zs;window.formatSmall=Ws;window.invertOOM=Qs;function ui(e){let t=e.replace(/([A-Z])/g," $1");return t=t.charAt(0).toUpperCase()+t.slice(1),t}function In(e){return typeof e=="function"}var J=(e=>(e.Up="Up",e.Down="Down",e.Left="Left",e.Right="Right",e.Default="Up",e))(J||{});const Zt=Symbol("DoNotCache");function $(e,t){const n=e[t];In(n)&&n.length===0&&!n[Zt]?e[t]=S(n.bind(e)):In(n)&&(e[t]=n.bind(e),e[t][Zt]=!0)}function Ie(e){return In(e)&&!e[Zt]&&(e=S(e)),e}const gt=Symbol("Component"),vt=Symbol("GatherProps");let Ks=0;function qt(e="feature-"){return e+Ks++}var be=(e=>(e[e.Visible=0]="Visible",e[e.Hidden=1]="Hidden",e[e.None=2]="None",e))(be||{});function D(e){return e[Zt]=!0,e}function X(e,t=2){return e?0:t}function Ne(e,t,n){e[t]===void 0&&n!=null&&(e[t]=n)}const kt={variables:{"--foreground":"#dfdfdf","--background":"#0f0f0f","--feature-foreground":"#0f0f0f","--tooltip-background":"rgba(0, 0, 0, 0.75)","--raised-background":"#0f0f0f","--points":"#ffffff","--locked":"#bf8f8f","--highlighted":"#333","--bought":"#77bf5f","--danger":"rgb(220, 53, 69)","--link":"#02f2f2","--outline":"#dfdfdf","--accent1":"#627a82","--accent2":"#658262","--accent3":"#7c6282","--border-radius":"15px","--modal-border":"solid 2px var(--color)","--feature-margin":"0px"},floatingTabs:!0,mergeAdjacent:!0,showPin:!0};var Pn=(e=>(e.Classic="classic",e.Paper="paper",e.Nordic="nordic",e.Aqua="aqua",e))(Pn||{}),sn={classic:kt,paper:{...kt,variables:{...kt.variables,"--background":"#2a323d","--feature-foreground":"#000","--raised-background":"#333c4a","--locked":"#3a3e45","--bought":"#5C8A58","--outline":"#333c4a","--border-radius":"4px","--modal-border":"","--feature-margin":"5px"},floatingTabs:!1},nordic:{...kt,variables:{...kt.variables,"--foreground":"#D8DEE9","--background":"#2E3440","--feature-foreground":"#000","--raised-background":"#3B4252","--points":"#E5E9F0","--locked":"#4c566a","--highlighted":"#434c5e","--bought":"#8FBCBB","--danger":"#D08770","--link":"#88C0D0","--outline":"#3B4252","--accent1":"#B48EAD","--accent2":"#A3BE8C","--accent3":"#EBCB8B","--border-radius":"4px","--modal-border":"solid 2px #3B4252","--feature-margin":"5px"},floatingTabs:!1},aqua:{...kt,variables:{...kt.variables,"--foreground":"#bfdfff","--background":"#001f3f","--tooltip-background":"rgba(0, 15, 31, 0.75)","--raised-background":"#001f3f","--points":"#dfefff","--locked":"#c4a7b3","--outline":"#bfdfff"}}};const ae=Symbol("ProxyState"),Bt=Symbol("ProxyPath");function Re(e,t={}){const n=t;let i=!1;function s(){return i||(Object.assign(n,e(n)),i=!0),n}return new Proxy(n,{get(l,o){return o===ae?s():s()[o]},set(l,o,c){return s()[o]=c,!0},has(l,o){return o===ae?!0:Reflect.has(s(),o)},ownKeys(){return Reflect.ownKeys(s())},getOwnPropertyDescriptor(l,o){return i||(Object.assign(n,e(n)),i=!0),Object.getOwnPropertyDescriptor(l,o)}})}var Y=window.state=An({lastTenTicks:[],hasNaN:!1,NaNPath:[]});const ci=nn({id:"",devSpeed:null,name:"",tabs:[],time:-1,autosave:!0,offlineProd:!0,offlineTime:null,timePlayed:0,keepGoing:!1,modID:"",modVersion:"",layers:{}});function di(e){return JSON.stringify(e,(t,n)=>r(n))}const fi={get(e,t){var i;if(t===ae||t===Bt)return e[t];const n=e[ae][t];if(t!=="value"&&(Qi(n)||Array.isArray(n))){if(n!==((i=e[t])==null?void 0:i[ae])){const s=[...e[Bt],t];e[t]=new Proxy({[ae]:n,[Bt]:s},fi)}return e[t]}return n},set(e,t,n,i){if(!Y.hasNaN&&(typeof n=="number"&&isNaN(n)||n instanceof a&&(isNaN(n.sign)||isNaN(n.layer)||isNaN(n.mag)))){const s=e[ae][t];if(!(typeof s=="number"&&isNaN(s)||s instanceof a&&(isNaN(s.sign)||isNaN(s.layer)||isNaN(s.mag))))throw ci.autosave=!1,Y.hasNaN=!0,Y.NaNPath=[...e[Bt],t],Y.NaNReceiver=i,console.error("Attempted to set NaN value",[...e[Bt],t],e[ae]),"Attempted to set NaN value. See above for details"}return e[ae][t]=n,!0},ownKeys(e){return Reflect.ownKeys(e[ae])},has(e,t){return Reflect.has(e[ae],t)},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(e[ae],t)}};var A=window.player=new Proxy({[ae]:ci,[Bt]:["player"]},fi);const ce=ti();let Dt=null,Kt=null;function hn(){const e=Date.now();let t=(e-A.time)/1e3;A.time=e;const n=t;if(Y.lastTenTicks.push(n),Y.lastTenTicks.length>10&&(Y.lastTenTicks=Y.lastTenTicks.slice(1)),!((Kt==null?void 0:Kt.value)&&!A.keepGoing)&&!Y.hasNaN&&(t=Math.max(t,0),A.devSpeed!==0)){if(A.offlineTime!=null){if(a.gt(A.offlineTime,W.offlineLimit*3600)&&(A.offlineTime=W.offlineLimit*3600),a.gt(A.offlineTime,0)&&A.devSpeed!==0){const i=Math.max(A.offlineTime/10,t);A.offlineTime=A.offlineTime-i,t+=i}else A.devSpeed===0&&(A.offlineTime+=t);(!A.offlineProd||a.lt(A.offlineTime,0))&&(A.offlineTime=null)}t=Math.min(t,W.maxTickLength),A.devSpeed!=null&&(t*=A.devSpeed),Number.isFinite(t)||(t=1e308),!a.eq(t,0)&&(A.timePlayed+=t,Number.isFinite(A.timePlayed)||(A.timePlayed=1e308),ce.emit("update",t,n),ne.unthrottled?(requestAnimationFrame(hn),Dt!=null&&(clearInterval(Dt),Dt=null)):Dt==null&&(Dt=setInterval(hn,50)))}}async function Js(){Kt=(await fn(()=>Promise.resolve().then(function(){return Ai}),void 0)).hasWon,ze(Kt,e=>{e&&ce.emit("gameWon")}),ne.unthrottled?requestAnimationFrame(hn):Dt=setInterval(hn,50)}document.fonts.onloadingdone=()=>ce.emit("fontsLoaded");var Xs=Object.freeze(Object.defineProperty({__proto__:null,globalBus:ce,startGameLoop:Js},Symbol.toStringTag,{value:"Module"}));function mi(e={}){return Object.assign({id:`${W.id}-0`,name:"Default Save",tabs:W.initialTabs.slice(),time:Date.now(),autosave:!0,offlineProd:!0,offlineTime:0,timePlayed:0,keepGoing:!1,modID:W.id,modVersion:W.versionNumber,layers:{}},e)}function He(e){const t=mt.compressToUTF16(di(e!=null?e:A[ae]));return localStorage.setItem((e!=null?e:A[ae]).id,t),t}async function Zs(){ea();try{let e=localStorage.getItem(ne.active);if(e==null){await Ct(Ot());return}if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=mt.decompressFromUTF16(e);else throw"Unable to determine save encoding";const t=JSON.parse(e);if(t.modID!==W.id){await Ct(Ot());return}t.id=ne.active,await Ct(t)}catch(e){console.error(`Failed to load save. Falling back to new save. +`,e),await Ct(Ot())}}function Ot(){const e=un(),t=mi({id:e});return He(t),ne.saves.push(e),t}function un(){let e,t=0;do e=`${W.id}-${t++}`;while(localStorage.getItem(e));return e}async function Ct(e){console.info("Loading save",e);const{layers:t,removeLayer:n,addLayer:i}=await fn(()=>Promise.resolve().then(function(){return wa}),void 0),{fixOldSave:s,getInitialLayers:l}=await fn(()=>Promise.resolve().then(function(){return Ai}),void 0);for(const o in t){const c=t[o];c&&n(c)}l(e).forEach(o=>i(o,e)),e=mi(e),e.offlineProd&&e.time&&e.devSpeed!==0&&(e.offlineTime==null&&(e.offlineTime=0),e.offlineTime+=Math.min(e.offlineTime+(Date.now()-e.time)/1e3,W.offlineLimit*3600)),e.time=Date.now(),e.modVersion!==W.versionNumber&&s(e.modVersion,e),Object.assign(A,e),ne.active=A.id,ce.emit("onLoad")}setInterval(()=>{A.autosave&&He()},1e3);window.onbeforeunload=()=>{A.autosave&&He()};window.save=He;const Ys=window.hardReset=async()=>{await Ct(Ot())},Yt=nn({active:"",saves:[],showTPS:!0,theme:Pn.Nordic,unthrottled:!1});ze(Yt,e=>{const t=mt.compressToUTF16(JSON.stringify(e));localStorage.setItem(W.id,t)},{deep:!0});var ne=window.settings=Yt;window.hardResetSettings=()=>{const e={active:"",saves:[],showTPS:!0,theme:Pn.Nordic};ce.emit("loadSettings",e),Object.assign(Yt,e),Ys()};function ea(){try{let e=localStorage.getItem(W.id);if(e!=null&&e!==""){if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=mt.decompressFromUTF16(e);else{console.warn("Unable to determine settings encoding",e);return}const t=JSON.parse(e);typeof t=="object"&&Object.assign(Yt,t)}ce.emit("loadSettings",Yt)}catch{}}const hi=nn([]);function ta(e){hi.push(e)}const na=nn([]),ia=nn([]),sa={class:"table"},cn=L({__name:"Column",setup(e){const t=S(()=>sn[ne.theme].mergeAdjacent);return(n,i)=>(_(),M("div",sa,[m("div",{class:ue(["col",{mergeAdjacent:r(t)}])},[Ke(n.$slots,"default")],2)]))}}),aa={class:"table"},pi=L({__name:"Row",setup(e){const t=S(()=>sn[ne.theme].mergeAdjacent);return(n,i)=>(_(),M("div",aa,[m("div",{class:ue(["row",{mergeAdjacent:r(t)}])},[Ke(n.$slots,"default")],2)]))}});function gi(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!qi(e)}function K(e,t="span"){return typeof e=="function"?L({render:e}):typeof e=="string"?e.length>0?(e=e.trim(),e.charAt(0)!=="<"&&(e=`<${t}>${e}`),L({template:e})):L({render:()=>({})}):e}function pe(e){if(yt(e))return typeof e=="function"?e():K(e);const t=e[gt];return u(t,e[vt](),null)}function De(...e){let t;return u(pi,null,gi(t=e.map(pe))?t:{default:()=>[t]})}function vi(...e){let t;return u(cn,null,gi(t=e.map(pe))?t:{default:()=>[t]})}function Je(e){if(yt(e))return typeof e=="function"?e():typeof e=="string"?u(B,null,[e]):u(e,null,null);const t=e[gt];return u(t,e[vt](),null)}function yt(e){return typeof e=="string"?!0:typeof e=="object"?e==null?!1:"render"in e||"component"in e:typeof e=="function"&&e[Zt]===!0}function yi(e,t,n){const i=x(null),s=x(void 0);function l(f){i.value||(i.value=setInterval(c,250)),s.value=f,n&&(n.value=!0)}function o(){i.value&&(clearInterval(i.value),i.value=null),n&&(n.value=!1)}function c(){t&&t.value?t.value():e&&e.value&&e.value(s.value)}return Yn(o),{start:l,stop:o,handleHolding:c}}function bi(e,t="div"){const n=Le();return Fe(()=>{n.value=K(ge(e),t)}),n}function Lt(e,t="div"){const n=Le(null);return Fe(()=>{const i=ge(e);n.value=i==null?null:K(i,t)}),n}function la(e){return S(()=>ge(e))}function ge(e){return r(r(e))}function P(...e){return e.includes(Object)||e.push(Object),e}const Oe=L({__name:"Spacer",props:{width:{default:"8px"},height:{default:"17px"}},setup(e){return(t,n)=>(_(),M("div",{style:he({width:e.width,height:e.height})},null,4))}});var Z=(e,t)=>{const n=e.__vccOpts||e;for(const[i,s]of t)n[i]=s;return n};const ra=L({__name:"Context",emits:["updateNodes"],setup(e,{emit:t}){var p;const n=x({}),i=new ResizeObserver(c),s=x(null);gn(()=>{const y=s.value;y!=null&&i.observe(y)});let l=!0,o=x((p=s.value)==null?void 0:p.getBoundingClientRect());function c(){l&&(l=!1,Mt(()=>{var y;o.value=(y=s.value)==null?void 0:y.getBoundingClientRect(),Object.values(n.value).filter(b=>b).forEach(b=>b.rect=b.element.getBoundingClientRect()),t("updateNodes",n.value),l=!0}))}ce.on("fontsLoaded",c);const f={attributes:!1,childList:!0,subtree:!1};rn($n,(y,b)=>{const g=new MutationObserver(()=>d(y));g.observe(b,f),n.value[y]={element:b,observer:g,rect:b.getBoundingClientRect()},c()}),rn(Tn,y=>{var b;(b=n.value[y])==null||b.observer.disconnect(),n.value[y]=void 0,c()}),rn(xn,n),rn(Fn,o);function d(y){const b=n.value[y];b!=null&&(b.rect=b.element.getBoundingClientRect(),t("updateNodes",n.value))}return(y,b)=>(_(),M(B,null,[Ke(y.$slots,"default",{},void 0,!0),m("div",{ref_key:"resizeListener",ref:s,class:"resize-listener"},null,512)],64))}});var _i=Z(ra,[["__scopeId","data-v-2b1dc1bc"]]);const oa=["onPointerdown"],ua={class:"modal-wrapper"},ca={class:"modal-container"},da={class:"modal-header"},fa=v(" default header "),ma={class:"modal-body"},ha=v(" default body "),pa={class:"modal-footer"},ga=m("div",{class:"modal-default-flex-grow"},null,-1),We=L({__name:"Modal",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{expose:t,emit:n}){const s=_e(e),l=S(()=>s.modelValue||c.value);function o(){n("update:modelValue",!1)}const c=x(!1),f=x(null),d=S(()=>{var p,y;return(y=(p=f.value)==null?void 0:p.nodes)!=null?y:null});return t({isOpen:l,nodes:d}),(p,y)=>(_(),j(Gi,{to:"#modal-root"},[u(vn,{name:"modal",onBeforeEnter:y[0]||(y[0]=b=>c.value=!0),onAfterLeave:y[1]||(y[1]=b=>c.value=!1)},{default:R(()=>[En(m("div",It({class:"modal-mask",onPointerdown:Xt(o,["self"])},p.$attrs),[m("div",ua,[m("div",ca,[m("div",da,[Ke(p.$slots,"header",{shown:r(l)},()=>[fa])]),m("div",ma,[u(_i,{ref_key:"contextRef",ref:f},{default:R(()=>[Ke(p.$slots,"body",{shown:r(l)},()=>[ha])]),_:3},512)]),m("div",pa,[Ke(p.$slots,"footer",{shown:r(l)},()=>[m("div",{class:"modal-default-footer"},[ga,m("button",{class:"button modal-default-button",onClick:o}," Close ")])])])])])],16,oa),[[Li,e.modelValue]])]),_:3})]))}}),en=Symbol("PersistentState"),tn=Symbol("DefaultValue"),pn=Symbol("StackTrace"),wi=Symbol("Deleted");function va(){var e;return((e=new Error().stack)==null?void 0:e.split(` +`).slice(3,5).map(t=>t.trim()).join(` +`))||""}function Ae(e){const t=me(e)?e:x(e);return t[en]=t,t[tn]=me(e)?e.value:e,t[pn]=va(),t[wi]=!1,je.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",t,` +Created at: +`+t[pn]):Rt[je[je.length-1]].add(t),t}ce.on("addLayer",(e,t)=>{const n=[],i=(s,l=[])=>{let o=!1;return Object.keys(s).forEach(c=>{const f=s[c];if(f&&typeof f=="object")if(en in f){if(o=!0,f[wi]){console.warn("Deleted persistent ref present in returned object. Ignoring...",f,` +Created at: +`+f[pn]);return}Rt[e.id].delete(ae in f?f[ae]:f);const d=l.reduce((y,b)=>(b in y||(y[b]={}),y[b]),t),p=d[c];d[c]=f[en],Ui(d)?p!=null?d[c]=p:d[c]=f[tn]:p!=null?d[c].value=p:d[c].value=f[tn]}else!(f instanceof a)&&!me(f)&&!n.includes(f)&&(typeof f.type=="symbol"&&n.push(f),i(f,[...l,c])&&(zn(f)&&!zn(s)?console.warn("Found array that contains persistent values when adding layer. Keep in mind changing the order of elements in the array will mess with existing player saves.",ae in s?s[ae]:s,c):o=!0))}),o};i(e),Rt[e.id].forEach(s=>{console.error(`Created persistent ref in ${e.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,s,` +Created at: +`+s[pn])}),Rt[e.id].clear()});const $n=Symbol("RegisterNode"),Tn=Symbol("UnregisterNode"),xn=Symbol("Nodes"),Fn=Symbol("Bounds"),we=An({});window.layers=we;const Rt={},je=[];function Gt(e,t){return Re(()=>{const n={},i=n.emitter=ti();if(n.on=i.on.bind(i),n.emit=i.emit.bind(i),n.nodes=x({}),n.id=e,je.push(e),Rt[e]=new Set,n.minimized=Ae(!1),Object.assign(n,t.call(n)),je[je.length-1]==null||je[je.length-1]!==e)throw`Adding layers stack in invalid state. This should not happen +Stack: ${je} +Trying to pop ${n.id}`;return je.pop(),$(n,"color"),$(n,"display"),$(n,"name"),Ne(n,"name",n.id),$(n,"minWidth"),Ne(n,"minWidth",600),$(n,"minimizable"),Ne(n,"minimizable",!0),n})}function Ni(e,t){if(console.info("Adding layer",e.id),we[e.id]){console.error("Attempted to add layer with same ID as existing layer",e.id,we[e.id]);return}Ne(t,"layers",{}),t.layers[e.id]==null&&(t.layers[e.id]={}),we[e.id]=e,ce.emit("addLayer",e,t.layers[e.id])}function ya(e){return we[e]}function ki(e){console.info("Removing layer",e.id),ce.emit("removeLayer",e),we[e.id]=void 0}function ba(e){ki(e),Ni(e,A)}function _a(e){const t=x(!1);return{openModal:()=>t.value=!0,modal:D(()=>u(We,{modelValue:t.value,"onUpdate:modelValue":n=>t.value=n},{header:()=>u("h2",null,[r(e.name)]),body:r(e.display)}))}}ce.on("update",function(t){Object.values(we).forEach(n=>{n==null||n.emit("preUpdate",t)}),Object.values(we).forEach(n=>{n==null||n.emit("update",t)}),Object.values(we).forEach(n=>{n==null||n.emit("postUpdate",t)})});var wa=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:$n,UnregisterNodeInjectionKey:Tn,NodesInjectionKey:xn,BoundsInjectionKey:Fn,layers:we,persistentRefs:Rt,addingLayers:je,createLayer:Gt,addLayer:Ni,getLayer:ya,removeLayer:ki,reloadLayer:ba,setupLayerModal:_a},Symbol.toStringTag,{value:"Module"}));const Na={},ka={class:"notif"};function Ca(e,t){return _(),M("div",ka,"!")}var Zn=Z(Na,[["render",Ca],["__scopeId","data-v-66323fd4"]]);const bn=e=>(tt("data-v-949cc93c"),e=e(),nt(),e),Sa={key:0,class:"day feature dontMerge opened"},Ma={class:"date"},Ia=v("Dec"),Aa=bn(()=>m("br",null,null,-1)),Ea={class:"date"},Pa=v("Dec"),$a=bn(()=>m("br",null,null,-1)),Ta=bn(()=>m("div",{class:"doors"},null,-1)),xa={class:"date"},Fa=v("Dec"),Ba=bn(()=>m("br",null,null,-1)),Da={key:0,class:"material-icons lock"},Oa=L({__name:"Day",props:{day:null,symbol:null,opened:null,shouldNotify:null},emits:["openLore","openLayer","unlockLayer"],setup(e,{emit:t}){const n=e,i=S(()=>a.gte(F.day.value,n.day)&&new Date().getMonth()===11&&new Date().getDate()>=n.day);function s(){i.value&&t("unlockLayer")}return(l,o)=>e.opened.value?(_(),M("div",Sa,[u(vn,{appear:"",name:"door"},{default:R(()=>[m("div",{class:"doors",onClick:o[0]||(o[0]=c=>t("openLayer"))},[m("div",Ma,[Ia,Aa,v(H(e.day),1)]),m("div",Ea,[Pa,$a,v(H(e.day),1)])])]),_:1}),m("div",{class:"icon",style:he({backgroundImage:`url(${e.symbol})`})},null,4),m("div",{class:"lore",onClick:o[1]||(o[1]=c=>t("openLore"))},"?"),r(e.shouldNotify)?(_(),j(Zn,{key:0})):T("",!0)])):(_(),M("div",{key:1,class:ue(["day feature dontMerge",{can:r(i),locked:!r(i),canOpen:r(i)}]),onClick:s},[Ta,m("div",xa,[Fa,Ba,v(H(e.day),1)]),r(i)?T("",!0):(_(),M("div",Da,"lock")),r(i)?(_(),j(Zn,{key:1})):T("",!0)],2))}});var Ra=Z(Oa,[["__scopeId","data-v-949cc93c"]]);const Va={key:0},qa={key:0,class:"mark star"},La=["src"],Ga=L({__name:"MarkNode",props:{mark:{type:[Boolean,String]}},setup(e){return(t,n)=>e.mark?(_(),M("div",Va,[e.mark===!0?(_(),M("div",qa)):(_(),M("img",{key:1,class:"mark",src:e.mark},null,8,La))])):T("",!0)}});var _n=Z(Ga,[["__scopeId","data-v-2207999f"]]);const Ua=L({__name:"Node",props:{id:null},setup(e){const n=_e(e),i=dn($n,()=>{}),s=dn(Tn,()=>{}),l=Le(null),o=S(()=>l.value&&l.value.parentElement);return ze([o,n.id],([c,f],[d,p])=>{d&&s(r(p)),c&&i(f,c)}),Yn(()=>s(r(n.id))),(c,f)=>(_(),M("div",{class:"node",ref_key:"node",ref:l},null,512))}});var an=Z(Ua,[["__scopeId","data-v-a48cb382"]]),Ha=L({props:{display:{type:P(Object,String,Function),required:!0},visibility:{type:P(Number),required:!0},style:P(Object,String,Array),classes:P(Object),onClick:Function,onHold:Function,canClick:{type:P(Boolean),required:!0},small:Boolean,mark:P(Boolean,String),id:{type:String,required:!0},isHolding:Object},components:{Node:an,MarkNode:_n},setup(e){const{display:t,onClick:n,onHold:i}=_e(e),s=Le("");Fe(()=>{const c=ge(t);if(c==null){s.value="";return}if(yt(c)){s.value=K(c);return}const f=K(c.title||"","h3"),d=K(c.description,"div");s.value=K(D(()=>u("span",null,[c.title?u("div",null,[u(f,null,null)]):null,u(d,null,null)])))});const{start:l,stop:o}=yi(n,i,e.isHolding);return{start:l,stop:o,comp:s,Visibility:be,unref:r}}});function ja(e,t,n,i,s,l){var f;const o=pt("MarkNode"),c=pt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("button",{key:0,style:he([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(f=e.unref(e.style))!=null?f:[]]),onClick:t[0]||(t[0]=(...d)=>e.onClick&&e.onClick(...d)),onMousedown:t[1]||(t[1]=(...d)=>e.start&&e.start(...d)),onMouseleave:t[2]||(t[2]=(...d)=>e.stop&&e.stop(...d)),onMouseup:t[3]||(t[3]=(...d)=>e.stop&&e.stop(...d)),onTouchstartPassive:t[4]||(t[4]=(...d)=>e.start&&e.start(...d)),onTouchendPassive:t[5]||(t[5]=(...d)=>e.stop&&e.stop(...d)),onTouchcancelPassive:t[6]||(t[6]=(...d)=>e.stop&&e.stop(...d)),class:ue({feature:!0,clickable:!0,can:e.unref(e.canClick),locked:!e.unref(e.canClick),small:e.small,...e.unref(e.classes)})},[e.unref(e.comp)?(_(),j(ke(e.unref(e.comp)),{key:0})):T("",!0),u(o,{mark:e.unref(e.mark)},null,8,["mark"]),u(c,{id:e.id},null,8,["id"])],38)):T("",!0)}var Ci=Z(Ha,[["render",ja],["__scopeId","data-v-8cedd7da"]]);const za=Symbol("Clickable");function Se(e){return Re(()=>{var n;const t=(n=e==null?void 0:e())!=null?n:{};if(t.id=qt("clickable-"),t.type=za,t[gt]=Ci,t.isHolding=x(!1),$(t,"visibility"),Ne(t,"visibility",be.Visible),$(t,"canClick"),Ne(t,"canClick",!0),$(t,"classes"),$(t,"style"),$(t,"mark"),$(t,"display"),t.onClick){const i=t.onClick.bind(t);t.onClick=function(s){r(t.canClick)&&i(s)}}if(t.onHold){const i=t.onHold.bind(t);t.onHold=function(){r(t.canClick)&&i()}}return t[vt]=function(){const{display:i,visibility:s,style:l,classes:o,onClick:c,onHold:f,isHolding:d,canClick:p,small:y,mark:b,id:g}=this;return{display:i,visibility:s,style:r(l),classes:o,onClick:c,onHold:f,isHolding:d,canClick:p,small:y,mark:b,id:g}},t})}function St(e,t="points",n=0,i=void 0){const s=me(e)?e:Ae(e);return s.displayName=t,s.precision=n,s.small=i,s}function Si(e){const t=Ae(e.value);return ze(e,(n,i)=>{a.gt(n,i)&&(t.value=a.add(t.value,a.sub(n,i)))}),t}new a("10^^8");new a("1e100");function Bn(e,t){const n=t!=null?t:e.value;return a.eq(e.precision,0)?G(e.small?n:a.floor(n)):te(n,e.precision,e.small)}const Wa=["x1","y1","x2","y2"],Qa=L({__name:"Link",props:{link:null,startNode:null,endNode:null,boundingRect:null},setup(e){const n=_e(e),i=S(()=>{const l=n.startNode.value.rect,o=n.boundingRect.value,c=o?{x:l.x+l.width/2-o.x,y:l.y+l.height/2-o.y}:{x:0,y:0};return n.link.value.offsetStart&&(c.x+=n.link.value.offsetStart.x,c.y+=n.link.value.offsetStart.y),c}),s=S(()=>{const l=n.endNode.value.rect,o=n.boundingRect.value,c=o?{x:l.x+l.width/2-o.x,y:l.y+l.height/2-o.y}:{x:0,y:0};return n.link.value.offsetEnd&&(c.x+=n.link.value.offsetEnd.x,c.y+=n.link.value.offsetEnd.y),c});return(l,o)=>(_(),M("line",It({"stroke-width":"15px",stroke:"white"},e.link,{x1:r(i).x,y1:r(i).y,x2:r(s).x,y2:r(s).y}),null,16,Wa))}});const Ka=L({__name:"Links",props:{links:null},setup(e){var f;const n=et(e,"links"),i=x(null),s=dn(xn,x({})),l=dn(Fn,x(void 0)),o=x((f=i.value)==null?void 0:f.getBoundingClientRect());ze(l,()=>{var d;return o.value=(d=i.value)==null?void 0:d.getBoundingClientRect()}),gn(()=>{var d;return o.value=(d=i.value)==null?void 0:d.getBoundingClientRect()});const c=S(()=>{var p,y;const d=s.value;return(y=(p=n.value)==null?void 0:p.filter(b=>{var g,N;return((g=d[b.startNode.id])==null?void 0:g.rect)&&((N=d[b.startNode.id])==null?void 0:N.rect)}))!=null?y:[]});return(d,p)=>(_(),M(B,null,[r(c)?(_(),M("svg",Hi(It({key:0},d.$attrs)),[(_(!0),M(B,null,ei(r(c),(y,b)=>(_(),j(Qa,{key:b,link:y,boundingRect:o.value,startNode:r(s)[y.startNode.id],endNode:r(s)[y.endNode.id]},null,8,["link","boundingRect","startNode","endNode"]))),128))],16)):T("",!0),m("div",{ref_key:"resizeListener",ref:i,class:"resize-listener"},null,512)],64))}});var Ja=Z(Ka,[["__scopeId","data-v-063f6d6b"]]);L({props:{nodes:{type:P(Array),required:!0},leftSideNodes:P(Array),rightSideNodes:P(Array),branches:P(Array)},components:{Links:Ja},setup(e){const{nodes:t,leftSideNodes:n,rightSideNodes:i}=_e(e),s=Le();Fe(()=>{const c=ge(t);s.value=K(D(()=>u(B,null,[c.map(f=>u("span",{class:"row tree-row",style:"margin: 50px auto;"},[f.map(Je)]))])))});const l=Le();Fe(()=>{const c=ge(n);l.value=c?K(D(()=>u("span",{class:"left-side-nodes small"},[c.map(Je)]))):""});const o=Le();return Fe(()=>{const c=ge(i);o.value=c?K(D(()=>u("span",{class:"side-nodes small"},[c.map(Je)]))):""}),{unref:r,nodesComp:s,leftNodesComp:l,rightNodesComp:o}}});L({props:{display:P(Object,String,Function),visibility:{type:P(Number),required:!0},style:P(String,Object,Array),classes:P(Object),onClick:Function,onHold:Function,color:P(String),glowColor:P(String),canClick:{type:P(Boolean),required:!0},mark:P(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:_n,Node:an},setup(e){const{onClick:t,onHold:n,display:i}=_e(e),s=Lt(i),{start:l,stop:o}=yi(t,n);return{start:l,stop:o,comp:s,unref:r,Visibility:be,isCoercableComponent:yt}}});function Dn(e){const t=[],n={};let i=!1;function s(){return i||(t.push(...e()),n.base=t.map(c=>Ie(c.base)),n.baseText=t.map(c=>Ie(c.baseText)),n.visible=t.map(c=>Ie(c.visible)),i=!0),t}const l=Ae({});return[D(()=>{const c=s();let f=!0;const d=c.map((p,y)=>{var k,E,de;if(r(n.visible[y])===!1)return null;const b=u("h3",{onClick:()=>l.value[y]=!l.value[y],style:"cursor: pointer"},[u("span",{class:"modifier-toggle"+(r(l.value[y])?" collapsed":"")},[v("\u25BC")]),p.title,p.subtitle?u("span",{class:"subtitle"},[v(" ("),p.subtitle,v(")")]):null]),g=r(l.value[y])?null:u(B,null,[u("div",{class:"modifier-container"},[u("span",{class:"modifier-amount"},[te((k=r(n.base[y]))!=null?k:1),p.unit]),u("span",{class:"modifier-description"},[Je((E=r(n.baseText[y]))!=null?E:"Base")])]),Je(r(p.modifier.description))]),N=!f;return f=!1,u(B,null,[N?u("br",null,null):null,u("div",null,[b,u("br",null,null),g,u("hr",null,null),v("Total: "),te(p.modifier.apply((de=r(n.base[y]))!=null?de:1)),p.unit])])});return u(B,null,[d])}),l]}const Xa=L({props:{progress:{type:P(String,Object,Number),required:!0},width:{type:P(Number),required:!0},height:{type:P(Number),required:!0},direction:{type:P(String),required:!0},display:P(Object,String,Function),visibility:{type:P(Number),required:!0},style:P(Object,String,Array),classes:P(Object),borderStyle:P(Object,String,Array),textStyle:P(Object,String,Array),baseStyle:P(Object,String,Array),fillStyle:P(Object,String,Array),mark:P(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:_n,Node:an},setup(e){const{progress:t,width:n,height:i,direction:s,display:l}=_e(e),o=S(()=>{let d=t.value instanceof a?t.value.toNumber():Number(t.value);return(1-Math.min(Math.max(d,0),1))*100}),c=S(()=>{const d={width:ge(n)+.5+"px",height:ge(i)+.5+"px"};switch(r(s)){case J.Up:d.clipPath=`inset(${o.value}% 0% 0% 0%)`,d.width=ge(n)+1+"px";break;case J.Down:d.clipPath=`inset(0% 0% ${o.value}% 0%)`,d.width=ge(n)+1+"px";break;case J.Right:d.clipPath=`inset(0% ${o.value}% 0% 0%)`;break;case J.Left:d.clipPath=`inset(0% 0% 0% ${o.value} + '%)`;break;case J.Default:d.clipPath="inset(0% 50% 0% 0%)";break}return d}),f=Lt(l);return{normalizedProgress:o,barStyle:c,component:f,unref:r,Visibility:be}}});function Za(e,t,n,i,s,l){var f,d,p,y,b,g,N;const o=pt("MarkNode"),c=pt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("div",{key:0,style:he([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px",visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(f=e.unref(e.style))!=null?f:{}]),class:ue({bar:!0,...e.unref(e.classes)})},[m("div",{class:"overlayTextContainer border",style:he([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(d=e.unref(e.borderStyle))!=null?d:{}])},[e.component?(_(),M("span",{key:0,class:"overlayText",style:he(e.unref(e.textStyle))},[(_(),j(ke(e.component)))],4)):T("",!0)],4),m("div",{class:"border",style:he([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(p=e.unref(e.style))!=null?p:{},(y=e.unref(e.baseStyle))!=null?y:{},(b=e.unref(e.borderStyle))!=null?b:{}])},[m("div",{class:"fill",style:he([e.barStyle,(g=e.unref(e.style))!=null?g:{},(N=e.unref(e.fillStyle))!=null?N:{}])},null,4)],4),u(o,{mark:e.unref(e.mark)},null,8,["mark"]),u(c,{id:e.id},null,8,["id"])],6)):T("",!0)}var Ya=Z(Xa,[["render",Za],["__scopeId","data-v-02d0d7b2"]]);const el=Symbol("Bar");function Vt(e){return Re(()=>{const t=e();return t.id=qt("bar-"),t.type=el,t[gt]=Ya,$(t,"visibility"),Ne(t,"visibility",be.Visible),$(t,"width"),$(t,"height"),$(t,"direction"),$(t,"style"),$(t,"classes"),$(t,"borderStyle"),$(t,"baseStyle"),$(t,"textStyle"),$(t,"fillStyle"),$(t,"progress"),$(t,"display"),$(t,"mark"),t[vt]=function(){const{progress:n,width:i,height:s,direction:l,display:o,visibility:c,style:f,classes:d,borderStyle:p,textStyle:y,baseStyle:b,fillStyle:g,mark:N,id:k}=this;return{progress:n,width:i,height:s,direction:l,display:o,visibility:c,style:r(f),classes:d,borderStyle:p,textStyle:y,baseStyle:b,fillStyle:g,mark:N,id:k}},t})}const tl=Symbol("Buyable");function Ye(e){const t=Ae(0);return Re(()=>{var l,o,c;const n=e();if(n.canPurchase==null&&(n.resource==null||n.cost==null))throw console.warn("Cannot create buyable without a canPurchase property or a resource and cost property",n),"Cannot create buyable without a canPurchase property or a resource and cost property";n.id=qt("buyable-"),n.type=tl,n[gt]=Ci,n.amount=t,n.amount[tn]=(l=n.initialValue)!=null?l:0,n.canAfford=S(()=>{const f=n,d=r(f.cost);return f.resource!=null&&d!=null&&a.gte(f.resource.value,d)}),n.canPurchase==null&&(n.canPurchase=S(()=>r(n.visibility)===be.Visible&&r(n.canAfford)&&a.lt(n.amount.value,r(n.purchaseLimit)))),n.maxed=S(()=>a.gte(n.amount.value,r(n.purchaseLimit))),$(n,"classes");const i=n.classes;n.classes=S(()=>{const f=r(i)||{};return n.maxed.value&&(f.bought=!0),f}),$(n,"canPurchase"),n.canClick=n.canPurchase,n.onClick=n.purchase=(c=(o=n.onClick)!=null?o:n.purchase)!=null?c:function(){var p;const f=n;if(!r(f.canPurchase))return;const d=r(f.cost);f.cost!=null&&f.resource!=null&&(f.resource.value=a.sub(f.resource.value,d),f.amount.value=a.add(f.amount.value,1)),(p=f.onPurchase)==null||p.call(f,d)},$(n,"display");const s=n.display;return n.display=D(()=>{const f=r(s);if(yt(f)){const d=K(f);return u(d,null,null)}if(f!=null&&n.cost!=null&&n.resource!=null){const d=n,p=K(f.title||"","h3"),y=K(f.description||""),b=K(f.effectDisplay||"");return u("span",null,[f.title?u("div",null,[u(p,null,null)]):null,f.description?u(y,null,null):null,f.showAmount===!1?null:u("div",null,[u("br",null,null),r(d.purchaseLimit)===a.dInf?u(B,null,[v("Amount: "),G(d.amount.value)]):u(B,null,[v("Amount: "),G(d.amount.value),v(" /")," ",G(r(d.purchaseLimit))])]),f.effectDisplay?u("div",null,[u("br",null,null),v("Currently: "),u(b,null,null)]):null,d.cost&&!d.maxed.value?u("div",null,[u("br",null,null),v("Cost: "),te(r(d.cost)||0)," ",n.resource.displayName]):null])}return""}),$(n,"visibility"),Ne(n,"visibility",be.Visible),$(n,"cost"),$(n,"resource"),$(n,"purchaseLimit"),Ne(n,"purchaseLimit",a.dInf),$(n,"style"),$(n,"mark"),$(n,"small"),n[vt]=function(){const{display:f,visibility:d,style:p,classes:y,onClick:b,canClick:g,small:N,mark:k,id:E}=this;return{display:f,visibility:d,style:r(p),classes:y,onClick:b,canClick:g,small:N,mark:k,id:E}},n})}const nl=L({__name:"Sticky",setup(e){const t=x("0"),n=new ResizeObserver(s),i=Le(null);function s(){let l=i.value;if(l==null)return;let o=0;for(;l.previousSibling;){const c=l.previousSibling;c.dataset&&"vSticky"in c.dataset&&(o+=c.offsetHeight),l=c}t.value=o+"px"}return Mt(s),document.fonts.ready.then(s),gn(()=>{var o;const l=(o=i.value)==null?void 0:o.parentElement;l&&n.observe(l)}),(l,o)=>(_(),M("div",{class:"sticky",style:he({top:t.value}),ref_key:"element",ref:i,"data-v-sticky":""},[Ke(l.$slots,"default",{},void 0,!0)],4))}});var il=Z(nl,[["__scopeId","data-v-cccac690"]]);const sl=L({__name:"Resource",props:{resource:null,color:null},setup(e){const t=e,n=S(()=>Bn(t.resource));return(i,s)=>(_(),M("h2",{style:he({color:e.color,"text-shadow":"0px 0px 10px "+e.color})},H(r(n)),5))}});const al={class:"main-display"},ll={key:0},rl={key:1},ol=v(", "),Jt=L({__name:"MainDisplay",props:{resource:null,color:null,classes:null,style:null,effectDisplay:null},setup(e){const n=_e(e),i=x(null),s=Lt(n.effectDisplay),l=S(()=>a.lt(n.resource.value,"1e1000"));return(o,c)=>(_(),j(il,null,{default:R(()=>{var f,d,p,y;return[m("div",{class:ue(["main-display-container",(f=e.classes)!=null?f:{}]),style:he([{height:`${((p=(d=i.value)==null?void 0:d.$el.clientHeight)!=null?p:0)+50}px`},(y=e.style)!=null?y:{}])},[m("div",al,[r(l)?(_(),M("span",ll,"You have ")):T("",!0),u(sl,{resource:e.resource,color:e.color||"white"},null,8,["resource","color"]),v(" "+H(e.resource.displayName),1),r(s)?(_(),M("span",rl,[ol,(_(),j(ke(r(s)),{ref_key:"effectRef",ref:i},null,512))])):T("",!0)])],6)]}),_:1}))}});var ul=L({props:{display:{type:P(String,Object,Function),required:!0},visibility:{type:P(Number),required:!0},style:P(String,Object,Array),classes:P(Object),resource:Object,cost:P(String,Object,Number),canPurchase:{type:P(Boolean),required:!0},bought:{type:P(Boolean),required:!0},mark:P(Boolean,String),id:{type:String,required:!0},purchase:{type:Function,required:!0}},components:{Node:an,MarkNode:_n},setup(e){const{display:t,cost:n}=_e(e),i=Le("");return Fe(()=>{const s=ge(t);if(s==null){i.value="";return}if(yt(s)){i.value=K(s);return}const l=ge(n),o=K(s.title||"","h3"),c=K(s.description,"div"),f=K(s.effectDisplay||"");i.value=K(D(()=>{var d;return u("span",null,[s.title?u("div",null,[u(o,null,null)]):null,u(c,null,null),s.effectDisplay?u("div",null,[v("Currently: "),u(f,null,null)]):null,e.resource!=null&&s.showCost!==!1?u(B,null,[u("br",null,null),v("Cost: "),e.resource&&Bn(e.resource,l)," ",(d=e.resource)==null?void 0:d.displayName]):null])}))}),{component:i,unref:r,Visibility:be}}});const cl=["disabled"];function dl(e,t,n,i,s,l){var f;const o=pt("MarkNode"),c=pt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("button",{key:0,style:he([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(f=e.unref(e.style))!=null?f:{}]),onClick:t[0]||(t[0]=(...d)=>e.purchase&&e.purchase(...d)),class:ue({feature:!0,upgrade:!0,can:e.unref(e.canPurchase),locked:!e.unref(e.canPurchase),bought:e.unref(e.bought),...e.unref(e.classes)}),disabled:!e.unref(e.canPurchase)},[e.unref(e.component)?(_(),j(ke(e.unref(e.component)),{key:0})):T("",!0),u(o,{mark:e.unref(e.mark)},null,8,["mark"]),u(c,{id:e.id},null,8,["id"])],14,cl)):T("",!0)}var fl=Z(ul,[["render",dl],["__scopeId","data-v-7f411ac8"]]);const ml=Symbol("Upgrade");function le(e){const t=Ae(!1);return Re(()=>{const n=e();return n.id=qt("upgrade-"),n.type=ml,n[gt]=fl,n.canAfford==null&&(n.resource==null||n.cost==null)&&console.warn("Error: can't create upgrade without a canAfford property or a resource and cost property",n),n.bought=t,n.canAfford==null?n.canAfford=S(()=>{const i=n;return i.resource!=null&&i.cost!=null&&a.gte(i.resource.value,r(i.cost))}):$(n,"canAfford"),n.canPurchase=S(()=>r(n.visibility)===be.Visible&&r(n.canAfford)&&!r(n.bought)),n.purchase=function(){var s;const i=n;!r(i.canPurchase)||(i.resource!=null&&i.cost!=null&&(i.resource.value=a.sub(i.resource.value,r(i.cost))),t.value=!0,(s=i.onPurchase)==null||s.call(i))},$(n,"visibility"),Ne(n,"visibility",be.Visible),$(n,"classes"),$(n,"style"),$(n,"display"),$(n,"mark"),$(n,"cost"),$(n,"resource"),n[vt]=function(){const{display:i,visibility:s,style:l,classes:o,resource:c,cost:f,canPurchase:d,bought:p,mark:y,id:b,purchase:g}=this;return{display:i,visibility:s,style:r(l),classes:o,resource:c,cost:f,canPurchase:d,bought:p,mark:y,id:b,purchase:g}},n})}function ee(e){return Re(()=>{const{addend:t,description:n,enabled:i}=e(),s=Ie(t),l=Ie(n),o=i==null?void 0:Ie(i);return{apply:c=>a.add(c,r(s)),revert:c=>a.sub(c,r(s)),enabled:o,description:n==null?void 0:D(()=>u("div",{class:"modifier-container"},[u("span",{class:"modifier-amount"},[a.gte(r(s),0)?"+":"",te(r(s))]),r(l)?u("span",{class:"modifier-description"},[Je(r(l))]):null]))}})}function ie(e){return Re(()=>{const{multiplier:t,description:n,enabled:i}=e(),s=Ie(t),l=Ie(n),o=i==null?void 0:Ie(i);return{apply:c=>a.times(c,r(s)),revert:c=>a.div(c,r(s)),enabled:o,description:n==null?void 0:D(()=>u("div",{class:"modifier-container"},[u("span",{class:"modifier-amount"},[v("x"),te(r(s))]),r(l)?u("span",{class:"modifier-description"},[Je(r(l))]):null]))}})}function Mi(e){return Re(()=>{const{exponent:t,description:n,enabled:i,supportLowNumbers:s}=e(),l=Ie(t),o=Ie(n),c=i==null?void 0:Ie(i);return{apply:f=>{let d=f;return s&&(d=a.add(d,1)),d=a.pow(d,r(l)),s&&(d=a.sub(d,1)),d},revert:f=>{let d=f;return s&&(d=a.add(d,1)),d=a.root(d,r(l)),s&&(d=a.sub(d,1)),d},enabled:c,description:n==null?void 0:D(()=>u("div",{class:"modifier-container"},[u("span",{class:"modifier-amount"},[v("^"),te(r(l))]),r(o)?u("span",{class:"modifier-description"},[Je(r(o)),s?" (+1 effective)":null]):null]))}})}function Me(e){return Re(()=>{const t=e();return{apply:n=>t.filter(i=>r(i.enabled)!==!1).reduce((i,s)=>s.apply(i),n),revert:t.every(n=>n.revert!=null)?n=>t.filter(i=>r(i.enabled)!==!1).reduceRight((i,s)=>s.revert(i),n):void 0,enabled:S(()=>t.filter(n=>r(n.enabled)!==!1).length>0),description:D(()=>u(B,null,[t.filter(n=>r(n.enabled)!==!1).map(n=>r(n.description)).filter(n=>n).map(Je)]))}})}const hl={class:"field"},pl={key:0,class:"field-title"},On=L({__name:"Select",props:{title:null,modelValue:null,options:null,placeholder:null,closeOnSelect:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){var o;const n=e,i=Lt(et(n,"title"),"span"),s=x((o=n.options.find(c=>c.value===n.modelValue))!=null?o:null);ze(et(n,"modelValue"),c=>{var f;ge(s)!==c&&(s.value=(f=n.options.find(d=>d.value===c))!=null?f:null)});function l(c){t("update:modelValue",c.value)}return(c,f)=>(_(),M("div",hl,[r(i)?(_(),M("span",pl,[(_(),j(ke(r(i))))])):T("",!0),u(r(Ki),{options:e.options,modelValue:s.value,"onUpdate:modelValue":[f[0]||(f[0]=d=>s.value=d),l],min:1,"label-by":"label",placeholder:e.placeholder,"close-on-select":e.closeOnSelect},null,8,["options","modelValue","placeholder","close-on-select"])]))}});var gl=L({props:{visibility:{type:P(Number),required:!0},display:{type:P(String,Object,Function),required:!0},style:P(String,Object,Array),classes:P(Object),earned:{type:P(Boolean),required:!0},id:{type:String,required:!0}},components:{Node:an},setup(e){const{display:t}=_e(e),n=Le("");return Fe(()=>{const i=ge(t);if(i==null){n.value="";return}if(yt(i)){n.value=K(i);return}const s=K(i.requirement,"h3"),l=K(i.effectDisplay||"","b"),o=K(i.optionsDisplay||"","span");n.value=K(D(()=>u("span",null,[u(s,null,null),i.effectDisplay?u("div",null,[u(l,null,null)]):null,i.optionsDisplay?u("div",{class:"equal-spaced"},[u(o,null,null)]):null])))}),{comp:n,unref:r,Visibility:be}}});function vl(e,t,n,i,s,l){var c;const o=pt("Node");return e.unref(e.visibility)!==e.Visibility.None?(_(),M("div",{key:0,style:he([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(c=e.unref(e.style))!=null?c:{}]),class:ue({feature:!0,milestone:!0,done:e.unref(e.earned),...e.unref(e.classes)})},[(_(),j(ke(e.unref(e.comp)))),u(o,{id:e.id},null,8,["id"])],6)):T("",!0)}var yl=Z(gl,[["render",vl],["__scopeId","data-v-f4e8794e"]]);ce.on("setupVue",e=>e.use(Ji));const bl=ni(),_l=Symbol("Milestone");let ht;(function(e){e.All="all",e.Configurable="configurable",e.Incomplete="incomplete",e.None="none"})(ht||(ht={}));function xe(e){const t=Ae(!1);return Re(()=>{var s;const n=(s=e==null?void 0:e())!=null?s:{};n.id=qt("milestone-"),n.type=_l,n[gt]=yl,n.earned=t,n.complete=function(){t.value=!0},$(n,"visibility"),Ne(n,"visibility",be.Visible);const i=n.visibility;if(n.visibility=S(()=>{const l=r(n.display);switch(ne.msDisplay){default:case ht.All:return r(i);case ht.Configurable:return r(n.earned)&&!(l!=null&&typeof l=="object"&&"optionsDisplay"in l)?be.None:r(i);case ht.Incomplete:return r(n.earned)?be.None:r(i);case ht.None:return be.None}}),$(n,"style"),$(n,"classes"),$(n,"display"),n[vt]=function(){const{visibility:l,display:o,style:c,classes:f,earned:d,id:p}=this;return{visibility:l,display:o,style:r(c),classes:f,earned:d,id:p}},n.shouldEarn){const l=n;Fe(()=>{var o,c;if(ne.active===A.id&&!l.earned.value&&r(l.visibility)===be.Visible&&((o=l.shouldEarn)==null?void 0:o.call(l))&&(l.earned.value=!0,(c=l.onComplete)==null||c.call(l),l.display)){const f=r(l.display),d=K(yt(f)?f:f.requirement);bl(u(B,null,[u("h3",null,[v("Milestone earned!")]),u("div",null,[u(d,null,null)])]))}})}return n})}ce.on("loadSettings",e=>{Ne(e,"msDisplay",ht.All)});const wl=Object.values(ht).map(e=>({label:ui(e),value:e}));ta(D(()=>u(On,{title:"Show Milestones",options:wl,"onUpdate:modelValue":e=>ne.msDisplay=e,modelValue:ne.msDisplay},null)));const Nl=Symbol("Reset");function kl(e){return Re(()=>{const t=e();return t.id=qt("reset-"),t.type=Nl,t.reset=function(){var i;const n=s=>{s&&typeof s=="object"&&(en in s?s[en].value=s[tn]:!(s instanceof a)&&!me(s)&&Object.values(s).forEach(l=>n(l)))};r(t.thingsToReset).forEach(n),ce.emit("reset",t),(i=t.onReset)==null||i.call(t)},$(t,"thingsToReset"),t})}const on={};ce.on("removeLayer",e=>{var t;(t=on[e.id])==null||t.call(on),on[e.id]=void 0});function Cl(e){return Re(()=>{const t=e();return t.currentGain==null&&(t.currentGain=S(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=a.floor(n).max(0),r(t.buyMax)||(n=n.min(1)),n})),t.actualGain==null&&(t.actualGain=t.currentGain),t.currentAt==null&&(t.currentAt=S(()=>{let n=t.scaling.currentAt(t);return t.roundUpCost&&(n=a.ceil(n)),n})),t.nextAt==null&&(t.nextAt=S(()=>{let n=t.scaling.nextAt(t);return t.roundUpCost&&(n=a.ceil(n)),n})),t.convert==null&&(t.convert=function(){var s;const n=r(t.currentGain),i=r(t.currentAt);t.gainResource.value=a.add(t.gainResource.value,n),t.spend(n,i),(s=t.onConvert)==null||s.call(t,n)}),t.spend==null&&(t.spend=function(){t.baseResource.value=0}),$(t,"currentGain"),$(t,"actualGain"),$(t,"currentAt"),$(t,"nextAt"),$(t,"buyMax"),Ne(t,"buyMax",!0),$(t,"roundUpCost"),Ne(t,"roundUpCost",!0),t})}function Sl(e,t){const n=Ie(e),i=Ie(t);return{currentGain(s){let l=r(s.baseResource.value);if(s.costModifier&&(l=s.costModifier.apply(l)),a.lt(l,r(n)))return 0;const o=a.div(l,r(n)).pow(r(i));return o.isNan()?new a(0):o},currentAt(s){let l=r(s.currentGain);return s.gainModifier&&(l=s.gainModifier.revert(l)),l=a.max(0,l).root(r(i)).times(r(n)),s.costModifier&&(l=s.costModifier.revert(l)),l},nextAt(s){let l=a.add(r(s.currentGain),1).floor();return s.gainModifier&&(l=s.gainModifier.revert(l)),l=a.max(0,l).root(r(i)).times(r(n)).max(r(n)),s.costModifier&&(l=s.costModifier.revert(l)),l}}}function Ml(e){return Cl(()=>{const t=e();return Ne(t,"buyMax",!1),t.currentGain==null&&(t.currentGain=S(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=a.floor(n).max(t.gainResource.value),r(t.buyMax)||(n=n.min(a.add(t.gainResource.value,1))),n})),t.actualGain==null&&(t.actualGain=S(()=>{let n=a.sub(a.floor(t.scaling.currentGain(t)),t.gainResource.value).max(0);return r(t.buyMax)||(n=n.min(1)),n})),Ne(t,"convert",function(){var s;const n=r(t.actualGain),i=r(t.currentAt);t.gainResource.value=t.gainModifier?t.gainModifier.apply(r(t.currentGain)):r(t.currentGain),t.spend(n,i),(s=t.onConvert)==null||s.call(t,n)}),t})}const Il="workshop",$t=2,Te=Gt(Il,function(){const e="Workshop",t="#D66B02",n="#D66B02",i=St(0,"foundation progress"),s=Ml(()=>({scaling:Sl(250,1.5),baseResource:se.logs,gainResource:i,roundUpCost:!0,buyMax:!1,spend(E,de){se.logs.value=a.sub(se.logs.value,de)}})),l=Se(()=>({display:D(()=>u(B,null,[u("b",{style:"font-size: x-large"},[v("Build part of the foundation")]),u("br",null,null),u("br",null,null),u("span",{style:"font-size: large"},[v("Cost:")," ",Bn(se.logs,a.gte(s.actualGain.value,1)?s.currentAt.value:s.nextAt.value)," ",se.logs.displayName])])),visibility:()=>X(a.lt(i.value,100)),canClick:()=>a.gte(s.actualGain.value,1)&&a.lt(i.value,100),onClick(){!r(this.canClick)||s.convert()},style:"width: 600px; min-height: unset"})),o=xe(()=>({display:{requirement:"1% Foundation Completed",effectDisplay:"Trees give 5% more logs for each % of foundation completed"},shouldEarn:()=>a.gte(i.value,1)})),c=xe(()=>({display:{requirement:"10% Foundation Completed",effectDisplay:"Cut an additional tree per second for each 5% of foundation completed"},shouldEarn:()=>a.gte(i.value,10),visibility:()=>X(o.earned.value)})),f=xe(()=>({display:{requirement:"20% Foundation Completed",effectDisplay:"Plant an additional tree per second for each 10% of foundation completed"},shouldEarn:()=>a.gte(i.value,20),visibility:()=>X(c.earned.value)})),d=xe(()=>({display:{requirement:"30% Foundation Completed",effectDisplay:"All automatic tree cutting is doubled"},shouldEarn:()=>a.gte(i.value,30),visibility:()=>X(f.earned.value)})),p=xe(()=>({display:{requirement:"40% Foundation Completed",effectDisplay:"All automatic tree planting is doubled"},shouldEarn:()=>a.gte(i.value,40),visibility:()=>X(d.earned.value)})),y=xe(()=>({display:{requirement:"50% Foundation Completed",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>a.gte(i.value,50),visibility:()=>X(p.earned.value)})),b=xe(()=>({display:{requirement:"75% Foundation Completed",effectDisplay:"The forest gains an extra tree for every 2% of foundation completed"},shouldEarn:()=>a.gte(i.value,75),visibility:()=>X(y.earned.value)})),g=xe(()=>({display:{requirement:"100% Foundation Completed",effectDisplay:"Trees' log gain is now raised to the 1.1th power"},shouldEarn:()=>a.gte(i.value,100),visibility:()=>X(b.earned.value)})),N={logGainMilestone1:o,autoCutMilestone1:c,autoPlantMilestone1:f,autoCutMilestone2:d,autoPlantMilestone2:p,logGainMilestone2:y,morePlantsMilestone1:b,logGainMilestone3:g},k=Vt(()=>({direction:J.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>F.day.value===$t?a.div(i.value,100):1,display:D(()=>F.day.value===$t?u(B,null,[G(i.value),v("%")]):"")}));return Fe(()=>{F.day.value===$t&&a.gte(i.value,100)&&(F.loreTitle.value="Day complete!",F.loreBody.value="The workshop complete, Santa once again dismisses you for the day. With a strong foundation, this workshop should suffice for supporting future work toward this impossible mission. Good Job!",F.day.value=$t+1,F.minimized.value=!1,A.devSpeed=0)}),{name:e,day:$t,color:t,foundationProgress:i,foundationConversion:s,milestones:N,minWidth:700,display:D(()=>u(B,null,[u("div",null,[F.day.value===$t?"Complete the foundation to complete the day":"Day Complete!"]),pe(k),u(Oe,null,null),pe(l),u("div",null,[v("You have "),G(i.value),v("% completed")]),u(Oe,null,null),vi(...Object.values(N))]))}}),Al="elves",Tt=4,dt=Gt(Al,function(){const e="Elves",t="red",n="#911D21",s=Vt(()=>({direction:J.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>F.day.value===Tt?a.div(E.value,6).times(.8333333333333334).add(a.div(a.add(oe.coal.value,1).log10(),a.log10(1e9)).clamp(0,1).div(6)):1,display:D(()=>F.day.value===Tt?a.lt(E.value,6)?u(B,null,[G(E.value),v("/6 elves")]):u(B,null,[G(oe.coal.value),v("/"),G(1e9),v(" coal")]):"")})),l=kl(()=>({thingsToReset:[se,Te,oe],onReset(){setTimeout(()=>{I.earned.value&&(se.row1Upgrades[4].bought.value=!0,se.row2Upgrades[4].bought.value=!0)})}}));function o(ye){const Be=S(()=>a.pow(4,E.value).times(1e6)),fe=Ae(0);function wt(Qe){if(Xe.bought.value){fe.value=a.add(fe.value,Qe);const st=a.recip(Ut.value);for(;a.gte(fe.value,st);)if(r(ye.buyable.canPurchase))ye.buyable.amount.value=a.add(ye.buyable.amount.value,1),fe.value=st.sub(.1);else{fe.value=st;break}}}const Xe=le(()=>({buyProgress:fe,update:wt,resource:oe.coal,cost:Be,display:()=>({title:ye.name,description:D(()=>u(B,null,[ye.description,Xe.bought.value?null:u(B,null,[" ",v("Training this elf will require resetting all your progress from days 1-3.")])])),showCost:!Xe.bought.value}),style:"width: 190px",onPurchase:l.reset}));return Xe}const c=o({name:"Holly",description:"Holly will automatically purchase cutters you can afford, without actually spending any logs.",buyable:se.row1Buyables[0]}),f=o({name:"Ivy",description:"Ivy will automatically purchase planters you can afford, without actually spending any logs.",buyable:se.row1Buyables[1]}),d=o({name:"Hope",description:"Hope will automatically purchase forest expanders you can afford, without actually spending any logs.",buyable:se.row1Buyables[2]}),p=[c,f,d],y=o({name:"Jack",description:"Jack will automatically purchase heated cutters you can afford, without actually spending any coal.",buyable:oe.heatedCutters}),b=o({name:"Mary",description:"Mary will automatically purchase heated planters you can afford, without actually spending any coal.",buyable:oe.heatedPlanters}),g=o({name:"Noel",description:"Noel will automatically purchase fertilized soil you can afford, without actually spending any ash.",buyable:oe.moreFertilizer}),N=[y,b,g],k={cuttersElf:c,plantersElf:f,expandersElf:d,heatedCuttersElf:y,heatedPlantersElf:b,fertilizerElf:g},E=S(()=>Object.values(k).filter(ye=>ye.bought.value).length),de=xe(()=>({display:{requirement:"1 Elf Trained",effectDisplay:"Manual cutting and planting can happen twice as often for each trained elf"},shouldEarn:()=>a.gte(E.value,1)})),I=xe(()=>({display:{requirement:"2 Elves Trained",effectDisplay:"Research I & II are't reset after training"},shouldEarn:()=>a.gte(E.value,2),visibility:()=>X(de.earned.value)})),C=xe(()=>({display:{requirement:"3 Elves Trained",effectDisplay:"Coal gain is raised to the 1.25"},shouldEarn:()=>a.gte(E.value,3),visibility:()=>X(I.earned.value)})),z=xe(()=>({display:{requirement:"4 Elves Trained",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>a.gte(E.value,4),visibility:()=>X(C.earned.value)})),ve=xe(()=>({display:{requirement:"5 Elves Trained",effectDisplay:"Forest is twice as large"},shouldEarn:()=>a.gte(E.value,5),visibility:()=>X(z.earned.value)})),Ee=xe(()=>({display:{requirement:"6 Elves Trained",effectDisplay:"Elves work twice as fast"},shouldEarn:()=>a.gte(E.value,6),visibility:()=>X(ve.earned.value)})),Ce=[de,I,C,z,ve,Ee],bt=Me(()=>[ie(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ee.earned}))]),Ut=S(()=>bt.apply(.1)),[At,_t]=Dn(()=>[{title:"Elf Auto-Buy Frequency",modifier:bt,base:10,unit:"/s"}]),Q=x(!1),Ue=D(()=>u(We,{modelValue:Q.value,"onUpdate:modelValue":ye=>Q.value=ye},{header:()=>u("h2",null,[e,v(" Modifiers")]),body:At}));return ce.on("update",ye=>{a.lt(F.day.value,Tt)||Object.values(k).forEach(Be=>Be.update(ye))}),Fe(()=>{F.day.value===Tt&&a.gte(E.value,6)&&a.gte(oe.coal.value,1e9)&&(F.loreTitle.value="Day complete!",F.loreBody.value="The workshop now hums with the bustling elves working everything. They can take it from here - you deserve a break after such a long day! Good Job!",F.day.value=Tt+1,F.minimized.value=!1,A.devSpeed=0)}),{name:e,color:t,elves:k,totalElves:E,milestones:Ce,generalTabCollapsed:_t,minWidth:700,display:D(()=>u(B,null,[u("div",null,[F.day.value===Tt?`Reach ${G(6)} trained elves and ${G(1e9)} ${oe.coal.displayName} to complete the day`:"Day Complete!"," ",v("-")," ",u("button",{class:"button",style:"display: inline-block;",onClick:()=>Q.value=!0},[v("Check Modifiers")])]),pe(s),pe(Ue),u(Oe,null,null),u("div",{style:"width: 600px"},[De(...p),De(...N)]),vi(...Ce)]))}}),El="coal",xt=3,oe=Gt(El,function(){const e="Coal",t="#151716",n="#B2BeB5",i="var(--foreground)",s=St(0,"coal"),l=Si(s),o=St(0,"ash"),c=1e7,f=Vt(()=>({direction:J.Right,width:600,height:25,fillStyle:`backgroundColor: ${t}`,progress:()=>F.day.value===xt?a.log10(l.value).div(Math.log10(c)):1,display:D(()=>F.day.value===xt?u(B,null,[G(l.value),v("/"),G(c)]):"")})),d=Ae(0),p=S(()=>a.times(d.value,1e3)),y=S(()=>a.times(d.value,.1)),b=S(()=>a.times(d.value,50)),g=Ye(()=>({resource:se.logs,cost(){return a.times(Ce.amount.value,10).plus(this.amount.value).pow(1.5).times(1e4)},display:D(()=>u(B,null,[u("h3",null,[v("Small Fire")]),u("br",null,null),v("Burn 1000 logs for 0.1 coal and 50 ash"),u("br",null,null),u("br",null,null),v("Currently:"),u("br",null,null),v("-"),te(p.value),v(" logs/sec"),u("br",null,null),v("+"),te(y.value),v(" coal/sec"),u("br",null,null),v("+"),te(b.value),v(" ash/sec"),u("br",null,null),u("br",null,null),v("Cost: "),G(r(g.cost)),v(" "),g.resource.displayName])),onPurchase(){d.value=a.add(d.value,1)},style:{color:i,width:"160px"}})),N=Se(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(d.value,0)},onClick(){d.value=0}})),k=Se(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(d.value,0)},onClick(){d.value=a.sub(d.value,1)}})),E=Se(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(d.value,g.amount.value)},onClick(){d.value=a.add(d.value,1)}})),de=Se(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(d.value,g.amount.value)},onClick(){d.value=g.amount.value}})),I=St(g.amount,"small fires"),C=Ae(0),z=S(()=>a.times(C.value,1e4)),ve=S(()=>a.times(C.value,10)),Ee=S(()=>a.times(C.value,1e3)),Ce=Ye(()=>({resource:I,cost:10,display:D(()=>u(B,null,[u("h3",null,[v("Bonfire")]),u("br",null,null),v("Burn 10,000 logs for 10 coal and 1000 ash"),u("br",null,null),u("br",null,null),v("Currently:"),u("br",null,null),v("-"),te(z.value),v(" logs/sec"),u("br",null,null),v("+"),te(ve.value),v(" coal/sec"),u("br",null,null),v("+"),te(Ee.value),v(" ash/sec"),u("br",null,null),u("br",null,null),v("Cost: "),G(r(Ce.cost)),v(" "),Ce.resource.displayName])),onPurchase(q){d.value=a.sub(d.value,q).max(0),C.value=a.add(C.value,1)},style:{color:i,width:"160px"}})),bt=Se(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(C.value,0)},onClick(){C.value=0}})),Ut=Se(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(C.value,0)},onClick(){C.value=a.sub(C.value,1)}})),At=Se(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(C.value,Ce.amount.value)},onClick(){C.value=a.add(C.value,1)}})),_t=Se(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(C.value,Ce.amount.value)},onClick(){C.value=Ce.amount.value}})),Q=Ae(0),Ue=S(()=>a.times(Q.value,1e6)),ye=S(()=>a.times(Q.value,1e4)),Be=S(()=>a.times(Q.value,1e4)),fe=Ye(()=>({resource:se.logs,cost(){return a.pow(1.1,this.amount.value).times(1e7)},display:D(()=>u(B,null,[u("h3",null,[v("Charcoal Kiln")]),u("br",null,null),v("Burn 1,000,000 logs for 10,000 coal and 10,000 ash"),u("br",null,null),u("br",null,null),v("Currently:"),u("br",null,null),v("-"),te(Ue.value),v(" logs/sec"),u("br",null,null),v("+"),te(ye.value),v(" coal/sec"),u("br",null,null),v("+"),te(Be.value),v(" ash/sec"),u("br",null,null),u("br",null,null),v("Cost: "),G(r(fe.cost)),v(" "),fe.resource.displayName])),onPurchase(){Q.value=a.add(Q.value,1)},style:{color:i,width:"160px"}})),wt=Se(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(Q.value,0)},onClick(){Q.value=0}})),Xe=Se(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.gt(Q.value,0)},onClick(){Q.value=a.sub(Q.value,1)}})),Qe=Se(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(Q.value,fe.amount.value)},onClick(){Q.value=a.add(Q.value,1)}})),st=Se(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:i},canClick(){return a.lt(Q.value,fe.amount.value)},onClick(){Q.value=fe.amount.value}})),at=le(()=>({resource:s,cost:5,display:{title:"Warmer Cutters",description:"Cut down twice as many trees/s"},style:{color:i}})),lt=le(()=>({resource:s,cost:5,display:{title:"Warmer Planters",description:"Plant twice as many trees/s"},style:{color:i}})),Pe=le(()=>({resource:o,cost:5e3,display:{title:"Ashy Soil",description:"Trees give 25% more logs"},style:{color:i}})),Ze=le(()=>({resource:I,cost:10,display:{title:"Bigger Fires",description:"Put all those fires together into a larger blaze"},onPurchase(){I.value=a.add(I.value,this.cost)},style:{color:i}})),Et=[at,lt,Pe,Ze],$e=le(()=>({resource:s,cost:250,display:{title:"Dedicated Cutter Heaters",description:"Double the bonus from Heated Cutters"},style:{color:i},visibility:()=>X(Ze.bought.value)})),Ht=le(()=>({resource:s,cost:250,display:{title:"Dedicated Planter Heaters",description:"Double the bonus from Heated Planters"},style:{color:i},visibility:()=>X(Ze.bought.value)})),rt=le(()=>({canAfford(){return a.gte(se.logs.value,1e5)&&a.gte(o.value,1e5)},onPurchase(){se.logs.value=a.sub(se.logs.value,1e5),o.value=a.sub(o.value,1e5)},display:D(()=>u(B,null,[u("h3",null,[v("Mulched Soil")]),u("br",null,null),v("Double the bonus from Fertilized Soil"),u("br",null,null),u("br",null,null),v("Cost: "),G(1e5),v(" "),se.logs.displayName,u("br",null,null),G(1e5),v(" "),o.displayName])),style:{color:i},visibility:()=>X(Ze.bought.value)})),jt=le(()=>({resource:se.logs,cost:1e7,display:{title:"Efficient Fires",description:"Move the fires underground to keep the coal from turning to ash"},style:{color:i},visibility:()=>X(Ze.bought.value)})),Nn=[$e,Ht,rt,jt],ot=Ye(()=>({resource:s,cost(){let q=this.amount.value;return a.gte(q,50)&&(q=a.pow(q,2).div(50)),a.gte(q,200)&&(q=a.pow(q,2).div(200)),a.gte(q,2e6)&&(q=a.pow(q,2).div(2e6)),a.add(q,1).pow(2.5).times(10)},display:{title:"Heated Cutters",description:"Even warmer cutters cut down trees faster",effectDisplay:D(()=>u(B,null,[v("Cutters cut down trees "),te(Wt.value),v("x faster")]))},style:{color:i},visibility:()=>X(at.bought.value)})),Pt=Ye(()=>({resource:s,cost(){let q=this.amount.value;return a.gte(q,50)&&(q=a.pow(q,2).div(50)),a.gte(q,200)&&(q=a.pow(q,2).div(200)),a.gte(q,2e6)&&(q=a.pow(q,2).div(2e6)),a.add(q,1).pow(2.5).times(10)},display:{title:"Heated Planters",description:"Even warmer planters plant trees faster",effectDisplay:D(()=>u(B,null,[v("Planters plant trees "),te(qn.value),v("x faster")]))},style:{color:i},visibility:()=>X(lt.bought.value)})),ut=Ye(()=>({resource:o,cost(){let q=this.amount.value;return a.gte(q,50)&&(q=a.pow(q,2).div(50)),a.gte(q,200)&&(q=a.pow(q,2).div(200)),a.gte(q,2e6)&&(q=a.pow(q,2).div(2e6)),a.add(q,1).pow(1.5).times(5e4)},display:{title:"Fertilized Soil",description:"More fertilizer helps trees grow bigger",effectDisplay:D(()=>u(B,null,[v("Trees give "),te(Ln.value),v("x more logs")]))},style:{color:i},visibility:()=>X(Pe.bought.value)})),zt=[ot,Pt,ut],O=Me(()=>[ee(()=>({addend(){return a.times(ot.amount.value,.25)},description:"Heated Cutters",enabled(){return a.gt(ot.amount.value,0)}})),ie(()=>({multiplier:2,description:"Dedicated Cutter Heaters",enabled:$e.bought}))]),Wt=S(()=>O.apply(1)),kn=Me(()=>[ee(()=>({addend(){return a.times(Pt.amount.value,.25)},description:"Heated Planters",enabled(){return a.gt(Pt.amount.value,0)}})),ie(()=>({multiplier:2,description:"Dedicated Planter Heaters",enabled:Ht.bought}))]),qn=S(()=>kn.apply(1)),Fi=Me(()=>[ee(()=>({addend(){return a.times(ut.amount.value,.25)},description:"Fertilized Soil",enabled(){return a.gt(ut.amount.value,0)}})),ie(()=>({multiplier:2,description:"Mulched Soil",enabled:rt.bought}))]),Ln=S(()=>Fi.apply(1)),Gn=Me(()=>[ee(()=>({addend(){return y.value},description:"Small Fires",enabled(){return a.gt(d.value,0)}})),ee(()=>({addend(){return ve.value},description:"Bonfires",enabled(){return a.gt(C.value,0)}})),ee(()=>({addend(){return ye.value},description:"Charcoal Kilns",enabled(){return a.gt(Q.value,0)}})),Mi(()=>({exponent:1.25,description:"3 Elves Trained",enabled:dt.milestones[2].earned}))]),Bi=S(()=>Gn.apply(0)),Un=Me(()=>[ee(()=>({addend(){return b.value},description:"Small Fires",enabled(){return a.gt(d.value,0)}})),ee(()=>({addend(){return Ee.value},description:"Bonfires",enabled(){return a.gt(C.value,0)}})),ee(()=>({addend(){return Be.value},description:"Charcoal Kilns",enabled(){return a.gt(Q.value,0)}}))]),Di=S(()=>Un.apply(0)),Hn=Me(()=>[ee(()=>({addend(){return a.negate(p.value)},description:"Small Fires",enabled(){return a.gt(d.value,0)}})),ee(()=>({addend(){return a.negate(z.value)},description:"Bonfires",enabled(){return a.gt(C.value,0)}})),ee(()=>({addend(){return a.negate(Ue.value)},description:"Charcoal Kilns",enabled(){return a.gt(Q.value,0)}}))]),jn=S(()=>Hn.apply(0)),[Oi,Ri]=Dn(()=>[{title:"Log Consumption",modifier:Hn,base:0,visible(){return a.gt(d.value,0)||a.gt(C.value,0)||a.gt(Q.value,0)}},{title:"Coal Gain",modifier:Gn,base:0,visible(){return a.gt(d.value,0)||a.gt(C.value,0)||a.gt(Q.value,0)}},{title:"Ash Gain",modifier:Un,base:0,visible(){return a.gt(d.value,0)||a.gt(C.value,0)||a.gt(Q.value,0)}}]),Cn=x(!1),Vi=D(()=>u(We,{modelValue:Cn.value,"onUpdate:modelValue":q=>Cn.value=q},{header:()=>u("h2",null,[e,v(" Modifiers")]),body:Oi}));return ce.on("update",q=>{a.lt(F.day.value,xt)||a.times(q,jn.value).negate().gt(se.logs.value)||(se.logs.value=a.times(q,jn.value).plus(se.logs.value),s.value=a.times(q,Bi.value).plus(s.value),o.value=a.times(q,Di.value).plus(o.value))}),Fe(()=>{F.day.value===xt&&a.gte(l.value,c)&&(F.loreTitle.value="Day complete!",F.loreBody.value="Santa looks at all the coal you've gathered and tells you you've done well! He says you should take the rest of the day off so you're refreshed for tomorrow's work. Good Job!",F.day.value=xt+1,F.minimized.value=!1,A.devSpeed=0)}),{name:e,color:t,coal:s,totalCoal:l,ash:o,activeFires:d,buildFire:g,activeBonfires:C,buildBonfire:Ce,activeKilns:Q,buildKiln:fe,warmerCutters:at,warmerPlanters:lt,basicFertilizer:Pe,unlockBonfire:Ze,dedicatedCutters:$e,dedicatedPlanters:Ht,betterFertilizer:rt,unlockKiln:jt,heatedCutters:ot,heatedPlanters:Pt,moreFertilizer:ut,computedHeatedCutterEffect:Wt,computedHeatedPlanterEffect:qn,computedFertilizerEffect:Ln,generalTabCollapsed:Ri,minWidth:700,display:D(()=>u(B,null,[u("div",null,[F.day.value===xt?`Reach ${G(c)} ${s.displayName} to complete the day`:"Day Complete!"," ",v("-")," ",u("button",{class:"button",style:"display: inline-block;",onClick:()=>Cn.value=!0},[v("Check Modifiers")])]),pe(f),pe(Vi),u(Oe,null,null),u(Jt,{resource:s,color:t,style:"margin-bottom: 0",effectDisplay:void 0},null),u(Oe,null,null),u(Jt,{resource:o,color:n,style:"margin-bottom: 0",effectDisplay:void 0},null),u(Oe,null,null),u(pi,null,{default:()=>[u(cn,null,{default:()=>[pe(g),u("div",null,[G(d.value),v("/"),G(g.amount.value)]),De(N,k,E,de)]}),Ze.bought.value?u(B,null,[u(Oe,null,null),u(cn,null,{default:()=>[pe(Ce),u("div",null,[G(C.value),v("/"),G(Ce.amount.value)]),De(bt,Ut,At,_t)]})]):void 0,jt.bought.value?u(B,null,[u(Oe,null,null),u(cn,null,{default:()=>[pe(fe),u("div",null,[G(Q.value),v("/"),G(fe.amount.value)]),De(wt,Xe,Qe,st)]})]):void 0]}),u(Oe,null,null),De(...Et),De(...Nn),De(...zt)]))}}),Pl="trees",Ft=1,se=Gt(Pl,function(){const e="Trees",t="#4BDC13",n="green",i=St(0,"logs"),s=Si(i),l=St(0,"saplings"),o=1e4,c=Me(()=>[ee(()=>({addend:()=>a.times(Ce.amount.value,10),description:"Expand Forest",enabled:C.bought})),ee(()=>({addend:()=>a.div(Te.foundationProgress.value,2),description:"75% Foundation Completed",enabled:Te.milestones.morePlantsMilestone1.earned})),ie(()=>({multiplier:2,description:"5 Elves Trained",enabled:dt.milestones[4].earned}))]),f=St(S(()=>a.sub(c.apply(10),l.value)),"trees"),d=le(()=>({resource:i,cost:10,display:{title:"Wooden Fingers",description:"Cut down an additional tree per click"}})),p=le(()=>({resource:i,cost:10,display:{title:"Leafy Fingers",description:"Plant an additional tree per click"}})),y=le(()=>({resource:i,cost:25,display:{title:"Automated Knives",description:"Cut down a tree every second"}})),b=le(()=>({resource:i,cost:25,display:{title:"Automated Spade",description:"Plant a tree every second"}})),g=le(()=>({resource:i,cost:40,display:{title:"Research I",description:"Trees give 25% more logs, and unlock more upgrades"}})),N=[d,p,y,b,g],k=le(()=>({resource:i,cost:50,visibility:()=>X(g.bought.value),display:{title:"Sharper Fingers",description:"Manually cut trees twice as often"}})),E=le(()=>({resource:i,cost:50,visibility:()=>X(g.bought.value),display:{title:"Greener Fingers",description:"Manually Plant trees twice as often"}})),de=le(()=>({resource:i,cost:150,visibility:()=>X(g.bought.value),display:{title:"Smart Knives",description:"Each time you manually chop trees, gain 1s of automatic tree chopping production"}})),I=le(()=>({resource:i,cost:150,visibility:()=>X(g.bought.value),display:{title:"Smart Spades",description:"Each time you manually plant trees, gain 1s of automatic tree planting production"}})),C=le(()=>({resource:i,cost:300,visibility:()=>X(g.bought.value),display:{title:"Research II",description:"Trees give 25% more logs, and unlock repeatable purchases"}})),z=[k,E,de,I,C],ve=Ye(()=>({resource:i,cost(){let O=this.amount.value;return a.gte(O,50)&&(O=a.pow(O,2).div(50)),a.gte(O,200)&&(O=a.pow(O,2).div(200)),a.gte(O,2e6)&&(O=a.pow(O,2).div(2e6)),a.times(100,O).add(200)},display:{title:"Generic Cutters",description:"Each cutter cuts down 1 tree/s"},visibility:()=>X(C.bought.value)})),Ee=Ye(()=>({resource:i,cost(){let O=this.amount.value;return a.gte(O,50)&&(O=a.pow(O,2).div(50)),a.gte(O,200)&&(O=a.pow(O,2).div(200)),a.gte(O,2e6)&&(O=a.pow(O,2).div(2e6)),a.times(100,O).add(200)},display:{title:"Generic Planters",description:"Each planter plants 0.5 trees/s"},visibility:()=>X(C.bought.value)})),Ce=Ye(()=>({resource:i,cost(){let O=this.amount.value;return a.gte(O,100)&&(O=a.pow(O,2).div(100)),a.gte(O,1e5)&&(O=a.pow(O,2).div(1e5)),a.pow(a.add(O,1),1.5).times(500)},display:{title:"Expand Forest",description:"Add 10 trees to the forest"},visibility:()=>X(C.bought.value)})),bt=[ve,Ee,Ce],Ut=Vt(()=>({direction:J.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>F.day.value===Ft?a.log10(s.value).div(Math.log10(o)):1,display:D(()=>F.day.value===Ft?u(B,null,[G(s.value),v("/"),G(o)]):"")})),At=Me(()=>[ee(()=>({addend:1,description:"Wooden Fingers",enabled:d.bought})),ee(()=>({addend:Be,description:"Smart Knives",enabled:de.bought}))]),_t=S(()=>At.apply(1)),Q=Me(()=>[ie(()=>({multiplier:.5,description:"Sharper Fingers",enabled:k.bought})),ie(()=>({multiplier:()=>a.pow(.5,dt.totalElves.value),description:"1 Elf Trained",enabled:dt.milestones[0].earned}))]),Ue=S(()=>Q.apply(1)),ye=Me(()=>[ee(()=>({addend:1,description:"Automated Knives",enabled:y.bought})),ee(()=>({addend:ve.amount,description:"Generic Cutters",enabled:C.bought})),ee(()=>({addend:()=>a.div(Te.foundationProgress.value,5).floor(),description:"10% Foundation Completed",enabled:Te.milestones.autoCutMilestone1.earned})),ie(()=>({multiplier:2,description:"30% Foundation Completed",enabled:Te.milestones.autoCutMilestone2.earned})),ie(()=>({multiplier:2,description:"Warmer Cutters",enabled:oe.warmerCutters.bought})),ie(()=>({multiplier:oe.computedHeatedCutterEffect,description:"Heated Cutters",enabled:()=>a.gt(oe.heatedCutters.amount.value,0)}))]),Be=S(()=>ye.apply(0)),fe=Me(()=>[ee(()=>({addend:1,description:"Leafy Fingers",enabled:p.bought})),ee(()=>({addend:at,description:"Smart Spades",enabled:I.bought}))]),wt=S(()=>fe.apply(1)),Xe=Me(()=>[ie(()=>({multiplier:.5,description:"Greener Fingers",enabled:E.bought})),ie(()=>({multiplier:()=>a.pow(.5,dt.totalElves.value),description:"1 Elf Trained",enabled:dt.milestones[0].earned}))]),Qe=S(()=>Xe.apply(1)),st=Me(()=>[ee(()=>({addend:1,description:"Automated Spade",enabled:b.bought})),ee(()=>({addend:()=>a.div(Ee.amount.value,2),description:"Generic Planters",enabled:C.bought})),ee(()=>({addend:()=>a.div(Te.foundationProgress.value,10).floor(),description:"20% Foundation Completed",enabled:Te.milestones.autoPlantMilestone1.earned})),ie(()=>({multiplier:2,description:"40% Foundation Completed",enabled:Te.milestones.autoPlantMilestone2.earned})),ie(()=>({multiplier:2,description:"Warmer Planters",enabled:oe.warmerPlanters.bought})),ie(()=>({multiplier:oe.computedHeatedPlanterEffect,description:"Heated Planters",enabled:()=>a.gt(oe.heatedPlanters.amount.value,0)}))]),at=S(()=>st.apply(0)),lt=Me(()=>[ie(()=>({multiplier:1.25,description:"Research I",enabled:g.bought})),ie(()=>({multiplier:1.25,description:"Research II",enabled:C.bought})),ie(()=>({multiplier:()=>a.div(Te.foundationProgress.value,20).add(1),description:"1% Foundation Completed",enabled:Te.milestones.logGainMilestone1.earned})),ie(()=>({multiplier:2,description:"50% Foundation Completed",enabled:Te.milestones.logGainMilestone2.earned})),ie(()=>({multiplier:1.25,description:"Ashy Soil",enabled:oe.basicFertilizer.bought})),ie(()=>({multiplier:oe.computedFertilizerEffect,description:"Fertilized Soil",enabled:()=>a.gt(oe.moreFertilizer.amount.value,0)})),ie(()=>({multiplier:2,description:"4 Elves Trained",enabled:dt.milestones[3].earned})),Mi(()=>({exponent:1.1,description:"100% Foundation Completed",enabled:Te.milestones.logGainMilestone3.earned}))]),Pe=Ae(0),Ze=Vt(()=>({direction:J.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>a.div(Pe.value,Ue.value)})),Et=Se(()=>({display:{title:"Cut trees",description:D(()=>u(B,null,[v("Cut down up to "),G(a.floor(_t.value))," ",v("tree"),a.eq(_t.value,1)?"":"s",v(" at once!"),u("br",null,null),pe(Ze)]))},style:{minHeight:"80px"},canClick:()=>a.gte(f.value,1)&&a.gte(Pe.value,Ue.value),onClick(){if(a.lt(Pe.value,Ue.value))return;const O=a.floor(a.min(f.value,a.times(_t.value,a.div(Pe.value,Ue.value).floor())));i.value=a.add(i.value,lt.apply(O)),l.value=a.add(l.value,O),Pe.value=0}})),$e=Ae(0),Ht=Vt(()=>({direction:J.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>a.div($e.value,Qe.value)})),rt=Se(()=>({display:{title:"Plant trees",description:D(()=>u(B,null,[v("Plant up to "),G(a.floor(wt.value))," ",v("tree"),a.eq(wt.value,1)?"":"s",v(" at once!"),u("br",null,null),pe(Ht)]))},style:{minHeight:"80px"},canClick:()=>a.gte(l.value,1)&&a.gte($e.value,Qe.value),onClick(){if(a.lt($e.value,Qe.value))return;const O=a.floor(a.min(l.value,a.times(wt.value,a.div($e.value,Qe.value).floor())));l.value=a.sub(l.value,O),$e.value=0}})),[jt,Nn]=Dn(()=>[{title:"Logs per Tree",modifier:lt,base:1,visible:g.bought},{title:"Manual Cutting Amount",modifier:At,base:1,visible:d.bought,unit:"/click"},{title:"Manual Cutting Cooldown",modifier:Q,base:1,visible:d.bought,unit:"s"},{title:"Manual Planting Amount",modifier:fe,base:1,visible:p.bought,unit:"/click"},{title:"Manual Planting Cooldown",modifier:Xe,base:1,visible:p.bought,unit:"s"},{title:"Auto Cutting Amount",modifier:ye,base:0,visible:y.bought,unit:"/s"},{title:"Auto Planting Amount",modifier:st,base:0,visible:b.bought,unit:"/s"},{title:"Forest Size",modifier:c,base:10,visible:C.bought}]),ot=x(!1),Pt=D(()=>u(We,{modelValue:ot.value,"onUpdate:modelValue":O=>ot.value=O},{header:()=>u("h2",null,[e,v(" Modifiers")]),body:jt}));ce.on("update",O=>{if(a.lt(F.day.value,Ft))return;a.gte(Pe.value,Ue.value)?Pe.value=Ue.value:(Pe.value=a.add(Pe.value,O),Et.isHolding.value&&Et.onClick()),a.gte($e.value,Qe.value)?$e.value=Qe.value:($e.value=a.add($e.value,O),rt.isHolding.value&&rt.onClick());const Wt=a.min(f.value,a.times(Be.value,O));i.value=a.add(i.value,lt.apply(Wt)),l.value=a.add(l.value,Wt);const kn=a.min(l.value,a.times(at.value,O));l.value=a.sub(l.value,kn)}),Fe(()=>{F.day.value===Ft&&a.gte(s.value,o)&&(F.loreTitle.value="Day complete!",F.loreBody.value="Santa looks at all the wood you've gathered and tells you you've done well! He says you should take the rest of the day off so you're refreshed for tomorrow's work. Good Job!",F.day.value=Ft+1,F.minimized.value=!1,A.devSpeed=0)});const ut=S(()=>a.sub(Be.value,at.value)),zt=S(()=>a.sub(at.value,Be.value));return{name:e,color:t,logs:i,totalLogs:s,trees:f,saplings:l,cutTree:Et,plantTree:rt,row1Upgrades:N,row2Upgrades:z,row1Buyables:bt,manualCutProgress:Pe,manualPlantProgress:$e,generalTabCollapsed:Nn,minWidth:700,display:D(()=>u(B,null,[u("div",null,[F.day.value===Ft?`Reach ${G(1e4)} ${i.displayName} to complete the day`:"Day Complete!"," ",v("-")," ",u("button",{class:"button",style:"display: inline-block;",onClick:()=>ot.value=!0},[v("Check Modifiers")])]),pe(Ut),pe(Pt),u(Oe,null,null),u(Jt,{resource:i,color:t,style:"margin-bottom: 0",effectDisplay:a.gt(Be.value,0)?`+${te(lt.apply(Be.value))}/s`:void 0},null),u(Jt,{resource:l,color:n,style:"margin-bottom: 0",effectDisplay:{[-1]:`${G(ut.value)}/s`,0:void 0,1:`+${G(ut.value)}/s`}[a.compare(ut.value,0)]},null),u(Jt,{resource:f,color:n,style:"margin-bottom: 0",effectDisplay:{[-1]:`${G(zt.value)}/s`,0:void 0,1:`+${G(zt.value)}/s`}[a.compare(zt.value,0)]},null),u(Oe,null,null),De(Et,rt),u("div",null,[v("Tip: You can hold down on actions to perform them automatically")]),u(Oe,null,null),De(...N),De(...z),De(...bt)]))}});var $l="./assets/tree.35808197.png",Tl="./assets/sws.714ad454.png",xl="data:image/png;base64,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",Fl="./assets/elf.9fbfa563.png";const F=Gt("main",function(){const e=Ae(1),t=x(""),n=x("");function i(l){const o=Ae(!1);return Re(()=>{const c=l(),f=Ie(c.shouldNotify);return{...c,opened:o,shouldNotify:f,[gt]:Ra,[vt]:function(){const{day:d,layer:p,symbol:y,opened:b,shouldNotify:g,story:N}=this;return{day:d,symbol:y,opened:b,shouldNotify:g,onOpenLore(){var k,E;t.value=r((E=(k=we[p!=null?p:"trees"])==null?void 0:k.name)!=null?E:""),n.value=N},onOpenLayer(){if(window.matchMedia("(min-width: 1468px)").matches)if(A.tabs.includes(p!=null?p:"trees")){const k=A.tabs.lastIndexOf(p!=null?p:"trees");A.tabs.splice(k,1)}else A.tabs.push(p!=null?p:"trees"),F.minimized.value=!0;else A.tabs.splice(1,1/0,p!=null?p:"trees")},onUnlockLayer(){b.value=!0,setTimeout(()=>{var k,E;t.value=r((E=(k=we[p!=null?p:"trees"])==null?void 0:k.name)!=null?E:""),n.value=N,A.devSpeed=null},1e3)}}}}})}const s=[i(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:$l,story:"Oh no! Santa forgot about Christmas and it's only 25 days away! He's asked for your help due to your history getting large quantities of things in short amounts of time. Unfortunately you're really starting from scratch here - let's start with getting wood, which you'll need for everything from building workshops to wrapping paper to many of the toys themselves!"})),i(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:Tl,story:"Santa looked over your tree farm and was impressed with how much you could accomplish in just one day. Today's goal is to get a workshop built up for the elves to work in - and apparently, they need quite a lot of space to work!"})),i(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:xl,story:"Santa tells you that unfortunately there are quite a few naughty children out there this year, and he's going to need you to gather as much coal as you can for him to give out."})),i(()=>({day:4,shouldNotify:!1,layer:"elves",symbol:Fl,story:"Alright, it seems you finally have enough things setup to start bringing in the elves! Unfortunately, it seems they'll need to be retrained on how to help, since they're out of practice by 11 months!"})),i(()=>({day:5,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:6,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:7,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:8,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:9,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:10,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:11,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:12,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:13,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:14,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:15,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:16,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:17,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:18,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:19,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:20,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:21,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:22,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:23,shouldNotify:!1,layer:null,symbol:"",story:""})),i(()=>({day:24,shouldNotify:!1,layer:null,symbol:"",story:""}))];return{name:"Calendar",days:s,day:e,loreTitle:t,loreBody:n,minWidth:700,display:D(()=>u(B,null,[A.devSpeed===0?u("div",null,[v("Game Paused")]):null,A.devSpeed&&A.devSpeed!==1?u("div",null,[v("Dev Speed: "),te(A.devSpeed),v("x")]):null,A.offlineTime?u("div",null,[v("Offline Time: "),yn(A.offlineTime)]):null,u(Oe,null,null),u("div",{class:"advent"},[s.reduce((l,o)=>(l[l.length-1].length===4&&l.push([]),l[l.length-1].push(o),l),[[]]).map(l=>De(...l))])]))}}),Bl=e=>[F,se,Te,oe,dt],Ii=S(()=>!1);function Dl(e,t){}var Ai=Object.freeze(Object.defineProperty({__proto__:null,main:F,getInitialLayers:Bl,hasWon:Ii,fixOldSave:Dl},Symbol.toStringTag,{value:"Module"}));const Ol=L({components:{Context:_i},props:{index:{type:Number,required:!0},tab:{type:Function,required:!0},display:{type:P(Object,String,Function),required:!0},minimized:{type:Object,required:!0},minWidth:{type:P(Number,String),required:!0},name:{type:P(String),required:!0},color:P(String),minimizable:P(Boolean),nodes:{type:Object,required:!0}},setup(e){const{display:t,index:n,minimized:i,minWidth:s,tab:l}=_e(e),o=bi(t),c=S(()=>W.allowGoBack&&n.value>0&&!i.value);function f(){A.tabs.splice(r(e.index),1)}Mt(()=>p(i.value,r(s.value))),ze([i,la(s)],([y,b])=>p(y,b));function d(y){e.nodes.value=y}function p(y,b){const g=typeof b=="number"||Number.isNaN(parseInt(b))?b+"px":b,N=l.value();N!=null&&(y?(N.style.flexGrow="0",N.style.flexShrink="0",N.style.width="60px",N.style.minWidth=N.style.flexBasis="",N.style.margin="0"):(N.style.flexGrow="",N.style.flexShrink="",N.style.width="",N.style.minWidth=N.style.flexBasis=g,N.style.margin=""))}return{component:o,showGoBack:c,updateNodes:d,unref:r,goBack:f}}});function Rl(e,t,n,i,s,l){const o=pt("Context");return _(),M("div",{class:"layer-container",style:he({"--layer-color":e.unref(e.color)})},[e.showGoBack?(_(),M("button",{key:0,class:"goBack",onClick:t[0]||(t[0]=(...c)=>e.goBack&&e.goBack(...c))},"\u274C")):T("",!0),e.minimized.value?(_(),M("button",{key:1,class:"layer-tab minimized",onClick:t[1]||(t[1]=c=>e.minimized.value=!1)},[m("div",null,H(e.unref(e.name)),1)])):(_(),M("div",{key:2,class:ue(["layer-tab",{showGoBack:e.showGoBack}])},[u(o,{onUpdateNodes:e.updateNodes},{default:R(()=>[(_(),j(ke(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(_(),M("button",{key:3,class:"minimize",onClick:t[2]||(t[2]=c=>e.minimized.value=!0)}," \u25BC ")):T("",!0)],4)}var Vl=Z(Ol,[["render",Rl],["__scopeId","data-v-0158bec3"]]);const Ei=e=>(tt("data-v-4b4bda40"),e=e(),nt(),e),ql=Ei(()=>m("h2",null,"Changelog",-1)),Ll=Ei(()=>m("details",{open:""},[m("summary",null,[v("v0.0 Initial Commit - "),m("time",null,"2021-09-04")]),v(" This is the first release :D "),m("ul",null,[m("li",{class:"feature"},"Did everything"),m("li",{class:"fix"},"Had some fun"),m("li",{class:"breaking"},"Removed everything"),m("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),Gl=L({__name:"Changelog",setup(e,{expose:t}){const n=x(!1);return t({open(){n.value=!0}}),(i,s)=>(_(),j(We,{modelValue:n.value,"onUpdate:modelValue":s[0]||(s[0]=l=>n.value=l)},{header:R(()=>[ql]),body:R(()=>[Ll]),_:1},8,["modelValue"]))}});var Ul=Z(Gl,[["__scopeId","data-v-4b4bda40"]]),Hl=L({props:{element:Object,display:{type:P(Object,String,Function),required:!0},style:P(Object,String,Array),classes:P(Object),direction:P(String),xoffset:P(String),yoffset:P(String),pinned:Object},setup(e){const{element:t,display:n,pinned:i}=_e(e),s=x(!1),l=S(()=>(ge(i)||s.value)&&o.value),o=Lt(n),c=Le(K(D(()=>{const p=ge(t);return p==null?"":Je(p)})));function f(p){const y=i;p.shiftKey&&y&&(y.value=!y.value,p.stopPropagation(),p.preventDefault())}const d=S(()=>ge(i)&&sn[ne.theme].showPin);return{Direction:J,isHovered:s,isShown:l,comp:o,elementComp:c,unref:r,togglePinned:f,showPin:d}}});const jl={key:0,class:"material-icons pinned"};function zl(e,t,n,i,s,l){return _(),M("div",{class:ue(["tooltip-container",{shown:e.isShown}]),onMouseenter:t[0]||(t[0]=o=>e.isHovered=!0),onMouseleave:t[1]||(t[1]=o=>e.isHovered=!1),onClickCapture:t[2]||(t[2]=(...o)=>e.togglePinned&&e.togglePinned(...o))},[Ke(e.$slots,"default",{},void 0,!0),e.elementComp?(_(),j(ke(e.elementComp),{key:0})):T("",!0),u(vn,{name:"fade"},{default:R(()=>{var o;return[e.isShown?(_(),M("div",{key:0,class:ue(["tooltip",{top:e.unref(e.direction)===e.Direction.Up,left:e.unref(e.direction)===e.Direction.Left,right:e.unref(e.direction)===e.Direction.Right,bottom:e.unref(e.direction)===e.Direction.Down,...e.unref(e.classes)}]),style:he([{"--xoffset":e.unref(e.xoffset)||"0px","--yoffset":e.unref(e.yoffset)||"0px"},(o=e.unref(e.style))!=null?o:{}])},[e.showPin?(_(),M("span",jl,"push_pin")):T("",!0),e.comp?(_(),j(ke(e.comp),{key:1})):T("",!0)],6)):T("",!0)]}),_:1})],34)}var re=Z(Hl,[["render",zl],["__scopeId","data-v-6102fa3a"]]);const Wl={class:"info-modal-header"},Ql=["src","alt"],Kl={class:"info-modal-title"},Jl={key:0},Xl={key:0},Zl={key:0},Yl=m("div",null," Made in Profectus, by thepaperpilot with inspiration from Acameada and Jacorb ",-1),er=m("br",null,null,-1),tr=m("br",null,null,-1),nr=["href"],ir=m("span",{class:"material-icons info-modal-discord"},"discord",-1),sr=m("div",null,[m("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link"},[m("span",{class:"material-icons info-modal-discord"},"discord"),v(" The Paper Pilot Community ")])],-1),ar=m("div",null,[m("a",{href:"https://discord.gg/F3xveHV",class:"info-modal-discord-link"},[m("span",{class:"material-icons info-modal-discord"},"discord"),v(" The Modding Tree ")])],-1),lr=m("br",null,null,-1);var rr=L({__name:"Info",props:{changelog:null},setup(e,{expose:t}){const n=e,{title:i,logo:s,author:l,discordName:o,discordLink:c,versionNumber:f,versionTitle:d}=W,p=_e(n),y=x(!1),b=S(()=>yn(A.timePlayed)),g=S(()=>K(D(()=>u(B,null,[na.map(pe)]))));t({open(){y.value=!0}});function N(){var k;(k=r(p.changelog))==null||k.open()}return(k,E)=>(_(),j(We,{modelValue:y.value,"onUpdate:modelValue":E[0]||(E[0]=de=>y.value=de)},{header:R(()=>[m("div",Wl,[r(s)?(_(),M("img",{key:0,class:"info-modal-logo",src:r(s),alt:r(i)},null,8,Ql)):T("",!0),m("div",Kl,[m("h2",null,H(r(i)),1),m("h4",null,[v(" v"+H(r(f)),1),r(d)?(_(),M("span",Jl,": "+H(r(d)),1)):T("",!0)])])])]),body:R(({shown:de})=>[de?(_(),M("div",Xl,[r(l)?(_(),M("div",Zl,"By "+H(r(l)),1)):T("",!0),Yl,er,m("div",{class:"link",onClick:N},"Changelog"),tr,m("div",null,[r(c)?(_(),M("a",{key:0,href:r(c),class:"info-modal-discord-link"},[ir,v(" "+H(r(o)),1)],8,nr)):T("",!0)]),sr,ar,lr,m("div",null,"Time Played: "+H(r(b)),1),(_(),j(ke(r(g))))])):T("",!0)]),_:1},8,["modelValue"]))}});const or={class:"field"},ur=L({__name:"Toggle",props:{title:null,modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,i=S(()=>K(r(n.title)||"","span")),s=S({get(){return!!n.modelValue},set(l){t("update:modelValue",l)}});return(l,o)=>(_(),M("label",or,[En(m("input",{type:"checkbox",class:"toggle","onUpdate:modelValue":o[0]||(o[0]=c=>me(s)?s.value=c:null)},null,512),[[ji,r(s)]]),(_(),j(ke(r(i))))]))}});var ft=Z(ur,[["__scopeId","data-v-2b109500"]]);const Pi=e=>(tt("data-v-bc13791c"),e=e(),nt(),e),cr=Pi(()=>m("div",{class:"header"},[m("h2",null,"Options")],-1)),dr=Pi(()=>m("hr",null,null,-1));var fr=L({__name:"Options",setup(e,{expose:t}){const n=x(!1);t({open(){n.value=!0}});const i=Object.keys(sn).map(N=>({label:ui(N),value:N})),s=S(()=>K(D(()=>u(B,null,[hi.map(pe)])))),{showTPS:l,theme:o,unthrottled:c}=_e(ne),{autosave:f,offlineProd:d}=_e(A),p=S({get(){return A.devSpeed===0},set(N){A.devSpeed=N?0:null}}),y=D(()=>u("span",null,[v("Offline Production"),u(re,{display:"Save-specific"},{default:()=>[v("*")]})])),b=D(()=>u("span",null,[v("Autosave"),u(re,{display:"Save-specific"},{default:()=>[v("*")]})])),g=D(()=>u("span",null,[v("Pause game"),u(re,{display:"Save-specific"},{default:()=>[v("*")]})]));return(N,k)=>(_(),j(We,{modelValue:n.value,"onUpdate:modelValue":k[6]||(k[6]=E=>n.value=E)},{header:R(()=>[cr]),body:R(()=>[u(On,{title:"Theme",options:r(i),modelValue:r(o),"onUpdate:modelValue":k[0]||(k[0]=E=>me(o)?o.value=E:null)},null,8,["options","modelValue"]),(_(),j(ke(r(s)))),u(ft,{title:"Show TPS",modelValue:r(l),"onUpdate:modelValue":k[1]||(k[1]=E=>me(l)?l.value=E:null)},null,8,["modelValue"]),dr,u(ft,{title:"Unthrottled",modelValue:r(c),"onUpdate:modelValue":k[2]||(k[2]=E=>me(c)?c.value=E:null)},null,8,["modelValue"]),u(ft,{title:r(y),modelValue:r(d),"onUpdate:modelValue":k[3]||(k[3]=E=>me(d)?d.value=E:null)},null,8,["title","modelValue"]),u(ft,{title:r(b),modelValue:r(f),"onUpdate:modelValue":k[4]||(k[4]=E=>me(f)?f.value=E:null)},null,8,["title","modelValue"]),r(W).enablePausing?(_(),j(ft,{key:0,title:r(g),modelValue:r(p),"onUpdate:modelValue":k[5]||(k[5]=E=>me(p)?p.value=E:null)},null,8,["title","modelValue"])):T("",!0)]),_:1},8,["modelValue"]))}});var mr=Z(fr,[["__scopeId","data-v-bc13791c"]]);const hr=["onSubmit"],pr={class:"field"},gr={key:0,class:"field-title"},vr=["placeholder"],yr=L({__name:"Text",props:{title:null,modelValue:null,textArea:{type:Boolean},placeholder:null,maxHeight:null,submitOnBlur:{type:Boolean}},emits:["update:modelValue","submit","cancel"],setup(e,{emit:t}){const n=e,i=Lt(et(n,"title"),"span"),s=Le(null);gn(()=>{var f;(f=s.value)==null||f.focus()});const l=S({get(){return r(n.modelValue)||""},set(f){t("update:modelValue",f)}});function o(){t("submit")}function c(){n.submitOnBlur!==!1?t("submit"):t("cancel")}return(f,d)=>(_(),M("form",{onSubmit:Xt(o,["prevent"])},[m("div",pr,[r(i)?(_(),M("span",gr,[(_(),j(ke(r(i))))])):T("",!0),e.textArea?(_(),j(r(Zi),{key:1,modelValue:r(l),"onUpdate:modelValue":d[0]||(d[0]=p=>me(l)?l.value=p:null),placeholder:e.placeholder,maxHeight:e.maxHeight,onBlur:c,ref_key:"field",ref:s},null,8,["modelValue","placeholder","maxHeight"])):En((_(),M("input",{key:2,type:"text","onUpdate:modelValue":d[1]||(d[1]=p=>me(l)?l.value=p:null),placeholder:e.placeholder,class:ue({fullWidth:!e.title}),onBlur:c,ref_key:"field",ref:s},null,42,vr)),[[zi,r(l)]])])],40,hr))}});var $i=Z(yr,[["__scopeId","data-v-67b44a54"]]);const br={key:0},_r=["onClick","disabled"],wr={key:0},Nr=["onClick"],kr=L({__name:"DangerButton",props:{disabled:{type:Boolean},skipConfirm:{type:Boolean}},emits:["click","confirmingChanged"],setup(e,{emit:t}){const i=_e(e),s=x(!1);ze(s,c=>{t("confirmingChanged",c)});function l(){if(r(i.skipConfirm)){t("click");return}s.value&&t("click"),s.value=!s.value}function o(){s.value=!1}return(c,f)=>(_(),M("span",{class:ue(["container",{confirming:s.value}])},[s.value?(_(),M("span",br,"Are you sure?")):T("",!0),m("button",{onClick:Xt(l,["stop"]),class:"button danger",disabled:e.disabled},[s.value?(_(),M("span",wr,"Yes")):Ke(c.$slots,"default",{key:1},void 0,!0)],8,_r),s.value?(_(),M("button",{key:1,class:"button",onClick:Xt(o,["stop"])},"No",8,Nr)):T("",!0)],2))}});var Cr=Z(kr,[["__scopeId","data-v-2f8ef34c"]]);const Sr=["onClick"],Mr=L({__name:"FeedbackButton",props:{left:{type:Boolean}},emits:["click"],setup(e,{emit:t}){const n=x(!1),i=x(null);function s(){t("click"),i.value&&clearTimeout(i.value),n.value=!1,Mt(()=>{n.value=!0,i.value=setTimeout(()=>n.value=!1,500)})}return(l,o)=>(_(),M("button",{onClick:Xt(s,["stop"]),class:ue(["feedback",{activated:n.value,left:e.left}])},[Ke(l.$slots,"default",{},void 0,!0)],10,Sr))}});var Ir=Z(Mr,[["__scopeId","data-v-01a1b95c"]]);const it=e=>(tt("data-v-5285ac49"),e=e(),nt(),e),Ar=it(()=>m("div",{class:"handle material-icons"},"drag_handle",-1)),Er={key:0,class:"actions"},Pr=it(()=>m("span",{class:"material-icons"},"content_paste",-1)),$r=it(()=>m("span",{class:"material-icons"},"content_copy",-1)),Tr=it(()=>m("span",{class:"material-icons"},"edit",-1)),xr=it(()=>m("span",{class:"material-icons",style:{margin:"-2px"}},"delete",-1)),Fr={key:1,class:"actions"},Br=it(()=>m("span",{class:"material-icons"},"check",-1)),Dr=it(()=>m("span",{class:"material-icons"},"close",-1)),Or={key:2,class:"details"},Rr={class:"save-version"},Vr=it(()=>m("br",null,null,-1)),qr={key:0},Lr={key:1},Gr={key:3,class:"details"},Ur={key:4,class:"details error"},Hr=it(()=>m("br",null,null,-1)),jr=L({__name:"Save",props:{save:null},emits:["export","open","duplicate","delete","editName"],setup(e,{emit:t}){const n=e,{save:i}=_e(n),s=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),l=x(!1),o=x(!1),c=x("");ze(l,()=>c.value=i.value.name||"");const f=S(()=>i.value&&i.value.id===A.id),d=S(()=>f.value?A.time:i.value&&i.value.time||0),p=bi(S(()=>{var b,g,N,k;return`Day ${(k=(N=(g=(b=i.value)==null?void 0:b.layers)==null?void 0:g.main)==null?void 0:N.day)!=null?k:1}`}));function y(){t("editName",c.value),l.value=!1}return(b,g)=>(_(),M("div",{class:ue(["save",{active:r(f)}])},[Ar,l.value?(_(),M("div",Fr,[m("button",{onClick:y,class:"button"},[u(re,{display:"Save",direction:r(J).Left,class:"info"},{default:R(()=>[Br]),_:1},8,["direction"])]),m("button",{onClick:g[5]||(g[5]=N=>l.value=!l.value),class:"button"},[u(re,{display:"Cancel",direction:r(J).Left,class:"info"},{default:R(()=>[Dr]),_:1},8,["direction"])])])):(_(),M("div",Er,[r(i).error==null&&!o.value?(_(),j(Ir,{key:0,onClick:g[0]||(g[0]=N=>t("export")),class:"button",left:""},{default:R(()=>[u(re,{display:"Export",direction:r(J).Left,class:"info"},{default:R(()=>[Pr]),_:1},8,["direction"])]),_:1})):T("",!0),r(i).error==null&&!o.value?(_(),M("button",{key:1,onClick:g[1]||(g[1]=N=>t("duplicate")),class:"button"},[u(re,{display:"Duplicate",direction:r(J).Left,class:"info"},{default:R(()=>[$r]),_:1},8,["direction"])])):T("",!0),r(i).error==null&&!o.value?(_(),M("button",{key:2,onClick:g[2]||(g[2]=N=>l.value=!l.value),class:"button"},[u(re,{display:"Edit Name",direction:r(J).Left,class:"info"},{default:R(()=>[Tr]),_:1},8,["direction"])])):T("",!0),u(Cr,{disabled:r(f),onClick:g[3]||(g[3]=N=>t("delete")),onConfirmingChanged:g[4]||(g[4]=N=>o.value=N)},{default:R(()=>[u(re,{display:"Delete",direction:r(J).Left,class:"info"},{default:R(()=>[xr]),_:1},8,["direction"])]),_:1},8,["disabled"])])),r(i).error==null&&!l.value?(_(),M("div",Or,[m("button",{class:"button open",onClick:g[6]||(g[6]=N=>t("open"))},[m("h3",null,H(r(i).name),1)]),m("span",Rr,"v"+H(r(i).modVersion),1),Vr,r(d)?(_(),M("div",qr,"Last played "+H(r(s).format(r(d))),1)):T("",!0),r(p)?(_(),M("div",Lr,[(_(),j(ke(r(p))))])):T("",!0)])):r(i).error==null&&l.value?(_(),M("div",Gr,[u($i,{modelValue:c.value,"onUpdate:modelValue":g[7]||(g[7]=N=>c.value=N),class:"editname",onSubmit:y},null,8,["modelValue"])])):(_(),M("div",Ur,[v(" Error: Failed to load save with id "+H(r(i).id),1),Hr,v(H(r(i).error),1)]))],2))}});var zr=Z(jr,[["__scopeId","data-v-5285ac49"]]);const Rn=e=>(tt("data-v-3b9991aa"),e=e(),nt(),e),Wr=Rn(()=>m("h2",null,"Saves Manager",-1)),Qr={class:"modal-footer"},Kr={class:"field"},Jr=Rn(()=>m("span",{class:"field-title"},"Create Save",-1)),Xr={class:"field-buttons"},Zr={class:"footer"},Yr=Rn(()=>m("div",{style:{"flex-grow":"1"}},null,-1)),eo=L({__name:"SavesManager",setup(e,{expose:t}){const n=x(!1),i=x(null);t({open(){n.value=!0}});const s=x(!1),l=x(""),o=x(null);ze(l,I=>{I?Mt(()=>{try{if(I[0]!=="{")if(I[0]==="e")I=decodeURIComponent(escape(atob(I)));else if(I[0]==="\u1BE1")I=mt.decompressFromUTF16(I);else{console.warn("Unable to determine preset encoding",I),s.value=!0;return}const C=JSON.parse(I);if(typeof C!="object"){s.value=!0;return}const z=un();C.id=z,He(C),l.value="",s.value=!1,ne.saves.push(z)}catch{s.value=!0}}):s.value=!1});let c={},f=x(Object.keys(c).reduce((I,C)=>(I.push({label:C.split("/").slice(-1)[0].slice(0,-4),value:c[C]}),I),[]));const d=An({});function p(I){if(d[I]==null){let C=localStorage.getItem(I);if(C==null)d[I]={error:"Save doesn't exist in localStorage",id:I};else if(C==="dW5kZWZpbmVk")d[I]={error:"Save is undefined",id:I};else try{if(C[0]!=="{")if(C[0]==="e")C=decodeURIComponent(escape(atob(C)));else if(C[0]==="\u1BE1")C=mt.decompressFromUTF16(C);else return console.warn("Unable to determine preset encoding",C),s.value=!0,d[I]={error:"Unable to determine preset encoding",id:I},d[I];d[I]={...JSON.parse(C),id:I}}catch(z){d[I]={error:z,id:I},console.warn(`SavesManager: Failed to load info about save with id ${I}: +${z} +${C}`)}}return d[I]}ze(n,I=>{I&&Object.keys(d).forEach(C=>delete d[C])});const y=S(()=>ne.saves.reduce((I,C)=>(I[C]=p(C),I),{}));function b(I){let C;switch(A.id===I?C=di(A[ae]):C=JSON.stringify(y.value[I]),W.exportEncoding){default:console.warn(`Unknown save encoding: ${W.exportEncoding}. Defaulting to lz`);case"lz":C=mt.compressToUTF16(C);break;case"base64":C=btoa(unescape(encodeURIComponent(C)));break;case"plain":break}const z=document.createElement("textarea");z.value=C,document.body.appendChild(z),z.select(),z.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(z)}function g(I){A.id===I&&He();const C={...y.value[I],id:un()};He(C),ne.saves.push(C.id)}function N(I){ne.saves=ne.saves.filter(C=>C!==I),localStorage.removeItem(I),d[I]=void 0}function k(I){y.value[A.id].time=A.time,He(),d[A.id]=void 0,Ct(y.value[I]),d[I]=void 0}function E(I){if(o.value=I,Mt(()=>{o.value=null}),I[0]!=="{")if(I[0]==="e")I=decodeURIComponent(escape(atob(I)));else if(I[0]==="\u1BE1")I=mt.decompressFromUTF16(I);else{console.warn("Unable to determine preset encoding",I);return}const C=JSON.parse(I);C.id=un(),He(C),ne.saves.push(C.id),k(C.id)}function de(I,C){const z=y.value[I];z&&(z.name=C,A.id===I?(A.name=C,He()):(He(z),d[I]=void 0))}return(I,C)=>(_(),j(We,{modelValue:n.value,"onUpdate:modelValue":C[4]||(C[4]=z=>n.value=z),ref_key:"modal",ref:i},{header:R(()=>[Wr]),body:R(({shown:z})=>[z?(_(),j(r(Xi),{key:0,list:r(ne).saves,handle:".handle",itemKey:ve=>ve},{item:R(({element:ve})=>[u(zr,{save:r(y)[ve],onOpen:Ee=>k(ve),onExport:Ee=>b(ve),onEditName:Ee=>de(ve,Ee),onDuplicate:Ee=>g(ve),onDelete:Ee=>N(ve)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):T("",!0)]),footer:R(()=>[m("div",Qr,[u($i,{modelValue:l.value,"onUpdate:modelValue":C[0]||(C[0]=z=>l.value=z),title:"Import Save",placeholder:"Paste your save here!",class:ue({importingFailed:s.value})},null,8,["modelValue","class"]),m("div",Kr,[Jr,m("div",Xr,[m("button",{class:"button",onClick:C[1]||(C[1]=z=>k(r(Ot)().id))},"New Game"),Object.keys(r(f)).length>0?(_(),j(On,{key:0,options:r(f),modelValue:o.value,"onUpdate:modelValue":C[2]||(C[2]=z=>E(z)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):T("",!0)])]),m("div",Zr,[Yr,m("button",{class:"button modal-default-button",onClick:C[3]||(C[3]=z=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var Ti=Z(eo,[["__scopeId","data-v-3b9991aa"]]);const Ve=e=>(tt("data-v-4a3f8425"),e=e(),nt(),e),to=["src","alt"],no={key:1,class:"title"},io=Ve(()=>m("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),so={class:"discord"},ao={class:"discord-links"},lo={key:0},ro=["href"],oo=Ve(()=>m("li",null,[m("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),uo=Ve(()=>m("li",null,[m("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),co={href:"https://forums.moddingtree.com/",target:"_blank"},fo=Ve(()=>m("span",{class:"material-icons"},"forum",-1)),mo=Ve(()=>m("span",{class:"material-icons"},"info",-1)),ho=Ve(()=>m("span",{class:"material-icons"},"library_books",-1)),po=Ve(()=>m("span",{class:"material-icons"},"settings",-1)),go=Ve(()=>m("span",{class:"material-icons"},"library_books",-1)),vo=Ve(()=>m("span",{class:"material-icons"},"settings",-1)),yo=Ve(()=>m("span",{class:"material-icons"},"info",-1)),bo={href:"https://forums.moddingtree.com/",target:"_blank"},_o=Ve(()=>m("span",{class:"material-icons"},"forum",-1)),wo={class:"discord"},No={class:"discord-links"},ko={key:0},Co=["href"],So=Ve(()=>m("li",null,[m("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),Mo=Ve(()=>m("li",null,[m("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),Io=L({__name:"Nav",setup(e){const t=x(null),n=x(null),i=x(null),s=x(null),{useHeader:l,banner:o,title:c,discordName:f,discordLink:d,versionNumber:p}=W;function y(){window.open(d,"mywindow")}return(b,g)=>(_(),M(B,null,[r(l)?(_(),M("div",It({key:0,class:"nav"},b.$attrs),[r(o)?(_(),M("img",{key:0,src:r(o),class:"banner",alt:r(c)},null,8,to)):(_(),M("div",no,H(r(c)),1)),m("div",{onClick:g[0]||(g[0]=N=>{var k;return(k=s.value)==null?void 0:k.open()}),class:"version-container"},[u(re,{display:"Changelog",direction:r(J).Down,class:"version"},{default:R(()=>[m("span",null,"v"+H(r(p)),1)]),_:1},8,["direction"])]),io,m("div",so,[m("span",{onClick:y,class:"material-icons"},"discord"),m("ul",ao,[r(d)?(_(),M("li",lo,[m("a",{href:r(d),target:"_blank"},H(r(f)),9,ro)])):T("",!0),oo,uo])]),m("div",null,[m("a",co,[u(re,{display:"Forums",direction:r(J).Down,yoffset:"5px"},{default:R(()=>[fo]),_:1},8,["direction"])])]),m("div",{onClick:g[1]||(g[1]=N=>{var k;return(k=t.value)==null?void 0:k.open()})},[u(re,{display:"Info",direction:r(J).Down,class:"info"},{default:R(()=>[mo]),_:1},8,["direction"])]),m("div",{onClick:g[2]||(g[2]=N=>{var k;return(k=n.value)==null?void 0:k.open()})},[u(re,{display:"Saves",direction:r(J).Down,xoffset:"-20px"},{default:R(()=>[ho]),_:1},8,["direction"])]),m("div",{onClick:g[3]||(g[3]=N=>{var k;return(k=i.value)==null?void 0:k.open()})},[u(re,{display:"Options",direction:r(J).Down,xoffset:"-66px"},{default:R(()=>[po]),_:1},8,["direction"])])],16)):(_(),M("div",It({key:1,class:"overlay-nav"},b.$attrs),[m("div",{onClick:g[4]||(g[4]=N=>{var k;return(k=s.value)==null?void 0:k.open()}),class:"version-container"},[u(re,{display:"Changelog",direction:r(J).Right,xoffset:"25%",class:"version"},{default:R(()=>[m("span",null,"v"+H(r(p)),1)]),_:1},8,["direction"])]),m("div",{onClick:g[5]||(g[5]=N=>{var k;return(k=n.value)==null?void 0:k.open()})},[u(re,{display:"Saves",direction:r(J).Right},{default:R(()=>[go]),_:1},8,["direction"])]),m("div",{onClick:g[6]||(g[6]=N=>{var k;return(k=i.value)==null?void 0:k.open()})},[u(re,{display:"Options",direction:r(J).Right},{default:R(()=>[vo]),_:1},8,["direction"])]),m("div",{onClick:g[7]||(g[7]=N=>{var k;return(k=t.value)==null?void 0:k.open()})},[u(re,{display:"Info",direction:r(J).Right},{default:R(()=>[yo]),_:1},8,["direction"])]),m("div",null,[m("a",bo,[u(re,{display:"Forums",direction:r(J).Right,xoffset:"7px"},{default:R(()=>[_o]),_:1},8,["direction"])])]),m("div",wo,[m("span",{onClick:y,class:"material-icons"},"discord"),m("ul",No,[r(d)?(_(),M("li",ko,[m("a",{href:r(d),target:"_blank"},H(r(f)),9,Co)])):T("",!0),So,Mo])])],16)),u(rr,{ref_key:"info",ref:t,changelog:s.value},null,8,["changelog"]),u(Ti,{ref_key:"savesManager",ref:n},null,512),u(mr,{ref_key:"options",ref:i},null,512),u(Ul,{ref_key:"changelog",ref:s},null,512)],64))}});var xi=Z(Io,[["__scopeId","data-v-4a3f8425"]]);const Vn=e=>(tt("data-v-62ae8bac"),e=e(),nt(),e),Ao={class:"inner-tab"},Eo={key:0},Po=Vn(()=>m("br",null,null,-1)),$o=v(" You can help continue the "),To=Vn(()=>m("i",null,"advent",-1)),xo=v("ure at: "),Fo=Vn(()=>m("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link"},[m("span",{class:"material-icons info-modal-discord"},"discord"),v(" The Paper Pilot Community ")],-1)),Bo=[Po,$o,To,xo,Fo],Do=L({__name:"Game",setup(e){const t=et(A,"tabs"),n=S(()=>Object.keys(we)),i=W.useHeader;function s(l){const{display:o,minimized:c,minWidth:f,name:d,color:p,minimizable:y,nodes:b}=l;return{display:o,minimized:c,minWidth:f,name:d,color:p,minimizable:y,nodes:b}}return(l,o)=>(_(),M("div",{class:ue(["tabs-container",{useHeader:r(i)}])},[(_(!0),M(B,null,ei(r(t),(c,f)=>{var d,p;return _(),M("div",{key:f,class:ue(["tab",r((d=r(we)[c])==null?void 0:d.classes)]),ref_for:!0,ref:`tab-${f}`,style:he(r((p=r(we)[c])==null?void 0:p.style))},[f===0&&!r(i)?(_(),j(xi,{key:0})):T("",!0),m("div",Ao,[r(n).includes(c)?(_(),j(Vl,It({key:0},s(r(we)[c]),{index:f,tab:()=>{var y;return(y=l.$refs[`tab-${f}`])==null?void 0:y[0]}}),null,16,["index","tab"])):(_(),j(ke(c),{key:1,index:f},null,8,["index"]))])],6)}),128)),u(We,{"model-value":r(F).loreBody.value!=="","onUpdate:modelValue":o[0]||(o[0]=()=>r(F).loreBody.value="")},{header:R(()=>[m("h2",null,H(r(F).loreTitle.value),1)]),body:R(()=>[v(H(r(F).loreBody.value)+" ",1),r(F).days[r(F).day.value-1].opened.value?T("",!0):(_(),M("div",Eo,Bo))]),_:1},8,["model-value"])],2))}});var Oo=Z(Do,[["__scopeId","data-v-62ae8bac"]]);const ln=e=>(tt("data-v-4a50ce42"),e=e(),nt(),e),Ro={class:"game-over-modal-header"},Vo=["src","alt"],qo={class:"game-over-modal-title"},Lo=ln(()=>m("h2",null,"Congratulations!",-1)),Go={key:0},Uo=ln(()=>m("br",null,null,-1)),Ho=ln(()=>m("div",null," Please check the Discord to discuss the game or to check for new content updates! ",-1)),jo=ln(()=>m("br",null,null,-1)),zo=["href"],Wo=ln(()=>m("span",{class:"material-icons game-over-modal-discord"},"discord",-1)),Qo=L({__name:"GameOverScreen",setup(e){const{title:t,logo:n,discordName:i,discordLink:s,versionNumber:l,versionTitle:o}=W,c=S(()=>yn(A.timePlayed)),f=S(()=>Ii.value&&!A.keepGoing),d=et(A,"autosave");function p(){A.keepGoing=!0}function y(){Ct(Ot())}return(b,g)=>(_(),j(We,{"model-value":r(f)},{header:R(()=>[m("div",Ro,[r(n)?(_(),M("img",{key:0,class:"game-over-modal-logo",src:r(n),alt:r(t)},null,8,Vo)):T("",!0),m("div",qo,[Lo,m("h4",null,"You've beaten "+H(r(t))+" v"+H(r(l))+": "+H(r(o)),1)])])]),body:R(({shown:N})=>[N?(_(),M("div",Go,[m("div",null,"It took you "+H(r(c))+" to beat the game.",1),Uo,Ho,jo,m("div",null,[m("a",{href:r(s),class:"game-over-modal-discord-link"},[Wo,v(" "+H(r(i)),1)],8,zo)]),u(ft,{title:"Autosave",modelValue:r(d),"onUpdate:modelValue":g[0]||(g[0]=k=>me(d)?d.value=k:null)},null,8,["modelValue"])])):T("",!0)]),footer:R(()=>[m("div",{class:"game-over-footer"},[m("button",{onClick:p,class:"button"},"Keep Going"),m("button",{onClick:y,class:"button danger"},"Play Again")])]),_:1},8,["model-value"]))}});var Ko=Z(Qo,[["__scopeId","data-v-4a50ce42"]]);const wn=e=>(tt("data-v-3de07c06"),e=e(),nt(),e),Jo=wn(()=>m("div",{class:"nan-modal-header"},[m("h2",null,"NaN value detected!")],-1)),Xo={key:0},Zo=wn(()=>m("br",null,null,-1)),Yo=["href"],eu=wn(()=>m("span",{class:"material-icons nan-modal-discord"},"discord",-1)),tu=wn(()=>m("br",null,null,-1)),nu={class:"nan-footer"},iu=L({__name:"NaNScreen",setup(e){const{discordName:t,discordLink:n}=W,i=et(A,"autosave"),s=et(Y,"hasNaN"),l=x(null),o=S(()=>{var g;return(g=Y.NaNPath)==null?void 0:g.join(".")}),c=S(()=>{var g;return(g=Y.NaNPath)==null?void 0:g.slice(-1)[0]}),f=S(()=>Y.NaNReceiver&&c.value?Y.NaNReceiver[c.value]:null),d=S({get(){return A.devSpeed===0},set(g){A.devSpeed=g?null:0}});function p(){Y.NaNReceiver&&c.value&&(Y.NaNReceiver[c.value]=new a(0),Y.hasNaN=!1)}function y(){Y.NaNReceiver&&c.value&&(Y.NaNReceiver[c.value]=new a(1),Y.hasNaN=!1)}function b(){Y.NaNReceiver&&c.value&&(Y.NaNReceiver[c.value]=new a(NaN),Y.hasNaN=!1)}return(g,N)=>(_(),M(B,null,[u(We,It({modelValue:r(s),"onUpdate:modelValue":N[4]||(N[4]=k=>me(s)?s.value=k:null)},g.$attrs),{header:R(()=>[Jo]),body:R(()=>[m("div",null,[v(' Attempted to assign "'+H(r(o))+'" to NaN',1),r(f)?(_(),M("span",Xo,H(" ")+"(previously "+H(r(te)(r(f)))+")",1)):T("",!0),v(". Auto-saving has been "+H(r(i)?"enabled":"disabled")+". Check the console for more details, and consider sharing it with the developers on discord. ",1)]),Zo,m("div",null,[m("a",{href:r(n),class:"nan-modal-discord-link"},[eu,v(" "+H(r(t)),1)],8,Yo)]),tu,u(ft,{title:"Autosave",modelValue:r(i),"onUpdate:modelValue":N[0]||(N[0]=k=>me(i)?i.value=k:null)},null,8,["modelValue"]),r(W).enablePausing?(_(),j(ft,{key:0,title:"Pause game",modelValue:r(d),"onUpdate:modelValue":N[1]||(N[1]=k=>me(d)?d.value=k:null)},null,8,["modelValue"])):T("",!0)]),footer:R(()=>[m("div",nu,[m("button",{onClick:N[2]||(N[2]=k=>{var E;return(E=l.value)==null?void 0:E.open()}),class:"button"},"Open Saves Manager"),m("button",{onClick:p,class:"button"},"Set to 0"),m("button",{onClick:y,class:"button"},"Set to 1"),r(f)&&r(a).neq(r(f),0)&&r(a).neq(r(f),1)?(_(),M("button",{key:0,onClick:N[3]||(N[3]=k=>s.value=!1),class:"button"}," Set to previous ")):T("",!0),m("button",{onClick:b,class:"button danger"},"Ignore")])]),_:1},16,["modelValue"]),u(Ti,{ref_key:"savesManager",ref:l},null,512)],64))}});var su=Z(iu,[["__scopeId","data-v-3de07c06"]]);const au={key:0,class:"tpsDisplay"},lu={key:0,class:"low"},ru=L({__name:"TPS",setup(e){const t=S(()=>a.div(Y.lastTenTicks.length,Y.lastTenTicks.reduce((l,o)=>l+o,0))),n=x([]);Fe(()=>{n.value.push(Math.round(t.value.toNumber())),n.value.length>10&&(n.value=n.value.slice(1))});const i=S(()=>n.value.reduce((l,o)=>a.max(l,o),0)),s=S(()=>a.sub(t.value,i.value).gt(1));return(l,o)=>r(t).isNan()?T("",!0):(_(),M("div",au,[v(" TPS: "+H(r(G)(r(t)))+" ",1),u(vn,{name:"fade"},{default:R(()=>[r(s)?(_(),M("span",lu,H(r(G)(r(i))),1)):T("",!0)]),_:1})]))}});var ou=Z(ru,[["__scopeId","data-v-46a3ed5b"]]);var uu=L({__name:"App",setup(e){const t=W.useHeader,n=S(()=>sn[ne.theme].variables),i=et(ne,"showTPS"),s=S(()=>K(D(()=>u(B,null,[ia.map(pe)]))));return(l,o)=>(_(),M(B,null,[m("div",{id:"modal-root",style:he(r(n))},null,4),m("div",{class:ue(["app",{useHeader:r(t)}]),style:he(r(n))},[r(t)?(_(),j(xi,{key:0})):T("",!0),u(Oo),r(r(i))?(_(),j(ou,{key:1})):T("",!0),u(Ko),u(su),(_(),j(ke(r(s))))],6)],64))}});var cu=Z(uu,[["__scopeId","data-v-7c41425b"]]);function du(e={}){const{immediate:t=!1,onNeedRefresh:n,onOfflineReady:i,onRegistered:s,onRegisterError:l}=e;let o,c;const f=async(d=!0)=>{d&&(o==null||o.addEventListener("controlling",p=>{p.isUpdate&&window.location.reload()})),c&&c.waiting&&await es(c.waiting,{type:"SKIP_WAITING"})};if("serviceWorker"in navigator){o=new Yi("./sw.js",{scope:"./",type:"classic"}),o.addEventListener("activated",d=>{d.isUpdate||i==null||i()});{const d=()=>{n==null||n()};o.addEventListener("waiting",d),o.addEventListener("externalwaiting",d)}o.register({immediate:t}).then(d=>{c=d,s==null||s(d)}).catch(d=>{l==null||l(d)})}return f}function fu(e={}){const{immediate:t=!0,onNeedRefresh:n,onOfflineReady:i,onRegistered:s,onRegisterError:l}=e,o=x(!1),c=x(!1);return{updateServiceWorker:du({immediate:t,onNeedRefresh(){o.value=!0,n==null||n()},onOfflineReady(){c.value=!0,i==null||i()},onRegistered:s,onRegisterError:l}),offlineReady:c,needRefresh:o}}document.title=W.title;window.projInfo=W;if(W.id==="")throw"Project ID is empty! Please select a unique ID for this project in /src/data/projInfo.json";requestAnimationFrame(async()=>{console.log(`%cMade in Profectus%c +Learn more at www.moddingtree.com`,"font-weight: bold; font-size: 24px; color: #A3BE8C; background: #2E3440; padding: 4px 8px; border-radius: 8px;","padding: 4px;"),await Zs();const{globalBus:e,startGameLoop:t}=await fn(()=>Promise.resolve().then(function(){return Xs}),void 0),n=window.vue=Wi(cu);e.emit("setupVue",n),n.mount("#app"),Mt(()=>{const i=ni(),{updateServiceWorker:s}=fu({onNeedRefresh(){i.info("New content available, click or reload to update.",{timeout:!1,closeOnClick:!1,draggable:!1,icon:{iconClass:"material-icons",iconChildren:"refresh",iconTag:"i"},rtl:!1,onClick(){s()}})},onOfflineReady(){i.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(l){l&&setInterval(l.update,60*60*1e3)}})}),t()}); diff --git a/assets/index.08f311a5.css b/assets/index.791c7ca4.css similarity index 99% rename from assets/index.08f311a5.css rename to assets/index.791c7ca4.css index d589d89..54d86eb 100644 --- a/assets/index.08f311a5.css +++ b/assets/index.791c7ca4.css @@ -1 +1 @@ -.table{display:flex;flex-flow:column wrap;justify-content:center;align-items:center;max-width:100%;margin:0 auto}.table+.table{margin-top:10px}.row{display:flex;flex-flow:row wrap;justify-content:center;align-items:stretch;max-width:100%;margin:0 10px}.row>:not(.feature){margin:0;display:flex}.col{display:flex;flex-flow:column wrap;justify-content:center;align-items:center;height:100%;margin:10px 0}.row.mergeAdjacent>.feature:not(.dontMerge),.row.mergeAdjacent>.tooltip-container>.feature:not(.dontMerge){margin-left:0;margin-right:0;border-radius:0}.row.mergeAdjacent>.feature:not(.dontMerge):first-child,.row.mergeAdjacent>.tooltip-container:first-child>.feature:not(.dontMerge){border-radius:var(--border-radius) 0 0 var(--border-radius)}.row.mergeAdjacent>.feature:not(.dontMerge):last-child,.row.mergeAdjacent>.tooltip-container:last-child>.feature:not(.dontMerge){border-radius:0 var(--border-radius) var(--border-radius) 0}.row.mergeAdjacent>.feature:not(.dontMerge):first-child:last-child,.row.mergeAdjacent>.tooltip-container:first-child:last-child>.feature:not(.dontMerge){border-radius:var(--border-radius)}.col.mergeAdjacent .feature:not(.dontMerge){margin-top:0;margin-bottom:0;border-radius:0}.col.mergeAdjacent .feature:not(.dontMerge):first-child{border-radius:var(--border-radius) var(--border-radius) 0 0}.col.mergeAdjacent .feature:not(.dontMerge):last-child{border-radius:0 0 var(--border-radius) var(--border-radius)}.col.mergeAdjacent .feature:not(.dontMerge):first-child:last-child{border-radius:var(--border-radius)}.resize-listener[data-v-2b1dc1bc]{position:absolute;top:0px;left:0;right:-4px;bottom:5px;z-index:-10;pointer-events:none}.modal-mask{position:fixed;z-index:9998;top:0;left:0;bottom:0;right:0;background-color:#00000080;transition:opacity .3s ease}.modal-wrapper{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.modal-container{width:640px;max-width:95vw;max-height:95vh;background-color:var(--background);padding:20px;border-radius:5px;transition:all .3s ease;text-align:left;border:var(--modal-border);box-sizing:border-box;display:flex;flex-direction:column}.modal-header{width:100%}.modal-body{margin:20px 0;width:100%;overflow-y:auto;overflow-x:hidden}.modal-footer{width:100%}.modal-default-footer{display:flex}.modal-default-flex-grow{flex-grow:1}.modal-enter-from,.modal-leave-active{opacity:0}.modal-enter-from .modal-container,.modal-leave-active .modal-container{-webkit-transform:scale(1.1);transform:scale(1.1)}.advent{width:80%;max-width:700px;background:url(./adventCalendarGameJamCalandar.0fdeb6b8.png);background-size:contain;display:flex;flex-direction:column;padding-top:28%;padding-left:10%;padding-right:10%;background-repeat:no-repeat;aspect-ratio:3151 / 4190}.advent>.table{width:100%}.advent>.table>.row{width:100%;margin:0 0 -5%;justify-content:space-around}.notif[data-v-66323fd4]{position:absolute;top:0;left:5px;z-index:10;pointer-events:none;user-select:none;color:var(--accent3);font-size:x-large;animation:1s linear infinite bounce-66323fd4;border-radius:var(--border-radius);background:var(--locked)}@keyframes bounce-66323fd4{0%{animation-timing-function:cubic-bezier(.1361,.2514,.2175,.8786);transform:translate(0) scaleY(1)}37%{animation-timing-function:cubic-bezier(.7674,.1844,.8382,.7157);transform:translateY(-20px) scaleY(1)}72%{animation-timing-function:cubic-bezier(.1118,.2149,.2172,.941);transform:translate(0) scaleY(1)}87%{animation-timing-function:cubic-bezier(.7494,.2259,.8209,.6963);transform:translateY(10px) scaleY(.602)}to{transform:translate(0) scaleY(1)}}.day[data-v-949cc93c]{flex:13% 0 0;position:relative;display:flex;background-color:var(--raised-background);aspect-ratio:1;margin:5%}.door-enter-from[data-v-949cc93c]:before,.door-enter-from[data-v-949cc93c]:after,.door-leave-to[data-v-949cc93c]:before,.door-leave-to[data-v-949cc93c]:after{transform:perspective(150px) rotateY(0)!important}.door-enter-from .date[data-v-949cc93c],.door-leave-to .date[data-v-949cc93c]{transform:translate(-50%,-50%) perspective(150px) rotateY(0)!important}.door-enter-active[data-v-949cc93c]:before,.door-enter-active[data-v-949cc93c]:after,.door-leave-active[data-v-949cc93c]:before,.door-leave-active[data-v-949cc93c]:after{z-index:2}.door-enter-active .date[data-v-949cc93c],.door-leave-active .date[data-v-949cc93c]{z-index:3}.day.opened .doors[data-v-949cc93c]:before,.day.opened .doors[data-v-949cc93c]:after,.day.opened .doors .date[data-v-949cc93c]{transition:1s}.day.opened .doors[data-v-949cc93c]:before{transform-origin:left;transform:perspective(150px) rotateY(-135deg)}.day.opened .doors[data-v-949cc93c]:after{transform-origin:right;transform:perspective(150px) rotateY(135deg)}.day.opened .doors .date[data-v-949cc93c]:first-child{transform-origin:left;transform:translate(-50%,-50%) perspective(150px) rotateY(-135deg);clip-path:polygon(0 0,50% 0,50% 100%,0 100%)}.day.opened .doors .date[data-v-949cc93c]:last-child{transform-origin:right;transform:translate(-50%,-50%) perspective(150px) rotateY(135deg);clip-path:polygon(100% 0,50% 0,50% 100%,100% 100%)}.doors[data-v-949cc93c]{position:absolute;width:100%;height:100%;top:0;left:0}.day.opened .doors[data-v-949cc93c]{cursor:pointer}.doors[data-v-949cc93c]:before,.doors[data-v-949cc93c]:after{content:"";position:absolute;background-color:var(--locked);width:50%;height:100%;pointer-events:none}.doors[data-v-949cc93c]:before{top:0;left:0}.doors[data-v-949cc93c]:after{top:0;right:0}.date[data-v-949cc93c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;font-size:large;pointer-events:none;user-select:none;backface-visibility:hidden;width:100%}.icon[data-v-949cc93c]{pointer-events:none;background-size:contain;width:100%;height:100%}.lore[data-v-949cc93c]{position:absolute;top:5px;right:5px;width:20px;height:20px;z-index:1;border-radius:50%;cursor:pointer;background-color:var(--highlighted);user-select:none}.lore[data-v-949cc93c]:hover{box-shadow:0 0 10px var(--points)}.lock[data-v-949cc93c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.2;font-size:400%}.feature:not(li),.feature:not(li) button{position:relative;padding:5px;border-radius:var(--border-radius);border:2px solid rgba(0,0,0,.125);margin:var(--feature-margin);box-sizing:border-box;color:var(--feature-foreground);z-index:0;transition:all .5s,z-index 0s .5s}.can,.can button{background-color:var(--layer-color);cursor:pointer}.can:hover,.can:hover button{transform:scale(1.15);box-shadow:0 0 20px var(--points);z-index:1;transition:all .5s,z-index 0s}.locked,.locked button{background-color:var(--locked);cursor:not-allowed}.bought,.bought button{background-color:var(--bought);cursor:default}.mark[data-v-2207999f]{position:absolute;left:-25px;top:-10px;width:30px;height:30px;z-index:1;pointer-events:none;margin-left:.9em;margin-right:.9em;margin-bottom:1.2em;border-right:.3em solid transparent;border-bottom:.7em solid transparent;border-left:.3em solid transparent;font-size:10px}.star[data-v-2207999f]{left:-10px;width:0;height:0;margin-left:.9em;margin-right:.9em;margin-bottom:1.2em;border-right:.3em solid transparent;border-bottom:.7em solid #ffcc00;border-left:.3em solid transparent;font-size:10px;pointer-events:none}.star[data-v-2207999f]:before,.star[data-v-2207999f]:after{content:"";width:0;height:0;position:absolute;top:.6em;left:-1em;border-right:1em solid transparent;border-bottom:.7em solid #ffcc00;border-left:1em solid transparent;transform:rotate(-35deg)}.star[data-v-2207999f]:after{transform:rotate(35deg)}.node[data-v-a48cb382]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.clickable[data-v-8cedd7da]{min-height:120px;width:120px;font-size:10px}.clickable.small[data-v-8cedd7da]{min-height:unset}.clickable>*[data-v-8cedd7da]{pointer-events:none}.resize-listener[data-v-063f6d6b]{position:absolute;top:0px;left:0;right:-4px;bottom:5px;z-index:-10;pointer-events:none}svg[data-v-063f6d6b]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-10;pointer-events:none}.left-side-nodes[data-v-39ca96d0]{position:absolute;left:15px;top:65px}.side-nodes[data-v-39ca96d0]{position:absolute;right:15px;top:65px}.left-side-nodes[data-v-39ca96d0] .treeNode,.side-nodes[data-v-39ca96d0] .treeNode{margin:20px auto}.small[data-v-39ca96d0] .treeNode{height:60px;width:60px}.small[data-v-39ca96d0] .treeNode>*:first-child{font-size:30px}.treeNode[data-v-1c0c107d]{height:100px;width:100px;border-radius:50%;padding:0;margin:0 10px}.treeNode>*[data-v-1c0c107d]:first-child{width:100%;height:100%;border:2px solid rgba(0,0,0,.125);border-radius:inherit;font-size:40px;color:#00000080;text-shadow:2px 2px 4px rgba(0,0,0,.25);box-shadow:-4px -4px 4px #00000040 inset,0 0 20px var(--background);text-transform:capitalize;display:flex}.treeNode>*:first-child>*[data-v-1c0c107d]{pointer-events:none}.modifier-toggle{padding-right:10px;transform:translateY(-1px);display:inline-block}.modifier-toggle.collapsed{transform:translate(-5px,-5px) rotate(-90deg)}.bar[data-v-02d0d7b2]{position:relative;display:table}.overlayTextContainer[data-v-02d0d7b2]{position:absolute;border-radius:10px;vertical-align:middle;display:flex;justify-content:center;z-index:3}.overlayText[data-v-02d0d7b2]{z-index:6}.border[data-v-02d0d7b2]{border:2px solid;border-radius:10px;border-color:var(--foreground);overflow:hidden;mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);margin:0}.fill[data-v-02d0d7b2]{position:absolute;background-color:var(--foreground);overflow:hidden;margin-left:-.5px;transition-duration:.2s;z-index:2}.sticky[data-v-cccac690]{position:sticky;background:var(--background);width:calc(100% - 2px);z-index:3}.main-display-container{vertical-align:middle;margin-bottom:20px;display:flex;transition-duration:0s}.upgrade[data-v-7742f590]{min-height:120px;width:120px;font-size:10px}.upgrade>*[data-v-7742f590]{pointer-events:none}.modifier-container{display:flex}.modifier-container:nth-child(2n){background:var(--raised-background)}.modifier-amount{flex-basis:100px;flex-shrink:0}.modifier-description{flex-grow:1}.field{display:flex;position:relative;min-height:2em;margin:10px 0;user-select:none;justify-content:space-between;align-items:center}.field>*{margin:0}.vue-select{width:50%;border-radius:var(--border-radius)}.field-buttons .vue-select{width:unset}.vue-select,.vue-dropdown{border-color:var(--outline)}.vue-dropdown{background:var(--raised-background)}.vue-dropdown-item{color:var(--foreground)}.vue-dropdown-item,.vue-dropdown-item *{transition-duration:0s}.vue-dropdown-item.highlighted{background-color:var(--highlighted)}.vue-dropdown-item.selected,.vue-dropdown-item.highlighted.selected{background-color:var(--bought)}.vue-input input::placeholder{color:var(--link)}.milestone[data-v-f4e8794e]{width:calc(100% - 10px);min-width:120px;padding-left:5px;padding-right:5px;background-color:var(--locked);border-width:4px;border-radius:5px;color:#00000080}.milestone.done[data-v-f4e8794e]{background-color:var(--bought);cursor:default}.milestone[data-v-f4e8794e] .equal-spaced{display:flex;justify-content:center}.milestone[data-v-f4e8794e] .equal-spaced>*{margin:auto}.layer-container[data-v-0158bec3]{min-width:100%;min-height:100%;margin:0;flex-grow:1;display:flex;isolation:isolate}.layer-tab[data-v-0158bec3]:not(.minimized){padding-top:20px;padding-bottom:20px;min-height:100%;flex-grow:1;text-align:center;position:relative}.inner-tab>.layer-container>.layer-tab[data-v-0158bec3]:not(.minimized){padding-top:50px}.layer-tab.minimized[data-v-0158bec3]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;padding:55px 0 0;margin:0;cursor:pointer;font-size:40px;color:var(--foreground);border:none;background-color:transparent}.layer-tab.minimized div[data-v-0158bec3]{margin:0;writing-mode:vertical-rl;padding-left:10px;width:50px}.inner-tab>.layer-container>.layer-tab[data-v-0158bec3]:not(.minimized){margin:-50px -10px;padding:50px 10px}.modal-body .layer-tab[data-v-0158bec3]{padding-bottom:0}.modal-body .layer-tab[data-v-0158bec3]:not(.hasSubtabs){padding-top:0}.minimize[data-v-0158bec3]{position:sticky;top:6px;right:9px;z-index:7;line-height:30px;border:none;background:var(--background);box-shadow:var(--background) 0 2px 3px 5px;border-radius:50%;color:var(--foreground);font-size:40px;cursor:pointer;margin-top:-44px;margin-right:-30px}.minimized+.minimize[data-v-0158bec3]{transform:rotate(-90deg);top:10px;right:18px;pointer-events:none}.goBack[data-v-0158bec3]{position:sticky;top:10px;left:10px;line-height:30px;margin-top:-50px;margin-left:-35px;border:none;background:var(--background);box-shadow:var(--background) 0 2px 3px 5px;border-radius:50%;color:var(--foreground);font-size:30px;cursor:pointer;z-index:7}.goBack[data-v-0158bec3]:hover{transform:scale(1.1);text-shadow:0 0 7px var(--foreground)}details[data-v-4b4bda40]{margin:10px 0;padding-left:18px}summary[data-v-4b4bda40]{cursor:pointer;margin-bottom:10px;margin-left:-18px}ul[data-v-4b4bda40]{margin:var(--feature-margin) 0;background:var(--raised-background);border:2px solid rgba(0,0,0,.125);padding:5px 5px 5px 15px;list-style:inside}li[data-v-4b4bda40]{margin:8px 0}li[data-v-4b4bda40]:before{padding:2px 8px;margin-right:8px;border-radius:var(--border-radius)}.feature[data-v-4b4bda40]:before{content:"Feature";background:var(--accent1)}.fix[data-v-4b4bda40]:before{content:"Fix";background:var(--accent2)}.balancing[data-v-4b4bda40]:before{content:"Balancing";background:var(--accent3)}.breaking[data-v-4b4bda40]:before{content:"Breaking";background:var(--danger)}.tooltip-container[data-v-6102fa3a]{position:relative;--xoffset: 0px;--yoffset: 0px;text-shadow:none!important}.tooltip[data-v-6102fa3a],.tooltip[data-v-6102fa3a]:after{pointer-events:none;position:absolute}.tooltip[data-v-6102fa3a]{text-align:center;width:150px;font-size:14px;line-height:1.2;bottom:calc(100% + var(--yoffset));left:calc(50% + var(--xoffset));margin-bottom:5px;transform:translate(-50%);padding:7px;border-radius:3px;background-color:var(--tooltip-background);color:var(--points);z-index:100!important;word-break:break-word}.tooltip[data-v-6102fa3a] hr{margin:var(--feature-margin) 0}.shown[data-v-6102fa3a]{z-index:10}.fade-enter-from[data-v-6102fa3a],.fade-leave-to[data-v-6102fa3a]{opacity:0}.tooltip[data-v-6102fa3a]:after{content:" ";position:absolute;top:100%;bottom:100%;left:calc(50% - var(--xoffset));width:0;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--tooltip-background) transparent transparent transparent}.tooltip.left[data-v-6102fa3a],.side-nodes .tooltip[data-v-6102fa3a]:not(.right):not(.bottom):not(.top){bottom:calc(50% + var(--yoffset));left:unset;right:calc(100% + var(--xoffset));margin-bottom:unset;margin-right:5px;transform:translateY(50%)}.tooltip.left[data-v-6102fa3a]:after,.side-nodes .tooltip[data-v-6102fa3a]:not(.right):not(.bottom):not(.top):after{top:calc(50% + var(--yoffset));bottom:unset;left:100%;right:100%;margin-left:unset;margin-top:-5px;border-color:transparent transparent transparent var(--tooltip-background)}.tooltip.right[data-v-6102fa3a]{bottom:calc(50% + var(--yoffset));left:calc(100% + var(--xoffset));margin-bottom:unset;margin-left:5px;transform:translateY(50%)}.tooltip.right[data-v-6102fa3a]:after{top:calc(50% + var(--yoffset));left:0;right:100%;margin-left:-10px;margin-top:-5px;border-color:transparent var(--tooltip-background) transparent transparent}.tooltip.bottom[data-v-6102fa3a]{top:calc(100% + var(--yoffset));bottom:unset;left:calc(50% + var(--xoffset));margin-bottom:unset;margin-top:5px;transform:translate(-50%)}.tooltip.bottom[data-v-6102fa3a]:after{top:0;margin-top:-10px;border-color:transparent transparent var(--tooltip-background) transparent}.pinned[data-v-6102fa3a]{position:absolute;right:-5px;top:-5px;transform:rotate(45deg)}.info-modal-header{display:flex;margin:-20px -20px 0;background:var(--raised-background);align-items:center}.info-modal-header *{margin:0}.info-modal-logo{height:4em;width:4em}.info-modal-title{display:flex;flex-direction:column;padding:10px 0;margin-left:10px}.info-modal-discord-link{display:flex;align-items:center}.info-modal-discord{margin:0 4px 0 0}.field[data-v-2b109500]{cursor:pointer}input[data-v-2b109500]{appearance:none;pointer-events:none}span[data-v-2b109500]{width:100%;position:relative}input+span[data-v-2b109500]:before{content:"";float:right;margin:5px 0 5px 10px;border-radius:7px;width:36px;height:14px;background-color:var(--outline);opacity:.38;vertical-align:top;transition:background-color .2s,opacity .2s}input+span[data-v-2b109500]:after{content:"";position:absolute;top:2px;right:16px;border-radius:50%;width:20px;height:20px;background-color:var(--locked);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;transition:background-color .2s,transform .2s}input:checked+span[data-v-2b109500]:before{background-color:var(--link);opacity:.6}input:checked+span[data-v-2b109500]:after{background-color:var(--link);transform:translate(16px)}input:active+span[data-v-2b109500]:before{background-color:var(--link);opacity:.6}input:checked:active+span[data-v-2b109500]:before{background-color:var(--outline);opacity:.38}input:disabled+span[data-v-2b109500]{color:#000;opacity:.38;cursor:default}input:disabled+span[data-v-2b109500]:before{background-color:var(--outline);opacity:.38}input:checked:disabled+span[data-v-2b109500]:before{background-color:var(--link);opacity:.6}.header[data-v-bc13791c]{margin-bottom:-10px}*[data-v-bc13791c] .tooltip-container{display:inline;margin-left:5px}form[data-v-67b44a54]{margin:0;width:100%}.field>*[data-v-67b44a54]{margin:0}input[data-v-67b44a54]{width:50%;outline:none;border:solid 1px var(--outline);background-color:unset;border-radius:var(--border-radius)}.fullWidth[data-v-67b44a54]{width:100%}.container[data-v-2f8ef34c]{display:flex;align-items:center;background:var(--raised-background);box-shadow:var(--raised-background) 0 2px 3px 5px}.container.confirming button[data-v-2f8ef34c]{font-size:1em}.container>*[data-v-2f8ef34c]{margin:0 4px}.danger,.button.danger{position:relative;border:solid 2px var(--danger);border-right-width:16px}.danger:after{position:absolute;content:"!";color:#fff;right:-13px}.feedback[data-v-01a1b95c]{position:relative}.feedback[data-v-01a1b95c]:after{position:absolute;left:calc(100% + 5px);top:50%;transform:translateY(-50%);content:"\2714";opacity:0;pointer-events:none;box-shadow:inset 0 0 0 35px #6f94b600;text-shadow:none}.feedback.left[data-v-01a1b95c]:after{left:unset;right:calc(100% + 5px)}.feedback.activated[data-v-01a1b95c]:after{animation:feedback-01a1b95c .5s ease-out forwards}@keyframes feedback-01a1b95c{0%{opacity:1;transform:scale3d(.4,.4,1),translateY(-50%)}80%{opacity:.1}to{opacity:0;transform:scale3d(1.2,1.2,1),translateY(-50%)}}.save[data-v-5285ac49]{position:relative;border:solid 4px var(--outline);padding:4px;background:var(--raised-background);margin:var(--feature-margin);display:flex;align-items:center;min-height:30px}.save.active[data-v-5285ac49]{border-color:var(--bought)}.open[data-v-5285ac49]{display:inline;margin:0;padding-left:0}.handle[data-v-5285ac49]{flex-grow:0;margin-right:8px;margin-left:0;cursor:pointer}.details[data-v-5285ac49]{margin:0 80px 0 0;flex-grow:1}.error[data-v-5285ac49]{font-size:.8em;color:var(--danger)}.save-version[data-v-5285ac49]{margin-left:4px;font-size:.7em;opacity:.7}.actions[data-v-5285ac49]{position:absolute;top:0;bottom:0;right:4px;display:flex;padding:4px;z-index:1}.editname[data-v-5285ac49]{margin:0}.save button{transition-duration:0s}.save .actions button{display:flex;font-size:1.2em}.save .actions button .material-icons{font-size:unset}.save .button.danger{display:flex;align-items:center;padding:4px}.save .field,.field form[data-v-3b9991aa],.field .field-title[data-v-3b9991aa],.field .field-buttons[data-v-3b9991aa]{margin:0}.field-buttons[data-v-3b9991aa]{display:flex}.field-buttons .field[data-v-3b9991aa]{margin:0 0 0 8px}.modal-footer[data-v-3b9991aa]{margin-top:-20px}.footer[data-v-3b9991aa]{display:flex;margin-top:20px}.importingFailed input{color:red}.field-buttons .v-select{width:220px}.presets .vue-select[aria-expanded=true] vue-dropdown{visibility:hidden}.nav[data-v-4a3f8425]{background-color:var(--raised-background);display:flex;left:0;right:0;top:0;height:46px;width:100%;border-bottom:4px solid var(--outline)}.nav>*[data-v-4a3f8425]{height:46px;width:46px;display:flex;cursor:pointer;flex-shrink:0}.nav>.banner[data-v-4a3f8425]{height:100%;width:unset}.overlay-nav[data-v-4a3f8425]{position:fixed;top:10px;left:10px;display:flex;flex-direction:column;z-index:2}.overlay-nav>*[data-v-4a3f8425]{height:50px;width:50px;display:flex;cursor:pointer;margin:0;align-items:center;justify-content:center}.title[data-v-4a3f8425]{font-size:36px;text-align:left;margin-left:12px;cursor:unset}.nav>.title[data-v-4a3f8425]{width:unset;flex-shrink:1;overflow:hidden;white-space:nowrap}.nav .saves[data-v-4a3f8425],.nav .info[data-v-4a3f8425]{display:flex}.tooltip-container[data-v-4a3f8425]{width:100%;height:100%;display:flex}.overlay-nav .discord[data-v-4a3f8425]{position:relative}.discord img[data-v-4a3f8425]{width:100%;height:100%}.discord-links[data-v-4a3f8425]{position:fixed;top:45px;padding:20px;right:-280px;width:200px;transition:right .25s ease;background:var(--raised-background);z-index:10}.overlay-nav .discord-links[data-v-4a3f8425]{position:absolute;left:-280px;right:unset;transition:left .25s ease}.overlay-nav .discord:hover .discord-links[data-v-4a3f8425]{left:-10px}.discord-links li[data-v-4a3f8425]{margin-bottom:4px}.discord-links li[data-v-4a3f8425]:first-child{font-size:1.2em}*:not(.overlay-nav) .discord:hover .discord-links[data-v-4a3f8425]{right:0}.material-icons[data-v-4a3f8425]{font-size:36px}.material-icons[data-v-4a3f8425]:hover{text-shadow:5px 0 10px var(--link),-3px 0 12px var(--foreground)}.nav .version-container[data-v-4a3f8425]{display:flex;height:25px;margin-bottom:0;margin-left:10px}.overlay-nav .version-container[data-v-4a3f8425]{width:unset;height:25px}.version[data-v-4a3f8425]{color:var(--points)}.version:hover span[data-v-4a3f8425]{text-shadow:5px 0 10px var(--points),-3px 0 12px var(--points)}.nav>div>a[data-v-4a3f8425],.overlay-nav>div>a[data-v-4a3f8425]{color:var(--foreground);text-shadow:none}.tabs-container[data-v-62ae8bac]{width:100vw;flex-grow:1;overflow-x:auto;overflow-y:hidden;display:flex}.tabs-container[data-v-62ae8bac]:not(.useHeader){width:calc(100vw - 50px);margin-left:50px}.tab[data-v-62ae8bac]{position:relative;height:100%;flex-grow:1;transition-duration:0s;overflow-y:auto;overflow-x:hidden}.inner-tab[data-v-62ae8bac]{padding:50px 10px;min-height:calc(100% - 100px);display:flex;flex-direction:column;margin:0;flex-grow:1}.tab+.tab>.inner-tab[data-v-62ae8bac]{border-left:solid 4px var(--outline)}.tab hr{height:4px;border:none;background:var(--outline);margin:var(--feature-margin) 0}.tab .modal-body hr{margin:7px 0}.game-over-modal-header[data-v-4a50ce42]{display:flex;margin:-20px -20px 0;background:var(--raised-background);align-items:center}.game-over-modal-header *[data-v-4a50ce42]{margin:0}.game-over-modal-logo[data-v-4a50ce42]{height:4em;width:4em}.game-over-modal-title[data-v-4a50ce42]{display:flex;flex-direction:column;padding:10px 0;margin-left:10px}.game-over-footer[data-v-4a50ce42]{display:flex;justify-content:flex-end}.game-over-footer button[data-v-4a50ce42]{margin:0 10px}.game-over-modal-discord-link[data-v-4a50ce42]{display:flex;align-items:center}.game-over-modal-discord[data-v-4a50ce42]{margin:0 4px 0 0}.nan-modal-header[data-v-3de07c06]{padding:10px 0;margin-left:10px}.nan-footer[data-v-3de07c06]{display:flex;justify-content:flex-end}.nan-footer button[data-v-3de07c06]{margin:0 10px}.nan-modal-discord-link[data-v-3de07c06]{display:flex;align-items:center}.nan-modal-discord[data-v-3de07c06]{margin:0 4px 0 0}.tpsDisplay[data-v-46a3ed5b]{position:absolute;left:10px;bottom:10px;z-index:100}.low[data-v-46a3ed5b]{color:var(--danger)}.fade-leave-to[data-v-46a3ed5b]{opacity:0}:root{color-scheme:dark}*{transition-duration:.5s;font-family:Roboto Mono,monospace;font-weight:700;margin:auto;text-size-adjust:none}*:focus{outline:none}body{overflow:hidden;transition:none;text-align:center}html,body,#app{min-height:100%;height:100%}h1,h2,h3,b,input{display:inline}button{color:#000}a,.button,.link{display:block;color:var(--link);background:none;border:none;cursor:pointer;text-decoration:none}a:hover,.button:hover,.link:hover{text-shadow:5px 0 10px var(--link),-3px 0 12px var(--link)}.button:disabled{opacity:.5;cursor:not-allowed}.button:disabled:hover{text-shadow:none}ul{list-style-type:none}.Vue-Toastification__toast{margin:unset}.app[data-v-7c41425b]{background-color:var(--background);color:var(--foreground);display:flex;flex-flow:column;min-height:100%;height:100%}#modal-root[data-v-7c41425b]{position:absolute;min-height:100%;height:100%} +.table{display:flex;flex-flow:column wrap;justify-content:center;align-items:center;max-width:100%;margin:0 auto}.table+.table{margin-top:10px}.row{display:flex;flex-flow:row wrap;justify-content:center;align-items:stretch;max-width:100%;margin:0 10px}.row>:not(.feature){margin:0;display:flex}.col{display:flex;flex-flow:column wrap;justify-content:center;align-items:center;height:100%;margin:10px 0}.row.mergeAdjacent>.feature:not(.dontMerge),.row.mergeAdjacent>.tooltip-container>.feature:not(.dontMerge){margin-left:0;margin-right:0;border-radius:0}.row.mergeAdjacent>.feature:not(.dontMerge):first-child,.row.mergeAdjacent>.tooltip-container:first-child>.feature:not(.dontMerge){border-radius:var(--border-radius) 0 0 var(--border-radius)}.row.mergeAdjacent>.feature:not(.dontMerge):last-child,.row.mergeAdjacent>.tooltip-container:last-child>.feature:not(.dontMerge){border-radius:0 var(--border-radius) var(--border-radius) 0}.row.mergeAdjacent>.feature:not(.dontMerge):first-child:last-child,.row.mergeAdjacent>.tooltip-container:first-child:last-child>.feature:not(.dontMerge){border-radius:var(--border-radius)}.col.mergeAdjacent .feature:not(.dontMerge){margin-top:0;margin-bottom:0;border-radius:0}.col.mergeAdjacent .feature:not(.dontMerge):first-child{border-radius:var(--border-radius) var(--border-radius) 0 0}.col.mergeAdjacent .feature:not(.dontMerge):last-child{border-radius:0 0 var(--border-radius) var(--border-radius)}.col.mergeAdjacent .feature:not(.dontMerge):first-child:last-child{border-radius:var(--border-radius)}.resize-listener[data-v-2b1dc1bc]{position:absolute;top:0px;left:0;right:-4px;bottom:5px;z-index:-10;pointer-events:none}.modal-mask{position:fixed;z-index:9998;top:0;left:0;bottom:0;right:0;background-color:#00000080;transition:opacity .3s ease}.modal-wrapper{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.modal-container{width:640px;max-width:95vw;max-height:95vh;background-color:var(--background);padding:20px;border-radius:5px;transition:all .3s ease;text-align:left;border:var(--modal-border);box-sizing:border-box;display:flex;flex-direction:column}.modal-header{width:100%}.modal-body{margin:20px 0;width:100%;overflow-y:auto;overflow-x:hidden}.modal-footer{width:100%}.modal-default-footer{display:flex}.modal-default-flex-grow{flex-grow:1}.modal-enter-from,.modal-leave-active{opacity:0}.modal-enter-from .modal-container,.modal-leave-active .modal-container{-webkit-transform:scale(1.1);transform:scale(1.1)}.advent{width:80%;max-width:700px;background:url(./adventCalendarGameJamCalandar.0fdeb6b8.png);background-size:contain;display:flex;flex-direction:column;padding-top:28%;padding-left:10%;padding-right:10%;background-repeat:no-repeat;aspect-ratio:3151 / 4190}.advent>.table{width:100%}.advent>.table>.row{width:100%;margin:0 0 -5%;justify-content:space-around}.notif[data-v-66323fd4]{position:absolute;top:0;left:5px;z-index:10;pointer-events:none;user-select:none;color:var(--accent3);font-size:x-large;animation:1s linear infinite bounce-66323fd4;border-radius:var(--border-radius);background:var(--locked)}@keyframes bounce-66323fd4{0%{animation-timing-function:cubic-bezier(.1361,.2514,.2175,.8786);transform:translate(0) scaleY(1)}37%{animation-timing-function:cubic-bezier(.7674,.1844,.8382,.7157);transform:translateY(-20px) scaleY(1)}72%{animation-timing-function:cubic-bezier(.1118,.2149,.2172,.941);transform:translate(0) scaleY(1)}87%{animation-timing-function:cubic-bezier(.7494,.2259,.8209,.6963);transform:translateY(10px) scaleY(.602)}to{transform:translate(0) scaleY(1)}}.day[data-v-949cc93c]{flex:13% 0 0;position:relative;display:flex;background-color:var(--raised-background);aspect-ratio:1;margin:5%}.door-enter-from[data-v-949cc93c]:before,.door-enter-from[data-v-949cc93c]:after,.door-leave-to[data-v-949cc93c]:before,.door-leave-to[data-v-949cc93c]:after{transform:perspective(150px) rotateY(0)!important}.door-enter-from .date[data-v-949cc93c],.door-leave-to .date[data-v-949cc93c]{transform:translate(-50%,-50%) perspective(150px) rotateY(0)!important}.door-enter-active[data-v-949cc93c]:before,.door-enter-active[data-v-949cc93c]:after,.door-leave-active[data-v-949cc93c]:before,.door-leave-active[data-v-949cc93c]:after{z-index:2}.door-enter-active .date[data-v-949cc93c],.door-leave-active .date[data-v-949cc93c]{z-index:3}.day.opened .doors[data-v-949cc93c]:before,.day.opened .doors[data-v-949cc93c]:after,.day.opened .doors .date[data-v-949cc93c]{transition:1s}.day.opened .doors[data-v-949cc93c]:before{transform-origin:left;transform:perspective(150px) rotateY(-135deg)}.day.opened .doors[data-v-949cc93c]:after{transform-origin:right;transform:perspective(150px) rotateY(135deg)}.day.opened .doors .date[data-v-949cc93c]:first-child{transform-origin:left;transform:translate(-50%,-50%) perspective(150px) rotateY(-135deg);clip-path:polygon(0 0,50% 0,50% 100%,0 100%)}.day.opened .doors .date[data-v-949cc93c]:last-child{transform-origin:right;transform:translate(-50%,-50%) perspective(150px) rotateY(135deg);clip-path:polygon(100% 0,50% 0,50% 100%,100% 100%)}.doors[data-v-949cc93c]{position:absolute;width:100%;height:100%;top:0;left:0}.day.opened .doors[data-v-949cc93c]{cursor:pointer}.doors[data-v-949cc93c]:before,.doors[data-v-949cc93c]:after{content:"";position:absolute;background-color:var(--locked);width:50%;height:100%;pointer-events:none}.doors[data-v-949cc93c]:before{top:0;left:0}.doors[data-v-949cc93c]:after{top:0;right:0}.date[data-v-949cc93c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;font-size:large;pointer-events:none;user-select:none;backface-visibility:hidden;width:100%}.icon[data-v-949cc93c]{pointer-events:none;background-size:contain;width:100%;height:100%}.lore[data-v-949cc93c]{position:absolute;top:5px;right:5px;width:20px;height:20px;z-index:1;border-radius:50%;cursor:pointer;background-color:var(--highlighted);user-select:none}.lore[data-v-949cc93c]:hover{box-shadow:0 0 10px var(--points)}.lock[data-v-949cc93c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.2;font-size:400%}.feature:not(li),.feature:not(li) button{position:relative;padding:5px;border-radius:var(--border-radius);border:2px solid rgba(0,0,0,.125);margin:var(--feature-margin);box-sizing:border-box;color:var(--feature-foreground);z-index:0;transition:all .5s,z-index 0s .5s}.can,.can button{background-color:var(--layer-color);cursor:pointer}.can:hover,.can:hover button{transform:scale(1.15);box-shadow:0 0 20px var(--points);z-index:1;transition:all .5s,z-index 0s}.locked,.locked button{background-color:var(--locked);cursor:not-allowed}.bought,.bought button{background-color:var(--bought);cursor:default}.mark[data-v-2207999f]{position:absolute;left:-25px;top:-10px;width:30px;height:30px;z-index:1;pointer-events:none;margin-left:.9em;margin-right:.9em;margin-bottom:1.2em;border-right:.3em solid transparent;border-bottom:.7em solid transparent;border-left:.3em solid transparent;font-size:10px}.star[data-v-2207999f]{left:-10px;width:0;height:0;margin-left:.9em;margin-right:.9em;margin-bottom:1.2em;border-right:.3em solid transparent;border-bottom:.7em solid #ffcc00;border-left:.3em solid transparent;font-size:10px;pointer-events:none}.star[data-v-2207999f]:before,.star[data-v-2207999f]:after{content:"";width:0;height:0;position:absolute;top:.6em;left:-1em;border-right:1em solid transparent;border-bottom:.7em solid #ffcc00;border-left:1em solid transparent;transform:rotate(-35deg)}.star[data-v-2207999f]:after{transform:rotate(35deg)}.node[data-v-a48cb382]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.clickable[data-v-8cedd7da]{min-height:120px;width:120px;font-size:10px}.clickable.small[data-v-8cedd7da]{min-height:unset}.clickable>*[data-v-8cedd7da]{pointer-events:none}.resize-listener[data-v-063f6d6b]{position:absolute;top:0px;left:0;right:-4px;bottom:5px;z-index:-10;pointer-events:none}svg[data-v-063f6d6b]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-10;pointer-events:none}.left-side-nodes[data-v-39ca96d0]{position:absolute;left:15px;top:65px}.side-nodes[data-v-39ca96d0]{position:absolute;right:15px;top:65px}.left-side-nodes[data-v-39ca96d0] .treeNode,.side-nodes[data-v-39ca96d0] .treeNode{margin:20px auto}.small[data-v-39ca96d0] .treeNode{height:60px;width:60px}.small[data-v-39ca96d0] .treeNode>*:first-child{font-size:30px}.treeNode[data-v-1c0c107d]{height:100px;width:100px;border-radius:50%;padding:0;margin:0 10px}.treeNode>*[data-v-1c0c107d]:first-child{width:100%;height:100%;border:2px solid rgba(0,0,0,.125);border-radius:inherit;font-size:40px;color:#00000080;text-shadow:2px 2px 4px rgba(0,0,0,.25);box-shadow:-4px -4px 4px #00000040 inset,0 0 20px var(--background);text-transform:capitalize;display:flex}.treeNode>*:first-child>*[data-v-1c0c107d]{pointer-events:none}.modifier-toggle{padding-right:10px;transform:translateY(-1px);display:inline-block}.modifier-toggle.collapsed{transform:translate(-5px,-5px) rotate(-90deg)}.bar[data-v-02d0d7b2]{position:relative;display:table}.overlayTextContainer[data-v-02d0d7b2]{position:absolute;border-radius:10px;vertical-align:middle;display:flex;justify-content:center;z-index:3}.overlayText[data-v-02d0d7b2]{z-index:6}.border[data-v-02d0d7b2]{border:2px solid;border-radius:10px;border-color:var(--foreground);overflow:hidden;mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);margin:0}.fill[data-v-02d0d7b2]{position:absolute;background-color:var(--foreground);overflow:hidden;margin-left:-.5px;transition-duration:.2s;z-index:2}.sticky[data-v-cccac690]{position:sticky;background:var(--background);width:calc(100% - 2px);z-index:3}.main-display-container{vertical-align:middle;margin-bottom:20px;display:flex;transition-duration:0s}.upgrade[data-v-7f411ac8]{min-height:120px;width:120px;font-size:10px}.upgrade>*[data-v-7f411ac8]{pointer-events:none}.modifier-container{display:flex}.modifier-container:nth-child(2n){background:var(--raised-background)}.modifier-amount{flex-basis:100px;flex-shrink:0}.modifier-description{flex-grow:1}.field{display:flex;position:relative;min-height:2em;margin:10px 0;user-select:none;justify-content:space-between;align-items:center}.field>*{margin:0}.vue-select{width:50%;border-radius:var(--border-radius)}.field-buttons .vue-select{width:unset}.vue-select,.vue-dropdown{border-color:var(--outline)}.vue-dropdown{background:var(--raised-background)}.vue-dropdown-item{color:var(--foreground)}.vue-dropdown-item,.vue-dropdown-item *{transition-duration:0s}.vue-dropdown-item.highlighted{background-color:var(--highlighted)}.vue-dropdown-item.selected,.vue-dropdown-item.highlighted.selected{background-color:var(--bought)}.vue-input input::placeholder{color:var(--link)}.milestone[data-v-f4e8794e]{width:calc(100% - 10px);min-width:120px;padding-left:5px;padding-right:5px;background-color:var(--locked);border-width:4px;border-radius:5px;color:#00000080}.milestone.done[data-v-f4e8794e]{background-color:var(--bought);cursor:default}.milestone[data-v-f4e8794e] .equal-spaced{display:flex;justify-content:center}.milestone[data-v-f4e8794e] .equal-spaced>*{margin:auto}.layer-container[data-v-0158bec3]{min-width:100%;min-height:100%;margin:0;flex-grow:1;display:flex;isolation:isolate}.layer-tab[data-v-0158bec3]:not(.minimized){padding-top:20px;padding-bottom:20px;min-height:100%;flex-grow:1;text-align:center;position:relative}.inner-tab>.layer-container>.layer-tab[data-v-0158bec3]:not(.minimized){padding-top:50px}.layer-tab.minimized[data-v-0158bec3]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;padding:55px 0 0;margin:0;cursor:pointer;font-size:40px;color:var(--foreground);border:none;background-color:transparent}.layer-tab.minimized div[data-v-0158bec3]{margin:0;writing-mode:vertical-rl;padding-left:10px;width:50px}.inner-tab>.layer-container>.layer-tab[data-v-0158bec3]:not(.minimized){margin:-50px -10px;padding:50px 10px}.modal-body .layer-tab[data-v-0158bec3]{padding-bottom:0}.modal-body .layer-tab[data-v-0158bec3]:not(.hasSubtabs){padding-top:0}.minimize[data-v-0158bec3]{position:sticky;top:6px;right:9px;z-index:7;line-height:30px;border:none;background:var(--background);box-shadow:var(--background) 0 2px 3px 5px;border-radius:50%;color:var(--foreground);font-size:40px;cursor:pointer;margin-top:-44px;margin-right:-30px}.minimized+.minimize[data-v-0158bec3]{transform:rotate(-90deg);top:10px;right:18px;pointer-events:none}.goBack[data-v-0158bec3]{position:sticky;top:10px;left:10px;line-height:30px;margin-top:-50px;margin-left:-35px;border:none;background:var(--background);box-shadow:var(--background) 0 2px 3px 5px;border-radius:50%;color:var(--foreground);font-size:30px;cursor:pointer;z-index:7}.goBack[data-v-0158bec3]:hover{transform:scale(1.1);text-shadow:0 0 7px var(--foreground)}details[data-v-4b4bda40]{margin:10px 0;padding-left:18px}summary[data-v-4b4bda40]{cursor:pointer;margin-bottom:10px;margin-left:-18px}ul[data-v-4b4bda40]{margin:var(--feature-margin) 0;background:var(--raised-background);border:2px solid rgba(0,0,0,.125);padding:5px 5px 5px 15px;list-style:inside}li[data-v-4b4bda40]{margin:8px 0}li[data-v-4b4bda40]:before{padding:2px 8px;margin-right:8px;border-radius:var(--border-radius)}.feature[data-v-4b4bda40]:before{content:"Feature";background:var(--accent1)}.fix[data-v-4b4bda40]:before{content:"Fix";background:var(--accent2)}.balancing[data-v-4b4bda40]:before{content:"Balancing";background:var(--accent3)}.breaking[data-v-4b4bda40]:before{content:"Breaking";background:var(--danger)}.tooltip-container[data-v-6102fa3a]{position:relative;--xoffset: 0px;--yoffset: 0px;text-shadow:none!important}.tooltip[data-v-6102fa3a],.tooltip[data-v-6102fa3a]:after{pointer-events:none;position:absolute}.tooltip[data-v-6102fa3a]{text-align:center;width:150px;font-size:14px;line-height:1.2;bottom:calc(100% + var(--yoffset));left:calc(50% + var(--xoffset));margin-bottom:5px;transform:translate(-50%);padding:7px;border-radius:3px;background-color:var(--tooltip-background);color:var(--points);z-index:100!important;word-break:break-word}.tooltip[data-v-6102fa3a] hr{margin:var(--feature-margin) 0}.shown[data-v-6102fa3a]{z-index:10}.fade-enter-from[data-v-6102fa3a],.fade-leave-to[data-v-6102fa3a]{opacity:0}.tooltip[data-v-6102fa3a]:after{content:" ";position:absolute;top:100%;bottom:100%;left:calc(50% - var(--xoffset));width:0;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--tooltip-background) transparent transparent transparent}.tooltip.left[data-v-6102fa3a],.side-nodes .tooltip[data-v-6102fa3a]:not(.right):not(.bottom):not(.top){bottom:calc(50% + var(--yoffset));left:unset;right:calc(100% + var(--xoffset));margin-bottom:unset;margin-right:5px;transform:translateY(50%)}.tooltip.left[data-v-6102fa3a]:after,.side-nodes .tooltip[data-v-6102fa3a]:not(.right):not(.bottom):not(.top):after{top:calc(50% + var(--yoffset));bottom:unset;left:100%;right:100%;margin-left:unset;margin-top:-5px;border-color:transparent transparent transparent var(--tooltip-background)}.tooltip.right[data-v-6102fa3a]{bottom:calc(50% + var(--yoffset));left:calc(100% + var(--xoffset));margin-bottom:unset;margin-left:5px;transform:translateY(50%)}.tooltip.right[data-v-6102fa3a]:after{top:calc(50% + var(--yoffset));left:0;right:100%;margin-left:-10px;margin-top:-5px;border-color:transparent var(--tooltip-background) transparent transparent}.tooltip.bottom[data-v-6102fa3a]{top:calc(100% + var(--yoffset));bottom:unset;left:calc(50% + var(--xoffset));margin-bottom:unset;margin-top:5px;transform:translate(-50%)}.tooltip.bottom[data-v-6102fa3a]:after{top:0;margin-top:-10px;border-color:transparent transparent var(--tooltip-background) transparent}.pinned[data-v-6102fa3a]{position:absolute;right:-5px;top:-5px;transform:rotate(45deg)}.info-modal-header{display:flex;margin:-20px -20px 0;background:var(--raised-background);align-items:center}.info-modal-header *{margin:0}.info-modal-logo{height:4em;width:4em}.info-modal-title{display:flex;flex-direction:column;padding:10px 0;margin-left:10px}.info-modal-discord-link{display:flex;align-items:center}.info-modal-discord{margin:0 4px 0 0}.field[data-v-2b109500]{cursor:pointer}input[data-v-2b109500]{appearance:none;pointer-events:none}span[data-v-2b109500]{width:100%;position:relative}input+span[data-v-2b109500]:before{content:"";float:right;margin:5px 0 5px 10px;border-radius:7px;width:36px;height:14px;background-color:var(--outline);opacity:.38;vertical-align:top;transition:background-color .2s,opacity .2s}input+span[data-v-2b109500]:after{content:"";position:absolute;top:2px;right:16px;border-radius:50%;width:20px;height:20px;background-color:var(--locked);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;transition:background-color .2s,transform .2s}input:checked+span[data-v-2b109500]:before{background-color:var(--link);opacity:.6}input:checked+span[data-v-2b109500]:after{background-color:var(--link);transform:translate(16px)}input:active+span[data-v-2b109500]:before{background-color:var(--link);opacity:.6}input:checked:active+span[data-v-2b109500]:before{background-color:var(--outline);opacity:.38}input:disabled+span[data-v-2b109500]{color:#000;opacity:.38;cursor:default}input:disabled+span[data-v-2b109500]:before{background-color:var(--outline);opacity:.38}input:checked:disabled+span[data-v-2b109500]:before{background-color:var(--link);opacity:.6}.header[data-v-bc13791c]{margin-bottom:-10px}*[data-v-bc13791c] .tooltip-container{display:inline;margin-left:5px}form[data-v-67b44a54]{margin:0;width:100%}.field>*[data-v-67b44a54]{margin:0}input[data-v-67b44a54]{width:50%;outline:none;border:solid 1px var(--outline);background-color:unset;border-radius:var(--border-radius)}.fullWidth[data-v-67b44a54]{width:100%}.container[data-v-2f8ef34c]{display:flex;align-items:center;background:var(--raised-background);box-shadow:var(--raised-background) 0 2px 3px 5px}.container.confirming button[data-v-2f8ef34c]{font-size:1em}.container>*[data-v-2f8ef34c]{margin:0 4px}.danger,.button.danger{position:relative;border:solid 2px var(--danger);border-right-width:16px}.danger:after{position:absolute;content:"!";color:#fff;right:-13px}.feedback[data-v-01a1b95c]{position:relative}.feedback[data-v-01a1b95c]:after{position:absolute;left:calc(100% + 5px);top:50%;transform:translateY(-50%);content:"\2714";opacity:0;pointer-events:none;box-shadow:inset 0 0 0 35px #6f94b600;text-shadow:none}.feedback.left[data-v-01a1b95c]:after{left:unset;right:calc(100% + 5px)}.feedback.activated[data-v-01a1b95c]:after{animation:feedback-01a1b95c .5s ease-out forwards}@keyframes feedback-01a1b95c{0%{opacity:1;transform:scale3d(.4,.4,1),translateY(-50%)}80%{opacity:.1}to{opacity:0;transform:scale3d(1.2,1.2,1),translateY(-50%)}}.save[data-v-5285ac49]{position:relative;border:solid 4px var(--outline);padding:4px;background:var(--raised-background);margin:var(--feature-margin);display:flex;align-items:center;min-height:30px}.save.active[data-v-5285ac49]{border-color:var(--bought)}.open[data-v-5285ac49]{display:inline;margin:0;padding-left:0}.handle[data-v-5285ac49]{flex-grow:0;margin-right:8px;margin-left:0;cursor:pointer}.details[data-v-5285ac49]{margin:0 80px 0 0;flex-grow:1}.error[data-v-5285ac49]{font-size:.8em;color:var(--danger)}.save-version[data-v-5285ac49]{margin-left:4px;font-size:.7em;opacity:.7}.actions[data-v-5285ac49]{position:absolute;top:0;bottom:0;right:4px;display:flex;padding:4px;z-index:1}.editname[data-v-5285ac49]{margin:0}.save button{transition-duration:0s}.save .actions button{display:flex;font-size:1.2em}.save .actions button .material-icons{font-size:unset}.save .button.danger{display:flex;align-items:center;padding:4px}.save .field,.field form[data-v-3b9991aa],.field .field-title[data-v-3b9991aa],.field .field-buttons[data-v-3b9991aa]{margin:0}.field-buttons[data-v-3b9991aa]{display:flex}.field-buttons .field[data-v-3b9991aa]{margin:0 0 0 8px}.modal-footer[data-v-3b9991aa]{margin-top:-20px}.footer[data-v-3b9991aa]{display:flex;margin-top:20px}.importingFailed input{color:red}.field-buttons .v-select{width:220px}.presets .vue-select[aria-expanded=true] vue-dropdown{visibility:hidden}.nav[data-v-4a3f8425]{background-color:var(--raised-background);display:flex;left:0;right:0;top:0;height:46px;width:100%;border-bottom:4px solid var(--outline)}.nav>*[data-v-4a3f8425]{height:46px;width:46px;display:flex;cursor:pointer;flex-shrink:0}.nav>.banner[data-v-4a3f8425]{height:100%;width:unset}.overlay-nav[data-v-4a3f8425]{position:fixed;top:10px;left:10px;display:flex;flex-direction:column;z-index:2}.overlay-nav>*[data-v-4a3f8425]{height:50px;width:50px;display:flex;cursor:pointer;margin:0;align-items:center;justify-content:center}.title[data-v-4a3f8425]{font-size:36px;text-align:left;margin-left:12px;cursor:unset}.nav>.title[data-v-4a3f8425]{width:unset;flex-shrink:1;overflow:hidden;white-space:nowrap}.nav .saves[data-v-4a3f8425],.nav .info[data-v-4a3f8425]{display:flex}.tooltip-container[data-v-4a3f8425]{width:100%;height:100%;display:flex}.overlay-nav .discord[data-v-4a3f8425]{position:relative}.discord img[data-v-4a3f8425]{width:100%;height:100%}.discord-links[data-v-4a3f8425]{position:fixed;top:45px;padding:20px;right:-280px;width:200px;transition:right .25s ease;background:var(--raised-background);z-index:10}.overlay-nav .discord-links[data-v-4a3f8425]{position:absolute;left:-280px;right:unset;transition:left .25s ease}.overlay-nav .discord:hover .discord-links[data-v-4a3f8425]{left:-10px}.discord-links li[data-v-4a3f8425]{margin-bottom:4px}.discord-links li[data-v-4a3f8425]:first-child{font-size:1.2em}*:not(.overlay-nav) .discord:hover .discord-links[data-v-4a3f8425]{right:0}.material-icons[data-v-4a3f8425]{font-size:36px}.material-icons[data-v-4a3f8425]:hover{text-shadow:5px 0 10px var(--link),-3px 0 12px var(--foreground)}.nav .version-container[data-v-4a3f8425]{display:flex;height:25px;margin-bottom:0;margin-left:10px}.overlay-nav .version-container[data-v-4a3f8425]{width:unset;height:25px}.version[data-v-4a3f8425]{color:var(--points)}.version:hover span[data-v-4a3f8425]{text-shadow:5px 0 10px var(--points),-3px 0 12px var(--points)}.nav>div>a[data-v-4a3f8425],.overlay-nav>div>a[data-v-4a3f8425]{color:var(--foreground);text-shadow:none}.tabs-container[data-v-62ae8bac]{width:100vw;flex-grow:1;overflow-x:auto;overflow-y:hidden;display:flex}.tabs-container[data-v-62ae8bac]:not(.useHeader){width:calc(100vw - 50px);margin-left:50px}.tab[data-v-62ae8bac]{position:relative;height:100%;flex-grow:1;transition-duration:0s;overflow-y:auto;overflow-x:hidden}.inner-tab[data-v-62ae8bac]{padding:50px 10px;min-height:calc(100% - 100px);display:flex;flex-direction:column;margin:0;flex-grow:1}.tab+.tab>.inner-tab[data-v-62ae8bac]{border-left:solid 4px var(--outline)}.tab hr{height:4px;border:none;background:var(--outline);margin:var(--feature-margin) 0}.tab .modal-body hr{margin:7px 0}.game-over-modal-header[data-v-4a50ce42]{display:flex;margin:-20px -20px 0;background:var(--raised-background);align-items:center}.game-over-modal-header *[data-v-4a50ce42]{margin:0}.game-over-modal-logo[data-v-4a50ce42]{height:4em;width:4em}.game-over-modal-title[data-v-4a50ce42]{display:flex;flex-direction:column;padding:10px 0;margin-left:10px}.game-over-footer[data-v-4a50ce42]{display:flex;justify-content:flex-end}.game-over-footer button[data-v-4a50ce42]{margin:0 10px}.game-over-modal-discord-link[data-v-4a50ce42]{display:flex;align-items:center}.game-over-modal-discord[data-v-4a50ce42]{margin:0 4px 0 0}.nan-modal-header[data-v-3de07c06]{padding:10px 0;margin-left:10px}.nan-footer[data-v-3de07c06]{display:flex;justify-content:flex-end}.nan-footer button[data-v-3de07c06]{margin:0 10px}.nan-modal-discord-link[data-v-3de07c06]{display:flex;align-items:center}.nan-modal-discord[data-v-3de07c06]{margin:0 4px 0 0}.tpsDisplay[data-v-46a3ed5b]{position:absolute;left:10px;bottom:10px;z-index:100}.low[data-v-46a3ed5b]{color:var(--danger)}.fade-leave-to[data-v-46a3ed5b]{opacity:0}:root{color-scheme:dark}*{transition-duration:.5s;font-family:Roboto Mono,monospace;font-weight:700;margin:auto;text-size-adjust:none}*:focus{outline:none}body{overflow:hidden;transition:none;text-align:center}html,body,#app{min-height:100%;height:100%}h1,h2,h3,b,input{display:inline}button{color:#000}a,.button,.link{display:block;color:var(--link);background:none;border:none;cursor:pointer;text-decoration:none}a:hover,.button:hover,.link:hover{text-shadow:5px 0 10px var(--link),-3px 0 12px var(--link)}.button:disabled{opacity:.5;cursor:not-allowed}.button:disabled:hover{text-shadow:none}ul{list-style-type:none}.Vue-Toastification__toast{margin:unset}.app[data-v-7c41425b]{background-color:var(--background);color:var(--foreground);display:flex;flex-flow:column;min-height:100%;height:100%}#modal-root[data-v-7c41425b]{position:absolute;min-height:100%;height:100%} diff --git a/index.html b/index.html index 73569b8..7c5f09a 100644 --- a/index.html +++ b/index.html @@ -13,7 +13,7 @@ Advent Incremental - + @@ -27,7 +27,7 @@ - + diff --git a/sw.js b/sw.js index 3bc9978..0968916 100644 --- a/sw.js +++ b/sw.js @@ -1 +1 @@ -if(!self.define){let e,s={};const i=(i,n)=>(i=new URL(i+".js",n).href,s[i]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()})).then((()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e})));self.define=(n,l)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(s[r])return;let t={};const o=e=>i(e,r),u={module:{uri:r},exports:t,require:o};s[r]=Promise.all(n.map((e=>u[e]||o(e)))).then((e=>(l(...e),t)))}}define(["./workbox-958fa2bd"],(function(e){"use strict";self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"assets/@fontsource.f66d05e7.css",revision:null},{url:"assets/@vue.4ce677c2.js",revision:null},{url:"assets/index.08f311a5.css",revision:null},{url:"assets/index.16d9910a.js",revision:null},{url:"assets/is-plain-object.906d88e8.js",revision:null},{url:"assets/lz-string.731cedc5.js",revision:null},{url:"assets/nanoevents.1080beb7.js",revision:null},{url:"assets/sortablejs.29100d8a.js",revision:null},{url:"assets/vue-next-select.9e6f4164.css",revision:null},{url:"assets/vue-next-select.a2bfab1d.js",revision:null},{url:"assets/vue-textarea-autosize.35804eaf.js",revision:null},{url:"assets/vue-toastification.4b5f8ac8.css",revision:null},{url:"assets/vue-toastification.6f567382.js",revision:null},{url:"assets/vue.92681fcb.js",revision:null},{url:"assets/vuedraggable.7949458c.js",revision:null},{url:"assets/workbox-window.8d14e8b7.js",revision:null},{url:"index.html",revision:"af0d2055dc99d45528948f3d2a9cad43"},{url:"favicon.ico",revision:"eead31eb5b19fa3bdc34af83d898c0b7"},{url:"robots.txt",revision:"5e0bd1c281a62a380d7a948085bfe2d1"},{url:"apple-touch-icon.png",revision:"26e53bb981d06c8069ffd9d2a14fce0e"},{url:"pwa-192x192.png",revision:"a16785d9e890858c5b508e0ef6954aaf"},{url:"pwa-512x512.png",revision:"b84004b93fd62ef6599ff179372861a1"},{url:"manifest.webmanifest",revision:"5f32ad2a77eb001e1b6a588835dc1efc"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html")))})); +if(!self.define){let e,s={};const i=(i,n)=>(i=new URL(i+".js",n).href,s[i]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()})).then((()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e})));self.define=(n,l)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(s[r])return;let t={};const o=e=>i(e,r),u={module:{uri:r},exports:t,require:o};s[r]=Promise.all(n.map((e=>u[e]||o(e)))).then((e=>(l(...e),t)))}}define(["./workbox-958fa2bd"],(function(e){"use strict";self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"assets/@fontsource.f66d05e7.css",revision:null},{url:"assets/@vue.4ce677c2.js",revision:null},{url:"assets/index.5721d5fe.js",revision:null},{url:"assets/index.791c7ca4.css",revision:null},{url:"assets/is-plain-object.906d88e8.js",revision:null},{url:"assets/lz-string.731cedc5.js",revision:null},{url:"assets/nanoevents.1080beb7.js",revision:null},{url:"assets/sortablejs.29100d8a.js",revision:null},{url:"assets/vue-next-select.9e6f4164.css",revision:null},{url:"assets/vue-next-select.a2bfab1d.js",revision:null},{url:"assets/vue-textarea-autosize.35804eaf.js",revision:null},{url:"assets/vue-toastification.4b5f8ac8.css",revision:null},{url:"assets/vue-toastification.6f567382.js",revision:null},{url:"assets/vue.92681fcb.js",revision:null},{url:"assets/vuedraggable.7949458c.js",revision:null},{url:"assets/workbox-window.8d14e8b7.js",revision:null},{url:"index.html",revision:"d8a2486cf85653b3dc00402c81dc4856"},{url:"favicon.ico",revision:"eead31eb5b19fa3bdc34af83d898c0b7"},{url:"robots.txt",revision:"5e0bd1c281a62a380d7a948085bfe2d1"},{url:"apple-touch-icon.png",revision:"26e53bb981d06c8069ffd9d2a14fce0e"},{url:"pwa-192x192.png",revision:"a16785d9e890858c5b508e0ef6954aaf"},{url:"pwa-512x512.png",revision:"b84004b93fd62ef6599ff179372861a1"},{url:"manifest.webmanifest",revision:"5f32ad2a77eb001e1b6a588835dc1efc"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html")))}));