diff --git a/404.html b/404.html index 2554d5085..587312074 100644 --- a/404.html +++ b/404.html @@ -21,7 +21,7 @@

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.
- + diff --git a/advent/assets/@fontsource.f66d05e7.css b/advent/assets/@fontsource.c175eac8.css similarity index 88% rename from advent/assets/@fontsource.f66d05e7.css rename to advent/assets/@fontsource.c175eac8.css index b26296d3e..83bd1a1ec 100644 --- a/advent/assets/@fontsource.f66d05e7.css +++ b/advent/assets/@fontsource.c175eac8.css @@ -1 +1 @@ -@font-face{font-family:Material Icons;font-style:normal;font-display:swap;font-weight:400;src:url(./material-icons-base-400-normal.cc0462d5.woff2) format("woff2"),url(./material-icons-base-400-normal.47b692f3.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-cyrillic-ext-400-normal.eef02d41.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-cyrillic-400-normal.8c367f2f.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-greek-400-normal.53a8927b.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0370-03FF}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-latin-ext-400-normal.820adbd1.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-latin-400-normal.7295944e.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD} +@font-face{font-family:Material Icons;font-style:normal;font-display:swap;font-weight:400;src:url(./material-icons-base-400-normal.cc0462d5.woff2) format("woff2"),url(./material-icons-base-400-normal.47b692f3.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-cyrillic-ext-400-normal.eef02d41.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-cyrillic-400-normal.8c367f2f.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-greek-400-normal.53a8927b.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0370-03FF}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-latin-ext-400-normal.820adbd1.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./roboto-mono-latin-400-normal.7295944e.woff2) format("woff2"),url(./roboto-mono-all-400-normal.66268f92.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-vietnamese-400-normal.7c6d919c.woff2) format("woff2"),url(./great-vibes-all-400-normal.f434a07e.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-latin-ext-400-normal.22f2aa42.woff2) format("woff2"),url(./great-vibes-all-400-normal.f434a07e.woff) format("woff");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-latin-400-normal.553fd833.woff2) format("woff2"),url(./great-vibes-all-400-normal.f434a07e.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD} diff --git a/advent/assets/gameLoop.646bafc1.js b/advent/assets/gameLoop.75780d4e.js similarity index 88% rename from advent/assets/gameLoop.646bafc1.js rename to advent/assets/gameLoop.75780d4e.js index 6d3944e92..d43332485 100644 --- a/advent/assets/gameLoop.646bafc1.js +++ b/advent/assets/gameLoop.75780d4e.js @@ -1 +1 @@ -import{_ as d,s as p,p as e,a as f,D as o,b as m,g as u}from"./index.c8467a1f.js";import"./vue.92681fcb.js";import{b1 as T}from"./@vue.4ce677c2.js";/* empty css */import"./nanoevents.1080beb7.js";import"./lz-string.731cedc5.js";import"./is-plain-object.906d88e8.js";import"./vue-next-select.a2bfab1d.js";import"./vue-toastification.6f567382.js";import"./vuedraggable.7949458c.js";import"./sortablejs.29100d8a.js";import"./vue-textarea-autosize.35804eaf.js";import"./workbox-window.8d14e8b7.js";let n=null,l=null;function a(){const t=Date.now();let i=(t-e.time)/1e3;e.time=t;const r=i;if(f.lastTenTicks.push(r),f.lastTenTicks.length>10&&(f.lastTenTicks=f.lastTenTicks.slice(1)),!((l==null?void 0:l.value)&&!e.keepGoing)&&!f.hasNaN&&(i=Math.max(i,0),e.devSpeed!==0)){if(e.offlineTime!=null){if(o.gt(e.offlineTime,m.offlineLimit*3600)&&(e.offlineTime=m.offlineLimit*3600),o.gt(e.offlineTime,0)&&e.devSpeed!==0){const s=Math.max(e.offlineTime/10,i);e.offlineTime=e.offlineTime-s,i+=s}else e.devSpeed===0&&(e.offlineTime+=i);(!e.offlineProd||o.lt(e.offlineTime,0))&&(e.offlineTime=null)}i=Math.min(i,m.maxTickLength),e.devSpeed!=null&&(i*=e.devSpeed),Number.isFinite(i)||(i=1e308),!o.eq(i,0)&&(e.timePlayed+=i,Number.isFinite(e.timePlayed)||(e.timePlayed=1e308),u.emit("update",i,r),p.unthrottled?(requestAnimationFrame(a),n!=null&&(clearInterval(n),n=null)):n==null&&(n=setInterval(a,50)))}}async function w(){l=(await d(()=>import("./index.c8467a1f.js").then(function(t){return t.c}),["assets/index.c8467a1f.js","assets/index.76e63d27.css","assets/@fontsource.f66d05e7.css","assets/vue.92681fcb.js","assets/lz-string.731cedc5.js","assets/@vue.4ce677c2.js","assets/nanoevents.1080beb7.js","assets/is-plain-object.906d88e8.js","assets/vue-next-select.a2bfab1d.js","assets/vue-next-select.9e6f4164.css","assets/vue-toastification.6f567382.js","assets/vue-toastification.4b5f8ac8.css","assets/vuedraggable.7949458c.js","assets/sortablejs.29100d8a.js","assets/vue-textarea-autosize.35804eaf.js","assets/workbox-window.8d14e8b7.js"])).hasWon,T(l,t=>{t&&u.emit("gameWon")}),p.unthrottled?requestAnimationFrame(a):n=setInterval(a,50)}export{w as startGameLoop}; +import{_ as d,s as p,p as e,a as f,D as o,b as m,g as u}from"./index.d2511a6f.js";import"./vue.92681fcb.js";import{b1 as T}from"./@vue.4ce677c2.js";/* empty css */import"./nanoevents.1080beb7.js";import"./lz-string.731cedc5.js";import"./is-plain-object.906d88e8.js";import"./vue-next-select.a2bfab1d.js";import"./vue-toastification.6f567382.js";import"./vuedraggable.7949458c.js";import"./sortablejs.29100d8a.js";import"./vue-textarea-autosize.35804eaf.js";import"./workbox-window.8d14e8b7.js";let n=null,l=null;function a(){const t=Date.now();let i=(t-e.time)/1e3;e.time=t;const r=i;if(f.lastTenTicks.push(r),f.lastTenTicks.length>10&&(f.lastTenTicks=f.lastTenTicks.slice(1)),!((l==null?void 0:l.value)&&!e.keepGoing)&&!f.hasNaN&&(i=Math.max(i,0),e.devSpeed!==0)){if(e.offlineTime!=null){if(o.gt(e.offlineTime,m.offlineLimit*3600)&&(e.offlineTime=m.offlineLimit*3600),o.gt(e.offlineTime,0)&&e.devSpeed!==0){const s=Math.max(e.offlineTime/10,i);e.offlineTime=e.offlineTime-s,i+=s}else e.devSpeed===0&&(e.offlineTime+=i);(!e.offlineProd||o.lt(e.offlineTime,0))&&(e.offlineTime=null)}i=Math.min(i,m.maxTickLength),e.devSpeed!=null&&(i*=e.devSpeed),Number.isFinite(i)||(i=1e308),!o.eq(i,0)&&(e.timePlayed+=i,Number.isFinite(e.timePlayed)||(e.timePlayed=1e308),u.emit("update",i,r),p.unthrottled?(requestAnimationFrame(a),n!=null&&(clearInterval(n),n=null)):n==null&&(n=setInterval(a,50)))}}async function w(){l=(await d(()=>import("./index.d2511a6f.js").then(function(t){return t.c}),["assets/index.d2511a6f.js","assets/index.2a838b71.css","assets/@fontsource.c175eac8.css","assets/vue.92681fcb.js","assets/lz-string.731cedc5.js","assets/@vue.4ce677c2.js","assets/nanoevents.1080beb7.js","assets/is-plain-object.906d88e8.js","assets/vue-next-select.a2bfab1d.js","assets/vue-next-select.9e6f4164.css","assets/vue-toastification.6f567382.js","assets/vue-toastification.4b5f8ac8.css","assets/vuedraggable.7949458c.js","assets/sortablejs.29100d8a.js","assets/vue-textarea-autosize.35804eaf.js","assets/workbox-window.8d14e8b7.js"])).hasWon,T(l,t=>{t&&u.emit("gameWon")}),p.unthrottled?requestAnimationFrame(a):n=setInterval(a,50)}export{w as startGameLoop}; diff --git a/advent/assets/great-vibes-all-400-normal.f434a07e.woff b/advent/assets/great-vibes-all-400-normal.f434a07e.woff new file mode 100644 index 000000000..c7c097507 Binary files /dev/null and b/advent/assets/great-vibes-all-400-normal.f434a07e.woff differ diff --git a/advent/assets/great-vibes-latin-400-normal.553fd833.woff2 b/advent/assets/great-vibes-latin-400-normal.553fd833.woff2 new file mode 100644 index 000000000..d8dba8527 Binary files /dev/null and b/advent/assets/great-vibes-latin-400-normal.553fd833.woff2 differ diff --git a/advent/assets/great-vibes-latin-ext-400-normal.22f2aa42.woff2 b/advent/assets/great-vibes-latin-ext-400-normal.22f2aa42.woff2 new file mode 100644 index 000000000..063b70cdd Binary files /dev/null and b/advent/assets/great-vibes-latin-ext-400-normal.22f2aa42.woff2 differ diff --git a/advent/assets/great-vibes-vietnamese-400-normal.7c6d919c.woff2 b/advent/assets/great-vibes-vietnamese-400-normal.7c6d919c.woff2 new file mode 100644 index 000000000..c3b85da77 Binary files /dev/null and b/advent/assets/great-vibes-vietnamese-400-normal.7c6d919c.woff2 differ diff --git a/advent/assets/index.2a838b71.css b/advent/assets/index.2a838b71.css new file mode 100644 index 000000000..bec7e0570 --- /dev/null +++ b/advent/assets/index.2a838b71.css @@ -0,0 +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:calc(95vh - 20px);background-color:var(--background);padding:20px;margin-top: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%;margin-top:-50px;text-align:center}.modal-header>h2{font-family:Great Vibes,cursive;font-weight:400;font-size:64px}.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-d953df70]{flex:13% 0 0;position:relative;display:flex;background-color:var(--raised-background);aspect-ratio:1;margin:5%}.door-enter-from[data-v-d953df70]:before,.door-enter-from[data-v-d953df70]:after,.door-leave-to[data-v-d953df70]:before,.door-leave-to[data-v-d953df70]:after{transform:perspective(150px) rotateY(0)!important}.door-enter-from .date[data-v-d953df70],.door-leave-to .date[data-v-d953df70]{transform:translate(-50%,-50%) perspective(150px) rotateY(0)!important}.door-enter-active[data-v-d953df70]:before,.door-enter-active[data-v-d953df70]:after,.door-leave-active[data-v-d953df70]:before,.door-leave-active[data-v-d953df70]:after{z-index:2}.door-enter-active .date[data-v-d953df70],.door-leave-active .date[data-v-d953df70]{z-index:3}.day.opened .doors[data-v-d953df70]:before,.day.opened .doors[data-v-d953df70]:after,.day.opened .doors .date[data-v-d953df70]{transition:1s}.day.opened .doors[data-v-d953df70]:before{transform-origin:left;transform:perspective(150px) rotateY(-135deg)}.day.opened .doors[data-v-d953df70]:after{transform-origin:right;transform:perspective(150px) rotateY(135deg)}.day.opened .doors .date[data-v-d953df70]: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-d953df70]: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-d953df70]{position:absolute;width:100%;height:100%;top:0;left:0}.day.opened .doors[data-v-d953df70]{cursor:pointer}.doors[data-v-d953df70]:before,.doors[data-v-d953df70]:after{content:"";position:absolute;background-color:var(--locked);width:50%;height:100%;pointer-events:none}.doors[data-v-d953df70]:before{top:0;left:0}.doors[data-v-d953df70]:after{top:0;right:0}.date[data-v-d953df70]{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%}.timer[data-v-d953df70]{position:absolute;bottom:-12px;left:50%;padding:0 3px;transform:translate(-50%);z-index:3;pointer-events:none;user-select:none;white-space:nowrap;font-size:small;border:2px solid rgba(0,0,0,.125);border-radius:var(--border-radius);background:var(--locked)}.icon[data-v-d953df70]{pointer-events:none;background-size:contain;width:100%;height:100%}.lore[data-v-d953df70]{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-d953df70]:hover{box-shadow:0 0 10px var(--points)}.lock[data-v-d953df70]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.2;font-size:400%}.collapsible-container[data-v-a72c16aa]{width:calc(100% - 10px)}.collapsible-toggle[data-v-a72c16aa]{max-width:unset;width:calc(100% + 0px);margin:0 0 0 -5px;background:var(--raised-background);padding:var(--feature-margin);color:var(--foreground);cursor:pointer;transition-duration:0s}.collapsible-toggle[data-v-a72c16aa]:last-child{margin-left:unset}[data-v-a72c16aa] .collapsible-toggle+.table{max-width:unset;width:calc(100% + 10px);margin-left:-5px}[data-v-a72c16aa] .col{margin-top:0;margin-bottom:0;width:100%}.mergeAdjacent .collapsible-toggle[data-v-a72c16aa]{border:0;border-top-left-radius:0!important;border-top-right-radius:0!important}[data-v-a72c16aa] .mergeAdjacent .feature:not(.dontMerge):first-child{border-top-left-radius:0!important;border-top-right-radius:0!important}.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}.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}.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}.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)}.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;padding:1px 8px}.modifier-container:nth-child(2n){background:var(--raised-background)}.modifier-amount{flex-basis:100px;flex-shrink:0;text-align:right}.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}.field[data-v-33d57459]{cursor:pointer;pointer-events:all}input[data-v-33d57459]{appearance:none;pointer-events:none}span[data-v-33d57459]{width:100%;position:relative}input+span[data-v-33d57459]: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;border:solid 1px var(--feature-foreground)}input+span[data-v-33d57459]: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;border:solid 1px var(--feature-foreground)}input:checked+span[data-v-33d57459]:before{background-color:var(--link);opacity:.6}input:checked+span[data-v-33d57459]:after{background-color:var(--link);transform:translate(16px)}input:active+span[data-v-33d57459]:before{background-color:var(--link);opacity:.6}input:checked:active+span[data-v-33d57459]:before{background-color:var(--outline);opacity:.38}input:disabled+span[data-v-33d57459]{color:#000;opacity:.38;cursor:default}input:disabled+span[data-v-33d57459]:before{background-color:var(--outline);opacity:.38}input:checked:disabled+span[data-v-33d57459]:before{background-color:var(--link);opacity:.6}.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}.scene[data-v-217dad6a]{width:600px;height:300px;position:relative}.scene[data-v-217dad6a]:after{content:"";position:absolute;width:100%;height:20%;border-radius:50% 50% 0 0/100% 100% 0 0;bottom:0;background:white}.scene-item[data-v-217dad6a]{width:80px;height:80px;position:absolute;z-index:1}.scene-bubble[data-v-217dad6a]{position:absolute;background:white;height:60px;padding:5px;border-radius:10px}.scene-bubble[data-v-217dad6a]:after{content:"";position:absolute;width:0;height:0;top:100%;left:20px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:15px solid white}.scene-bubble .scene-item[data-v-217dad6a]{height:60px;width:60px;position:static}.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 .modal-header{font-family:unset;font-weight:unset;font-size:unset;margin-top:unset}.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-grow:1;flex-direction:column;padding:10px 0;text-align:center}.info-modal-title h2{font-family:Great Vibes,cursive;font-weight:400;font-size:64px;margin-top:-40px}.info-modal-discord-link{display:flex;align-items:center}.info-modal-discord{margin:0 4px 0 0}*[data-v-0d685451] .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-8495e562]{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-8495e562]{height:46px;width:46px;display:flex;cursor:pointer;flex-shrink:0}.nav>.banner[data-v-8495e562]{height:100%;width:unset}.overlay-nav[data-v-8495e562]{position:fixed;top:10px;left:10px;display:flex;flex-direction:column;z-index:2}.overlay-nav>*[data-v-8495e562]{height:50px;width:50px;display:flex;cursor:pointer;margin:0;align-items:center;justify-content:center}.title[data-v-8495e562]{font-family:Great Vibes,cursive;font-size:46px;text-align:left;margin-left:12px;cursor:unset}.nav>.title[data-v-8495e562]{width:unset;flex-shrink:1;padding-right:8px;overflow:hidden;white-space:nowrap}.nav .saves[data-v-8495e562],.nav .info[data-v-8495e562]{display:flex}.tooltip-container[data-v-8495e562]{width:100%;height:100%;display:flex}.overlay-nav .discord[data-v-8495e562]{position:relative}.discord img[data-v-8495e562]{width:100%;height:100%}.discord-links[data-v-8495e562]{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-8495e562]{position:absolute;left:-280px;right:unset;transition:left .25s ease}.overlay-nav .discord:hover .discord-links[data-v-8495e562]{left:-10px}.discord-links li[data-v-8495e562]{margin-bottom:4px}.discord-links li[data-v-8495e562]:first-child{font-size:1.2em}*:not(.overlay-nav) .discord:hover .discord-links[data-v-8495e562]{right:0}.material-icons[data-v-8495e562]{font-size:36px}.material-icons[data-v-8495e562]:hover{text-shadow:5px 0 10px var(--link),-3px 0 12px var(--foreground)}.nav .version-container[data-v-8495e562]{display:flex;height:25px;margin-bottom:0;margin-left:10px}.overlay-nav .version-container[data-v-8495e562]{width:unset;height:25px}.version[data-v-8495e562]{color:var(--points)}.version:hover span[data-v-8495e562]{text-shadow:5px 0 10px var(--points),-3px 0 12px var(--points)}.nav>div>a[data-v-8495e562],.overlay-nav>div>a[data-v-8495e562]{color:var(--foreground);text-shadow:none}.tabs-container[data-v-248e2ebb]{width:100vw;flex-grow:1;overflow-x:auto;overflow-y:hidden;display:flex}.tabs-container[data-v-248e2ebb]:not(.useHeader){width:calc(100vw - 50px);margin-left:50px}.tab[data-v-248e2ebb]{position:relative;height:100%;flex-grow:1;transition-duration:0s;overflow-y:auto;overflow-x:hidden}.inner-tab[data-v-248e2ebb]{padding:50px 10px;min-height:calc(100% - 100px);display:flex;flex-direction:column;margin:0;flex-grow:1}.tab+.tab>.inner-tab[data-v-248e2ebb]{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-580927bb]{background-color:var(--background);color:var(--foreground);display:flex;flex-flow:column;min-height:100%;height:100%}#modal-root[data-v-580927bb]{position:absolute;min-height:100%;height:100%} diff --git a/advent/assets/index.76e63d27.css b/advent/assets/index.76e63d27.css deleted file mode 100644 index 7bafb449a..000000000 --- a/advent/assets/index.76e63d27.css +++ /dev/null @@ -1 +0,0 @@ -.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-d953df70]{flex:13% 0 0;position:relative;display:flex;background-color:var(--raised-background);aspect-ratio:1;margin:5%}.door-enter-from[data-v-d953df70]:before,.door-enter-from[data-v-d953df70]:after,.door-leave-to[data-v-d953df70]:before,.door-leave-to[data-v-d953df70]:after{transform:perspective(150px) rotateY(0)!important}.door-enter-from .date[data-v-d953df70],.door-leave-to .date[data-v-d953df70]{transform:translate(-50%,-50%) perspective(150px) rotateY(0)!important}.door-enter-active[data-v-d953df70]:before,.door-enter-active[data-v-d953df70]:after,.door-leave-active[data-v-d953df70]:before,.door-leave-active[data-v-d953df70]:after{z-index:2}.door-enter-active .date[data-v-d953df70],.door-leave-active .date[data-v-d953df70]{z-index:3}.day.opened .doors[data-v-d953df70]:before,.day.opened .doors[data-v-d953df70]:after,.day.opened .doors .date[data-v-d953df70]{transition:1s}.day.opened .doors[data-v-d953df70]:before{transform-origin:left;transform:perspective(150px) rotateY(-135deg)}.day.opened .doors[data-v-d953df70]:after{transform-origin:right;transform:perspective(150px) rotateY(135deg)}.day.opened .doors .date[data-v-d953df70]: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-d953df70]: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-d953df70]{position:absolute;width:100%;height:100%;top:0;left:0}.day.opened .doors[data-v-d953df70]{cursor:pointer}.doors[data-v-d953df70]:before,.doors[data-v-d953df70]:after{content:"";position:absolute;background-color:var(--locked);width:50%;height:100%;pointer-events:none}.doors[data-v-d953df70]:before{top:0;left:0}.doors[data-v-d953df70]:after{top:0;right:0}.date[data-v-d953df70]{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%}.timer[data-v-d953df70]{position:absolute;bottom:-12px;left:50%;padding:0 3px;transform:translate(-50%);z-index:3;pointer-events:none;user-select:none;white-space:nowrap;font-size:small;border:2px solid rgba(0,0,0,.125);border-radius:var(--border-radius);background:var(--locked)}.icon[data-v-d953df70]{pointer-events:none;background-size:contain;width:100%;height:100%}.lore[data-v-d953df70]{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-d953df70]:hover{box-shadow:0 0 10px var(--points)}.lock[data-v-d953df70]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.2;font-size:400%}.collapsible-container[data-v-a72c16aa]{width:calc(100% - 10px)}.collapsible-toggle[data-v-a72c16aa]{max-width:unset;width:calc(100% + 0px);margin:0 0 0 -5px;background:var(--raised-background);padding:var(--feature-margin);color:var(--foreground);cursor:pointer;transition-duration:0s}.collapsible-toggle[data-v-a72c16aa]:last-child{margin-left:unset}[data-v-a72c16aa] .collapsible-toggle+.table{max-width:unset;width:calc(100% + 10px);margin-left:-5px}[data-v-a72c16aa] .col{margin-top:0;margin-bottom:0;width:100%}.mergeAdjacent .collapsible-toggle[data-v-a72c16aa]{border:0;border-top-left-radius:0!important;border-top-right-radius:0!important}[data-v-a72c16aa] .mergeAdjacent .feature:not(.dontMerge):first-child{border-top-left-radius:0!important;border-top-right-radius:0!important}.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}.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}.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}.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)}.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}.field[data-v-33d57459]{cursor:pointer;pointer-events:all}input[data-v-33d57459]{appearance:none;pointer-events:none}span[data-v-33d57459]{width:100%;position:relative}input+span[data-v-33d57459]: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;border:solid 1px var(--feature-foreground)}input+span[data-v-33d57459]: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;border:solid 1px var(--feature-foreground)}input:checked+span[data-v-33d57459]:before{background-color:var(--link);opacity:.6}input:checked+span[data-v-33d57459]:after{background-color:var(--link);transform:translate(16px)}input:active+span[data-v-33d57459]:before{background-color:var(--link);opacity:.6}input:checked:active+span[data-v-33d57459]:before{background-color:var(--outline);opacity:.38}input:disabled+span[data-v-33d57459]{color:#000;opacity:.38;cursor:default}input:disabled+span[data-v-33d57459]:before{background-color:var(--outline);opacity:.38}input:checked:disabled+span[data-v-33d57459]:before{background-color:var(--link);opacity:.6}.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}.scene[data-v-217dad6a]{width:600px;height:300px;position:relative}.scene[data-v-217dad6a]:after{content:"";position:absolute;width:100%;height:20%;border-radius:50% 50% 0 0/100% 100% 0 0;bottom:0;background:white}.scene-item[data-v-217dad6a]{width:80px;height:80px;position:absolute;z-index:1}.scene-bubble[data-v-217dad6a]{position:absolute;background:white;height:60px;padding:5px;border-radius:10px}.scene-bubble[data-v-217dad6a]:after{content:"";position:absolute;width:0;height:0;top:100%;left:20px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:15px solid white}.scene-bubble .scene-item[data-v-217dad6a]{height:60px;width:60px;position:static}.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}.header[data-v-a03c577c]{margin-bottom:-10px}*[data-v-a03c577c] .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-248e2ebb]{width:100vw;flex-grow:1;overflow-x:auto;overflow-y:hidden;display:flex}.tabs-container[data-v-248e2ebb]:not(.useHeader){width:calc(100vw - 50px);margin-left:50px}.tab[data-v-248e2ebb]{position:relative;height:100%;flex-grow:1;transition-duration:0s;overflow-y:auto;overflow-x:hidden}.inner-tab[data-v-248e2ebb]{padding:50px 10px;min-height:calc(100% - 100px);display:flex;flex-direction:column;margin:0;flex-grow:1}.tab+.tab>.inner-tab[data-v-248e2ebb]{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/advent/assets/index.c8467a1f.js b/advent/assets/index.c8467a1f.js deleted file mode 100644 index 2cc6fcc21..000000000 --- a/advent/assets/index.c8467a1f.js +++ /dev/null @@ -1,19 +0,0 @@ -/* empty css */import"./vue.92681fcb.js";import{Z as k,l as Ge,aa as K,t as q,ay as Bn,ar as Jt,aE as b,a0 as M,aK as _t,a1 as f,O as P,aG as kn,A as Ze,_ as j,a8 as o,b6 as Q,b8 as xn,bs as El,C as u,aq as Xt,bu as mn,bb as Pn,T as Si,a7 as p,u as Fn,j as Mi,bv as ml,q as gn,b1 as bt,G as Re,aC as Bl,w as ft,b2 as dt,ao as Ai,I as He,J as Y,$ as T,aH as Bt,aF as xt,z as wt,aN as Me,al as Sn,aL as qt,H as Ii,aJ as xl,bn as Ei,br as Bi,be as xi}from"./@vue.4ce677c2.js";import{c as Pl}from"./nanoevents.1080beb7.js";import{L as Rt}from"./lz-string.731cedc5.js";import{i as Pi}from"./is-plain-object.906d88e8.js";import{Y as Fi}from"./vue-next-select.a2bfab1d.js";import{s as Ti,u as Fl}from"./vue-toastification.6f567382.js";import{D as Di}from"./vuedraggable.7949458c.js";import{p as $i}from"./vue-textarea-autosize.35804eaf.js";import{v as Ri,n as Ui}from"./workbox-window.8d14e8b7.js";import"./sortablejs.29100d8a.js";const Oi=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))l(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const r of s.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&l(r)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerpolicy&&(s.referrerPolicy=a.referrerpolicy),a.crossorigin==="use-credentials"?s.credentials="include":a.crossorigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function l(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}};Oi();const qi="modulepreload",pl={},Vi="./",Mn=function(t,n){return!n||n.length===0?t():Promise.all(n.map(l=>{if(l=`${Vi}${l}`,l in pl)return;pl[l]=!0;const a=l.endsWith(".css"),s=a?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${s}`))return;const r=document.createElement("link");if(r.rel=a?"stylesheet":qi,a||(r.as="script",r.crossOrigin=""),r.href=l,document.head.appendChild(r),a)return new Promise((d,m)=>{r.addEventListener("load",d),r.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})})).then(()=>t())},Li="./projInfo-schema.json",Gi="Advent Incremental",Hi="An incremental game you play a day at a time, leading up to Christmas!",Qi="advent-incremental",ji="thepaperpilot and friends",zi="",Ki="",Wi="0.3",Ji="Initial Commit",Xi=!0,Yi=!1,Zi=2,ea=!0,ta=null,na="",la=["main"],ia=3600,aa=0,sa=!0,oa="base64";var fe={$schema:Li,title:Gi,description:Hi,id:Qi,author:ji,discordName:zi,discordLink:Ki,versionNumber:Wi,versionTitle:Ji,allowGoBack:Xi,defaultShowSmall:Yi,defaultDecimalsShown:Zi,useHeader:ea,banner:ta,logo:na,initialTabs:la,maxTickLength:ia,offlineLimit:aa,enablePausing:sa,exportEncoding:oa};const Vn=17,ra=9e15,ua=Math.log10(9e15),da=1/9e15,ca=308,ma=-324,fl=5,pa=function(){const e=[];for(let n=ma+1;n<=ca;n++)e.push(Number("1e"+n));const t=323;return function(n){return e[n+t]}}(),jt=[2,Math.E,3,4,5,6,7,8,9,10],fa=[[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]],ha=[[-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 i.fromValue_noAlloc(t)},z=function(e,t,n){return i.fromComponents(e,t,n)},Z=function(t,n,l){return i.fromComponents_noNormalize(t,n,l)},$t=function(t,n){const l=n+1,a=Math.ceil(Math.log10(Math.abs(t))),s=Math.round(t*Math.pow(10,l-a))*Math.pow(10,a-l);return parseFloat(s.toFixed(Math.max(l-a,0)))},Ln=function(e){return Math.sign(e)*Math.log10(Math.abs(e))},ga=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 l=e*e;let a=e;return n=n+1/(12*a),a=a*l,n=n+1/(360*a),a=a*l,n=n+1/(1260*a),a=a*l,n=n+1/(1680*a),a=a*l,n=n+1/(1188*a),a=a*l,n=n+691/(360360*a),a=a*l,n=n+7/(1092*a),a=a*l,n=n+3617/(122400*a),Math.exp(n)/t},Tl=.5671432904097838,hl=function(e,t=1e-10){let n,l;if(!Number.isFinite(e)||e===0)return e;if(e===1)return Tl;e<10?n=0:n=Math.log(e)-Math.log(Math.log(e));for(let a=0;a<100;++a){if(l=(e*Math.exp(-n)+n*n)/(n+1),Math.abs(l-n).5?1:-1;if(Math.random()*20<1)return Z(t,0,1);const n=Math.floor(Math.random()*(e+1));let l=n===0?Math.random()*616-308:Math.random()*16;Math.random()>.9&&(l=Math.trunc(l));let a=Math.pow(10,l);return Math.random()>.9&&(a=Math.trunc(a)),z(t,n,a)}static affordGeometricSeries_core(e,t,n,l){const a=t.mul(n.pow(l));return C.floor(e.div(a).mul(n.sub(1)).add(1).log10().div(n.log10()))}static sumGeometricSeries_core(e,t,n,l){return t.mul(n.pow(l)).mul(C.sub(1,n.pow(e))).div(C.sub(1,n))}static affordArithmeticSeries_core(e,t,n,l){const s=t.add(l.mul(n)).sub(n.div(2)),r=s.pow(2);return s.neg().add(r.add(n.mul(e).mul(2)).sqrt()).div(n).floor()}static sumArithmeticSeries_core(e,t,n,l){const a=t.add(l.mul(n));return e.div(2).mul(a.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=ra)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 w=parseFloat(t[0]),v=parseFloat(t[1]),_=t[1].split(";");let N=1;if(_.length===2&&(N=parseFloat(_[1]),isFinite(N)||(N=1)),isFinite(w)&&isFinite(v)){const I=C.pentate(w,v,N);return this.sign=I.sign,this.layer=I.layer,this.mag=I.mag,this}}const n=e.split("^^");if(n.length===2){const w=parseFloat(n[0]),v=parseFloat(n[1]),_=n[1].split(";");let N=1;if(_.length===2&&(N=parseFloat(_[1]),isFinite(N)||(N=1)),isFinite(w)&&isFinite(v)){const I=C.tetrate(w,v,N);return this.sign=I.sign,this.layer=I.layer,this.mag=I.mag,this}}const l=e.split("^");if(l.length===2){const w=parseFloat(l[0]),v=parseFloat(l[1]);if(isFinite(w)&&isFinite(v)){const _=C.pow(w,v);return this.sign=_.sign,this.layer=_.layer,this.mag=_.mag,this}}e=e.trim().toLowerCase();let a,s,r=e.split("pt");if(r.length===2){a=10,s=parseFloat(r[0]),r[1]=r[1].replace("(",""),r[1]=r[1].replace(")","");let w=parseFloat(r[1]);if(isFinite(w)||(w=1),isFinite(a)&&isFinite(s)){const v=C.tetrate(a,s,w);return this.sign=v.sign,this.layer=v.layer,this.mag=v.mag,this}}if(r=e.split("p"),r.length===2){a=10,s=parseFloat(r[0]),r[1]=r[1].replace("(",""),r[1]=r[1].replace(")","");let w=parseFloat(r[1]);if(isFinite(w)||(w=1),isFinite(a)&&isFinite(s)){const v=C.tetrate(a,s,w);return this.sign=v.sign,this.layer=v.layer,this.mag=v.mag,this}}const d=e.split("e"),m=d.length-1;if(m===0){const w=parseFloat(e);if(isFinite(w))return this.fromNumber(w)}else if(m===1){const w=parseFloat(e);if(isFinite(w)&&w!==0)return this.fromNumber(w)}const c=e.split("e^");if(c.length===2){this.sign=1,c[0].charAt(0)=="-"&&(this.sign=-1);let w="";for(let v=0;v=43&&_<=57||_===101)w+=c[1].charAt(v);else return this.layer=parseFloat(w),this.mag=parseFloat(c[1].substr(v+1)),this.normalize(),this}}if(m<1)return this.sign=0,this.layer=0,this.mag=0,this;const y=parseFloat(d[0]);if(y===0)return this.sign=0,this.layer=0,this.mag=0,this;let g=parseFloat(d[d.length-1]);if(m>=2){const w=parseFloat(d[d.length-2]);isFinite(w)&&(g*=Math.sign(w),g+=Ln(w))}if(!isFinite(y))this.sign=d[0]==="-"?-1:1,this.layer=m,this.mag=g;else if(m===1)this.sign=Math.sign(y),this.layer=1,this.mag=g+Math.log10(Math.abs(y));else if(this.sign=Math.sign(y),this.layer=m,m===2){const w=C.mul(z(1,2,g),h(y));return this.sign=w.sign,this.layer=w.layer,this.mag=w.mag,this}else this.mag=g;return this.normalize(),this}fromValue(e){return e instanceof C||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:$t(this.m,e)}magnitudeWithDecimalPlaces(e){return isNaN(this.mag)?Number.NaN:this.mag===0?0:$t(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<=fl?(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):$t(this.m,e)+"e"+$t(this.e,e):this.layer===1?$t(this.m,e)+"e"+$t(this.e,e):this.layer<=fl?(this.sign===-1?"-":"")+"e".repeat(this.layer)+$t(this.mag,e):(this.sign===-1?"-":"")+"(e^"+this.layer+")"+$t(this.mag,e)}abs(){return Z(this.sign===0?0:1,this.layer,this.mag)}neg(){return Z(-this.sign,this.layer,this.mag)}negate(){return this.neg()}negated(){return this.neg()}sgn(){return this.sign}round(){return this.mag<0?C.dZero:this.layer===0?z(this.sign,0,Math.round(this.mag)):this}floor(){return this.mag<0?C.dZero:this.layer===0?z(this.sign,0,Math.floor(this.mag)):this}ceil(){return this.mag<0?C.dZero:this.layer===0?z(this.sign,0,Math.ceil(this.mag)):this}trunc(){return this.mag<0?C.dZero:this.layer===0?z(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 Z(0,0,0);let n,l;if(this.layer>=2||t.layer>=2)return this.maxabs(t);if(C.cmpabs(this,t)>0?(n=this,l=t):(n=t,l=this),n.layer===0&&l.layer===0)return h(n.sign*n.mag+l.sign*l.mag);const a=n.layer*Math.sign(n.mag),s=l.layer*Math.sign(l.mag);if(a-s>=2)return n;if(a===0&&s===-1){if(Math.abs(l.mag-Math.log10(n.mag))>Vn)return n;{const r=Math.pow(10,Math.log10(n.mag)-l.mag),d=l.sign+n.sign*r;return z(Math.sign(d),1,l.mag+Math.log10(Math.abs(d)))}}if(a===1&&s===0){if(Math.abs(n.mag-Math.log10(l.mag))>Vn)return n;{const r=Math.pow(10,n.mag-Math.log10(l.mag)),d=l.sign+n.sign*r;return z(Math.sign(d),1,Math.log10(l.mag)+Math.log10(Math.abs(d)))}}if(Math.abs(n.mag-l.mag)>Vn)return n;{const r=Math.pow(10,n.mag-l.mag),d=l.sign+n.sign*r;return z(Math.sign(d),1,l.mag+Math.log10(Math.abs(d)))}}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 Z(0,0,0);if(this.layer===t.layer&&this.mag===-t.mag)return Z(this.sign*t.sign,0,1);let n,l;if(this.layer>t.layer||this.layer==t.layer&&Math.abs(this.mag)>Math.abs(t.mag)?(n=this,l=t):(n=t,l=this),n.layer===0&&l.layer===0)return h(n.sign*l.sign*n.mag*l.mag);if(n.layer>=3||n.layer-l.layer>=2)return z(n.sign*l.sign,n.layer,n.mag);if(n.layer===1&&l.layer===0)return z(n.sign*l.sign,1,n.mag+Math.log10(l.mag));if(n.layer===1&&l.layer===1)return z(n.sign*l.sign,1,n.mag+l.mag);if(n.layer===2&&l.layer===1){const a=z(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(z(Math.sign(l.mag),l.layer-1,Math.abs(l.mag)));return z(n.sign*l.sign,a.layer+1,a.sign*a.mag)}if(n.layer===2&&l.layer===2){const a=z(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(z(Math.sign(l.mag),l.layer-1,Math.abs(l.mag)));return z(n.sign*l.sign,a.layer+1,a.sign*a.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?C.dNaN:this.layer===0?z(this.sign,0,1/this.mag):z(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,l=t.mag>0?t.layer:-t.layer;return n>l?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 l=this.mag,a=n.mag;return this.layer>n.layer&&(a=Ln(a)),this.layer0?z(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):z(1,0,Math.log10(this.mag))}log10(){return this.sign<=0?C.dNaN:this.layer>0?z(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):z(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?C.dNaN:this.layer===0&&e.layer===0?z(this.sign,0,Math.log(this.mag)/Math.log(e.mag)):C.div(this.log10(),e.log10())}log2(){return this.sign<=0?C.dNaN:this.layer===0?z(this.sign,0,Math.log2(this.mag)):this.layer===1?z(Math.sign(this.mag),0,Math.abs(this.mag)*3.321928094887362):this.layer===2?z(Math.sign(this.mag),1,Math.abs(this.mag)+.5213902276543247):z(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}ln(){return this.sign<=0?C.dNaN:this.layer===0?z(this.sign,0,Math.log(this.mag)):this.layer===1?z(Math.sign(this.mag),0,Math.abs(this.mag)*2.302585092994046):this.layer===2?z(Math.sign(this.mag),1,Math.abs(this.mag)+.36221568869946325):z(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,l=t;if(n.sign===0)return l.eq(0)?Z(1,0,1):n;if(n.sign===1&&n.layer===0&&n.mag===1)return n;if(l.sign===0)return Z(1,0,1);if(l.sign===1&&l.layer===0&&l.mag===1)return n;const a=n.absLog10().mul(l).pow10();return this.sign===-1?Math.abs(l.toNumber()%2)%2===1?a.neg():Math.abs(l.toNumber()%2)%2===0?a:C.dNaN:a}pow10(){if(!Number.isFinite(this.layer)||!Number.isFinite(this.mag))return C.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 z(1,0,t);if(e.sign===0)return C.dOne;e=Z(e.sign,e.layer+1,Math.log10(e.mag))}return e.sign>0&&e.mag>=0?z(e.sign,e.layer+1,e.mag):e.sign<0&&e.mag>=0?z(-e.sign,e.layer+1,-e.mag):C.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?C.exp(C.mul(this,C.ln(this).sub(1))):C.exp(this)}gamma(){if(this.mag<0)return this.recip();if(this.layer===0){if(this.lt(Z(1,0,24)))return h(ga(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 l=e,a=12*l,s=1/a,r=t+s;if(r===t||(t=r,l=l*n,a=360*l,s=1/a,r=t-s,r===t))return C.exp(t);t=r,l=l*n,a=1260*l;let d=1/a;return t=t+d,l=l*n,a=1680*l,d=1/a,t=t-d,C.exp(t)}else return this.layer===1?C.exp(C.mul(this,C.ln(this).sub(1))):C.exp(this)}lngamma(){return this.gamma().ln()}exp(){return this.mag<0?C.dOne:this.layer===0&&this.mag<=709.7?h(Math.exp(this.sign*this.mag)):this.layer===0?z(1,1,this.sign*Math.log10(Math.E)*this.mag):this.layer===1?z(1,2,this.sign*(Math.log10(.4342944819032518)+this.mag)):z(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 z(1,2,Math.log10(this.mag)-.3010299956639812);{const e=C.div(Z(this.sign,this.layer-1,this.mag),Z(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=Z(1,0,1)){if(e===1)return C.pow(this,t);if(e===0)return new C(t);if(this.eq(C.dOne))return C.dOne;if(this.eq(-1))return C.pow(this,t);if(e===Number.POSITIVE_INFINITY){const a=this.toNumber();if(a<=1.444667861009766&&a>=.06598803584531254){if(a>1.444667861009099)return new C(Math.E);const s=C.ln(this).neg();return s.lambertw().div(s)}else return a>1.444667861009766?new C(Number.POSITIVE_INFINITY):C.dNaN}if(this.eq(C.dZero)){let a=Math.abs((e+1)%2);return a>1&&(a=2-a),new C(a)}if(e<0)return C.iteratedlog(t,this,-e);t=h(t);const n=e;e=Math.trunc(e);const l=n-e;if(this.gt(C.dZero)&&this.lte(1.444667861009766)){e=Math.min(1e4,e);for(let a=0;a3)return Z(t.sign,t.layer+(e-a-1),t.mag);if(a>1e4)return t}return t}iteratedexp(e=2,t=Z(1,0,1)){return this.tetrate(e,t)}iteratedlog(e=10,t=1){if(t<0)return C.tetrate(e,-t,this);e=h(e);let n=h(this);const l=t;t=Math.trunc(t);const a=l-t;if(n.layer-e.layer>3){const s=Math.min(t,n.layer-e.layer-3);t-=s,n.layer-=s}for(let s=0;s1e4)return n}return a>0&&a<1&&(e.eq(10)?n=n.layeradd10(-a):n=n.layeradd(-a,e)),n}slog(e=10){if(e=h(e),e.lte(C.dZero)||e.eq(C.dOne))return C.dNaN;if(e.lt(C.dOne))return this.eq(C.dOne)?C.dZero:this.eq(C.dZero)?C.dNegOne:C.dNaN;if(this.mag<0||this.eq(C.dZero))return C.dNegOne;let t=0,n=h(this);if(n.layer-e.layer>3){const l=n.layer-e.layer-3;t+=l,n.layer-=l}for(let l=0;l<100;++l)if(n.lt(C.dZero))n=C.pow(e,n),t-=1;else{if(n.lte(C.dOne))return h(t+C.slog_critical(e.toNumber(),n.toNumber()));t+=1,n=C.log(n,e)}return h(t)}static slog_critical(e,t){return e>10?t-1:C.critical_section(e,t,ha)}static tetrate_critical(e,t){return C.critical_section(e,t,fa)}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 l=0,a=0;for(let d=0;de){const m=(e-jt[d])/(jt[d+1]-jt[d]);l=n[d][Math.floor(t)]*(1-m)+n[d+1][Math.floor(t)]*m,a=n[d][Math.ceil(t)]*(1-m)+n[d+1][Math.ceil(t)]*m;break}const s=t-Math.floor(t);return l*(1-s)+a*s}layeradd10(e){e=C.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 l=0;l<100;++l){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 l=this.slog(t).toNumber()+e;return l>=0?C.tetrate(t,l):Number.isFinite(l)?l>=-1?C.log(C.tetrate(t,l+1),t):C.log(C.log(C.tetrate(t,l+2),t),t):C.dNaN}lambertw(){if(this.lt(-.3678794411710499))throw Error("lambertw is unimplemented for results less than -1, sorry!");if(this.mag<0)return h(hl(this.toNumber()));if(this.layer===0)return h(hl(this.sign*this.mag));if(this.layer===1)return gl(this);if(this.layer===2)return gl(this);if(this.layer>=3)return Z(this.sign,this.layer-1,this.mag);throw"Unhandled behavior in lambertw()"}ssqrt(){if(this.sign==1&&this.layer>=3)return Z(this.sign,this.layer-1,this.mag);const e=this.ln();return e.div(e.lambertw())}pentate(e=2,t=Z(1,0,1)){t=h(t);const n=e;e=Math.trunc(e);const l=n-e;l!==0&&(t.eq(C.dOne)?(++e,t=new C(l)):this.eq(10)?t=t.layeradd10(l):t=t.layeradd(l,this));for(let a=0;a10)return t}return t}sin(){return this.mag<0?this:this.layer===0?h(Math.sin(this.sign*this.mag)):Z(0,0,0)}cos(){return this.mag<0?C.dOne:this.layer===0?h(Math.cos(this.sign*this.mag)):Z(0,0,0)}tan(){return this.mag<0?this:this.layer===0?h(Math.tan(this.sign*this.mag)):Z(0,0,0)}asin(){return this.mag<0?this:this.layer===0?h(Math.asin(this.sign*this.mag)):Z(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)):Z(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 C.ln(this.add(this.sqr().add(1).sqrt()))}acosh(){return C.ln(this.add(this.sqr().sub(1).sqrt()))}atanh(){return this.abs().gte(1)?Z(Number.NaN,Number.NaN,Number.NaN):C.ln(this.add(1).div(h(1).sub(this))).div(2)}ascensionPenalty(e){return e===0?this:this.root(C.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 i=C;i.dZero=Z(0,0,0);i.dOne=Z(1,0,1);i.dNegOne=Z(-1,0,1);i.dTwo=Z(1,0,2);i.dTen=Z(1,0,10);i.dNaN=Z(Number.NaN,Number.NaN,Number.NaN);i.dInf=Z(1,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY);i.dNegInf=Z(-1,Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);i.dNumberMax=z(1,0,Number.MAX_VALUE);i.dNumberMin=z(1,0,Number.MIN_VALUE);const va=new i(1);function rn(e,t,n=!0){let l=i.log10(e).floor(),a=i.div(e,i.pow(10,l));a.toStringWithDecimalPlaces(t)==="10"&&(a=va,l=l.add(1));const s=l.gte(1e9)?Qe(l,Math.max(Math.max(t,3),fe.defaultDecimalsShown)):l.gte(1e4)?An(l,0):l.toStringWithDecimalPlaces(0);return n?a.toStringWithDecimalPlaces(t)+"e"+s:"e"+s}function An(e,t){if(e==null)return"NaN";if(e=new i(e),e.mag<.001)return 0 .toFixed(t);const l=e.toStringWithDecimalPlaces(t).split(".");return l[0]=l[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),l.length==1?l[0]:l[0]+"."+l[1]}function Dl(e,t){return e==null?"NaN":(e=new i(e),e.mag<1e-4?0 .toFixed(t):(e.mag<.1&&t!==0&&(t=Math.max(Math.max(t,e.log10().negate().ceil().toNumber()),fe.defaultDecimalsShown)),e.toStringWithDecimalPlaces(t)))}const ya=new i("eeee1000"),ba=new i("e100000"),vl=new i("e1000"),$l=new i(1e9),wa=new i(1e6),_a=new i(1e3),ka=new i(.98),Ca=new i(.001),Rl=new i(0);function Qe(e,t,n){if(t==null&&(t=fe.defaultDecimalsShown),n=n!=null?n:fe.defaultShowSmall,e=new i(e),isNaN(e.sign)||isNaN(e.layer)||isNaN(e.mag))return"NaN";if(e.sign<0)return"-"+Qe(e.neg(),t);if(e.mag===Number.POSITIVE_INFINITY)return"Infinity";if(e.gte(ya)){const l=e.slog();return l.gte(wa)?"F"+Qe(l.floor()):i.pow(10,l.sub(l.floor())).toStringWithDecimalPlaces(3)+"F"+An(l.floor(),0)}else{if(e.gte(ba))return rn(e,0,!1);if(e.gte(vl))return rn(e,0);if(e.gte($l))return rn(e,t);if(e.gte(_a))return An(e,0);if(e.gte(Ca)||!n)return Dl(e,t);if(e.eq(Rl))return 0 .toFixed(t)}return e=Ul(e),e.lt(vl)?rn(e,t).replace(/([^(?:e|F)]*)$/,"-$1"):Qe(e,t)+"\u207B\xB9"}function Ne(e){return e=new i(e),e.sign<0?"-"+Ne(e.neg()):e.gte($l)||e.lte(ka)&&!e.eq(Rl)?Qe(e):Qe(e,0)}function jn(e,t){return t==null&&(t=fe.defaultDecimalsShown),i.lt(e,0)?"-"+jn(i.neg(e),t):i.gt(e,2**51)?Qe(i.div(e,31536e3))+"y":(e=new i(e).toNumber(),e<60?Qe(e)+"s":e<3600?Ne(Math.floor(e/60))+"m "+Qe(e%60,t)+"s":e<86400?Ne(Math.floor(e/3600))+"h "+Ne(Math.floor(e/60)%60)+"m "+Ne(e%60)+"s":e<31536e3?Ne(Math.floor(e/84600)%365)+"d "+Ne(Math.floor(e/3600)%24)+"h "+Ne(Math.floor(e/60)%60)+"m":Ne(Math.floor(e/31536e3))+"y "+Ne(Math.floor(e/84600)%365)+"d "+Ne(Math.floor(e/3600)%24)+"h")}function Na(e,t,n){e=new i(e);let l=e.toStringWithDecimalPlaces(t);return new i(l).gte(n)&&(l=i.sub(n,Math.pow(.1,t)).toStringWithDecimalPlaces(t)),l}function Sa(e,t){return Qe(e,t,!0)}function Ul(e){let t=i.log10(e).ceil();const n=i.div(e,i.pow(10,t));return t=t.neg(),e=new i(10).pow(t).times(n),e}function Ol(e,t){let n=e[0][0],l=e[0][1];for(let a=1;a(e.Up="Up",e.Down="Down",e.Left="Left",e.Right="Right",e.Default="Up",e))(re||{});const pn=Symbol("DoNotCache");function R(e,t){const n=e[t];Hn(n)&&n.length===0&&!n[pn]?e[t]=k(n.bind(e)):Hn(n)&&(e[t]=n.bind(e),e[t][pn]=!0)}function Xe(e){return Hn(e)&&!e[pn]&&(e=k(e)),e}const Lt=Symbol("Component"),Gt=Symbol("GatherProps");let Fa=0;function nn(e="feature-"){return e+Fa++}var je=(e=>(e[e.Visible=0]="Visible",e[e.Hidden=1]="Hidden",e[e.None=2]="None",e))(je||{});function x(e){return e[pn]=!0,e}function O(e,t=2){return e?0:t}function Ye(e,t,n){e[t]===void 0&&n!=null&&(e[t]=n)}function Gl(e,...t){const n=[],l=a=>{Object.keys(a).forEach(s=>{const r=a[s];r&&typeof r=="object"&&(t.includes(r.type)?n.push(r):!(r instanceof i)&&!Ge(r)&&l(r))})};return l(e),n}const zt={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 zn=(e=>(e.Classic="classic",e.Paper="paper",e.Nordic="nordic",e.Aqua="aqua",e))(zn||{}),vn={classic:zt,paper:{...zt,variables:{...zt.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:{...zt,variables:{...zt.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:{...zt,variables:{...zt.variables,"--foreground":"#bfdfff","--background":"#001f3f","--tooltip-background":"rgba(0, 15, 31, 0.75)","--raised-background":"#001f3f","--points":"#dfefff","--locked":"#c4a7b3","--outline":"#bfdfff"}}};const Fe=Pl();document.fonts.onloadingdone=()=>Fe.emit("fontsLoaded");var Ta=Object.freeze(Object.defineProperty({__proto__:null,globalBus:Fe},Symbol.toStringTag,{value:"Module"}));var he=(e,t)=>{const n=e.__vccOpts||e;for(const[l,a]of t)n[l]=a;return n};const Da=K({__name:"Context",emits:["updateNodes"],setup(e,{emit:t}){var y;const n=q({}),l=new ResizeObserver(d),a=q(null);Bn(()=>{const g=a.value;g!=null&&l.observe(g)});let s=!0,r=q((y=a.value)==null?void 0:y.getBoundingClientRect());function d(){s&&(s=!1,Jt(()=>{var g;r.value=(g=a.value)==null?void 0:g.getBoundingClientRect(),Object.values(n.value).filter(w=>w).forEach(w=>w.rect=w.element.getBoundingClientRect()),t("updateNodes",n.value),s=!0}))}Fe.on("fontsLoaded",d);const m={attributes:!1,childList:!0,subtree:!1};kn(Kn,(g,w)=>{const v=new MutationObserver(()=>c(g));v.observe(w,m),n.value[g]={element:w,observer:v,rect:w.getBoundingClientRect()},d()}),kn(Wn,g=>{var w;(w=n.value[g])==null||w.observer.disconnect(),n.value[g]=void 0,d()}),kn(Jn,n),kn(Xn,r);function c(g){const w=n.value[g];w!=null&&(w.rect=w.element.getBoundingClientRect(),t("updateNodes",n.value))}return(g,w)=>(b(),M(P,null,[_t(g.$slots,"default",{},void 0,!0),f("div",{ref_key:"resizeListener",ref:a,class:"resize-listener"},null,512)],64))}});var Hl=he(Da,[["__scopeId","data-v-2b1dc1bc"]]);const $a=["onPointerdown"],Ra={class:"modal-wrapper"},Ua={class:"modal-container"},Oa={class:"modal-header"},qa=p(" default header "),Va={class:"modal-body"},La=p(" default body "),Ga={class:"modal-footer"},Ha=f("div",{class:"modal-default-flex-grow"},null,-1),at=K({__name:"Modal",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{expose:t,emit:n}){const a=Ze(e),s=k(()=>a.modelValue||d.value);function r(){n("update:modelValue",!1)}const d=q(!1),m=q(null),c=k(()=>{var y,g;return(g=(y=m.value)==null?void 0:y.nodes)!=null?g:null});return t({isOpen:s,nodes:c}),(y,g)=>(b(),j(Si,{to:"#modal-root"},[o(Pn,{name:"modal",onBeforeEnter:g[0]||(g[0]=w=>d.value=!0),onAfterLeave:g[1]||(g[1]=w=>d.value=!1)},{default:Q(()=>[xn(f("div",Xt({class:"modal-mask",onPointerdown:mn(r,["self"])},y.$attrs),[f("div",Ra,[f("div",Ua,[f("div",Oa,[_t(y.$slots,"header",{shown:u(s)},()=>[qa])]),f("div",Va,[o(Hl,{ref_key:"contextRef",ref:m},{default:Q(()=>[_t(y.$slots,"body",{shown:u(s)},()=>[La])]),_:3},512)]),f("div",Ga,[_t(y.$slots,"footer",{shown:u(s)},()=>[f("div",{class:"modal-default-footer"},[Ha,f("button",{class:"button modal-default-button",onClick:r}," Close ")])])])])])],16,$a),[[El,e.modelValue]])]),_:3})]))}}),Kn=Symbol("RegisterNode"),Wn=Symbol("UnregisterNode"),Jn=Symbol("Nodes"),Xn=Symbol("Bounds"),et=Fn({});window.layers=et;const en={},gt=[];function Ct(e,t){return st(()=>{const n={},l=n.emitter=Pl();if(n.on=l.on.bind(l),n.emit=l.emit.bind(l),n.nodes=q({}),n.id=e,gt.push(e),en[e]=new Set,n.minimized=_e(!1),Object.assign(n,t.call(n)),gt[gt.length-1]==null||gt[gt.length-1]!==e)throw`Adding layers stack in invalid state. This should not happen -Stack: ${gt} -Trying to pop ${n.id}`;return gt.pop(),R(n,"color"),R(n,"display"),R(n,"name"),Ye(n,"name",n.id),R(n,"minWidth"),Ye(n,"minWidth",600),R(n,"minimizable"),Ye(n,"minimizable",!0),n})}function Ql(e,t){if(console.info("Adding layer",e.id),et[e.id]){console.error("Attempted to add layer with same ID as existing layer",e.id,et[e.id]);return}Ye(t,"layers",{}),t.layers[e.id]==null&&(t.layers[e.id]={}),et[e.id]=e,Fe.emit("addLayer",e,t.layers[e.id])}function Qa(e){return et[e]}function jl(e){console.info("Removing layer",e.id),Fe.emit("removeLayer",e),et[e.id]=void 0}function ja(e){jl(e),Ql(e,L)}function za(e){const t=q(!1);return{openModal:()=>t.value=!0,modal:x(()=>o(at,{modelValue:t.value,"onUpdate:modelValue":n=>t.value=n},{header:()=>o("h2",null,[u(e.name)]),body:u(e.display)}))}}Fe.on("update",function(t){Object.values(et).forEach(n=>{n==null||n.emit("preUpdate",t)}),Object.values(et).forEach(n=>{n==null||n.emit("update",t)}),Object.values(et).forEach(n=>{n==null||n.emit("postUpdate",t)})});var Ka=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:Kn,UnregisterNodeInjectionKey:Wn,NodesInjectionKey:Jn,BoundsInjectionKey:Xn,layers:et,persistentRefs:en,addingLayers:gt,createLayer:Ct,addLayer:Ql,getLayer:Qa,removeLayer:jl,reloadLayer:ja,setupLayerModal:za},Symbol.toStringTag,{value:"Module"}));const Yn=Symbol("PersistentState"),Ot=Symbol("DefaultValue"),In=Symbol("StackTrace"),zl=Symbol("Deleted"),fn=Symbol("NonPersistent"),un=Symbol("SaveDataPath");function Wa(){var e;return((e=new Error().stack)==null?void 0:e.split(` -`).slice(3,5).map(t=>t.trim()).join(` -`))||""}function _e(e){const t=Ge(e)?e:q(e);t[Yn]=t,t[Ot]=Ge(e)?e.value:e,t[In]=Wa(),t[zl]=!1;const n=k({get(){return t.value},set(l){t.value=l}});return n[Ot]=t[Ot],t[fn]=n,t[un]=void 0,gt.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",t,` -Created at: -`+t[In]):en[gt[gt.length-1]].add(t),t}function Ja(e){return e&&typeof e=="object"&&Yn in e}function G(e){return e[fn]}Fe.on("addLayer",(e,t)=>{const n=[],l=(a,s=[])=>{let r=!1;return Object.keys(a).forEach(d=>{let m=a[d];if(m&&typeof m=="object")if(Be in m&&(m=m[Be]),Ja(m)){if(r=!0,m[zl]){console.warn("Deleted persistent ref present in returned object. Ignoring...",m,` -Created at: -`+m[In]);return}en[e.id].delete(m);const c=[e.id,...s,d];m[un]!=null&&JSON.stringify(c)!==JSON.stringify(m[un])&&console.error(`Persistent ref is being saved to \`${c.join(".")}\` when it's already present at \`${m[un].join(".")}\`. This can cause unexpected behavior when loading saves between updates.`,m),m[un]=c;const y=s.reduce((w,v)=>(v in w||(w[v]={}),w[v]),t),g=y[d];y[d]=m[Yn],Mi(y)?g!=null?y[d]=g:y[d]=m[Ot]:g!=null?y[d].value=g:y[d].value=m[Ot]}else!(m instanceof i)&&!Ge(m)&&!n.includes(m)&&(typeof m.type=="symbol"&&n.push(m),l(m,[...s,d])&&(ml(m)&&!ml(a)?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.",Be in a?a[Be]:a,d):r=!0))}),r};l(e[Be]),en[e.id].forEach(a=>{console.error(`Created persistent ref in ${e.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,a,` -Created at: -`+a[In])}),en[e.id].clear()});const Be=Symbol("ProxyState"),Zt=Symbol("ProxyPath");function st(e,t={}){const n=t;let l=!1;function a(){return l||(Object.assign(n,e(n)),l=!0),n}return new Proxy(n,{get(s,r){if(r===Be)return a();const d=a()[r];return d&&typeof d=="object"&&fn in d?d[fn]:d},set(s,r,d){return a()[r]=d,!0},has(s,r){return r===Be?!0:Reflect.has(a(),r)},ownKeys(){return Reflect.ownKeys(a())},getOwnPropertyDescriptor(s,r){return l||(Object.assign(n,e(n)),l=!0),Object.getOwnPropertyDescriptor(s,r)}})}var De=window.state=Fn({lastTenTicks:[],hasNaN:!1,NaNPath:[]});const Kl=gn({id:"",devSpeed:null,name:"",tabs:[],time:-1,autosave:!0,offlineProd:!0,offlineTime:null,timePlayed:0,keepGoing:!1,modID:"",modVersion:"",layers:{},usingLog:!1});function Wl(e){return JSON.stringify(e,(t,n)=>u(n))}const Jl={get(e,t){var l;if(t===Be||t===Zt)return e[t];const n=e[Be][t];if(t!=="value"&&(Pi(n)||Array.isArray(n))){if(n!==((l=e[t])==null?void 0:l[Be])){const a=[...e[Zt],t];e[t]=new Proxy({[Be]:n,[Zt]:a},Jl)}return e[t]}return n},set(e,t,n,l){if(!De.hasNaN&&(typeof n=="number"&&isNaN(n)||n instanceof i&&(isNaN(n.sign)||isNaN(n.layer)||isNaN(n.mag)))){const a=e[Be][t];if(!(typeof a=="number"&&isNaN(a)||a instanceof i&&(isNaN(a.sign)||isNaN(a.layer)||isNaN(a.mag))))throw Kl.autosave=!1,De.hasNaN=!0,De.NaNPath=[...e[Zt],t],De.NaNReceiver=l,console.error("Attempted to set NaN value",[...e[Zt],t],e[Be]),"Attempted to set NaN value. See above for details"}return e[Be][t]=n,!0},ownKeys(e){return Reflect.ownKeys(e[Be])},has(e,t){return Reflect.has(e[Be],t)},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(e[Be],t)}};var L=window.player=new Proxy({[Be]:Kl,[Zt]:["player"]},Jl);function Xl(e={}){return Object.assign({id:`${fe.id}-0`,name:"Default Save",tabs:fe.initialTabs.slice(),time:Date.now(),autosave:!0,offlineProd:!0,offlineTime:0,timePlayed:0,keepGoing:!1,modID:fe.id,modVersion:fe.versionNumber,layers:{}},e)}function vt(e){const t=Rt.compressToUTF16(Wl(e!=null?e:L[Be]));return localStorage.setItem((e!=null?e:L[Be]).id,t),t}async function Xa(){Za();try{let e=localStorage.getItem(xe.active);if(e==null){await Kt(tn());return}if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Rt.decompressFromUTF16(e);else throw"Unable to determine save encoding";const t=JSON.parse(e);if(t.modID!==fe.id){await Kt(tn());return}t.id=xe.active,await Kt(t)}catch(e){console.error(`Failed to load save. Falling back to new save. -`,e),await Kt(tn())}}function tn(){const e=Nn(),t=Xl({id:e});return vt(t),xe.saves.push(e),t}function Nn(){let e,t=0;do e=`${fe.id}-${t++}`;while(localStorage.getItem(e));return e}async function Kt(e){console.info("Loading save",e);const{layers:t,removeLayer:n,addLayer:l}=await Mn(()=>Promise.resolve().then(function(){return Ka}),void 0),{fixOldSave:a,getInitialLayers:s}=await Mn(()=>Promise.resolve().then(function(){return To}),void 0);for(const r in t){const d=t[r];d&&n(d)}s(e).forEach(r=>l(r,e)),e=Xl(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,fe.offlineLimit*3600)),e.time=Date.now(),e.modVersion!==fe.versionNumber&&a(e.modVersion,e),Object.assign(L,e),xe.active=L.id,Fe.emit("onLoad")}setInterval(()=>{L.autosave&&vt()},1e3);window.onbeforeunload=()=>{L.autosave&&vt()};window.save=vt;const Ya=window.hardReset=async()=>{await Kt(tn())},hn=gn({active:"",saves:[],showTPS:!0,theme:zn.Nordic,unthrottled:!1});bt(hn,e=>{const t=Rt.compressToUTF16(JSON.stringify(e));localStorage.setItem(fe.id,t)},{deep:!0});var xe=window.settings=hn;window.hardResetSettings=()=>{const e={active:"",saves:[],showTPS:!0,theme:zn.Nordic};Fe.emit("loadSettings",e),Object.assign(hn,e),Ya()};function Za(){try{let e=localStorage.getItem(fe.id);if(e!=null&&e!==""){if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Rt.decompressFromUTF16(e);else{console.warn("Unable to determine settings encoding",e);return}const t=JSON.parse(e);typeof t=="object"&&Object.assign(hn,t)}Fe.emit("loadSettings",hn)}catch{}}const Yl=gn([]);function es(e){Yl.push(e)}const Zl=gn([]);function ts(e){Zl.push(e)}const ns=gn([]),ls={class:"table"},Wt=K({__name:"Column",setup(e){const t=k(()=>vn[xe.theme].mergeAdjacent);return(n,l)=>(b(),M("div",ls,[f("div",{class:Re(["col",{mergeAdjacent:u(t)}])},[_t(n.$slots,"default")],2)]))}}),is={class:"table"},Zn=K({__name:"Row",setup(e){const t=k(()=>vn[xe.theme].mergeAdjacent);return(n,l)=>(b(),M("div",is,[f("div",{class:Re(["row",{mergeAdjacent:u(t)}])},[_t(n.$slots,"default")],2)]))}});function el(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ai(e)}function de(e,t="span"){return typeof e=="function"?K({render:e}):typeof e=="string"?e.length>0?(e=e.trim(),e.charAt(0)!=="<"&&(e=`<${t}>${e}`),K({template:e})):K({render:()=>({})}):e}function me(e){if(Et(e))return typeof e=="function"?e():de(e);const t=e[Lt];return o(t,e[Gt](),null)}function Pe(...e){let t;return o(Zn,null,el(t=e.map(me))?t:{default:()=>[t]})}function dn(...e){let t;return o(Wt,null,el(t=e.map(me))?t:{default:()=>[t]})}function yt(e){if(Et(e))return typeof e=="function"?e():typeof e=="string"?o(P,null,[e]):o(e,null,null);const t=e[Lt];return o(t,e[Gt](),null)}function as(...e){let t;return o(Wt,null,el(t=e.map(yt))?t:{default:()=>[t]})}function Et(e){return typeof e=="string"?!0:typeof e=="object"?e==null?!1:"render"in e||"component"in e:typeof e=="function"&&e[pn]===!0}function ei(e,t,n){const l=q(null),a=q(void 0);function s(m){l.value||(l.value=setInterval(d,250)),a.value=m,n&&(n.value=!0)}function r(){l.value&&(clearInterval(l.value),l.value=null),n&&(n.value=!1)}function d(){t&&t.value?t.value():e&&e.value&&e.value(a.value)}return Bl(r),{start:s,stop:r,handleHolding:d}}function ss(e,t){const n=k(()=>e.filter(l=>u(l.visibility)===je.Visible&&t(l)));return{firstFeature:k(()=>n.value[0]),collapsedContent:x(()=>dn(...n.value.slice(1))),hasCollapsedContent:k(()=>n.value.length>1)}}function En(e,t="div"){const n=ft();return dt(()=>{n.value=de(ze(e),t)}),n}function Vt(e,t="div"){const n=ft(null);return dt(()=>{const l=ze(e);n.value=l==null?null:de(l,t)}),n}function os(e){return k(()=>ze(e))}function ze(e){return u(u(e))}function U(...e){return e.includes(Object)||e.push(Object),e}const ge=K({__name:"Spacer",props:{width:{default:"8px"},height:{default:"17px"}},setup(e){return(t,n)=>(b(),M("div",{style:He({width:e.width,height:e.height})},null,4))}});const rs={},us={class:"notif"};function ds(e,t){return b(),M("div",us,"!")}var yl=he(rs,[["render",ds],["__scopeId","data-v-66323fd4"]]);const Dn=e=>(Bt("data-v-d953df70"),e=e(),xt(),e),cs={key:0,class:"day feature dontMerge opened"},ms={class:"date"},ps=p("Dec"),fs=Dn(()=>f("br",null,null,-1)),hs={class:"date"},gs=p("Dec"),vs=Dn(()=>f("br",null,null,-1)),ys=Dn(()=>f("div",{class:"doors"},null,-1)),bs={class:"date"},ws=p("Dec"),_s=Dn(()=>f("br",null,null,-1)),ks={key:0,class:"material-icons lock"},Cs={key:1,class:"timer"},Ns=K({__name:"Day",props:{day:null,symbol:null,opened:null,recentlyUpdated:null,shouldNotify:null},emits:["openLore","openLayer","unlockLayer"],setup(e,{emit:t}){const n=e,l=k(()=>i.gte(W.day.value,n.day)&&new Date().getMonth()===11&&new Date().getDate()>=n.day);function a(){l.value&&t("unlockLayer")}return(s,r)=>e.opened.value?(b(),M("div",cs,[o(Pn,{appear:"",name:"door"},{default:Q(()=>[f("div",{class:"doors",onClick:r[0]||(r[0]=d=>t("openLayer"))},[f("div",ms,[ps,fs,p(Y(e.day),1)]),f("div",hs,[gs,vs,p(Y(e.day),1)])])]),_:1}),f("div",{class:"icon",style:He({backgroundImage:`url(${e.symbol})`})},null,4),f("div",{class:"lore",onClick:r[1]||(r[1]=d=>t("openLore"))},"?"),u(e.shouldNotify)?(b(),j(yl,{key:0})):T("",!0)])):(b(),M("div",{key:1,class:Re(["day feature dontMerge",{can:u(l),locked:!u(l),canOpen:u(l)}]),onClick:a},[ys,f("div",bs,[ws,_s,p(Y(e.day),1)]),u(l)?T("",!0):(b(),M("div",ks,"lock")),u(W).day.value===e.day&&!u(l)?(b(),M("div",Cs,Y(u(jn)(u(W).timeUntilNewDay.value,0)),1)):T("",!0),u(l)?(b(),j(yl,{key:2})):T("",!0)],2))}});var Ss=he(Ns,[["__scopeId","data-v-d953df70"]]);const Ms=K({__name:"Collapsible",props:{collapsed:null,display:null,content:null},setup(e){const t=e,n=En(wt(t,"display")),l=En(wt(t,"content"));return(a,s)=>(b(),j(Wt,{class:"collapsible-container"},{default:Q(()=>[f("button",{onClick:s[0]||(s[0]=r=>e.collapsed.value=!e.collapsed.value),class:"feature collapsible-toggle"},[(b(),j(Me(u(n))))]),e.collapsed.value?T("",!0):(b(),j(Me(u(l)),{key:0}))]),_:1}))}});var As=he(Ms,[["__scopeId","data-v-a72c16aa"]]);const Is={key:0},Es={key:0,class:"mark star"},Bs=["src"],xs=K({__name:"MarkNode",props:{mark:{type:[Boolean,String]}},setup(e){return(t,n)=>e.mark?(b(),M("div",Is,[e.mark===!0?(b(),M("div",Es)):(b(),M("img",{key:1,class:"mark",src:e.mark},null,8,Bs))])):T("",!0)}});var $n=he(xs,[["__scopeId","data-v-2207999f"]]);const Ps=K({__name:"Node",props:{id:null},setup(e){const n=Ze(e),l=Sn(Kn,()=>{}),a=Sn(Wn,()=>{}),s=ft(null),r=k(()=>s.value&&s.value.parentElement);return bt([r,n.id],([d,m],[c,y])=>{c&&a(u(y)),d&&l(m,d)}),Bl(()=>a(u(n.id))),(d,m)=>(b(),M("div",{class:"node",ref_key:"node",ref:s},null,512))}});var yn=he(Ps,[["__scopeId","data-v-a48cb382"]]);const Fs=K({props:{progress:{type:U(String,Object,Number),required:!0},width:{type:U(Number),required:!0},height:{type:U(Number),required:!0},direction:{type:U(String),required:!0},display:U(Object,String,Function),visibility:{type:U(Number),required:!0},style:U(Object,String,Array),classes:U(Object),borderStyle:U(Object,String,Array),textStyle:U(Object,String,Array),baseStyle:U(Object,String,Array),fillStyle:U(Object,String,Array),mark:U(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:$n,Node:yn},setup(e){const{progress:t,width:n,height:l,direction:a,display:s}=Ze(e),r=k(()=>{let c=t.value instanceof i?t.value.toNumber():Number(t.value);return(1-Math.min(Math.max(c,0),1))*100}),d=k(()=>{const c={width:ze(n)+.5+"px",height:ze(l)+.5+"px"};switch(u(a)){case re.Up:c.clipPath=`inset(${r.value}% 0% 0% 0%)`,c.width=ze(n)+1+"px";break;case re.Down:c.clipPath=`inset(0% 0% ${r.value}% 0%)`,c.width=ze(n)+1+"px";break;case re.Right:c.clipPath=`inset(0% ${r.value}% 0% 0%)`;break;case re.Left:c.clipPath=`inset(0% 0% 0% ${r.value} + '%)`;break;case re.Default:c.clipPath="inset(0% 50% 0% 0%)";break}return c}),m=Vt(s);return{normalizedProgress:r,barStyle:d,component:m,unref:u,Visibility:je}}});function Ts(e,t,n,l,a,s){var m,c,y,g,w,v,_;const r=qt("MarkNode"),d=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),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},(m=e.unref(e.style))!=null?m:{}]),class:Re({bar:!0,...e.unref(e.classes)})},[f("div",{class:"overlayTextContainer border",style:He([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(c=e.unref(e.borderStyle))!=null?c:{}])},[e.component?(b(),M("span",{key:0,class:"overlayText",style:He(e.unref(e.textStyle))},[(b(),j(Me(e.component)))],4)):T("",!0)],4),f("div",{class:"border",style:He([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(y=e.unref(e.style))!=null?y:{},(g=e.unref(e.baseStyle))!=null?g:{},(w=e.unref(e.borderStyle))!=null?w:{}])},[f("div",{class:"fill",style:He([e.barStyle,(v=e.unref(e.style))!=null?v:{},(_=e.unref(e.fillStyle))!=null?_:{}])},null,4)],4),o(r,{mark:e.unref(e.mark)},null,8,["mark"]),o(d,{id:e.id},null,8,["id"])],6)):T("",!0)}var Ds=he(Fs,[["render",Ts],["__scopeId","data-v-02d0d7b2"]]);const $s=Symbol("Bar");function It(e){return st(()=>{const t=e();return t.id=nn("bar-"),t.type=$s,t[Lt]=Ds,R(t,"visibility"),Ye(t,"visibility",je.Visible),R(t,"width"),R(t,"height"),R(t,"direction"),R(t,"style"),R(t,"classes"),R(t,"borderStyle"),R(t,"baseStyle"),R(t,"textStyle"),R(t,"fillStyle"),R(t,"progress"),R(t,"display"),R(t,"mark"),t[Gt]=function(){const{progress:n,width:l,height:a,direction:s,display:r,visibility:d,style:m,classes:c,borderStyle:y,textStyle:g,baseStyle:w,fillStyle:v,mark:_,id:N}=this;return{progress:n,width:l,height:a,direction:s,display:r,visibility:d,style:u(m),classes:c,borderStyle:y,textStyle:g,baseStyle:w,fillStyle:v,mark:_,id:N}},t})}var Rs=K({props:{display:{type:U(Object,String,Function),required:!0},visibility:{type:U(Number),required:!0},style:U(Object,String,Array),classes:U(Object),onClick:Function,onHold:Function,canClick:{type:U(Boolean),required:!0},small:Boolean,mark:U(Boolean,String),id:{type:String,required:!0},isHolding:Object},components:{Node:yn,MarkNode:$n},setup(e){const{display:t,onClick:n,onHold:l}=Ze(e),a=ft("");dt(()=>{const d=ze(t);if(d==null){a.value="";return}if(Et(d)){a.value=de(d);return}const m=de(d.title||"","h3"),c=de(d.description,"div");a.value=de(x(()=>o("span",null,[d.title?o("div",null,[o(m,null,null)]):null,o(c,null,null)])))});const{start:s,stop:r}=ei(n,l,e.isHolding);return{start:s,stop:r,comp:a,Visibility:je,unref:u}}});function Us(e,t,n,l,a,s){var m;const r=qt("MarkNode"),d=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("button",{key:0,style:He([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(m=e.unref(e.style))!=null?m:[]]),onClick:t[0]||(t[0]=(...c)=>e.onClick&&e.onClick(...c)),onMousedown:t[1]||(t[1]=(...c)=>e.start&&e.start(...c)),onMouseleave:t[2]||(t[2]=(...c)=>e.stop&&e.stop(...c)),onMouseup:t[3]||(t[3]=(...c)=>e.stop&&e.stop(...c)),onTouchstartPassive:t[4]||(t[4]=(...c)=>e.start&&e.start(...c)),onTouchendPassive:t[5]||(t[5]=(...c)=>e.stop&&e.stop(...c)),onTouchcancelPassive:t[6]||(t[6]=(...c)=>e.stop&&e.stop(...c)),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)?(b(),j(Me(e.unref(e.comp)),{key:0})):T("",!0),o(r,{mark:e.unref(e.mark)},null,8,["mark"]),o(d,{id:e.id},null,8,["id"])],38)):T("",!0)}var ti=he(Rs,[["render",Us],["__scopeId","data-v-8cedd7da"]]);const Os=Symbol("Clickable");function we(e){return st(()=>{var n;const t=(n=e==null?void 0:e())!=null?n:{};if(t.id=nn("clickable-"),t.type=Os,t[Lt]=ti,t.isHolding=q(!1),R(t,"visibility"),Ye(t,"visibility",je.Visible),R(t,"canClick"),Ye(t,"canClick",!0),R(t,"classes"),R(t,"style"),R(t,"mark"),R(t,"display"),t.onClick){const l=t.onClick.bind(t);t.onClick=function(a){u(t.canClick)&&l(a)}}if(t.onHold){const l=t.onHold.bind(t);t.onHold=function(){u(t.canClick)&&l()}}return t[Gt]=function(){const{display:l,visibility:a,style:s,classes:r,onClick:d,onHold:m,isHolding:c,canClick:y,small:g,mark:w,id:v}=this;return{display:l,visibility:a,style:u(s),classes:r,onClick:d,onHold:m,isHolding:c,canClick:y,small:g,mark:w,id:v}},t})}function nt(e,t="points",n=0,l=void 0){const a=Ge(e)?e:_e(e);if(a.displayName=t,a.precision=n,a.small=l,!Ge(e)){const s=a[fn];s.displayName=t,s.precision=n,s.small=l}return a}function bl(e){const t=_e(e.value);return bt(e,n=>{i.gt(n,t.value)&&(t.value=n)}),t}function qs(e){const t=_e(e.value);return bt(e,(n,l)=>{i.gt(n,l)&&(t.value=i.add(t.value,i.sub(n,l)))}),t}new i("10^^8");new i("1e100");function bn(e,t){const n=t!=null?t:e.value;return i.eq(e.precision,0)?le(e.small?n:i.floor(n)):ue(n,e.precision,e.small)}const Vs=["x1","y1","x2","y2"],Ls=K({__name:"Link",props:{link:null,startNode:null,endNode:null,boundingRect:null},setup(e){const n=Ze(e),l=k(()=>{const s=n.startNode.value.rect,r=n.boundingRect.value,d=r?{x:s.x+s.width/2-r.x,y:s.y+s.height/2-r.y}:{x:0,y:0};return n.link.value.offsetStart&&(d.x+=n.link.value.offsetStart.x,d.y+=n.link.value.offsetStart.y),d}),a=k(()=>{const s=n.endNode.value.rect,r=n.boundingRect.value,d=r?{x:s.x+s.width/2-r.x,y:s.y+s.height/2-r.y}:{x:0,y:0};return n.link.value.offsetEnd&&(d.x+=n.link.value.offsetEnd.x,d.y+=n.link.value.offsetEnd.y),d});return(s,r)=>(b(),M("line",Xt({"stroke-width":"15px",stroke:"white"},e.link,{x1:u(l).x,y1:u(l).y,x2:u(a).x,y2:u(a).y}),null,16,Vs))}});const Gs=K({__name:"Links",props:{links:null},setup(e){var m;const n=wt(e,"links"),l=q(null),a=Sn(Jn,q({})),s=Sn(Xn,q(void 0)),r=q((m=l.value)==null?void 0:m.getBoundingClientRect());bt(s,()=>{var c;return r.value=(c=l.value)==null?void 0:c.getBoundingClientRect()}),Bn(()=>{var c;return r.value=(c=l.value)==null?void 0:c.getBoundingClientRect()});const d=k(()=>{var y,g;const c=a.value;return(g=(y=n.value)==null?void 0:y.filter(w=>{var v,_;return((v=c[w.startNode.id])==null?void 0:v.rect)&&((_=c[w.startNode.id])==null?void 0:_.rect)}))!=null?g:[]});return(c,y)=>(b(),M(P,null,[u(d)?(b(),M("svg",Ii(Xt({key:0},c.$attrs)),[(b(!0),M(P,null,xl(u(d),(g,w)=>(b(),j(Ls,{key:w,link:g,boundingRect:r.value,startNode:u(a)[g.startNode.id],endNode:u(a)[g.endNode.id]},null,8,["link","boundingRect","startNode","endNode"]))),128))],16)):T("",!0),f("div",{ref_key:"resizeListener",ref:l,class:"resize-listener"},null,512)],64))}});var Hs=he(Gs,[["__scopeId","data-v-063f6d6b"]]);K({props:{nodes:{type:U(Array),required:!0},leftSideNodes:U(Array),rightSideNodes:U(Array),branches:U(Array)},components:{Links:Hs},setup(e){const{nodes:t,leftSideNodes:n,rightSideNodes:l}=Ze(e),a=ft();dt(()=>{const d=ze(t);a.value=de(x(()=>o(P,null,[d.map(m=>o("span",{class:"row tree-row",style:"margin: 50px auto;"},[m.map(yt)]))])))});const s=ft();dt(()=>{const d=ze(n);s.value=d?de(x(()=>o("span",{class:"left-side-nodes small"},[d.map(yt)]))):""});const r=ft();return dt(()=>{const d=ze(l);r.value=d?de(x(()=>o("span",{class:"side-nodes small"},[d.map(yt)]))):""}),{unref:u,nodesComp:a,leftNodesComp:s,rightNodesComp:r}}});K({props:{display:U(Object,String,Function),visibility:{type:U(Number),required:!0},style:U(String,Object,Array),classes:U(Object),onClick:Function,onHold:Function,color:U(String),glowColor:U(String),canClick:{type:U(Boolean),required:!0},mark:U(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:$n,Node:yn},setup(e){const{onClick:t,onHold:n,display:l}=Ze(e),a=Vt(l),{start:s,stop:r}=ei(t,n);return{start:s,stop:r,comp:a,unref:u,Visibility:je,isCoercableComponent:Et}}});function ln(e){const t=[],n={};let l=!1;function a(){return l||(t.push(...e()),n.base=t.map(d=>Xe(d.base)),n.baseText=t.map(d=>Xe(d.baseText)),n.visible=t.map(d=>Xe(d.visible)),l=!0),t}const s=_e({});return[x(()=>{const d=a();let m=!0;const c=d.map((y,g)=>{var N,I,ae;if(u(n.visible[g])===!1)return null;const w=o("h3",{onClick:()=>s.value[g]=!s.value[g],style:"cursor: pointer"},[o("span",{class:"modifier-toggle"+(u(s.value[g])?" collapsed":"")},[p("\u25BC")]),y.title,y.subtitle?o("span",{class:"subtitle"},[p(" ("),y.subtitle,p(")")]):null]),v=u(s.value[g])?null:o(P,null,[o("div",{class:"modifier-container"},[o("span",{class:"modifier-amount"},[ue((N=u(n.base[g]))!=null?N:1),y.unit]),o("span",{class:"modifier-description"},[yt((I=u(n.baseText[g]))!=null?I:"Base")])]),yt(u(y.modifier.description))]),_=!m;return m=!1,o(P,null,[_?o("br",null,null):null,o("div",null,[w,o("br",null,null),v,o("hr",null,null),p("Total: "),ue(y.modifier.apply((ae=u(n.base[g]))!=null?ae:1)),y.unit])])});return o(P,null,[c])}),s]}function ni(e){const t=Object.values(e).reverse(),n=_e(!0),l=k(()=>t.filter(m=>m.earned.value===!1)),{firstFeature:a,collapsedContent:s,hasCollapsedContent:r}=ss(t,m=>m.earned.value),d=x(()=>{const m=[...l.value];return a.value&&m.push(a.value),as(...m,x(()=>xn(o(As,{collapsed:n,content:s,display:n.value?"Show other completed milestones":"Hide other completed milestones"},null),[[El,u(r)]])))});return{collapseMilestones:n,display:d}}function an(e){const t=qs(e.resource),n=()=>{var d,m;if(W.day.value!==e.day)return 1;let s=i.add(t.value,1),r=e.goal;return((m=(d=e.usingLog)==null?void 0:d.value)!=null?m:L.usingLog)&&(s=s.log10(),r=i.log10(r)),i.div(s,r)},l=It(()=>({direction:re.Right,width:600,height:25,fillStyle:{backgroundColor:e.color},textStyle:e.textColor?{color:e.textColor}:void 0,progress:n,display:x(()=>W.day.value===e.day?o(P,null,[Ne(t.value),p("/"),Ne(e.goal)]):"")})),a=x(()=>o(P,null,[o("div",null,[W.day.value===e.day?o(P,null,[p("Reach "),Ne(e.goal),p(" total "),e.resource.displayName,p(" to complete the day")]):o(P,null,[e.name,p(" Complete!")]),e.modal?o(P,null,[" ",p("-")," ",o("button",{class:"button",style:"display: inline-block;",onClick:()=>e.modal.show.value=!0},[p("Check Modifiers")])]):void 0]),me(l),e.modal?me(e.modal.display):void 0]));return dt(()=>{W.day.value===e.day&&i.gte(t.value,e.goal)&&W.completeDay()}),{total:t,trackerDisplay:a}}const Qs=Symbol("Buyable");function $e(e){const t=_e(0);return st(()=>{var s,r,d;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=nn("buyable-"),n.type=Qs,n[Lt]=ti,n.amount=t,n.amount[Ot]=(s=n.initialValue)!=null?s:0,n.canAfford=k(()=>{const m=n,c=u(m.cost);return m.resource!=null&&c!=null&&i.gte(m.resource.value,c)}),n.canPurchase==null&&(n.canPurchase=k(()=>u(n.visibility)===je.Visible&&u(n.canAfford)&&i.lt(n.amount.value,u(n.purchaseLimit)))),n.maxed=k(()=>i.gte(n.amount.value,u(n.purchaseLimit))),R(n,"classes");const l=n.classes;n.classes=k(()=>{const m=u(l)||{};return n.maxed.value&&(m.bought=!0),m}),R(n,"canPurchase"),n.canClick=n.canPurchase,n.onClick=n.purchase=(d=(r=n.onClick)!=null?r:n.purchase)!=null?d:function(){var y;const m=n;if(!u(m.canPurchase))return;const c=u(m.cost);m.cost!=null&&m.resource!=null&&(m.resource.value=i.sub(m.resource.value,c),m.amount.value=i.add(m.amount.value,1)),(y=m.onPurchase)==null||y.call(m,c)},R(n,"display");const a=n.display;return n.display=x(()=>{const m=u(a);if(Et(m)){const c=de(m);return o(c,null,null)}if(m!=null&&n.cost!=null&&n.resource!=null){const c=n,y=de(m.title||"","h3"),g=de(m.description||""),w=de(m.effectDisplay||"");return o("span",null,[m.title?o("div",null,[o(y,null,null)]):null,m.description?o(g,null,null):null,m.showAmount===!1?null:o("div",null,[o("br",null,null),u(c.purchaseLimit)===i.dInf?o(P,null,[p("Amount: "),le(c.amount.value)]):o(P,null,[p("Amount: "),le(c.amount.value),p(" /")," ",le(u(c.purchaseLimit))])]),m.effectDisplay?o("div",null,[o("br",null,null),p("Currently: "),o(w,null,null)]):null,c.cost&&!c.maxed.value?o("div",null,[p("Cost: "),ue(u(c.cost)||0)," ",n.resource.displayName]):null])}return""}),R(n,"visibility"),Ye(n,"visibility",je.Visible),R(n,"cost"),R(n,"resource"),R(n,"purchaseLimit"),Ye(n,"purchaseLimit",i.dInf),R(n,"style"),R(n,"mark"),R(n,"small"),n[Gt]=function(){const{display:m,visibility:c,style:y,classes:g,onClick:w,canClick:v,small:_,mark:N,id:I}=this;return{display:m,visibility:c,style:u(y),classes:g,onClick:w,canClick:v,small:_,mark:N,id:I}},n})}const Rn=Fn({}),tl=Symbol("Hotkey");function Qn(e){return st(()=>{const t=e();return t.type=tl,R(t,"enabled"),Ye(t,"enabled",!0),R(t,"description"),t})}Fe.on("addLayer",e=>{Gl(e,tl).forEach(t=>{Rn[t.key]=t})});Fe.on("removeLayer",e=>{Gl(e,tl).forEach(t=>{Rn[t.key]=void 0})});document.onkeydown=function(e){var l;if(((l=e.target)==null?void 0:l.tagName)==="INPUT"||il.value&&!L.keepGoing)return;let t=e.key;e.shiftKey&&(t="shift+"+t),e.ctrlKey&&(t="ctrl+"+t);const n=Rn[t];n&&u(n.enabled)&&(e.preventDefault(),n.onPress())};ts(x(()=>{const e=Object.values(Rn).filter(t=>u(t==null?void 0:t.enabled));return e.length===0?"":o("div",null,[o("br",null,null),o("h4",null,[p("Hotkeys")]),e.map(t=>o("div",null,[t==null?void 0:t.key,p(": "),t==null?void 0:t.description]))])}));const js=K({__name:"Sticky",setup(e){const t=q("0"),n=new ResizeObserver(a),l=ft(null);function a(){let s=l.value;if(s==null)return;let r=0;for(;s.previousSibling;){const d=s.previousSibling;d.dataset&&"vSticky"in d.dataset&&(r+=d.offsetHeight),s=d}t.value=r+"px"}return Jt(a),document.fonts.ready.then(a),Bn(()=>{var r;const s=(r=l.value)==null?void 0:r.parentElement;s&&n.observe(s)}),(s,r)=>(b(),M("div",{class:"sticky",style:He({top:t.value}),ref_key:"element",ref:l,"data-v-sticky":""},[_t(s.$slots,"default",{},void 0,!0)],4))}});var zs=he(js,[["__scopeId","data-v-cccac690"]]);const wl=K({__name:"Resource",props:{resource:null,color:null},setup(e){const t=e,n=k(()=>bn(t.resource));return(l,a)=>(b(),M("h2",{style:He({color:e.color,"text-shadow":"0px 0px 10px "+e.color})},Y(u(n)),5))}});const Ks={class:"main-display"},Ws={key:0},Js={key:1},Xs=p(", "),Ys={key:2},Zs=f("br",null,null,-1),eo={class:"main-display"},to={key:0},no={key:1},lo=p(", "),io={key:2},ao=f("br",null,null,-1),ht=K({__name:"MainDisplay",props:{resource:null,color:null,classes:null,style:null,effectDisplay:null,productionDisplay:null,sticky:{type:Boolean,default:!0}},setup(e){const n=Ze(e),l=q(null),a=Vt(n.effectDisplay),s=Vt(n.productionDisplay),r=k(()=>i.lt(n.resource.value,"1e1000"));return(d,m)=>{var c,y;return e.sticky?(b(),j(zs,{key:0},{default:Q(()=>{var g,w,v,_;return[f("div",{class:Re(["main-display-container",(g=e.classes)!=null?g:{}]),style:He([{height:`${((v=(w=l.value)==null?void 0:w.$el.clientHeight)!=null?v:0)+50}px`},(_=e.style)!=null?_:{}])},[f("div",Ks,[u(r)?(b(),M("span",Ws,"You have ")):T("",!0),o(wl,{resource:e.resource,color:e.color||"white"},null,8,["resource","color"]),p(" "+Y(e.resource.displayName),1),u(a)?(b(),M("span",Js,[Xs,(b(),j(Me(u(a)),{ref_key:"effectRef",ref:l},null,512))])):T("",!0),u(s)?(b(),M("span",Ys,[Zs,(b(),j(Me(u(s)),{ref_key:"effectRef",ref:l},null,512))])):T("",!0)])],6)]}),_:1})):(b(),M("div",{key:1,class:Re(["main-display-container",(c=e.classes)!=null?c:{}]),style:He([{height:"50px"},(y=e.style)!=null?y:{}])},[f("div",eo,[u(r)?(b(),M("span",to,"You have ")):T("",!0),o(wl,{resource:e.resource,color:e.color||"white"},null,8,["resource","color"]),p(" "+Y(e.resource.displayName),1),u(a)?(b(),M("span",no,[lo,(b(),j(Me(u(a)),{ref_key:"effectRef",ref:l},null,512))])):T("",!0),u(s)?(b(),M("span",io,[ao,(b(),j(Me(u(s)),{ref_key:"effectRef",ref:l},null,512))])):T("",!0)])],6))}}});var so=K({props:{display:{type:U(String,Object,Function),required:!0},visibility:{type:U(Number),required:!0},style:U(String,Object,Array),classes:U(Object),resource:Object,cost:U(String,Object,Number),canPurchase:{type:U(Boolean),required:!0},bought:{type:U(Boolean),required:!0},mark:U(Boolean,String),id:{type:String,required:!0},purchase:{type:Function,required:!0}},components:{Node:yn,MarkNode:$n},setup(e){const{display:t,cost:n}=Ze(e),l=ft("");return dt(()=>{const a=ze(t);if(a==null){l.value="";return}if(Et(a)){l.value=de(a);return}const s=ze(n),r=de(a.title||"","h3"),d=de(a.description,"div"),m=de(a.effectDisplay||"");l.value=de(x(()=>{var c;return o("span",null,[a.title?o("div",null,[o(r,null,null)]):null,o(d,null,null),a.effectDisplay?o("div",null,[p("Currently: "),o(m,null,null)]):null,e.resource!=null&&a.showCost!==!1?o(P,null,[o("br",null,null),p("Cost: "),e.resource&&bn(e.resource,s)," ",(c=e.resource)==null?void 0:c.displayName]):null])}))}),{component:l,unref:u,Visibility:je}}});const oo=["disabled"];function ro(e,t,n,l,a,s){var m;const r=qt("MarkNode"),d=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("button",{key:0,style:He([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(m=e.unref(e.style))!=null?m:{}]),onClick:t[0]||(t[0]=(...c)=>e.purchase&&e.purchase(...c)),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)?(b(),j(Me(e.unref(e.component)),{key:0})):T("",!0),o(r,{mark:e.unref(e.mark)},null,8,["mark"]),o(d,{id:e.id},null,8,["id"])],14,oo)):T("",!0)}var uo=he(so,[["render",ro],["__scopeId","data-v-7f411ac8"]]);const co=Symbol("Upgrade");function ee(e){const t=_e(!1);return st(()=>{const n=e();return n.id=nn("upgrade-"),n.type=co,n[Lt]=uo,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=k(()=>{const l=n;return l.resource!=null&&l.cost!=null&&i.gte(l.resource.value,u(l.cost))}):R(n,"canAfford"),n.canPurchase=k(()=>u(n.visibility)===je.Visible&&u(n.canAfford)&&!u(n.bought)),n.purchase=function(){var a;const l=n;!u(l.canPurchase)||(l.resource!=null&&l.cost!=null&&(l.resource.value=i.sub(l.resource.value,u(l.cost))),t.value=!0,(a=l.onPurchase)==null||a.call(l))},R(n,"visibility"),Ye(n,"visibility",je.Visible),R(n,"classes"),R(n,"style"),R(n,"display"),R(n,"mark"),R(n,"cost"),R(n,"resource"),n[Gt]=function(){const{display:l,visibility:a,style:s,classes:r,resource:d,cost:m,canPurchase:c,bought:y,mark:g,id:w,purchase:v}=this;return{display:l,visibility:a,style:u(s),classes:r,resource:d,cost:m,canPurchase:c,bought:y,mark:g,id:w,purchase:v}},n})}function ie(e){return st(()=>{const{addend:t,description:n,enabled:l}=e(),a=Xe(t),s=Xe(n),r=l==null?void 0:Xe(l);return{apply:d=>i.add(d,u(a)),revert:d=>i.sub(d,u(a)),enabled:r,description:n==null?void 0:x(()=>o("div",{class:"modifier-container"},[o("span",{class:"modifier-amount"},[i.gte(u(a),0)?"+":"",ue(u(a))]),u(s)?o("span",{class:"modifier-description"},[yt(u(s))]):null]))}})}function B(e){return st(()=>{const{multiplier:t,description:n,enabled:l}=e(),a=Xe(t),s=Xe(n),r=l==null?void 0:Xe(l);return{apply:d=>i.times(d,u(a)),revert:d=>i.div(d,u(a)),enabled:r,description:n==null?void 0:x(()=>o("div",{class:"modifier-container"},[o("span",{class:"modifier-amount"},[p("x"),ue(u(a))]),u(s)?o("span",{class:"modifier-description"},[yt(u(s))]):null]))}})}function li(e){return st(()=>{const{exponent:t,description:n,enabled:l,supportLowNumbers:a}=e(),s=Xe(t),r=Xe(n),d=l==null?void 0:Xe(l);return{apply:m=>{let c=m;return a&&(c=i.add(c,1)),c=i.pow(c,u(s)),a&&(c=i.sub(c,1)),c},revert:m=>{let c=m;return a&&(c=i.add(c,1)),c=i.root(c,u(s)),a&&(c=i.sub(c,1)),c},enabled:d,description:n==null?void 0:x(()=>o("div",{class:"modifier-container"},[o("span",{class:"modifier-amount"},[p("^"),ue(u(s))]),u(r)?o("span",{class:"modifier-description"},[yt(u(r)),a?" (+1 effective)":null]):null]))}})}function X(e){return st(()=>{const t=e();return{apply:n=>t.filter(l=>u(l.enabled)!==!1).reduce((l,a)=>a.apply(l),n),revert:t.every(n=>n.revert!=null)?n=>t.filter(l=>u(l.enabled)!==!1).reduceRight((l,a)=>a.revert(l),n):void 0,enabled:k(()=>t.filter(n=>u(n.enabled)!==!1).length>0),description:x(()=>o(P,null,[t.filter(n=>u(n.enabled)!==!1).map(n=>u(n.description)).filter(n=>n).map(yt)]))}})}function ii(e){return st(()=>{const t=e();return t.currentGain==null&&(t.currentGain=k(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=i.floor(n).max(0),u(t.buyMax)||(n=n.min(1)),n})),t.actualGain==null&&(t.actualGain=t.currentGain),t.currentAt==null&&(t.currentAt=k(()=>{let n=t.scaling.currentAt(t);return t.roundUpCost&&(n=i.ceil(n)),n})),t.nextAt==null&&(t.nextAt=k(()=>{let n=t.scaling.nextAt(t);return t.roundUpCost&&(n=i.ceil(n)),n})),t.convert==null&&(t.convert=function(){var a;const n=u(t.currentGain),l=u(t.currentAt);t.gainResource.value=i.add(t.gainResource.value,n),t.spend(n,l),(a=t.onConvert)==null||a.call(t,n)}),t.spend==null&&(t.spend=function(){t.baseResource.value=0}),R(t,"currentGain"),R(t,"actualGain"),R(t,"currentAt"),R(t,"nextAt"),R(t,"buyMax"),Ye(t,"buyMax",!0),R(t,"roundUpCost"),Ye(t,"roundUpCost",!0),t})}function nl(e,t){const n=Xe(e),l=Xe(t);return{currentGain(a){let s=u(a.baseResource.value);if(a.costModifier&&(s=a.costModifier.apply(s)),i.lt(s,u(n)))return 0;const r=i.div(s,u(n)).pow(u(l));return r.isNan()?new i(0):r},currentAt(a){let s=u(a.currentGain);return a.gainModifier&&(s=a.gainModifier.revert(s)),s=i.max(0,s).root(u(l)).times(u(n)),a.costModifier&&(s=a.costModifier.revert(s)),s},nextAt(a){let s=i.add(u(a.currentGain),1).floor();return a.gainModifier&&(s=a.gainModifier.revert(s)),s=i.max(0,s).root(u(l)).times(u(n)).max(u(n)),a.costModifier&&(s=a.costModifier.revert(s)),s}}}function ai(e){return ii(e)}function mo(e){return ii(()=>{const t=e();return Ye(t,"buyMax",!1),t.currentGain==null&&(t.currentGain=k(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=i.floor(n).max(t.gainResource.value),u(t.buyMax)||(n=n.min(i.add(t.gainResource.value,1))),n})),t.actualGain==null&&(t.actualGain=k(()=>{let n=i.sub(i.floor(t.scaling.currentGain(t)),t.gainResource.value).max(0);return u(t.buyMax)||(n=n.min(1)),n})),Ye(t,"convert",function(){var a;const n=u(t.actualGain),l=u(t.currentAt);t.gainResource.value=t.gainModifier?t.gainModifier.apply(u(t.currentGain)):u(t.currentGain),t.spend(n,l),(a=t.onConvert)==null||a.call(t,n)}),t})}const po="boxes",_l=6,ut=Ct(po,function(){const e="Boxes",t="#964B00",n=nt(0,"boxes"),l=ai(()=>({scaling:nl(1e10,1),baseResource:oe.logs,gainResource:G(n),roundUpCost:!0})),a=we(()=>({display:x(()=>o(P,null,[o("span",{style:"font-size: large"},[p("Create "),le(l.currentGain.value),p(" "),n.displayName]),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost:")," ",bn(oe.logs,i.gte(l.actualGain.value,1)?l.currentAt.value:l.nextAt.value)," ",oe.logs.displayName])])),canClick:()=>i.gte(l.actualGain.value,1),onClick(){!u(this.canClick)||l.convert()},style:"width: 600px; min-height: unset"})),s=ee(()=>({display:{title:"Carry logs in boxes",description:"Double log gain and unlock a new elf for training"},onPurchase(){W.days[3].recentlyUpdated.value=!0},resource:G(n),cost:100})),r=ee(()=>({display:{title:"Carry ash in boxes",description:"Double ash gain and unlock a new elf for training"},onPurchase(){W.days[3].recentlyUpdated.value=!0},resource:G(n),cost:1e3})),d=ee(()=>({display:{title:"Carry coal in boxes",description:"Double coal gain and unlock a new elf for training"},onPurchase(){W.days[3].recentlyUpdated.value=!0},resource:G(n),cost:4e3})),m={logsUpgrade:s,ashUpgrade:r,coalUpgrade:d},c=$e(()=>({display:{title:"Carry more logs",description:"Use boxes to carry even more logs, boosting their gain",effectDisplay:x(()=>o(P,null,[ue(i.div(c.amount.value,2).add(1)),p("x")]))},resource:G(n),cost(){return i.pow(3,c.amount.value).times(100)},visibility:()=>O(s.bought.value)})),y=$e(()=>({display:{title:"Carry more ash",description:"Use boxes to carry even more ash, boosting its gain",effectDisplay:x(()=>o(P,null,[ue(i.div(y.amount.value,2).add(1)),p("x")]))},resource:G(n),cost(){return i.pow(5,y.amount.value).times(1e3)},visibility:()=>O(r.bought.value)})),g=$e(()=>({display:{title:"Carry more coal",description:"Use boxes to carry even more coal, boosting its gain",effectDisplay:x(()=>o(P,null,[ue(i.div(g.amount.value,2).add(1)),p("x")]))},resource:G(n),cost(){return i.pow(7,g.amount.value).times(1e3)},visibility:()=>O(d.bought.value)})),w={logBoxesBuyable:c,ashBoxesBuyable:y,coalBoxesBuyable:g},{total:v,trackerDisplay:_}=an({resource:n,goal:5e4,name:e,day:_l,color:t});return{name:e,day:_l,color:t,boxes:n,totalBoxes:v,boxesConversion:l,upgrades:m,buyables:w,minWidth:700,display:x(()=>o(P,null,[me(_),o(ge,null,null),o(ht,{resource:n,color:t,style:"margin-bottom: 0"},null),o(ge,null,null),me(a),o(ge,null,null),Pe(...Object.values(m)),Pe(...Object.values(w))]))}});const fo={class:"field"},ho=K({__name:"Toggle",props:{title:null,modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,l=k(()=>de(u(n.title)||"","span")),a=k({get(){return!!n.modelValue},set(s){t("update:modelValue",s)}});return(s,r)=>(b(),M("label",fo,[xn(f("input",{type:"checkbox",class:"toggle","onUpdate:modelValue":r[0]||(r[0]=d=>Ge(a)?a.value=d:null)},null,512),[[Ei,u(a)]]),(b(),j(Me(u(l))))]))}});var At=he(ho,[["__scopeId","data-v-33d57459"]]);const go={class:"field"},vo={key:0,class:"field-title"},ll=K({__name:"Select",props:{title:null,modelValue:null,options:null,placeholder:null,closeOnSelect:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){var r;const n=e,l=Vt(wt(n,"title"),"span"),a=q((r=n.options.find(d=>d.value===n.modelValue))!=null?r:null);bt(wt(n,"modelValue"),d=>{var m;ze(a)!==d&&(a.value=(m=n.options.find(c=>c.value===d))!=null?m:null)});function s(d){t("update:modelValue",d.value)}return(d,m)=>(b(),M("div",go,[u(l)?(b(),M("span",vo,[(b(),j(Me(u(l))))])):T("",!0),o(u(Fi),{options:e.options,modelValue:a.value,"onUpdate:modelValue":[m[0]||(m[0]=c=>a.value=c),s],min:1,"label-by":"label",placeholder:e.placeholder,"close-on-select":e.closeOnSelect},null,8,["options","modelValue","placeholder","close-on-select"])]))}});var yo=K({props:{visibility:{type:U(Number),required:!0},display:{type:U(String,Object,Function),required:!0},style:U(String,Object,Array),classes:U(Object),earned:{type:U(Boolean),required:!0},id:{type:String,required:!0}},components:{Node:yn},setup(e){const{display:t}=Ze(e),n=ft("");return dt(()=>{const l=ze(t);if(l==null){n.value="";return}if(Et(l)){n.value=de(l);return}const a=de(l.requirement,"h3"),s=de(l.effectDisplay||"","b"),r=de(l.optionsDisplay||"","span");n.value=de(x(()=>o("span",null,[o(a,null,null),l.effectDisplay?o("div",null,[o(s,null,null)]):null,l.optionsDisplay?o("div",{class:"equal-spaced"},[o(r,null,null)]):null])))}),{comp:n,unref:u,Visibility:je}}});function bo(e,t,n,l,a,s){var d;const r=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("div",{key:0,style:He([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(d=e.unref(e.style))!=null?d:{}]),class:Re({feature:!0,milestone:!0,done:e.unref(e.earned),...e.unref(e.classes)})},[(b(),j(Me(e.unref(e.comp)))),o(r,{id:e.id},null,8,["id"])],6)):T("",!0)}var wo=he(yo,[["render",bo],["__scopeId","data-v-f4e8794e"]]);Fe.on("setupVue",e=>e.use(Ti));const kl=Fl(),_o=Symbol("Milestone");let Ut;(function(e){e.All="all",e.Configurable="configurable",e.Incomplete="incomplete",e.None="none"})(Ut||(Ut={}));function Je(e){const t=_e(!1);return st(()=>{var a;const n=(a=e==null?void 0:e())!=null?a:{};n.id=nn("milestone-"),n.type=_o,n[Lt]=wo,n.earned=t,n.complete=function(){var r;const s=n;if(t.value=!0,(r=s.onComplete)==null||r.call(s),s.display&&u(s.showPopups)===!0){const d=u(s.display),m=de(Et(d)?d:d.requirement);kl(o(P,null,[o("h3",null,[p("Milestone earned!")]),o("div",null,[o(m,null,null)])]))}},R(n,"visibility"),Ye(n,"visibility",je.Visible);const l=n.visibility;if(n.visibility=k(()=>{const s=u(n.display);switch(xe.msDisplay){default:case Ut.All:return u(l);case Ut.Configurable:return u(n.earned)&&!(s!=null&&typeof s=="object"&&"optionsDisplay"in s)?je.None:u(l);case Ut.Incomplete:return u(n.earned)?je.None:u(l);case Ut.None:return je.None}}),R(n,"style"),R(n,"classes"),R(n,"display"),R(n,"showPopups"),n[Gt]=function(){const{visibility:s,display:r,style:d,classes:m,earned:c,id:y}=this;return{visibility:s,display:r,style:u(d),classes:m,earned:c,id:y}},n.shouldEarn){const s=n;dt(()=>{var r,d;if(xe.active===L.id&&!s.earned.value&&u(s.visibility)===je.Visible&&((r=s.shouldEarn)==null?void 0:r.call(s))&&(s.earned.value=!0,(d=s.onComplete)==null||d.call(s),s.display&&u(s.showPopups)===!0)){const m=u(s.display),c=de(Et(m)?m:m.requirement);kl(o(P,null,[o("h3",null,[p("Milestone earned!")]),o("div",null,[o(c,null,null)])]))}})}return n})}Fe.on("loadSettings",e=>{Ye(e,"msDisplay",Ut.All)});const ko=Object.values(Ut).map(e=>({label:Ll(e),value:e}));es(x(()=>o(ll,{title:"Show Milestones",options:ko,"onUpdate:modelValue":e=>xe.msDisplay=e,modelValue:xe.msDisplay},null)));const Co=Symbol("Reset");function No(e){return st(()=>{const t=e();return t.id=nn("reset-"),t.type=Co,t.reset=function(){var l;const n=a=>{if(a&&typeof a=="object")if(Ot in a){const s=a;s.value=s[Ot]}else!(a instanceof i)&&!Ge(a)&&Object.values(a).forEach(s=>n(s))};u(t.thingsToReset).forEach(n),Fe.emit("reset",t),(l=t.onReset)==null||l.call(t)},R(t,"thingsToReset"),t})}const Cn={};Fe.on("removeLayer",e=>{var t;(t=Cn[e.id])==null||t.call(Cn),Cn[e.id]=void 0});const So="paper",Cl=5,pe=Ct(So,function(){const e="Paper",t="#E8DCB8",n=nt(0,"paper"),l=nt(k(()=>i.min(i.div(oe.logs.value,1e9),i.div(V.ash.value,1e6))),"pulp"),a=ai(()=>({scaling:nl(1,1.2),baseResource:l,gainResource:G(n),roundUpCost:!0,spend(se,H){oe.logs.value=i.sub(oe.logs.value,i.times(H,1e9)),V.ash.value=i.sub(V.ash.value,i.times(H,1e6))},gainModifier:ae})),s=we(()=>({display:x(()=>{const se=i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value;return o(P,null,[o("span",{style:"font-size: large"},[p("Create "),le(a.currentGain.value),p(" "),n.displayName]),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost: "),bn(oe.logs,se),p(" "),l.displayName,p(" ("),le(i.times(se,1e9)),p(" "),oe.logs.displayName,p(";")," ",le(i.times(se,1e6)),p(" "),V.ash.displayName,p(")")])])}),canClick:()=>i.gte(a.actualGain.value,1),onClick(){!u(this.canClick)||a.convert()},style:"width: 600px; min-height: unset"}));function r(se){const H=$e(()=>({...se,display:{title:se.name,description:`Print a copy of "${se.name}", which ${se.elfName} will use to improve their skills! Each copy printed will reduce the "${se.buyableName}" price scaling by 0.95x and make ${se.elfName} purchase +10% faster!`,effectDisplay:x(()=>o(P,null,[ue(i.pow(.95,H.amount.value)),p("x price scaling,")," ",ue(i.div(H.amount.value,10).add(1)),p("x auto-purchase speed")])),showAmount:!1},resource:G(n),cost:()=>i.pow(5,H.amount.value).times(10),style:"width: 600px"}));return H}const d=r({name:"Now You're Logging!",elfName:"Holly",buyableName:"Generic Cutters"}),m=r({name:"The Man Who Planted Trees",elfName:"Ivy",buyableName:"Generic Planters"}),c=r({name:"Logjam",elfName:"Hope",buyableName:"Expand Forest"}),y=r({name:"Fahrenheit 451",elfName:"Jack",buyableName:"Heated Cutters"}),g=r({name:"Tillamook Burn Country",elfName:"Mary",buyableName:"Heated Planters"}),w=r({name:"The Garden Tree's Handbook",elfName:"Noel",buyableName:"Fertilized Soil"}),v=r({name:"Firestarter",elfName:"Joy",buyableName:"Small Fire",visibility:()=>O(Le.elves.smallFireElf.bought.value)}),_=r({name:"An Arsonist's Guide to Writer's Homes in New England",elfName:"Faith",buyableName:"Bonfire",visibility:()=>O(Le.elves.bonfireElf.bought.value)}),N=r({name:"Little Fires Everywhere",elfName:"Snowball",buyableName:"Kiln",visibility:()=>O(Le.elves.kilnElf.bought.value)}),I={cuttersBook:d,plantersBook:m,expandersBook:c,heatedCuttersBook:y,heatedPlantersBook:g,fertilizerBook:w,smallFireBook:v,bonfireBook:_,kilnBook:N},ae=X(()=>[B(()=>({multiplier:2,description:"Scholar's shoes",enabled:kt.paperUpgrades.paperUpgrade1.bought})),B(()=>({multiplier:2,description:"Scholar's slacks",enabled:kt.paperUpgrades.paperUpgrade2.bought})),B(()=>({multiplier:2,description:"Scholar's jacket",enabled:kt.paperUpgrades.paperUpgrade3.bought}))]),[A,S]=ln(()=>[{title:"Paper Gain",modifier:ae,base:1}]),D=q(!1),ve=x(()=>o(at,{modelValue:D.value,"onUpdate:modelValue":se=>D.value=se},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:A})),{total:ke,trackerDisplay:Te}=an({resource:n,goal:5e3,name:e,day:Cl,color:t,textColor:"var(--feature-foreground)",modal:{show:D,display:ve}});return{name:e,day:Cl,color:t,paper:n,totalPaper:ke,paperConversion:a,books:I,generalTabCollapsed:S,minWidth:700,display:x(()=>o(P,null,[me(Te),o(ge,null,null),o(ht,{resource:n,color:t,style:"margin-bottom: 0"},null),o(ge,null,null),me(s),o(ge,null,null),dn(...Object.values(I))]))}}),Mo="workshop",sn=2,tt=Ct(Mo,function(){const e="Workshop",t="#D66B02",n="#D66B02",l=nt(0,"foundation progress"),a=mo(()=>({scaling:nl(250,1.5),baseResource:oe.logs,gainResource:G(l),roundUpCost:!0,buyMax:!1,spend(D,ve){oe.logs.value=i.sub(oe.logs.value,ve)}})),s=we(()=>({display:x(()=>o(P,null,[o("b",{style:"font-size: x-large"},[p("Build part of the foundation")]),o("br",null,null),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost:")," ",bn(oe.logs,i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value)," ",oe.logs.displayName])])),visibility:()=>O(i.lt(l.value,100)),canClick:()=>i.gte(a.actualGain.value,1)&&i.lt(l.value,100),onClick(){!u(this.canClick)||a.convert()},style:"width: 600px; min-height: unset"})),r=Qn(()=>({key:"w",description:"Build part of the foundation.",onPress:()=>{s.canClick.value&&s.onClick()}})),d=k(()=>!Le.milestones[6].earned.value),m=Je(()=>({display:{requirement:"1% Foundation Completed",effectDisplay:"Trees give 5% more logs for each % of foundation completed"},shouldEarn:()=>i.gte(l.value,1),showPopups:d})),c=Je(()=>({display:{requirement:"10% Foundation Completed",effectDisplay:"Cut an additional tree per second for each 5% of foundation completed"},shouldEarn:()=>i.gte(l.value,10),visibility:()=>O(m.earned.value),showPopups:d})),y=Je(()=>({display:{requirement:"20% Foundation Completed",effectDisplay:"Plant an additional tree per second for each 10% of foundation completed"},shouldEarn:()=>i.gte(l.value,20),visibility:()=>O(c.earned.value),showPopups:d})),g=Je(()=>({display:{requirement:"30% Foundation Completed",effectDisplay:"All automatic tree cutting is doubled"},shouldEarn:()=>i.gte(l.value,30),visibility:()=>O(y.earned.value),showPopups:d})),w=Je(()=>({display:{requirement:"40% Foundation Completed",effectDisplay:"All automatic tree planting is doubled"},shouldEarn:()=>i.gte(l.value,40),visibility:()=>O(g.earned.value),showPopups:d})),v=Je(()=>({display:{requirement:"50% Foundation Completed",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(l.value,50),visibility:()=>O(w.earned.value),showPopups:d})),_=Je(()=>({display:{requirement:"75% Foundation Completed",effectDisplay:"The forest gains an extra tree for every 2% of foundation completed"},shouldEarn:()=>i.gte(l.value,75),visibility:()=>O(v.earned.value),showPopups:d})),N=Je(()=>({display:{requirement:"100% Foundation Completed",effectDisplay:"Log per tree is raised to the 1.2th power"},shouldEarn:()=>i.gte(l.value,100),visibility:()=>O(_.earned.value),showPopups:d})),I={logGainMilestone1:m,autoCutMilestone1:c,autoPlantMilestone1:y,autoCutMilestone2:g,autoPlantMilestone2:w,logGainMilestone2:v,morePlantsMilestone1:_,logGainMilestone3:N},{collapseMilestones:ae,display:A}=ni(I),S=It(()=>({direction:re.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>W.day.value===sn?i.div(l.value,100):1,display:x(()=>W.day.value===sn?o(P,null,[le(l.value),p("%")]):"")}));return dt(()=>{W.day.value===sn&&i.gte(l.value,100)&&W.completeDay()}),{name:e,day:sn,color:t,foundationProgress:l,foundationConversion:a,milestones:I,collapseMilestones:ae,minWidth:700,buildFoundationHK:r,display:x(()=>o(P,null,[o("div",null,[W.day.value===sn?"Complete the foundation to complete the day":`${e} Complete!`]),me(S),o(ge,null,null),o("div",null,[o("span",null,[p("The foundation is ")]),o("h2",{style:`color: ${t}; text-shadow: 0 0 10px ${t}`},[le(l.value)]),p("% completed")]),i.lt(l.value,100)?o(ge,null,null):null,me(s),o(ge,null,null),A()]))}}),Ao="elves",on=4,Le=Ct(Ao,function(){const e="Elves",t="red",n="#911D21",a=It(()=>({direction:re.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>W.day.value===on?i.div(te.value,6).times(.8333333333333334).add(i.div(i.add(V.coal.value,1).log10(),i.log10(1e9)).clamp(0,1).div(6)):1,display:x(()=>W.day.value===on?i.lt(te.value,6)?o(P,null,[le(te.value),p("/6 elves")]):o(P,null,[le(V.coal.value),p("/"),le(1e9),p(" coal")]):"")})),s=No(()=>({thingsToReset:[oe,tt,V],onReset(){setTimeout(()=>{ot.earned.value?(oe.row1Upgrades.forEach(F=>F.bought.value=!0),oe.row2Upgrades.forEach(F=>F.bought.value=!0)):Oe.earned.value&&(oe.row1Upgrades[4].bought.value=!0,oe.row2Upgrades[4].bought.value=!0),Ee.earned.value&&(tt.foundationProgress.value=100)})}})),r=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.cuttersBook.amount.value,.1).add(1),description:"Now You're Logging!",enabled:()=>i.gt(pe.books.cuttersBook.amount.value,0)}))]),d=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.plantersBook.amount.value,.1).add(1),description:"The Man Who Planted Trees",enabled:()=>i.gt(pe.books.plantersBook.amount.value,0)}))]),m=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.expandersBook.amount.value,.1).add(1),description:"Logjam",enabled:()=>i.gt(pe.books.expandersBook.amount.value,0)}))]),c=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.heatedCuttersBook.amount.value,.1).add(1),description:"Fahrenheit 451",enabled:()=>i.gt(pe.books.heatedCuttersBook.amount.value,0)}))]),y=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.heatedPlantersBook.amount.value,.1).add(1),description:"Tillamook Burn Country",enabled:()=>i.gt(pe.books.heatedPlantersBook.amount.value,0)}))]),g=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.fertilizerBook.amount.value,.1).add(1),description:"The Garden Tree's Handbook",enabled:()=>i.gt(pe.books.fertilizerBook.amount.value,0)}))]),w=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.smallFireBook.amount.value,.1).add(1),description:"Firestarter",enabled:()=>i.gt(pe.books.smallFireBook.amount.value,0)}))]),v=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.bonfireBook.amount.value,.1).add(1),description:"An Arsonist's Guide to Writer's Homes in New England",enabled:()=>i.gt(pe.books.bonfireBook.amount.value,0)}))]),_=X(()=>[B(()=>({multiplier:2,description:"6 Elves Trained",enabled:Ce.earned})),B(()=>({multiplier:()=>i.times(pe.books.kilnBook.amount.value,.1).add(1),description:"Little Fires Everywhere",enabled:()=>i.gt(pe.books.kilnBook.amount.value,0)}))]),[N,I]=ln(()=>[{title:"Holly Auto-Buy Frequency",modifier:r,base:10,unit:"/s",visible:ne.cuttersElf.bought},{title:"Ivy Auto-Buy Frequency",modifier:d,base:10,unit:"/s",visible:ne.plantersElf.bought},{title:"Hope Auto-Buy Frequency",modifier:m,base:10,unit:"/s",visible:ne.expandersElf.bought},{title:"Jack Auto-Buy Frequency",modifier:c,base:10,unit:"/s",visible:ne.heatedCuttersElf.bought},{title:"Mary Auto-Buy Frequency",modifier:y,base:10,unit:"/s",visible:ne.heatedPlantersElf.bought},{title:"Noel Auto-Buy Frequency",modifier:g,base:10,unit:"/s",visible:ne.fertilizerElf.bought},{title:"Joy Auto-Buy Frequency",modifier:w,base:10,unit:"/s",visible:ne.smallFireElf.bought},{title:"Faith Auto-Buy Frequency",modifier:v,base:10,unit:"/s",visible:ne.bonfireElf.bought},{title:"Snowball Auto-Buy Frequency",modifier:_,base:10,unit:"/s",visible:ne.kilnElf.bought}]),ae=q(!1),A=x(()=>o(at,{modelValue:ae.value,"onUpdate:modelValue":F=>ae.value=F},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:N}));function S(F){var Qt;const St=k(()=>i.pow(4,te.value).times(1e6)),it=_e(0),Ht=F.hasToggle?_e(!1):q(!0),Mt=k(()=>F.cooldownModifier.apply(10)),Ft=Xe((Qt=F.canBuy)!=null?Qt:!0);function Tt(pt){var Yt;if($.bought.value&&u(Ft)){it.value=i.add(it.value,pt);const Dt=i.recip(Mt.value);for(;i.gte(it.value,Dt);)if(F.customCost==null?u(F.buyable.canPurchase):i.gte(F.buyable.resource.value,F.customCost(F.buyable.amount.value)))F.buyable.amount.value=i.add(F.buyable.amount.value,1),it.value=i.sub(it.value,Dt),(Yt=F.onAutoPurchase)==null||Yt.call(F);else{it.value=Dt;break}}}const $=ee(()=>({...F,buyable:void 0,toggle:Ht,buyProgress:it,update:Tt,resource:V.coal,cost:St,computedAutoBuyCooldown:Mt,display:()=>({title:F.name,description:x(()=>o(P,null,[F.description,$.bought.value?null:o(P,null,[" ",p("Training this elf will require resetting all your progress from days 1-3.")]),$.bought.value&&F.hasToggle===!0?o(P,null,[o(At,{title:F.toggleDesc,"onUpdate:modelValue":pt=>Ht.value=pt,modelValue:Ht.value},null)]):null])),showCost:!$.bought.value}),style:"width: 190px",onPurchase(){var pt;(pt=F.onPurchase)==null||pt.call(F),s.reset()}}));return $}const D=S({name:"Holly",description:"Holly will automatically purchase cutters you can afford, without actually spending any logs.",buyable:oe.row1Buyables[0],cooldownModifier:r}),ve=S({name:"Ivy",description:"Ivy will automatically purchase planters you can afford, without actually spending any logs.",buyable:oe.row1Buyables[1],cooldownModifier:d}),ke=S({name:"Hope",description:"Hope will automatically purchase forest expanders you can afford, without actually spending any logs.",buyable:oe.row1Buyables[2],cooldownModifier:m}),Te=[D,ve,ke],se=S({name:"Jack",description:"Jack will automatically purchase heated cutters you can afford, without actually spending any coal.",buyable:V.heatedCutters,cooldownModifier:c}),H=S({name:"Mary",description:"Mary will automatically purchase heated planters you can afford, without actually spending any coal.",buyable:V.heatedPlanters,cooldownModifier:y}),Ke=S({name:"Noel",description:"Noel will automatically purchase fertilized soil you can afford, without actually spending any ash.",buyable:V.moreFertilizer,cooldownModifier:g}),mt=[se,H,Ke],Ae=S({name:"Joy",description:"Joy will automatically purchase small fires you can afford, without actually spending any logs. You can toggle whether or not to enable the purchased small fires automatically. Small fires will start giving a boost to ash and coal gain.",buyable:V.buildFire,cooldownModifier:w,visibility:()=>O(ut.upgrades.logsUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased small fires",onAutoPurchase(){Ae.toggle.value&&(V.activeFires.value=i.add(V.activeFires.value,1))},onPurchase(){W.days[4].recentlyUpdated.value=!0}}),be=S({name:"Faith",description:"Faith will automatically purchase bonfires you can afford. You can toggle whether or not to enable the purchased bonfires automatically. Bonfires will start giving a boost to ash and coal gain.",buyable:V.buildBonfire,cooldownModifier:v,visibility:()=>O(ut.upgrades.ashUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased bonfires",onAutoPurchase(){const F=u(this.buyable.cost);V.activeFires.value=i.sub(V.activeFires.value,F).max(0),V.buildFire.amount.value=i.sub(V.buildFire.amount.value,F).max(0),be.toggle.value&&(V.activeBonfires.value=i.add(V.activeBonfires.value,1))},onPurchase(){W.days[4].recentlyUpdated.value=!0},canBuy:V.unlockBonfire.bought}),Ue=S({name:"Snowball",description:"Snowball will automatically purchase kilns you can afford, without actually spending any logs. You can toggle whether or not to enable the purchased kilns automatically. Kilns will start giving a boost to ash and coal gain.",buyable:V.buildKiln,cooldownModifier:_,visibility:()=>O(ut.upgrades.coalUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased kilns",onAutoPurchase(){Ue.toggle.value&&(V.activeKilns.value=i.add(V.activeKilns.value,1))},onPurchase(){W.days[4].recentlyUpdated.value=!0},canBuy:V.unlockKiln.bought}),lt=[Ae,be,Ue],ne={cuttersElf:D,plantersElf:ve,expandersElf:ke,heatedCuttersElf:se,heatedPlantersElf:H,fertilizerElf:Ke,smallFireElf:Ae,bonfireElf:be,kilnElf:Ue},te=k(()=>Object.values(ne).filter(F=>F.bought.value).length),J=Je(()=>({display:{requirement:"1 Elf Trained",effectDisplay:"Manual cutting and planting can happen twice as often for each trained elf"},shouldEarn:()=>i.gte(te.value,1)})),Oe=Je(()=>({display:{requirement:"2 Elves Trained",effectDisplay:"Research I & II aren't reset after training"},shouldEarn:()=>i.gte(te.value,2),visibility:()=>O(J.earned.value)})),ye=Je(()=>({display:{requirement:"3 Elves Trained",effectDisplay:"Coal gain is raised to the 1.25"},shouldEarn:()=>i.gte(te.value,3),visibility:()=>O(Oe.earned.value)})),We=Je(()=>({display:{requirement:"4 Elves Trained",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(te.value,4),visibility:()=>O(ye.earned.value)})),Ie=Je(()=>({display:{requirement:"5 Elves Trained",effectDisplay:"Forest is twice as large"},shouldEarn:()=>i.gte(te.value,5),visibility:()=>O(We.earned.value)})),Ce=Je(()=>({display:{requirement:"6 Elves Trained",effectDisplay:"Elves work twice as fast"},shouldEarn:()=>i.gte(te.value,6),visibility:()=>O(Ie.earned.value)})),Ee=Je(()=>({display:{requirement:"7 Elves Trained",effectDisplay:"Workshop Foundation starts at 100% complete after training"},shouldEarn:()=>i.gte(te.value,7),visibility:()=>O(Ce.earned.value&&W.day.value>5)})),Se=Je(()=>({display:{requirement:"8 Elves Trained",effectDisplay:"Forest is twice as large (again)"},shouldEarn:()=>i.gte(te.value,8),visibility:()=>O(Ee.earned.value)})),ot=Je(()=>({display:{requirement:"9 Elves Trained",effectDisplay:"Trees upgrades aren't reset after training"},shouldEarn:()=>i.gte(te.value,9),visibility:()=>O(Se.earned.value)})),ce=[J,Oe,ye,We,Ie,Ce,Ee,Se,ot],qe={manualMilestone:J,researchMilestone:Oe,coalGainMilestone:ye,logGainMilestone:We,forestMilestone:Ie,elvesMilestone:Ce,foundationMilestone:Ee,forestMilestone2:Se,treeUpgradesMilestone:ot},{collapseMilestones:Nt,display:rt}=ni(qe);return Fe.on("update",F=>{i.lt(W.day.value,on)||Object.values(ne).forEach(St=>St.update(F))}),dt(()=>{W.day.value===on&&i.gte(te.value,6)&&i.gte(V.coal.value,1e9)&&W.completeDay()}),{name:e,color:t,elves:ne,totalElves:te,milestones:ce,collapseMilestones:Nt,generalTabCollapsed:I,minWidth:700,display:x(()=>o(P,null,[o("div",null,[W.day.value===on?`Reach ${le(6)} trained elves and ${le(1e9)} ${V.coal.displayName} to complete the day`:`${e} Complete!`," ",p("-")," ",o("button",{class:"button",style:"display: inline-block;",onClick:()=>ae.value=!0},[p("Check Modifiers")])]),me(a),me(A),o(ge,null,null),o("div",{style:"width: 600px"},[Pe(...Te),Pe(...mt),Pe(...lt)]),rt()]))}}),Io="coal",Nl=3,V=Ct(Io,function(){const e="Coal",t="#151716",n="#B2BeB5",l="var(--foreground)",a=nt(0,"coal"),s=nt(0,"ash"),r=_e(0),d=k(()=>i.times(r.value,1e3)),m=k(()=>i.times(r.value,.1)),c=k(()=>i.times(r.value,50)),y=$e(()=>({resource:oe.logs,cost(){let E=i.times(D.amount.value,u(D.cost)).plus(this.amount.value);return i.gte(E,100)&&(E=i.pow(E,2).div(100)),i.gte(E,1e4)&&(E=i.pow(E,2).div(1e4)),E=i.pow(.95,pe.books.smallFireBook.amount.value).times(E),E.pow(1.5).times(1e4)},display:x(()=>o(P,null,[o("h3",null,[p("Small Fire")]),o("br",null,null),p("Burn 1000 logs for 0.1 coal and 50 ash"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("-"),ue(d.value),p(" logs/sec"),o("br",null,null),p("+"),ue(m.value),p(" coal/sec"),o("br",null,null),p("+"),ue(c.value),p(" ash/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(y.cost)),p(" "),y.resource.displayName])),onPurchase(){r.value=i.add(r.value,1)},style:{color:l,width:"160px"}})),g=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(r.value,0)},onClick(){r.value=0}})),w=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(r.value,0)},onClick(){r.value=i.sub(r.value,1)}})),v=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(r.value,y.amount.value)},onClick(){r.value=i.add(r.value,1)}})),_=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(r.value,y.amount.value)},onClick(){r.value=y.amount.value}})),N=nt(y.amount,"small fires"),I=_e(0),ae=k(()=>i.times(I.value,1e4)),A=k(()=>i.times(I.value,10)),S=k(()=>i.times(I.value,1e3)),D=$e(()=>({resource:N,cost(){return i.pow(.95,pe.books.bonfireBook.amount.value).times(10)},display:x(()=>o(P,null,[o("h3",null,[p("Bonfire")]),o("br",null,null),p("Burn 10,000 logs for 10 coal and 1000 ash"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("-"),ue(ae.value),p(" logs/sec"),o("br",null,null),p("+"),ue(A.value),p(" coal/sec"),o("br",null,null),p("+"),ue(S.value),p(" ash/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(D.cost)),p(" "),D.resource.displayName])),onPurchase(E){r.value=i.sub(r.value,E).max(0),I.value=i.add(I.value,1)},style:{color:l,width:"160px"},visibility:()=>O(qe.bought.value)})),ve=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(I.value,0)},onClick(){I.value=0}})),ke=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(I.value,0)},onClick(){I.value=i.sub(I.value,1)}})),Te=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(I.value,D.amount.value)},onClick(){I.value=i.add(I.value,1)}})),se=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(I.value,D.amount.value)},onClick(){I.value=D.amount.value}})),H=_e(0),Ke=k(()=>i.times(H.value,1e6)),mt=k(()=>i.times(H.value,1e4)),Ae=k(()=>i.times(H.value,1e4)),be=$e(()=>({resource:oe.logs,cost(){let E=this.amount.value;return i.gte(E,100)&&(E=i.pow(E,2).div(100)),i.gte(E,1e4)&&(E=i.pow(E,2).div(1e4)),E=i.pow(.95,pe.books.kilnBook.amount.value).times(E),i.pow(1.1,E).times(1e7)},display:x(()=>o(P,null,[o("h3",null,[p("Charcoal Kiln")]),o("br",null,null),p("Burn 1,000,000 logs for 10,000 coal and 10,000 ash"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("-"),ue(Ke.value),p(" logs/sec"),o("br",null,null),p("+"),ue(mt.value),p(" coal/sec"),o("br",null,null),p("+"),ue(Ae.value),p(" ash/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(be.cost)),p(" "),be.resource.displayName])),onPurchase(){H.value=i.add(H.value,1)},style:{color:l,width:"160px"},visibility:()=>O(it.bought.value)})),Ue=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(H.value,0)},onClick(){H.value=0}})),lt=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(H.value,0)},onClick(){H.value=i.sub(H.value,1)}})),ne=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(H.value,be.amount.value)},onClick(){H.value=i.add(H.value,1)}})),te=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(H.value,be.amount.value)},onClick(){H.value=be.amount.value}})),J=_e(0),Oe=k(()=>i.times(J.value,5e7)),ye=$e(()=>({resource:cn.metal,cost(){let E=this.amount.value;return i.gte(E,100)&&(E=i.pow(E,2).div(100)),i.gte(E,1e4)&&(E=i.pow(E,2).div(1e4)),i.pow(1.15,E).times(10)},display:x(()=>o(P,null,[o("h3",null,[p("Mining Drill")]),o("br",null,null),p("Dig through the ground to find 50,000,000 coal"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("+"),ue(Oe.value),p(" coal/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(ye.cost)),p(" "),ye.resource.displayName])),onPurchase(){J.value=i.add(J.value,1)},style:{color:l,width:"160px"},visibility:()=>O(cn.coalDrill.bought.value)})),We=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(J.value,0)},onClick(){J.value=0}})),Ie=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(J.value,0)},onClick(){J.value=i.sub(J.value,1)}})),Ce=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(J.value,ye.amount.value)},onClick(){J.value=i.add(J.value,1)}})),Ee=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(J.value,ye.amount.value)},onClick(){J.value=ye.amount.value}})),Se=ee(()=>({resource:G(a),cost:5,display:{title:"Warmer Cutters",description:"Cut down twice as many trees/s"},style:{color:l}})),ot=ee(()=>({resource:G(a),cost:5,display:{title:"Warmer Planters",description:"Plant twice as many trees/s"},style:{color:l}})),ce=ee(()=>({resource:G(s),cost:5e3,display:{title:"Ashy Soil",description:"Trees give 25% more logs"},style:{color:l}})),qe=ee(()=>({resource:N,cost:10,display:{title:"Bigger Fires",description:"Put all those fires together into a larger blaze"},onPurchase(){N.value=i.add(N.value,this.cost)},style:{color:l}})),Nt=[Se,ot,ce,qe],rt=ee(()=>({resource:G(a),cost:250,display:{title:"Dedicated Cutter Heaters",description:"Double the bonus from Heated Cutters"},style:{color:l},visibility:()=>O(qe.bought.value)})),F=ee(()=>({resource:G(a),cost:250,display:{title:"Dedicated Planter Heaters",description:"Double the bonus from Heated Planters"},style:{color:l},visibility:()=>O(qe.bought.value)})),St=ee(()=>({canAfford(){return i.gte(oe.logs.value,1e5)&&i.gte(s.value,1e5)},onPurchase(){oe.logs.value=i.sub(oe.logs.value,1e5),s.value=i.sub(s.value,1e5)},display:x(()=>o(P,null,[o("h3",null,[p("Mulched Soil")]),o("br",null,null),p("Double the bonus from Fertilized Soil"),o("br",null,null),o("br",null,null),p("Cost: "),le(1e5),p(" "),oe.logs.displayName,o("br",null,null),le(1e5),p(" "),s.displayName])),style:{color:l},visibility:()=>O(qe.bought.value)})),it=ee(()=>({resource:oe.logs,cost:1e7,display:{title:"Efficient Fires",description:"Move the fires underground to keep the coal from turning to ash"},style:{color:l},visibility:()=>O(qe.bought.value)})),Ht=[rt,F,St,it],Mt=$e(()=>({resource:G(a),cost(){let E=this.amount.value;return i.gte(E,50)&&(E=i.pow(E,2).div(50)),i.gte(E,200)&&(E=i.pow(E,2).div(200)),i.gte(E,2e6)&&(E=i.pow(E,2).div(2e6)),E=i.pow(.95,pe.books.heatedCuttersBook.amount.value).times(E),i.add(E,1).pow(2.5).times(10)},display:{title:"Heated Cutters",description:"Even warmer cutters cut down trees faster",effectDisplay:x(()=>o(P,null,[p("Cutters cut down trees "),ue(pt.value),p("x faster")]))},style:{color:l},visibility:()=>O(Se.bought.value)})),Ft=$e(()=>({resource:G(a),cost(){let E=this.amount.value;return i.gte(E,50)&&(E=i.pow(E,2).div(50)),i.gte(E,200)&&(E=i.pow(E,2).div(200)),i.gte(E,2e6)&&(E=i.pow(E,2).div(2e6)),E=i.pow(.95,pe.books.heatedPlantersBook.amount.value).times(E),i.add(E,1).pow(2.5).times(10)},display:{title:"Heated Planters",description:"Even warmer planters plant trees faster",effectDisplay:x(()=>o(P,null,[p("Planters plant trees "),ue(Dt.value),p("x faster")]))},style:{color:l},visibility:()=>O(ot.bought.value)})),Tt=$e(()=>({resource:G(s),cost(){let E=this.amount.value;return i.gte(E,50)&&(E=i.pow(E,2).div(50)),i.gte(E,200)&&(E=i.pow(E,2).div(200)),i.gte(E,2e6)&&(E=i.pow(E,2).div(2e6)),E=i.pow(.95,pe.books.fertilizerBook.amount.value).times(E),i.add(E,1).pow(1.5).times(5e4)},display:{title:"Fertilized Soil",description:"More fertilizer helps trees grow bigger",effectDisplay:x(()=>o(P,null,[p("Trees give "),ue(ol.value),p("x more logs")]))},style:{color:l},visibility:()=>O(ce.bought.value)})),$=[Mt,Ft,Tt],Qt=X(()=>[ie(()=>({addend(){return i.times(Mt.amount.value,.25)},description:"Heated Cutters",enabled(){return i.gt(Mt.amount.value,0)}})),B(()=>({multiplier:2,description:"Dedicated Cutter Heaters",enabled:rt.bought}))]),pt=k(()=>Qt.apply(1)),Yt=X(()=>[ie(()=>({addend(){return i.times(Ft.amount.value,.25)},description:"Heated Planters",enabled(){return i.gt(Ft.amount.value,0)}})),B(()=>({multiplier:2,description:"Dedicated Planter Heaters",enabled:F.bought}))]),Dt=k(()=>Yt.apply(1)),bi=X(()=>[ie(()=>({addend(){return i.times(Tt.amount.value,.25)},description:"Fertilized Soil",enabled(){return i.gt(Tt.amount.value,0)}})),B(()=>({multiplier:2,description:"Mulched Soil",enabled:St.bought}))]),ol=k(()=>bi.apply(1)),rl=X(()=>[ie(()=>({addend(){return m.value},description:"Small Fires",enabled(){return i.gt(r.value,0)}})),ie(()=>({addend(){return A.value},description:"Bonfires",enabled(){return i.gt(I.value,0)}})),ie(()=>({addend(){return mt.value},description:"Charcoal Kilns",enabled(){return i.gt(H.value,0)}})),ie(()=>({addend(){return Oe.value},description:"Mining Drills",enabled(){return i.gt(J.value,0)}})),B(()=>({multiplier:2,description:"Carry coal in boxes",enabled:ut.upgrades.coalUpgrade.bought})),B(()=>({multiplier:()=>i.div(ut.buyables.coalBoxesBuyable.amount.value,2).add(1),description:"Carry more coal",enabled:ut.upgrades.coalUpgrade.bought})),B(()=>({multiplier:()=>i.div(y.amount.value,1e4).add(1),description:"Small Fires Synergy",enabled:Le.elves.smallFireElf.bought})),B(()=>({multiplier:()=>i.div(D.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:Le.elves.bonfireElf.bought})),B(()=>({multiplier:()=>i.div(be.amount.value,100).add(1),description:"Kiln Synergy",enabled:Le.elves.kilnElf.bought})),B(()=>({multiplier:2,description:"Mining overalls",enabled:kt.metalUpgrades.metalUpgrade2.bought})),B(()=>({multiplier:3,description:"Mining helmet",enabled:kt.metalUpgrades.metalUpgrade3.bought})),li(()=>({exponent:1.25,description:"3 Elves Trained",enabled:Le.milestones[2].earned,supportLowNumbers:!0}))]),_n=k(()=>rl.apply(0)),ul=X(()=>[ie(()=>({addend(){return c.value},description:"Small Fires",enabled(){return i.gt(r.value,0)}})),ie(()=>({addend(){return S.value},description:"Bonfires",enabled(){return i.gt(I.value,0)}})),ie(()=>({addend(){return Ae.value},description:"Charcoal Kilns",enabled(){return i.gt(H.value,0)}})),B(()=>({multiplier:2,description:"Carry ash in boxes",enabled:ut.upgrades.ashUpgrade.bought})),B(()=>({multiplier:()=>i.div(ut.buyables.ashBoxesBuyable.amount.value,2).add(1),description:"Carry more ash",enabled:ut.upgrades.ashUpgrade.bought})),B(()=>({multiplier:()=>i.div(y.amount.value,1e3).add(1),description:"Small Fires Synergy",enabled:Le.elves.smallFireElf.bought})),B(()=>({multiplier:()=>i.div(D.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:Le.elves.bonfireElf.bought})),B(()=>({multiplier:()=>i.div(be.amount.value,100).add(1),description:"Kiln Synergy",enabled:Le.elves.kilnElf.bought})),B(()=>({multiplier:4,description:"Mining boots",enabled:kt.metalUpgrades.metalUpgrade1.bought}))]),On=k(()=>ul.apply(0)),dl=X(()=>[ie(()=>({addend(){return i.negate(d.value)},description:"Small Fires",enabled(){return i.gt(r.value,0)}})),ie(()=>({addend(){return i.negate(ae.value)},description:"Bonfires",enabled(){return i.gt(I.value,0)}})),ie(()=>({addend(){return i.negate(Ke.value)},description:"Charcoal Kilns",enabled(){return i.gt(H.value,0)}}))]),cl=k(()=>dl.apply(0)),[wi,_i]=ln(()=>[{title:"Log Consumption",modifier:dl,base:0,visible(){return i.gt(r.value,0)||i.gt(I.value,0)||i.gt(H.value,0)}},{title:"Coal Gain",modifier:rl,base:0,visible(){return i.gt(r.value,0)||i.gt(I.value,0)||i.gt(H.value,0)}},{title:"Ash Gain",modifier:ul,base:0,visible(){return i.gt(r.value,0)||i.gt(I.value,0)||i.gt(H.value,0)}}]),qn=q(!1),ki=x(()=>o(at,{modelValue:qn.value,"onUpdate:modelValue":E=>qn.value=E},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:wi}));Fe.on("update",E=>{i.lt(W.day.value,Nl)||i.times(E,cl.value).negate().gt(oe.logs.value)||(oe.logs.value=i.times(E,cl.value).plus(oe.logs.value),a.value=i.times(E,_n.value).plus(a.value),s.value=i.times(E,On.value).plus(s.value),r.value=i.max(r.value,0))});const{total:Ci,trackerDisplay:Ni}=an({resource:a,goal:1e7,name:e,day:Nl,color:t,modal:{show:qn,display:ki}});return{name:e,color:t,coal:a,totalCoal:Ci,computedCoalGain:_n,ash:s,activeFires:r,buildFire:y,activeBonfires:I,buildBonfire:D,activeKilns:H,buildKiln:be,activeDrills:J,buildDrill:ye,warmerCutters:Se,warmerPlanters:ot,basicFertilizer:ce,unlockBonfire:qe,dedicatedCutters:rt,dedicatedPlanters:F,betterFertilizer:St,unlockKiln:it,heatedCutters:Mt,heatedPlanters:Ft,moreFertilizer:Tt,computedHeatedCutterEffect:pt,computedHeatedPlanterEffect:Dt,computedFertilizerEffect:ol,generalTabCollapsed:_i,minWidth:700,display:x(()=>o(P,null,[me(Ni),o(ge,null,null),o(ht,{resource:a,color:t,style:"margin-bottom: 0",effectDisplay:i.gt(_n.value,0)?`+${ue(_n.value)}/s`:void 0},null),o(ge,null,null),o(ht,{resource:s,color:n,style:"margin-bottom: 0",effectDisplay:i.gt(On.value,0)?`+${ue(On.value)}/s`:void 0},null),o(ge,null,null),o(Zn,null,{default:()=>[o(Wt,null,{default:()=>[me(y),o("div",null,[le(i.floor(r.value)),p("/"),le(i.floor(y.amount.value))]),Pe(g,w,v,_)]}),qe.bought.value?o(P,null,[o(ge,null,null),o(Wt,null,{default:()=>[me(D),o("div",null,[le(I.value),p("/"),le(D.amount.value)]),Pe(ve,ke,Te,se)]})]):void 0,it.bought.value?o(P,null,[o(ge,null,null),o(Wt,null,{default:()=>[me(be),o("div",null,[le(H.value),p("/"),le(be.amount.value)]),Pe(Ue,lt,ne,te)]})]):void 0,cn.coalDrill.bought.value?o(P,null,[o(ge,null,null),o(Wt,null,{default:()=>[me(ye),o("div",null,[le(J.value),p("/"),le(ye.amount.value)]),Pe(We,Ie,Ce,Ee)]})]):void 0]}),o(ge,null,null),Pe(...Nt),Pe(...Ht),Pe(...$)]))}}),Eo="metal",Sl=7,cn=Ct(Eo,function(){const e="Metal",t="#888B8D",n=nt(0,"metal ingots",void 0,!0),l=bl(n),a=nt(0,"ore"),s=bl(a),r=X(()=>[B(()=>({multiplier:5,description:"Crucible",enabled:be.bought})),B(()=>({multiplier:1.5,description:"Industrial Crucible",enabled:()=>i.gte(te.amount.value,1)})),B(()=>({multiplier:2,description:"Industrial Furnace",enabled:lt.bought})),B(()=>({multiplier:()=>i.add(ye.value,1),description:"Hotter Forges",enabled:()=>i.gte(Oe.amount.value,1)}))]),d=k(()=>r.apply(.1)),m=X(()=>[ie(()=>({addend:()=>i.times(te.amount.value,10),description:"Industrial Crucibles",enabled:()=>i.gte(te.amount.value,1)}))]),c=k(()=>m.apply(0)),y=1e10,g=k(()=>i.min(a.value,i.div(V.coal.value,y)).floor().max(0)),w=we(()=>({display:x(()=>{const ce=i.gte(g.value,1)?g.value:i.add(g.value,1);return o(P,null,[o("span",{style:"font-size: large"},[p("Smelt "),Qe(i.times(g.value,d.value))," ",n.displayName]),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost: "),Ne(ce),p(" "),a.displayName,p(";")," ",Ne(i.times(ce,y)),p(" "),V.coal.displayName])])}),canClick:()=>i.gte(g.value,1),onClick(){!u(this.canClick)||v(g.value)},style:{width:"600px",minHeight:"unset"}}));function v(ce){const[qe,Nt,rt]=[i.times(ce,d.value),ce,i.times(ce,y)];n.value=i.add(n.value,qe),a.value=i.sub(a.value,Nt),V.coal.value=i.sub(V.coal.value,rt)}const _=X(()=>[ie(()=>({addend:()=>ne.amount.value,description:"Mining Drills",enabled:()=>i.gte(ne.amount.value,1)}))]),N=k(()=>_.apply(1)),I=X(()=>[B(()=>({multiplier:2,description:"A Simple Pickaxe",enabled:mt.bought})),B(()=>({multiplier:2,description:"Double Pickaxe",enabled:Ae.bought})),B(()=>({multiplier:2.5,description:"Mining Drills",enabled:()=>i.gte(ne.amount.value,1)}))]),ae=k(()=>I.apply(1)),A=_e(0),S=10,D=It(()=>({width:400,height:25,direction:re.Right,fillStyle:{backgroundColor:t},progress:()=>i.div(A.value,S)})),ve=X(()=>[ie(()=>({addend:c,enabled:J})),B(()=>({multiplier:d}))]),ke=k(()=>ve.apply(0)),Te=X(()=>[ie(()=>({addend:N})),B(()=>({multiplier:ae})),B(()=>({multiplier:i.reciprocate(S)}))]),se=k(()=>Te.apply(0)),H=X(()=>[ie(()=>({addend:se})),ie(()=>({addend:()=>i.negate(c.value),enabled:J}))]),Ke=k(()=>H.apply(0)),mt=ee(()=>({resource:G(n),cost:.1,display:{title:"A Simple Pickaxe",description:"Make a simple pickaxe to help mine faster.

Halve the time to mine more ore"}})),Ae=ee(()=>({resource:G(n),cost:.1,display:{title:"Double Pickaxe",description:"This is too slow. What if you swung two pickaxes at once?

Halve the time to mine ore, again"},visibility:()=>O(Ae.bought.value)})),be=ee(()=>({resource:G(n),cost:1,display:{title:"Crucible",description:"Smelting this all by hand is rather painful, and a lot of the metal is left in the slag. A small crucible should help a lot!

Increase the metal extracted per ore by 5x"},visibility:()=>O(be.bought.value||i.div(s.value,d.value).plus(l.value).gte(1))})),Ue=ee(()=>({resource:G(n),cost:0,display:{title:"Coal Drilling",description:"These mining drills are pretty powerful, mining more ore than you can actually smelt. Could be worth making some to mine coal instead"},visibility:()=>O(i.gte(ne.amount.value,1)&&(Ue.bought.value||i.lt(V.computedCoalGain.value,i.times(N.value,ae.value).div(S).times(y)))),onPurchase(){W.days[2].recentlyUpdated.value=!0}})),lt=ee(()=>({canAfford(){return i.gte(n.value,50)&&i.gte(V.coal.value,1e11)},onPurchase(){n.value=i.sub(n.value,50),V.coal.value=i.sub(V.coal.value,1e11)},display:{title:"Industrial Furnace",description:`Moving smelting out of the open air and into a dedicated furnace should make efficiency even better. Double metal gained per ore -
-
- Cost: 50 ${n.displayName}
${Qe(1e11)} ${V.coal.displayName}`}})),ne=$e(()=>({resource:G(n),cost(){return i.pow(1.15,this.amount.value).times(10)},display:{title:"Mining Drill",description:"An automated machine to help you mine more ore, faster",effectDisplay:x(()=>o(P,null,[p("Mine 2.5x faster. Increase ore mining amount by")," ",Ne(ne.amount.value),p(" ore per operation")]))},visibility:()=>O(i.gte(ne.amount.value,1)||i.div(s.value,d.value).plus(l.value).gte(10)),style:{width:"200px"}})),te=$e(()=>({resource:G(n),cost(){return i.pow(1.15,i.times(this.amount.value,10)).times(10)},display:{title:"Industrial Crucible",description:"A giant automated crucible furnace, letting you smelt ore faster",effectDisplay:x(()=>o(P,null,[p("Automatically smelts")," ",Ne(i.times(te.amount.value,10)),p(" ore per second")]))},visibility:()=>O(i.gte(te.amount.value,1)||i.gte(ne.amount.value,4)||i.gte(s.value,50)),style:{width:"200px"}})),J=_e(!0),Oe=$e(()=>({resource:V.coal,cost(){return i.pow(10,this.amount.value).times(1e12)},display:{title:"Hotter Forges",description:"More coal makes the fires burn hotter, getting just a little more metal out of each bit of ore",effectDisplay:x(()=>o(P,null,[p("Gain "),Ne(i.times(ye.value,100)),p("% more metal per ore")]))},visibility:()=>O(i.gte(Oe.amount.value,1)||lt.bought.value),style:{width:"200px"}})),ye=k(()=>i.times(Oe.amount.value,.25));Fe.on("update",ce=>{A.value=i.times(ce,ae.value).plus(A.value);const qe=A.value.div(S).trunc();A.value=A.value.minus(qe.times(S)),a.value=i.add(a.value,i.times(qe,N.value)),J.value&&v(i.min(g.value,i.times(te.amount.value,10).times(ce)))});const[We,Ie]=ln(()=>[{title:"Automatic Smelting",modifier:m,base:0,visible(){return i.gt(te.amount.value,0)}},{title:"Metal per Ore",modifier:r,base:.1},{title:"Ore per Mining Operation",modifier:_,base:1},{title:"Mining Speed",modifier:I,base:1}]),Ce=q(!1),Ee=x(()=>o(at,{modelValue:Ce.value,"onUpdate:modelValue":ce=>Ce.value=ce},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:We})),{total:Se,trackerDisplay:ot}=an({resource:n,goal:25e3,name:e,day:Sl,color:t,modal:{show:Ce,display:Ee}});return{name:e,day:Sl,color:t,ore:a,bestOre:s,oreProgress:A,metal:n,bestMetal:l,totalMetal:Se,simplePickaxe:mt,doublePickaxe:Ae,crucible:be,coalDrill:Ue,industrialFurnace:lt,oreDrill:ne,industrialCrucible:te,autoSmeltEnabled:J,hotterForge:Oe,generalTabCollapsed:Ie,minWidth:700,display:x(()=>o(P,null,[me(ot),o(ge,null,null),o(ht,{resource:n,color:t,style:"margin-bottom: 0",sticky:!1,productionDisplay:x(()=>o(P,null,[J.value&&i.gte(te.amount.value,1)?`+${Ol([[ke.value,"smelting speed"],[se.value,"ore gain"],[i.div(V.computedCoalGain.value,y),"coal gain"]],"/s")}`:void 0]))},null),o(ge,null,null),me(w),i.gte(te.amount.value,1)?o("div",{style:{width:"150px"}},[o(At,{title:"Auto Smelt",modelValue:J.value,"onUpdate:modelValue":ce=>J.value=ce},null)]):void 0,o(ge,null,null),o(ht,{resource:a,color:t,style:"margin-bottom: 0",sticky:!1,productionDisplay:x(()=>o(P,null,[ql(Ke.value)]))},null),o(ge,null,null),o("div",null,[p("Currently mining "),Qe(N.value),p(" ore every")," ",Qe(i.div(S,ae.value)),p(" seconds")]),me(D),o(ge,null,null),Pe(mt,Ae,be,Ue,lt),Pe(ne,te,Oe)]))}}),Bo="cloth",Ml=8,kt=Ct(Bo,function(){const e="Cloth",t="white",n=nt(0,"cloth"),l=nt(0,"wool"),a=nt(10,"sheep"),s=_e(0),r=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(s.value,ne.value)})),d=we(()=>({display:{title:"Breed sheep",description:x(()=>o(P,null,[p("Breed "),Ne(i.floor(Ue.value)),p(" sheep"),o("br",null,null),me(r)]))},style:{minHeight:"80px"},canClick:()=>i.gte(s.value,ne.value),onClick(){if(i.lt(s.value,ne.value))return;const F=i.floor(Ue.value);a.value=i.add(a.value,F),s.value=0}})),m=_e(0),c=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(m.value,ye.value)})),y=we(()=>({display:{title:"Shear sheep",description:x(()=>o(P,null,[p("Shear up to "),Ne(i.floor(J.value)),p(" sheep"),o("br",null,null),me(c)]))},style:{minHeight:"80px"},canClick:()=>i.gte(m.value,ye.value),onClick(){if(i.lt(m.value,ye.value))return;const F=i.min(a.value,J.value).floor();l.value=i.add(l.value,F),m.value=0}})),g=_e(0),w=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(g.value,Ee.value)})),v=we(()=>({display:{title:"Spinning wool",description:x(()=>o(P,null,[p("Spin "),Ne(i.floor(Ie.value)),p(" wool"),o("br",null,null),me(w)]))},style:{minHeight:"80px"},canClick:()=>i.gte(g.value,Ee.value),onClick(){if(i.lt(g.value,Ee.value))return;const F=i.min(l.value,Ie.value).floor();n.value=i.add(n.value,F),l.value=i.sub(l.value,F),g.value=0}})),_=$e(()=>({resource:oe.logs,cost(){let F=this.amount.value;return i.gte(F,100)&&(F=i.pow(F,2).div(100)),i.pow(1.5,F).times(1e14)},display:{title:"Build more pens",description:"Breed +1 sheep at once"}})),N=$e(()=>({resource:cn.metal,cost(){let F=this.amount.value;return i.gte(F,100)&&(F=i.pow(F,2).div(100)),i.pow(1.4,F).times(1e4)},display:{title:"Make stronger shears",description:"Shear +1 sheep at once"}})),I=$e(()=>({resource:pe.paper,cost(){let F=this.amount.value;return i.gte(F,100)&&(F=i.pow(F,2).div(100)),i.pow(1.3,F).times(1e6)},display:{title:"Learn how to spin",description:"Spin +1 wool at once"}})),ae=ee(()=>({resource:G(n),cost:100,display:{title:"Lumberjack Boots",description:"Quadruple log gain"}})),A=ee(()=>({resource:G(l),cost:150,visibility:()=>O(ae.bought.value),display:{title:"Lumberjack Jeans",description:"Quadruple trees cut"}})),D={treesUpgrade3:ee(()=>({resource:G(a),cost:200,visibility:()=>O(A.bought.value),display:{title:"Lumberjack Plaid",description:"Quadruple trees planted"}})),treesUpgrade2:A,treesUpgrade1:ae},ve=ee(()=>({resource:G(n),cost:150,display:{title:"Mining boots",description:"Quadruple ash gain"}})),ke=ee(()=>({resource:G(l),cost:225,visibility:()=>O(ve.bought.value),display:{title:"Mining overalls",description:"Double coal gain"}})),se={metalUpgrade3:ee(()=>({resource:G(a),cost:300,visibility:()=>O(ke.bought.value),display:{title:"Mining helmet",description:"Triple coal gain"}})),metalUpgrade2:ke,metalUpgrade1:ve},H=ee(()=>({resource:G(n),cost:200,display:{title:"Scholar's shoes",description:"Double paper gain"}})),Ke=ee(()=>({resource:G(l),cost:200,visibility:()=>O(H.bought.value),display:{title:"Scholar's slacks",description:"Double paper gain"}})),Ae={paperUpgrade3:ee(()=>({resource:G(a),cost:400,visibility:()=>O(Ke.bought.value),display:{title:"Scholar's jacket",description:"Double paper gain"}})),paperUpgrade2:Ke,paperUpgrade1:H},be=X(()=>[ie(()=>({addend:_.amount,description:"Build more pens"}))]),Ue=k(()=>be.apply(1)),lt=X(()=>[]),ne=k(()=>lt.apply(1)),te=X(()=>[ie(()=>({addend:N.amount,description:"Make stronger shears"}))]),J=k(()=>te.apply(1)),Oe=X(()=>[]),ye=k(()=>Oe.apply(1)),We=X(()=>[ie(()=>({addend:I.amount,description:"Learn how to spin"}))]),Ie=k(()=>We.apply(1)),Ce=X(()=>[]),Ee=k(()=>Ce.apply(1)),[Se,ot]=ln(()=>[{title:"Sheep Gain",modifier:be,base:1},{title:"Sheep Breeding Cooldown",modifier:lt,base:1,visible:!1,unit:"s"},{title:"Shearing Amount",modifier:te,base:1},{title:"Shearing Cooldown",modifier:Oe,base:1,visible:!1,unit:"s"},{title:"Spinning Amount",modifier:We,base:1},{title:"Spinning Cooldown",modifier:Ce,base:1,visible:!1,unit:"s"}]),ce=q(!1),qe=x(()=>o(at,{modelValue:ce.value,"onUpdate:modelValue":F=>ce.value=F},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:Se}));Fe.on("update",F=>{i.lt(W.day.value,Ml)||(i.gte(s.value,ne.value)?s.value=ne.value:(s.value=i.add(s.value,F),d.isHolding.value&&d.onClick()),i.gte(m.value,ye.value)?m.value=ye.value:(m.value=i.add(m.value,F),y.isHolding.value&&y.onClick()),i.gte(g.value,Ee.value)?g.value=Ee.value:(g.value=i.add(g.value,F),v.isHolding.value&&v.onClick()))});const{total:Nt,trackerDisplay:rt}=an({resource:n,goal:1e3,name:e,day:Ml,color:t,textColor:"var(--feature-foreground)",modal:{show:ce,display:qe}});return{name:e,color:t,cloth:n,totalCloth:Nt,wool:l,sheep:a,buildPens:_,betterShears:N,fasterSpinning:I,treesUpgrades:D,metalUpgrades:se,paperUpgrades:Ae,generalTabCollapsed:ot,breedingProgress:s,shearingProgress:m,spinningProgress:g,minWidth:700,display:x(()=>o(P,null,[me(rt),o(ge,null,null),o(ht,{resource:n,style:"margin-bottom: 0"},null),o(ht,{resource:l,style:"margin-bottom: 0"},null),o(ht,{resource:a,style:"margin-bottom: 0"},null),Pe(d,y,v),Pe(_,N,I),o(ge,null,null),o(Zn,null,{default:()=>[dn(...Object.values(D)),dn(...Object.values(se)),dn(...Object.values(Ae))]})]))}}),xo="trees",Al=1,Il=.1,oe=Ct(xo,function(){const e="Trees",t="#4BDC13",n="green",l=nt(0,"logs"),a=nt(0,"saplings"),s=q(0),r=X(()=>[ie(()=>({addend:()=>i.times(Te.amount.value,10),description:"Expand Forest",enabled:S.bought})),ie(()=>({addend:()=>i.div(tt.foundationProgress.value,2),description:"75% Foundation Completed",enabled:tt.milestones.morePlantsMilestone1.earned})),B(()=>({multiplier:2,description:"5 Elves Trained",enabled:Le.milestones[4].earned})),B(()=>({multiplier:2,description:"8 Elves Trained",enabled:Le.milestones[7].earned})),B(()=>({multiplier:4,description:"Lumberjack Boots",enabled:kt.treesUpgrades.treesUpgrade1.bought}))]),d=nt(k(()=>i.sub(r.apply(10),a.value)),"trees"),m=k(()=>r.apply(10)),c=ee(()=>({resource:G(l),cost:10,display:{title:"Wooden Fingers",description:"Cut down an additional tree per click"}})),y=ee(()=>({resource:G(l),cost:10,display:{title:"Leafy Fingers",description:"Plant an additional tree per click"}})),g=ee(()=>({resource:G(l),cost:25,display:{title:"Automated Knives",description:"Cut down a tree every second"}})),w=ee(()=>({resource:G(l),cost:25,display:{title:"Automated Spade",description:"Plant a tree every second"}})),v=ee(()=>({resource:G(l),cost:40,display:{title:"Research I",description:"Trees give 25% more logs, and unlock more upgrades"}})),_=[c,y,g,w,v],N=ee(()=>({resource:G(l),cost:50,visibility:()=>O(v.bought.value),display:{title:"Sharper Fingers",description:"Manually cut trees twice as often"}})),I=ee(()=>({resource:G(l),cost:50,visibility:()=>O(v.bought.value),display:{title:"Greener Fingers",description:"Manually Plant trees twice as often"}})),ae=ee(()=>({resource:G(l),cost:150,visibility:()=>O(v.bought.value),display:{title:"Smart Knives",description:"Each time you manually chop trees, gain 1s of automatic tree chopping production"}})),A=ee(()=>({resource:G(l),cost:150,visibility:()=>O(v.bought.value),display:{title:"Smart Spades",description:"Each time you manually plant trees, gain 1s of automatic tree planting production"}})),S=ee(()=>({resource:G(l),cost:300,visibility:()=>O(v.bought.value),display:{title:"Research II",description:"Trees give 25% more logs, and unlock repeatable purchases"}})),D=[N,I,ae,A,S],ve=$e(()=>({resource:G(l),cost(){let $=this.amount.value;return i.gte($,50)&&($=i.pow($,2).div(50)),i.gte($,200)&&($=i.pow($,2).div(200)),i.gte($,2e6)&&($=i.pow($,2).div(2e6)),$=i.pow(.95,pe.books.cuttersBook.amount.value).times($),i.times(100,$).add(200)},display:{title:"Generic Cutters",description:"Each cutter cuts down 1 tree/s"},visibility:()=>O(S.bought.value)})),ke=$e(()=>({resource:G(l),cost(){let $=this.amount.value;return i.gte($,50)&&($=i.pow($,2).div(50)),i.gte($,200)&&($=i.pow($,2).div(200)),i.gte($,2e6)&&($=i.pow($,2).div(2e6)),$=i.pow(.95,pe.books.plantersBook.amount.value).times($),i.times(100,$).add(200)},display:{title:"Generic Planters",description:"Each planter plants 0.5 trees/s"},visibility:()=>O(S.bought.value)})),Te=$e(()=>({resource:G(l),cost(){let $=this.amount.value;return i.gte($,100)&&($=i.pow($,2).div(100)),i.gte($,1e5)&&($=i.pow($,2).div(1e5)),$=i.pow(.95,pe.books.expandersBook.amount.value).times($),i.pow(i.add($,1),1.5).times(500)},display:{title:"Expand Forest",description:"Add 10 trees to the forest"},visibility:()=>O(S.bought.value)})),se=[ve,ke,Te],H=X(()=>[ie(()=>({addend:1,description:"Wooden Fingers",enabled:c.bought})),ie(()=>({addend:Ue,description:"Smart Knives",enabled:ae.bought}))]),Ke=k(()=>H.apply(1)),mt=X(()=>[B(()=>({multiplier:.5,description:"Sharper Fingers",enabled:N.bought})),B(()=>({multiplier:()=>i.pow(.5,Le.totalElves.value),description:"1 Elf Trained",enabled:Le.milestones[0].earned}))]),Ae=k(()=>mt.apply(1)),be=X(()=>[ie(()=>({addend:1,description:"Automated Knives",enabled:g.bought})),ie(()=>({addend:ve.amount,description:"Generic Cutters",enabled:S.bought})),ie(()=>({addend:()=>i.div(tt.foundationProgress.value,5).floor(),description:"10% Foundation Completed",enabled:tt.milestones.autoCutMilestone1.earned})),B(()=>({multiplier:2,description:"30% Foundation Completed",enabled:tt.milestones.autoCutMilestone2.earned})),B(()=>({multiplier:2,description:"Warmer Cutters",enabled:V.warmerCutters.bought})),B(()=>({multiplier:V.computedHeatedCutterEffect,description:"Heated Cutters",enabled:()=>i.gt(V.heatedCutters.amount.value,0)})),B(()=>({multiplier:4,description:"Lumberjack Jeans",enabled:kt.treesUpgrades.treesUpgrade2.bought}))]),Ue=k(()=>be.apply(0)),lt=X(()=>[ie(()=>({addend:1,description:"Leafy Fingers",enabled:y.bought})),ie(()=>({addend:ye,description:"Smart Spades",enabled:A.bought}))]),ne=k(()=>lt.apply(1)),te=X(()=>[B(()=>({multiplier:.5,description:"Greener Fingers",enabled:I.bought})),B(()=>({multiplier:()=>i.pow(.5,Le.totalElves.value),description:"1 Elf Trained",enabled:Le.milestones[0].earned}))]),J=k(()=>te.apply(1)),Oe=X(()=>[ie(()=>({addend:1,description:"Automated Spade",enabled:w.bought})),ie(()=>({addend:()=>i.div(ke.amount.value,2),description:"Generic Planters",enabled:S.bought})),ie(()=>({addend:()=>i.div(tt.foundationProgress.value,10).floor(),description:"20% Foundation Completed",enabled:tt.milestones.autoPlantMilestone1.earned})),B(()=>({multiplier:2,description:"40% Foundation Completed",enabled:tt.milestones.autoPlantMilestone2.earned})),B(()=>({multiplier:2,description:"Warmer Planters",enabled:V.warmerPlanters.bought})),B(()=>({multiplier:V.computedHeatedPlanterEffect,description:"Heated Planters",enabled:()=>i.gt(V.heatedPlanters.amount.value,0)})),B(()=>({multiplier:4,description:"Lumberjack Plaid",enabled:kt.treesUpgrades.treesUpgrade3.bought}))]),ye=k(()=>Oe.apply(0)),We=X(()=>[B(()=>({multiplier:1.25,description:"Research I",enabled:v.bought})),B(()=>({multiplier:1.25,description:"Research II",enabled:S.bought})),B(()=>({multiplier:()=>i.div(tt.foundationProgress.value,20).add(1),description:"1% Foundation Completed",enabled:tt.milestones.logGainMilestone1.earned})),B(()=>({multiplier:2,description:"50% Foundation Completed",enabled:tt.milestones.logGainMilestone2.earned})),B(()=>({multiplier:1.25,description:"Ashy Soil",enabled:V.basicFertilizer.bought})),B(()=>({multiplier:V.computedFertilizerEffect,description:"Fertilized Soil",enabled:()=>i.gt(V.moreFertilizer.amount.value,0)})),B(()=>({multiplier:2,description:"4 Elves Trained",enabled:Le.milestones[3].earned})),B(()=>({multiplier:2,description:"Carry logs in boxes",enabled:ut.upgrades.logsUpgrade.bought})),B(()=>({multiplier:()=>i.div(ut.buyables.logBoxesBuyable.amount.value,2).add(1),description:"Carry more logs",enabled:ut.upgrades.logsUpgrade.bought})),li(()=>({exponent:1.2,description:"100% Foundation Completed",enabled:tt.milestones.logGainMilestone3.earned}))]),Ie=_e(0),Ce=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(Ie.value,Ae.value)})),Ee=we(()=>({display:{title:"Cut trees",description:x(()=>o(P,null,[p("Cut down up to "),le(i.floor(Ke.value))," ",p("tree"),i.eq(Ke.value,1)?"":"s",p(" at once!"),o("br",null,null),me(Ce)]))},style:{minHeight:"80px"},canClick:()=>i.gte(d.value,1)&&i.gte(Ie.value,Ae.value),onClick(){if(i.lt(Ie.value,Ae.value))return;const $=i.floor(i.min(d.value,i.times(Ke.value,i.div(Ie.value,Ae.value).floor())));l.value=i.add(l.value,i.times(We.apply(1),$)),a.value=i.add(a.value,$),Ie.value=0}})),Se=_e(0),ot=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(Se.value,J.value)})),ce=we(()=>({display:{title:"Plant trees",description:x(()=>o(P,null,[p("Plant up to "),le(i.floor(ne.value))," ",p("tree"),i.eq(ne.value,1)?"":"s",p(" at once!"),o("br",null,null),me(ot)]))},style:{minHeight:"80px"},canClick:()=>i.gte(a.value,1)&&i.gte(Se.value,J.value),onClick(){if(i.lt(Se.value,J.value))return;const $=i.floor(i.min(a.value,i.times(ne.value,i.div(Se.value,J.value).floor())));a.value=i.sub(a.value,$),Se.value=0}})),[qe,Nt]=ln(()=>[{title:"Logs per Tree",modifier:We,base:1,visible:v.bought},{title:"Manual Cutting Amount",modifier:H,base:1,visible:c.bought,unit:"/click"},{title:"Manual Cutting Cooldown",modifier:mt,base:1,visible:c.bought,unit:"s"},{title:"Manual Planting Amount",modifier:lt,base:1,visible:y.bought,unit:"/click"},{title:"Manual Planting Cooldown",modifier:te,base:1,visible:y.bought,unit:"s"},{title:"Auto Cutting Amount",modifier:be,base:0,visible:g.bought,unit:"/s"},{title:"Auto Planting Amount",modifier:Oe,base:0,visible:w.bought,unit:"/s"},{title:"Forest Size",modifier:r,base:10,visible:S.bought}]),rt=q(!1),F=x(()=>o(at,{modelValue:rt.value,"onUpdate:modelValue":$=>rt.value=$},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:qe}));Fe.on("update",$=>{if(i.lt(W.day.value,Al))return;i.gte(Ie.value,Ae.value)?Ie.value=Ae.value:(Ie.value=i.add(Ie.value,$),Ee.isHolding.value&&Ee.onClick()),i.gte(Se.value,J.value)?Se.value=J.value:(Se.value=i.add(Se.value,$),ce.isHolding.value&&ce.onClick());const Qt=i.min(d.value,i.times(Ue.value,$)),pt=i.mul(We.apply(1),Qt),Yt=i.div(pt,$);s.value=i.mul(Yt,Il).add(i.mul(s.value,i.dOne.sub(Il))),l.value=i.add(l.value,pt),a.value=i.add(a.value,Qt);const Dt=i.min(a.value,i.times(ye.value,$));a.value=i.sub(a.value,Dt)});const St=k(()=>i.sub(Ue.value,ye.value)),it=k(()=>i.sub(ye.value,Ue.value)),Ht=Qn(()=>({key:"c",description:'Press the "Cut trees" button.',onPress:()=>{Ee.canClick.value&&Ee.onClick()}})),Mt=Qn(()=>({key:"p",description:'Press the "Plant trees" button.',onPress:()=>{ce.canClick.value&&ce.onClick()}})),{total:Ft,trackerDisplay:Tt}=an({resource:l,goal:1e4,name:e,day:Al,color:n,modal:{show:rt,display:F}});return{name:e,color:t,logs:l,totalLogs:Ft,trees:d,saplings:a,cutTree:Ee,plantTree:ce,cutTreeHK:Ht,plantTreeHK:Mt,row1Upgrades:_,row2Upgrades:D,row1Buyables:se,manualCutProgress:Ie,manualPlantProgress:Se,generalTabCollapsed:Nt,minWidth:700,display:x(()=>o(P,null,[me(Tt),o(ge,null,null),o(ht,{resource:l,color:t,style:"margin-bottom: 0",productionDisplay:i.gt(Ue.value,0)?`+${ue(s.value)}/s average
equilibrium: +${Vl([[i.mul(We.apply(1),Ue.value),"cutting speed"],[i.mul(We.apply(1),ye.value),"planting speed"],[i.mul(We.apply(1),i.mul(m.value,20)),"forest cap"]],"/s")}`:void 0},null),o(ht,{resource:a,color:n,style:"margin-bottom: 0",productionDisplay:Gn(St.value)},null),o(ht,{resource:d,color:n,style:"margin-bottom: 0",productionDisplay:Gn(it.value)},null),o(ge,null,null),Pe(Ee,ce),o("div",null,[p("Tip: You can hold down on actions to perform them automatically")]),o(ge,null,null),Pe(..._),Pe(...D),Pe(...se)]))}});var si="./assets/tree.35808197.png",oi="./assets/sws.714ad454.png",ri="data:image/png;base64,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",ui="./assets/elf.9fbfa563.png",di="./assets/paperStacks.4c96ec8c.png",ci="data:image/png;base64,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",mi="./assets/metal.7407f5d1.png",pi="./assets/cloth.7bcd7f37.png";const W=Ct("main",function(){const e=_e(1),t=k(()=>(+new Date(new Date().getFullYear(),11,e.value)-L.time)/1e3),n=q(!1),l=q(-1),a=q(""),s=q();function r(c){const y=_e(!1),g=_e(!1);return st(()=>{const w=c(),v=Xe(w.shouldNotify),_=Xe(()=>u(v)||u(g));return{...w,opened:y,shouldNotify:_,recentlyUpdated:g,[Lt]:Ss,[Gt]:function(){const{day:N,layer:I,symbol:ae,opened:A,shouldNotify:S,story:D,completedStory:ve,recentlyUpdated:ke}=this;return{day:N,symbol:ae,opened:A,recentlyUpdated:ke,shouldNotify:S,onOpenLore(){var H,Ke;const Te=W.day.value>N;l.value=Te?N-1:-1;const se=u((Ke=(H=et[I!=null?I:"trees"])==null?void 0:H.name)!=null?Ke:"");a.value=Te?`${se} - Completed!`:se,s.value=Te?`${D}
${ve}`:D,n.value=!0},onOpenLayer(){if(ke.value=!1,window.matchMedia("(min-width: 1468px)").matches)if(L.tabs.includes(I!=null?I:"trees")){const Te=L.tabs.lastIndexOf(I!=null?I:"trees");L.tabs.splice(Te,1)}else L.tabs.push(I!=null?I:"trees"),W.minimized.value=!0;else L.tabs.splice(1,1/0,I!=null?I:"trees")},onUnlockLayer(){A.value=!0,setTimeout(()=>{var Te,se;l.value=-1,a.value=u((se=(Te=et[I!=null?I:"trees"])==null?void 0:Te.name)!=null?se:""),s.value=D,L.devSpeed=null,n.value=!0},1e3)}}}}})}const d=[r(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:si,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!",completedStory:"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!"})),r(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:oi,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!",completedStory:"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!"})),r(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:ri,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.",completedStory:"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!"})),r(()=>({day:4,shouldNotify:!1,layer:"elves",symbol:ui,story:"Alright, it seems you finally have enough things set up to start bringing in the elves! Unfortunately, it seems they'll need to be retrained on how to help, since they've stopped practicing for 11 months!",completedStory:"The workshop now hums with the bustling elves working on everything. They can take it from here - you deserve a break after such a long day! Good Job!"})),r(()=>({day:5,shouldNotify:!1,layer:"paper",symbol:di,story:"With the elves trained, we're almost ready to start working on these presents! Just a couple more pre-reqs first, starting with turning all this wood into wood pulp and finally into paper, which will be required for wrapping paper later on but in the meantime can be used to help write guides which will help these elves continue their education!",completedStory:"You look upon your rivers of book pulp as you hand out stacks of papers to elves to read through. You've continued getting closer and closer to preparing for Christmas, and can go to bed satisfied with your progress. Good Job!"})),r(()=>({day:6,shouldNotify:!1,layer:"boxes",symbol:ci,story:"You watch all these elves carrying incredibly large loads just in their open elf-sized hands, and realize there's probably a better way. You need to put the toys in boxes anyways, so why don't we get started working on those so the workers can take advantage as well?",completedStory:"Wow, those boxes are really convenient! The workshop feels more and more proper with every day. You tick another requirement on your list and start looking towards tomorrow. Good Job!"})),r(()=>({day:7,shouldNotify:!1,layer:"metal",symbol:mi,story:"You woke up ready to make some toys, before realizing most toys these days are made out of more than just wood! You're sure you're close to really getting to work, but there's a few more materials you're going to need - like metal! Lots of things need metal!",completedStory:"The sounds of drills and metal clanging join the already loud din as yet another piece of the puzzle fits into place. You're making solid progress, Good Job!"})),r(()=>({day:8,shouldNotify:!1,layer:"cloth",symbol:pi,story:"Another resource you're going to need for gifts is cloth! Fortunately you think this should be pretty easy to prepare using a sheep farm - and as you've already proven with the tree farm, that's something you can handle!",completedStory:"You fall into a pile of wool, sighing contentedly as you look at all the progress you've made today. Good Job!"})),r(()=>({day:9,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:10,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:11,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:12,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:13,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:14,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:15,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:16,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:17,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:18,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:19,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:20,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:21,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:22,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:23,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:24,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""}))];function m(){l.value=e.value-1,a.value="Day Complete!",s.value=d[e.value-1].completedStory,n.value=!0,e.value++,W.minimized.value=!1,L.devSpeed=0}return{name:"Calendar",days:d,day:e,timeUntilNewDay:t,loreScene:l,loreTitle:a,loreBody:s,showLoreModal:n,completeDay:m,minWidth:700,display:x(()=>o(P,null,[L.devSpeed===0?o("div",null,[p("Game Paused")]):null,L.devSpeed&&L.devSpeed!==1?o("div",null,[p("Dev Speed: "),ue(L.devSpeed),p("x")]):null,L.offlineTime?o("div",null,[p("Offline Time: "),Tn(L.offlineTime)]):null,o(ge,null,null),o("div",{class:"advent"},[d.reduce((c,y)=>(c[c.length-1].length===4&&c.push([]),c[c.length-1].push(y),c),[[]]).map(c=>Pe(...c))])]))}}),Po=e=>[W,oe,tt,V,Le,pe,ut,cn,kt],il=k(()=>!1);function Fo(e,t){t.offlineProd=!1}var To=Object.freeze(Object.defineProperty({__proto__:null,main:W,getInitialLayers:Po,hasWon:il,fixOldSave:Fo},Symbol.toStringTag,{value:"Module"}));const Do={class:"scene"},$o=["src"],Ro=["src"],Uo=["src"],Oo=["src"],qo=["src"],Vo=["src"],Lo={key:6,class:"scene-bubble",style:{left:"50%",bottom:"38%"}},Go=["src"],Ho=["src"],Qo=K({__name:"Scene",props:{day:null},setup(e){return(t,n)=>(b(),M("div",Do,[e.day>=7?(b(),M("img",{key:0,src:u(pi),class:"scene-item",style:{left:"4%",bottom:"3%",width:"40px",height:"40px"}},null,8,$o)):T("",!0),e.day>=0?(b(),M("img",{key:1,src:u(si),class:"scene-item",style:{left:"10%",bottom:"10%"}},null,8,Ro)):T("",!0),e.day>=1?(b(),M("img",{key:2,src:u(oi),class:"scene-item",style:{left:"40%",bottom:"12%"}},null,8,Uo)):T("",!0),e.day>=2?(b(),M("img",{key:3,src:u(ri),class:"scene-item",style:{left:"65%",bottom:"12%",width:"40px",height:"40px"}},null,8,Oo)):T("",!0),e.day>=6?(b(),M("img",{key:4,src:u(mi),class:"scene-item",style:{left:"72%",bottom:"8%",width:"40px",height:"40px"}},null,8,qo)):T("",!0),e.day>=3?(b(),M("img",{key:5,src:u(ui),class:"scene-item",style:{left:"52%",bottom:"12%"}},null,8,Vo)):T("",!0),e.day>=4?(b(),M("div",Lo,[e.day>=4?(b(),M("img",{key:0,src:u(di),class:"scene-item"},null,8,Go)):T("",!0),e.day>=5?(b(),M("img",{key:1,src:u(ci),class:"scene-item"},null,8,Ho)):T("",!0)])):T("",!0)]))}});var jo=he(Qo,[["__scopeId","data-v-217dad6a"]]);const zo=K({components:{Context:Hl},props:{index:{type:Number,required:!0},tab:{type:Function,required:!0},display:{type:U(Object,String,Function),required:!0},minimized:{type:Object,required:!0},minWidth:{type:U(Number,String),required:!0},name:{type:U(String),required:!0},color:U(String),minimizable:U(Boolean),nodes:{type:Object,required:!0}},setup(e){const{display:t,index:n,minimized:l,minWidth:a,tab:s}=Ze(e),r=En(t),d=k(()=>fe.allowGoBack&&n.value>0&&!l.value);function m(){L.tabs.splice(u(e.index),1)}Jt(()=>y(l.value,u(a.value))),bt([l,os(a)],([g,w])=>y(g,w));function c(g){e.nodes.value=g}function y(g,w){const v=typeof w=="number"||Number.isNaN(parseInt(w))?w+"px":w,_=s.value();_!=null&&(g?(_.style.flexGrow="0",_.style.flexShrink="0",_.style.width="60px",_.style.minWidth=_.style.flexBasis="",_.style.margin="0"):(_.style.flexGrow="",_.style.flexShrink="",_.style.width="",_.style.minWidth=_.style.flexBasis=v,_.style.margin=""))}return{component:r,showGoBack:d,updateNodes:c,unref:u,goBack:m}}});function Ko(e,t,n,l,a,s){const r=qt("Context");return b(),M("div",{class:"layer-container",style:He({"--layer-color":e.unref(e.color)})},[e.showGoBack?(b(),M("button",{key:0,class:"goBack",onClick:t[0]||(t[0]=(...d)=>e.goBack&&e.goBack(...d))},"\u274C")):T("",!0),e.minimized.value?(b(),M("button",{key:1,class:"layer-tab minimized",onClick:t[1]||(t[1]=d=>e.minimized.value=!1)},[f("div",null,Y(e.unref(e.name)),1)])):(b(),M("div",{key:2,class:Re(["layer-tab",{showGoBack:e.showGoBack}])},[o(r,{onUpdateNodes:e.updateNodes},{default:Q(()=>[(b(),j(Me(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(b(),M("button",{key:3,class:"minimize",onClick:t[2]||(t[2]=d=>e.minimized.value=!0)}," \u25BC ")):T("",!0)],4)}var Wo=he(zo,[["render",Ko],["__scopeId","data-v-0158bec3"]]);const fi=e=>(Bt("data-v-4b4bda40"),e=e(),xt(),e),Jo=fi(()=>f("h2",null,"Changelog",-1)),Xo=fi(()=>f("details",{open:""},[f("summary",null,[p("v0.0 Initial Commit - "),f("time",null,"2021-09-04")]),p(" This is the first release :D "),f("ul",null,[f("li",{class:"feature"},"Did everything"),f("li",{class:"fix"},"Had some fun"),f("li",{class:"breaking"},"Removed everything"),f("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),Yo=K({__name:"Changelog",setup(e,{expose:t}){const n=q(!1);return t({open(){n.value=!0}}),(l,a)=>(b(),j(at,{modelValue:n.value,"onUpdate:modelValue":a[0]||(a[0]=s=>n.value=s)},{header:Q(()=>[Jo]),body:Q(()=>[Xo]),_:1},8,["modelValue"]))}});var Zo=he(Yo,[["__scopeId","data-v-4b4bda40"]]),er=K({props:{element:Object,display:{type:U(Object,String,Function),required:!0},style:U(Object,String,Array),classes:U(Object),direction:U(String),xoffset:U(String),yoffset:U(String),pinned:Object},setup(e){const{element:t,display:n,pinned:l}=Ze(e),a=q(!1),s=k(()=>(ze(l)||a.value)&&r.value),r=Vt(n),d=ft(de(x(()=>{const y=ze(t);return y==null?"":yt(y)})));function m(y){const g=l;y.shiftKey&&g&&(g.value=!g.value,y.stopPropagation(),y.preventDefault())}const c=k(()=>ze(l)&&vn[xe.theme].showPin);return{Direction:re,isHovered:a,isShown:s,comp:r,elementComp:d,unref:u,togglePinned:m,showPin:c}}});const tr={key:0,class:"material-icons pinned"};function nr(e,t,n,l,a,s){return b(),M("div",{class:Re(["tooltip-container",{shown:e.isShown}]),onMouseenter:t[0]||(t[0]=r=>e.isHovered=!0),onMouseleave:t[1]||(t[1]=r=>e.isHovered=!1),onClickCapture:t[2]||(t[2]=(...r)=>e.togglePinned&&e.togglePinned(...r))},[_t(e.$slots,"default",{},void 0,!0),e.elementComp?(b(),j(Me(e.elementComp),{key:0})):T("",!0),o(Pn,{name:"fade"},{default:Q(()=>{var r;return[e.isShown?(b(),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:He([{"--xoffset":e.unref(e.xoffset)||"0px","--yoffset":e.unref(e.yoffset)||"0px"},(r=e.unref(e.style))!=null?r:{}])},[e.showPin?(b(),M("span",tr,"push_pin")):T("",!0),e.comp?(b(),j(Me(e.comp),{key:1})):T("",!0)],6)):T("",!0)]}),_:1})],34)}var Ve=he(er,[["render",nr],["__scopeId","data-v-6102fa3a"]]);const lr={class:"info-modal-header"},ir=["src","alt"],ar={class:"info-modal-title"},sr={key:0},or={key:0},rr={key:0},ur=f("div",null," Made in Profectus, by thepaperpilot with inspiration from Acameada and Jacorb ",-1),dr=f("br",null,null,-1),cr=f("br",null,null,-1),mr=["href"],pr=f("span",{class:"material-icons info-modal-discord"},"discord",-1),fr=f("div",null,[f("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[f("span",{class:"material-icons info-modal-discord"},"discord"),p(" The Paper Pilot Community ")])],-1),hr=f("div",null,[f("a",{href:"https://discord.gg/F3xveHV",class:"info-modal-discord-link",target:"_blank"},[f("span",{class:"material-icons info-modal-discord"},"discord"),p(" The Modding Tree ")])],-1),gr=f("br",null,null,-1);var vr=K({__name:"Info",props:{changelog:null},setup(e,{expose:t}){const n=e,{title:l,logo:a,author:s,discordName:r,discordLink:d,versionNumber:m,versionTitle:c}=fe,y=Ze(n),g=q(!1),w=k(()=>Tn(L.timePlayed)),v=k(()=>de(x(()=>o(P,null,[Zl.map(me)]))));t({open(){g.value=!0}});function _(){var N;(N=u(y.changelog))==null||N.open()}return(N,I)=>(b(),j(at,{modelValue:g.value,"onUpdate:modelValue":I[0]||(I[0]=ae=>g.value=ae)},{header:Q(()=>[f("div",lr,[u(a)?(b(),M("img",{key:0,class:"info-modal-logo",src:u(a),alt:u(l)},null,8,ir)):T("",!0),f("div",ar,[f("h2",null,Y(u(l)),1),f("h4",null,[p(" v"+Y(u(m)),1),u(c)?(b(),M("span",sr,": "+Y(u(c)),1)):T("",!0)])])])]),body:Q(({shown:ae})=>[ae?(b(),M("div",or,[u(s)?(b(),M("div",rr,"By "+Y(u(s)),1)):T("",!0),ur,dr,f("div",{class:"link",onClick:_},"Changelog"),cr,f("div",null,[u(d)?(b(),M("a",{key:0,href:u(d),class:"info-modal-discord-link",target:"_blank"},[pr,p(" "+Y(u(r)),1)],8,mr)):T("",!0)]),fr,hr,gr,f("div",null,"Time Played: "+Y(u(w)),1),(b(),j(Me(u(v))))])):T("",!0)]),_:1},8,["modelValue"]))}});const hi=e=>(Bt("data-v-a03c577c"),e=e(),xt(),e),yr=hi(()=>f("div",{class:"header"},[f("h2",null,"Options")],-1)),br=hi(()=>f("hr",null,null,-1));var wr=K({__name:"Options",setup(e,{expose:t}){const n=q(!1);t({open(){n.value=!0}});const l=Object.keys(vn).map(v=>({label:Ll(v),value:v})),a=k(()=>de(x(()=>o(P,null,[Yl.map(me)])))),{showTPS:s,theme:r}=Ze(xe),{autosave:d,usingLog:m}=Ze(L),c=k({get(){return L.devSpeed===0},set(v){L.devSpeed=v?0:null}}),y=x(()=>o("span",null,[p("Autosave"),o(Ve,{display:"Save-specific"},{default:()=>[p("*")]})])),g=x(()=>o("span",null,[p("Pause game"),o(Ve,{display:"Save-specific"},{default:()=>[p("*")]})])),w=x(()=>o("span",null,[p("Use log for progress bar"),o(Ve,{display:"Save-specific"},{default:()=>[p("*")]})]));return(v,_)=>(b(),j(at,{modelValue:n.value,"onUpdate:modelValue":_[5]||(_[5]=N=>n.value=N)},{header:Q(()=>[yr]),body:Q(()=>[o(ll,{title:"Theme",options:u(l),modelValue:u(r),"onUpdate:modelValue":_[0]||(_[0]=N=>Ge(r)?r.value=N:null)},null,8,["options","modelValue"]),(b(),j(Me(u(a)))),o(At,{title:"Show TPS",modelValue:u(s),"onUpdate:modelValue":_[1]||(_[1]=N=>Ge(s)?s.value=N:null)},null,8,["modelValue"]),br,o(At,{title:u(y),modelValue:u(d),"onUpdate:modelValue":_[2]||(_[2]=N=>Ge(d)?d.value=N:null)},null,8,["title","modelValue"]),u(fe).enablePausing?(b(),j(At,{key:0,title:u(g),modelValue:u(c),"onUpdate:modelValue":_[3]||(_[3]=N=>Ge(c)?c.value=N:null)},null,8,["title","modelValue"])):T("",!0),o(At,{title:u(w),modelValue:u(m),"onUpdate:modelValue":_[4]||(_[4]=N=>Ge(m)?m.value=N:null)},null,8,["title","modelValue"])]),_:1},8,["modelValue"]))}});var _r=he(wr,[["__scopeId","data-v-a03c577c"]]);const kr=["onSubmit"],Cr={class:"field"},Nr={key:0,class:"field-title"},Sr=["placeholder"],Mr=K({__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,l=Vt(wt(n,"title"),"span"),a=ft(null);Bn(()=>{var m;(m=a.value)==null||m.focus()});const s=k({get(){return u(n.modelValue)||""},set(m){t("update:modelValue",m)}});function r(){t("submit")}function d(){n.submitOnBlur!==!1?t("submit"):t("cancel")}return(m,c)=>(b(),M("form",{onSubmit:mn(r,["prevent"])},[f("div",Cr,[u(l)?(b(),M("span",Nr,[(b(),j(Me(u(l))))])):T("",!0),e.textArea?(b(),j(u($i),{key:1,modelValue:u(s),"onUpdate:modelValue":c[0]||(c[0]=y=>Ge(s)?s.value=y:null),placeholder:e.placeholder,maxHeight:e.maxHeight,onBlur:d,ref_key:"field",ref:a},null,8,["modelValue","placeholder","maxHeight"])):xn((b(),M("input",{key:2,type:"text","onUpdate:modelValue":c[1]||(c[1]=y=>Ge(s)?s.value=y:null),placeholder:e.placeholder,class:Re({fullWidth:!e.title}),onBlur:d,ref_key:"field",ref:a},null,42,Sr)),[[Bi,u(s)]])])],40,kr))}});var gi=he(Mr,[["__scopeId","data-v-67b44a54"]]);const Ar={key:0},Ir=["onClick","disabled"],Er={key:0},Br=["onClick"],xr=K({__name:"DangerButton",props:{disabled:{type:Boolean},skipConfirm:{type:Boolean}},emits:["click","confirmingChanged"],setup(e,{emit:t}){const l=Ze(e),a=q(!1);bt(a,d=>{t("confirmingChanged",d)});function s(){if(u(l.skipConfirm)){t("click");return}a.value&&t("click"),a.value=!a.value}function r(){a.value=!1}return(d,m)=>(b(),M("span",{class:Re(["container",{confirming:a.value}])},[a.value?(b(),M("span",Ar,"Are you sure?")):T("",!0),f("button",{onClick:mn(s,["stop"]),class:"button danger",disabled:e.disabled},[a.value?(b(),M("span",Er,"Yes")):_t(d.$slots,"default",{key:1},void 0,!0)],8,Ir),a.value?(b(),M("button",{key:1,class:"button",onClick:mn(r,["stop"])},"No",8,Br)):T("",!0)],2))}});var Pr=he(xr,[["__scopeId","data-v-2f8ef34c"]]);const Fr=["onClick"],Tr=K({__name:"FeedbackButton",props:{left:{type:Boolean}},emits:["click"],setup(e,{emit:t}){const n=q(!1),l=q(null);function a(){t("click"),l.value&&clearTimeout(l.value),n.value=!1,Jt(()=>{n.value=!0,l.value=setTimeout(()=>n.value=!1,500)})}return(s,r)=>(b(),M("button",{onClick:mn(a,["stop"]),class:Re(["feedback",{activated:n.value,left:e.left}])},[_t(s.$slots,"default",{},void 0,!0)],10,Fr))}});var Dr=he(Tr,[["__scopeId","data-v-01a1b95c"]]);const Pt=e=>(Bt("data-v-5285ac49"),e=e(),xt(),e),$r=Pt(()=>f("div",{class:"handle material-icons"},"drag_handle",-1)),Rr={key:0,class:"actions"},Ur=Pt(()=>f("span",{class:"material-icons"},"content_paste",-1)),Or=Pt(()=>f("span",{class:"material-icons"},"content_copy",-1)),qr=Pt(()=>f("span",{class:"material-icons"},"edit",-1)),Vr=Pt(()=>f("span",{class:"material-icons",style:{margin:"-2px"}},"delete",-1)),Lr={key:1,class:"actions"},Gr=Pt(()=>f("span",{class:"material-icons"},"check",-1)),Hr=Pt(()=>f("span",{class:"material-icons"},"close",-1)),Qr={key:2,class:"details"},jr={class:"save-version"},zr=Pt(()=>f("br",null,null,-1)),Kr={key:0},Wr={key:1},Jr={key:3,class:"details"},Xr={key:4,class:"details error"},Yr=Pt(()=>f("br",null,null,-1)),Zr=K({__name:"Save",props:{save:null},emits:["export","open","duplicate","delete","editName"],setup(e,{emit:t}){const n=e,{save:l}=Ze(n),a=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),s=q(!1),r=q(!1),d=q("");bt(s,()=>d.value=l.value.name||"");const m=k(()=>l.value&&l.value.id===L.id),c=k(()=>m.value?L.time:l.value&&l.value.time||0),y=En(k(()=>{var w,v,_,N;return`Day ${(N=(_=(v=(w=l.value)==null?void 0:w.layers)==null?void 0:v.main)==null?void 0:_.day)!=null?N:1}`}));function g(){t("editName",d.value),s.value=!1}return(w,v)=>(b(),M("div",{class:Re(["save",{active:u(m)}])},[$r,s.value?(b(),M("div",Lr,[f("button",{onClick:g,class:"button"},[o(Ve,{display:"Save",direction:u(re).Left,class:"info"},{default:Q(()=>[Gr]),_:1},8,["direction"])]),f("button",{onClick:v[5]||(v[5]=_=>s.value=!s.value),class:"button"},[o(Ve,{display:"Cancel",direction:u(re).Left,class:"info"},{default:Q(()=>[Hr]),_:1},8,["direction"])])])):(b(),M("div",Rr,[u(l).error==null&&!r.value?(b(),j(Dr,{key:0,onClick:v[0]||(v[0]=_=>t("export")),class:"button",left:""},{default:Q(()=>[o(Ve,{display:"Export",direction:u(re).Left,class:"info"},{default:Q(()=>[Ur]),_:1},8,["direction"])]),_:1})):T("",!0),u(l).error==null&&!r.value?(b(),M("button",{key:1,onClick:v[1]||(v[1]=_=>t("duplicate")),class:"button"},[o(Ve,{display:"Duplicate",direction:u(re).Left,class:"info"},{default:Q(()=>[Or]),_:1},8,["direction"])])):T("",!0),u(l).error==null&&!r.value?(b(),M("button",{key:2,onClick:v[2]||(v[2]=_=>s.value=!s.value),class:"button"},[o(Ve,{display:"Edit Name",direction:u(re).Left,class:"info"},{default:Q(()=>[qr]),_:1},8,["direction"])])):T("",!0),o(Pr,{disabled:u(m),onClick:v[3]||(v[3]=_=>t("delete")),onConfirmingChanged:v[4]||(v[4]=_=>r.value=_)},{default:Q(()=>[o(Ve,{display:"Delete",direction:u(re).Left,class:"info"},{default:Q(()=>[Vr]),_:1},8,["direction"])]),_:1},8,["disabled"])])),u(l).error==null&&!s.value?(b(),M("div",Qr,[f("button",{class:"button open",onClick:v[6]||(v[6]=_=>t("open"))},[f("h3",null,Y(u(l).name),1)]),f("span",jr,"v"+Y(u(l).modVersion),1),zr,u(c)?(b(),M("div",Kr,"Last played "+Y(u(a).format(u(c))),1)):T("",!0),u(y)?(b(),M("div",Wr,[(b(),j(Me(u(y))))])):T("",!0)])):u(l).error==null&&s.value?(b(),M("div",Jr,[o(gi,{modelValue:d.value,"onUpdate:modelValue":v[7]||(v[7]=_=>d.value=_),class:"editname",onSubmit:g},null,8,["modelValue"])])):(b(),M("div",Xr,[p(" Error: Failed to load save with id "+Y(u(l).id),1),Yr,p(Y(u(l).error),1)]))],2))}});var eu=he(Zr,[["__scopeId","data-v-5285ac49"]]);const al=e=>(Bt("data-v-3b9991aa"),e=e(),xt(),e),tu=al(()=>f("h2",null,"Saves Manager",-1)),nu={class:"modal-footer"},lu={class:"field"},iu=al(()=>f("span",{class:"field-title"},"Create Save",-1)),au={class:"field-buttons"},su={class:"footer"},ou=al(()=>f("div",{style:{"flex-grow":"1"}},null,-1)),ru=K({__name:"SavesManager",setup(e,{expose:t}){const n=q(!1),l=q(null);t({open(){n.value=!0}});const a=q(!1),s=q(""),r=q(null);bt(s,A=>{A?Jt(()=>{try{if(A[0]!=="{")if(A[0]==="e")A=decodeURIComponent(escape(atob(A)));else if(A[0]==="\u1BE1")A=Rt.decompressFromUTF16(A);else{console.warn("Unable to determine preset encoding",A),a.value=!0;return}const S=JSON.parse(A);if(typeof S!="object"){a.value=!0;return}const D=Nn();S.id=D,vt(S),s.value="",a.value=!1,xe.saves.push(D)}catch{a.value=!0}}):a.value=!1});let d={},m=q(Object.keys(d).reduce((A,S)=>(A.push({label:S.split("/").slice(-1)[0].slice(0,-4),value:d[S]}),A),[]));const c=Fn({});function y(A){if(c[A]==null){let S=localStorage.getItem(A);if(S==null)c[A]={error:"Save doesn't exist in localStorage",id:A};else if(S==="dW5kZWZpbmVk")c[A]={error:"Save is undefined",id:A};else try{if(S[0]!=="{")if(S[0]==="e")S=decodeURIComponent(escape(atob(S)));else if(S[0]==="\u1BE1")S=Rt.decompressFromUTF16(S);else return console.warn("Unable to determine preset encoding",S),a.value=!0,c[A]={error:"Unable to determine preset encoding",id:A},c[A];c[A]={...JSON.parse(S),id:A}}catch(D){c[A]={error:D,id:A},console.warn(`SavesManager: Failed to load info about save with id ${A}: -${D} -${S}`)}}return c[A]}bt(n,A=>{A&&Object.keys(c).forEach(S=>delete c[S])});const g=k(()=>xe.saves.reduce((A,S)=>(A[S]=y(S),A),{}));function w(A){let S;switch(L.id===A?S=Wl(L[Be]):S=JSON.stringify(g.value[A]),fe.exportEncoding){default:console.warn(`Unknown save encoding: ${fe.exportEncoding}. Defaulting to lz`);case"lz":S=Rt.compressToUTF16(S);break;case"base64":S=btoa(unescape(encodeURIComponent(S)));break;case"plain":break}const D=document.createElement("textarea");D.value=S,document.body.appendChild(D),D.select(),D.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(D)}function v(A){L.id===A&&vt();const S={...g.value[A],id:Nn()};vt(S),xe.saves.push(S.id)}function _(A){xe.saves=xe.saves.filter(S=>S!==A),localStorage.removeItem(A),c[A]=void 0}function N(A){g.value[L.id].time=L.time,vt(),c[L.id]=void 0,Kt(g.value[A]),c[A]=void 0}function I(A){if(r.value=A,Jt(()=>{r.value=null}),A[0]!=="{")if(A[0]==="e")A=decodeURIComponent(escape(atob(A)));else if(A[0]==="\u1BE1")A=Rt.decompressFromUTF16(A);else{console.warn("Unable to determine preset encoding",A);return}const S=JSON.parse(A);S.id=Nn(),vt(S),xe.saves.push(S.id),N(S.id)}function ae(A,S){const D=g.value[A];D&&(D.name=S,L.id===A?(L.name=S,vt()):(vt(D),c[A]=void 0))}return(A,S)=>(b(),j(at,{modelValue:n.value,"onUpdate:modelValue":S[4]||(S[4]=D=>n.value=D),ref_key:"modal",ref:l},{header:Q(()=>[tu]),body:Q(({shown:D})=>[D?(b(),j(u(Di),{key:0,list:u(xe).saves,handle:".handle",itemKey:ve=>ve},{item:Q(({element:ve})=>[o(eu,{save:u(g)[ve],onOpen:ke=>N(ve),onExport:ke=>w(ve),onEditName:ke=>ae(ve,ke),onDuplicate:ke=>v(ve),onDelete:ke=>_(ve)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):T("",!0)]),footer:Q(()=>[f("div",nu,[o(gi,{modelValue:s.value,"onUpdate:modelValue":S[0]||(S[0]=D=>s.value=D),title:"Import Save",placeholder:"Paste your save here!",class:Re({importingFailed:a.value})},null,8,["modelValue","class"]),f("div",lu,[iu,f("div",au,[f("button",{class:"button",onClick:S[1]||(S[1]=D=>N(u(tn)().id))},"New Game"),Object.keys(u(m)).length>0?(b(),j(ll,{key:0,options:u(m),modelValue:r.value,"onUpdate:modelValue":S[2]||(S[2]=D=>I(D)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):T("",!0)])]),f("div",su,[ou,f("button",{class:"button modal-default-button",onClick:S[3]||(S[3]=D=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var vi=he(ru,[["__scopeId","data-v-3b9991aa"]]);const ct=e=>(Bt("data-v-4a3f8425"),e=e(),xt(),e),uu=["src","alt"],du={key:1,class:"title"},cu=ct(()=>f("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),mu={class:"discord"},pu={class:"discord-links"},fu={key:0},hu=["href"],gu=ct(()=>f("li",null,[f("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),vu=ct(()=>f("li",null,[f("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),yu={href:"https://forums.moddingtree.com/",target:"_blank"},bu=ct(()=>f("span",{class:"material-icons"},"forum",-1)),wu=ct(()=>f("span",{class:"material-icons"},"info",-1)),_u=ct(()=>f("span",{class:"material-icons"},"library_books",-1)),ku=ct(()=>f("span",{class:"material-icons"},"settings",-1)),Cu=ct(()=>f("span",{class:"material-icons"},"library_books",-1)),Nu=ct(()=>f("span",{class:"material-icons"},"settings",-1)),Su=ct(()=>f("span",{class:"material-icons"},"info",-1)),Mu={href:"https://forums.moddingtree.com/",target:"_blank"},Au=ct(()=>f("span",{class:"material-icons"},"forum",-1)),Iu={class:"discord"},Eu={class:"discord-links"},Bu={key:0},xu=["href"],Pu=ct(()=>f("li",null,[f("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),Fu=ct(()=>f("li",null,[f("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),Tu=K({__name:"Nav",setup(e){const t=q(null),n=q(null),l=q(null),a=q(null),{useHeader:s,banner:r,title:d,discordName:m,discordLink:c,versionNumber:y}=fe;function g(){window.open(c,"mywindow")}return(w,v)=>(b(),M(P,null,[u(s)?(b(),M("div",Xt({key:0,class:"nav"},w.$attrs),[u(r)?(b(),M("img",{key:0,src:u(r),class:"banner",alt:u(d)},null,8,uu)):(b(),M("div",du,Y(u(d)),1)),f("div",{onClick:v[0]||(v[0]=_=>{var N;return(N=a.value)==null?void 0:N.open()}),class:"version-container"},[o(Ve,{display:"Changelog",direction:u(re).Down,class:"version"},{default:Q(()=>[f("span",null,"v"+Y(u(y)),1)]),_:1},8,["direction"])]),cu,f("div",mu,[f("span",{onClick:g,class:"material-icons"},"discord"),f("ul",pu,[u(c)?(b(),M("li",fu,[f("a",{href:u(c),target:"_blank"},Y(u(m)),9,hu)])):T("",!0),gu,vu])]),f("div",null,[f("a",yu,[o(Ve,{display:"Forums",direction:u(re).Down,yoffset:"5px"},{default:Q(()=>[bu]),_:1},8,["direction"])])]),f("div",{onClick:v[1]||(v[1]=_=>{var N;return(N=t.value)==null?void 0:N.open()})},[o(Ve,{display:"Info",direction:u(re).Down,class:"info"},{default:Q(()=>[wu]),_:1},8,["direction"])]),f("div",{onClick:v[2]||(v[2]=_=>{var N;return(N=n.value)==null?void 0:N.open()})},[o(Ve,{display:"Saves",direction:u(re).Down,xoffset:"-20px"},{default:Q(()=>[_u]),_:1},8,["direction"])]),f("div",{onClick:v[3]||(v[3]=_=>{var N;return(N=l.value)==null?void 0:N.open()})},[o(Ve,{display:"Options",direction:u(re).Down,xoffset:"-66px"},{default:Q(()=>[ku]),_:1},8,["direction"])])],16)):(b(),M("div",Xt({key:1,class:"overlay-nav"},w.$attrs),[f("div",{onClick:v[4]||(v[4]=_=>{var N;return(N=a.value)==null?void 0:N.open()}),class:"version-container"},[o(Ve,{display:"Changelog",direction:u(re).Right,xoffset:"25%",class:"version"},{default:Q(()=>[f("span",null,"v"+Y(u(y)),1)]),_:1},8,["direction"])]),f("div",{onClick:v[5]||(v[5]=_=>{var N;return(N=n.value)==null?void 0:N.open()})},[o(Ve,{display:"Saves",direction:u(re).Right},{default:Q(()=>[Cu]),_:1},8,["direction"])]),f("div",{onClick:v[6]||(v[6]=_=>{var N;return(N=l.value)==null?void 0:N.open()})},[o(Ve,{display:"Options",direction:u(re).Right},{default:Q(()=>[Nu]),_:1},8,["direction"])]),f("div",{onClick:v[7]||(v[7]=_=>{var N;return(N=t.value)==null?void 0:N.open()})},[o(Ve,{display:"Info",direction:u(re).Right},{default:Q(()=>[Su]),_:1},8,["direction"])]),f("div",null,[f("a",Mu,[o(Ve,{display:"Forums",direction:u(re).Right,xoffset:"7px"},{default:Q(()=>[Au]),_:1},8,["direction"])])]),f("div",Iu,[f("span",{onClick:g,class:"material-icons"},"discord"),f("ul",Eu,[u(c)?(b(),M("li",Bu,[f("a",{href:u(c),target:"_blank"},Y(u(m)),9,xu)])):T("",!0),Pu,Fu])])],16)),o(vr,{ref_key:"info",ref:t,changelog:a.value},null,8,["changelog"]),o(vi,{ref_key:"savesManager",ref:n},null,512),o(_r,{ref_key:"options",ref:l},null,512),o(Zo,{ref_key:"changelog",ref:a},null,512)],64))}});var yi=he(Tu,[["__scopeId","data-v-4a3f8425"]]);const sl=e=>(Bt("data-v-248e2ebb"),e=e(),xt(),e),Du={class:"inner-tab"},$u={key:1},Ru=sl(()=>f("br",null,null,-1)),Uu=p(" You can help continue the "),Ou=sl(()=>f("i",null,"advent",-1)),qu=p("ure at: "),Vu=sl(()=>f("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[f("span",{class:"material-icons info-modal-discord"},"discord"),p(" The Paper Pilot Community ")],-1)),Lu=K({__name:"Game",setup(e){const t=wt(L,"tabs"),n=k(()=>Object.keys(et)),l=fe.useHeader,a=Vt(W.loreBody);function s(r){const{display:d,minimized:m,minWidth:c,name:y,color:g,minimizable:w,nodes:v}=r;return{display:d,minimized:m,minWidth:c,name:y,color:g,minimizable:w,nodes:v}}return(r,d)=>(b(),M("div",{class:Re(["tabs-container",{useHeader:u(l)}])},[(b(!0),M(P,null,xl(u(t),(m,c)=>{var y,g;return b(),M("div",{key:c,class:Re(["tab",u((y=u(et)[m])==null?void 0:y.classes)]),ref_for:!0,ref:`tab-${c}`,style:He(u((g=u(et)[m])==null?void 0:g.style))},[c===0&&!u(l)?(b(),j(yi,{key:0})):T("",!0),f("div",Du,[u(n).includes(m)?(b(),j(Wo,Xt({key:0},s(u(et)[m]),{index:c,tab:()=>{var w;return(w=r.$refs[`tab-${c}`])==null?void 0:w[0]}}),null,16,["index","tab"])):(b(),j(Me(m),{key:1,index:c},null,8,["index"]))])],6)}),128)),o(at,{modelValue:u(W).showLoreModal.value,"onUpdate:modelValue":d[0]||(d[0]=m=>u(W).showLoreModal.value=m)},{header:Q(()=>[f("h2",null,Y(u(W).loreTitle.value),1)]),body:Q(()=>[u(a)?(b(),j(Me(u(a)),{key:0})):T("",!0),u(W).loreScene.value!==-1?(b(),M("div",$u,[o(jo,{day:u(W).loreScene.value},null,8,["day"]),Ru,Uu,Ou,qu,Vu])):T("",!0)]),_:1},8,["modelValue"])],2))}});var Gu=he(Lu,[["__scopeId","data-v-248e2ebb"]]);const wn=e=>(Bt("data-v-4a50ce42"),e=e(),xt(),e),Hu={class:"game-over-modal-header"},Qu=["src","alt"],ju={class:"game-over-modal-title"},zu=wn(()=>f("h2",null,"Congratulations!",-1)),Ku={key:0},Wu=wn(()=>f("br",null,null,-1)),Ju=wn(()=>f("div",null," Please check the Discord to discuss the game or to check for new content updates! ",-1)),Xu=wn(()=>f("br",null,null,-1)),Yu=["href"],Zu=wn(()=>f("span",{class:"material-icons game-over-modal-discord"},"discord",-1)),ed=K({__name:"GameOverScreen",setup(e){const{title:t,logo:n,discordName:l,discordLink:a,versionNumber:s,versionTitle:r}=fe,d=k(()=>Tn(L.timePlayed)),m=k(()=>il.value&&!L.keepGoing),c=wt(L,"autosave");function y(){L.keepGoing=!0}function g(){Kt(tn())}return(w,v)=>(b(),j(at,{"model-value":u(m)},{header:Q(()=>[f("div",Hu,[u(n)?(b(),M("img",{key:0,class:"game-over-modal-logo",src:u(n),alt:u(t)},null,8,Qu)):T("",!0),f("div",ju,[zu,f("h4",null,"You've beaten "+Y(u(t))+" v"+Y(u(s))+": "+Y(u(r)),1)])])]),body:Q(({shown:_})=>[_?(b(),M("div",Ku,[f("div",null,"It took you "+Y(u(d))+" to beat the game.",1),Wu,Ju,Xu,f("div",null,[f("a",{href:u(a),class:"game-over-modal-discord-link"},[Zu,p(" "+Y(u(l)),1)],8,Yu)]),o(At,{title:"Autosave",modelValue:u(c),"onUpdate:modelValue":v[0]||(v[0]=N=>Ge(c)?c.value=N:null)},null,8,["modelValue"])])):T("",!0)]),footer:Q(()=>[f("div",{class:"game-over-footer"},[f("button",{onClick:y,class:"button"},"Keep Going"),f("button",{onClick:g,class:"button danger"},"Play Again")])]),_:1},8,["model-value"]))}});var td=he(ed,[["__scopeId","data-v-4a50ce42"]]);const Un=e=>(Bt("data-v-3de07c06"),e=e(),xt(),e),nd=Un(()=>f("div",{class:"nan-modal-header"},[f("h2",null,"NaN value detected!")],-1)),ld={key:0},id=Un(()=>f("br",null,null,-1)),ad=["href"],sd=Un(()=>f("span",{class:"material-icons nan-modal-discord"},"discord",-1)),od=Un(()=>f("br",null,null,-1)),rd={class:"nan-footer"},ud=K({__name:"NaNScreen",setup(e){const{discordName:t,discordLink:n}=fe,l=wt(L,"autosave"),a=wt(De,"hasNaN"),s=q(null),r=k(()=>{var v;return(v=De.NaNPath)==null?void 0:v.join(".")}),d=k(()=>{var v;return(v=De.NaNPath)==null?void 0:v.slice(-1)[0]}),m=k(()=>De.NaNReceiver&&d.value?De.NaNReceiver[d.value]:null),c=k({get(){return L.devSpeed===0},set(v){L.devSpeed=v?null:0}});function y(){De.NaNReceiver&&d.value&&(De.NaNReceiver[d.value]=new i(0),De.hasNaN=!1)}function g(){De.NaNReceiver&&d.value&&(De.NaNReceiver[d.value]=new i(1),De.hasNaN=!1)}function w(){De.NaNReceiver&&d.value&&(De.NaNReceiver[d.value]=new i(NaN),De.hasNaN=!1)}return(v,_)=>(b(),M(P,null,[o(at,Xt({modelValue:u(a),"onUpdate:modelValue":_[4]||(_[4]=N=>Ge(a)?a.value=N:null)},v.$attrs),{header:Q(()=>[nd]),body:Q(()=>[f("div",null,[p(' Attempted to assign "'+Y(u(r))+'" to NaN',1),u(m)?(b(),M("span",ld,Y(" ")+"(previously "+Y(u(ue)(u(m)))+")",1)):T("",!0),p(". Auto-saving has been "+Y(u(l)?"enabled":"disabled")+". Check the console for more details, and consider sharing it with the developers on discord. ",1)]),id,f("div",null,[f("a",{href:u(n),class:"nan-modal-discord-link"},[sd,p(" "+Y(u(t)),1)],8,ad)]),od,o(At,{title:"Autosave",modelValue:u(l),"onUpdate:modelValue":_[0]||(_[0]=N=>Ge(l)?l.value=N:null)},null,8,["modelValue"]),u(fe).enablePausing?(b(),j(At,{key:0,title:"Pause game",modelValue:u(c),"onUpdate:modelValue":_[1]||(_[1]=N=>Ge(c)?c.value=N:null)},null,8,["modelValue"])):T("",!0)]),footer:Q(()=>[f("div",rd,[f("button",{onClick:_[2]||(_[2]=N=>{var I;return(I=s.value)==null?void 0:I.open()}),class:"button"},"Open Saves Manager"),f("button",{onClick:y,class:"button"},"Set to 0"),f("button",{onClick:g,class:"button"},"Set to 1"),u(m)&&u(i).neq(u(m),0)&&u(i).neq(u(m),1)?(b(),M("button",{key:0,onClick:_[3]||(_[3]=N=>a.value=!1),class:"button"}," Set to previous ")):T("",!0),f("button",{onClick:w,class:"button danger"},"Ignore")])]),_:1},16,["modelValue"]),o(vi,{ref_key:"savesManager",ref:s},null,512)],64))}});var dd=he(ud,[["__scopeId","data-v-3de07c06"]]);const cd={key:0,class:"tpsDisplay"},md={key:0,class:"low"},pd=K({__name:"TPS",setup(e){const t=k(()=>i.div(De.lastTenTicks.length,De.lastTenTicks.reduce((s,r)=>s+r,0))),n=q([]);dt(()=>{n.value.push(Math.round(t.value.toNumber())),n.value.length>10&&(n.value=n.value.slice(1))});const l=k(()=>n.value.reduce((s,r)=>i.max(s,r),0)),a=k(()=>i.sub(t.value,l.value).gt(1));return(s,r)=>u(t).isNan()?T("",!0):(b(),M("div",cd,[p(" TPS: "+Y(u(le)(u(t)))+" ",1),o(Pn,{name:"fade"},{default:Q(()=>[u(a)?(b(),M("span",md,Y(u(le)(u(l))),1)):T("",!0)]),_:1})]))}});var fd=he(pd,[["__scopeId","data-v-46a3ed5b"]]);var hd=K({__name:"App",setup(e){const t=fe.useHeader,n=k(()=>vn[xe.theme].variables),l=wt(xe,"showTPS"),a=k(()=>de(x(()=>o(P,null,[ns.map(me)]))));return(s,r)=>(b(),M(P,null,[f("div",{id:"modal-root",style:He(u(n))},null,4),f("div",{class:Re(["app",{useHeader:u(t)}]),style:He(u(n))},[u(t)?(b(),j(yi,{key:0})):T("",!0),o(Gu),u(u(l))?(b(),j(fd,{key:1})):T("",!0),o(td),o(dd),(b(),j(Me(u(a))))],6)],64))}});var gd=he(hd,[["__scopeId","data-v-7c41425b"]]);function vd(e={}){const{immediate:t=!1,onNeedRefresh:n,onOfflineReady:l,onRegistered:a,onRegisterError:s}=e;let r,d;const m=async(c=!0)=>{c&&(r==null||r.addEventListener("controlling",y=>{y.isUpdate&&window.location.reload()})),d&&d.waiting&&await Ui(d.waiting,{type:"SKIP_WAITING"})};if("serviceWorker"in navigator){r=new Ri("./sw.js",{scope:"./",type:"classic"}),r.addEventListener("activated",c=>{c.isUpdate||l==null||l()});{const c=()=>{n==null||n()};r.addEventListener("waiting",c),r.addEventListener("externalwaiting",c)}r.register({immediate:t}).then(c=>{d=c,a==null||a(c)}).catch(c=>{s==null||s(c)})}return m}function yd(e={}){const{immediate:t=!0,onNeedRefresh:n,onOfflineReady:l,onRegistered:a,onRegisterError:s}=e,r=q(!1),d=q(!1);return{updateServiceWorker:vd({immediate:t,onNeedRefresh(){r.value=!0,n==null||n()},onOfflineReady(){d.value=!0,l==null||l()},onRegistered:a,onRegisterError:s}),offlineReady:d,needRefresh:r}}document.title=fe.title;window.projInfo=fe;if(fe.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 Xa();const{globalBus:e}=await Mn(()=>Promise.resolve().then(function(){return Ta}),void 0),{startGameLoop:t}=await Mn(()=>import("./gameLoop.646bafc1.js"),["assets/gameLoop.646bafc1.js","assets/@fontsource.f66d05e7.css","assets/vue.92681fcb.js","assets/lz-string.731cedc5.js","assets/@vue.4ce677c2.js","assets/nanoevents.1080beb7.js","assets/is-plain-object.906d88e8.js","assets/vue-next-select.a2bfab1d.js","assets/vue-next-select.9e6f4164.css","assets/vue-toastification.6f567382.js","assets/vue-toastification.4b5f8ac8.css","assets/vuedraggable.7949458c.js","assets/sortablejs.29100d8a.js","assets/vue-textarea-autosize.35804eaf.js","assets/workbox-window.8d14e8b7.js"]),n=window.vue=xi(gd);e.emit("setupVue",n),n.mount("#app"),Jt(()=>{const l=Fl(),{updateServiceWorker:a}=yd({onNeedRefresh(){l.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(){a()}})},onOfflineReady(){l.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(s){s&&setInterval(s.update,60*60*1e3)}})}),t()});export{i as D,Mn as _,De as a,fe as b,To as c,Fe as g,L as p,xe as s}; diff --git a/advent/assets/index.d2511a6f.js b/advent/assets/index.d2511a6f.js new file mode 100644 index 000000000..200a9aafc --- /dev/null +++ b/advent/assets/index.d2511a6f.js @@ -0,0 +1,19 @@ +/* empty css */import"./vue.92681fcb.js";import{Z as k,l as Le,aa as K,t as O,ay as xn,ar as Jt,aE as b,a0 as M,aK as Ct,a1 as f,O as P,aG as Cn,A as tt,_ as Q,a8 as o,b6 as H,b8 as Pn,bs as El,C as u,aq as Xt,bu as pn,bb as Fn,T as Si,a7 as p,u as Tn,j as Mi,bv as ml,q as vn,b1 as _t,G as Oe,aC as Bl,w as ht,b2 as mt,ao as Ai,I as Ge,J,$ as F,aH as Bt,aF as xt,z as kt,aN as Ie,al as Mn,aL as qt,H as Ii,aJ as xl,bn as Ei,br as Bi,be as xi}from"./@vue.4ce677c2.js";import{c as Pl}from"./nanoevents.1080beb7.js";import{L as Rt}from"./lz-string.731cedc5.js";import{i as Pi}from"./is-plain-object.906d88e8.js";import{Y as Fi}from"./vue-next-select.a2bfab1d.js";import{s as Ti,u as Fl}from"./vue-toastification.6f567382.js";import{D as Di}from"./vuedraggable.7949458c.js";import{p as $i}from"./vue-textarea-autosize.35804eaf.js";import{v as Ri,n as Ui}from"./workbox-window.8d14e8b7.js";import"./sortablejs.29100d8a.js";const Oi=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))l(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const r of s.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&l(r)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerpolicy&&(s.referrerPolicy=a.referrerpolicy),a.crossorigin==="use-credentials"?s.credentials="include":a.crossorigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function l(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}};Oi();const qi="modulepreload",pl={},Vi="./",An=function(t,n){return!n||n.length===0?t():Promise.all(n.map(l=>{if(l=`${Vi}${l}`,l in pl)return;pl[l]=!0;const a=l.endsWith(".css"),s=a?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${s}`))return;const r=document.createElement("link");if(r.rel=a?"stylesheet":qi,a||(r.as="script",r.crossOrigin=""),r.href=l,document.head.appendChild(r),a)return new Promise((c,m)=>{r.addEventListener("load",c),r.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})})).then(()=>t())},Li="./projInfo-schema.json",Gi="Advent Incremental",Hi="An incremental game you play a day at a time, leading up to Christmas!",Qi="advent-incremental",ji="thepaperpilot and friends",zi="",Ki="",Wi="0.3",Ji="Initial Commit",Xi=!0,Yi=!1,Zi=2,ea=!0,ta=null,na="",la=["main"],ia=3600,aa=0,sa=!0,oa="base64";var fe={$schema:Li,title:Gi,description:Hi,id:Qi,author:ji,discordName:zi,discordLink:Ki,versionNumber:Wi,versionTitle:Ji,allowGoBack:Xi,defaultShowSmall:Yi,defaultDecimalsShown:Zi,useHeader:ea,banner:ta,logo:na,initialTabs:la,maxTickLength:ia,offlineLimit:aa,enablePausing:sa,exportEncoding:oa};const Ln=17,ra=9e15,ua=Math.log10(9e15),ca=1/9e15,da=308,ma=-324,fl=5,pa=function(){const e=[];for(let n=ma+1;n<=da;n++)e.push(Number("1e"+n));const t=323;return function(n){return e[n+t]}}(),jt=[2,Math.E,3,4,5,6,7,8,9,10],fa=[[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]],ha=[[-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 i.fromValue_noAlloc(t)},z=function(e,t,n){return i.fromComponents(e,t,n)},X=function(t,n,l){return i.fromComponents_noNormalize(t,n,l)},$t=function(t,n){const l=n+1,a=Math.ceil(Math.log10(Math.abs(t))),s=Math.round(t*Math.pow(10,l-a))*Math.pow(10,a-l);return parseFloat(s.toFixed(Math.max(l-a,0)))},Gn=function(e){return Math.sign(e)*Math.log10(Math.abs(e))},ga=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 l=e*e;let a=e;return n=n+1/(12*a),a=a*l,n=n+1/(360*a),a=a*l,n=n+1/(1260*a),a=a*l,n=n+1/(1680*a),a=a*l,n=n+1/(1188*a),a=a*l,n=n+691/(360360*a),a=a*l,n=n+7/(1092*a),a=a*l,n=n+3617/(122400*a),Math.exp(n)/t},Tl=.5671432904097838,hl=function(e,t=1e-10){let n,l;if(!Number.isFinite(e)||e===0)return e;if(e===1)return Tl;e<10?n=0:n=Math.log(e)-Math.log(Math.log(e));for(let a=0;a<100;++a){if(l=(e*Math.exp(-n)+n*n)/(n+1),Math.abs(l-n).5?1:-1;if(Math.random()*20<1)return X(t,0,1);const n=Math.floor(Math.random()*(e+1));let l=n===0?Math.random()*616-308:Math.random()*16;Math.random()>.9&&(l=Math.trunc(l));let a=Math.pow(10,l);return Math.random()>.9&&(a=Math.trunc(a)),z(t,n,a)}static affordGeometricSeries_core(e,t,n,l){const a=t.mul(n.pow(l));return C.floor(e.div(a).mul(n.sub(1)).add(1).log10().div(n.log10()))}static sumGeometricSeries_core(e,t,n,l){return t.mul(n.pow(l)).mul(C.sub(1,n.pow(e))).div(C.sub(1,n))}static affordArithmeticSeries_core(e,t,n,l){const s=t.add(l.mul(n)).sub(n.div(2)),r=s.pow(2);return s.neg().add(r.add(n.mul(e).mul(2)).sqrt()).div(n).floor()}static sumArithmeticSeries_core(e,t,n,l){const a=t.add(l.mul(n));return e.div(2).mul(a.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=ra)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 w=parseFloat(t[0]),v=parseFloat(t[1]),_=t[1].split(";");let N=1;if(_.length===2&&(N=parseFloat(_[1]),isFinite(N)||(N=1)),isFinite(w)&&isFinite(v)){const I=C.pentate(w,v,N);return this.sign=I.sign,this.layer=I.layer,this.mag=I.mag,this}}const n=e.split("^^");if(n.length===2){const w=parseFloat(n[0]),v=parseFloat(n[1]),_=n[1].split(";");let N=1;if(_.length===2&&(N=parseFloat(_[1]),isFinite(N)||(N=1)),isFinite(w)&&isFinite(v)){const I=C.tetrate(w,v,N);return this.sign=I.sign,this.layer=I.layer,this.mag=I.mag,this}}const l=e.split("^");if(l.length===2){const w=parseFloat(l[0]),v=parseFloat(l[1]);if(isFinite(w)&&isFinite(v)){const _=C.pow(w,v);return this.sign=_.sign,this.layer=_.layer,this.mag=_.mag,this}}e=e.trim().toLowerCase();let a,s,r=e.split("pt");if(r.length===2){a=10,s=parseFloat(r[0]),r[1]=r[1].replace("(",""),r[1]=r[1].replace(")","");let w=parseFloat(r[1]);if(isFinite(w)||(w=1),isFinite(a)&&isFinite(s)){const v=C.tetrate(a,s,w);return this.sign=v.sign,this.layer=v.layer,this.mag=v.mag,this}}if(r=e.split("p"),r.length===2){a=10,s=parseFloat(r[0]),r[1]=r[1].replace("(",""),r[1]=r[1].replace(")","");let w=parseFloat(r[1]);if(isFinite(w)||(w=1),isFinite(a)&&isFinite(s)){const v=C.tetrate(a,s,w);return this.sign=v.sign,this.layer=v.layer,this.mag=v.mag,this}}const c=e.split("e"),m=c.length-1;if(m===0){const w=parseFloat(e);if(isFinite(w))return this.fromNumber(w)}else if(m===1){const w=parseFloat(e);if(isFinite(w)&&w!==0)return this.fromNumber(w)}const d=e.split("e^");if(d.length===2){this.sign=1,d[0].charAt(0)=="-"&&(this.sign=-1);let w="";for(let v=0;v=43&&_<=57||_===101)w+=d[1].charAt(v);else return this.layer=parseFloat(w),this.mag=parseFloat(d[1].substr(v+1)),this.normalize(),this}}if(m<1)return this.sign=0,this.layer=0,this.mag=0,this;const y=parseFloat(c[0]);if(y===0)return this.sign=0,this.layer=0,this.mag=0,this;let g=parseFloat(c[c.length-1]);if(m>=2){const w=parseFloat(c[c.length-2]);isFinite(w)&&(g*=Math.sign(w),g+=Gn(w))}if(!isFinite(y))this.sign=c[0]==="-"?-1:1,this.layer=m,this.mag=g;else if(m===1)this.sign=Math.sign(y),this.layer=1,this.mag=g+Math.log10(Math.abs(y));else if(this.sign=Math.sign(y),this.layer=m,m===2){const w=C.mul(z(1,2,g),h(y));return this.sign=w.sign,this.layer=w.layer,this.mag=w.mag,this}else this.mag=g;return this.normalize(),this}fromValue(e){return e instanceof C||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:$t(this.m,e)}magnitudeWithDecimalPlaces(e){return isNaN(this.mag)?Number.NaN:this.mag===0?0:$t(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<=fl?(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):$t(this.m,e)+"e"+$t(this.e,e):this.layer===1?$t(this.m,e)+"e"+$t(this.e,e):this.layer<=fl?(this.sign===-1?"-":"")+"e".repeat(this.layer)+$t(this.mag,e):(this.sign===-1?"-":"")+"(e^"+this.layer+")"+$t(this.mag,e)}abs(){return X(this.sign===0?0:1,this.layer,this.mag)}neg(){return X(-this.sign,this.layer,this.mag)}negate(){return this.neg()}negated(){return this.neg()}sgn(){return this.sign}round(){return this.mag<0?C.dZero:this.layer===0?z(this.sign,0,Math.round(this.mag)):this}floor(){return this.mag<0?C.dZero:this.layer===0?z(this.sign,0,Math.floor(this.mag)):this}ceil(){return this.mag<0?C.dZero:this.layer===0?z(this.sign,0,Math.ceil(this.mag)):this}trunc(){return this.mag<0?C.dZero:this.layer===0?z(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 X(0,0,0);let n,l;if(this.layer>=2||t.layer>=2)return this.maxabs(t);if(C.cmpabs(this,t)>0?(n=this,l=t):(n=t,l=this),n.layer===0&&l.layer===0)return h(n.sign*n.mag+l.sign*l.mag);const a=n.layer*Math.sign(n.mag),s=l.layer*Math.sign(l.mag);if(a-s>=2)return n;if(a===0&&s===-1){if(Math.abs(l.mag-Math.log10(n.mag))>Ln)return n;{const r=Math.pow(10,Math.log10(n.mag)-l.mag),c=l.sign+n.sign*r;return z(Math.sign(c),1,l.mag+Math.log10(Math.abs(c)))}}if(a===1&&s===0){if(Math.abs(n.mag-Math.log10(l.mag))>Ln)return n;{const r=Math.pow(10,n.mag-Math.log10(l.mag)),c=l.sign+n.sign*r;return z(Math.sign(c),1,Math.log10(l.mag)+Math.log10(Math.abs(c)))}}if(Math.abs(n.mag-l.mag)>Ln)return n;{const r=Math.pow(10,n.mag-l.mag),c=l.sign+n.sign*r;return z(Math.sign(c),1,l.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 X(0,0,0);if(this.layer===t.layer&&this.mag===-t.mag)return X(this.sign*t.sign,0,1);let n,l;if(this.layer>t.layer||this.layer==t.layer&&Math.abs(this.mag)>Math.abs(t.mag)?(n=this,l=t):(n=t,l=this),n.layer===0&&l.layer===0)return h(n.sign*l.sign*n.mag*l.mag);if(n.layer>=3||n.layer-l.layer>=2)return z(n.sign*l.sign,n.layer,n.mag);if(n.layer===1&&l.layer===0)return z(n.sign*l.sign,1,n.mag+Math.log10(l.mag));if(n.layer===1&&l.layer===1)return z(n.sign*l.sign,1,n.mag+l.mag);if(n.layer===2&&l.layer===1){const a=z(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(z(Math.sign(l.mag),l.layer-1,Math.abs(l.mag)));return z(n.sign*l.sign,a.layer+1,a.sign*a.mag)}if(n.layer===2&&l.layer===2){const a=z(Math.sign(n.mag),n.layer-1,Math.abs(n.mag)).add(z(Math.sign(l.mag),l.layer-1,Math.abs(l.mag)));return z(n.sign*l.sign,a.layer+1,a.sign*a.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?C.dNaN:this.layer===0?z(this.sign,0,1/this.mag):z(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,l=t.mag>0?t.layer:-t.layer;return n>l?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 l=this.mag,a=n.mag;return this.layer>n.layer&&(a=Gn(a)),this.layer0?z(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):z(1,0,Math.log10(this.mag))}log10(){return this.sign<=0?C.dNaN:this.layer>0?z(Math.sign(this.mag),this.layer-1,Math.abs(this.mag)):z(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?C.dNaN:this.layer===0&&e.layer===0?z(this.sign,0,Math.log(this.mag)/Math.log(e.mag)):C.div(this.log10(),e.log10())}log2(){return this.sign<=0?C.dNaN:this.layer===0?z(this.sign,0,Math.log2(this.mag)):this.layer===1?z(Math.sign(this.mag),0,Math.abs(this.mag)*3.321928094887362):this.layer===2?z(Math.sign(this.mag),1,Math.abs(this.mag)+.5213902276543247):z(Math.sign(this.mag),this.layer-1,Math.abs(this.mag))}ln(){return this.sign<=0?C.dNaN:this.layer===0?z(this.sign,0,Math.log(this.mag)):this.layer===1?z(Math.sign(this.mag),0,Math.abs(this.mag)*2.302585092994046):this.layer===2?z(Math.sign(this.mag),1,Math.abs(this.mag)+.36221568869946325):z(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,l=t;if(n.sign===0)return l.eq(0)?X(1,0,1):n;if(n.sign===1&&n.layer===0&&n.mag===1)return n;if(l.sign===0)return X(1,0,1);if(l.sign===1&&l.layer===0&&l.mag===1)return n;const a=n.absLog10().mul(l).pow10();return this.sign===-1?Math.abs(l.toNumber()%2)%2===1?a.neg():Math.abs(l.toNumber()%2)%2===0?a:C.dNaN:a}pow10(){if(!Number.isFinite(this.layer)||!Number.isFinite(this.mag))return C.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 z(1,0,t);if(e.sign===0)return C.dOne;e=X(e.sign,e.layer+1,Math.log10(e.mag))}return e.sign>0&&e.mag>=0?z(e.sign,e.layer+1,e.mag):e.sign<0&&e.mag>=0?z(-e.sign,e.layer+1,-e.mag):C.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?C.exp(C.mul(this,C.ln(this).sub(1))):C.exp(this)}gamma(){if(this.mag<0)return this.recip();if(this.layer===0){if(this.lt(X(1,0,24)))return h(ga(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 l=e,a=12*l,s=1/a,r=t+s;if(r===t||(t=r,l=l*n,a=360*l,s=1/a,r=t-s,r===t))return C.exp(t);t=r,l=l*n,a=1260*l;let c=1/a;return t=t+c,l=l*n,a=1680*l,c=1/a,t=t-c,C.exp(t)}else return this.layer===1?C.exp(C.mul(this,C.ln(this).sub(1))):C.exp(this)}lngamma(){return this.gamma().ln()}exp(){return this.mag<0?C.dOne:this.layer===0&&this.mag<=709.7?h(Math.exp(this.sign*this.mag)):this.layer===0?z(1,1,this.sign*Math.log10(Math.E)*this.mag):this.layer===1?z(1,2,this.sign*(Math.log10(.4342944819032518)+this.mag)):z(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 z(1,2,Math.log10(this.mag)-.3010299956639812);{const e=C.div(X(this.sign,this.layer-1,this.mag),X(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=X(1,0,1)){if(e===1)return C.pow(this,t);if(e===0)return new C(t);if(this.eq(C.dOne))return C.dOne;if(this.eq(-1))return C.pow(this,t);if(e===Number.POSITIVE_INFINITY){const a=this.toNumber();if(a<=1.444667861009766&&a>=.06598803584531254){if(a>1.444667861009099)return new C(Math.E);const s=C.ln(this).neg();return s.lambertw().div(s)}else return a>1.444667861009766?new C(Number.POSITIVE_INFINITY):C.dNaN}if(this.eq(C.dZero)){let a=Math.abs((e+1)%2);return a>1&&(a=2-a),new C(a)}if(e<0)return C.iteratedlog(t,this,-e);t=h(t);const n=e;e=Math.trunc(e);const l=n-e;if(this.gt(C.dZero)&&this.lte(1.444667861009766)){e=Math.min(1e4,e);for(let a=0;a3)return X(t.sign,t.layer+(e-a-1),t.mag);if(a>1e4)return t}return t}iteratedexp(e=2,t=X(1,0,1)){return this.tetrate(e,t)}iteratedlog(e=10,t=1){if(t<0)return C.tetrate(e,-t,this);e=h(e);let n=h(this);const l=t;t=Math.trunc(t);const a=l-t;if(n.layer-e.layer>3){const s=Math.min(t,n.layer-e.layer-3);t-=s,n.layer-=s}for(let s=0;s1e4)return n}return a>0&&a<1&&(e.eq(10)?n=n.layeradd10(-a):n=n.layeradd(-a,e)),n}slog(e=10){if(e=h(e),e.lte(C.dZero)||e.eq(C.dOne))return C.dNaN;if(e.lt(C.dOne))return this.eq(C.dOne)?C.dZero:this.eq(C.dZero)?C.dNegOne:C.dNaN;if(this.mag<0||this.eq(C.dZero))return C.dNegOne;let t=0,n=h(this);if(n.layer-e.layer>3){const l=n.layer-e.layer-3;t+=l,n.layer-=l}for(let l=0;l<100;++l)if(n.lt(C.dZero))n=C.pow(e,n),t-=1;else{if(n.lte(C.dOne))return h(t+C.slog_critical(e.toNumber(),n.toNumber()));t+=1,n=C.log(n,e)}return h(t)}static slog_critical(e,t){return e>10?t-1:C.critical_section(e,t,ha)}static tetrate_critical(e,t){return C.critical_section(e,t,fa)}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 l=0,a=0;for(let c=0;ce){const m=(e-jt[c])/(jt[c+1]-jt[c]);l=n[c][Math.floor(t)]*(1-m)+n[c+1][Math.floor(t)]*m,a=n[c][Math.ceil(t)]*(1-m)+n[c+1][Math.ceil(t)]*m;break}const s=t-Math.floor(t);return l*(1-s)+a*s}layeradd10(e){e=C.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 l=0;l<100;++l){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 l=this.slog(t).toNumber()+e;return l>=0?C.tetrate(t,l):Number.isFinite(l)?l>=-1?C.log(C.tetrate(t,l+1),t):C.log(C.log(C.tetrate(t,l+2),t),t):C.dNaN}lambertw(){if(this.lt(-.3678794411710499))throw Error("lambertw is unimplemented for results less than -1, sorry!");if(this.mag<0)return h(hl(this.toNumber()));if(this.layer===0)return h(hl(this.sign*this.mag));if(this.layer===1)return gl(this);if(this.layer===2)return gl(this);if(this.layer>=3)return X(this.sign,this.layer-1,this.mag);throw"Unhandled behavior in lambertw()"}ssqrt(){if(this.sign==1&&this.layer>=3)return X(this.sign,this.layer-1,this.mag);const e=this.ln();return e.div(e.lambertw())}pentate(e=2,t=X(1,0,1)){t=h(t);const n=e;e=Math.trunc(e);const l=n-e;l!==0&&(t.eq(C.dOne)?(++e,t=new C(l)):this.eq(10)?t=t.layeradd10(l):t=t.layeradd(l,this));for(let a=0;a10)return t}return t}sin(){return this.mag<0?this:this.layer===0?h(Math.sin(this.sign*this.mag)):X(0,0,0)}cos(){return this.mag<0?C.dOne:this.layer===0?h(Math.cos(this.sign*this.mag)):X(0,0,0)}tan(){return this.mag<0?this:this.layer===0?h(Math.tan(this.sign*this.mag)):X(0,0,0)}asin(){return this.mag<0?this:this.layer===0?h(Math.asin(this.sign*this.mag)):X(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)):X(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 C.ln(this.add(this.sqr().add(1).sqrt()))}acosh(){return C.ln(this.add(this.sqr().sub(1).sqrt()))}atanh(){return this.abs().gte(1)?X(Number.NaN,Number.NaN,Number.NaN):C.ln(this.add(1).div(h(1).sub(this))).div(2)}ascensionPenalty(e){return e===0?this:this.root(C.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 i=C;i.dZero=X(0,0,0);i.dOne=X(1,0,1);i.dNegOne=X(-1,0,1);i.dTwo=X(1,0,2);i.dTen=X(1,0,10);i.dNaN=X(Number.NaN,Number.NaN,Number.NaN);i.dInf=X(1,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY);i.dNegInf=X(-1,Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);i.dNumberMax=z(1,0,Number.MAX_VALUE);i.dNumberMin=z(1,0,Number.MIN_VALUE);const va=new i(1);function un(e,t,n=!0){let l=i.log10(e).floor(),a=i.div(e,i.pow(10,l));a.toStringWithDecimalPlaces(t)==="10"&&(a=va,l=l.add(1));const s=l.gte(1e9)?He(l,Math.max(Math.max(t,3),fe.defaultDecimalsShown)):l.gte(1e4)?In(l,0):l.toStringWithDecimalPlaces(0);return n?a.toStringWithDecimalPlaces(t)+"e"+s:"e"+s}function In(e,t){if(e==null)return"NaN";if(e=new i(e),e.mag<.001)return 0 .toFixed(t);const l=e.toStringWithDecimalPlaces(t).split(".");return l[0]=l[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),l.length==1?l[0]:l[0]+"."+l[1]}function Dl(e,t){return e==null?"NaN":(e=new i(e),e.mag<1e-4?0 .toFixed(t):(e.mag<.1&&t!==0&&(t=Math.max(Math.max(t,e.log10().negate().ceil().toNumber()),fe.defaultDecimalsShown)),e.toStringWithDecimalPlaces(t)))}const ya=new i("eeee1000"),ba=new i("e100000"),vl=new i("e1000"),$l=new i(1e9),wa=new i(1e6),_a=new i(1e3),ka=new i(.98),Ca=new i(.001),Rl=new i(0);function He(e,t,n){if(t==null&&(t=fe.defaultDecimalsShown),n=n!=null?n:fe.defaultShowSmall,e=new i(e),isNaN(e.sign)||isNaN(e.layer)||isNaN(e.mag))return"NaN";if(e.sign<0)return"-"+He(e.neg(),t);if(e.mag===Number.POSITIVE_INFINITY)return"Infinity";if(e.gte(ya)){const l=e.slog();return l.gte(wa)?"F"+He(l.floor()):i.pow(10,l.sub(l.floor())).toStringWithDecimalPlaces(3)+"F"+In(l.floor(),0)}else{if(e.gte(ba))return un(e,0,!1);if(e.gte(vl))return un(e,0);if(e.gte($l))return un(e,t);if(e.gte(_a))return In(e,0);if(e.gte(Ca)||!n)return Dl(e,t);if(e.eq(Rl))return 0 .toFixed(t)}return e=Ul(e),e.lt(vl)?un(e,t).replace(/([^(?:e|F)]*)$/,"-$1"):He(e,t)+"\u207B\xB9"}function Se(e){return e=new i(e),e.sign<0?"-"+Se(e.neg()):e.gte($l)||e.lte(ka)&&!e.eq(Rl)?He(e):He(e,0)}function jn(e,t){return t==null&&(t=fe.defaultDecimalsShown),i.lt(e,0)?"-"+jn(i.neg(e),t):i.gt(e,2**51)?He(i.div(e,31536e3))+"y":(e=new i(e).toNumber(),e<60?He(e)+"s":e<3600?Se(Math.floor(e/60))+"m "+He(e%60,t)+"s":e<86400?Se(Math.floor(e/3600))+"h "+Se(Math.floor(e/60)%60)+"m "+Se(e%60)+"s":e<31536e3?Se(Math.floor(e/84600)%365)+"d "+Se(Math.floor(e/3600)%24)+"h "+Se(Math.floor(e/60)%60)+"m":Se(Math.floor(e/31536e3))+"y "+Se(Math.floor(e/84600)%365)+"d "+Se(Math.floor(e/3600)%24)+"h")}function Na(e,t,n){e=new i(e);let l=e.toStringWithDecimalPlaces(t);return new i(l).gte(n)&&(l=i.sub(n,Math.pow(.1,t)).toStringWithDecimalPlaces(t)),l}function Sa(e,t){return He(e,t,!0)}function Ul(e){let t=i.log10(e).ceil();const n=i.div(e,i.pow(10,t));return t=t.neg(),e=new i(10).pow(t).times(n),e}function Ol(e,t,n=i.dOne){let l=e[0][0],a=e[0][1];for(let s=1;s(e.Up="Up",e.Down="Down",e.Left="Left",e.Right="Right",e.Default="Up",e))(re||{});const fn=Symbol("DoNotCache");function $(e,t){const n=e[t];Qn(n)&&n.length===0&&!n[fn]?e[t]=k(n.bind(e)):Qn(n)&&(e[t]=n.bind(e),e[t][fn]=!0)}function Ze(e){return Qn(e)&&!e[fn]&&(e=k(e)),e}const Lt=Symbol("Component"),Gt=Symbol("GatherProps");let Fa=0;function ln(e="feature-"){return e+Fa++}var Ke=(e=>(e[e.Visible=0]="Visible",e[e.Hidden=1]="Hidden",e[e.None=2]="None",e))(Ke||{});function B(e){return e[fn]=!0,e}function U(e,t=2){return e?0:t}function et(e,t,n){e[t]===void 0&&n!=null&&(e[t]=n)}function Gl(e,...t){const n=[],l=a=>{Object.keys(a).forEach(s=>{const r=a[s];r&&typeof r=="object"&&(t.includes(r.type)?n.push(r):!(r instanceof i)&&!Le(r)&&l(r))})};return l(e),n}const zt={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 zn=(e=>(e.Classic="classic",e.Paper="paper",e.Nordic="nordic",e.Aqua="aqua",e))(zn||{}),yn={classic:zt,paper:{...zt,variables:{...zt.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:{...zt,variables:{...zt.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:{...zt,variables:{...zt.variables,"--foreground":"#bfdfff","--background":"#001f3f","--tooltip-background":"rgba(0, 15, 31, 0.75)","--raised-background":"#001f3f","--points":"#dfefff","--locked":"#c4a7b3","--outline":"#bfdfff"}}};const Te=Pl();document.fonts.onloadingdone=()=>Te.emit("fontsLoaded");var Ta=Object.freeze(Object.defineProperty({__proto__:null,globalBus:Te},Symbol.toStringTag,{value:"Module"}));var he=(e,t)=>{const n=e.__vccOpts||e;for(const[l,a]of t)n[l]=a;return n};const Da=K({__name:"Context",emits:["updateNodes"],setup(e,{emit:t}){var y;const n=O({}),l=new ResizeObserver(c),a=O(null);xn(()=>{const g=a.value;g!=null&&l.observe(g)});let s=!0,r=O((y=a.value)==null?void 0:y.getBoundingClientRect());function c(){s&&(s=!1,Jt(()=>{var g;r.value=(g=a.value)==null?void 0:g.getBoundingClientRect(),Object.values(n.value).filter(w=>w).forEach(w=>w.rect=w.element.getBoundingClientRect()),t("updateNodes",n.value),s=!0}))}Te.on("fontsLoaded",c);const m={attributes:!1,childList:!0,subtree:!1};Cn(Kn,(g,w)=>{const v=new MutationObserver(()=>d(g));v.observe(w,m),n.value[g]={element:w,observer:v,rect:w.getBoundingClientRect()},c()}),Cn(Wn,g=>{var w;(w=n.value[g])==null||w.observer.disconnect(),n.value[g]=void 0,c()}),Cn(Jn,n),Cn(Xn,r);function d(g){const w=n.value[g];w!=null&&(w.rect=w.element.getBoundingClientRect(),t("updateNodes",n.value))}return(g,w)=>(b(),M(P,null,[Ct(g.$slots,"default",{},void 0,!0),f("div",{ref_key:"resizeListener",ref:a,class:"resize-listener"},null,512)],64))}});var Hl=he(Da,[["__scopeId","data-v-2b1dc1bc"]]);const $a=["onPointerdown"],Ra={class:"modal-wrapper"},Ua={class:"modal-container"},Oa={class:"modal-header"},qa=p(" default header "),Va={class:"modal-body"},La=p(" default body "),Ga={class:"modal-footer"},Ha=f("div",{class:"modal-default-flex-grow"},null,-1),rt=K({__name:"Modal",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{expose:t,emit:n}){const a=tt(e),s=k(()=>a.modelValue||c.value);function r(){n("update:modelValue",!1)}const c=O(!1),m=O(null),d=k(()=>{var y,g;return(g=(y=m.value)==null?void 0:y.nodes)!=null?g:null});return t({isOpen:s,nodes:d}),(y,g)=>(b(),Q(Si,{to:"#modal-root"},[o(Fn,{name:"modal",onBeforeEnter:g[0]||(g[0]=w=>c.value=!0),onAfterLeave:g[1]||(g[1]=w=>c.value=!1)},{default:H(()=>[Pn(f("div",Xt({class:"modal-mask",onPointerdown:pn(r,["self"])},y.$attrs),[f("div",Ra,[f("div",Ua,[f("div",Oa,[Ct(y.$slots,"header",{shown:u(s)},()=>[qa])]),f("div",Va,[o(Hl,{ref_key:"contextRef",ref:m},{default:H(()=>[Ct(y.$slots,"body",{shown:u(s)},()=>[La])]),_:3},512)]),f("div",Ga,[Ct(y.$slots,"footer",{shown:u(s)},()=>[f("div",{class:"modal-default-footer"},[Ha,f("button",{class:"button modal-default-button",onClick:r}," Close ")])])])])])],16,$a),[[El,e.modelValue]])]),_:3})]))}}),Kn=Symbol("RegisterNode"),Wn=Symbol("UnregisterNode"),Jn=Symbol("Nodes"),Xn=Symbol("Bounds"),it=Tn({});window.layers=it;const en={},yt=[];function St(e,t){return ut(()=>{const n={},l=n.emitter=Pl();if(n.on=l.on.bind(l),n.emit=l.emit.bind(l),n.nodes=O({}),n.id=e,yt.push(e),en[e]=new Set,n.minimized=_e(!1),Object.assign(n,t.call(n)),yt[yt.length-1]==null||yt[yt.length-1]!==e)throw`Adding layers stack in invalid state. This should not happen +Stack: ${yt} +Trying to pop ${n.id}`;return yt.pop(),$(n,"color"),$(n,"display"),$(n,"name"),et(n,"name",n.id),$(n,"minWidth"),et(n,"minWidth",600),$(n,"minimizable"),et(n,"minimizable",!0),n})}function Ql(e,t){if(console.info("Adding layer",e.id),it[e.id]){console.error("Attempted to add layer with same ID as existing layer",e.id,it[e.id]);return}et(t,"layers",{}),t.layers[e.id]==null&&(t.layers[e.id]={}),it[e.id]=e,Te.emit("addLayer",e,t.layers[e.id])}function Qa(e){return it[e]}function jl(e){console.info("Removing layer",e.id),Te.emit("removeLayer",e),it[e.id]=void 0}function ja(e){jl(e),Ql(e,L)}function za(e){const t=O(!1);return{openModal:()=>t.value=!0,modal:B(()=>o(rt,{modelValue:t.value,"onUpdate:modelValue":n=>t.value=n},{header:()=>o("h2",null,[u(e.name)]),body:u(e.display)}))}}Te.on("update",function(t){Object.values(it).forEach(n=>{n==null||n.emit("preUpdate",t)}),Object.values(it).forEach(n=>{n==null||n.emit("update",t)}),Object.values(it).forEach(n=>{n==null||n.emit("postUpdate",t)})});var Ka=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:Kn,UnregisterNodeInjectionKey:Wn,NodesInjectionKey:Jn,BoundsInjectionKey:Xn,layers:it,persistentRefs:en,addingLayers:yt,createLayer:St,addLayer:Ql,getLayer:Qa,removeLayer:jl,reloadLayer:ja,setupLayerModal:za},Symbol.toStringTag,{value:"Module"}));const Yn=Symbol("PersistentState"),Ot=Symbol("DefaultValue"),En=Symbol("StackTrace"),zl=Symbol("Deleted"),hn=Symbol("NonPersistent"),cn=Symbol("SaveDataPath");function Wa(){var e;return((e=new Error().stack)==null?void 0:e.split(` +`).slice(3,5).map(t=>t.trim()).join(` +`))||""}function _e(e){const t=Le(e)?e:O(e);t[Yn]=t,t[Ot]=Le(e)?e.value:e,t[En]=Wa(),t[zl]=!1;const n=k({get(){return t.value},set(l){t.value=l}});return n[Ot]=t[Ot],t[hn]=n,t[cn]=void 0,yt.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",t,` +Created at: +`+t[En]):en[yt[yt.length-1]].add(t),t}function Ja(e){return e&&typeof e=="object"&&Yn in e}function G(e){return e[hn]}Te.on("addLayer",(e,t)=>{const n=[],l=(a,s=[])=>{let r=!1;return Object.keys(a).forEach(c=>{let m=a[c];if(m&&typeof m=="object")if(xe in m&&(m=m[xe]),Ja(m)){if(r=!0,m[zl]){console.warn("Deleted persistent ref present in returned object. Ignoring...",m,` +Created at: +`+m[En]);return}en[e.id].delete(m);const d=[e.id,...s,c];m[cn]!=null&&JSON.stringify(d)!==JSON.stringify(m[cn])&&console.error(`Persistent ref is being saved to \`${d.join(".")}\` when it's already present at \`${m[cn].join(".")}\`. This can cause unexpected behavior when loading saves between updates.`,m),m[cn]=d;const y=s.reduce((w,v)=>(v in w||(w[v]={}),w[v]),t),g=y[c];y[c]=m[Yn],Mi(y)?g!=null?y[c]=g:y[c]=m[Ot]:g!=null?y[c].value=g:y[c].value=m[Ot]}else!(m instanceof i)&&!Le(m)&&!n.includes(m)&&(typeof m.type=="symbol"&&n.push(m),l(m,[...s,c])&&(ml(m)&&!ml(a)?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.",xe in a?a[xe]:a,c):r=!0))}),r};l(e[xe]),en[e.id].forEach(a=>{console.error(`Created persistent ref in ${e.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,a,` +Created at: +`+a[En])}),en[e.id].clear()});const xe=Symbol("ProxyState"),Zt=Symbol("ProxyPath");function ut(e,t={}){const n=t;let l=!1;function a(){return l||(Object.assign(n,e(n)),l=!0),n}return new Proxy(n,{get(s,r){if(r===xe)return a();const c=a()[r];return c&&typeof c=="object"&&hn in c?c[hn]:c},set(s,r,c){return a()[r]=c,!0},has(s,r){return r===xe?!0:Reflect.has(a(),r)},ownKeys(){return Reflect.ownKeys(a())},getOwnPropertyDescriptor(s,r){return l||(Object.assign(n,e(n)),l=!0),Object.getOwnPropertyDescriptor(s,r)}})}var Re=window.state=Tn({lastTenTicks:[],hasNaN:!1,NaNPath:[]});const Kl=vn({id:"",devSpeed:null,name:"",tabs:[],time:-1,autosave:!0,offlineProd:!0,offlineTime:null,timePlayed:0,keepGoing:!1,modID:"",modVersion:"",layers:{},usingLog:!1});function Wl(e){return JSON.stringify(e,(t,n)=>u(n))}const Jl={get(e,t){var l;if(t===xe||t===Zt)return e[t];const n=e[xe][t];if(t!=="value"&&(Pi(n)||Array.isArray(n))){if(n!==((l=e[t])==null?void 0:l[xe])){const a=[...e[Zt],t];e[t]=new Proxy({[xe]:n,[Zt]:a},Jl)}return e[t]}return n},set(e,t,n,l){if(!Re.hasNaN&&(typeof n=="number"&&isNaN(n)||n instanceof i&&(isNaN(n.sign)||isNaN(n.layer)||isNaN(n.mag)))){const a=e[xe][t];if(!(typeof a=="number"&&isNaN(a)||a instanceof i&&(isNaN(a.sign)||isNaN(a.layer)||isNaN(a.mag))))throw Kl.autosave=!1,Re.hasNaN=!0,Re.NaNPath=[...e[Zt],t],Re.NaNReceiver=l,console.error("Attempted to set NaN value",[...e[Zt],t],e[xe]),"Attempted to set NaN value. See above for details"}return e[xe][t]=n,!0},ownKeys(e){return Reflect.ownKeys(e[xe])},has(e,t){return Reflect.has(e[xe],t)},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(e[xe],t)}};var L=window.player=new Proxy({[xe]:Kl,[Zt]:["player"]},Jl);function Xl(e={}){return Object.assign({id:`${fe.id}-0`,name:"Default Save",tabs:fe.initialTabs.slice(),time:Date.now(),autosave:!0,offlineProd:!0,offlineTime:0,timePlayed:0,keepGoing:!1,modID:fe.id,modVersion:fe.versionNumber,layers:{}},e)}function bt(e){const t=Rt.compressToUTF16(Wl(e!=null?e:L[xe]));return localStorage.setItem((e!=null?e:L[xe]).id,t),t}async function Xa(){Za();try{let e=localStorage.getItem(Pe.active);if(e==null){await Kt(tn());return}if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Rt.decompressFromUTF16(e);else throw"Unable to determine save encoding";const t=JSON.parse(e);if(t.modID!==fe.id){await Kt(tn());return}t.id=Pe.active,await Kt(t)}catch(e){console.error(`Failed to load save. Falling back to new save. +`,e),await Kt(tn())}}function tn(){const e=Sn(),t=Xl({id:e});return bt(t),Pe.saves.push(e),t}function Sn(){let e,t=0;do e=`${fe.id}-${t++}`;while(localStorage.getItem(e));return e}async function Kt(e){console.info("Loading save",e);const{layers:t,removeLayer:n,addLayer:l}=await An(()=>Promise.resolve().then(function(){return Ka}),void 0),{fixOldSave:a,getInitialLayers:s}=await An(()=>Promise.resolve().then(function(){return To}),void 0);for(const r in t){const c=t[r];c&&n(c)}s(e).forEach(r=>l(r,e)),e=Xl(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,fe.offlineLimit*3600)),e.time=Date.now(),e.modVersion!==fe.versionNumber&&a(e.modVersion,e),Object.assign(L,e),Pe.active=L.id,Te.emit("onLoad")}setInterval(()=>{L.autosave&&bt()},1e3);window.onbeforeunload=()=>{L.autosave&&bt()};window.save=bt;const Ya=window.hardReset=async()=>{await Kt(tn())},gn=vn({active:"",saves:[],showTPS:!0,theme:zn.Nordic,unthrottled:!1});_t(gn,e=>{const t=Rt.compressToUTF16(JSON.stringify(e));localStorage.setItem(fe.id,t)},{deep:!0});var Pe=window.settings=gn;window.hardResetSettings=()=>{const e={active:"",saves:[],showTPS:!0,theme:zn.Nordic};Te.emit("loadSettings",e),Object.assign(gn,e),Ya()};function Za(){try{let e=localStorage.getItem(fe.id);if(e!=null&&e!==""){if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Rt.decompressFromUTF16(e);else{console.warn("Unable to determine settings encoding",e);return}const t=JSON.parse(e);typeof t=="object"&&Object.assign(gn,t)}Te.emit("loadSettings",gn)}catch{}}const Yl=vn([]);function es(e){Yl.push(e)}const Zl=vn([]);function ts(e){Zl.push(e)}const ns=vn([]),ls={class:"table"},Wt=K({__name:"Column",setup(e){const t=k(()=>yn[Pe.theme].mergeAdjacent);return(n,l)=>(b(),M("div",ls,[f("div",{class:Oe(["col",{mergeAdjacent:u(t)}])},[Ct(n.$slots,"default")],2)]))}}),is={class:"table"},Zn=K({__name:"Row",setup(e){const t=k(()=>yn[Pe.theme].mergeAdjacent);return(n,l)=>(b(),M("div",is,[f("div",{class:Oe(["row",{mergeAdjacent:u(t)}])},[Ct(n.$slots,"default")],2)]))}});function el(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ai(e)}function ce(e,t="span"){return typeof e=="function"?K({render:e}):typeof e=="string"?e.length>0?(e=e.trim(),e.charAt(0)!=="<"&&(e=`<${t}>${e}`),K({template:e})):K({render:()=>({})}):e}function de(e){if(Et(e))return typeof e=="function"?e():ce(e);const t=e[Lt];return o(t,e[Gt](),null)}function Fe(...e){let t;return o(Zn,null,el(t=e.map(de))?t:{default:()=>[t]})}function dn(...e){let t;return o(Wt,null,el(t=e.map(de))?t:{default:()=>[t]})}function wt(e){if(Et(e))return typeof e=="function"?e():typeof e=="string"?o(P,null,[e]):o(e,null,null);const t=e[Lt];return o(t,e[Gt](),null)}function as(...e){let t;return o(Wt,null,el(t=e.map(wt))?t:{default:()=>[t]})}function Et(e){return typeof e=="string"?!0:typeof e=="object"?e==null?!1:"render"in e||"component"in e:typeof e=="function"&&e[fn]===!0}function ei(e,t,n){const l=O(null),a=O(void 0);function s(m){l.value||(l.value=setInterval(c,250)),a.value=m,n&&(n.value=!0)}function r(){l.value&&(clearInterval(l.value),l.value=null),n&&(n.value=!1)}function c(){t&&t.value?t.value():e&&e.value&&e.value(a.value)}return Bl(r),{start:s,stop:r,handleHolding:c}}function ss(e,t){const n=k(()=>e.filter(l=>u(l.visibility)===Ke.Visible&&t(l)));return{firstFeature:k(()=>n.value[0]),collapsedContent:B(()=>dn(...n.value.slice(1))),hasCollapsedContent:k(()=>n.value.length>1)}}function Bn(e,t="div"){const n=ht();return mt(()=>{n.value=ce(We(e),t)}),n}function Vt(e,t="div"){const n=ht(null);return mt(()=>{const l=We(e);n.value=l==null?null:ce(l,t)}),n}function os(e){return k(()=>We(e))}function We(e){return u(u(e))}function R(...e){return e.includes(Object)||e.push(Object),e}const ve=K({__name:"Spacer",props:{width:{default:"8px"},height:{default:"17px"}},setup(e){return(t,n)=>(b(),M("div",{style:Ge({width:e.width,height:e.height})},null,4))}});const rs={},us={class:"notif"};function cs(e,t){return b(),M("div",us,"!")}var yl=he(rs,[["render",cs],["__scopeId","data-v-66323fd4"]]);const $n=e=>(Bt("data-v-d953df70"),e=e(),xt(),e),ds={key:0,class:"day feature dontMerge opened"},ms={class:"date"},ps=p("Dec"),fs=$n(()=>f("br",null,null,-1)),hs={class:"date"},gs=p("Dec"),vs=$n(()=>f("br",null,null,-1)),ys=$n(()=>f("div",{class:"doors"},null,-1)),bs={class:"date"},ws=p("Dec"),_s=$n(()=>f("br",null,null,-1)),ks={key:0,class:"material-icons lock"},Cs={key:1,class:"timer"},Ns=K({__name:"Day",props:{day:null,symbol:null,opened:null,recentlyUpdated:null,shouldNotify:null},emits:["openLore","openLayer","unlockLayer"],setup(e,{emit:t}){const n=e,l=k(()=>i.gte(W.day.value,n.day)&&new Date().getMonth()===11&&new Date().getDate()>=n.day);function a(){l.value&&t("unlockLayer")}return(s,r)=>e.opened.value?(b(),M("div",ds,[o(Fn,{appear:"",name:"door"},{default:H(()=>[f("div",{class:"doors",onClick:r[0]||(r[0]=c=>t("openLayer"))},[f("div",ms,[ps,fs,p(J(e.day),1)]),f("div",hs,[gs,vs,p(J(e.day),1)])])]),_:1}),f("div",{class:"icon",style:Ge({backgroundImage:`url(${e.symbol})`})},null,4),f("div",{class:"lore",onClick:r[1]||(r[1]=c=>t("openLore"))},"?"),u(e.shouldNotify)?(b(),Q(yl,{key:0})):F("",!0)])):(b(),M("div",{key:1,class:Oe(["day feature dontMerge",{can:u(l),locked:!u(l),canOpen:u(l)}]),onClick:a},[ys,f("div",bs,[ws,_s,p(J(e.day),1)]),u(l)?F("",!0):(b(),M("div",ks,"lock")),u(W).day.value===e.day&&!u(l)?(b(),M("div",Cs,J(u(jn)(u(W).timeUntilNewDay.value,0)),1)):F("",!0),u(l)?(b(),Q(yl,{key:2})):F("",!0)],2))}});var Ss=he(Ns,[["__scopeId","data-v-d953df70"]]);const Ms=K({__name:"Collapsible",props:{collapsed:null,display:null,content:null},setup(e){const t=e,n=Bn(kt(t,"display")),l=Bn(kt(t,"content"));return(a,s)=>(b(),Q(Wt,{class:"collapsible-container"},{default:H(()=>[f("button",{onClick:s[0]||(s[0]=r=>e.collapsed.value=!e.collapsed.value),class:"feature collapsible-toggle"},[(b(),Q(Ie(u(n))))]),e.collapsed.value?F("",!0):(b(),Q(Ie(u(l)),{key:0}))]),_:1}))}});var As=he(Ms,[["__scopeId","data-v-a72c16aa"]]);const Is={key:0},Es={key:0,class:"mark star"},Bs=["src"],xs=K({__name:"MarkNode",props:{mark:{type:[Boolean,String]}},setup(e){return(t,n)=>e.mark?(b(),M("div",Is,[e.mark===!0?(b(),M("div",Es)):(b(),M("img",{key:1,class:"mark",src:e.mark},null,8,Bs))])):F("",!0)}});var Rn=he(xs,[["__scopeId","data-v-2207999f"]]);const Ps=K({__name:"Node",props:{id:null},setup(e){const n=tt(e),l=Mn(Kn,()=>{}),a=Mn(Wn,()=>{}),s=ht(null),r=k(()=>s.value&&s.value.parentElement);return _t([r,n.id],([c,m],[d,y])=>{d&&a(u(y)),c&&l(m,c)}),Bl(()=>a(u(n.id))),(c,m)=>(b(),M("div",{class:"node",ref_key:"node",ref:s},null,512))}});var bn=he(Ps,[["__scopeId","data-v-a48cb382"]]);const Fs=K({props:{progress:{type:R(String,Object,Number),required:!0},width:{type:R(Number),required:!0},height:{type:R(Number),required:!0},direction:{type:R(String),required:!0},display:R(Object,String,Function),visibility:{type:R(Number),required:!0},style:R(Object,String,Array),classes:R(Object),borderStyle:R(Object,String,Array),textStyle:R(Object,String,Array),baseStyle:R(Object,String,Array),fillStyle:R(Object,String,Array),mark:R(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:Rn,Node:bn},setup(e){const{progress:t,width:n,height:l,direction:a,display:s}=tt(e),r=k(()=>{let d=t.value instanceof i?t.value.toNumber():Number(t.value);return(1-Math.min(Math.max(d,0),1))*100}),c=k(()=>{const d={width:We(n)+.5+"px",height:We(l)+.5+"px"};switch(u(a)){case re.Up:d.clipPath=`inset(${r.value}% 0% 0% 0%)`,d.width=We(n)+1+"px";break;case re.Down:d.clipPath=`inset(0% 0% ${r.value}% 0%)`,d.width=We(n)+1+"px";break;case re.Right:d.clipPath=`inset(0% ${r.value}% 0% 0%)`;break;case re.Left:d.clipPath=`inset(0% 0% 0% ${r.value} + '%)`;break;case re.Default:d.clipPath="inset(0% 50% 0% 0%)";break}return d}),m=Vt(s);return{normalizedProgress:r,barStyle:c,component:m,unref:u,Visibility:Ke}}});function Ts(e,t,n,l,a,s){var m,d,y,g,w,v,_;const r=qt("MarkNode"),c=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("div",{key:0,style:Ge([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px",visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(m=e.unref(e.style))!=null?m:{}]),class:Oe({bar:!0,...e.unref(e.classes)})},[f("div",{class:"overlayTextContainer border",style:Ge([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(d=e.unref(e.borderStyle))!=null?d:{}])},[e.component?(b(),M("span",{key:0,class:"overlayText",style:Ge(e.unref(e.textStyle))},[(b(),Q(Ie(e.component)))],4)):F("",!0)],4),f("div",{class:"border",style:Ge([{width:e.unref(e.width)+"px",height:e.unref(e.height)+"px"},(y=e.unref(e.style))!=null?y:{},(g=e.unref(e.baseStyle))!=null?g:{},(w=e.unref(e.borderStyle))!=null?w:{}])},[f("div",{class:"fill",style:Ge([e.barStyle,(v=e.unref(e.style))!=null?v:{},(_=e.unref(e.fillStyle))!=null?_:{}])},null,4)],4),o(r,{mark:e.unref(e.mark)},null,8,["mark"]),o(c,{id:e.id},null,8,["id"])],6)):F("",!0)}var Ds=he(Fs,[["render",Ts],["__scopeId","data-v-02d0d7b2"]]);const $s=Symbol("Bar");function It(e){return ut(()=>{const t=e();return t.id=ln("bar-"),t.type=$s,t[Lt]=Ds,$(t,"visibility"),et(t,"visibility",Ke.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[Gt]=function(){const{progress:n,width:l,height:a,direction:s,display:r,visibility:c,style:m,classes:d,borderStyle:y,textStyle:g,baseStyle:w,fillStyle:v,mark:_,id:N}=this;return{progress:n,width:l,height:a,direction:s,display:r,visibility:c,style:u(m),classes:d,borderStyle:y,textStyle:g,baseStyle:w,fillStyle:v,mark:_,id:N}},t})}var Rs=K({props:{display:{type:R(Object,String,Function),required:!0},visibility:{type:R(Number),required:!0},style:R(Object,String,Array),classes:R(Object),onClick:Function,onHold:Function,canClick:{type:R(Boolean),required:!0},small:Boolean,mark:R(Boolean,String),id:{type:String,required:!0},isHolding:Object},components:{Node:bn,MarkNode:Rn},setup(e){const{display:t,onClick:n,onHold:l}=tt(e),a=ht("");mt(()=>{const c=We(t);if(c==null){a.value="";return}if(Et(c)){a.value=ce(c);return}const m=ce(c.title||"","h3"),d=ce(c.description,"div");a.value=ce(B(()=>o("span",null,[c.title?o("div",null,[o(m,null,null)]):null,o(d,null,null)])))});const{start:s,stop:r}=ei(n,l,e.isHolding);return{start:s,stop:r,comp:a,Visibility:Ke,unref:u}}});function Us(e,t,n,l,a,s){var m;const r=qt("MarkNode"),c=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("button",{key:0,style:Ge([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(m=e.unref(e.style))!=null?m:[]]),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:Oe({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)?(b(),Q(Ie(e.unref(e.comp)),{key:0})):F("",!0),o(r,{mark:e.unref(e.mark)},null,8,["mark"]),o(c,{id:e.id},null,8,["id"])],38)):F("",!0)}var ti=he(Rs,[["render",Us],["__scopeId","data-v-8cedd7da"]]);const Os=Symbol("Clickable");function we(e){return ut(()=>{var n;const t=(n=e==null?void 0:e())!=null?n:{};if(t.id=ln("clickable-"),t.type=Os,t[Lt]=ti,t.isHolding=O(!1),$(t,"visibility"),et(t,"visibility",Ke.Visible),$(t,"canClick"),et(t,"canClick",!0),$(t,"classes"),$(t,"style"),$(t,"mark"),$(t,"display"),t.onClick){const l=t.onClick.bind(t);t.onClick=function(a){u(t.canClick)&&l(a)}}if(t.onHold){const l=t.onHold.bind(t);t.onHold=function(){u(t.canClick)&&l()}}return t[Gt]=function(){const{display:l,visibility:a,style:s,classes:r,onClick:c,onHold:m,isHolding:d,canClick:y,small:g,mark:w,id:v}=this;return{display:l,visibility:a,style:u(s),classes:r,onClick:c,onHold:m,isHolding:d,canClick:y,small:g,mark:w,id:v}},t})}function ot(e,t="points",n=0,l=void 0){const a=Le(e)?e:_e(e);if(a.displayName=t,a.precision=n,a.small=l,!Le(e)){const s=a[hn];s.displayName=t,s.precision=n,s.small=l}return a}function bl(e){const t=_e(e.value);return _t(e,n=>{i.gt(n,t.value)&&(t.value=n)}),t}function qs(e){const t=_e(e.value);return _t(e,(n,l)=>{i.gt(n,l)&&(t.value=i.add(t.value,i.sub(n,l)))}),t}new i("10^^8");new i("1e100");function wn(e,t){const n=t!=null?t:e.value;return i.eq(e.precision,0)?le(e.small?n:i.floor(n)):ue(n,e.precision,e.small)}const Vs=["x1","y1","x2","y2"],Ls=K({__name:"Link",props:{link:null,startNode:null,endNode:null,boundingRect:null},setup(e){const n=tt(e),l=k(()=>{const s=n.startNode.value.rect,r=n.boundingRect.value,c=r?{x:s.x+s.width/2-r.x,y:s.y+s.height/2-r.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}),a=k(()=>{const s=n.endNode.value.rect,r=n.boundingRect.value,c=r?{x:s.x+s.width/2-r.x,y:s.y+s.height/2-r.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(s,r)=>(b(),M("line",Xt({"stroke-width":"15px",stroke:"white"},e.link,{x1:u(l).x,y1:u(l).y,x2:u(a).x,y2:u(a).y}),null,16,Vs))}});const Gs=K({__name:"Links",props:{links:null},setup(e){var m;const n=kt(e,"links"),l=O(null),a=Mn(Jn,O({})),s=Mn(Xn,O(void 0)),r=O((m=l.value)==null?void 0:m.getBoundingClientRect());_t(s,()=>{var d;return r.value=(d=l.value)==null?void 0:d.getBoundingClientRect()}),xn(()=>{var d;return r.value=(d=l.value)==null?void 0:d.getBoundingClientRect()});const c=k(()=>{var y,g;const d=a.value;return(g=(y=n.value)==null?void 0:y.filter(w=>{var v,_;return((v=d[w.startNode.id])==null?void 0:v.rect)&&((_=d[w.startNode.id])==null?void 0:_.rect)}))!=null?g:[]});return(d,y)=>(b(),M(P,null,[u(c)?(b(),M("svg",Ii(Xt({key:0},d.$attrs)),[(b(!0),M(P,null,xl(u(c),(g,w)=>(b(),Q(Ls,{key:w,link:g,boundingRect:r.value,startNode:u(a)[g.startNode.id],endNode:u(a)[g.endNode.id]},null,8,["link","boundingRect","startNode","endNode"]))),128))],16)):F("",!0),f("div",{ref_key:"resizeListener",ref:l,class:"resize-listener"},null,512)],64))}});var Hs=he(Gs,[["__scopeId","data-v-063f6d6b"]]);K({props:{nodes:{type:R(Array),required:!0},leftSideNodes:R(Array),rightSideNodes:R(Array),branches:R(Array)},components:{Links:Hs},setup(e){const{nodes:t,leftSideNodes:n,rightSideNodes:l}=tt(e),a=ht();mt(()=>{const c=We(t);a.value=ce(B(()=>o(P,null,[c.map(m=>o("span",{class:"row tree-row",style:"margin: 50px auto;"},[m.map(wt)]))])))});const s=ht();mt(()=>{const c=We(n);s.value=c?ce(B(()=>o("span",{class:"left-side-nodes small"},[c.map(wt)]))):""});const r=ht();return mt(()=>{const c=We(l);r.value=c?ce(B(()=>o("span",{class:"side-nodes small"},[c.map(wt)]))):""}),{unref:u,nodesComp:a,leftNodesComp:s,rightNodesComp:r}}});K({props:{display:R(Object,String,Function),visibility:{type:R(Number),required:!0},style:R(String,Object,Array),classes:R(Object),onClick:Function,onHold:Function,color:R(String),glowColor:R(String),canClick:{type:R(Boolean),required:!0},mark:R(Boolean,String),id:{type:String,required:!0}},components:{MarkNode:Rn,Node:bn},setup(e){const{onClick:t,onHold:n,display:l}=tt(e),a=Vt(l),{start:s,stop:r}=ei(t,n);return{start:s,stop:r,comp:a,unref:u,Visibility:Ke,isCoercableComponent:Et}}});function an(e){const t=[],n={};let l=!1;function a(){return l||(t.push(...e()),n.base=t.map(c=>Ze(c.base)),n.baseText=t.map(c=>Ze(c.baseText)),n.visible=t.map(c=>Ze(c.visible)),l=!0),t}const s=_e({});return[B(()=>{const c=a();let m=!0;const d=c.map((y,g)=>{var N,I,ne;if(u(n.visible[g])===!1)return null;const w=o("h3",{onClick:()=>s.value[g]=!s.value[g],style:"cursor: pointer"},[o("span",{class:"modifier-toggle"+(u(s.value[g])?" collapsed":"")},[p("\u25BC")]),y.title,y.subtitle?o("span",{class:"subtitle"},[p(" ("),y.subtitle,p(")")]):null]),v=u(s.value[g])?null:o(P,null,[o("div",{class:"modifier-container"},[o("span",{class:"modifier-description"},[wt((N=u(n.baseText[g]))!=null?N:"Base")]),o("span",{class:"modifier-amount"},[ue((I=u(n.base[g]))!=null?I:1),y.unit])]),wt(u(y.modifier.description))]),_=!m;return m=!1,o(P,null,[_?o("br",null,null):null,o("div",null,[w,o("br",null,null),v,o("hr",null,null),o("div",{class:"modifier-container"},[o("span",{class:"modifier-description"},[p("Total")]),o("span",{class:"modifier-amount"},[ue(y.modifier.apply((ne=u(n.base[g]))!=null?ne:1)),y.unit])])])])});return o(P,null,[d])}),s]}function ni(e){const t=Object.values(e).reverse(),n=_e(!0),l=k(()=>t.filter(m=>m.earned.value===!1)),{firstFeature:a,collapsedContent:s,hasCollapsedContent:r}=ss(t,m=>m.earned.value),c=B(()=>{const m=[...l.value];return a.value&&m.push(a.value),as(...m,B(()=>Pn(o(As,{collapsed:n,content:s,display:n.value?"Show other completed milestones":"Hide other completed milestones"},null),[[El,u(r)]])))});return{collapseMilestones:n,display:c}}function sn(e){const t=qs(e.resource),n=()=>{var c,m;if(W.day.value!==e.day)return 1;let s=i.add(t.value,1),r=e.goal;return((m=(c=e.usingLog)==null?void 0:c.value)!=null?m:L.usingLog)&&(s=s.log10(),r=i.log10(r)),i.div(s,r)},l=It(()=>({direction:re.Right,width:600,height:25,fillStyle:{backgroundColor:e.color},textStyle:e.textColor?{color:e.textColor}:void 0,progress:n,display:B(()=>W.day.value===e.day?o(P,null,[Se(t.value),p("/"),Se(e.goal)]):"")})),a=B(()=>o(P,null,[o("div",null,[W.day.value===e.day?o(P,null,[p("Reach "),Se(e.goal),p(" total "),e.resource.displayName,p(" to complete the day")]):o(P,null,[e.name,p(" Complete!")]),e.modal?o(P,null,[" ",p("-")," ",o("button",{class:"button",style:"display: inline-block;",onClick:()=>e.modal.show.value=!0},[p("Check Modifiers")])]):void 0]),de(l),e.modal?de(e.modal.display):void 0]));return mt(()=>{W.day.value===e.day&&i.gte(t.value,e.goal)&&W.completeDay()}),{total:t,trackerDisplay:a}}const Qs=Symbol("Buyable");function Ue(e){const t=_e(0);return ut(()=>{var s,r,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=ln("buyable-"),n.type=Qs,n[Lt]=ti,n.amount=t,n.amount[Ot]=(s=n.initialValue)!=null?s:0,n.canAfford=k(()=>{const m=n,d=u(m.cost);return m.resource!=null&&d!=null&&i.gte(m.resource.value,d)}),n.canPurchase==null&&(n.canPurchase=k(()=>u(n.visibility)===Ke.Visible&&u(n.canAfford)&&i.lt(n.amount.value,u(n.purchaseLimit)))),n.maxed=k(()=>i.gte(n.amount.value,u(n.purchaseLimit))),$(n,"classes");const l=n.classes;n.classes=k(()=>{const m=u(l)||{};return n.maxed.value&&(m.bought=!0),m}),$(n,"canPurchase"),n.canClick=n.canPurchase,n.onClick=n.purchase=(c=(r=n.onClick)!=null?r:n.purchase)!=null?c:function(){var y;const m=n;if(!u(m.canPurchase))return;const d=u(m.cost);m.cost!=null&&m.resource!=null&&(m.resource.value=i.sub(m.resource.value,d),m.amount.value=i.add(m.amount.value,1)),(y=m.onPurchase)==null||y.call(m,d)},$(n,"display");const a=n.display;return n.display=B(()=>{const m=u(a);if(Et(m)){const d=ce(m);return o(d,null,null)}if(m!=null&&n.cost!=null&&n.resource!=null){const d=n,y=ce(m.title||"","h3"),g=ce(m.description||""),w=ce(m.effectDisplay||"");return o("span",null,[m.title?o("div",null,[o(y,null,null)]):null,m.description?o(g,null,null):null,m.showAmount===!1?null:o("div",null,[o("br",null,null),u(d.purchaseLimit)===i.dInf?o(P,null,[p("Amount: "),le(d.amount.value)]):o(P,null,[p("Amount: "),le(d.amount.value),p(" /")," ",le(u(d.purchaseLimit))])]),m.effectDisplay?o("div",null,[o("br",null,null),p("Currently: "),o(w,null,null)]):null,d.cost&&!d.maxed.value?o("div",null,[p("Cost: "),ue(u(d.cost)||0)," ",n.resource.displayName]):null])}return""}),$(n,"visibility"),et(n,"visibility",Ke.Visible),$(n,"cost"),$(n,"resource"),$(n,"purchaseLimit"),et(n,"purchaseLimit",i.dInf),$(n,"style"),$(n,"mark"),$(n,"small"),n[Gt]=function(){const{display:m,visibility:d,style:y,classes:g,onClick:w,canClick:v,small:_,mark:N,id:I}=this;return{display:m,visibility:d,style:u(y),classes:g,onClick:w,canClick:v,small:_,mark:N,id:I}},n})}const Un=Tn({}),tl=Symbol("Hotkey");function nn(e){return ut(()=>{const t=e();return t.type=tl,$(t,"enabled"),et(t,"enabled",!0),$(t,"description"),t})}Te.on("addLayer",e=>{Gl(e,tl).forEach(t=>{Un[t.key]=t})});Te.on("removeLayer",e=>{Gl(e,tl).forEach(t=>{Un[t.key]=void 0})});document.onkeydown=function(e){var l;if(((l=e.target)==null?void 0:l.tagName)==="INPUT"||il.value&&!L.keepGoing)return;let t=e.key;e.shiftKey&&(t="shift+"+t),e.ctrlKey&&(t="ctrl+"+t);const n=Un[t];n&&u(n.enabled)&&(e.preventDefault(),n.onPress())};ts(B(()=>{const e=Object.values(Un).filter(t=>u(t==null?void 0:t.enabled));return e.length===0?"":o("div",null,[o("br",null,null),o("h4",null,[p("Hotkeys")]),e.map(t=>o("div",null,[t==null?void 0:t.key,p(": "),t==null?void 0:t.description]))])}));const js=K({__name:"Sticky",setup(e){const t=O("0"),n=new ResizeObserver(a),l=ht(null);function a(){let s=l.value;if(s==null)return;let r=0;for(;s.previousSibling;){const c=s.previousSibling;c.dataset&&"vSticky"in c.dataset&&(r+=c.offsetHeight),s=c}t.value=r+"px"}return Jt(a),document.fonts.ready.then(a),xn(()=>{var r;const s=(r=l.value)==null?void 0:r.parentElement;s&&n.observe(s)}),(s,r)=>(b(),M("div",{class:"sticky",style:Ge({top:t.value}),ref_key:"element",ref:l,"data-v-sticky":""},[Ct(s.$slots,"default",{},void 0,!0)],4))}});var zs=he(js,[["__scopeId","data-v-cccac690"]]);const wl=K({__name:"Resource",props:{resource:null,color:null},setup(e){const t=e,n=k(()=>wn(t.resource));return(l,a)=>(b(),M("h2",{style:Ge({color:e.color,"text-shadow":"0px 0px 10px "+e.color})},J(u(n)),5))}});const Ks={class:"main-display"},Ws={key:0},Js={key:1},Xs=p(", "),Ys={key:2},Zs=f("br",null,null,-1),eo={class:"main-display"},to={key:0},no={key:1},lo=p(", "),io={key:2},ao=f("br",null,null,-1),gt=K({__name:"MainDisplay",props:{resource:null,color:null,classes:null,style:null,effectDisplay:null,productionDisplay:null,sticky:{type:Boolean,default:!0}},setup(e){const n=tt(e),l=O(null),a=Vt(n.effectDisplay),s=Vt(n.productionDisplay),r=k(()=>i.lt(n.resource.value,"1e1000"));return(c,m)=>{var d,y;return e.sticky?(b(),Q(zs,{key:0},{default:H(()=>{var g,w,v,_;return[f("div",{class:Oe(["main-display-container",(g=e.classes)!=null?g:{}]),style:Ge([{height:`${((v=(w=l.value)==null?void 0:w.$el.clientHeight)!=null?v:0)+50}px`},(_=e.style)!=null?_:{}])},[f("div",Ks,[u(r)?(b(),M("span",Ws,"You have ")):F("",!0),o(wl,{resource:e.resource,color:e.color||"white"},null,8,["resource","color"]),p(" "+J(e.resource.displayName),1),u(a)?(b(),M("span",Js,[Xs,(b(),Q(Ie(u(a)),{ref_key:"effectRef",ref:l},null,512))])):F("",!0),u(s)?(b(),M("span",Ys,[Zs,(b(),Q(Ie(u(s)),{ref_key:"effectRef",ref:l},null,512))])):F("",!0)])],6)]}),_:1})):(b(),M("div",{key:1,class:Oe(["main-display-container",(d=e.classes)!=null?d:{}]),style:Ge([{height:"50px"},(y=e.style)!=null?y:{}])},[f("div",eo,[u(r)?(b(),M("span",to,"You have ")):F("",!0),o(wl,{resource:e.resource,color:e.color||"white"},null,8,["resource","color"]),p(" "+J(e.resource.displayName),1),u(a)?(b(),M("span",no,[lo,(b(),Q(Ie(u(a)),{ref_key:"effectRef",ref:l},null,512))])):F("",!0),u(s)?(b(),M("span",io,[ao,(b(),Q(Ie(u(s)),{ref_key:"effectRef",ref:l},null,512))])):F("",!0)])],6))}}});var so=K({props:{display:{type:R(String,Object,Function),required:!0},visibility:{type:R(Number),required:!0},style:R(String,Object,Array),classes:R(Object),resource:Object,cost:R(String,Object,Number),canPurchase:{type:R(Boolean),required:!0},bought:{type:R(Boolean),required:!0},mark:R(Boolean,String),id:{type:String,required:!0},purchase:{type:Function,required:!0}},components:{Node:bn,MarkNode:Rn},setup(e){const{display:t,cost:n}=tt(e),l=ht("");return mt(()=>{const a=We(t);if(a==null){l.value="";return}if(Et(a)){l.value=ce(a);return}const s=We(n),r=ce(a.title||"","h3"),c=ce(a.description,"div"),m=ce(a.effectDisplay||"");l.value=ce(B(()=>{var d;return o("span",null,[a.title?o("div",null,[o(r,null,null)]):null,o(c,null,null),a.effectDisplay?o("div",null,[p("Currently: "),o(m,null,null)]):null,e.resource!=null&&a.showCost!==!1?o(P,null,[o("br",null,null),p("Cost: "),e.resource&&wn(e.resource,s)," ",(d=e.resource)==null?void 0:d.displayName]):null])}))}),{component:l,unref:u,Visibility:Ke}}});const oo=["disabled"];function ro(e,t,n,l,a,s){var m;const r=qt("MarkNode"),c=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("button",{key:0,style:Ge([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(m=e.unref(e.style))!=null?m:{}]),onClick:t[0]||(t[0]=(...d)=>e.purchase&&e.purchase(...d)),class:Oe({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)?(b(),Q(Ie(e.unref(e.component)),{key:0})):F("",!0),o(r,{mark:e.unref(e.mark)},null,8,["mark"]),o(c,{id:e.id},null,8,["id"])],14,oo)):F("",!0)}var uo=he(so,[["render",ro],["__scopeId","data-v-7f411ac8"]]);const co=Symbol("Upgrade");function Y(e){const t=_e(!1);return ut(()=>{const n=e();return n.id=ln("upgrade-"),n.type=co,n[Lt]=uo,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=k(()=>{const l=n;return l.resource!=null&&l.cost!=null&&i.gte(l.resource.value,u(l.cost))}):$(n,"canAfford"),n.canPurchase=k(()=>u(n.visibility)===Ke.Visible&&u(n.canAfford)&&!u(n.bought)),n.purchase=function(){var a;const l=n;!u(l.canPurchase)||(l.resource!=null&&l.cost!=null&&(l.resource.value=i.sub(l.resource.value,u(l.cost))),t.value=!0,(a=l.onPurchase)==null||a.call(l))},$(n,"visibility"),et(n,"visibility",Ke.Visible),$(n,"classes"),$(n,"style"),$(n,"display"),$(n,"mark"),$(n,"cost"),$(n,"resource"),n[Gt]=function(){const{display:l,visibility:a,style:s,classes:r,resource:c,cost:m,canPurchase:d,bought:y,mark:g,id:w,purchase:v}=this;return{display:l,visibility:a,style:u(s),classes:r,resource:c,cost:m,canPurchase:d,bought:y,mark:g,id:w,purchase:v}},n})}function ae(e){return ut(()=>{const{addend:t,description:n,enabled:l}=e(),a=Ze(t),s=Ze(n),r=l==null?void 0:Ze(l);return{apply:c=>i.add(c,u(a)),revert:c=>i.sub(c,u(a)),enabled:r,description:n==null?void 0:B(()=>o("div",{class:"modifier-container"},[u(s)?o("span",{class:"modifier-description"},[wt(u(s))]):null,o("span",{class:"modifier-amount"},[i.gte(u(a),0)?"+":"",ue(u(a))])]))}})}function x(e){return ut(()=>{const{multiplier:t,description:n,enabled:l}=e(),a=Ze(t),s=Ze(n),r=l==null?void 0:Ze(l);return{apply:c=>i.times(c,u(a)),revert:c=>i.div(c,u(a)),enabled:r,description:n==null?void 0:B(()=>o("div",{class:"modifier-container"},[u(s)?o("span",{class:"modifier-description"},[wt(u(s))]):null,o("span",{class:"modifier-amount"},[p("\xD7"),ue(u(a))])]))}})}function li(e){return ut(()=>{const{exponent:t,description:n,enabled:l,supportLowNumbers:a}=e(),s=Ze(t),r=Ze(n),c=l==null?void 0:Ze(l);return{apply:m=>{let d=m;return a&&(d=i.add(d,1)),d=i.pow(d,u(s)),a&&(d=i.sub(d,1)),d},revert:m=>{let d=m;return a&&(d=i.add(d,1)),d=i.root(d,u(s)),a&&(d=i.sub(d,1)),d},enabled:c,description:n==null?void 0:B(()=>o("div",{class:"modifier-container"},[u(r)?o("span",{class:"modifier-description"},[wt(u(r)),a?" (+1 effective)":null]):null,o("span",{class:"modifier-amount"},[p("^"),ue(u(s))])]))}})}function Z(e){return ut(()=>{const t=e();return{apply:n=>t.filter(l=>u(l.enabled)!==!1).reduce((l,a)=>a.apply(l),n),revert:t.every(n=>n.revert!=null)?n=>t.filter(l=>u(l.enabled)!==!1).reduceRight((l,a)=>a.revert(l),n):void 0,enabled:k(()=>t.filter(n=>u(n.enabled)!==!1).length>0),description:B(()=>o(P,null,[t.filter(n=>u(n.enabled)!==!1).map(n=>u(n.description)).filter(n=>n).map(wt)]))}})}function ii(e){return ut(()=>{const t=e();return t.currentGain==null&&(t.currentGain=k(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=i.floor(n).max(0),u(t.buyMax)||(n=n.min(1)),n})),t.actualGain==null&&(t.actualGain=t.currentGain),t.currentAt==null&&(t.currentAt=k(()=>{let n=t.scaling.currentAt(t);return t.roundUpCost&&(n=i.ceil(n)),n})),t.nextAt==null&&(t.nextAt=k(()=>{let n=t.scaling.nextAt(t);return t.roundUpCost&&(n=i.ceil(n)),n})),t.convert==null&&(t.convert=function(){var a;const n=u(t.currentGain),l=u(t.currentAt);t.gainResource.value=i.add(t.gainResource.value,n),t.spend(n,l),(a=t.onConvert)==null||a.call(t,n)}),t.spend==null&&(t.spend=function(){t.baseResource.value=0}),$(t,"currentGain"),$(t,"actualGain"),$(t,"currentAt"),$(t,"nextAt"),$(t,"buyMax"),et(t,"buyMax",!0),$(t,"roundUpCost"),et(t,"roundUpCost",!0),t})}function nl(e,t){const n=Ze(e),l=Ze(t);return{currentGain(a){let s=u(a.baseResource.value);if(a.costModifier&&(s=a.costModifier.apply(s)),i.lt(s,u(n)))return 0;const r=i.div(s,u(n)).pow(u(l));return r.isNan()?new i(0):r},currentAt(a){let s=u(a.currentGain);return a.gainModifier&&(s=a.gainModifier.revert(s)),s=i.max(0,s).root(u(l)).times(u(n)),a.costModifier&&(s=a.costModifier.revert(s)),s},nextAt(a){let s=i.add(u(a.currentGain),1).floor();return a.gainModifier&&(s=a.gainModifier.revert(s)),s=i.max(0,s).root(u(l)).times(u(n)).max(u(n)),a.costModifier&&(s=a.costModifier.revert(s)),s}}}function ai(e){return ii(e)}function mo(e){return ii(()=>{const t=e();return et(t,"buyMax",!1),t.currentGain==null&&(t.currentGain=k(()=>{let n=t.gainModifier?t.gainModifier.apply(t.scaling.currentGain(t)):t.scaling.currentGain(t);return n=i.floor(n).max(t.gainResource.value),u(t.buyMax)||(n=n.min(i.add(t.gainResource.value,1))),n})),t.actualGain==null&&(t.actualGain=k(()=>{let n=i.sub(i.floor(t.scaling.currentGain(t)),t.gainResource.value).max(0);return u(t.buyMax)||(n=n.min(1)),n})),et(t,"convert",function(){var a;const n=u(t.actualGain),l=u(t.currentAt);t.gainResource.value=t.gainModifier?t.gainModifier.apply(u(t.currentGain)):u(t.currentGain),t.spend(n,l),(a=t.onConvert)==null||a.call(t,n)}),t})}const po="boxes",_l=6,dt=St(po,function(){const e="Boxes",t="#964B00",n=ot(0,"boxes"),l=ai(()=>({scaling:nl(1e10,1),baseResource:se.logs,gainResource:G(n),roundUpCost:!0})),a=we(()=>({display:B(()=>o(P,null,[o("span",{style:"font-size: large"},[p("Create "),le(l.currentGain.value),p(" "),n.displayName]),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost:")," ",wn(se.logs,i.gte(l.actualGain.value,1)?l.currentAt.value:l.nextAt.value)," ",se.logs.displayName])])),canClick:()=>i.gte(l.actualGain.value,1),onClick(){!u(this.canClick)||l.convert()},style:"width: 600px; min-height: unset"})),s=Y(()=>({display:{title:"Carry logs in boxes",description:"Double log gain and unlock a new elf for training"},onPurchase(){W.days[3].recentlyUpdated.value=!0},resource:G(n),cost:100})),r=Y(()=>({display:{title:"Carry ash in boxes",description:"Double ash gain and unlock a new elf for training"},onPurchase(){W.days[3].recentlyUpdated.value=!0},resource:G(n),cost:1e3})),c=Y(()=>({display:{title:"Carry coal in boxes",description:"Double coal gain and unlock a new elf for training"},onPurchase(){W.days[3].recentlyUpdated.value=!0},resource:G(n),cost:4e3})),m={logsUpgrade:s,ashUpgrade:r,coalUpgrade:c},d=Ue(()=>({display:{title:"Carry more logs",description:"Use boxes to carry even more logs, boosting their gain",effectDisplay:B(()=>o(P,null,[ue(i.div(d.amount.value,2).add(1)),p("x")]))},resource:G(n),cost(){return i.pow(3,d.amount.value).times(100)},visibility:()=>U(s.bought.value)})),y=Ue(()=>({display:{title:"Carry more ash",description:"Use boxes to carry even more ash, boosting its gain",effectDisplay:B(()=>o(P,null,[ue(i.div(y.amount.value,2).add(1)),p("x")]))},resource:G(n),cost(){return i.pow(5,y.amount.value).times(1e3)},visibility:()=>U(r.bought.value)})),g=Ue(()=>({display:{title:"Carry more coal",description:"Use boxes to carry even more coal, boosting its gain",effectDisplay:B(()=>o(P,null,[ue(i.div(g.amount.value,2).add(1)),p("x")]))},resource:G(n),cost(){return i.pow(7,g.amount.value).times(1e3)},visibility:()=>U(c.bought.value)})),w={logBoxesBuyable:d,ashBoxesBuyable:y,coalBoxesBuyable:g},{total:v,trackerDisplay:_}=sn({resource:n,goal:5e4,name:e,day:_l,color:t});return{name:e,day:_l,color:t,boxes:n,totalBoxes:v,boxesConversion:l,upgrades:m,buyables:w,minWidth:700,display:B(()=>o(P,null,[de(_),o(ve,null,null),o(gt,{resource:n,color:t,style:"margin-bottom: 0"},null),o(ve,null,null),de(a),o(ve,null,null),Fe(...Object.values(m)),Fe(...Object.values(w))]))}});const fo={class:"field"},ho=K({__name:"Toggle",props:{title:null,modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,l=k(()=>ce(u(n.title)||"","span")),a=k({get(){return!!n.modelValue},set(s){t("update:modelValue",s)}});return(s,r)=>(b(),M("label",fo,[Pn(f("input",{type:"checkbox",class:"toggle","onUpdate:modelValue":r[0]||(r[0]=c=>Le(a)?a.value=c:null)},null,512),[[Ei,u(a)]]),(b(),Q(Ie(u(l))))]))}});var At=he(ho,[["__scopeId","data-v-33d57459"]]);const go={class:"field"},vo={key:0,class:"field-title"},ll=K({__name:"Select",props:{title:null,modelValue:null,options:null,placeholder:null,closeOnSelect:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){var r;const n=e,l=Vt(kt(n,"title"),"span"),a=O((r=n.options.find(c=>c.value===n.modelValue))!=null?r:null);_t(kt(n,"modelValue"),c=>{var m;We(a)!==c&&(a.value=(m=n.options.find(d=>d.value===c))!=null?m:null)});function s(c){t("update:modelValue",c.value)}return(c,m)=>(b(),M("div",go,[u(l)?(b(),M("span",vo,[(b(),Q(Ie(u(l))))])):F("",!0),o(u(Fi),{options:e.options,modelValue:a.value,"onUpdate:modelValue":[m[0]||(m[0]=d=>a.value=d),s],min:1,"label-by":"label",placeholder:e.placeholder,"close-on-select":e.closeOnSelect},null,8,["options","modelValue","placeholder","close-on-select"])]))}});var yo=K({props:{visibility:{type:R(Number),required:!0},display:{type:R(String,Object,Function),required:!0},style:R(String,Object,Array),classes:R(Object),earned:{type:R(Boolean),required:!0},id:{type:String,required:!0}},components:{Node:bn},setup(e){const{display:t}=tt(e),n=ht("");return mt(()=>{const l=We(t);if(l==null){n.value="";return}if(Et(l)){n.value=ce(l);return}const a=ce(l.requirement,"h3"),s=ce(l.effectDisplay||"","b"),r=ce(l.optionsDisplay||"","span");n.value=ce(B(()=>o("span",null,[o(a,null,null),l.effectDisplay?o("div",null,[o(s,null,null)]):null,l.optionsDisplay?o("div",{class:"equal-spaced"},[o(r,null,null)]):null])))}),{comp:n,unref:u,Visibility:Ke}}});function bo(e,t,n,l,a,s){var c;const r=qt("Node");return e.unref(e.visibility)!==e.Visibility.None?(b(),M("div",{key:0,style:Ge([{visibility:e.unref(e.visibility)===e.Visibility.Hidden?"hidden":void 0},(c=e.unref(e.style))!=null?c:{}]),class:Oe({feature:!0,milestone:!0,done:e.unref(e.earned),...e.unref(e.classes)})},[(b(),Q(Ie(e.unref(e.comp)))),o(r,{id:e.id},null,8,["id"])],6)):F("",!0)}var wo=he(yo,[["render",bo],["__scopeId","data-v-f4e8794e"]]);Te.on("setupVue",e=>e.use(Ti));const kl=Fl(),_o=Symbol("Milestone");let Ut;(function(e){e.All="all",e.Configurable="configurable",e.Incomplete="incomplete",e.None="none"})(Ut||(Ut={}));function Ye(e){const t=_e(!1);return ut(()=>{var a;const n=(a=e==null?void 0:e())!=null?a:{};n.id=ln("milestone-"),n.type=_o,n[Lt]=wo,n.earned=t,n.complete=function(){var r;const s=n;if(t.value=!0,(r=s.onComplete)==null||r.call(s),s.display&&u(s.showPopups)===!0){const c=u(s.display),m=ce(Et(c)?c:c.requirement);kl(o(P,null,[o("h3",null,[p("Milestone earned!")]),o("div",null,[o(m,null,null)])]))}},$(n,"visibility"),et(n,"visibility",Ke.Visible);const l=n.visibility;if(n.visibility=k(()=>{const s=u(n.display);switch(Pe.msDisplay){default:case Ut.All:return u(l);case Ut.Configurable:return u(n.earned)&&!(s!=null&&typeof s=="object"&&"optionsDisplay"in s)?Ke.None:u(l);case Ut.Incomplete:return u(n.earned)?Ke.None:u(l);case Ut.None:return Ke.None}}),$(n,"style"),$(n,"classes"),$(n,"display"),$(n,"showPopups"),n[Gt]=function(){const{visibility:s,display:r,style:c,classes:m,earned:d,id:y}=this;return{visibility:s,display:r,style:u(c),classes:m,earned:d,id:y}},n.shouldEarn){const s=n;mt(()=>{var r,c;if(Pe.active===L.id&&!s.earned.value&&u(s.visibility)===Ke.Visible&&((r=s.shouldEarn)==null?void 0:r.call(s))&&(s.earned.value=!0,(c=s.onComplete)==null||c.call(s),s.display&&u(s.showPopups)===!0)){const m=u(s.display),d=ce(Et(m)?m:m.requirement);kl(o(P,null,[o("h3",null,[p("Milestone earned!")]),o("div",null,[o(d,null,null)])]))}})}return n})}Te.on("loadSettings",e=>{et(e,"msDisplay",Ut.All)});const ko=Object.values(Ut).map(e=>({label:Ll(e),value:e}));es(B(()=>o(ll,{title:"Show Milestones",options:ko,"onUpdate:modelValue":e=>Pe.msDisplay=e,modelValue:Pe.msDisplay},null)));const Co=Symbol("Reset");function No(e){return ut(()=>{const t=e();return t.id=ln("reset-"),t.type=Co,t.reset=function(){var l;const n=a=>{if(a&&typeof a=="object")if(Ot in a){const s=a;s.value=s[Ot]}else!(a instanceof i)&&!Le(a)&&Object.values(a).forEach(s=>n(s))};u(t.thingsToReset).forEach(n),Te.emit("reset",t),(l=t.onReset)==null||l.call(t)},$(t,"thingsToReset"),t})}const Nn={};Te.on("removeLayer",e=>{var t;(t=Nn[e.id])==null||t.call(Nn),Nn[e.id]=void 0});const So="paper",Cl=5,pe=St(So,function(){const e="Paper",t="#E8DCB8",n=ot(0,"paper"),l=ot(k(()=>i.min(i.div(se.logs.value,1e9),i.div(q.ash.value,1e6))),"pulp"),a=ai(()=>({scaling:nl(1,1.2),baseResource:l,gainResource:G(n),roundUpCost:!0,spend(oe,V){se.logs.value=i.sub(se.logs.value,i.times(V,1e9)),q.ash.value=i.sub(q.ash.value,i.times(V,1e6))},gainModifier:ne})),s=we(()=>({display:B(()=>{const oe=i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value;return o(P,null,[o("span",{style:"font-size: large"},[p("Create "),le(a.currentGain.value),p(" "),n.displayName]),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost: "),wn(se.logs,oe),p(" "),l.displayName,p(" ("),le(i.times(oe,1e9)),p(" "),se.logs.displayName,p(";")," ",le(i.times(oe,1e6)),p(" "),q.ash.displayName,p(")")])])}),canClick:()=>i.gte(a.actualGain.value,1),onClick(){!u(this.canClick)||a.convert()},style:"width: 600px; min-height: unset"}));function r(oe){const V=Ue(()=>({...oe,display:{title:oe.name,description:`Print a copy of "${oe.name}", which ${oe.elfName} will use to improve their skills! Each copy printed will reduce the "${oe.buyableName}" price scaling by 0.95x and make ${oe.elfName} purchase +10% faster!`,effectDisplay:B(()=>o(P,null,[ue(i.pow(.95,V.amount.value)),p("x price scaling,")," ",ue(i.div(V.amount.value,10).add(1)),p("x auto-purchase speed")])),showAmount:!1},resource:G(n),cost:()=>i.pow(5,V.amount.value).times(10),style:"width: 600px"}));return V}const c=r({name:"Now You're Logging!",elfName:"Holly",buyableName:"Generic Cutters"}),m=r({name:"The Man Who Planted Trees",elfName:"Ivy",buyableName:"Generic Planters"}),d=r({name:"Logjam",elfName:"Hope",buyableName:"Expand Forest"}),y=r({name:"Fahrenheit 451",elfName:"Jack",buyableName:"Heated Cutters"}),g=r({name:"Tillamook Burn Country",elfName:"Mary",buyableName:"Heated Planters"}),w=r({name:"The Garden Tree's Handbook",elfName:"Noel",buyableName:"Fertilized Soil"}),v=r({name:"Firestarter",elfName:"Joy",buyableName:"Small Fire",visibility:()=>U(Ve.elves.smallFireElf.bought.value)}),_=r({name:"An Arsonist's Guide to Writer's Homes in New England",elfName:"Faith",buyableName:"Bonfire",visibility:()=>U(Ve.elves.bonfireElf.bought.value)}),N=r({name:"Little Fires Everywhere",elfName:"Snowball",buyableName:"Kiln",visibility:()=>U(Ve.elves.kilnElf.bought.value)}),I={cuttersBook:c,plantersBook:m,expandersBook:d,heatedCuttersBook:y,heatedPlantersBook:g,fertilizerBook:w,smallFireBook:v,bonfireBook:_,kilnBook:N},ne=Z(()=>[x(()=>({multiplier:2,description:"Scholar's shoes",enabled:Nt.paperUpgrades.paperUpgrade1.bought})),x(()=>({multiplier:2,description:"Scholar's slacks",enabled:Nt.paperUpgrades.paperUpgrade2.bought})),x(()=>({multiplier:2,description:"Scholar's jacket",enabled:Nt.paperUpgrades.paperUpgrade3.bought}))]),[A,S]=an(()=>[{title:"Paper Gain",modifier:ne,base:1}]),T=O(!1),ye=B(()=>o(rt,{modelValue:T.value,"onUpdate:modelValue":oe=>T.value=oe},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:A})),{total:Me,trackerDisplay:Ae}=sn({resource:n,goal:5e3,name:e,day:Cl,color:t,textColor:"var(--feature-foreground)",modal:{show:T,display:ye}});return{name:e,day:Cl,color:t,paper:n,totalPaper:Me,paperConversion:a,books:I,generalTabCollapsed:S,minWidth:700,display:B(()=>o(P,null,[de(Ae),o(ve,null,null),o(gt,{resource:n,color:t,style:"margin-bottom: 0"},null),o(ve,null,null),de(s),o(ve,null,null),dn(...Object.values(I))]))}}),Mo="workshop",on=2,st=St(Mo,function(){const e="Workshop",t="#D66B02",n="#D66B02",l=ot(0,"foundation progress"),a=mo(()=>({scaling:nl(250,1.5),baseResource:se.logs,gainResource:G(l),roundUpCost:!0,buyMax:!1,spend(T,ye){se.logs.value=i.sub(se.logs.value,ye)}})),s=we(()=>({display:B(()=>o(P,null,[o("b",{style:"font-size: x-large"},[p("Build part of the foundation")]),o("br",null,null),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost:")," ",wn(se.logs,i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value)," ",se.logs.displayName])])),visibility:()=>U(i.lt(l.value,100)),canClick:()=>i.gte(a.actualGain.value,1)&&i.lt(l.value,100),onClick(){!u(this.canClick)||a.convert()},style:"width: 600px; min-height: unset"})),r=nn(()=>({key:"w",description:"Build part of the foundation.",onPress:()=>{s.canClick.value&&s.onClick()}})),c=k(()=>!Ve.milestones[6].earned.value),m=Ye(()=>({display:{requirement:"1% Foundation Completed",effectDisplay:"Trees give 5% more logs for each % of foundation completed"},shouldEarn:()=>i.gte(l.value,1),showPopups:c})),d=Ye(()=>({display:{requirement:"10% Foundation Completed",effectDisplay:"Cut an additional tree per second for each 5% of foundation completed"},shouldEarn:()=>i.gte(l.value,10),visibility:()=>U(m.earned.value),showPopups:c})),y=Ye(()=>({display:{requirement:"20% Foundation Completed",effectDisplay:"Plant an additional tree per second for each 10% of foundation completed"},shouldEarn:()=>i.gte(l.value,20),visibility:()=>U(d.earned.value),showPopups:c})),g=Ye(()=>({display:{requirement:"30% Foundation Completed",effectDisplay:"All automatic tree cutting is doubled"},shouldEarn:()=>i.gte(l.value,30),visibility:()=>U(y.earned.value),showPopups:c})),w=Ye(()=>({display:{requirement:"40% Foundation Completed",effectDisplay:"All automatic tree planting is doubled"},shouldEarn:()=>i.gte(l.value,40),visibility:()=>U(g.earned.value),showPopups:c})),v=Ye(()=>({display:{requirement:"50% Foundation Completed",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(l.value,50),visibility:()=>U(w.earned.value),showPopups:c})),_=Ye(()=>({display:{requirement:"75% Foundation Completed",effectDisplay:"The forest gains an extra tree for every 2% of foundation completed"},shouldEarn:()=>i.gte(l.value,75),visibility:()=>U(v.earned.value),showPopups:c})),N=Ye(()=>({display:{requirement:"100% Foundation Completed",effectDisplay:"Log per tree is raised to the 1.2th power"},shouldEarn:()=>i.gte(l.value,100),visibility:()=>U(_.earned.value),showPopups:c})),I={logGainMilestone1:m,autoCutMilestone1:d,autoPlantMilestone1:y,autoCutMilestone2:g,autoPlantMilestone2:w,logGainMilestone2:v,morePlantsMilestone1:_,logGainMilestone3:N},{collapseMilestones:ne,display:A}=ni(I),S=It(()=>({direction:re.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>W.day.value===on?i.div(l.value,100):1,display:B(()=>W.day.value===on?o(P,null,[le(l.value),p("%")]):"")}));return mt(()=>{W.day.value===on&&i.gte(l.value,100)&&W.completeDay()}),{name:e,day:on,color:t,foundationProgress:l,foundationConversion:a,milestones:I,collapseMilestones:ne,minWidth:700,buildFoundationHK:r,display:B(()=>o(P,null,[o("div",null,[W.day.value===on?"Complete the foundation to complete the day":`${e} Complete!`]),de(S),o(ve,null,null),o("div",null,[o("span",null,[p("The foundation is ")]),o("h2",{style:`color: ${t}; text-shadow: 0 0 10px ${t}`},[le(l.value)]),p("% completed")]),i.lt(l.value,100)?o(ve,null,null):null,de(s),o(ve,null,null),A()]))}}),Ao="elves",rn=4,Ve=St(Ao,function(){const e="Elves",t="red",n="#911D21",a=It(()=>({direction:re.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>W.day.value===rn?i.div(me.value,6).times(.8333333333333334).add(i.div(i.add(q.coal.value,1).log10(),i.log10(1e9)).clamp(0,1).div(6)):1,display:B(()=>W.day.value===rn?i.lt(me.value,6)?o(P,null,[le(me.value),p("/6 elves")]):o(P,null,[le(q.coal.value),p("/"),le(1e9),p(" coal")]):"")})),s=No(()=>({thingsToReset:[se,st,q],onReset(){setTimeout(()=>{Xe.earned.value?(se.row1Upgrades.forEach(j=>j.bought.value=!0),se.row2Upgrades.forEach(j=>j.bought.value=!0)):je.earned.value&&(se.row1Upgrades[4].bought.value=!0,se.row2Upgrades[4].bought.value=!0),ze.earned.value&&(st.foundationProgress.value=100)})}})),r=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.cuttersBook.amount.value,.1).add(1),description:"Now You're Logging!",enabled:()=>i.gt(pe.books.cuttersBook.amount.value,0)}))]),c=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.plantersBook.amount.value,.1).add(1),description:"The Man Who Planted Trees",enabled:()=>i.gt(pe.books.plantersBook.amount.value,0)}))]),m=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.expandersBook.amount.value,.1).add(1),description:"Logjam",enabled:()=>i.gt(pe.books.expandersBook.amount.value,0)}))]),d=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.heatedCuttersBook.amount.value,.1).add(1),description:"Fahrenheit 451",enabled:()=>i.gt(pe.books.heatedCuttersBook.amount.value,0)}))]),y=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.heatedPlantersBook.amount.value,.1).add(1),description:"Tillamook Burn Country",enabled:()=>i.gt(pe.books.heatedPlantersBook.amount.value,0)}))]),g=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.fertilizerBook.amount.value,.1).add(1),description:"The Garden Tree's Handbook",enabled:()=>i.gt(pe.books.fertilizerBook.amount.value,0)}))]),w=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.smallFireBook.amount.value,.1).add(1),description:"Firestarter",enabled:()=>i.gt(pe.books.smallFireBook.amount.value,0)}))]),v=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.bonfireBook.amount.value,.1).add(1),description:"An Arsonist's Guide to Writer's Homes in New England",enabled:()=>i.gt(pe.books.bonfireBook.amount.value,0)}))]),_=Z(()=>[x(()=>({multiplier:2,description:"6 Elves Trained",enabled:ke.earned})),x(()=>({multiplier:()=>i.times(pe.books.kilnBook.amount.value,.1).add(1),description:"Little Fires Everywhere",enabled:()=>i.gt(pe.books.kilnBook.amount.value,0)}))]),[N,I]=an(()=>[{title:"Holly Auto-Buy Frequency",modifier:r,base:10,unit:"/s",visible:ge.cuttersElf.bought},{title:"Ivy Auto-Buy Frequency",modifier:c,base:10,unit:"/s",visible:ge.plantersElf.bought},{title:"Hope Auto-Buy Frequency",modifier:m,base:10,unit:"/s",visible:ge.expandersElf.bought},{title:"Jack Auto-Buy Frequency",modifier:d,base:10,unit:"/s",visible:ge.heatedCuttersElf.bought},{title:"Mary Auto-Buy Frequency",modifier:y,base:10,unit:"/s",visible:ge.heatedPlantersElf.bought},{title:"Noel Auto-Buy Frequency",modifier:g,base:10,unit:"/s",visible:ge.fertilizerElf.bought},{title:"Joy Auto-Buy Frequency",modifier:w,base:10,unit:"/s",visible:ge.smallFireElf.bought},{title:"Faith Auto-Buy Frequency",modifier:v,base:10,unit:"/s",visible:ge.bonfireElf.bought},{title:"Snowball Auto-Buy Frequency",modifier:_,base:10,unit:"/s",visible:ge.kilnElf.bought}]),ne=O(!1),A=B(()=>o(rt,{modelValue:ne.value,"onUpdate:modelValue":j=>ne.value=j},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:N}));function S(j){var Qt;const vt=k(()=>i.pow(4,me.value).times(1e6)),lt=_e(0),te=j.hasToggle?_e(!1):O(!0),Mt=k(()=>j.cooldownModifier.apply(10)),Ft=Ze((Qt=j.canBuy)!=null?Qt:!0);function Tt(ft){var Yt;if(D.bought.value&&u(Ft)){lt.value=i.add(lt.value,ft);const Dt=i.recip(Mt.value);for(;i.gte(lt.value,Dt);)if(j.customCost==null?u(j.buyable.canPurchase):i.gte(j.buyable.resource.value,j.customCost(j.buyable.amount.value)))j.buyable.amount.value=i.add(j.buyable.amount.value,1),lt.value=i.sub(lt.value,Dt),(Yt=j.onAutoPurchase)==null||Yt.call(j);else{lt.value=Dt;break}}}const D=Y(()=>({...j,buyable:void 0,toggle:te,buyProgress:lt,update:Tt,resource:q.coal,cost:vt,computedAutoBuyCooldown:Mt,display:()=>({title:j.name,description:B(()=>o(P,null,[j.description,D.bought.value?null:o(P,null,[" ",p("Training this elf will require resetting all your progress from days 1-3.")]),D.bought.value&&j.hasToggle===!0?o(P,null,[o(At,{title:j.toggleDesc,"onUpdate:modelValue":ft=>te.value=ft,modelValue:te.value},null)]):null])),showCost:!D.bought.value}),style:"width: 190px",onPurchase(){var ft;(ft=j.onPurchase)==null||ft.call(j),s.reset()}}));return D}const T=S({name:"Holly",description:"Holly will automatically purchase cutters you can afford, without actually spending any logs.",buyable:se.row1Buyables[0],cooldownModifier:r}),ye=S({name:"Ivy",description:"Ivy will automatically purchase planters you can afford, without actually spending any logs.",buyable:se.row1Buyables[1],cooldownModifier:c}),Me=S({name:"Hope",description:"Hope will automatically purchase forest expanders you can afford, without actually spending any logs.",buyable:se.row1Buyables[2],cooldownModifier:m}),Ae=[T,ye,Me],oe=S({name:"Jack",description:"Jack will automatically purchase heated cutters you can afford, without actually spending any coal.",buyable:q.heatedCutters,cooldownModifier:d}),V=S({name:"Mary",description:"Mary will automatically purchase heated planters you can afford, without actually spending any coal.",buyable:q.heatedPlanters,cooldownModifier:y}),Qe=S({name:"Noel",description:"Noel will automatically purchase fertilized soil you can afford, without actually spending any ash.",buyable:q.moreFertilizer,cooldownModifier:g}),at=[oe,V,Qe],De=S({name:"Joy",description:"Joy will automatically purchase small fires you can afford, without actually spending any logs. You can toggle whether or not to enable the purchased small fires automatically. Small fires will start giving a boost to ash and coal gain.",buyable:q.buildFire,cooldownModifier:w,visibility:()=>U(dt.upgrades.logsUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased small fires",onAutoPurchase(){De.toggle.value&&(q.activeFires.value=i.add(q.activeFires.value,1))},onPurchase(){W.days[4].recentlyUpdated.value=!0}}),be=S({name:"Faith",description:"Faith will automatically purchase bonfires you can afford. You can toggle whether or not to enable the purchased bonfires automatically. Bonfires will start giving a boost to ash and coal gain.",buyable:q.buildBonfire,cooldownModifier:v,visibility:()=>U(dt.upgrades.ashUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased bonfires",onAutoPurchase(){const j=u(this.buyable.cost);q.activeFires.value=i.sub(q.activeFires.value,j).max(0),q.buildFire.amount.value=i.sub(q.buildFire.amount.value,j).max(0),be.toggle.value&&(q.activeBonfires.value=i.add(q.activeBonfires.value,1))},onPurchase(){W.days[4].recentlyUpdated.value=!0},canBuy:q.unlockBonfire.bought}),Ce=S({name:"Snowball",description:"Snowball will automatically purchase kilns you can afford, without actually spending any logs. You can toggle whether or not to enable the purchased kilns automatically. Kilns will start giving a boost to ash and coal gain.",buyable:q.buildKiln,cooldownModifier:_,visibility:()=>U(dt.upgrades.coalUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased kilns",onAutoPurchase(){Ce.toggle.value&&(q.activeKilns.value=i.add(q.activeKilns.value,1))},onPurchase(){W.days[4].recentlyUpdated.value=!0},canBuy:q.unlockKiln.bought}),Ee=[De,be,Ce],ge={cuttersElf:T,plantersElf:ye,expandersElf:Me,heatedCuttersElf:oe,heatedPlantersElf:V,fertilizerElf:Qe,smallFireElf:De,bonfireElf:be,kilnElf:Ce},me=k(()=>Object.values(ge).filter(j=>j.bought.value).length),ie=Ye(()=>({display:{requirement:"1 Elf Trained",effectDisplay:"Manual cutting and planting can happen twice as often for each trained elf"},shouldEarn:()=>i.gte(me.value,1)})),je=Ye(()=>({display:{requirement:"2 Elves Trained",effectDisplay:"Research I & II aren't reset after training"},shouldEarn:()=>i.gte(me.value,2),visibility:()=>U(ie.earned.value)})),Ne=Ye(()=>({display:{requirement:"3 Elves Trained",effectDisplay:"Coal gain is raised to the 1.25"},shouldEarn:()=>i.gte(me.value,3),visibility:()=>U(je.earned.value)})),Je=Ye(()=>({display:{requirement:"4 Elves Trained",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(me.value,4),visibility:()=>U(Ne.earned.value)})),Be=Ye(()=>({display:{requirement:"5 Elves Trained",effectDisplay:"Forest is twice as large"},shouldEarn:()=>i.gte(me.value,5),visibility:()=>U(Je.earned.value)})),ke=Ye(()=>({display:{requirement:"6 Elves Trained",effectDisplay:"Elves work twice as fast"},shouldEarn:()=>i.gte(me.value,6),visibility:()=>U(Be.earned.value)})),ze=Ye(()=>({display:{requirement:"7 Elves Trained",effectDisplay:"Workshop Foundation starts at 100% complete after training"},shouldEarn:()=>i.gte(me.value,7),visibility:()=>U(ke.earned.value&&W.day.value>5)})),ee=Ye(()=>({display:{requirement:"8 Elves Trained",effectDisplay:"Forest is twice as large (again)"},shouldEarn:()=>i.gte(me.value,8),visibility:()=>U(ze.earned.value)})),Xe=Ye(()=>({display:{requirement:"9 Elves Trained",effectDisplay:"Trees upgrades aren't reset after training"},shouldEarn:()=>i.gte(me.value,9),visibility:()=>U(ee.earned.value)})),$e=[ie,je,Ne,Je,Be,ke,ze,ee,Xe],nt={manualMilestone:ie,researchMilestone:je,coalGainMilestone:Ne,logGainMilestone:Je,forestMilestone:Be,elvesMilestone:ke,foundationMilestone:ze,forestMilestone2:ee,treeUpgradesMilestone:Xe},{collapseMilestones:Ht,display:ct}=ni(nt);return Te.on("update",j=>{i.lt(W.day.value,rn)||Object.values(ge).forEach(vt=>vt.update(j))}),mt(()=>{W.day.value===rn&&i.gte(me.value,6)&&i.gte(q.coal.value,1e9)&&W.completeDay()}),{name:e,color:t,elves:ge,totalElves:me,milestones:$e,collapseMilestones:Ht,generalTabCollapsed:I,minWidth:700,display:B(()=>o(P,null,[o("div",null,[W.day.value===rn?`Reach ${le(6)} trained elves and ${le(1e9)} ${q.coal.displayName} to complete the day`:`${e} Complete!`," ",p("-")," ",o("button",{class:"button",style:"display: inline-block;",onClick:()=>ne.value=!0},[p("Check Modifiers")])]),de(a),de(A),o(ve,null,null),o("div",{style:"width: 600px"},[Fe(...Ae),Fe(...at),Fe(...Ee)]),ct()]))}}),Io="coal",Nl=3,q=St(Io,function(){const e="Coal",t="#151716",n="#B2BeB5",l="var(--foreground)",a=ot(0,"coal"),s=ot(0,"ash"),r=_e(0),c=k(()=>i.times(r.value,1e3)),m=k(()=>i.times(r.value,.1)),d=k(()=>i.times(r.value,50)),y=Ue(()=>({resource:se.logs,cost(){let E=i.times(T.amount.value,u(T.cost)).plus(this.amount.value);return i.gte(E,100)&&(E=i.pow(E,2).div(100)),i.gte(E,1e4)&&(E=i.pow(E,2).div(1e4)),E=i.pow(.95,pe.books.smallFireBook.amount.value).times(E),E.pow(1.5).times(1e4)},display:B(()=>o(P,null,[o("h3",null,[p("Small Fire")]),o("br",null,null),p("Burn 1000 logs for 0.1 coal and 50 ash"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("-"),ue(c.value),p(" logs/sec"),o("br",null,null),p("+"),ue(m.value),p(" coal/sec"),o("br",null,null),p("+"),ue(d.value),p(" ash/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(y.cost)),p(" "),y.resource.displayName])),onPurchase(){r.value=i.add(r.value,1)},style:{color:l,width:"160px"}})),g=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(r.value,0)},onClick(){r.value=0}})),w=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(r.value,0)},onClick(){r.value=i.sub(r.value,1)}})),v=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(r.value,y.amount.value)},onClick(){r.value=i.add(r.value,1)}})),_=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(r.value,y.amount.value)},onClick(){r.value=y.amount.value}})),N=ot(y.amount,"small fires"),I=_e(0),ne=k(()=>i.times(I.value,1e4)),A=k(()=>i.times(I.value,10)),S=k(()=>i.times(I.value,1e3)),T=Ue(()=>({resource:N,cost(){return i.pow(.95,pe.books.bonfireBook.amount.value).times(10)},display:B(()=>o(P,null,[o("h3",null,[p("Bonfire")]),o("br",null,null),p("Burn 10,000 logs for 10 coal and 1000 ash"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("-"),ue(ne.value),p(" logs/sec"),o("br",null,null),p("+"),ue(A.value),p(" coal/sec"),o("br",null,null),p("+"),ue(S.value),p(" ash/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(T.cost)),p(" "),T.resource.displayName])),onPurchase(E){r.value=i.sub(r.value,E).max(0),I.value=i.add(I.value,1)},style:{color:l,width:"160px"},visibility:()=>U(nt.bought.value)})),ye=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(I.value,0)},onClick(){I.value=0}})),Me=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(I.value,0)},onClick(){I.value=i.sub(I.value,1)}})),Ae=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(I.value,T.amount.value)},onClick(){I.value=i.add(I.value,1)}})),oe=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(I.value,T.amount.value)},onClick(){I.value=T.amount.value}})),V=_e(0),Qe=k(()=>i.times(V.value,1e6)),at=k(()=>i.times(V.value,1e4)),De=k(()=>i.times(V.value,1e4)),be=Ue(()=>({resource:se.logs,cost(){let E=this.amount.value;return i.gte(E,100)&&(E=i.pow(E,2).div(100)),i.gte(E,1e4)&&(E=i.pow(E,2).div(1e4)),E=i.pow(.95,pe.books.kilnBook.amount.value).times(E),i.pow(1.1,E).times(1e7)},display:B(()=>o(P,null,[o("h3",null,[p("Charcoal Kiln")]),o("br",null,null),p("Burn 1,000,000 logs for 10,000 coal and 10,000 ash"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("-"),ue(Qe.value),p(" logs/sec"),o("br",null,null),p("+"),ue(at.value),p(" coal/sec"),o("br",null,null),p("+"),ue(De.value),p(" ash/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(be.cost)),p(" "),be.resource.displayName])),onPurchase(){V.value=i.add(V.value,1)},style:{color:l,width:"160px"},visibility:()=>U(lt.bought.value)})),Ce=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(V.value,0)},onClick(){V.value=0}})),Ee=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(V.value,0)},onClick(){V.value=i.sub(V.value,1)}})),ge=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(V.value,be.amount.value)},onClick(){V.value=i.add(V.value,1)}})),me=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(V.value,be.amount.value)},onClick(){V.value=be.amount.value}})),ie=_e(0),je=k(()=>i.times(ie.value,5e7)),Ne=Ue(()=>({resource:mn.metal,cost(){let E=this.amount.value;return i.gte(E,100)&&(E=i.pow(E,2).div(100)),i.gte(E,1e4)&&(E=i.pow(E,2).div(1e4)),i.pow(1.15,E).times(10)},display:B(()=>o(P,null,[o("h3",null,[p("Mining Drill")]),o("br",null,null),p("Dig through the ground to find 50,000,000 coal"),o("br",null,null),o("br",null,null),p("Currently:"),o("br",null,null),p("+"),ue(je.value),p(" coal/sec"),o("br",null,null),o("br",null,null),p("Cost: "),le(u(Ne.cost)),p(" "),Ne.resource.displayName])),onPurchase(){ie.value=i.add(ie.value,1)},style:{color:l,width:"160px"},visibility:()=>U(mn.coalDrill.bought.value)})),Je=we(()=>({display:"0",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(ie.value,0)},onClick(){ie.value=0}})),Be=we(()=>({display:"-",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.gt(ie.value,0)},onClick(){ie.value=i.sub(ie.value,1)}})),ke=we(()=>({display:"+",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(ie.value,Ne.amount.value)},onClick(){ie.value=i.add(ie.value,1)}})),ze=we(()=>({display:"Max",style:{minHeight:"20px",width:"40px",color:l},canClick(){return i.lt(ie.value,Ne.amount.value)},onClick(){ie.value=Ne.amount.value}})),ee=Y(()=>({resource:G(a),cost:5,display:{title:"Warmer Cutters",description:"Cut down twice as many trees/s"},style:{color:l}})),Xe=Y(()=>({resource:G(a),cost:5,display:{title:"Warmer Planters",description:"Plant twice as many trees/s"},style:{color:l}})),$e=Y(()=>({resource:G(s),cost:5e3,display:{title:"Ashy Soil",description:"Trees give 25% more logs"},style:{color:l}})),nt=Y(()=>({resource:N,cost:10,display:{title:"Bigger Fires",description:"Put all those fires together into a larger blaze"},onPurchase(){N.value=i.add(N.value,this.cost)},style:{color:l}})),Ht=[ee,Xe,$e,nt],ct=Y(()=>({resource:G(a),cost:250,display:{title:"Dedicated Cutter Heaters",description:"Double the bonus from Heated Cutters"},style:{color:l},visibility:()=>U(nt.bought.value)})),j=Y(()=>({resource:G(a),cost:250,display:{title:"Dedicated Planter Heaters",description:"Double the bonus from Heated Planters"},style:{color:l},visibility:()=>U(nt.bought.value)})),vt=Y(()=>({canAfford(){return i.gte(se.logs.value,1e5)&&i.gte(s.value,1e5)},onPurchase(){se.logs.value=i.sub(se.logs.value,1e5),s.value=i.sub(s.value,1e5)},display:B(()=>o(P,null,[o("h3",null,[p("Mulched Soil")]),o("br",null,null),p("Double the bonus from Fertilized Soil"),o("br",null,null),o("br",null,null),p("Cost: "),le(1e5),p(" "),se.logs.displayName,o("br",null,null),le(1e5),p(" "),s.displayName])),style:{color:l},visibility:()=>U(nt.bought.value)})),lt=Y(()=>({resource:se.logs,cost:1e7,display:{title:"Efficient Fires",description:"Move the fires underground to keep the coal from turning to ash"},style:{color:l},visibility:()=>U(nt.bought.value)})),te=[ct,j,vt,lt],Mt=Ue(()=>({resource:G(a),cost(){let E=this.amount.value;return i.gte(E,50)&&(E=i.pow(E,2).div(50)),i.gte(E,200)&&(E=i.pow(E,2).div(200)),i.gte(E,2e6)&&(E=i.pow(E,2).div(2e6)),E=i.pow(.95,pe.books.heatedCuttersBook.amount.value).times(E),i.add(E,1).pow(2.5).times(10)},display:{title:"Heated Cutters",description:"Even warmer cutters cut down trees faster",effectDisplay:B(()=>o(P,null,[p("Cutters cut down trees "),ue(ft.value),p("x faster")]))},style:{color:l},visibility:()=>U(ee.bought.value)})),Ft=Ue(()=>({resource:G(a),cost(){let E=this.amount.value;return i.gte(E,50)&&(E=i.pow(E,2).div(50)),i.gte(E,200)&&(E=i.pow(E,2).div(200)),i.gte(E,2e6)&&(E=i.pow(E,2).div(2e6)),E=i.pow(.95,pe.books.heatedPlantersBook.amount.value).times(E),i.add(E,1).pow(2.5).times(10)},display:{title:"Heated Planters",description:"Even warmer planters plant trees faster",effectDisplay:B(()=>o(P,null,[p("Planters plant trees "),ue(Dt.value),p("x faster")]))},style:{color:l},visibility:()=>U(Xe.bought.value)})),Tt=Ue(()=>({resource:G(s),cost(){let E=this.amount.value;return i.gte(E,50)&&(E=i.pow(E,2).div(50)),i.gte(E,200)&&(E=i.pow(E,2).div(200)),i.gte(E,2e6)&&(E=i.pow(E,2).div(2e6)),E=i.pow(.95,pe.books.fertilizerBook.amount.value).times(E),i.add(E,1).pow(1.5).times(5e4)},display:{title:"Fertilized Soil",description:"More fertilizer helps trees grow bigger",effectDisplay:B(()=>o(P,null,[p("Trees give "),ue(ol.value),p("x more logs")]))},style:{color:l},visibility:()=>U($e.bought.value)})),D=[Mt,Ft,Tt],Qt=Z(()=>[ae(()=>({addend(){return i.times(Mt.amount.value,.25)},description:"Heated Cutters",enabled(){return i.gt(Mt.amount.value,0)}})),x(()=>({multiplier:2,description:"Dedicated Cutter Heaters",enabled:ct.bought}))]),ft=k(()=>Qt.apply(1)),Yt=Z(()=>[ae(()=>({addend(){return i.times(Ft.amount.value,.25)},description:"Heated Planters",enabled(){return i.gt(Ft.amount.value,0)}})),x(()=>({multiplier:2,description:"Dedicated Planter Heaters",enabled:j.bought}))]),Dt=k(()=>Yt.apply(1)),bi=Z(()=>[ae(()=>({addend(){return i.times(Tt.amount.value,.25)},description:"Fertilized Soil",enabled(){return i.gt(Tt.amount.value,0)}})),x(()=>({multiplier:2,description:"Mulched Soil",enabled:vt.bought}))]),ol=k(()=>bi.apply(1)),rl=Z(()=>[ae(()=>({addend(){return m.value},description:"Small Fires",enabled(){return i.gt(r.value,0)}})),ae(()=>({addend(){return A.value},description:"Bonfires",enabled(){return i.gt(I.value,0)}})),ae(()=>({addend(){return at.value},description:"Charcoal Kilns",enabled(){return i.gt(V.value,0)}})),ae(()=>({addend(){return je.value},description:"Mining Drills",enabled(){return i.gt(ie.value,0)}})),x(()=>({multiplier:2,description:"Carry coal in boxes",enabled:dt.upgrades.coalUpgrade.bought})),x(()=>({multiplier:()=>i.div(dt.buyables.coalBoxesBuyable.amount.value,2).add(1),description:"Carry more coal",enabled:dt.upgrades.coalUpgrade.bought})),x(()=>({multiplier:()=>i.div(y.amount.value,1e4).add(1),description:"Small Fires Synergy",enabled:Ve.elves.smallFireElf.bought})),x(()=>({multiplier:()=>i.div(T.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:Ve.elves.bonfireElf.bought})),x(()=>({multiplier:()=>i.div(be.amount.value,100).add(1),description:"Kiln Synergy",enabled:Ve.elves.kilnElf.bought})),x(()=>({multiplier:2,description:"Mining overalls",enabled:Nt.metalUpgrades.metalUpgrade2.bought})),x(()=>({multiplier:3,description:"Mining helmet",enabled:Nt.metalUpgrades.metalUpgrade3.bought})),li(()=>({exponent:1.25,description:"3 Elves Trained",enabled:Ve.milestones[2].earned,supportLowNumbers:!0}))]),kn=k(()=>rl.apply(0)),ul=Z(()=>[ae(()=>({addend(){return d.value},description:"Small Fires",enabled(){return i.gt(r.value,0)}})),ae(()=>({addend(){return S.value},description:"Bonfires",enabled(){return i.gt(I.value,0)}})),ae(()=>({addend(){return De.value},description:"Charcoal Kilns",enabled(){return i.gt(V.value,0)}})),x(()=>({multiplier:2,description:"Carry ash in boxes",enabled:dt.upgrades.ashUpgrade.bought})),x(()=>({multiplier:()=>i.div(dt.buyables.ashBoxesBuyable.amount.value,2).add(1),description:"Carry more ash",enabled:dt.upgrades.ashUpgrade.bought})),x(()=>({multiplier:()=>i.div(y.amount.value,1e3).add(1),description:"Small Fires Synergy",enabled:Ve.elves.smallFireElf.bought})),x(()=>({multiplier:()=>i.div(T.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:Ve.elves.bonfireElf.bought})),x(()=>({multiplier:()=>i.div(be.amount.value,100).add(1),description:"Kiln Synergy",enabled:Ve.elves.kilnElf.bought})),x(()=>({multiplier:4,description:"Mining boots",enabled:Nt.metalUpgrades.metalUpgrade1.bought}))]),qn=k(()=>ul.apply(0)),cl=Z(()=>[ae(()=>({addend(){return i.negate(c.value)},description:"Small Fires",enabled(){return i.gt(r.value,0)}})),ae(()=>({addend(){return i.negate(ne.value)},description:"Bonfires",enabled(){return i.gt(I.value,0)}})),ae(()=>({addend(){return i.negate(Qe.value)},description:"Charcoal Kilns",enabled(){return i.gt(V.value,0)}}))]),dl=k(()=>cl.apply(0)),[wi,_i]=an(()=>[{title:"Log Consumption",modifier:cl,base:0,visible(){return i.gt(r.value,0)||i.gt(I.value,0)||i.gt(V.value,0)}},{title:"Coal Gain",modifier:rl,base:0,visible(){return i.gt(r.value,0)||i.gt(I.value,0)||i.gt(V.value,0)}},{title:"Ash Gain",modifier:ul,base:0,visible(){return i.gt(r.value,0)||i.gt(I.value,0)||i.gt(V.value,0)}}]),Vn=O(!1),ki=B(()=>o(rt,{modelValue:Vn.value,"onUpdate:modelValue":E=>Vn.value=E},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:wi}));Te.on("update",E=>{i.lt(W.day.value,Nl)||i.times(E,dl.value).negate().gt(se.logs.value)||(se.logs.value=i.times(E,dl.value).plus(se.logs.value),a.value=i.times(E,kn.value).plus(a.value),s.value=i.times(E,qn.value).plus(s.value),r.value=i.max(r.value,0))});const{total:Ci,trackerDisplay:Ni}=sn({resource:a,goal:1e7,name:e,day:Nl,color:t,modal:{show:Vn,display:ki}});return{name:e,color:t,coal:a,totalCoal:Ci,computedCoalGain:kn,ash:s,activeFires:r,buildFire:y,activeBonfires:I,buildBonfire:T,activeKilns:V,buildKiln:be,activeDrills:ie,buildDrill:Ne,warmerCutters:ee,warmerPlanters:Xe,basicFertilizer:$e,unlockBonfire:nt,dedicatedCutters:ct,dedicatedPlanters:j,betterFertilizer:vt,unlockKiln:lt,heatedCutters:Mt,heatedPlanters:Ft,moreFertilizer:Tt,computedHeatedCutterEffect:ft,computedHeatedPlanterEffect:Dt,computedFertilizerEffect:ol,generalTabCollapsed:_i,minWidth:700,display:B(()=>o(P,null,[de(Ni),o(ve,null,null),o(gt,{resource:a,color:t,style:"margin-bottom: 0",effectDisplay:i.gt(kn.value,0)?`+${ue(kn.value)}/s`:void 0},null),o(ve,null,null),o(gt,{resource:s,color:n,style:"margin-bottom: 0",effectDisplay:i.gt(qn.value,0)?`+${ue(qn.value)}/s`:void 0},null),o(ve,null,null),o(Zn,null,{default:()=>[o(Wt,null,{default:()=>[de(y),o("div",null,[le(i.floor(r.value)),p("/"),le(i.floor(y.amount.value))]),Fe(g,w,v,_)]}),nt.bought.value?o(P,null,[o(ve,null,null),o(Wt,null,{default:()=>[de(T),o("div",null,[le(I.value),p("/"),le(T.amount.value)]),Fe(ye,Me,Ae,oe)]})]):void 0,lt.bought.value?o(P,null,[o(ve,null,null),o(Wt,null,{default:()=>[de(be),o("div",null,[le(V.value),p("/"),le(be.amount.value)]),Fe(Ce,Ee,ge,me)]})]):void 0,mn.coalDrill.bought.value?o(P,null,[o(ve,null,null),o(Wt,null,{default:()=>[de(Ne),o("div",null,[le(ie.value),p("/"),le(Ne.amount.value)]),Fe(Je,Be,ke,ze)]})]):void 0]}),o(ve,null,null),Fe(...Ht),Fe(...te),Fe(...D)]))}}),Eo="metal",Sl=7,mn=St(Eo,function(){const e="Metal",t="#888B8D",n=ot(0,"metal ingots",void 0,!0),l=bl(n),a=ot(0,"ore"),s=bl(a),r=Z(()=>[x(()=>({multiplier:5,description:"Crucible",enabled:at.bought})),x(()=>({multiplier:1.5,description:"Industrial Crucible",enabled:()=>i.gte(Ee.amount.value,1)})),x(()=>({multiplier:2,description:"Industrial Furnace",enabled:be.bought})),x(()=>({multiplier:()=>i.add(ie.value,1),description:"Hotter Forges",enabled:()=>i.gte(me.amount.value,1)}))]),c=k(()=>r.apply(.1)),m=Z(()=>[ae(()=>({addend:()=>i.times(Ee.amount.value,10),description:"Industrial Crucibles",enabled:()=>i.gte(Ee.amount.value,1)}))]),d=k(()=>m.apply(0)),y=1e10,g=k(()=>i.min(a.value,i.div(q.coal.value,y)).floor().max(0)),w=we(()=>({display:B(()=>{const ee=i.gte(g.value,1)?g.value:i.add(g.value,1);return o(P,null,[o("span",{style:"font-size: large"},[p("Smelt "),He(i.times(g.value,c.value))," ",n.displayName]),o("br",null,null),o("span",{style:"font-size: large"},[p("Cost: "),Se(ee),p(" "),a.displayName,p(";")," ",Se(i.times(ee,y)),p(" "),q.coal.displayName])])}),canClick:()=>i.gte(g.value,1),onClick(){!u(this.canClick)||v(g.value)},style:{width:"600px",minHeight:"unset"}}));function v(ee){const[Xe,$e,nt]=[i.times(ee,c.value),ee,i.times(ee,y)];n.value=i.add(n.value,Xe),a.value=i.sub(a.value,$e),q.coal.value=i.sub(q.coal.value,nt)}const _=Z(()=>[ae(()=>({addend:()=>Ce.amount.value,description:"Mining Drills",enabled:()=>i.gte(Ce.amount.value,1)}))]),N=k(()=>_.apply(1)),I=Z(()=>[x(()=>({multiplier:2,description:"A Simple Pickaxe",enabled:V.bought})),x(()=>({multiplier:2,description:"Double Pickaxe",enabled:Qe.bought})),x(()=>({multiplier:2.5,description:"Mining Drills",enabled:()=>i.gte(Ce.amount.value,1)}))]),ne=k(()=>I.apply(1)),A=_e(0),S=10,T=It(()=>({width:400,height:25,direction:re.Right,fillStyle:{backgroundColor:t},progress:()=>i.div(A.value,S)})),ye=Z(()=>[ae(()=>({addend:N})),x(()=>({multiplier:ne})),x(()=>({multiplier:i.reciprocate(S)}))]),Me=k(()=>ye.apply(0)),Ae=Z(()=>[ae(()=>({addend:Me})),ae(()=>({addend:()=>i.negate(d.value),enabled:ge}))]),oe=k(()=>Ae.apply(0)),V=Y(()=>({resource:G(n),cost:.1,display:{title:"A Simple Pickaxe",description:"Make a simple pickaxe to help mine faster.

Halve the time to mine more ore"}})),Qe=Y(()=>({resource:G(n),cost:.1,display:{title:"Double Pickaxe",description:"This is too slow. What if you swung two pickaxes at once?

Halve the time to mine ore, again"},visibility:()=>U(Qe.bought.value)})),at=Y(()=>({resource:G(n),cost:1,display:{title:"Crucible",description:"Smelting this all by hand is rather painful, and a lot of the metal is left in the slag. A small crucible should help a lot!

Increase the metal extracted per ore by 5x"},visibility:()=>U(at.bought.value||i.div(s.value,c.value).plus(l.value).gte(1))})),De=Y(()=>({resource:G(n),cost:0,display:{title:"Coal Drilling",description:"These mining drills are pretty powerful, mining more ore than you can actually smelt. Could be worth making some to mine coal instead"},visibility:()=>U(i.gte(Ce.amount.value,1)&&(De.bought.value||i.lt(q.computedCoalGain.value,i.times(N.value,ne.value).div(S).times(y)))),onPurchase(){W.days[2].recentlyUpdated.value=!0}})),be=Y(()=>({canAfford(){return i.gte(n.value,50)&&i.gte(q.coal.value,1e11)},onPurchase(){n.value=i.sub(n.value,50),q.coal.value=i.sub(q.coal.value,1e11)},display:{title:"Industrial Furnace",description:`Moving smelting out of the open air and into a dedicated furnace should make efficiency even better. Double metal gained per ore +
+
+ Cost: 50 ${n.displayName}
${He(1e11)} ${q.coal.displayName}`}})),Ce=Ue(()=>({resource:G(n),cost(){return i.pow(1.15,this.amount.value).times(10)},display:{title:"Mining Drill",description:"An automated machine to help you mine more ore, faster",effectDisplay:B(()=>o(P,null,[p("Mine 2.5x faster. Increase ore mining amount by")," ",Se(Ce.amount.value),p(" ore per operation")]))},visibility:()=>U(i.gte(Ce.amount.value,1)||i.div(s.value,c.value).plus(l.value).gte(10)),style:{width:"200px"}})),Ee=Ue(()=>({resource:G(n),cost(){return i.pow(1.15,i.times(this.amount.value,10)).times(10)},display:{title:"Industrial Crucible",description:"A giant automated crucible furnace, letting you smelt ore faster",effectDisplay:B(()=>o(P,null,[p("Automatically smelts")," ",Se(i.times(Ee.amount.value,10)),p(" ore per second")]))},visibility:()=>U(i.gte(Ee.amount.value,1)||i.gte(Ce.amount.value,4)||i.gte(s.value,50)),style:{width:"200px"}})),ge=_e(!0),me=Ue(()=>({resource:q.coal,cost(){return i.pow(10,this.amount.value).times(1e12)},display:{title:"Hotter Forges",description:"More coal makes the fires burn hotter, getting just a little more metal out of each bit of ore",effectDisplay:B(()=>o(P,null,[p("Gain "),Se(i.times(ie.value,100)),p("% more metal per ore")]))},visibility:()=>U(i.gte(me.amount.value,1)||be.bought.value),style:{width:"200px"}})),ie=k(()=>i.times(me.amount.value,.25));Te.on("update",ee=>{A.value=i.times(ee,ne.value).plus(A.value);const Xe=A.value.div(S).trunc();A.value=A.value.minus(Xe.times(S)),a.value=i.add(a.value,i.times(Xe,N.value)),ge.value&&v(i.min(g.value,i.times(Ee.amount.value,10).times(ee)))});const[je,Ne]=an(()=>[{title:"Automatic Smelting",modifier:m,base:0,visible(){return i.gt(Ee.amount.value,0)}},{title:"Metal per Ore",modifier:r,base:.1},{title:"Ore per Mining Operation",modifier:_,base:1},{title:"Mining Speed",modifier:I,base:1}]),Je=O(!1),Be=B(()=>o(rt,{modelValue:Je.value,"onUpdate:modelValue":ee=>Je.value=ee},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:je})),{total:ke,trackerDisplay:ze}=sn({resource:n,goal:25e3,name:e,day:Sl,color:t,modal:{show:Je,display:Be}});return{name:e,day:Sl,color:t,ore:a,bestOre:s,oreProgress:A,metal:n,bestMetal:l,totalMetal:ke,simplePickaxe:V,doublePickaxe:Qe,crucible:at,coalDrill:De,industrialFurnace:be,oreDrill:Ce,industrialCrucible:Ee,autoSmeltEnabled:ge,hotterForge:me,generalTabCollapsed:Ne,minWidth:700,display:B(()=>o(P,null,[de(ze),o(ve,null,null),o(gt,{resource:n,color:t,style:"margin-bottom: 0",sticky:!1,productionDisplay:B(()=>o(P,null,[ge.value&&i.gte(Ee.amount.value,1)?`+${Ol([[d.value,"smelting speed"],[Me.value,"ore gain"],[i.div(q.computedCoalGain.value,y),"coal gain"]],"/s",c.value)}`:void 0]))},null),o(ve,null,null),de(w),i.gte(Ee.amount.value,1)?o("div",{style:{width:"150px"}},[o(At,{title:"Auto Smelt",modelValue:ge.value,"onUpdate:modelValue":ee=>ge.value=ee},null)]):void 0,o(ve,null,null),o(gt,{resource:a,color:t,style:"margin-bottom: 0",sticky:!1,productionDisplay:B(()=>o(P,null,[ql(oe.value)]))},null),o(ve,null,null),o("div",null,[p("Currently mining "),He(N.value),p(" ore every")," ",He(i.div(S,ne.value)),p(" seconds")]),de(T),o(ve,null,null),Fe(V,Qe,at,De,be),Fe(Ce,Ee,me)]))}}),Bo="cloth",Ml=8,Nt=St(Bo,function(){const e="Cloth",t="white",n=ot(0,"cloth"),l=ot(0,"wool"),a=ot(10,"sheep"),s=_e(0),r=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(s.value,je.value)})),c=we(()=>({display:{title:"Breed sheep",description:B(()=>o(P,null,[p("Breed "),Se(i.floor(me.value)),p(" sheep"),o("br",null,null),de(r)]))},style:{minHeight:"80px"},canClick:()=>i.gte(s.value,je.value),onClick(){if(i.lt(s.value,je.value))return;const te=i.floor(me.value);a.value=i.add(a.value,te),s.value=0}})),m=_e(0),d=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(m.value,ke.value)})),y=we(()=>({display:{title:"Shear sheep",description:B(()=>o(P,null,[p("Shear up to "),Se(i.floor(Je.value)),p(" sheep"),o("br",null,null),de(d)]))},style:{minHeight:"80px"},canClick:()=>i.gte(m.value,ke.value),onClick(){if(i.lt(m.value,ke.value))return;const te=i.min(a.value,Je.value).floor();l.value=i.add(l.value,te),m.value=0}})),g=_e(0),w=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(g.value,$e.value)})),v=we(()=>({display:{title:"Spinning wool",description:B(()=>o(P,null,[p("Spin "),Se(i.floor(ee.value)),p(" wool"),o("br",null,null),de(w)]))},style:{minHeight:"80px"},canClick:()=>i.gte(g.value,$e.value),onClick(){if(i.lt(g.value,$e.value))return;const te=i.min(l.value,ee.value).floor();n.value=i.add(n.value,te),l.value=i.sub(l.value,te),g.value=0}})),_=nn(()=>({key:"b",description:'Press the "Breed Sheep" button',onPress:()=>{c.canClick.value&&c.onClick()}})),N=nn(()=>({key:"h",description:'Press the "Shear Sheep" button',onPress:()=>{y.canClick.value&&y.onClick()}})),I=nn(()=>({key:"s",description:'Press the "Spin Wool" button',onPress:()=>{v.canClick.value&&v.onClick()}})),ne=Ue(()=>({resource:se.logs,cost(){let te=this.amount.value;return i.gte(te,100)&&(te=i.pow(te,2).div(100)),i.pow(1.5,te).times(1e14)},display:{title:"Build more pens",description:"Breed +1 sheep at once"}})),A=Ue(()=>({resource:mn.metal,cost(){let te=this.amount.value;return i.gte(te,100)&&(te=i.pow(te,2).div(100)),i.pow(1.4,te).times(1e4)},display:{title:"Make stronger shears",description:"Shear +1 sheep at once"}})),S=Ue(()=>({resource:pe.paper,cost(){let te=this.amount.value;return i.gte(te,100)&&(te=i.pow(te,2).div(100)),i.pow(1.3,te).times(1e6)},display:{title:"Learn how to spin",description:"Spin +1 wool at once"}})),T=Y(()=>({resource:G(n),cost:100,display:{title:"Lumberjack Boots",description:"Quadruple log gain"}})),ye=Y(()=>({resource:G(l),cost:150,visibility:()=>U(T.bought.value),display:{title:"Lumberjack Jeans",description:"Quadruple trees cut"}})),Ae={treesUpgrade3:Y(()=>({resource:G(a),cost:200,visibility:()=>U(ye.bought.value),display:{title:"Lumberjack Plaid",description:"Quadruple trees planted"}})),treesUpgrade2:ye,treesUpgrade1:T},oe=Y(()=>({resource:G(n),cost:150,display:{title:"Mining boots",description:"Quadruple ash gain"}})),V=Y(()=>({resource:G(l),cost:225,visibility:()=>U(oe.bought.value),display:{title:"Mining overalls",description:"Double coal gain"}})),at={metalUpgrade3:Y(()=>({resource:G(a),cost:300,visibility:()=>U(V.bought.value),display:{title:"Mining helmet",description:"Triple coal gain"}})),metalUpgrade2:V,metalUpgrade1:oe},De=Y(()=>({resource:G(n),cost:200,display:{title:"Scholar's shoes",description:"Double paper gain"}})),be=Y(()=>({resource:G(l),cost:200,visibility:()=>U(De.bought.value),display:{title:"Scholar's slacks",description:"Double paper gain"}})),Ee={paperUpgrade3:Y(()=>({resource:G(a),cost:400,visibility:()=>U(be.bought.value),display:{title:"Scholar's jacket",description:"Double paper gain"}})),paperUpgrade2:be,paperUpgrade1:De},ge=Z(()=>[ae(()=>({addend:ne.amount,description:"Build more pens"}))]),me=k(()=>ge.apply(1)),ie=Z(()=>[]),je=k(()=>ie.apply(1)),Ne=Z(()=>[ae(()=>({addend:A.amount,description:"Make stronger shears"}))]),Je=k(()=>Ne.apply(1)),Be=Z(()=>[]),ke=k(()=>Be.apply(1)),ze=Z(()=>[ae(()=>({addend:S.amount,description:"Learn how to spin"}))]),ee=k(()=>ze.apply(1)),Xe=Z(()=>[]),$e=k(()=>Xe.apply(1)),[nt,Ht]=an(()=>[{title:"Sheep Gain",modifier:ge,base:1},{title:"Sheep Breeding Cooldown",modifier:ie,base:1,visible:!1,unit:"s"},{title:"Shearing Amount",modifier:Ne,base:1},{title:"Shearing Cooldown",modifier:Be,base:1,visible:!1,unit:"s"},{title:"Spinning Amount",modifier:ze,base:1},{title:"Spinning Cooldown",modifier:Xe,base:1,visible:!1,unit:"s"}]),ct=O(!1),j=B(()=>o(rt,{modelValue:ct.value,"onUpdate:modelValue":te=>ct.value=te},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:nt}));Te.on("update",te=>{i.lt(W.day.value,Ml)||(i.gte(s.value,je.value)?s.value=je.value:(s.value=i.add(s.value,te),c.isHolding.value&&c.onClick()),i.gte(m.value,ke.value)?m.value=ke.value:(m.value=i.add(m.value,te),y.isHolding.value&&y.onClick()),i.gte(g.value,$e.value)?g.value=$e.value:(g.value=i.add(g.value,te),v.isHolding.value&&v.onClick()))});const{total:vt,trackerDisplay:lt}=sn({resource:n,goal:1e3,name:e,day:Ml,color:t,textColor:"var(--feature-foreground)",modal:{show:ct,display:j}});return{name:e,color:t,cloth:n,totalCloth:vt,wool:l,sheep:a,buildPens:ne,betterShears:A,fasterSpinning:S,treesUpgrades:Ae,metalUpgrades:at,paperUpgrades:Ee,generalTabCollapsed:Ht,breedingProgress:s,shearingProgress:m,spinningProgress:g,breedSheepHK:_,shearSheepHK:N,spinWoolHK:I,minWidth:700,display:B(()=>o(P,null,[de(lt),o(ve,null,null),o(gt,{resource:n,style:"margin-bottom: 0"},null),o(gt,{resource:l,style:"margin-bottom: 0"},null),o(gt,{resource:a,style:"margin-bottom: 0"},null),Fe(c,y,v),Fe(ne,A,S),o(ve,null,null),o(Zn,null,{default:()=>[dn(...Object.values(Ae)),dn(...Object.values(at)),dn(...Object.values(Ee))]})]))}}),xo="trees",Al=1,Il=.1,se=St(xo,function(){const e="Trees",t="#4BDC13",n="green",l=ot(0,"logs"),a=ot(0,"saplings"),s=O(0),r=Z(()=>[ae(()=>({addend:()=>i.times(Ae.amount.value,10),description:"Expand Forest",enabled:S.bought})),ae(()=>({addend:()=>i.div(st.foundationProgress.value,2),description:"75% Foundation Completed",enabled:st.milestones.morePlantsMilestone1.earned})),x(()=>({multiplier:2,description:"5 Elves Trained",enabled:Ve.milestones[4].earned})),x(()=>({multiplier:2,description:"8 Elves Trained",enabled:Ve.milestones[7].earned})),x(()=>({multiplier:4,description:"Lumberjack Boots",enabled:Nt.treesUpgrades.treesUpgrade1.bought}))]),c=ot(k(()=>i.sub(r.apply(10),a.value)),"trees"),m=k(()=>r.apply(10)),d=Y(()=>({resource:G(l),cost:10,display:{title:"Wooden Fingers",description:"Cut down an additional tree per click"}})),y=Y(()=>({resource:G(l),cost:10,display:{title:"Leafy Fingers",description:"Plant an additional tree per click"}})),g=Y(()=>({resource:G(l),cost:25,display:{title:"Automated Knives",description:"Cut down a tree every second"}})),w=Y(()=>({resource:G(l),cost:25,display:{title:"Automated Spade",description:"Plant a tree every second"}})),v=Y(()=>({resource:G(l),cost:40,display:{title:"Research I",description:"Trees give 25% more logs, and unlock more upgrades"}})),_=[d,y,g,w,v],N=Y(()=>({resource:G(l),cost:50,visibility:()=>U(v.bought.value),display:{title:"Sharper Fingers",description:"Manually cut trees twice as often"}})),I=Y(()=>({resource:G(l),cost:50,visibility:()=>U(v.bought.value),display:{title:"Greener Fingers",description:"Manually Plant trees twice as often"}})),ne=Y(()=>({resource:G(l),cost:150,visibility:()=>U(v.bought.value),display:{title:"Smart Knives",description:"Each time you manually chop trees, gain 1s of automatic tree chopping production"}})),A=Y(()=>({resource:G(l),cost:150,visibility:()=>U(v.bought.value),display:{title:"Smart Spades",description:"Each time you manually plant trees, gain 1s of automatic tree planting production"}})),S=Y(()=>({resource:G(l),cost:300,visibility:()=>U(v.bought.value),display:{title:"Research II",description:"Trees give 25% more logs, and unlock repeatable purchases"}})),T=[N,I,ne,A,S],ye=Ue(()=>({resource:G(l),cost(){let D=this.amount.value;return i.gte(D,50)&&(D=i.pow(D,2).div(50)),i.gte(D,200)&&(D=i.pow(D,2).div(200)),i.gte(D,2e6)&&(D=i.pow(D,2).div(2e6)),D=i.pow(.95,pe.books.cuttersBook.amount.value).times(D),i.times(100,D).add(200)},display:{title:"Generic Cutters",description:"Each cutter cuts down 1 tree/s"},visibility:()=>U(S.bought.value)})),Me=Ue(()=>({resource:G(l),cost(){let D=this.amount.value;return i.gte(D,50)&&(D=i.pow(D,2).div(50)),i.gte(D,200)&&(D=i.pow(D,2).div(200)),i.gte(D,2e6)&&(D=i.pow(D,2).div(2e6)),D=i.pow(.95,pe.books.plantersBook.amount.value).times(D),i.times(100,D).add(200)},display:{title:"Generic Planters",description:"Each planter plants 0.5 trees/s"},visibility:()=>U(S.bought.value)})),Ae=Ue(()=>({resource:G(l),cost(){let D=this.amount.value;return i.gte(D,100)&&(D=i.pow(D,2).div(100)),i.gte(D,1e5)&&(D=i.pow(D,2).div(1e5)),D=i.pow(.95,pe.books.expandersBook.amount.value).times(D),i.pow(i.add(D,1),1.5).times(500)},display:{title:"Expand Forest",description:"Add 10 trees to the forest"},visibility:()=>U(S.bought.value)})),oe=[ye,Me,Ae],V=Z(()=>[ae(()=>({addend:1,description:"Wooden Fingers",enabled:d.bought})),ae(()=>({addend:Ce,description:"Smart Knives",enabled:ne.bought}))]),Qe=k(()=>V.apply(1)),at=Z(()=>[x(()=>({multiplier:.5,description:"Sharper Fingers",enabled:N.bought})),x(()=>({multiplier:()=>i.pow(.5,Ve.totalElves.value),description:"1 Elf Trained",enabled:Ve.milestones[0].earned}))]),De=k(()=>at.apply(1)),be=Z(()=>[ae(()=>({addend:1,description:"Automated Knives",enabled:g.bought})),ae(()=>({addend:ye.amount,description:"Generic Cutters",enabled:S.bought})),ae(()=>({addend:()=>i.div(st.foundationProgress.value,5).floor(),description:"10% Foundation Completed",enabled:st.milestones.autoCutMilestone1.earned})),x(()=>({multiplier:2,description:"30% Foundation Completed",enabled:st.milestones.autoCutMilestone2.earned})),x(()=>({multiplier:2,description:"Warmer Cutters",enabled:q.warmerCutters.bought})),x(()=>({multiplier:q.computedHeatedCutterEffect,description:"Heated Cutters",enabled:()=>i.gt(q.heatedCutters.amount.value,0)})),x(()=>({multiplier:4,description:"Lumberjack Jeans",enabled:Nt.treesUpgrades.treesUpgrade2.bought}))]),Ce=k(()=>be.apply(0)),Ee=Z(()=>[ae(()=>({addend:1,description:"Leafy Fingers",enabled:y.bought})),ae(()=>({addend:Ne,description:"Smart Spades",enabled:A.bought}))]),ge=k(()=>Ee.apply(1)),me=Z(()=>[x(()=>({multiplier:.5,description:"Greener Fingers",enabled:I.bought})),x(()=>({multiplier:()=>i.pow(.5,Ve.totalElves.value),description:"1 Elf Trained",enabled:Ve.milestones[0].earned}))]),ie=k(()=>me.apply(1)),je=Z(()=>[ae(()=>({addend:1,description:"Automated Spade",enabled:w.bought})),ae(()=>({addend:()=>i.div(Me.amount.value,2),description:"Generic Planters",enabled:S.bought})),ae(()=>({addend:()=>i.div(st.foundationProgress.value,10).floor(),description:"20% Foundation Completed",enabled:st.milestones.autoPlantMilestone1.earned})),x(()=>({multiplier:2,description:"40% Foundation Completed",enabled:st.milestones.autoPlantMilestone2.earned})),x(()=>({multiplier:2,description:"Warmer Planters",enabled:q.warmerPlanters.bought})),x(()=>({multiplier:q.computedHeatedPlanterEffect,description:"Heated Planters",enabled:()=>i.gt(q.heatedPlanters.amount.value,0)})),x(()=>({multiplier:4,description:"Lumberjack Plaid",enabled:Nt.treesUpgrades.treesUpgrade3.bought}))]),Ne=k(()=>je.apply(0)),Je=Z(()=>[x(()=>({multiplier:1.25,description:"Research I",enabled:v.bought})),x(()=>({multiplier:1.25,description:"Research II",enabled:S.bought})),x(()=>({multiplier:()=>i.div(st.foundationProgress.value,20).add(1),description:"1% Foundation Completed",enabled:st.milestones.logGainMilestone1.earned})),x(()=>({multiplier:2,description:"50% Foundation Completed",enabled:st.milestones.logGainMilestone2.earned})),x(()=>({multiplier:1.25,description:"Ashy Soil",enabled:q.basicFertilizer.bought})),x(()=>({multiplier:q.computedFertilizerEffect,description:"Fertilized Soil",enabled:()=>i.gt(q.moreFertilizer.amount.value,0)})),x(()=>({multiplier:2,description:"4 Elves Trained",enabled:Ve.milestones[3].earned})),x(()=>({multiplier:2,description:"Carry logs in boxes",enabled:dt.upgrades.logsUpgrade.bought})),x(()=>({multiplier:()=>i.div(dt.buyables.logBoxesBuyable.amount.value,2).add(1),description:"Carry more logs",enabled:dt.upgrades.logsUpgrade.bought})),li(()=>({exponent:1.2,description:"100% Foundation Completed",enabled:st.milestones.logGainMilestone3.earned}))]),Be=_e(0),ke=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(Be.value,De.value)})),ze=we(()=>({display:{title:"Cut trees",description:B(()=>o(P,null,[p("Cut down up to "),le(i.floor(Qe.value))," ",p("tree"),i.eq(Qe.value,1)?"":"s",p(" at once!"),o("br",null,null),de(ke)]))},style:{minHeight:"80px"},canClick:()=>i.gte(c.value,1)&&i.gte(Be.value,De.value),onClick(){if(i.lt(Be.value,De.value))return;const D=i.floor(i.min(c.value,i.times(Qe.value,i.div(Be.value,De.value).floor())));l.value=i.add(l.value,i.times(Je.apply(1),D)),a.value=i.add(a.value,D),Be.value=0}})),ee=_e(0),Xe=It(()=>({direction:re.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s",progress:()=>i.div(ee.value,ie.value)})),$e=we(()=>({display:{title:"Plant trees",description:B(()=>o(P,null,[p("Plant up to "),le(i.floor(ge.value))," ",p("tree"),i.eq(ge.value,1)?"":"s",p(" at once!"),o("br",null,null),de(Xe)]))},style:{minHeight:"80px"},canClick:()=>i.gte(a.value,1)&&i.gte(ee.value,ie.value),onClick(){if(i.lt(ee.value,ie.value))return;const D=i.floor(i.min(a.value,i.times(ge.value,i.div(ee.value,ie.value).floor())));a.value=i.sub(a.value,D),ee.value=0}})),[nt,Ht]=an(()=>[{title:"Logs per Tree",modifier:Je,base:1,visible:v.bought},{title:"Manual Cutting Amount",modifier:V,base:1,visible:d.bought,unit:"/click"},{title:"Manual Cutting Cooldown",modifier:at,base:1,visible:d.bought,unit:"s"},{title:"Manual Planting Amount",modifier:Ee,base:1,visible:y.bought,unit:"/click"},{title:"Manual Planting Cooldown",modifier:me,base:1,visible:y.bought,unit:"s"},{title:"Auto Cutting Amount",modifier:be,base:0,visible:g.bought,unit:"/s"},{title:"Auto Planting Amount",modifier:je,base:0,visible:w.bought,unit:"/s"},{title:"Forest Size",modifier:r,base:10,visible:S.bought}]),ct=O(!1),j=B(()=>o(rt,{modelValue:ct.value,"onUpdate:modelValue":D=>ct.value=D},{header:()=>o("h2",null,[e,p(" Modifiers")]),body:nt}));Te.on("update",D=>{if(i.lt(W.day.value,Al))return;i.gte(Be.value,De.value)?Be.value=De.value:(Be.value=i.add(Be.value,D),ze.isHolding.value&&ze.onClick()),i.gte(ee.value,ie.value)?ee.value=ie.value:(ee.value=i.add(ee.value,D),$e.isHolding.value&&$e.onClick());const Qt=i.min(c.value,i.times(Ce.value,D)),ft=i.mul(Je.apply(1),Qt),Yt=i.div(ft,D);s.value=i.mul(Yt,Il).add(i.mul(s.value,i.dOne.sub(Il))),l.value=i.add(l.value,ft),a.value=i.add(a.value,Qt);const Dt=i.min(a.value,i.times(Ne.value,D));a.value=i.sub(a.value,Dt)});const vt=k(()=>i.sub(Ce.value,Ne.value)),lt=k(()=>i.sub(Ne.value,Ce.value)),te=nn(()=>({key:"c",description:'Press the "Cut trees" button.',onPress:()=>{ze.canClick.value&&ze.onClick()}})),Mt=nn(()=>({key:"p",description:'Press the "Plant trees" button.',onPress:()=>{$e.canClick.value&&$e.onClick()}})),{total:Ft,trackerDisplay:Tt}=sn({resource:l,goal:1e4,name:e,day:Al,color:n,modal:{show:ct,display:j}});return{name:e,color:t,logs:l,totalLogs:Ft,trees:c,saplings:a,cutTree:ze,plantTree:$e,cutTreeHK:te,plantTreeHK:Mt,row1Upgrades:_,row2Upgrades:T,row1Buyables:oe,manualCutProgress:Be,manualPlantProgress:ee,generalTabCollapsed:Ht,minWidth:700,display:B(()=>o(P,null,[de(Tt),o(ve,null,null),o(gt,{resource:l,color:t,style:"margin-bottom: 0",productionDisplay:i.gt(Ce.value,0)?`+${ue(s.value)}/s average
equilibrium: +${Vl([[Ce.value,"cutting speed"],[Ne.value,"planting speed"],[i.mul(m.value,20),"forest cap"]],"/s",Je.apply(1))}`:void 0},null),o(gt,{resource:a,color:n,style:"margin-bottom: 0",productionDisplay:Hn(vt.value)},null),o(gt,{resource:c,color:n,style:"margin-bottom: 0",productionDisplay:Hn(lt.value)},null),o(ve,null,null),Fe(ze,$e),o("div",null,[p("Tip: You can hold down on actions to perform them automatically")]),o(ve,null,null),Fe(..._),Fe(...T),Fe(...oe)]))}});var si="./assets/tree.35808197.png",oi="./assets/sws.714ad454.png",ri="data:image/png;base64,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",ui="./assets/elf.9fbfa563.png",ci="./assets/paperStacks.4c96ec8c.png",di="data:image/png;base64,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",mi="./assets/metal.7407f5d1.png",pi="./assets/cloth.7bcd7f37.png";const W=St("main",function(){const e=_e(1),t=k(()=>(+new Date(new Date().getFullYear(),11,e.value)-L.time)/1e3),n=O(!1),l=O(-1),a=O(""),s=O();function r(d){const y=_e(!1),g=_e(!1);return ut(()=>{const w=d(),v=Ze(w.shouldNotify),_=Ze(()=>u(v)||u(g));return{...w,opened:y,shouldNotify:_,recentlyUpdated:g,[Lt]:Ss,[Gt]:function(){const{day:N,layer:I,symbol:ne,opened:A,shouldNotify:S,story:T,completedStory:ye,recentlyUpdated:Me}=this;return{day:N,symbol:ne,opened:A,recentlyUpdated:Me,shouldNotify:S,onOpenLore(){var V,Qe;const Ae=W.day.value>N;l.value=Ae?N-1:-1;const oe=u((Qe=(V=it[I!=null?I:"trees"])==null?void 0:V.name)!=null?Qe:"");a.value=Ae?`${oe} - Completed!`:oe,s.value=Ae?`${T}
${ye}`:T,n.value=!0},onOpenLayer(){if(Me.value=!1,window.matchMedia("(min-width: 1468px)").matches)if(L.tabs.includes(I!=null?I:"trees")){const Ae=L.tabs.lastIndexOf(I!=null?I:"trees");L.tabs.splice(Ae,1)}else L.tabs.push(I!=null?I:"trees"),W.minimized.value=!0;else L.tabs.splice(1,1/0,I!=null?I:"trees")},onUnlockLayer(){A.value=!0,setTimeout(()=>{var Ae,oe;l.value=-1,a.value=u((oe=(Ae=it[I!=null?I:"trees"])==null?void 0:Ae.name)!=null?oe:""),s.value=T,L.devSpeed=null,n.value=!0},1e3)}}}}})}const c=[r(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:si,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!",completedStory:"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!"})),r(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:oi,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!",completedStory:"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!"})),r(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:ri,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.",completedStory:"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!"})),r(()=>({day:4,shouldNotify:!1,layer:"elves",symbol:ui,story:"Alright, it seems you finally have enough things set up to start bringing in the elves! Unfortunately, it seems they'll need to be retrained on how to help, since they've stopped practicing for 11 months!",completedStory:"The workshop now hums with the bustling elves working on everything. They can take it from here - you deserve a break after such a long day! Good Job!"})),r(()=>({day:5,shouldNotify:!1,layer:"paper",symbol:ci,story:"With the elves trained, we're almost ready to start working on these presents! Just a couple more pre-reqs first, starting with turning all this wood into wood pulp and finally into paper, which will be required for wrapping paper later on but in the meantime can be used to help write guides which will help these elves continue their education!",completedStory:"You look upon your rivers of book pulp as you hand out stacks of papers to elves to read through. You've continued getting closer and closer to preparing for Christmas, and can go to bed satisfied with your progress. Good Job!"})),r(()=>({day:6,shouldNotify:!1,layer:"boxes",symbol:di,story:"You watch all these elves carrying incredibly large loads just in their open elf-sized hands, and realize there's probably a better way. You need to put the toys in boxes anyways, so why don't we get started working on those so the workers can take advantage as well?",completedStory:"Wow, those boxes are really convenient! The workshop feels more and more proper with every day. You tick another requirement on your list and start looking towards tomorrow. Good Job!"})),r(()=>({day:7,shouldNotify:!1,layer:"metal",symbol:mi,story:"You woke up ready to make some toys, before realizing most toys these days are made out of more than just wood! You're sure you're close to really getting to work, but there's a few more materials you're going to need - like metal! Lots of things need metal!",completedStory:"The sounds of drills and metal clanging join the already loud din as yet another piece of the puzzle fits into place. You're making solid progress, Good Job!"})),r(()=>({day:8,shouldNotify:!1,layer:"cloth",symbol:pi,story:"Another resource you're going to need for gifts is cloth! Fortunately you think this should be pretty easy to prepare using a sheep farm - and as you've already proven with the tree farm, that's something you can handle!",completedStory:"You fall into a pile of wool, sighing contentedly as you look at all the progress you've made today. Good Job!"})),r(()=>({day:9,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:10,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:11,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:12,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:13,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:14,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:15,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:16,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:17,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:18,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:19,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:20,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:21,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:22,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:23,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""})),r(()=>({day:24,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:""}))];function m(){l.value=e.value-1,a.value="Day Complete!",s.value=c[e.value-1].completedStory,n.value=!0,e.value++,W.minimized.value=!1,L.devSpeed=0}return{name:"Calendar",days:c,day:e,timeUntilNewDay:t,loreScene:l,loreTitle:a,loreBody:s,showLoreModal:n,completeDay:m,minWidth:700,display:B(()=>o(P,null,[L.devSpeed===0?o("div",null,[p("Game Paused")]):null,L.devSpeed&&L.devSpeed!==1?o("div",null,[p("Dev Speed: "),ue(L.devSpeed),p("x")]):null,L.offlineTime?o("div",null,[p("Offline Time: "),Dn(L.offlineTime)]):null,o(ve,null,null),o("div",{class:"advent"},[c.reduce((d,y)=>(d[d.length-1].length===4&&d.push([]),d[d.length-1].push(y),d),[[]]).map(d=>Fe(...d))])]))}}),Po=e=>[W,se,st,q,Ve,pe,dt,mn,Nt],il=k(()=>!1);function Fo(e,t){t.offlineProd=!1}var To=Object.freeze(Object.defineProperty({__proto__:null,main:W,getInitialLayers:Po,hasWon:il,fixOldSave:Fo},Symbol.toStringTag,{value:"Module"}));const Do={class:"scene"},$o=["src"],Ro=["src"],Uo=["src"],Oo=["src"],qo=["src"],Vo=["src"],Lo={key:6,class:"scene-bubble",style:{left:"50%",bottom:"38%"}},Go=["src"],Ho=["src"],Qo=K({__name:"Scene",props:{day:null},setup(e){return(t,n)=>(b(),M("div",Do,[e.day>=7?(b(),M("img",{key:0,src:u(pi),class:"scene-item",style:{left:"4%",bottom:"3%",width:"40px",height:"40px"}},null,8,$o)):F("",!0),e.day>=0?(b(),M("img",{key:1,src:u(si),class:"scene-item",style:{left:"10%",bottom:"10%"}},null,8,Ro)):F("",!0),e.day>=1?(b(),M("img",{key:2,src:u(oi),class:"scene-item",style:{left:"40%",bottom:"12%"}},null,8,Uo)):F("",!0),e.day>=2?(b(),M("img",{key:3,src:u(ri),class:"scene-item",style:{left:"65%",bottom:"12%",width:"40px",height:"40px"}},null,8,Oo)):F("",!0),e.day>=6?(b(),M("img",{key:4,src:u(mi),class:"scene-item",style:{left:"72%",bottom:"8%",width:"40px",height:"40px"}},null,8,qo)):F("",!0),e.day>=3?(b(),M("img",{key:5,src:u(ui),class:"scene-item",style:{left:"52%",bottom:"12%"}},null,8,Vo)):F("",!0),e.day>=4?(b(),M("div",Lo,[e.day>=4?(b(),M("img",{key:0,src:u(ci),class:"scene-item"},null,8,Go)):F("",!0),e.day>=5?(b(),M("img",{key:1,src:u(di),class:"scene-item"},null,8,Ho)):F("",!0)])):F("",!0)]))}});var jo=he(Qo,[["__scopeId","data-v-217dad6a"]]);const zo=K({components:{Context:Hl},props:{index:{type:Number,required:!0},tab:{type:Function,required:!0},display:{type:R(Object,String,Function),required:!0},minimized:{type:Object,required:!0},minWidth:{type:R(Number,String),required:!0},name:{type:R(String),required:!0},color:R(String),minimizable:R(Boolean),nodes:{type:Object,required:!0}},setup(e){const{display:t,index:n,minimized:l,minWidth:a,tab:s}=tt(e),r=Bn(t),c=k(()=>fe.allowGoBack&&n.value>0&&!l.value);function m(){L.tabs.splice(u(e.index),1)}Jt(()=>y(l.value,u(a.value))),_t([l,os(a)],([g,w])=>y(g,w));function d(g){e.nodes.value=g}function y(g,w){const v=typeof w=="number"||Number.isNaN(parseInt(w))?w+"px":w,_=s.value();_!=null&&(g?(_.style.flexGrow="0",_.style.flexShrink="0",_.style.width="60px",_.style.minWidth=_.style.flexBasis="",_.style.margin="0"):(_.style.flexGrow="",_.style.flexShrink="",_.style.width="",_.style.minWidth=_.style.flexBasis=v,_.style.margin=""))}return{component:r,showGoBack:c,updateNodes:d,unref:u,goBack:m}}});function Ko(e,t,n,l,a,s){const r=qt("Context");return b(),M("div",{class:"layer-container",style:Ge({"--layer-color":e.unref(e.color)})},[e.showGoBack?(b(),M("button",{key:0,class:"goBack",onClick:t[0]||(t[0]=(...c)=>e.goBack&&e.goBack(...c))},"\u274C")):F("",!0),e.minimized.value?(b(),M("button",{key:1,class:"layer-tab minimized",onClick:t[1]||(t[1]=c=>e.minimized.value=!1)},[f("div",null,J(e.unref(e.name)),1)])):(b(),M("div",{key:2,class:Oe(["layer-tab",{showGoBack:e.showGoBack}])},[o(r,{onUpdateNodes:e.updateNodes},{default:H(()=>[(b(),Q(Ie(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(b(),M("button",{key:3,class:"minimize",onClick:t[2]||(t[2]=c=>e.minimized.value=!0)}," \u25BC ")):F("",!0)],4)}var Wo=he(zo,[["render",Ko],["__scopeId","data-v-0158bec3"]]);const fi=e=>(Bt("data-v-4b4bda40"),e=e(),xt(),e),Jo=fi(()=>f("h2",null,"Changelog",-1)),Xo=fi(()=>f("details",{open:""},[f("summary",null,[p("v0.0 Initial Commit - "),f("time",null,"2021-09-04")]),p(" This is the first release :D "),f("ul",null,[f("li",{class:"feature"},"Did everything"),f("li",{class:"fix"},"Had some fun"),f("li",{class:"breaking"},"Removed everything"),f("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),Yo=K({__name:"Changelog",setup(e,{expose:t}){const n=O(!1);return t({open(){n.value=!0}}),(l,a)=>(b(),Q(rt,{modelValue:n.value,"onUpdate:modelValue":a[0]||(a[0]=s=>n.value=s)},{header:H(()=>[Jo]),body:H(()=>[Xo]),_:1},8,["modelValue"]))}});var Zo=he(Yo,[["__scopeId","data-v-4b4bda40"]]),er=K({props:{element:Object,display:{type:R(Object,String,Function),required:!0},style:R(Object,String,Array),classes:R(Object),direction:R(String),xoffset:R(String),yoffset:R(String),pinned:Object},setup(e){const{element:t,display:n,pinned:l}=tt(e),a=O(!1),s=k(()=>(We(l)||a.value)&&r.value),r=Vt(n),c=ht(ce(B(()=>{const y=We(t);return y==null?"":wt(y)})));function m(y){const g=l;y.shiftKey&&g&&(g.value=!g.value,y.stopPropagation(),y.preventDefault())}const d=k(()=>We(l)&&yn[Pe.theme].showPin);return{Direction:re,isHovered:a,isShown:s,comp:r,elementComp:c,unref:u,togglePinned:m,showPin:d}}});const tr={key:0,class:"material-icons pinned"};function nr(e,t,n,l,a,s){return b(),M("div",{class:Oe(["tooltip-container",{shown:e.isShown}]),onMouseenter:t[0]||(t[0]=r=>e.isHovered=!0),onMouseleave:t[1]||(t[1]=r=>e.isHovered=!1),onClickCapture:t[2]||(t[2]=(...r)=>e.togglePinned&&e.togglePinned(...r))},[Ct(e.$slots,"default",{},void 0,!0),e.elementComp?(b(),Q(Ie(e.elementComp),{key:0})):F("",!0),o(Fn,{name:"fade"},{default:H(()=>{var r;return[e.isShown?(b(),M("div",{key:0,class:Oe(["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:Ge([{"--xoffset":e.unref(e.xoffset)||"0px","--yoffset":e.unref(e.yoffset)||"0px"},(r=e.unref(e.style))!=null?r:{}])},[e.showPin?(b(),M("span",tr,"push_pin")):F("",!0),e.comp?(b(),Q(Ie(e.comp),{key:1})):F("",!0)],6)):F("",!0)]}),_:1})],34)}var qe=he(er,[["render",nr],["__scopeId","data-v-6102fa3a"]]);const lr={class:"info-modal-header"},ir=["src","alt"],ar={class:"info-modal-title"},sr={key:0},or=p(" - "),rr={key:0},ur={key:0},cr=f("div",null," Made in Profectus, by thepaperpilot with inspiration from Acameada and Jacorb ",-1),dr=f("br",null,null,-1),mr=f("br",null,null,-1),pr=["href"],fr=f("span",{class:"material-icons info-modal-discord"},"discord",-1),hr=f("div",null,[f("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[f("span",{class:"material-icons info-modal-discord"},"discord"),p(" The Paper Pilot Community ")])],-1),gr=f("div",null,[f("a",{href:"https://discord.gg/F3xveHV",class:"info-modal-discord-link",target:"_blank"},[f("span",{class:"material-icons info-modal-discord"},"discord"),p(" The Modding Tree ")])],-1),vr=f("br",null,null,-1);var yr=K({__name:"Info",props:{changelog:null},setup(e,{expose:t}){const n=e,{title:l,logo:a,author:s,discordName:r,discordLink:c,versionNumber:m,versionTitle:d}=fe,y=tt(n),g=O(!1),w=k(()=>Dn(L.timePlayed)),v=k(()=>ce(B(()=>o(P,null,[Zl.map(de)]))));t({open(){g.value=!0}});function _(){var N;(N=u(y.changelog))==null||N.open()}return(N,I)=>(b(),Q(rt,{class:"info-modal",modelValue:g.value,"onUpdate:modelValue":I[0]||(I[0]=ne=>g.value=ne)},{header:H(()=>[f("div",lr,[u(a)?(b(),M("img",{key:0,class:"info-modal-logo",src:u(a),alt:u(l)},null,8,ir)):F("",!0),f("div",ar,[f("h2",null,"- "+J(u(l))+" -",1),f("h4",null,[p(" - v"+J(u(m)),1),u(d)?(b(),M("span",sr,": "+J(u(d)),1)):F("",!0),or])])])]),body:H(({shown:ne})=>[ne?(b(),M("div",rr,[u(s)?(b(),M("div",ur,"By "+J(u(s)),1)):F("",!0),cr,dr,f("div",{class:"link",onClick:_},"Changelog"),mr,f("div",null,[u(c)?(b(),M("a",{key:0,href:u(c),class:"info-modal-discord-link",target:"_blank"},[fr,p(" "+J(u(r)),1)],8,pr)):F("",!0)]),hr,gr,vr,f("div",null,"Time Played: "+J(u(w)),1),(b(),Q(Ie(u(v))))])):F("",!0)]),_:1},8,["modelValue"]))}});const hi=e=>(Bt("data-v-0d685451"),e=e(),xt(),e),br=hi(()=>f("h2",null,"Options",-1)),wr=hi(()=>f("hr",null,null,-1));var _r=K({__name:"Options",setup(e,{expose:t}){const n=O(!1);t({open(){n.value=!0}});const l=Object.keys(yn).map(v=>({label:Ll(v),value:v})),a=k(()=>ce(B(()=>o(P,null,[Yl.map(de)])))),{showTPS:s,theme:r}=tt(Pe),{autosave:c,usingLog:m}=tt(L),d=k({get(){return L.devSpeed===0},set(v){L.devSpeed=v?0:null}}),y=B(()=>o("span",null,[p("Autosave"),o(qe,{display:"Save-specific"},{default:()=>[p("*")]})])),g=B(()=>o("span",null,[p("Pause game"),o(qe,{display:"Save-specific"},{default:()=>[p("*")]})])),w=B(()=>o("span",null,[p("Use log for progress bar"),o(qe,{display:"Save-specific"},{default:()=>[p("*")]})]));return(v,_)=>(b(),Q(rt,{modelValue:n.value,"onUpdate:modelValue":_[5]||(_[5]=N=>n.value=N)},{header:H(()=>[br]),body:H(()=>[o(ll,{title:"Theme",options:u(l),modelValue:u(r),"onUpdate:modelValue":_[0]||(_[0]=N=>Le(r)?r.value=N:null)},null,8,["options","modelValue"]),(b(),Q(Ie(u(a)))),o(At,{title:"Show TPS",modelValue:u(s),"onUpdate:modelValue":_[1]||(_[1]=N=>Le(s)?s.value=N:null)},null,8,["modelValue"]),wr,o(At,{title:u(y),modelValue:u(c),"onUpdate:modelValue":_[2]||(_[2]=N=>Le(c)?c.value=N:null)},null,8,["title","modelValue"]),u(fe).enablePausing?(b(),Q(At,{key:0,title:u(g),modelValue:u(d),"onUpdate:modelValue":_[3]||(_[3]=N=>Le(d)?d.value=N:null)},null,8,["title","modelValue"])):F("",!0),o(At,{title:u(w),modelValue:u(m),"onUpdate:modelValue":_[4]||(_[4]=N=>Le(m)?m.value=N:null)},null,8,["title","modelValue"])]),_:1},8,["modelValue"]))}});var kr=he(_r,[["__scopeId","data-v-0d685451"]]);const Cr=["onSubmit"],Nr={class:"field"},Sr={key:0,class:"field-title"},Mr=["placeholder"],Ar=K({__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,l=Vt(kt(n,"title"),"span"),a=ht(null);xn(()=>{var m;(m=a.value)==null||m.focus()});const s=k({get(){return u(n.modelValue)||""},set(m){t("update:modelValue",m)}});function r(){t("submit")}function c(){n.submitOnBlur!==!1?t("submit"):t("cancel")}return(m,d)=>(b(),M("form",{onSubmit:pn(r,["prevent"])},[f("div",Nr,[u(l)?(b(),M("span",Sr,[(b(),Q(Ie(u(l))))])):F("",!0),e.textArea?(b(),Q(u($i),{key:1,modelValue:u(s),"onUpdate:modelValue":d[0]||(d[0]=y=>Le(s)?s.value=y:null),placeholder:e.placeholder,maxHeight:e.maxHeight,onBlur:c,ref_key:"field",ref:a},null,8,["modelValue","placeholder","maxHeight"])):Pn((b(),M("input",{key:2,type:"text","onUpdate:modelValue":d[1]||(d[1]=y=>Le(s)?s.value=y:null),placeholder:e.placeholder,class:Oe({fullWidth:!e.title}),onBlur:c,ref_key:"field",ref:a},null,42,Mr)),[[Bi,u(s)]])])],40,Cr))}});var gi=he(Ar,[["__scopeId","data-v-67b44a54"]]);const Ir={key:0},Er=["onClick","disabled"],Br={key:0},xr=["onClick"],Pr=K({__name:"DangerButton",props:{disabled:{type:Boolean},skipConfirm:{type:Boolean}},emits:["click","confirmingChanged"],setup(e,{emit:t}){const l=tt(e),a=O(!1);_t(a,c=>{t("confirmingChanged",c)});function s(){if(u(l.skipConfirm)){t("click");return}a.value&&t("click"),a.value=!a.value}function r(){a.value=!1}return(c,m)=>(b(),M("span",{class:Oe(["container",{confirming:a.value}])},[a.value?(b(),M("span",Ir,"Are you sure?")):F("",!0),f("button",{onClick:pn(s,["stop"]),class:"button danger",disabled:e.disabled},[a.value?(b(),M("span",Br,"Yes")):Ct(c.$slots,"default",{key:1},void 0,!0)],8,Er),a.value?(b(),M("button",{key:1,class:"button",onClick:pn(r,["stop"])},"No",8,xr)):F("",!0)],2))}});var Fr=he(Pr,[["__scopeId","data-v-2f8ef34c"]]);const Tr=["onClick"],Dr=K({__name:"FeedbackButton",props:{left:{type:Boolean}},emits:["click"],setup(e,{emit:t}){const n=O(!1),l=O(null);function a(){t("click"),l.value&&clearTimeout(l.value),n.value=!1,Jt(()=>{n.value=!0,l.value=setTimeout(()=>n.value=!1,500)})}return(s,r)=>(b(),M("button",{onClick:pn(a,["stop"]),class:Oe(["feedback",{activated:n.value,left:e.left}])},[Ct(s.$slots,"default",{},void 0,!0)],10,Tr))}});var $r=he(Dr,[["__scopeId","data-v-01a1b95c"]]);const Pt=e=>(Bt("data-v-5285ac49"),e=e(),xt(),e),Rr=Pt(()=>f("div",{class:"handle material-icons"},"drag_handle",-1)),Ur={key:0,class:"actions"},Or=Pt(()=>f("span",{class:"material-icons"},"content_paste",-1)),qr=Pt(()=>f("span",{class:"material-icons"},"content_copy",-1)),Vr=Pt(()=>f("span",{class:"material-icons"},"edit",-1)),Lr=Pt(()=>f("span",{class:"material-icons",style:{margin:"-2px"}},"delete",-1)),Gr={key:1,class:"actions"},Hr=Pt(()=>f("span",{class:"material-icons"},"check",-1)),Qr=Pt(()=>f("span",{class:"material-icons"},"close",-1)),jr={key:2,class:"details"},zr={class:"save-version"},Kr=Pt(()=>f("br",null,null,-1)),Wr={key:0},Jr={key:1},Xr={key:3,class:"details"},Yr={key:4,class:"details error"},Zr=Pt(()=>f("br",null,null,-1)),eu=K({__name:"Save",props:{save:null},emits:["export","open","duplicate","delete","editName"],setup(e,{emit:t}){const n=e,{save:l}=tt(n),a=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),s=O(!1),r=O(!1),c=O("");_t(s,()=>c.value=l.value.name||"");const m=k(()=>l.value&&l.value.id===L.id),d=k(()=>m.value?L.time:l.value&&l.value.time||0),y=Bn(k(()=>{var w,v,_,N;return`Day ${(N=(_=(v=(w=l.value)==null?void 0:w.layers)==null?void 0:v.main)==null?void 0:_.day)!=null?N:1}`}));function g(){t("editName",c.value),s.value=!1}return(w,v)=>(b(),M("div",{class:Oe(["save",{active:u(m)}])},[Rr,s.value?(b(),M("div",Gr,[f("button",{onClick:g,class:"button"},[o(qe,{display:"Save",direction:u(re).Left,class:"info"},{default:H(()=>[Hr]),_:1},8,["direction"])]),f("button",{onClick:v[5]||(v[5]=_=>s.value=!s.value),class:"button"},[o(qe,{display:"Cancel",direction:u(re).Left,class:"info"},{default:H(()=>[Qr]),_:1},8,["direction"])])])):(b(),M("div",Ur,[u(l).error==null&&!r.value?(b(),Q($r,{key:0,onClick:v[0]||(v[0]=_=>t("export")),class:"button",left:""},{default:H(()=>[o(qe,{display:"Export",direction:u(re).Left,class:"info"},{default:H(()=>[Or]),_:1},8,["direction"])]),_:1})):F("",!0),u(l).error==null&&!r.value?(b(),M("button",{key:1,onClick:v[1]||(v[1]=_=>t("duplicate")),class:"button"},[o(qe,{display:"Duplicate",direction:u(re).Left,class:"info"},{default:H(()=>[qr]),_:1},8,["direction"])])):F("",!0),u(l).error==null&&!r.value?(b(),M("button",{key:2,onClick:v[2]||(v[2]=_=>s.value=!s.value),class:"button"},[o(qe,{display:"Edit Name",direction:u(re).Left,class:"info"},{default:H(()=>[Vr]),_:1},8,["direction"])])):F("",!0),o(Fr,{disabled:u(m),onClick:v[3]||(v[3]=_=>t("delete")),onConfirmingChanged:v[4]||(v[4]=_=>r.value=_)},{default:H(()=>[o(qe,{display:"Delete",direction:u(re).Left,class:"info"},{default:H(()=>[Lr]),_:1},8,["direction"])]),_:1},8,["disabled"])])),u(l).error==null&&!s.value?(b(),M("div",jr,[f("button",{class:"button open",onClick:v[6]||(v[6]=_=>t("open"))},[f("h3",null,J(u(l).name),1)]),f("span",zr,"v"+J(u(l).modVersion),1),Kr,u(d)?(b(),M("div",Wr,"Last played "+J(u(a).format(u(d))),1)):F("",!0),u(y)?(b(),M("div",Jr,[(b(),Q(Ie(u(y))))])):F("",!0)])):u(l).error==null&&s.value?(b(),M("div",Xr,[o(gi,{modelValue:c.value,"onUpdate:modelValue":v[7]||(v[7]=_=>c.value=_),class:"editname",onSubmit:g},null,8,["modelValue"])])):(b(),M("div",Yr,[p(" Error: Failed to load save with id "+J(u(l).id),1),Zr,p(J(u(l).error),1)]))],2))}});var tu=he(eu,[["__scopeId","data-v-5285ac49"]]);const al=e=>(Bt("data-v-3b9991aa"),e=e(),xt(),e),nu=al(()=>f("h2",null,"Saves Manager",-1)),lu={class:"modal-footer"},iu={class:"field"},au=al(()=>f("span",{class:"field-title"},"Create Save",-1)),su={class:"field-buttons"},ou={class:"footer"},ru=al(()=>f("div",{style:{"flex-grow":"1"}},null,-1)),uu=K({__name:"SavesManager",setup(e,{expose:t}){const n=O(!1),l=O(null);t({open(){n.value=!0}});const a=O(!1),s=O(""),r=O(null);_t(s,A=>{A?Jt(()=>{try{if(A[0]!=="{")if(A[0]==="e")A=decodeURIComponent(escape(atob(A)));else if(A[0]==="\u1BE1")A=Rt.decompressFromUTF16(A);else{console.warn("Unable to determine preset encoding",A),a.value=!0;return}const S=JSON.parse(A);if(typeof S!="object"){a.value=!0;return}const T=Sn();S.id=T,bt(S),s.value="",a.value=!1,Pe.saves.push(T)}catch{a.value=!0}}):a.value=!1});let c={},m=O(Object.keys(c).reduce((A,S)=>(A.push({label:S.split("/").slice(-1)[0].slice(0,-4),value:c[S]}),A),[]));const d=Tn({});function y(A){if(d[A]==null){let S=localStorage.getItem(A);if(S==null)d[A]={error:"Save doesn't exist in localStorage",id:A};else if(S==="dW5kZWZpbmVk")d[A]={error:"Save is undefined",id:A};else try{if(S[0]!=="{")if(S[0]==="e")S=decodeURIComponent(escape(atob(S)));else if(S[0]==="\u1BE1")S=Rt.decompressFromUTF16(S);else return console.warn("Unable to determine preset encoding",S),a.value=!0,d[A]={error:"Unable to determine preset encoding",id:A},d[A];d[A]={...JSON.parse(S),id:A}}catch(T){d[A]={error:T,id:A},console.warn(`SavesManager: Failed to load info about save with id ${A}: +${T} +${S}`)}}return d[A]}_t(n,A=>{A&&Object.keys(d).forEach(S=>delete d[S])});const g=k(()=>Pe.saves.reduce((A,S)=>(A[S]=y(S),A),{}));function w(A){let S;switch(L.id===A?S=Wl(L[xe]):S=JSON.stringify(g.value[A]),fe.exportEncoding){default:console.warn(`Unknown save encoding: ${fe.exportEncoding}. Defaulting to lz`);case"lz":S=Rt.compressToUTF16(S);break;case"base64":S=btoa(unescape(encodeURIComponent(S)));break;case"plain":break}const T=document.createElement("textarea");T.value=S,document.body.appendChild(T),T.select(),T.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(T)}function v(A){L.id===A&&bt();const S={...g.value[A],id:Sn()};bt(S),Pe.saves.push(S.id)}function _(A){Pe.saves=Pe.saves.filter(S=>S!==A),localStorage.removeItem(A),d[A]=void 0}function N(A){g.value[L.id].time=L.time,bt(),d[L.id]=void 0,Kt(g.value[A]),d[A]=void 0}function I(A){if(r.value=A,Jt(()=>{r.value=null}),A[0]!=="{")if(A[0]==="e")A=decodeURIComponent(escape(atob(A)));else if(A[0]==="\u1BE1")A=Rt.decompressFromUTF16(A);else{console.warn("Unable to determine preset encoding",A);return}const S=JSON.parse(A);S.id=Sn(),bt(S),Pe.saves.push(S.id),N(S.id)}function ne(A,S){const T=g.value[A];T&&(T.name=S,L.id===A?(L.name=S,bt()):(bt(T),d[A]=void 0))}return(A,S)=>(b(),Q(rt,{modelValue:n.value,"onUpdate:modelValue":S[4]||(S[4]=T=>n.value=T),ref_key:"modal",ref:l},{header:H(()=>[nu]),body:H(({shown:T})=>[T?(b(),Q(u(Di),{key:0,list:u(Pe).saves,handle:".handle",itemKey:ye=>ye},{item:H(({element:ye})=>[o(tu,{save:u(g)[ye],onOpen:Me=>N(ye),onExport:Me=>w(ye),onEditName:Me=>ne(ye,Me),onDuplicate:Me=>v(ye),onDelete:Me=>_(ye)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):F("",!0)]),footer:H(()=>[f("div",lu,[o(gi,{modelValue:s.value,"onUpdate:modelValue":S[0]||(S[0]=T=>s.value=T),title:"Import Save",placeholder:"Paste your save here!",class:Oe({importingFailed:a.value})},null,8,["modelValue","class"]),f("div",iu,[au,f("div",su,[f("button",{class:"button",onClick:S[1]||(S[1]=T=>N(u(tn)().id))},"New Game"),Object.keys(u(m)).length>0?(b(),Q(ll,{key:0,options:u(m),modelValue:r.value,"onUpdate:modelValue":S[2]||(S[2]=T=>I(T)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):F("",!0)])]),f("div",ou,[ru,f("button",{class:"button modal-default-button",onClick:S[3]||(S[3]=T=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var vi=he(uu,[["__scopeId","data-v-3b9991aa"]]);const pt=e=>(Bt("data-v-8495e562"),e=e(),xt(),e),cu=["src","alt"],du={key:1,class:"title"},mu=pt(()=>f("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),pu={class:"discord"},fu={class:"discord-links"},hu={key:0},gu=["href"],vu=pt(()=>f("li",null,[f("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),yu=pt(()=>f("li",null,[f("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),bu={href:"https://forums.moddingtree.com/",target:"_blank"},wu=pt(()=>f("span",{class:"material-icons"},"forum",-1)),_u=pt(()=>f("span",{class:"material-icons"},"info",-1)),ku=pt(()=>f("span",{class:"material-icons"},"library_books",-1)),Cu=pt(()=>f("span",{class:"material-icons"},"settings",-1)),Nu=pt(()=>f("span",{class:"material-icons"},"library_books",-1)),Su=pt(()=>f("span",{class:"material-icons"},"settings",-1)),Mu=pt(()=>f("span",{class:"material-icons"},"info",-1)),Au={href:"https://forums.moddingtree.com/",target:"_blank"},Iu=pt(()=>f("span",{class:"material-icons"},"forum",-1)),Eu={class:"discord"},Bu={class:"discord-links"},xu={key:0},Pu=["href"],Fu=pt(()=>f("li",null,[f("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),Tu=pt(()=>f("li",null,[f("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),Du=K({__name:"Nav",setup(e){const t=O(null),n=O(null),l=O(null),a=O(null),{useHeader:s,banner:r,title:c,discordName:m,discordLink:d,versionNumber:y}=fe;function g(){window.open(d,"mywindow")}return(w,v)=>(b(),M(P,null,[u(s)?(b(),M("div",Xt({key:0,class:"nav"},w.$attrs),[u(r)?(b(),M("img",{key:0,src:u(r),class:"banner",alt:u(c)},null,8,cu)):(b(),M("div",du,J(u(c)),1)),f("div",{onClick:v[0]||(v[0]=_=>{var N;return(N=a.value)==null?void 0:N.open()}),class:"version-container"},[o(qe,{display:"Changelog",direction:u(re).Down,class:"version"},{default:H(()=>[f("span",null,"v"+J(u(y)),1)]),_:1},8,["direction"])]),mu,f("div",pu,[f("span",{onClick:g,class:"material-icons"},"discord"),f("ul",fu,[u(d)?(b(),M("li",hu,[f("a",{href:u(d),target:"_blank"},J(u(m)),9,gu)])):F("",!0),vu,yu])]),f("div",null,[f("a",bu,[o(qe,{display:"Forums",direction:u(re).Down,yoffset:"5px"},{default:H(()=>[wu]),_:1},8,["direction"])])]),f("div",{onClick:v[1]||(v[1]=_=>{var N;return(N=t.value)==null?void 0:N.open()})},[o(qe,{display:"Info",direction:u(re).Down,class:"info"},{default:H(()=>[_u]),_:1},8,["direction"])]),f("div",{onClick:v[2]||(v[2]=_=>{var N;return(N=n.value)==null?void 0:N.open()})},[o(qe,{display:"Saves",direction:u(re).Down,xoffset:"-20px"},{default:H(()=>[ku]),_:1},8,["direction"])]),f("div",{onClick:v[3]||(v[3]=_=>{var N;return(N=l.value)==null?void 0:N.open()})},[o(qe,{display:"Options",direction:u(re).Down,xoffset:"-66px"},{default:H(()=>[Cu]),_:1},8,["direction"])])],16)):(b(),M("div",Xt({key:1,class:"overlay-nav"},w.$attrs),[f("div",{onClick:v[4]||(v[4]=_=>{var N;return(N=a.value)==null?void 0:N.open()}),class:"version-container"},[o(qe,{display:"Changelog",direction:u(re).Right,xoffset:"25%",class:"version"},{default:H(()=>[f("span",null,"v"+J(u(y)),1)]),_:1},8,["direction"])]),f("div",{onClick:v[5]||(v[5]=_=>{var N;return(N=n.value)==null?void 0:N.open()})},[o(qe,{display:"Saves",direction:u(re).Right},{default:H(()=>[Nu]),_:1},8,["direction"])]),f("div",{onClick:v[6]||(v[6]=_=>{var N;return(N=l.value)==null?void 0:N.open()})},[o(qe,{display:"Options",direction:u(re).Right},{default:H(()=>[Su]),_:1},8,["direction"])]),f("div",{onClick:v[7]||(v[7]=_=>{var N;return(N=t.value)==null?void 0:N.open()})},[o(qe,{display:"Info",direction:u(re).Right},{default:H(()=>[Mu]),_:1},8,["direction"])]),f("div",null,[f("a",Au,[o(qe,{display:"Forums",direction:u(re).Right,xoffset:"7px"},{default:H(()=>[Iu]),_:1},8,["direction"])])]),f("div",Eu,[f("span",{onClick:g,class:"material-icons"},"discord"),f("ul",Bu,[u(d)?(b(),M("li",xu,[f("a",{href:u(d),target:"_blank"},J(u(m)),9,Pu)])):F("",!0),Fu,Tu])])],16)),o(yr,{ref_key:"info",ref:t,changelog:a.value},null,8,["changelog"]),o(vi,{ref_key:"savesManager",ref:n},null,512),o(kr,{ref_key:"options",ref:l},null,512),o(Zo,{ref_key:"changelog",ref:a},null,512)],64))}});var yi=he(Du,[["__scopeId","data-v-8495e562"]]);const sl=e=>(Bt("data-v-248e2ebb"),e=e(),xt(),e),$u={class:"inner-tab"},Ru={key:1},Uu=sl(()=>f("br",null,null,-1)),Ou=p(" You can help continue the "),qu=sl(()=>f("i",null,"advent",-1)),Vu=p("ure at: "),Lu=sl(()=>f("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[f("span",{class:"material-icons info-modal-discord"},"discord"),p(" The Paper Pilot Community ")],-1)),Gu=K({__name:"Game",setup(e){const t=kt(L,"tabs"),n=k(()=>Object.keys(it)),l=fe.useHeader,a=Vt(W.loreBody);function s(r){const{display:c,minimized:m,minWidth:d,name:y,color:g,minimizable:w,nodes:v}=r;return{display:c,minimized:m,minWidth:d,name:y,color:g,minimizable:w,nodes:v}}return(r,c)=>(b(),M("div",{class:Oe(["tabs-container",{useHeader:u(l)}])},[(b(!0),M(P,null,xl(u(t),(m,d)=>{var y,g;return b(),M("div",{key:d,class:Oe(["tab",u((y=u(it)[m])==null?void 0:y.classes)]),ref_for:!0,ref:`tab-${d}`,style:Ge(u((g=u(it)[m])==null?void 0:g.style))},[d===0&&!u(l)?(b(),Q(yi,{key:0})):F("",!0),f("div",$u,[u(n).includes(m)?(b(),Q(Wo,Xt({key:0},s(u(it)[m]),{index:d,tab:()=>{var w;return(w=r.$refs[`tab-${d}`])==null?void 0:w[0]}}),null,16,["index","tab"])):(b(),Q(Ie(m),{key:1,index:d},null,8,["index"]))])],6)}),128)),o(rt,{modelValue:u(W).showLoreModal.value,"onUpdate:modelValue":c[0]||(c[0]=m=>u(W).showLoreModal.value=m)},{header:H(()=>[f("h2",null,J(u(W).loreTitle.value),1)]),body:H(()=>[u(a)?(b(),Q(Ie(u(a)),{key:0})):F("",!0),u(W).loreScene.value!==-1?(b(),M("div",Ru,[o(jo,{day:u(W).loreScene.value},null,8,["day"]),Uu,Ou,qu,Vu,Lu])):F("",!0)]),_:1},8,["modelValue"])],2))}});var Hu=he(Gu,[["__scopeId","data-v-248e2ebb"]]);const _n=e=>(Bt("data-v-4a50ce42"),e=e(),xt(),e),Qu={class:"game-over-modal-header"},ju=["src","alt"],zu={class:"game-over-modal-title"},Ku=_n(()=>f("h2",null,"Congratulations!",-1)),Wu={key:0},Ju=_n(()=>f("br",null,null,-1)),Xu=_n(()=>f("div",null," Please check the Discord to discuss the game or to check for new content updates! ",-1)),Yu=_n(()=>f("br",null,null,-1)),Zu=["href"],ec=_n(()=>f("span",{class:"material-icons game-over-modal-discord"},"discord",-1)),tc=K({__name:"GameOverScreen",setup(e){const{title:t,logo:n,discordName:l,discordLink:a,versionNumber:s,versionTitle:r}=fe,c=k(()=>Dn(L.timePlayed)),m=k(()=>il.value&&!L.keepGoing),d=kt(L,"autosave");function y(){L.keepGoing=!0}function g(){Kt(tn())}return(w,v)=>(b(),Q(rt,{"model-value":u(m)},{header:H(()=>[f("div",Qu,[u(n)?(b(),M("img",{key:0,class:"game-over-modal-logo",src:u(n),alt:u(t)},null,8,ju)):F("",!0),f("div",zu,[Ku,f("h4",null,"You've beaten "+J(u(t))+" v"+J(u(s))+": "+J(u(r)),1)])])]),body:H(({shown:_})=>[_?(b(),M("div",Wu,[f("div",null,"It took you "+J(u(c))+" to beat the game.",1),Ju,Xu,Yu,f("div",null,[f("a",{href:u(a),class:"game-over-modal-discord-link"},[ec,p(" "+J(u(l)),1)],8,Zu)]),o(At,{title:"Autosave",modelValue:u(d),"onUpdate:modelValue":v[0]||(v[0]=N=>Le(d)?d.value=N:null)},null,8,["modelValue"])])):F("",!0)]),footer:H(()=>[f("div",{class:"game-over-footer"},[f("button",{onClick:y,class:"button"},"Keep Going"),f("button",{onClick:g,class:"button danger"},"Play Again")])]),_:1},8,["model-value"]))}});var nc=he(tc,[["__scopeId","data-v-4a50ce42"]]);const On=e=>(Bt("data-v-3de07c06"),e=e(),xt(),e),lc=On(()=>f("div",{class:"nan-modal-header"},[f("h2",null,"NaN value detected!")],-1)),ic={key:0},ac=On(()=>f("br",null,null,-1)),sc=["href"],oc=On(()=>f("span",{class:"material-icons nan-modal-discord"},"discord",-1)),rc=On(()=>f("br",null,null,-1)),uc={class:"nan-footer"},cc=K({__name:"NaNScreen",setup(e){const{discordName:t,discordLink:n}=fe,l=kt(L,"autosave"),a=kt(Re,"hasNaN"),s=O(null),r=k(()=>{var v;return(v=Re.NaNPath)==null?void 0:v.join(".")}),c=k(()=>{var v;return(v=Re.NaNPath)==null?void 0:v.slice(-1)[0]}),m=k(()=>Re.NaNReceiver&&c.value?Re.NaNReceiver[c.value]:null),d=k({get(){return L.devSpeed===0},set(v){L.devSpeed=v?null:0}});function y(){Re.NaNReceiver&&c.value&&(Re.NaNReceiver[c.value]=new i(0),Re.hasNaN=!1)}function g(){Re.NaNReceiver&&c.value&&(Re.NaNReceiver[c.value]=new i(1),Re.hasNaN=!1)}function w(){Re.NaNReceiver&&c.value&&(Re.NaNReceiver[c.value]=new i(NaN),Re.hasNaN=!1)}return(v,_)=>(b(),M(P,null,[o(rt,Xt({modelValue:u(a),"onUpdate:modelValue":_[4]||(_[4]=N=>Le(a)?a.value=N:null)},v.$attrs),{header:H(()=>[lc]),body:H(()=>[f("div",null,[p(' Attempted to assign "'+J(u(r))+'" to NaN',1),u(m)?(b(),M("span",ic,J(" ")+"(previously "+J(u(ue)(u(m)))+")",1)):F("",!0),p(". Auto-saving has been "+J(u(l)?"enabled":"disabled")+". Check the console for more details, and consider sharing it with the developers on discord. ",1)]),ac,f("div",null,[f("a",{href:u(n),class:"nan-modal-discord-link"},[oc,p(" "+J(u(t)),1)],8,sc)]),rc,o(At,{title:"Autosave",modelValue:u(l),"onUpdate:modelValue":_[0]||(_[0]=N=>Le(l)?l.value=N:null)},null,8,["modelValue"]),u(fe).enablePausing?(b(),Q(At,{key:0,title:"Pause game",modelValue:u(d),"onUpdate:modelValue":_[1]||(_[1]=N=>Le(d)?d.value=N:null)},null,8,["modelValue"])):F("",!0)]),footer:H(()=>[f("div",uc,[f("button",{onClick:_[2]||(_[2]=N=>{var I;return(I=s.value)==null?void 0:I.open()}),class:"button"},"Open Saves Manager"),f("button",{onClick:y,class:"button"},"Set to 0"),f("button",{onClick:g,class:"button"},"Set to 1"),u(m)&&u(i).neq(u(m),0)&&u(i).neq(u(m),1)?(b(),M("button",{key:0,onClick:_[3]||(_[3]=N=>a.value=!1),class:"button"}," Set to previous ")):F("",!0),f("button",{onClick:w,class:"button danger"},"Ignore")])]),_:1},16,["modelValue"]),o(vi,{ref_key:"savesManager",ref:s},null,512)],64))}});var dc=he(cc,[["__scopeId","data-v-3de07c06"]]);const mc={key:0,class:"tpsDisplay"},pc={key:0,class:"low"},fc=K({__name:"TPS",setup(e){const t=k(()=>i.div(Re.lastTenTicks.length,Re.lastTenTicks.reduce((s,r)=>s+r,0))),n=O([]);mt(()=>{n.value.push(Math.round(t.value.toNumber())),n.value.length>10&&(n.value=n.value.slice(1))});const l=k(()=>n.value.reduce((s,r)=>i.max(s,r),0)),a=k(()=>i.sub(t.value,l.value).gt(1));return(s,r)=>u(t).isNan()?F("",!0):(b(),M("div",mc,[p(" TPS: "+J(u(le)(u(t)))+" ",1),o(Fn,{name:"fade"},{default:H(()=>[u(a)?(b(),M("span",pc,J(u(le)(u(l))),1)):F("",!0)]),_:1})]))}});var hc=he(fc,[["__scopeId","data-v-46a3ed5b"]]);var gc=K({__name:"App",setup(e){const t=fe.useHeader,n=k(()=>yn[Pe.theme].variables),l=kt(Pe,"showTPS"),a=k(()=>ce(B(()=>o(P,null,[ns.map(de)]))));return(s,r)=>(b(),M(P,null,[f("div",{id:"modal-root",style:Ge(u(n))},null,4),f("div",{class:Oe(["app",{useHeader:u(t)}]),style:Ge(u(n))},[u(t)?(b(),Q(yi,{key:0})):F("",!0),o(Hu),u(u(l))?(b(),Q(hc,{key:1})):F("",!0),o(nc),o(dc),(b(),Q(Ie(u(a))))],6)],64))}});var vc=he(gc,[["__scopeId","data-v-580927bb"]]);function yc(e={}){const{immediate:t=!1,onNeedRefresh:n,onOfflineReady:l,onRegistered:a,onRegisterError:s}=e;let r,c;const m=async(d=!0)=>{d&&(r==null||r.addEventListener("controlling",y=>{y.isUpdate&&window.location.reload()})),c&&c.waiting&&await Ui(c.waiting,{type:"SKIP_WAITING"})};if("serviceWorker"in navigator){r=new Ri("./sw.js",{scope:"./",type:"classic"}),r.addEventListener("activated",d=>{d.isUpdate||l==null||l()});{const d=()=>{n==null||n()};r.addEventListener("waiting",d),r.addEventListener("externalwaiting",d)}r.register({immediate:t}).then(d=>{c=d,a==null||a(d)}).catch(d=>{s==null||s(d)})}return m}function bc(e={}){const{immediate:t=!0,onNeedRefresh:n,onOfflineReady:l,onRegistered:a,onRegisterError:s}=e,r=O(!1),c=O(!1);return{updateServiceWorker:yc({immediate:t,onNeedRefresh(){r.value=!0,n==null||n()},onOfflineReady(){c.value=!0,l==null||l()},onRegistered:a,onRegisterError:s}),offlineReady:c,needRefresh:r}}document.title=fe.title;window.projInfo=fe;if(fe.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 Xa();const{globalBus:e}=await An(()=>Promise.resolve().then(function(){return Ta}),void 0),{startGameLoop:t}=await An(()=>import("./gameLoop.75780d4e.js"),["assets/gameLoop.75780d4e.js","assets/@fontsource.c175eac8.css","assets/vue.92681fcb.js","assets/lz-string.731cedc5.js","assets/@vue.4ce677c2.js","assets/nanoevents.1080beb7.js","assets/is-plain-object.906d88e8.js","assets/vue-next-select.a2bfab1d.js","assets/vue-next-select.9e6f4164.css","assets/vue-toastification.6f567382.js","assets/vue-toastification.4b5f8ac8.css","assets/vuedraggable.7949458c.js","assets/sortablejs.29100d8a.js","assets/vue-textarea-autosize.35804eaf.js","assets/workbox-window.8d14e8b7.js"]),n=window.vue=xi(vc);e.emit("setupVue",n),n.mount("#app"),Jt(()=>{const l=Fl(),{updateServiceWorker:a}=bc({onNeedRefresh(){l.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(){a()}})},onOfflineReady(){l.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(s){s&&setInterval(s.update,60*60*1e3)}})}),t()});export{i as D,An as _,Re as a,fe as b,To as c,Te as g,L as p,Pe as s}; diff --git a/advent/index.html b/advent/index.html index b06e20eaf..75296ccf6 100644 --- a/advent/index.html +++ b/advent/index.html @@ -13,7 +13,7 @@ Advent Incremental - + @@ -27,8 +27,8 @@ - - + +