diff --git a/assets/gameLoop.d3d173ad.js b/assets/gameLoop.e338d6a8.js
similarity index 91%
rename from assets/gameLoop.d3d173ad.js
rename to assets/gameLoop.e338d6a8.js
index 9b506e8..7ffee6f 100644
--- a/assets/gameLoop.d3d173ad.js
+++ b/assets/gameLoop.e338d6a8.js
@@ -1 +1 @@
-import{_ as T,s as d,p as e,a as l,l as c,D as m,b as s,g as u}from"./index.4823d178.js";import"./vue.92681fcb.js";import{b1 as v}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,f=null;function r(){const t=Date.now();let i=(t-e.time)/1e3;e.time=t;const o=i;if(l.lastTenTicks.push(o),l.lastTenTicks.length>10&&(l.lastTenTicks=l.lastTenTicks.slice(1)),(f==null?void 0:f.value)&&!e.keepGoing||l.hasNaN||(i=Math.max(i,0),e.devSpeed===0))return;if(c.value=!1,e.offlineTime!=null){if(m.gt(e.offlineTime,s.offlineLimit*3600)&&(e.offlineTime=s.offlineLimit*3600),m.gt(e.offlineTime,0)&&e.devSpeed!==0){const p=Math.max(e.offlineTime/10,i);e.offlineTime=e.offlineTime-p,i+=p}else e.devSpeed===0&&(e.offlineTime+=i);(!e.offlineProd||m.lt(e.offlineTime,0))&&(e.offlineTime=null)}if(i=Math.min(i,s.maxTickLength),e.devSpeed!=null&&(i*=e.devSpeed),Number.isFinite(i)||(i=1e308),m.eq(i,0))return;e.timePlayed+=i,Number.isFinite(e.timePlayed)||(e.timePlayed=1e308);let a=o;for(;a>1;)u.emit("update",i/o,1),a--;u.emit("update",i*a/o,a),d.unthrottled?(requestAnimationFrame(r),n!=null&&(clearInterval(n),n=null)):n==null&&(n=setInterval(r,50))}async function F(){f=(await T(()=>import("./index.4823d178.js").then(function(t){return t.c}),["assets/index.4823d178.js","assets/index.7781acb7.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,v(f,t=>{t&&u.emit("gameWon")}),d.unthrottled?requestAnimationFrame(r):n=setInterval(r,50)}export{F as startGameLoop};
+import{_ as T,s as d,p as e,a as l,l as c,D as m,b as s,g as u}from"./index.5284aea9.js";import"./vue.92681fcb.js";import{b1 as v}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,f=null;function r(){const t=Date.now();let i=(t-e.time)/1e3;e.time=t;const o=i;if(l.lastTenTicks.push(o),l.lastTenTicks.length>10&&(l.lastTenTicks=l.lastTenTicks.slice(1)),(f==null?void 0:f.value)&&!e.keepGoing||l.hasNaN||(i=Math.max(i,0),e.devSpeed===0))return;if(c.value=!1,e.offlineTime!=null){if(m.gt(e.offlineTime,s.offlineLimit*3600)&&(e.offlineTime=s.offlineLimit*3600),m.gt(e.offlineTime,0)&&e.devSpeed!==0){const p=Math.max(e.offlineTime/10,i);e.offlineTime=e.offlineTime-p,i+=p}else e.devSpeed===0&&(e.offlineTime+=i);(!e.offlineProd||m.lt(e.offlineTime,0))&&(e.offlineTime=null)}if(i=Math.min(i,s.maxTickLength),e.devSpeed!=null&&(i*=e.devSpeed),Number.isFinite(i)||(i=1e308),m.eq(i,0))return;e.timePlayed+=i,Number.isFinite(e.timePlayed)||(e.timePlayed=1e308);let a=o;for(;a>1;)u.emit("update",i/o,1),a--;u.emit("update",i*a/o,a),d.unthrottled?(requestAnimationFrame(r),n!=null&&(clearInterval(n),n=null)):n==null&&(n=setInterval(r,50))}async function F(){f=(await T(()=>import("./index.5284aea9.js").then(function(t){return t.c}),["assets/index.5284aea9.js","assets/index.7781acb7.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,v(f,t=>{t&&u.emit("gameWon")}),d.unthrottled?requestAnimationFrame(r):n=setInterval(r,50)}export{F as startGameLoop};
diff --git a/assets/index.4823d178.js b/assets/index.5284aea9.js
similarity index 79%
rename from assets/index.4823d178.js
rename to assets/index.5284aea9.js
index 8580cba..ae029d0 100644
--- a/assets/index.4823d178.js
+++ b/assets/index.5284aea9.js
@@ -24,7 +24,7 @@ Trying to pop ${n.id}`;return cl.pop(),ve(n,"color"),ve(n,"display"),ve(n,"name"
`)}]})},a={christmas1:Z(()=>V.isMastery.value?1:i.add(s.christmas.buyable.amount.value,1)),rainbow1:Z(()=>V.isMastery.value?1:i.pow(2,s.rainbow.buyable.amount.value)),jazzy1:Z(()=>V.isMastery.value?1:i.add(s.jazzy.buyable.amount.value,1)),sunshine1:Z(()=>V.isMastery.value?1:i.add(s.sunshine.buyable.amount.value,1)),ocean1:Z(()=>V.isMastery.value?1:i.pow(1.5,s.ocean.buyable.amount.value)),beach1:Z(()=>V.isMastery.value?1:i.add(s.beach.buyable.amount.value,1))},r=Vi(Z(()=>Object.values(s).map(h=>h.buyable.amount.value).reduce(i.add,0)),"Total Wrapping Paper"),d=G(()=>({display:{requirement:"80 Total Wrapping Paper",effectDisplay:"Unlock a new elf to help with dyes"},shouldEarn:()=>i.gte(r.value,80),onComplete(){V.days[3].recentlyUpdated.value=!0}})),u=Z(()=>i.add(b.value,1).pow(.6).times(10).add(120)),c=Qi(()=>({display:()=>{var h;return{title:`${V.isMastery.value?"Stop Decorating":"Begin Decorating"} ${(h=Object.values(oi).find(W=>{var j;return m(W.mastered)===!1&&!["Elves","Management"].includes(m((j=W==null?void 0:W.name)!=null?j:""))}))==null?void 0:h.name}`,description:f(()=>t(C,null,[t("br",null,null),o("Decorating brings you to a separate version of each day that only allows layers that are decorated or being decorated to work. These days will have a new decoration effect that applies outside of decorating as well."),t("br",null,null),o("You can safely start and stop decorating without losing progress"),V.isMastery.value?null:t(C,null,[t("br",null,null),t("br",null,null),o("Requires "),re(u.value),o(" total wrapping paper")])]))}},visibility:()=>y(V.day.value===en),canClick(){return V.isMastery.value||i.gte(r.value,u.value)},onClick(){var W,j;if(!m(c.canClick))return;V.toggleMastery();const h=(j=(W=V.currentlyMastering.value)==null?void 0:W.id)!=null?j:"trees";Me.tabs.includes(h)||V.openDay(h),h==="paper"&&(ye.elves.cuttersElf.bought.value=!0,ye.elves.plantersElf.bought.value=!0,ye.elves.expandersElf.bought.value=!0,ye.elves.heatedCuttersElf.bought.value=!0,ye.elves.heatedPlantersElf.bought.value=!0,ye.elves.fertilizerElf.bought.value=!0)},style:{width:"300px",minHeight:"160px"}})),b=Z(()=>Object.values(oi).filter(h=>h&&"mastered"in h).findIndex(h=>h.mastered.value===!1)),J=qi(()=>({direction:Be.Right,width:600,height:25,fillStyle:`backgroundColor: ${l}`,textStyle:"color: var(--feature-foreground)",progress:()=>V.day.value===en?i.div(b.value,6):1,display:f(()=>V.day.value===en?t(C,null,[b.value,o("/6 days decorated")]):"")}));return Pi(()=>{V.day.value===en&&i.gte(b.value,6)&&V.showLoreModal.value===!1&&V.completeDay()}),{name:e,day:en,color:l,display:f(()=>t("div",{style:"width: 620px"},[t("div",null,[V.day.value===en?"Decorate 6 previous days to complete the day":`${e} Complete!`]),We(J),t(pe,null,null),t(Ui,{resource:r},null),ci(s.christmas.display,s.rainbow.display,s.jazzy.display),ci(s.christmas.buyable,s.rainbow.buyable,s.jazzy.buyable),t(pe,null,null),ci(s.sunshine.display,s.ocean.display,s.beach.display),ci(s.sunshine.buyable,s.ocean.buyable,s.beach.buyable),t(pe,null,null),We(c),t(pe,null,null),We(d)])),wrappingPaper:s,boosts:a,unlockDyeElfMilestone:d,minWidth:700}}),TI="workshop",Zn=2,di=Di(TI,function(){const e="Workshop",l="#D66B02",n="#D66B02",s=Vi(0,"foundation progress"),a=be(()=>[p(()=>({multiplier:Z(()=>i.recip(zi.boosts.beach1.value)),description:"Beach Wrapping Paper",enabled:Z(()=>i.gt(zi.boosts.beach1.value,1))})),tl(()=>({exponent:.99,description:"Holly Level 5",enabled:v.elfTraining.cutterElfTraining.milestones[4].earned}))]),r=fe=>Z(()=>a.apply(fe)),d=nI(()=>({scaling:sI(Ns(Ns(us(r(250),1.5),r(5423),1/1e10),r(1e20),3e8),Z(()=>v.elfTraining.expandersElfTraining.milestones[2].earned.value?1e3:100)),baseResource:ge.logs,gainResource:A(s),roundUpCost:!0,spend(fe,we){Ne.value||(ge.logs.value=i.sub(ge.logs.value,we))}})),u=Qi(()=>({display:f(()=>t(C,null,[t("b",{style:"font-size: x-large"},[o("Build "),re(d.actualGain.value),o("% of the foundation")]),t("br",null,null),t("br",null,null),t("span",{style:"font-size: large"},[Ne.value?"Requirement":"Cost",o(":")," ",fn(ge.logs,i.gte(d.actualGain.value,1)?d.currentAt.value:d.nextAt.value)," ",ge.logs.displayName])])),visibility:()=>y(i.lt(s.value,v.elfTraining.expandersElfTraining.milestones[2].earned.value?1e3:100)),canClick:()=>{var fe;return!(i.lt(ge.logs.value,d.nextAt.value)||V.isMastery.value&&((fe=V.currentlyMastering.value)==null?void 0:fe.name)==="Trees"||i.gte(s.value,v.elfTraining.expandersElfTraining.milestones[2].earned.value?1e3:100))},onClick(){!m(this.canClick)||d.convert()},style:"width: 600px; min-height: unset"})),c=In(()=>({key:"w",description:"Build part of the foundation.",onPress:()=>{u.canClick.value&&u.onClick()}})),b=Z(()=>!ye.milestones[6].earned.value),J=G(()=>({display:{requirement:"1% Foundation Completed",effectDisplay:"Trees give 5% more logs for each % of foundation completed"},shouldEarn:()=>i.gte(s.value,1),showPopups:b})),h=G(()=>({display:{requirement:"10% Foundation Completed",effectDisplay:"Cut an additional tree per second for each 5% of foundation completed"},shouldEarn:()=>i.gte(s.value,10),visibility:()=>y(J.earned.value),showPopups:b})),W=G(()=>({display:{requirement:"20% Foundation Completed",effectDisplay:"Plant an additional tree per second for each 10% of foundation completed"},shouldEarn:()=>i.gte(s.value,20),visibility:()=>y(h.earned.value),showPopups:b})),j=G(()=>({display:{requirement:"30% Foundation Completed",effectDisplay:"All automatic tree cutting is doubled"},shouldEarn:()=>i.gte(s.value,30),visibility:()=>y(W.earned.value),showPopups:b})),F=G(()=>({display:{requirement:"40% Foundation Completed",effectDisplay:"All automatic tree planting is doubled"},shouldEarn:()=>i.gte(s.value,40),visibility:()=>y(j.earned.value),showPopups:b})),X=G(()=>({display:{requirement:"50% Foundation Completed",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(s.value,50),visibility:()=>y(F.earned.value),showPopups:b})),M=G(()=>({display:{requirement:"75% Foundation Completed",effectDisplay:"The forest gains an extra tree for every 2% of foundation completed"},shouldEarn:()=>i.gte(s.value,75),visibility:()=>y(X.earned.value),showPopups:b})),T=G(()=>({display:{requirement:"100% Foundation Completed",effectDisplay:"Log per tree is raised to the 1.2th power"},shouldEarn:()=>i.gte(s.value,100),visibility:()=>y(M.earned.value),showPopups:b})),O=G(()=>({display:{requirement:"200% Foundation Completed",effectDisplay:"The 1% milestone is now +2% and multiplicative"},shouldEarn:()=>i.gte(s.value,200),visibility:()=>y(T.earned.value&&v.elfTraining.expandersElfTraining.milestones[2].earned.value),showPopups:b})),k=G(()=>({display:{requirement:"400% Foundation Completed",effectDisplay:"Gain +10% metal for every 10% foundation completed"},shouldEarn:()=>i.gte(s.value,400),visibility:()=>y(O.earned.value&&v.elfTraining.expandersElfTraining.milestones[2].earned.value),showPopups:b})),D=G(()=>({display:{requirement:"600% Foundation Completed",effectDisplay:"Gain +10% oil for every 10% foundation completed"},shouldEarn:()=>i.gte(s.value,600),visibility:()=>y(k.earned.value&&v.elfTraining.expandersElfTraining.milestones[2].earned.value),showPopups:b})),de=G(()=>({display:{requirement:"800% Foundation Completed",effectDisplay:"Gain +10% plastic for every 10% foundation completed"},shouldEarn:()=>i.gte(s.value,800),visibility:()=>y(D.earned.value&&v.elfTraining.expandersElfTraining.milestones[2].earned.value),showPopups:b})),_=G(()=>({display:{requirement:"1000% Foundation Completed",effectDisplay:"Double paper, boxes, and all cloth actions"},shouldEarn:()=>i.gte(s.value,1e3),visibility:()=>y(de.earned.value&&v.elfTraining.expandersElfTraining.milestones[2].earned.value),showPopups:b})),Q={logGainMilestone1:J,autoCutMilestone1:h,autoPlantMilestone1:W,autoCutMilestone2:j,autoPlantMilestone2:F,logGainMilestone2:X,morePlantsMilestone1:M,logGainMilestone3:T,extraExpansionMilestone1:O,extraExpansionMilestone2:k,extraExpansionMilestone3:D,extraExpansionMilestone4:de,extraExpansionMilestone5:_},{collapseMilestones:U,display:ie}=dn(Q),Oe=qi(()=>({direction:Be.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>{var fe;return V.day.value===Zn||((fe=V.currentlyMastering.value)==null?void 0:fe.name)===e?i.div(s.value,100):1},display:f(()=>{var fe;return V.day.value===Zn||((fe=V.currentlyMastering.value)==null?void 0:fe.name)===e?t(C,null,[re(s.value),o("%")]):""})}));Pi(()=>{var fe;V.day.value===Zn&&i.gte(s.value,100)?V.completeDay():((fe=V.currentlyMastering.value)==null?void 0:fe.name)===e&&i.gte(s.value,100)&&V.completeMastery()});const Ce={foundationProgress:I(0),milestones:{logGainMilestone1:{earned:I(!1)},autoCutMilestone1:{earned:I(!1)},autoPlantMilestone1:{earned:I(!1)},autoCutMilestone2:{earned:I(!1)},autoPlantMilestone2:{earned:I(!1)},logGainMilestone2:{earned:I(!1)},morePlantsMilestone1:{earned:I(!1)},logGainMilestone3:{earned:I(!1)},extraExpansionMilestone1:{earned:I(!1)},extraExpansionMilestone2:{earned:I(!1)},extraExpansionMilestone3:{earned:I(!1)},extraExpansionMilestone4:{earned:I(!1)},extraExpansionMilestone5:{earned:I(!1)}}},Ze=I(!1),Ne=Z(()=>{var fe;return Ze.value||((fe=V.currentlyMastering.value)==null?void 0:fe.name)===e});return{name:e,day:Zn,color:l,foundationProgress:s,foundationConversion:d,milestones:Q,collapseMilestones:U,minWidth:700,buildFoundationHK:c,display:f(()=>{var fe;return t(C,null,[t("div",null,[V.day.value===Zn?"Complete the foundation to complete the day":((fe=V.currentlyMastering.value)==null?void 0:fe.name)===e?"Complete the foundation to decorate the day":`${e} Complete!`]),We(Oe),t(pe,null,null),Ne.value?t(C,null,[o("Decoration effect: Logs are just a requirement instead of a cost"),t(pe,null,null)]):null,t("div",null,[t("span",null,[o("The foundation is ")]),t("h2",{style:`color: ${l}; text-shadow: 0 0 10px ${l}`},[re(s.value)]),o("% completed")]),i.lt(s.value,100)||v.elfTraining.expandersElfTraining.milestones[2].earned.value?t(pe,null,null):null,We(u),t(pe,null,null),ie()])}),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[re(s.value),o("% "),s.displayName])])),mastery:Ce,mastered:Ze}}),QI="trees",An=1,Xs=.1,ge=Di(QI,function(){const e="Trees",l="#4BDC13",n="green",s=Vi(0,"logs"),a=Vi(0,"saplings"),r=I(0),d=me(0),u=me(0),c=me(0),b=be(()=>[je(()=>({addend:()=>i.times(Oe.amount.value,10),description:"Expand Forest",enabled:_.bought})),je(()=>({addend:()=>i.div(di.foundationProgress.value,2),description:"75% Foundation Completed",enabled:di.milestones.morePlantsMilestone1.earned})),p(()=>({multiplier:2,description:"5 Elves Trained",enabled:ye.milestones[4].earned})),p(()=>({multiplier:2,description:"8 Elves Trained",enabled:ye.milestones[7].earned})),p(()=>({multiplier:4,description:"Lumberjack Boots",enabled:Yi.treesUpgrades.treesUpgrade1.bought})),je(()=>({addend:Ye.boosts.blue1,description:"Blue Dye Boost 1",enabled:()=>i.gte(Ye.dyes.blue.amount.value,1)})),je(()=>({addend:()=>i.pow(Ne.value,.99),description:"Hope Level 1",enabled:v.elfTraining.expandersElfTraining.milestones[0].earned})),je(()=>({addend:r,description:"Trees Decoration",enabled:Xe}))]),J=Vi(Z(()=>i.sub(b.apply(10),a.value)),"trees"),h=Z(()=>b.apply(10)),W=B(()=>({resource:A(s),cost:10,display:{title:"Wooden Fingers",description:"Cut down an additional tree per click"}})),j=B(()=>({resource:A(s),cost:10,display:{title:"Leafy Fingers",description:"Plant an additional tree per click"}})),F=B(()=>({resource:A(s),cost:25,display:{title:"Automated Knives",description:"Cut down a tree every second"}})),X=B(()=>({resource:A(s),cost:25,display:{title:"Automated Spade",description:"Plant a tree every second"}})),M=B(()=>({resource:A(s),cost:40,display:{title:"Research I",description:"Trees give 25% more logs, and unlock more upgrades"}})),T=[W,j,F,X,M],O=B(()=>({resource:A(s),cost:50,visibility:()=>y(M.bought.value),display:{title:"Sharper Fingers",description:"Manually cut trees twice as often"}})),k=B(()=>({resource:A(s),cost:50,visibility:()=>y(M.bought.value),display:{title:"Greener Fingers",description:"Manually Plant trees twice as often"}})),D=B(()=>({resource:A(s),cost:150,visibility:()=>y(M.bought.value),display:{title:"Smart Knives",description:"Each time you manually chop trees, gain 1s of automatic tree chopping production"}})),de=B(()=>({resource:A(s),cost:150,visibility:()=>y(M.bought.value),display:{title:"Smart Spades",description:"Each time you manually plant trees, gain 1s of automatic tree planting production"}})),_=B(()=>({resource:A(s),cost:300,visibility:()=>y(M.bought.value),display:{title:"Research II",description:"Trees give 25% more logs, and unlock repeatable purchases"}})),Q=[O,k,D,de,_],U=Ae(()=>({resource:A(s),cost(){let P=this.amount.value;return i.gte(P,50)&&(P=i.pow(P,2).div(50)),i.gte(P,200)&&(P=i.pow(P,2).div(200)),i.gte(P,2e6)&&(P=i.pow(P,2).div(2e6)),i.gte(P,2e30)&&(P=i.pow(P,10).div(i.pow(2e30,9))),P=i.pow(.95,z.books.cuttersBook.totalAmount.value).times(P),i.times(100,P).add(200)},inverseCost(P){let q=i.sub(P,200).div(100);return q=q.div(i.pow(.95,z.books.cuttersBook.totalAmount.value)),i.gte(q,2e30)&&(q=i.mul(q,i.pow(2e30,9)).root(10)),i.gte(q,2e6)&&(q=i.mul(q,2e6).root(2)),i.gte(q,200)&&(q=i.mul(q,200).root(2)),i.gte(q,50)&&(q=i.mul(q,50).root(2)),i.isNaN(q)?i.dZero:q.floor().max(0)},display:{title:"Generic Cutters",description:"Each cutter cuts down 1 tree/s"},visibility:()=>y(_.bought.value)})),ie=Ae(()=>({resource:A(s),cost(){let P=this.amount.value;i.gte(P,50)&&(P=i.pow(P,2).div(50)),i.gte(P,200)&&(P=i.pow(P,2).div(200)),i.gte(P,2e6)&&(P=i.pow(P,2).div(2e6)),i.gte(P,2e30)&&(P=i.pow(P,10).div(i.pow(2e30,9))),P=i.pow(.95,z.books.plantersBook.totalAmount.value).times(P);let q=i.times(100,P).add(200);return v.elfTraining.planterElfTraining.milestones[3].earned.value&&(q=i.div(q,10)),q},inverseCost(P){v.elfTraining.planterElfTraining.milestones[3].earned.value&&(P=i.mul(P,10));let q=i.sub(P,200).div(100);return q=q.div(i.pow(.95,z.books.plantersBook.totalAmount.value)),i.gte(q,2e30)&&(q=i.mul(q,i.pow(2e30,9)).root(10)),i.gte(q,2e6)&&(q=i.mul(q,2e6).root(2)),i.gte(q,200)&&(q=i.mul(q,200).root(2)),i.gte(q,50)&&(q=i.mul(q,50).root(2)),i.isNaN(q)?i.dZero:q.floor().max(0)},display:{title:"Generic Planters",description:"Each planter plants 0.5 trees/s"},visibility:()=>y(_.bought.value)})),Oe=Ae(()=>({resource:A(s),cost(){let P=this.amount.value;return i.gte(P,100)&&(P=i.pow(P,2).div(100)),i.gte(P,1e5)&&(P=i.pow(P,2).div(1e5)),i.gte(P,1e15)&&(P=i.pow(P,10).div(1e135)),P=i.pow(.95,z.books.expandersBook.totalAmount.value).times(P),i.pow(i.add(P,1),1.5).times(500)},inverseCost(P){let q=i.div(P,500).root(1.5).sub(1);return q=q.div(i.pow(.95,z.books.expandersBook.totalAmount.value)),i.gte(q,1e15)&&(q=i.mul(q,1e135).root(10)),i.gte(q,1e5)&&(q=i.mul(q,1e5).root(2)),i.gte(q,100)&&(q=i.mul(q,100).root(2)),i.isNaN(q)?i.dZero:q.floor().max(0)},display:{title:"Expand Forest",description:"Add 10 trees to the forest"},visibility:()=>y(_.bought.value)})),Ce=[U,ie,Oe],Ze=be(()=>[je(()=>({addend:1,description:"Wooden Fingers",enabled:W.bought})),je(()=>({addend:Fe,description:"Smart Knives",enabled:D.bought}))]),Ne=Z(()=>Ze.apply(1)),fe=be(()=>[p(()=>({multiplier:.5,description:"Sharper Fingers",enabled:O.bought})),p(()=>({multiplier:()=>i.pow(.5,ye.totalElves.value),description:"1 Elf Trained",enabled:ye.milestones[0].earned}))]),we=Z(()=>fe.apply(1)),xe=be(()=>[je(()=>({addend:1,description:"Automated Knives",enabled:F.bought})),je(()=>({addend:U.amount,description:"Generic Cutters",enabled:_.bought})),je(()=>({addend:()=>i.div(di.foundationProgress.value,5).floor(),description:"10% Foundation Completed",enabled:di.milestones.autoCutMilestone1.earned})),p(()=>({multiplier:2,description:"30% Foundation Completed",enabled:di.milestones.autoCutMilestone2.earned})),p(()=>({multiplier:2,description:"Warmer Cutters",enabled:ee.warmerCutters.bought})),p(()=>({multiplier:ee.computedHeatedCutterEffect,description:"Heated Cutters",enabled:()=>i.gt(ee.heatedCutters.amount.value,0)})),p(()=>({multiplier:4,description:"Lumberjack Jeans",enabled:Yi.treesUpgrades.treesUpgrade2.bought})),p(()=>({multiplier:()=>i.pow(1.1,V.day.value),description:"Holly Level 4",enabled:v.elfTraining.cutterElfTraining.milestones[3].earned})),je(()=>({addend:()=>i.sub(c.value,u.value).max(0),description:"Ivy Level 5",enabled:v.elfTraining.planterElfTraining.milestones[4].earned}))]),Fe=Z(()=>xe.apply(0)),ue=be(()=>[je(()=>({addend:1,description:"Leafy Fingers",enabled:j.bought})),je(()=>({addend:ei,description:"Smart Spades",enabled:de.bought}))]),x=Z(()=>ue.apply(1)),$=be(()=>[p(()=>({multiplier:.5,description:"Greener Fingers",enabled:k.bought})),p(()=>({multiplier:()=>i.pow(.5,ye.totalElves.value),description:"1 Elf Trained",enabled:ye.milestones[0].earned}))]),Ie=Z(()=>$.apply(1)),Wi=be(()=>[je(()=>({addend:1,description:"Automated Spade",enabled:X.bought.value})),je(()=>({addend:()=>i.div(ie.amount.value,2),description:"Generic Planters",enabled:_.bought})),je(()=>({addend:()=>i.div(di.foundationProgress.value,10).floor(),description:"20% Foundation Completed",enabled:di.milestones.autoPlantMilestone1.earned})),p(()=>({multiplier:2,description:"40% Foundation Completed",enabled:di.milestones.autoPlantMilestone2.earned})),p(()=>({multiplier:2,description:"Warmer Planters",enabled:ee.warmerPlanters.bought})),p(()=>({multiplier:ee.computedHeatedPlanterEffect,description:"Heated Planters",enabled:()=>i.gt(ee.heatedPlanters.amount.value,0)})),p(()=>({multiplier:4,description:"Lumberjack Plaid",enabled:Yi.treesUpgrades.treesUpgrade3.bought})),p(()=>({multiplier:2,description:"Ivy Level 1",enabled:v.elfTraining.planterElfTraining.milestones[0].earned})),p(()=>({multiplier:()=>i.pow(J.value,.2).max(1).log10().pow_base(2),description:"Ivy Level 3",enabled:v.elfTraining.planterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"Mary Level 4",enabled:v.elfTraining.heatedPlanterElfTraining.milestones[3].earned})),je(()=>({addend:()=>i.sub(u.value,c.value).max(0),description:"Ivy Level 5",enabled:v.elfTraining.planterElfTraining.milestones[4].earned}))]),ei=Z(()=>Wi.apply(0)),De=be(()=>[p(()=>({multiplier:1.25,description:"Research I",enabled:M.bought})),p(()=>({multiplier:1.25,description:"Research II",enabled:_.bought})),p(()=>({multiplier:()=>di.milestones.extraExpansionMilestone1.earned.value?i.pow(1.02,di.foundationProgress.value):i.div(di.foundationProgress.value,20).add(1),description:"1% Foundation Completed",enabled:di.milestones.logGainMilestone1.earned})),p(()=>({multiplier:2,description:"50% Foundation Completed",enabled:di.milestones.logGainMilestone2.earned})),p(()=>({multiplier:1.25,description:"Ashy Soil",enabled:ee.basicFertilizer.bought})),p(()=>({multiplier:ee.computedFertilizerEffect,description:"Fertilized Soil",enabled:()=>i.gt(ee.moreFertilizer.amount.value,0)})),p(()=>({multiplier:2,description:"4 Elves Trained",enabled:ye.milestones[3].earned})),p(()=>({multiplier:2,description:"Carry logs in boxes",enabled:si.upgrades.logsUpgrade.bought})),p(()=>({multiplier:()=>i.div(si.buyables.logBoxesBuyable.amount.value,2).add(1),description:"Carry more logs",enabled:si.upgrades.logsUpgrade.bought})),p(()=>({multiplier:10,description:"Felt-Gripped Axe",enabled:Yi.treesUpgrades.treesUpgrade4.bought})),p(()=>({multiplier:Z(()=>i.add(Fe.value,1).log10().plus(1)),description:"Is Blue Dye just Water?",enabled:Ye.upgrades.blueDyeUpg.bought})),p(()=>({multiplier:Z(()=>i.add(Fe.value,1).root(9)),description:"Holly Level 1",enabled:v.elfTraining.cutterElfTraining.milestones[0].earned})),p(()=>({multiplier:()=>i.sqrt(v.totalElfLevels.value),description:"Noel Level 1",enabled:v.elfTraining.fertilizerElfTraining.milestones[0].earned})),p(()=>({multiplier:zi.boosts.christmas1,description:"Christmas Wrapping Paper",enabled:Z(()=>i.gt(zi.boosts.christmas1.value,1))})),p(()=>({multiplier:()=>i.add(h.value,1).log10(),description:"Trees Decoration",enabled:Xe})),tl(()=>({exponent:1.2,description:"100% Foundation Completed",enabled:di.milestones.logGainMilestone3.earned})),tl(()=>({exponent:1.05,description:"Un-Processing",enabled:z.upgrades2.treeUpgrade.bought}))]),Ee=I(0),Ci=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s",progress:()=>i.div(Ee.value,we.value)})),Ke=Qi(()=>({display:{title:"Cut trees",description:f(()=>t(C,null,[o("Cut down up to "),re(i.floor(Ne.value))," ",o("tree"),i.eq(Ne.value,1)?"":"s",o(" at once!"),t("br",null,null),We(Ci)]))},style:{minHeight:"80px"},canClick:()=>i.gte(J.value,1)&&i.gte(Ee.value,we.value),onClick(){if(i.lt(Ee.value,we.value))return;const P=i.floor(i.min(J.value,i.times(Ne.value,i.div(Ee.value,we.value).floor()))).max(0);Xe.value&&(r.value=i.add(r.value,P).max(0)),s.value=i.add(s.value,i.times(De.apply(1),P)),a.value=i.mul(P,Xe.value?2:1).add(a.value),Ee.value=0}})),ze=I(0),ii=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s",progress:()=>i.div(ze.value,Ie.value)})),mi=Qi(()=>({display:{title:"Plant trees",description:f(()=>t(C,null,[o("Plant up to "),re(i.floor(x.value))," ",o("tree"),i.eq(x.value,1)?"":"s",o(" at once!"),t("br",null,null),We(ii)]))},style:{minHeight:"80px"},canClick:()=>i.gte(a.value,1)&&i.gte(ze.value,Ie.value),onClick(){if(i.lt(ze.value,Ie.value))return;const P=i.floor(i.min(a.value,i.times(x.value,i.div(ze.value,Ie.value).floor()))).max(0);a.value=i.sub(a.value,P),ze.value=0}})),[he,Re]=rl(()=>[{title:"Logs per Tree",modifier:De,base:1,visible:M.bought},{title:"Manual Cutting Amount",modifier:Ze,base:1,visible:W.bought,unit:"/click"},{title:"Manual Cutting Cooldown",modifier:fe,base:1,visible:W.bought,unit:"s"},{title:"Manual Planting Amount",modifier:ue,base:1,visible:j.bought,unit:"/click"},{title:"Manual Planting Cooldown",modifier:$,base:1,visible:j.bought,unit:"s"},{title:"Auto Cutting Amount",modifier:xe,base:0,visible:F.bought,unit:"/s"},{title:"Auto Planting Amount",modifier:Wi,base:0,visible:F.bought,unit:"/s"},{title:"Forest Size",modifier:b,base:10,visible:()=>_.bought.value||Xe.value}]),E=me(!1),oe=f(()=>t(Si,{modelValue:E.value,"onUpdate:modelValue":P=>E.value=P},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:he}));yi.on("update",P=>{if(i.lt(V.day.value,An))return;i.gte(Ee.value,we.value)?Ee.value=we.value:(Ee.value=i.add(Ee.value,P),Ke.isHolding.value&&Ke.onClick()),i.gte(ze.value,Ie.value)?ze.value=Ie.value:(ze.value=i.add(ze.value,P),mi.isHolding.value&&mi.onClick());const q=i.sub(ei.value,i.sub(u.value,c.value).max(0)),$i=i.sub(Fe.value,i.sub(c.value,u.value).max(0));c.value=i.isNaN(q)?0:q,u.value=i.isNaN($i)?0:$i;const _i=i.min(J.value,i.times(Fe.value,P)).max(0),Mi=i.mul(De.apply(1),_i),Pe=i.div(Mi,P);d.value=i.mul(Pe,Xs).add(i.mul(d.value,i.dOne.sub(Xs))),s.value=i.add(s.value,Mi),a.value=i.mul(_i,Xe.value?2:1).add(a.value),Xe.value&&(r.value=i.add(r.value,_i));const gi=i.min(a.value,i.times(ei.value,P)).max(0);a.value=i.sub(a.value,gi)});const Ve=Z(()=>i.sub(Fe.value,ei.value)),Hi=Z(()=>i.sub(ei.value,Fe.value)),vi=In(()=>({key:"c",description:'Press the "Cut trees" button.',onPress:()=>{Ke.canClick.value&&Ke.onClick()}})),_e=In(()=>({key:"p",description:'Press the "Plant trees" button.',onPress:()=>{mi.canClick.value&&mi.onClick()}})),{total:li,trackerDisplay:Li}=wl({resource:s,goal:1e4,name:e,day:An,color:n,modal:{show:E,display:oe}}),ji={logs:I(0),totalLogs:I(0),saplings:I(0),row1Upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],row2Upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],row1Buyables:[{amount:I(0)},{amount:I(0)},{amount:I(0)}]},ne=I(!1),Xe=Z(()=>{var P;return ne.value||((P=V.currentlyMastering.value)==null?void 0:P.name)===e});return{name:e,day:An,color:l,logs:s,totalLogs:li,trees:J,saplings:a,createdSaplings:r,cutTree:Ke,plantTree:mi,cutTreeHK:vi,plantTreeHK:_e,row1Upgrades:T,row2Upgrades:Q,row1Buyables:Ce,manualCutProgress:Ee,manualPlantProgress:ze,generalTabCollapsed:Re,computedAutoCuttingAmount:Fe,minWidth:700,display:f(()=>t(C,null,[We(Li),t(pe,null,null),Xe.value?t(C,null,[o("Decoration effect: Trees drop 2 saplings, and forest size increases log gain"),t(pe,null,null)]):null,t(Ui,{resource:s,color:l,style:"margin-bottom: 0",productionDisplay:i.gt(Fe.value,0)?`+${le(d.value)}/s average equilibrium: +${As([[Fe.value,"cutting speed"],[ei.value,"planting speed"],[i.mul(h.value,20),"forest cap"]],"/s",De.apply(1))}`:void 0},null),t(Ui,{resource:a,color:n,style:"margin-bottom: 0",productionDisplay:Xn(Ve.value)},null),t(Ui,{resource:J,color:n,style:"margin-bottom: 0",productionDisplay:Xn(Hi.value)},null),t(pe,null,null),ci(Ke,mi),t("div",null,[o("Tip: You can hold down on actions to perform them automatically")]),t(pe,null,null),fl(T,Q),t(pe,null,null),ci(...Ce)])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(s.value),o(" "),s.displayName])])),mastery:ji,mastered:ne}}),UI="paper",Dn=5,z=Di(UI,function(){const e="Paper",l="#E8DCB8",n=Vi(0,"paper"),s=Vi(Z(()=>i.min(i.div(ge.logs.value,1e9),i.div(ee.ash.value,Ie.value))),"pulp"),a=mt(()=>({scaling:us(1,1.2),baseResource:s,gainResource:A(n),roundUpCost:!0,spend(he,Re){ge.logs.value=i.sub(ge.logs.value,i.times(Re,1e9)),ee.ash.value=i.sub(ee.ash.value,i.times(Re,Ie.value))},gainModifier:x})),r=Qi(()=>({display:f(()=>{const he=i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value;return t(C,null,[t("span",{style:"font-size: large"},[o("Create "),re(a.currentGain.value),o(" "),n.displayName]),t("br",null,null),t("span",{style:"font-size: large"},[o("Cost: "),fn(ge.logs,he),o(" "),s.displayName,o(" ("),re(i.times(he,1e9)),o(" "),ge.logs.displayName,o(";")," ",re(i.times(he,Ie.value))," ",ee.ash.displayName,o(")")])])}),canClick:()=>i.gte(a.actualGain.value,1),onClick(){!m(this.canClick)||a.convert()},style:"width: 600px; min-height: unset",visibility:()=>y(!V.isMastery.value||mi.value)}));function d(he){const Re=Ae(()=>({...he,display:{title:he.name,description:`Print a copy of "${he.name}", which ${he.elfName} will use to improve their skills! Each copy printed will reduce the "${he.buyableName}" price scaling by 0.95x and make ${he.elfName} purchase +10% faster!`,effectDisplay:f(()=>t(C,null,[un(i.pow(.95,Re.totalAmount.value)),o("x price scaling,")," ",le(i.div(Re.totalAmount.value,10).add(1)),o("x auto-purchase speed")])),showAmount:!1},resource:A(n),cost(){let E=Re.amount.value;he.elfName==="Star"&&i.gte(E,10)&&(E=i.pow(10,i.div(E,10))),(he.elfName==="Star"||he.elfName==="Bell")&&(E=i.pow(E,2)),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,M.totalAmount.value).times(E);let oe=5;v.elfTraining.paperElfTraining.milestones[2].earned.value&&oe--;let Ve=i.pow(oe,E).times(10);return["Peppermint","Twinkle","Cocoa","Frosty"].includes(he.elfName)&&(Ve=Ve.mul(1e31)),v.elfTraining.paperElfTraining.milestones[0].earned.value&&(Ve=i.div(Ve,Oe.value.max(1))),xe.bought.value&&(Ve=Ve.div(10)),Ve},inverseCost(E){xe.bought.value&&(E=i.mul(E,10)),v.elfTraining.paperElfTraining.milestones[0].earned.value&&(E=i.mul(E,Oe.value.max(1)));let oe=5;v.elfTraining.paperElfTraining.milestones[2].earned.value&&oe--;let Ve=i.div(E,10);return["Peppermint","Twinkle","Cocoa","Frosty"].includes(he.elfName)&&(Ve=Ve.div(1e31)),Ve=Ve.log(oe),Ve=Ve.div(i.pow(.95,M.totalAmount.value)),i.gte(Ve,1e4)&&(Ve=i.mul(Ve,1e4).root(2)),i.gte(Ve,100)&&(Ve=i.mul(Ve,100).root(2)),(he.elfName==="Star"||he.elfName==="Bell")&&(Ve=i.root(Ve,2)),he.elfName==="Star"&&i.gte(Ve,10)&&(Ve=Ve.log10().mul(10)),i.isNaN(Ve)?i.dZero:Ve.floor().max(0)},style:"width: 600px",freeLevels:Z(()=>{var E,oe;return v.elfTraining.paperElfTraining.milestones[4].earned.value&&i.gte((oe=(E=Object.values(v.elfTraining).find(Ve=>Ve.name===he.elfName))==null?void 0:E.level.value)!=null?oe:0,5)&&!["Star","Bell","Gingersnap","Peppermint","Twinkle","Cocoa","Frosty"].includes(he.elfName)?5:0}),totalAmount:Z(()=>i.add(Re.amount.value,Re.freeLevels.value))}));return Re}const u=d({name:"Now You're Logging!",elfName:"Holly",buyableName:"Generic Cutters"}),c=d({name:"The Man Who Planted Trees",elfName:"Ivy",buyableName:"Generic Planters"}),b=d({name:"Logjam",elfName:"Hope",buyableName:"Expand Forest"}),J=d({name:"Fahrenheit 451",elfName:"Jack",buyableName:"Heated Cutters"}),h=d({name:"Tillamook Burn Country",elfName:"Mary",buyableName:"Heated Planters"}),W=d({name:"The Garden Tree's Handbook",elfName:"Noel",buyableName:"Fertilized Soil"}),j=d({name:"Firestarter",elfName:"Joy",buyableName:"Small Fire",visibility:()=>y(ye.elves.smallFireElf.bought.value)}),F=d({name:"An Arsonist's Guide to Writer's Homes in New England",elfName:"Faith",buyableName:"Bonfire",visibility:()=>y(ye.elves.bonfireElf.bought.value)}),X=d({name:"Little Fires Everywhere",elfName:"Snowball",buyableName:"Kiln",visibility:()=>y(ye.elves.kilnElf.bought.value)}),M=d({name:"The Book Thief",elfName:"Star",buyableName:"Books",visibility:()=>y(ye.elves.paperElf.bought.value)}),T=d({name:"Not a box",elfName:"Bell",buyableName:"Box Buyables",visibility:()=>y(ye.elves.boxElf.bought.value)}),O=d({name:"Fuzzy Bee and Friends",elfName:"Gingersnap",buyableName:"Cloth Buyables",visibility:()=>y(ye.elves.clothElf.bought.value)}),k=d({name:"Drills and Mills",elfName:"Peppermint",buyableName:"Coal Drill",visibility:()=>y(ye.elves.coalDrillElf.bought.value)}),D=d({name:"Deep in the Earth",elfName:"Frosty",buyableName:"Oil Drills",visibility:()=>y(ye.elves.heavyDrillElf.bought.value)}),de=d({name:"Burning the Midnight Oil",elfName:"Cocoa",buyableName:"Oil-Consuming Machines",visibility:()=>y(ye.elves.oilElf.bought.value)}),_=d({name:"Physical Metallurgy",elfName:"Twinkle",buyableName:"Metal Machines",visibility:()=>y(ye.elves.metalElf.bought.value)}),Q=d({name:"Arts and Crafts",elfName:"Carol",buyableName:"Primary Dyes",visibility:()=>y(ye.elves.dyeElf.bought.value)}),U=d({name:"Natural Dyeing",elfName:"Carol",buyableName:"Secondary Dyes",visibility:()=>y(ye.elves.dyeElf.bought.value&&Zs.milestones.dyeBook.earned.value)}),ie={cuttersBook:u,plantersBook:c,expandersBook:b,heatedCuttersBook:J,heatedPlantersBook:h,fertilizerBook:W,smallFireBook:j,bonfireBook:F,kilnBook:X,paperBook:M,boxBook:T,clothBook:O,coalDrillBook:k,heavyDrillBook:D,oilBook:de,metalBook:_,primaryDyeBook:Q,secondaryDyeBook:U},Oe=Z(()=>Object.values(ie).reduce((he,Re)=>he.add(Re.amount.value),new i(0))),Ce=B(()=>({resource:A(n),cost:1e8,visibility:()=>y(ai.upgrades.paperTools.bought.value),display:{title:"Shepherding for Dummies",description:"Double effectiveness of all cloth actions"}})),Ze=B(()=>({resource:A(n),cost:1e9,visibility:()=>y(ai.upgrades.paperTools.bought.value),display:{title:"Guide to drilling",description:"Double drilling power"}})),Ne=B(()=>({resource:A(n),cost:1e10,visibility:()=>y(ai.upgrades.paperTools.bought.value),display:{title:"Oil and where to find it",description:"Double oil gain"}})),fe={clothUpgrade:Ce,drillingUpgrade:Ze,oilUpgrade:Ne},we=B(()=>({resource:A(n),cost:1e36,visibility:()=>y(v.elfTraining.heavyDrillElfTraining.milestones[4].earned.value),display:{title:"Paper Burning",description:"Paper adds to ash gain after all other modifiers"}})),xe=B(()=>({resource:A(n),cost:1e38,visibility:()=>y(v.elfTraining.heavyDrillElfTraining.milestones[4].earned.value),display:{title:"Book Cheapener",description:"Books are less expensive"}})),Fe=B(()=>({resource:A(n),cost:1e40,visibility:()=>y(v.elfTraining.heavyDrillElfTraining.milestones[4].earned.value),display:{title:"Un-Processing",description:"Log gain is raised to the ^1.05"}})),ue={ashUpgrade:we,bookUpgrade:xe,treeUpgrade:Fe},x=be(()=>[p(()=>({multiplier:2,description:"Scholar's shoes",enabled:Yi.paperUpgrades.paperUpgrade1.bought})),p(()=>({multiplier:2,description:"Scholar's slacks",enabled:Yi.paperUpgrades.paperUpgrade2.bought})),p(()=>({multiplier:2,description:"Scholar's jacket",enabled:Yi.paperUpgrades.paperUpgrade3.bought})),p(()=>({multiplier:10,description:"Felt Elbow Pads",enabled:Yi.paperUpgrades.paperUpgrade4.bought})),p(()=>({multiplier:Ye.boosts.yellow1,description:"Yellow Dye Boost 1",enabled:()=>i.gte(Ye.dyes.yellow.amount.value,1)})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:zi.boosts.sunshine1,description:"Sunshine Wrapping Paper",enabled:()=>i.gte(zi.boosts.sunshine1.value,2)}))]),$=be(()=>[p(()=>({multiplier:.1,description:"Star Level 2",enabled:v.elfTraining.paperElfTraining.milestones[1].earned})),p(()=>({multiplier:0,description:"Coal Decoration",enabled:mi}))]),Ie=Z(()=>$.apply(1e6)),[Wi,ei]=rl(()=>[{title:"Paper Gain",modifier:x,base:1},{title:"Ash Cost",modifier:$,base:1e6,unit:" ash/pulp"}]),De=me(!1),Ee=f(()=>t(Si,{modelValue:De.value,"onUpdate:modelValue":he=>De.value=he},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Wi}));yi.on("update",he=>{i.lt(V.day.value,Dn)||(n.value=i.times(he,ai.buyables.passivePaper.amount.value).times(a.currentGain.value).div(100).add(n.value))});const{total:Ci,trackerDisplay:Ke}=wl({resource:n,goal:5e3,masteryGoal:5e7,name:e,day:Dn,color:l,textColor:"var(--feature-foreground)",modal:{show:De,display:Ee}}),ze={paper:I(0),totalPaper:I(0),books:{cuttersBook:{amount:I(0)},plantersBook:{amount:I(0)},expandersBook:{amount:I(0)},heatedCuttersBook:{amount:I(0)},heatedPlantersBook:{amount:I(0)},fertilizerBook:{amount:I(0)},smallFireBook:{amount:I(0)},bonfireBook:{amount:I(0)},kilnBook:{amount:I(0)},paperBook:{amount:I(0)},boxBook:{amount:I(0)},clothBook:{amount:I(0)},coalDrillBook:{amount:I(0)},heavyDrillBook:{amount:I(0)},oilBook:{amount:I(0)},metalBook:{amount:I(0)},primaryDyeBook:{amount:I(0)},secondaryDyeBook:{amount:I(0)}},upgrades:{clothUpgrade:{bought:I(!1)},drillingUpgrade:{bought:I(!1)},oilUpgrade:{bought:I(!1)}},upgrades2:{ashUpgrade:{bought:I(!1)},bookUpgrade:{bought:I(!1)},treeUpgrade:{bought:I(!1)}}},ii=I(!1),mi=Z(()=>{var he;return ii.value||((he=V.currentlyMastering.value)==null?void 0:he.name)===e});return{name:e,day:Dn,color:l,paper:n,totalPaper:Ci,paperConversion:a,books:ie,upgrades:fe,upgrades2:ue,generalTabCollapsed:ei,minWidth:700,display:f(()=>t(C,null,[We(Ke),t(pe,null,null),mi.value?t(C,null,[o("Decoration effect: Pulp no longer requires ash"),t(pe,null,null)]):null,t(Ui,{resource:n,color:l,style:"margin-bottom: 0"},null),t(pe,null,null),!V.isMastery.value||mi.value?t(C,null,[We(r),t(pe,null,null),fl(Object.values(fe),Object.values(ue)),t(pe,null,null),ml(...Object.values(ie))]):null])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:ze,mastered:ii}}),EI="oil",Bn=9,ce=Di(EI,function(){const e="Oil",l="#000000",n="var(--foreground)",s=Vi(0,"oil"),a=Vi(0,"depth"),r=I(0),d=Z(()=>i.lt(a.value,990)?i.add(10,a.value):i.pow(1.001,i.sub(a.value,990)).mul(1e3));function u(){if(i.lt(a.value,990)){const H=i.min(i.affordArithmeticSeries(r.value,10,1,a.value),i.sub(990,a.value)),se=i.sumArithmeticSeries(H,10,1,a.value);r.value=i.sub(r.value,se),a.value=i.add(a.value,H)}if(i.gte(a.value,990)){const H=i.affordGeometricSeries(r.value,1e3,1.001,i.sub(a.value,990)),se=i.sumGeometricSeries(H,1e3,1.001,i.sub(a.value,990));r.value=i.sub(r.value,se),a.value=i.add(a.value,H)}}const c=I(0),b=Z(()=>i.times(i.pow(c.value,T.value).pow(v.elfTraining.coalDrillElfTraining.milestones[0].earned.value?2.5:2),1e14)),J=Z(()=>i.times(i.pow(c.value,T.value),1)),h=Ae(()=>({resource:Zi.metal,cost(){let H=new i(this.amount.value);return i.gte(H,100)&&(H=i.pow(H,4).div(100**3)),H=i.pow(.95,z.books.heavyDrillBook.totalAmount.value).times(H),i.pow(1.3,H).times(25e3)},inverseCost(H){let se=i.div(H,25e3).log(1.3);return se=se.div(i.pow(.95,z.books.heavyDrillBook.totalAmount.value)),i.gte(se,100)&&(se=i.mul(se,100**3).root(4)),i.isNaN(se)?i.dZero:se.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Heavy Drill")]),t("br",null,null),o("A large drill specialized at deep mining."),t("br",null,null),o("Consumes 1e14*(Heavy Drills amount)"),t("sup",null,[v.elfTraining.coalDrillElfTraining.milestones[0].earned.value?2.5:2])," ",o("coal/sec for (Heavy Drills amount) drill power."),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),Te(b.value),o(" coal/sec"),t("br",null,null),o("+"),Te(J.value),o(" drill power"),t("br",null,null),t("br",null,null),o("Cost: "),Se(m(h.cost)),o(" "),h.resource.displayName])),onPurchase(){c.value=i.add(c.value,1)},style:{color:n,width:"160px",flexGrow:1},visibility:()=>y(!V.isMastery.value||jl.value)})),{min:W,max:j,add:F,remove:X}=bl({buyable:h,active:c}),M=I(0),T=Z(()=>{let H=i.add(M.value,Math.E);return v.elfTraining.heavyDrillElfTraining.milestones[3].earned.value?H=H.log(2.5):H=H.ln(),H}),O=Ae(()=>({resource:Zi.metal,cost(){let H=new i(this.amount.value);return i.gte(H,50)&&(H=i.pow(H,4).div(50**3)),H=i.pow(.95,z.books.heavyDrillBook.totalAmount.value).times(H),i.pow(2,H).times(1e5)},inverseCost(H){let se=i.div(H,1e5).log(2);return se=se.div(i.pow(.95,z.books.heavyDrillBook.totalAmount.value)),i.gte(se,50)&&(se=i.mul(se,50**3).root(4)),i.isNaN(se)?i.dZero:se.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Heavy Drill Drill")]),t("br",null,null),o("Attach extra drills to Heavy Drills to make them faster"),t("br",null,null),o("Raise amount of effective Heavy Drills by ^"),v.elfTraining.heavyDrillElfTraining.milestones[3].earned.value?t(C,null,[o("log"),t("sub",null,[o("2.5")])]):t(C,null,[o("ln")]),o("(Heavy Drill Drill amount + e)."),t("br",null,null),o("(also affects coal consumption)."),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("^"),Te(T.value),o(" Heavy Drill amount"),t("br",null,null),t("br",null,null),o("Cost: "),Se(m(O.cost)),o(" "),O.resource.displayName])),onPurchase(){M.value=i.add(M.value,1)},style:{color:n,width:"160px",flexGrow:1}})),{min:k,max:D,add:de,remove:_}=bl({buyable:O,active:M}),Q=I(0),U=Z(()=>i.pow(1/3,Q.value)),ie=Z(()=>i.pow(2,Q.value)),Oe=Z(()=>i.pow(1.2,Q.value)),Ce=Ae(()=>({resource:Zi.metal,cost(){let H=new i(this.amount.value);return i.gte(H,10)&&(H=i.pow(H,4).div(10**3)),H=i.pow(.95,z.books.heavyDrillBook.totalAmount.value).times(H),i.pow(8,H).times(2e5)},inverseCost(H){let se=i.div(H,2e5).log(8);return se=se.div(i.pow(.95,z.books.heavyDrillBook.totalAmount.value)),i.gte(se,10)&&(se=i.mul(se,10**3).root(4)),i.isNaN(se)?i.dZero:se.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Heavy Extractor")]),t("br",null,null),o("Attach extractors to the drill to mine coal and ore, but with a price."),t("br",null,null),o("Divides drill power by 3 to multiply coal gain by 2 and ore gain by 1.2."),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("\xD7"),un(U.value),o(" drill power"),t("br",null,null),o("\xD7"),Te(ie.value),o(" coal/sec"),t("br",null,null),o("\xD7"),Te(Oe.value),o(" ore/sec"),t("br",null,null),t("br",null,null),o("Cost: "),Se(m(Ce.cost))," ",Ce.resource.displayName])),onPurchase(){Q.value=i.add(Q.value,1)},style:{color:n,width:"160px",flexGrow:1}})),{min:Ze,max:Ne,add:fe,remove:we}=bl({buyable:Ce,active:Q}),xe=I(0),Fe=Z(()=>i.pow(gi[3].bought.value?4:5,xe.value)),ue=Z(()=>i.add(xe.value,N.value).pow(2).mul(c.value).mul(i.add(M.value,1)).mul(Q.value).mul(i.pow(a.value,v.elfTraining.oilElfTraining.milestones[0].earned.value?1.2:1)).div(1e5)),x=Ae(()=>({resource:Zi.metal,cost(){let H=new i(this.amount.value);i.gte(H,10)&&(H=i.pow(H,4).div(10**3)),H=i.pow(.95,z.books.oilBook.totalAmount.value).times(H);let se=i.pow(16,H).times(2e6);return gi[4].bought.value&&(se=se.div(i.add(K.value,1).root(6))),v.elfTraining.heavyDrillElfTraining.milestones[1].earned.value&&(se=se.div(10)),se},inverseCost(H){v.elfTraining.heavyDrillElfTraining.milestones[1].earned.value&&(H=i.mul(H,10)),gi[4].bought.value&&(H=i.mul(H,i.add(K.value,1).root(6)));let se=i.div(H,2e6).log(16);return se=se.div(i.pow(.95,z.books.oilBook.totalAmount.value)),i.gte(se,10)&&(se=i.mul(se,10**3).root(4)),i.isNaN(se)?i.dZero:se.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Oil Pump")]),t("br",null,null),o("Pump that oil from the ground."),t("br",null,null),o("Gain oil based on the number of Heavy buildings active and well depth, but coal usage is multiplied by "),gi[3].bought.value?4:5,o("\xD7."),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("\xD7"),Te(Fe.value),o(" coal usage"),t("br",null,null),o("+"),Te(ue.value),o(" oil/sec"),t("br",null,null),t("br",null,null),o("Cost: "),Se(m(x.cost)),o(" "),x.resource.displayName])),onPurchase(){xe.value=i.add(xe.value,1)},style:{color:n,width:"160px",flexGrow:1}})),{max:$,min:Ie,add:Wi,remove:ei}=bl({buyable:x,active:xe}),De=I(0),Ee=Z(()=>{let H=De.value;return v.elfTraining.heavyDrillElfTraining.milestones[2].earned.value&&(H=i.pow(H,1.5)),H}),Ci=Z(()=>i.pow(Ee.value,2)),Ke=Z(()=>i.pow(Ee.value,3).mul(1e19)),ze=Z(()=>i.add(Ee.value,1)),ii=Ae(()=>({resource:A(s),cost(){let H=new i(this.amount.value);return i.gte(H,100)&&(H=i.pow(H,4).div(100**3)),H=i.pow(.95,z.books.oilBook.totalAmount.value).times(H),i.pow(2,H).times(50)},inverseCost(H){let se=i.div(H,50).log(2);return se=se.div(i.pow(.95,z.books.oilBook.totalAmount.value)),i.gte(se,100)&&(se=i.mul(se,100**3).root(4)),i.isNaN(se)?i.dZero:se.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Oil Burner")]),t("br",null,null),o("Burn oil as fuel."),t("br",null,null),o("(Oil Burner Amount)"),t("sup",null,[o("2")]),o(" unit of oil can give 1e19*(Oil Burner Amount)"),t("sup",null,[o("3")]),o(" units of coal."),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),Te(Ci.value),o(" oil/sec"),t("br",null,null),o("-"),Te(Ke.value),o(" coal consumption"),gi[2].bought.value?t(C,null,[t("br",null,null),o("\xD7"),Te(ze.value),o(" to auto smelting multi")]):"",t("br",null,null),t("br",null,null),o("Cost: "),Se(m(ii.cost)),o(" "),ii.resource.displayName])),onPurchase(){De.value=i.add(De.value,1)},style:{color:n,width:"160px",flexGrow:1}})),{max:mi,min:he,add:Re,remove:E}=bl({buyable:ii,active:De}),oe=I(0),Ve=Z(()=>i.pow(oe.value,2).mul(100)),Hi=Z(()=>i.add(oe.value,1)),vi=Ae(()=>({resource:Zi.metal,cost(){let H=new i(this.amount.value);i.gte(H,50)&&(H=i.pow(H,2).div(50)),i.gte(H,200)&&(H=i.pow(H,2).div(200)),i.gte(H,1e4)&&(H=i.pow(H,2).div(1e4)),H=i.pow(.95,z.books.oilBook.totalAmount.value).times(H);let se=i.pow(10,H).times(1e7);return gi[4].bought.value&&(se=se.div(i.add(K.value,1).root(6))),se},inverseCost(H){gi[4].bought.value&&(H=i.mul(H,i.add(K.value,1).root(6)));let se=i.div(H,1e7).log(10);return se=se.div(i.pow(.95,z.books.oilBook.totalAmount.value)),i.gte(se,1e4)&&(se=i.mul(se,1e4).root(2)),i.gte(se,200)&&(se=i.mul(se,200).root(2)),i.gte(se,50)&&(se=i.mul(se,50).root(2)),i.isNaN(se)?i.dZero:se.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Oil Smelter")]),t("br",null,null),o("Use oil as a crucible fuel."),t("br",null,null),o("Burn 100*(Oil Smelter amount)"),t("sup",null,[o("2")]),o(" oil to smelt +100% faster."),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),Te(Ve.value),o(" oil/sec"),t("br",null,null),o("\xD7"),Te(Hi.value),o(" smelting speed"),t("br",null,null),t("br",null,null),o("Cost: "),Se(m(vi.cost)),o(" "),vi.resource.displayName])),onPurchase(){oe.value=i.add(oe.value,1)},style:{color:n,width:"160px",flexGrow:1}})),{max:_e,min:li,add:Li,remove:ji}=bl({buyable:vi,active:oe}),ne=[G(()=>({display:{requirement:"5m Well Depth",effectDisplay:"Gain 25% more coal for each metre of well depth (after the 3 elf milestone)."},shouldEarn:()=>i.gte(a.value,5)})),G(()=>({display:{requirement:"10m Well Depth",effectDisplay:"Drill too slow? Unlock some drill upgrades!"},shouldEarn:()=>i.gte(a.value,10),visibility:()=>y(ne[0].earned.value)})),G(()=>({display:{requirement:"25m Well Depth",effectDisplay:"Gain 5% more ore for each metre of well depth."},shouldEarn:()=>i.gte(a.value,25),visibility:()=>y(ne[1].earned.value)})),G(()=>({display:{requirement:"60m Well Depth",effectDisplay:"Drill still too slow? Try unlocking another drill!"},shouldEarn:()=>i.gte(a.value,60),visibility:()=>y(ne[2].earned.value)})),G(()=>({display:{requirement:"150m Well Depth",effectDisplay:"It appears that coal and metal appear a lot more when you go this deep! Unlock an upgrade apiece for coal and metal!"},shouldEarn:()=>i.gte(a.value,150),visibility:()=>y(ne[3].earned.value)})),G(()=>({display:{requirement:"350m Well Depth",effectDisplay:"There is even more coal and metal than you thought. Why don't you utilize your heavy drill to mine them? Unlock a new drill upgrade!"},shouldEarn:()=>i.gte(a.value,350),visibility:()=>y(ne[4].earned.value)})),G(()=>({display:{requirement:"1,000m Well Depth",effectDisplay:"You've finally found oil! Maybe it's time to make those oil useful! Unfortunately extracting them would use more coal, and also it's becoming much harder to mine deeper due to the thermal heat and pressure."},shouldEarn:()=>i.gte(a.value,1e3),visibility:()=>y(i.gte(a.value,1e3))})),G(()=>({display:{requirement:"3,000m Well Depth",effectDisplay:"You found a large oil spot! Double oil gain!"},shouldEarn:()=>i.gte(a.value,3e3),visibility:()=>y(i.gte(a.value,2e3))}))],{collapseMilestones:Xe,display:P}=dn(ne),q=[G(()=>({display:{requirement:"100 total oil",effectDisplay:"Hmm, these oil pumps are really expensive. Maybe you should find a way to solve this problem... maybe you can use oil as fuel instead of coal?"},shouldEarn:()=>i.gte(K.value,100)})),G(()=>({display:{requirement:"500 total oil",effectDisplay:"Unlocks oil upgrades! These can be bought with oil."},shouldEarn:()=>i.gte(K.value,500),visibility:()=>y(q[0].earned.value)})),G(()=>({display:{requirement:"10,000 total oil",effectDisplay:"Wow, this is really bright when you burn it. Maybe it can be helpful to use them to smelt metal?"},shouldEarn:()=>i.gte(K.value,1e4),visibility:()=>y(q[1].earned.value)}))],{collapseMilestones:$i,display:_i}=dn(q),Mi=[B(()=>({resource:ee.coal,cost:1e18,display:{title:"Coal Drill Synergy",description:"Increase drill power by +4% per Coal Drill owned.",effectDisplay:f(()=>t(C,null,[o("x"),Te(Pe[0].value)]))},style:{color:n}})),B(()=>({resource:Zi.metal,cost:15e4,display:{title:"Metal Drill Synergy",description:"Increase drill power by +4% per Metal Drill owned.",effectDisplay:f(()=>t(C,null,[o("x"),Te(Pe[1].value)]))},style:{color:n}})),B(()=>({resource:ee.coal,cost:1e20,display:{title:"Coal Drill Upgrade",description:"Increase drill power by +6% per OoM of coal owned.",effectDisplay:f(()=>t(C,null,[o("x"),Te(Pe[2].value)]))},style:{color:n}})),B(()=>({resource:Zi.metal,cost:15e5,display:{title:"Metal Drill Upgrade",description:"Increase drill power by +10% per OoM of metal ingot owned.",effectDisplay:f(()=>t(C,null,[o("x"),Te(Pe[3].value)]))},style:{color:n}})),B(()=>({resource:A(s),cost:100,display:{title:"Drill Oil",description:"Increase previous upgrades' effect by +0.1% per Heavy Drill owned.",effectDisplay:f(()=>t(C,null,[o("+"),Te(i.mul(Pe[4].value,100)),o("%")]))},style:{color:n}}))],Pe=[Z(()=>i.mul(ee.buildDrill.amount.value,i.add(.04,ae.value)).add(1)),Z(()=>i.mul(Zi.oreDrill.amount.value,i.add(.04,ae.value)).add(1)),Z(()=>i.mul(i.max(ee.coal.value,1).log10().floor(),i.add(.06,ae.value)).add(1)),Z(()=>i.mul(i.max(Zi.metal.value,1).log10().floor(),i.add(.1,ae.value)).add(1)),Z(()=>i.mul(h.amount.value,.001))],gi=[B(()=>({resource:A(s),cost:100,display:{title:"Oil the Oil Pump",description:"Double oil gain."},style:{color:n}})),B(()=>({resource:A(s),cost:500,display:{title:"Oil the Metal Drills",description:"Double ore mining speed and square the coal drill amount in its effect."},style:{color:n}})),B(()=>({resource:A(s),cost:1500,display:{title:"Blaster Burner",description:"The Oil Burner can now increase your auto smelting multi."},style:{color:n}})),B(()=>({resource:A(s),cost:25e3,display:{title:"Oil Integration",description:"Reduce Oil Pump's coal consumption multipler from 5 to 4"},style:{color:n}})),B(()=>({resource:A(s),cost:5e4,display:{title:"Be One with the Oil",description:f(()=>t(C,null,[o("Divide metal ingot prices of oil buildings by "),t("sup",null,[o("6")]),t(Zl,null,{default:()=>[o("total oil + 1")]})]))},style:{color:n}}))],ol=[B(()=>({resource:A(s),cost:1e13,display:{title:"Dye Synergy I",description:"Red dye boosts yellow dye gain by (log(x)^0.75)"},visibility:()=>y(v.elfTraining.oilElfTraining.milestones[4].earned.value),style:{color:n}})),B(()=>({resource:A(s),cost:1e14,display:{title:"Orange-colored boxes",description:"Orange dye's 2nd effect is raised to the 2.5"},visibility:()=>y(v.elfTraining.oilElfTraining.milestones[4].earned.value),style:{color:n}})),B(()=>({resource:A(s),cost:1e15,display:{title:"Colorful Plastic",description:f(()=>t(C,null,[o("Sum of secondary dyes increases plastic gain by "),t("sup",null,[o("3")]),t(Zl,null,{default:()=>[o("x")]})]))},visibility:()=>y(v.elfTraining.oilElfTraining.milestones[4].earned.value),style:{color:n}})),B(()=>({resource:A(s),cost:1e16,display:{title:"Dye Synergy II",description:"Blue dye boosts red dye gain by log(x)"},visibility:()=>y(v.elfTraining.oilElfTraining.milestones[4].earned.value),style:{color:n}})),B(()=>({resource:A(s),cost:1e17,display:{title:"The Ultimate Metal Dye",description:"Sum of primary dyes boosts auto smelt speed"},visibility:()=>y(v.elfTraining.oilElfTraining.milestones[4].earned.value),style:{color:n}}))],Cl=be(()=>[je(()=>({addend:()=>i.negate(b.value),description:"Heavy Drill",enabled:()=>i.gt(c.value,0)})),p(()=>({multiplier:Fe,description:"Oil Pump",enabled:()=>i.gt(xe.value,0)})),je(()=>({addend:ri,description:"Oil to Coal Substitution",enabled:()=>i.gt(ri.value,0)}))]),gl=Z(()=>Cl.apply(0)),Wl=be(()=>[je(()=>({addend:J,description:"Heavy Drill",enabled:()=>i.gt(c.value,0)})),p(()=>({multiplier:U,description:"Heavy Extractor",enabled:()=>i.gt(Q.value,0)})),p(()=>({multiplier:Pe[0],description:"Coal Drill Synergy",enabled:Mi[0].bought})),p(()=>({multiplier:Pe[1],description:"Metal Drill Synergy",enabled:Mi[1].bought})),p(()=>({multiplier:Pe[2],description:"Coal Drill Upgrade",enabled:Mi[2].bought})),p(()=>({multiplier:Pe[3],description:"Metal Drill Upgrade",enabled:Mi[3].bought})),p(()=>({multiplier:2,description:"Guide to drilling",enabled:z.upgrades.drillingUpgrade.bought})),p(()=>({multiplier:()=>i.add(K.value,1).log10().add(1),description:"Cocoa Level 2",enabled:v.elfTraining.oilElfTraining.milestones[1].earned})),p(()=>({multiplier:2,description:"Cocoa Level 3",enabled:v.elfTraining.oilElfTraining.milestones[2].earned})),p(()=>({multiplier:()=>xi.value,description:"Effectiveness",enabled:()=>i.lt(xi.value,1)}))]),vl=Z(()=>Wl.apply(0)),Ol=be(()=>[je(()=>({addend:Pe[4],description:"Drill Oil",enabled:Mi[4].bought}))]),ae=Z(()=>Ol.apply(0)),He=be(()=>[je(()=>({addend:ue,description:"Oil Pump",enabled:()=>i.gt(xe.value,0)})),p(()=>({multiplier:2,description:"Oil the Oil Pump",enabled:gi[0].bought})),p(()=>({multiplier:2,description:"3000m Well Depth",enabled:ne[7].earned})),p(()=>({multiplier:2,description:"Oil and where to find it",enabled:z.upgrades.oilUpgrade.bought})),p(()=>({multiplier:()=>xi.value,description:"Effectiveness",enabled:()=>i.lt(xi.value,1)})),p(()=>({multiplier:()=>i.div(di.foundationProgress.value,10).floor().div(10).add(1),description:"600% Foundation Completed",enabled:di.milestones.extraExpansionMilestone3.earned})),p(()=>({multiplier:()=>i.sqrt(v.totalElfLevels.value),description:"Jack Level 4",enabled:v.elfTraining.heatedCutterElfTraining.milestones[3].earned})),p(()=>({multiplier:()=>i.add(O.amount.value,1).sqrt(),description:"Faith Level 4",enabled:v.elfTraining.bonfireElfTraining.milestones[3].earned})),p(()=>({multiplier:2,description:"Cocoa Level 3",enabled:v.elfTraining.oilElfTraining.milestones[2].earned}))]),bi=Z(()=>He.apply(0)),Bi=be(()=>[je(()=>({addend:()=>i.negate(Ci.value),description:"Oil Burner",enabled:()=>i.gt(De.value,0)})),je(()=>({addend:()=>i.negate(Ve.value),description:"Oil Smelter",enabled:()=>i.gt(oe.value,0)})),je(()=>({addend:()=>i.negate(ai.oilCost.value),description:"Oil Refinery",enabled:()=>i.gt(ai.activeRefinery.value,0)}))]),dl=Z(()=>Bi.apply(0)),ni=be(()=>[je(()=>({addend:Ke,description:"Oil Burner",enabled:()=>i.gt(De.value,0)})),p(()=>({multiplier:()=>Ki.value,description:"Effectiveness",enabled:()=>i.lt(Ki.value,1)}))]),ri=Z(()=>ni.apply(0)),Oi=be(()=>[je(()=>({addend:Ye.boosts.red1,description:"Red Dye Boost 1",enabled:()=>i.gte(Ye.dyes.red.amount.value,1)}))]),N=Z(()=>Oi.apply(0)),[R,$l]=rl(()=>[{title:"Coal Consumption",modifier:Cl,unit:"/s",base:0},{title:"Drill Power",modifier:Wl,base:0},{title:"Upgrade Bonus",modifier:Ol,base:0,visible(){return i.gt(ae.value,0)}},{title:"Oil Speed",modifier:He,unit:"/s",base:0,visible(){return i.gt(bi.value,0)}},{title:"Oil Consumption",modifier:Bi,unit:"/s",base:0,visible(){return i.lt(dl.value,0)}},{title:"Oil to Coal Substitution",modifier:ni,unit:"/s",base:0,visible(){return i.gt(ri.value,0)}},{title:"Extra Oil Pumps",modifier:Oi,base:0,visible(){return i.gt(N.value,0)}}]),kl=me(!1),zl=f(()=>t(Si,{modelValue:kl.value,"onUpdate:modelValue":H=>kl.value=H},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:R})),xi=me(i.dOne),Ki=me(i.dOne);yi.on("update",H=>{if(i.lt(V.day.value,Bn))return;const se=i.negate(gl.value);i.gt(se,0)?(xi.value=i.min(i.div(ee.coal.value,se),1),ee.coal.value=i.sub(ee.coal.value,i.mul(se,xi.value).mul(H))):xi.value=i.dOne,r.value=i.add(r.value,i.mul(vl.value,H)),s.value=i.add(s.value,i.mul(bi.value,H)),u();const ul=i.negate(dl.value);i.gt(ul,0)?(Ki.value=i.min(i.div(s.value,ul),1),s.value=i.sub(s.value,i.mul(ul,Ki.value).mul(H)).max(0)):Ki.value=i.dOne});const{total:K,trackerDisplay:Ue}=wl({resource:s,goal:25e4,name:e,day:Bn,color:l,modal:{show:kl,display:zl}}),pi={oil:I(0),totalOil:I(0),depth:I(0),drillProgress:I(0),activeHeavy:I(0),buildHeavy:{amount:I(0)},activeHeavy2:I(0),buildHeavy2:{amount:I(0)},activeExtractor:I(0),buildExtractor:{amount:I(0)},activePump:I(0),buildPump:{amount:I(0)},activeBurner:I(0),buildBurner:{amount:I(0)},activeSmelter:I(0),buildSmelter:{amount:I(0)},depthMilestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}],oilMilestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}],row1Upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],row2Upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],row3Upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}]},el=I(!1),jl=Z(()=>{var H;return el.value||((H=V.currentlyMastering.value)==null?void 0:H.name)===e});return{name:e,day:Bn,color:l,oil:s,totalOil:K,depth:a,drillProgress:r,activeHeavy:c,buildHeavy:h,activeHeavy2:M,buildHeavy2:O,activeExtractor:Q,buildExtractor:Ce,activePump:xe,buildPump:x,activeBurner:De,effectiveBurners:Ee,buildBurner:ii,activeSmelter:oe,buildSmelter:vi,extractorCoal:ie,extractorOre:Oe,coalEffectiveness:xi,oilEffectiveness:Ki,depthMilestones:ne,collapsedDepthMilestones:Xe,row1Upgrades:Mi,row2Upgrades:gi,row3Upgrades:ol,minWidth:700,oilMilestones:q,collapsedOilMilestones:$i,generalTabCollapsed:$l,display:f(()=>{const H=[];return ne[1].earned.value&&H.push(Mi),q[1].earned.value&&H.push(gi),v.elfTraining.oilElfTraining.milestones[4].earned.value&&H.push(ol),t(C,null,[We(Ue),t(pe,null,null),i.lt(xi.value,1)?t("div",null,[o("Coal efficiency: "),Te(i.mul(xi.value,100)),o("%")]):null,i.lt(Ki.value,1)?t("div",null,[o("Oil efficiency: "),Te(i.mul(Ki.value,100)),o("%")]):null,t(Ui,{resource:s,color:l,resourceStyle:{textShadow:"grey 0px 0px 10px"},sticky:!0,productionDisplay:f(()=>t(C,null,[i.lt(a.value,1e3)?"Reach 1000m to start gaining oil":t(C,null,[Xn(i.add(bi.value,dl.value))])]))},null),i.eq(bi.value,0)?t(C,null,[o("(Need at least 1 Oil Pump, 1 Heavy Drill and 1 Heavy Extractor active to gain oil)"),t("br",null,null)]):"",t(rn,null,{default:()=>[ne[6].earned.value?t(ll,null,{default:()=>[We(x),t("div",null,[Se(i.floor(xe.value)),o("/"),Se(i.floor(x.amount.value))]),ci(Ie,ei,Wi,$)]}):null,q[0].earned.value?t(ll,null,{default:()=>[We(ii),t("div",null,[Se(i.floor(De.value)),o("/"),Se(i.floor(ii.amount.value))]),ci(he,E,Re,mi)]}):null,q[2].earned.value?t(ll,null,{default:()=>[We(vi),t("div",null,[Se(i.floor(oe.value)),o("/"),Se(i.floor(vi.amount.value))]),ci(li,ji,Li,_e)]}):null]}),t("br",null,null),t("div",null,[t("span",null,[o("The well is ")]),t("h2",{style:"color: #6f767f; text-shadow: 0 0 10px #6f767f"},[Se(a.value)]),o("m deep"),t("br",null,null),o("Next at "),Te(i.sub(d.value,r.value))," ",o("drill power seconds")]),t("div",null,[t("span",null,[o("Your drill power is ")]),t("h2",{style:"color: #6f767f; text-shadow: 0 0 10px #6f767f"},[Te(vl.value)])]),t(pe,null,null),t(rn,null,{default:()=>[t(ll,null,{default:()=>[We(h),t("div",null,[Se(i.floor(c.value)),o("/"),Se(i.floor(h.amount.value))]),ci(W,X,F,j)]}),ne[3].earned.value?t(ll,null,{default:()=>[We(O),t("div",null,[Se(i.floor(M.value)),o("/"),Se(i.floor(O.amount.value))]),ci(k,_,de,D)]}):null,ne[5].earned.value?t(ll,null,{default:()=>[We(Ce),t("div",null,[Se(i.floor(Q.value)),o("/"),Se(i.floor(Ce.amount.value))]),ci(Ze,we,fe,Ne)]}):null]}),t(pe,null,null),fl(...H),t(pe,null,null),P(),i.gte(K.value,50)?_i():""])}),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[Te(s.value),o(" "),s.displayName])])),mastery:pi,mastered:el}}),AI="plastic",Pn=10,ai=Di(AI,function(){const e="Plastic",l="#DCD9CD",n=Vi(0,"plastic"),[s,a]=rl(()=>[{title:"Plastic Gain",modifier:Ce,base:0}]),r=me(!1),d=f(()=>t(Si,{modelValue:r.value,"onUpdate:modelValue":ue=>r.value=ue},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:s})),u=I(0),c=Z(()=>i.times(u.value,100).times(v.elfTraining.oilElfTraining.milestones[3].earned.value?5:1)),b=Ae(()=>({resource:Zi.metal,cost(){const ue=new i(this.amount.value);let x=i.pow(1.2,ue).times(1e7);return v.elfTraining.fertilizerElfTraining.milestones[3].earned.value&&(x=i.sub(x,i.pow(n.value,2)).max(0)),x},display:f(()=>t(C,null,[t("h3",null,[o("Refinery")]),t("br",null,null),o("Refines oil into plastic pellets"),t("br",null,null),o("Consumes 100 oil/s to create 1 plastic/s"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(c.value),o(" oil/sec"),t("br",null,null),o("+"),le(u.value),o(" plastic/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(b.cost))," ",b.resource.displayName])),onPurchase(){u.value=i.add(u.value,1)},style:{width:"300px"},visibility:()=>y(!V.isMastery.value||Fe.value)})),{min:J,max:h,add:W,remove:j}=bl({buyable:b,active:u,style:{minHeight:"20px",width:"40px",color:"var(--feature-foreground)"}}),F=Z(()=>i.pow(5,i.add([...Object.values(O),...Object.values(_)].filter(ue=>ue.bought.value).length,2))),X=B(()=>({resource:A(n),cost:F,display:()=>({title:"Plastic Scissors",description:"Unlock paper upgrades",showCost:!X.bought.value})})),M=B(()=>({resource:A(n),cost:F,display:()=>({title:"Plastic Level",description:"Unlock box upgrades",showCost:!M.bought.value})})),T=B(()=>({resource:A(n),cost:F,display:()=>({title:"Plastic Cane",description:"Unlock cloth upgrades",showCost:!T.bought.value})})),O={paperTools:X,boxTools:M,clothTools:T},k=B(()=>({resource:A(n),cost:F,visibility:()=>y(X.bought.value),display:()=>({title:"Paper Elf Recruitment",description:"Double plastic gain and unlock a new elf for training",showCost:!k.bought.value})})),D=B(()=>({resource:A(n),cost:F,visibility:()=>y(M.bought.value),display:()=>({title:"Box Elf Recruitment",description:"Double plastic gain and unlock a new elf for training",showCost:!D.bought.value})})),de=B(()=>({resource:A(n),cost:F,visibility:()=>y(T.bought.value),display:()=>({title:"Cloth Elf Recruitment",description:"Double plastic gain and unlock a new elf for training",showCost:!de.bought.value})})),_={paperElf:k,boxElf:D,clothElf:de},Q=Ae(()=>({resource:A(n),cost(){const ue=this.amount.value;return i.pow(1.3,ue).times(100)},visibility:()=>y(k.bought.value),display:{title:"Plastic Printing Press",description:"Gain +1% of your paper gain per second",effectDisplay:f(()=>t(C,null,[re(Q.amount.value),o("%")])),showAmount:!1}})),U=Ae(()=>({resource:A(n),cost(){const ue=this.amount.value;return i.pow(1.3,ue).times(100)},visibility:()=>y(D.bought.value),display:{title:"Plastic Box Folder",description:"Gain +1% of your box gain per second",effectDisplay:f(()=>t(C,null,[re(U.amount.value),o("%")])),showAmount:!1}})),ie=Ae(()=>({resource:A(n),cost(){const ue=this.amount.value;return i.pow(1.3,ue).times(100)},visibility:()=>y(de.bought.value),display:{title:"Plastic Shepherd",description:"All cloth actions are +10% more efficient",effectDisplay:f(()=>t(C,null,[re(i.times(ie.amount.value,10)),o("%")])),showAmount:!1}})),Oe={passivePaper:Q,passiveBoxes:U,clothGains:ie},Ce=be(()=>[je(()=>({addend:()=>v.elfTraining.oilElfTraining.milestones[3].earned.value?i.times(u.value,5):u.value,description:"Oil Refinery",enabled:()=>i.gt(u.value,0)})),p(()=>({multiplier:2,description:"Paper Elf Recruitment",enabled:k.bought})),p(()=>({multiplier:2,description:"Box Elf Recruitment",enabled:D.bought})),p(()=>({multiplier:2,description:"Cloth Elf Recruitment",enabled:de.bought})),p(()=>({multiplier:2,description:"Carry plastic in boxes",enabled:si.row2Upgrades.plasticUpgrade.bought})),p(()=>({multiplier:()=>ce.oilEffectiveness.value,description:"Effectiveness",enabled:()=>i.lt(ce.oilEffectiveness.value,1)})),p(()=>({multiplier:Ye.boosts.yellow1,description:"Yellow Dye Boost 1",enabled:()=>i.gte(Ye.dyes.yellow.amount.value,1)})),p(()=>({multiplier:()=>i.div(di.foundationProgress.value,10).floor().div(10).add(1),description:"800% Foundation Completed",enabled:di.milestones.extraExpansionMilestone4.earned})),p(()=>({multiplier:()=>i.add(ce.buildExtractor.amount.value,1).pow(1.25),description:"Snowball Level 4",enabled:v.elfTraining.kilnElfTraining.milestones[3].earned})),p(()=>({multiplier:()=>i.add(Ye.secondaryDyeSum.value,1).cbrt(),description:"Colorful Plastic",enabled:ce.row3Upgrades[2].bought}))]),Ze=Z(()=>Ce.apply(0));yi.on("update",ue=>{i.lt(V.day.value,Pn)||(n.value=i.times(ue,Ze.value).add(n.value))});const{total:Ne,trackerDisplay:fe}=wl({resource:n,goal:25e4,name:e,day:Pn,color:l,textColor:"var(--feature-foreground)",modal:{show:r,display:d}}),we={plastic:I(0),totalPlastic:I(0),activeRefinery:I(0),buildRefinery:{amount:I(0)},upgrades:{paperTools:{bought:I(!1)},boxTools:{bought:I(!1)},clothTools:{bought:I(!1)}},elfUpgrades:{paperElf:{bought:I(!1)},boxElf:{bought:I(!1)},clothElf:{bought:I(!1)}},buyables:{passivePaper:{amount:I(0)},passiveBoxes:{amount:I(0)},clothGains:{amount:I(0)}}},xe=I(!1),Fe=Z(()=>{var ue;return xe.value||((ue=V.currentlyMastering.value)==null?void 0:ue.name)===e});return{name:e,day:Pn,color:l,plastic:n,totalPlastic:Ne,buildRefinery:b,activeRefinery:u,oilCost:c,upgrades:O,elfUpgrades:_,buyables:Oe,generalTabCollapsed:a,minWidth:700,display:f(()=>t(C,null,[We(fe),t(pe,null,null),t(Ui,{resource:n,color:l,style:"margin-bottom: 0",effectDisplay:i.gt(Ze.value,0)?`+${le(Ze.value)}/s`:void 0},null),t(pe,null,null),t(ll,null,{default:()=>[We(b),t("div",null,[re(i.floor(u.value)),o("/"),re(i.floor(b.amount.value))]),ci(J,j,W,h)]}),t(rn,null,{default:()=>[ml(X,k,Q),ml(M,D,U),ml(T,de,ie)]})])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:we,mastered:xe}}),DI="letters",_n=14,tn=Di(DI,function(){const e="Letters",l="antiquewhite",n=Vi(0,"letters processed"),s=I(0),a=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: 0",fillStyle:"margin-top: 0; transition-duration: 0s; background: black",progress:()=>i.div(s.value,de.value)})),r=Qi(()=>({display:{title:"Process Letters",description:f(()=>t(C,null,[o("Process "),le(k.value,1),o(" letters"),t("br",null,null),We(a)]))},style:{minHeight:"80px"},canClick:()=>i.gte(s.value,de.value)&&(!V.isMastery.value||fe.value),onClick(){if(i.lt(s.value,de.value))return;const we=i.div(s.value,de.value).floor();n.value=i.times(we,k.value).add(n.value),s.value=0}})),d=Ae(()=>({display:{title:"Sorting Machine",description:"Use a mechanic sorting machine to speed up how quickly you process letters",effectDisplay:f(()=>t(C,null,[le(i.div(d.amount.value,2).add(1)),o("x")]))},resource:Zi.metal,cost(){return i.pow(10,d.amount.value).times(1e21)},visibility:()=>y(!V.isMastery.value||fe.value)})),u=Ae(()=>({display:{title:"Plastic Bins",description:"Use various plastic bins to allow you to process larger quantities of letters at once",effectDisplay:f(()=>t(C,null,[le(i.div(u.amount.value,2).add(1)),o("x")]))},resource:ai.plastic,cost(){return i.pow(1.5,u.amount.value).times(1e9)},visibility:()=>y(!V.isMastery.value||fe.value)})),c=Ae(()=>({display:{title:"Printed Labels",description:"Use printed labels to improve how many letters you can process at once",effectDisplay:f(()=>t(C,null,[le(i.div(c.amount.value,2).add(1)),o("x")]))},resource:z.paper,cost(){return i.pow(3,c.amount.value).times(1e38)},visibility:()=>y(!V.isMastery.value||fe.value)})),b={metalBuyable:d,plasticBuyable:u,paperBuyable:c},J=G(()=>({display:{requirement:"100 Letters Processed",effectDisplay:"Double mining speed for every letters processed milestone"},shouldEarn:()=>i.gte(Oe.value,100)})),h=G(()=>({display:{requirement:"1000 Letters Processed",effectDisplay:f(()=>t(C,null,[o("Mine "),t(Zl,null,{default:()=>[o("Blue Dye")]}),o(" additional ore each operation")]))},shouldEarn:()=>i.gte(Oe.value,1e3),visibility:()=>y(J.earned.value)})),W=G(()=>({display:{requirement:"10,000 Letters Processed",effectDisplay:"Improve how much your experience processing letters allows you to process more letters"},shouldEarn:()=>i.gte(Oe.value,1e4),visibility:()=>y(h.earned.value)})),j=G(()=>({display:{requirement:"100,000 Letters Processed",effectDisplay:f(()=>t(C,null,[o('"Industrial Crucible" also multiplies the auto smelting multi by')," ",t(Zl,null,{default:()=>[o("amount")]})]))},shouldEarn:()=>i.gte(Oe.value,1e5),visibility:()=>y(W.earned.value)})),F={autoSmeltingMilestone:J,miningMilestone:h,synergyMilestone:W,industrialCrucibleMilestone:j},{collapseMilestones:X,display:M}=dn(F),T=Z(()=>{const we=i.add(Oe.value,1);return W.earned.value?i.log2(10001).add(1).add(we.sub(9999).sqrt()):i.log2(we).add(1)}),O=be(()=>[p(()=>({multiplier:T,description:"Processing Letters Experience"})),p(()=>({multiplier:()=>i.div(u.amount.value,2).add(1),description:"Plastic Bins"})),p(()=>({multiplier:()=>i.div(c.amount.value,2).add(1),description:"Printed Labels"}))]),k=Z(()=>O.apply(1)),D=be(()=>[p(()=>({multiplier:()=>i.div(d.amount.value,2).add(1).recip(),description:"Sorting Machine"}))]),de=Z(()=>D.apply(5)),[_,Q]=rl(()=>[{title:"Processed Letters Amount",modifier:O,base:1},{title:"Processed Letters Cooldown",modifier:D,base:5}]),U=me(!1),ie=f(()=>t(Si,{modelValue:U.value,"onUpdate:modelValue":we=>U.value=we},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:_}));yi.on("update",we=>{i.lt(V.day.value,_n)||(i.gte(s.value,de.value)?s.value=de.value:(s.value=i.add(s.value,we),r.isHolding.value&&r.onClick()))});const{total:Oe,trackerDisplay:Ce}=wl({resource:n,goal:1e6,name:e,day:_n,color:l,textColor:"var(--feature-foreground)",modal:{show:U,display:ie}}),Ze={letters:I(0),totalLetters:I(0),buyables:{metalBuyable:{amount:I(0)},plasticBuyable:{amount:I(0)},paperBuyable:{amount:I(0)}},milestones:{autoSmeltingMilestone:{earned:I(!1)},miningMilestone:{earned:I(!1)},synergyMilestone:{earned:I(!1)},industrialCrucibleMilestone:{earned:I(!1)}}},Ne=I(!1),fe=Z(()=>{var we;return Ne.value||((we=V.currentlyMastering.value)==null?void 0:we.name)===e});return{name:e,day:_n,color:l,letters:n,totalLetters:Oe,processingProgress:s,buyables:b,milestones:F,minWidth:700,generalTabCollapsed:Q,collapseMilestones:X,display:f(()=>t(C,null,[We(Ce),t(pe,null,null),t(Ui,{resource:n,color:l},null),We(r),t("div",null,[o("The more letters you process, the more you'll improve at processing letters.")]),t("div",null,[o("Currently: "),le(T.value),o("x")]),t(pe,null,null),ci(...Object.values(b)),t(pe,null,null),M()])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:Ze,mastered:Ne}}),BI="metal",qn=7,Zi=Di(BI,function(){const e="Metal",l="#888B8D",n=Vi(0,"metal ingots",void 0,!0),s=Os(n),a=Vi(0,"ore"),r=Os(a),d=me(0),u=me(0),c=be(()=>[p(()=>({multiplier:5,description:"Crucible",enabled:we.bought})),p(()=>({multiplier:1.5,description:"Industrial Crucible",enabled:()=>i.gte($.amount.value,1)})),p(()=>({multiplier:2,description:"Industrial Furnace",enabled:Fe.bought})),p(()=>({multiplier:()=>i.add(ei.value,1),description:"Hotter Forges",enabled:()=>i.gte(Wi.amount.value,1)})),p(()=>({multiplier:2,description:"Carry metal in boxes",enabled:si.row2Upgrades.metalUpgrade.bought})),p(()=>({multiplier:Ye.boosts.purple2,description:"Purple Dye Boost 2",enabled:()=>i.gte(Ye.dyes.purple.amount.value,1)})),p(()=>({multiplier:()=>i.add(Yi.cloth.value,1).log10().plus(1),description:"Glistening Paint",enabled:Ye.upgrades.redDyeUpg.bought})),p(()=>({multiplier:()=>i.div(di.foundationProgress.value,10).floor().div(10).add(1),description:"400% Foundation Completed",enabled:di.milestones.extraExpansionMilestone2.earned})),p(()=>({multiplier:()=>i.add(ce.buildHeavy.amount.value,1).sqrt(),description:"Joy Level 4",enabled:v.elfTraining.smallfireElfTraining.milestones[3].earned})),p(()=>({multiplier:()=>i.add(v.schools.amount.value,1),description:"Twinkle Level 1",enabled:v.elfTraining.metalElfTraining.milestones[0].earned})),tl(()=>({exponent:1.1,description:"Mary Level 2",enabled:v.elfTraining.heatedPlanterElfTraining.milestones[1].earned}))]),b=Z(()=>c.apply(.1)),J=be(()=>[je(()=>({addend:()=>i.times($.amount.value,10),description:"Industrial Crucibles",enabled:()=>i.gte($.amount.value,1)})),tl(()=>({exponent:1.1,description:"Joy Level 5",enabled:v.elfTraining.smallfireElfTraining.milestones[4].earned})),tl(()=>({exponent:1.1,description:"Faith Level 5",enabled:v.elfTraining.bonfireElfTraining.milestones[4].earned})),tl(()=>({exponent:1.1,description:"Snowball Level 5",enabled:v.elfTraining.kilnElfTraining.milestones[4].earned})),p(()=>({multiplier:2,description:"Efficient Crucibles",enabled:ee.efficientSmelther.bought})),p(()=>({multiplier:()=>i.mul(ce.activeSmelter.value,ce.oilEffectiveness.value).add(1),description:"Oil Smelter",enabled:()=>i.gt(ce.activeSmelter.value,0)})),p(()=>({multiplier:Ye.boosts.purple2,description:"Purple Dye Boost 2",enabled:()=>i.gte(Ye.dyes.purple.amount.value,1)})),p(()=>({multiplier:()=>i.add(ai.activeRefinery.value,1).sqrt(),description:"De Louvre",enabled:Ye.upgrades.redDyeUpg2.bought})),p(()=>({multiplier:()=>i.div(v.totalElfExp.value,1e6).add(1).sqrt(),description:"Mary Level 5",enabled:v.elfTraining.heatedPlanterElfTraining.milestones[4].earned})),p(()=>({multiplier:()=>i.pow(1.25,v.elfTraining.metalElfTraining.level.value),description:"Twinkle Level 2",enabled:v.elfTraining.metalElfTraining.milestones[1].earned})),p(()=>({multiplier:()=>i.add(Ye.dyes.red.amount.value,Ye.dyes.blue.amount.value).add(Ye.dyes.yellow.amount.value).add(1).log10(),description:"The Ultimate Metal Dye",enabled:ce.row3Upgrades[4].bought})),p(()=>({multiplier:zi.boosts.jazzy1,description:"Jazzy Wrapping Paper",enabled:Z(()=>i.gt(zi.boosts.jazzy1.value,1))})),je(()=>({addend:()=>i.sub(d.value,u.value).max(0),description:"Metal Decoration",enabled:Re}))]),h=Z(()=>J.apply(0)),W=be(()=>[p(()=>({multiplier:3,description:"Efficient Crucibles",enabled:ee.efficientSmelther.bought})),p(()=>({multiplier:()=>i.add(ce.effectiveBurners.value,1).mul(ce.oilEffectiveness.value),description:"Oil Burner",enabled:ce.row2Upgrades[2].bought})),p(()=>({multiplier:3,description:"Twinkle Level 3",enabled:v.elfTraining.metalElfTraining.milestones[2].earned})),p(()=>({multiplier:()=>i.add($.amount.value,1).sqrt(),description:"100,000 Letters Processed",enabled:tn.milestones.industrialCrucibleMilestone.earned}))]),j=Z(()=>W.apply(1)),F=1e10,X=Z(()=>i.min(a.value,i.div(ee.coal.value,F)).floor().max(0)),M=Qi(()=>({display:f(()=>{const E=i.gte(X.value,1)?X.value:i.add(X.value,1);return t(C,null,[t("span",{style:"font-size: large"},[o("Smelt "),Te(i.times(X.value,b.value))," ",n.displayName]),t("br",null,null),t("span",{style:"font-size: large"},[o("Cost: "),Se(E),o(" "),a.displayName,o(";")," ",Se(i.times(E,F)),o(" "),ee.coal.displayName])])}),canClick:()=>i.gte(X.value,1),onClick(){!m(this.canClick)||T(X.value)},style:{width:"600px",minHeight:"unset"}}));function T(E,oe=1){const[Ve,Hi,vi]=[i.times(E,b.value).times(oe),E,i.times(E,F)];n.value=i.add(n.value,Ve),a.value=i.sub(a.value,Hi),ee.coal.value=i.sub(ee.coal.value,vi)}const O=be(()=>[je(()=>({addend:()=>x.amount.value,description:"Metal Drills",enabled:()=>i.gte(x.amount.value,1)})),p(()=>({multiplier:()=>i.mul(ce.depth.value,.05).add(1),description:"25m Well Depth",enabled:ce.depthMilestones[2].earned})),p(()=>({multiplier:ce.extractorOre,description:"Heavy Extractor",enabled:()=>i.gt(ce.activeExtractor.value,0)})),p(()=>({multiplier:2,description:"Carry ore in boxes",enabled:si.row2Upgrades.oreUpgrade.bought})),p(()=>({multiplier:()=>i.add(Ye.dyes.blue.amount.value,1).sqrt(),description:"1000 Letters Processed",enabled:tn.milestones.miningMilestone.earned}))]),k=Z(()=>O.apply(1)),D=be(()=>[p(()=>({multiplier:2,description:"A Simple Pickaxe",enabled:Ne.bought})),p(()=>({multiplier:2,description:"Double Pickaxe",enabled:fe.bought})),p(()=>({multiplier:2.5,description:"Metal Drills",enabled:()=>i.gte(x.amount.value,1)})),p(()=>({multiplier:2,description:"Efficient Drills",enabled:ue.bought})),p(()=>({multiplier:2,description:"Oil the Metal Drills",enabled:ce.row2Upgrades[1].bought})),p(()=>({multiplier:()=>i.pow(2,Object.values(tn.milestones).filter(E=>E.earned.value).length),description:"100 Letters Processed",enabled:tn.milestones.autoSmeltingMilestone.earned})),je(()=>({addend:()=>i.sub(u.value,d.value).max(0).div(k.value),description:"Metal Decoration",enabled:Re}))]),de=Z(()=>D.apply(i.recip(Q))),_=I(0),Q=10,U=qi(()=>({width:400,height:25,direction:Be.Right,fillStyle:{backgroundColor:l,transitionDuration:"0s"},progress:()=>_.value})),ie=be(()=>[je(()=>({addend:k})),p(()=>({multiplier:de}))]),Oe=Z(()=>ie.apply(0)),Ce=be(()=>[je(()=>({addend:Oe})),je(()=>({addend:()=>i.negate(h.value),enabled:Ie}))]),Ze=Z(()=>Ce.apply(0)),Ne=B(()=>({resource:A(n),cost:.1,display:{title:"A Simple Pickaxe",description:"Make a simple pickaxe to help mine faster.
Halve the time to mine more ore"}})),fe=B(()=>({resource:A(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:()=>y(fe.bought.value)})),we=B(()=>({resource:A(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:()=>y(we.bought.value||i.div(r.value,b.value).plus(s.value).gte(1))})),xe=B(()=>({resource:A(n),cost:0,display:{title:"Coal Drilling",description:"These metal drills are pretty powerful, mining more ore than you can actually smelt. Could be worth making some to mine coal instead"},visibility:()=>y(i.gte(x.amount.value,1)&&(xe.bought.value||V.days[7].opened.value||i.lt(ee.computedCoalGain.value,i.times(k.value,de.value).times(F)))),onPurchase(){V.days[2].recentlyUpdated.value=!0}})),Fe=B(()=>({canAfford(){return i.gte(n.value,50)&&i.gte(ee.coal.value,1e11)},onPurchase(){n.value=i.sub(n.value,50),ee.coal.value=i.sub(ee.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} ${Te(1e11)} ${ee.coal.displayName}`}})),ue=B(()=>({resource:A(n),cost:1e5,display:{title:"Efficient Drills",description:"Use metal and a bunch of R&D to make drilling stuff faster. Double coal and ore mining speed."},visibility:()=>y(ce.depthMilestones[4].earned.value)})),x=Ae(()=>({resource:A(n),cost(){let E=new i(this.amount.value);E=i.pow(.95,z.books.metalBook.totalAmount.value).times(E);let oe=i.pow(1.15,E).times(10);return v.elfTraining.metalElfTraining.milestones[4].earned.value&&(oe=i.div(oe,i.add(ce.depth.value,1).sqrt())),v.elfTraining.metalElfTraining.milestones[3].earned.value&&(oe=i.div(oe,10)),oe},inverseCost(E){v.elfTraining.metalElfTraining.milestones[3].earned.value&&(E=i.mul(E,10)),v.elfTraining.metalElfTraining.milestones[4].earned.value&&(E=i.mul(E,i.add(ce.depth.value,1).sqrt()));let oe=i.div(E,10).log(1.15);return oe=oe.div(i.pow(.95,z.books.metalBook.totalAmount.value)),i.isNaN(oe)?i.dZero:oe.floor().max(0)},display:{title:"Metal Drill",description:"An automated machine to help you mine more ore, faster",effectDisplay:f(()=>t(C,null,[o("Mine 2.5x faster. Increase ore mining amount by")," ",Se(x.amount.value),o(" ore per operation")]))},visibility:()=>y(i.gte(x.amount.value,1)||i.div(r.value,b.value).plus(s.value).gte(10)),style:{width:"200px"}})),$=Ae(()=>({resource:A(n),cost(){let E=new i(this.amount.value);E=i.pow(.95,z.books.metalBook.totalAmount.value).times(E);let oe=i.pow(1.15,i.times(E,10)).times(10);return v.elfTraining.metalElfTraining.milestones[4].earned.value&&(oe=i.div(oe,i.add(ce.depth.value,1).sqrt())),v.elfTraining.metalElfTraining.milestones[3].earned.value&&(oe=i.div(oe,10)),oe},inverseCost(E){v.elfTraining.metalElfTraining.milestones[3].earned.value&&(E=i.mul(E,10)),v.elfTraining.metalElfTraining.milestones[4].earned.value&&(E=i.mul(E,i.add(ce.depth.value,1).sqrt()));let oe=i.div(E,10).log(1.15).div(10);return oe=oe.div(i.pow(.95,z.books.metalBook.totalAmount.value)),i.isNaN(oe)?i.dZero:oe.floor().max(0)},display:{title:"Industrial Crucible",description:"A giant automated crucible furnace, letting you smelt ore faster",effectDisplay:f(()=>t(C,null,[o("Automatically smelts")," ",Se(i.times($.amount.value,10)),o(" ore per second")]))},visibility:()=>y(i.gte($.amount.value,1)||i.gte(x.amount.value,4)||i.gte(r.value,50)),style:{width:"200px"}})),Ie=I(!0),Wi=Ae(()=>({resource:ee.coal,cost(){let E=new i(this.amount.value);E=i.pow(.95,z.books.metalBook.totalAmount.value).times(E);let oe=i.pow(10,E).times(1e12);return v.elfTraining.metalElfTraining.milestones[4].earned.value&&(oe=i.div(oe,i.add(ce.depth.value,1).sqrt())),v.elfTraining.metalElfTraining.milestones[3].earned.value&&(oe=i.div(oe,10)),oe},inverseCost(E){v.elfTraining.metalElfTraining.milestones[3].earned.value&&(E=i.mul(E,10)),v.elfTraining.metalElfTraining.milestones[4].earned.value&&(E=i.mul(E,i.add(ce.depth.value,1).sqrt()));let oe=i.div(E,1e12).log(10);return oe=oe.div(i.pow(.95,z.books.metalBook.totalAmount.value)),i.isNaN(oe)?i.dZero:oe.floor().max(0)},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:f(()=>t(C,null,[o("Gain "),Se(i.times(ei.value,100)),o("% more metal per ore")]))},visibility:()=>y(i.gte(Wi.amount.value,1)||Fe.bought.value),style:{width:"200px"}})),ei=Z(()=>i.times(Wi.amount.value,.25));yi.on("update",E=>{var vi;if(i.lt(V.day.value,qn)||V.isMastery.value&&!he.value&&((vi=V.currentlyMastering.value)==null?void 0:vi.name)!==e)return;const oe=i.sub(i.times(de.value,k.value),i.sub(u.value,d.value).max(0)),Ve=i.sub(h.value,i.sub(d.value,u.value).max(0));d.value=i.isNaN(oe)?0:oe,u.value=i.isNaN(Ve)?0:Ve,_.value=i.times(E,de.value).plus(_.value);const Hi=_.value.trunc();_.value=_.value.minus(Hi),a.value=i.add(a.value,i.times(Hi,k.value)),Ie.value&&T(i.min(X.value,i.times(h.value,E)),j.value)});const[De,Ee]=rl(()=>[{title:"Auto Smelt Speed",modifier:J,base:0,unit:"/s",visible(){return i.gt($.amount.value,0)||Re.value}},{title:"Auto Smelt Multiplier",modifier:W,base:1,visible(){return i.gt(j.value,1)}},{title:"Metal per Ore",modifier:c,base:.1},{title:"Ore per Mining Operation",modifier:O,base:1},{title:"Mining Speed",modifier:D,base:.1,unit:"/s"}]),Ci=me(!1),Ke=f(()=>t(Si,{modelValue:Ci.value,"onUpdate:modelValue":E=>Ci.value=E},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:De})),{total:ze,trackerDisplay:ii}=wl({resource:n,goal:25e3,name:e,day:qn,color:l,modal:{show:Ci,display:Ke}}),mi={ore:I(0),bestOre:I(0),oreProgress:I(0),metal:I(0),bestMetal:I(0),totalMetal:I(0),simplePickaxe:{bought:I(!1)},doublePickaxe:{bought:I(!1)},crucible:{bought:I(!1)},coalDrill:{bought:I(!1)},industrialFurnace:{bought:I(!1)},efficientDrill:{bought:I(!1)},oreDrill:{amount:I(0)},industrialCrucible:{amount:I(0)},hotterForge:{amount:I(0)}},he=I(!1),Re=Z(()=>{var E;return he.value||((E=V.currentlyMastering.value)==null?void 0:E.name)===e});return{name:e,day:qn,color:l,ore:a,bestOre:r,oreProgress:_,metal:n,bestMetal:s,totalMetal:ze,simplePickaxe:Ne,doublePickaxe:fe,crucible:we,coalDrill:xe,industrialFurnace:Fe,efficientDrill:ue,oreDrill:x,industrialCrucible:$,autoSmeltEnabled:Ie,hotterForge:Wi,generalTabCollapsed:Ee,minWidth:700,display:f(()=>t(C,null,[We(ii),t(pe,null,null),Re.value?t(C,null,[o("Decoration effect: The lesser of ore mining amount x speed and auto smelting speed is increased to match the greater"),t(pe,null,null)]):null,t(Ui,{resource:n,color:l,style:"margin-bottom: 0",sticky:!1,productionDisplay:f(()=>t(C,null,[Ie.value&&(i.gte($.amount.value,1)||Re.value)?`+${Us([[h.value,"smelting speed"],[Oe.value,"ore gain"],[i.div(ee.computedCoalGain.value,F),"coal gain"]],"/s",i.mul(b.value,j.value))}`:void 0]))},null),t(pe,null,null),We(M),i.gte($.amount.value,1)||Re.value?t("div",{style:{width:"150px"}},[t(Jl,{title:"Auto Smelt",modelValue:Ie.value,"onUpdate:modelValue":E=>Ie.value=E},null)]):void 0,t(pe,null,null),t(Ui,{resource:a,color:l,style:"margin-bottom: 0",sticky:!1,productionDisplay:f(()=>t(C,null,[Es(Ze.value)]))},null),t(pe,null,null),t("div",null,[o("Currently mining "),Te(k.value),o(" ore every")," ",Te(i.recip(de.value)),o(" seconds")]),We(U),t(pe,null,null),ci(Ne,fe,we,xe,Fe,ue),ci(x,$,Wi)])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[Te(n.value),o(" "),n.displayName])])),mastery:mi,mastered:he}}),PI="elves",ln=4,ye=Di(PI,function(){const e="Elves",l="red",n="#911D21",a=qi(()=>({direction:Be.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>V.day.value===ln?i.div(li.value,6).times(.8333333333333334).add(i.div(i.add(ee.coal.value,1).log10(),i.log10(1e9)).clamp(0,1).div(6)):1,display:f(()=>V.day.value===ln?i.lt(li.value,6)?t(C,null,[re(li.value),o("/6 elves")]):t(C,null,[re(ee.coal.value),o("/"),re(1e9),o(" coal")]):"")})),r=SI(()=>({thingsToReset:[ge,di,ee],onReset(){const ae=["warmerCutters","warmerPlanters","basicFertilizer","unlockBonfire","dedicatedCutters","dedicatedPlanters","betterFertilizer","unlockKiln","efficientSmelther","arsonistAssistance","refinedCoal","coloredFire"],He=ae.map(bi=>ee[bi].bought.value);setTimeout(()=>{Mi.earned.value?(ge.row1Upgrades.forEach(bi=>bi.bought.value=!0),ge.row2Upgrades.forEach(bi=>bi.bought.value=!0)):ji.earned.value&&(ge.row1Upgrades[4].bought.value=!0,ge.row2Upgrades[4].bought.value=!0),$i.earned.value&&(di.foundationProgress.value=100),gi.earned.value&&(ae.forEach((bi,Bi)=>ee[bi].bought.value=He[Bi]),ee.warmerCutters.bought.value=!0,ee.warmerPlanters.bought.value=!0,ee.basicFertilizer.bought.value=!0,ee.unlockBonfire.bought.value=!0,ee.dedicatedCutters.bought.value=!0,ee.dedicatedPlanters.bought.value=!0,ee.betterFertilizer.bought.value=!0,ee.unlockKiln.bought.value=!0,ee.efficientSmelther.bought.value=!0,ee.arsonistAssistance.bought.value=!0,ee.refinedCoal.bought.value=!0,ee.coloredFire.bought.value=!0)})}})),d=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.cuttersBook.totalAmount.value,.1).add(1),description:"Now You're Logging!",enabled:()=>i.gt(z.books.cuttersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),u=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.plantersBook.totalAmount.value,.1).add(1),description:"The Man Who Planted Trees",enabled:()=>i.gt(z.books.plantersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),c=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.expandersBook.totalAmount.value,.1).add(1),description:"Logjam",enabled:()=>i.gt(z.books.expandersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),b=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.heatedCuttersBook.totalAmount.value,.1).add(1),description:"Fahrenheit 451",enabled:()=>i.gt(z.books.heatedCuttersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),J=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.heatedPlantersBook.totalAmount.value,.1).add(1),description:"Tillamook Burn Country",enabled:()=>i.gt(z.books.heatedPlantersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),h=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.fertilizerBook.totalAmount.value,.1).add(1),description:"The Garden Tree's Handbook",enabled:()=>i.gt(z.books.fertilizerBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),W=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.smallFireBook.totalAmount.value,.1).add(1),description:"Firestarter",enabled:()=>i.gt(z.books.smallFireBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),j=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.bonfireBook.totalAmount.value,.1).add(1),description:"An Arsonist's Guide to Writer's Homes in New England",enabled:()=>i.gt(z.books.bonfireBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),F=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.kilnBook.totalAmount.value,.1).add(1),description:"Little Fires Everywhere",enabled:()=>i.gt(z.books.kilnBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),X=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.paperBook.totalAmount.value,.1).add(1),description:"The Book Thief",enabled:()=>i.gt(z.books.paperBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),M=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.boxBook.totalAmount.value,.1).add(1),description:"Not a box",enabled:()=>i.gt(z.books.boxBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),T=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.clothBook.totalAmount.value,.1).add(1),description:"Fuzzy Bee and Friends",enabled:()=>i.gt(z.books.clothBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),O=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.coalDrillBook.totalAmount.value,.1).add(1),description:"Drills and Mills",enabled:()=>i.gt(z.books.coalDrillBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),k=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.heavyDrillBook.totalAmount.value,.1).add(1),description:"Deep in the Earth",enabled:()=>i.gt(z.books.heavyDrillBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),D=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.oilBook.totalAmount.value,.1).add(1),description:"Burning the Midnight Oil",enabled:()=>i.gt(z.books.oilBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),de=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.metalBook.totalAmount.value,.1).add(1),description:"Physical Metallurgy",enabled:()=>i.gt(z.books.metalBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),_=be(()=>[]),[Q,U]=rl(()=>[{title:"Holly Auto-Buy Frequency",modifier:d,base:10,unit:"/s",visible:_e.cuttersElf.bought},{title:"Ivy Auto-Buy Frequency",modifier:u,base:10,unit:"/s",visible:_e.plantersElf.bought},{title:"Hope Auto-Buy Frequency",modifier:c,base:10,unit:"/s",visible:_e.expandersElf.bought},{title:"Jack Auto-Buy Frequency",modifier:b,base:10,unit:"/s",visible:_e.heatedCuttersElf.bought},{title:"Mary Auto-Buy Frequency",modifier:J,base:10,unit:"/s",visible:_e.heatedPlantersElf.bought},{title:"Noel Auto-Buy Frequency",modifier:h,base:10,unit:"/s",visible:_e.fertilizerElf.bought},{title:"Joy Auto-Buy Frequency",modifier:W,base:10,unit:"/s",visible:_e.smallFireElf.bought},{title:"Faith Auto-Buy Frequency",modifier:j,base:10,unit:"/s",visible:_e.bonfireElf.bought},{title:"Snowball Auto-Buy Frequency",modifier:F,base:10,unit:"/s",visible:_e.kilnElf.bought},{title:"Star Auto-Buy Frequency",modifier:X,base:10,unit:"/s",visible:_e.paperElf.bought},{title:"Bell Auto-Buy Frequency",modifier:M,base:10,unit:"/s",visible:_e.boxElf.bought},{title:"Gingersnap Auto-Buy Frequency",modifier:T,base:10,unit:"/s",visible:_e.clothElf.bought},{title:"Peppermint Auto-Buy Frequency",modifier:O,base:10,unit:"/s",visible:v.elfTraining.expandersElfTraining.milestones[3].earned},{title:"Frosty Auto-Buy Frequency",modifier:k,base:10,unit:"/s",visible:v.elfTraining.cutterElfTraining.milestones[4].earned.value},{title:"Cocoa Auto-Buy Frequency",modifier:D,base:10,unit:"/s",visible:v.elfTraining.heatedCutterElfTraining.milestones[4].earned.value},{title:"Twinkle Auto-Buy Frequency",modifier:de,base:10,unit:"/s",visible:v.elfTraining.fertilizerElfTraining.milestones[4].earned}]),ie=me(!1),Oe=f(()=>t(Si,{modelValue:ie.value,"onUpdate:modelValue":ae=>ie.value=ae},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Q})),Ce=Z(()=>{let ae=i.pow(4,li.value).times(1e6);return i.gte(li.value,9)&&(ae=i.times(ae,1e15)),i.gte(li.value,12)&&(ae=i.times(ae,1e15)),ae});function Ze(ae){var $l,kl,zl;const He=I(0),bi=I(0),Bi=ae.hasToggle?I(!1):me(!0),dl=Z(()=>ae.cooldownModifier.apply(10)),ni=Ri(($l=ae.canBuy)!=null?$l:!0),ri=Ri((kl=ae.buyMax)!=null?kl:!1),Oi=Ri((zl=ae.independent)!=null?zl:!1);function N(xi){if(R.bought.value&&m(ni)){He.value=i.add(He.value,xi);const Ki=i.recip(dl.value);bi.value+=xi/Ki.toNumber();let K=i.div(He.value,Ki).floor();He.value=i.sub(He.value,K.mul(Ki)),m(ri)&&(K=i.dInf),(is(ae.buyable)?ae.buyable:[ae.buyable]).forEach(Ue=>{var el,jl;if(m(Ue.visibility)!==Ji.Visible)return;const pi=i.min(i.sub(Ue.inverseCost((el=Ue.resource)==null?void 0:el.value),m(Oi)?0:Ue.amount.value).add(1),K);pi.lte(0)||(Ue.amount.value=i.add(Ue.amount.value,pi),K=i.sub(K,pi),(jl=ae.onAutoPurchase)==null||jl.call(ae,Ue,pi),K.lte(0))})}}const R=B(()=>({...ae,buyable:void 0,toggle:Bi,buyProgress:He,update:N,resource:ee.coal,cost:Ce,computedAutoBuyCooldown:dl,amountOfTimesDone:bi,name:ae.name,canAfford(){return i.gte(ee.coal.value,m(Ce))&&!V.isMastery.value},display:()=>({title:ae.name,description:f(()=>t(C,null,[ae.description,R.bought.value||["Peppermint","Twinkle","Cocoa","Frosty"].includes(ae.name)?null:t(C,null,[" ",o("Training this elf will require resetting all your progress from days 1-3.")]),R.bought.value&&ae.hasToggle===!0?t(C,null,[t(Jl,{title:ae.toggleDesc,"onUpdate:modelValue":xi=>Bi.value=xi,modelValue:Bi.value},null)]):null])),showCost:!R.bought.value}),style:"width: 190px",onPurchase(){var xi;(xi=ae.onPurchase)==null||xi.call(ae),["Peppermint","Twinkle","Cocoa","Frosty","Carol"].includes(ae.name)||r.reset()}}));return R}const Ne=Ze({name:"Holly",description:"Holly will automatically purchase cutters you can afford, without actually spending any logs.",buyable:ge.row1Buyables[0],cooldownModifier:d,buyMax:()=>v.elfTraining.cutterElfTraining.milestones[1].earned.value}),fe=Ze({name:"Ivy",description:"Ivy will automatically purchase planters you can afford, without actually spending any logs.",buyable:ge.row1Buyables[1],cooldownModifier:u,buyMax:()=>v.elfTraining.planterElfTraining.milestones[1].earned.value}),we=Ze({name:"Hope",description:"Hope will automatically purchase forest expanders you can afford, without actually spending any logs.",buyable:ge.row1Buyables[2],cooldownModifier:c,buyMax:()=>v.elfTraining.expandersElfTraining.milestones[1].earned.value}),xe=[Ne,fe,we],Fe=Ze({name:"Jack",description:"Jack will automatically purchase heated cutters you can afford, without actually spending any coal.",buyable:ee.heatedCutters,cooldownModifier:b,buyMax:()=>v.elfTraining.heatedCutterElfTraining.milestones[2].earned.value}),ue=Ze({name:"Mary",description:"Mary will automatically purchase heated planters you can afford, without actually spending any coal.",buyable:ee.heatedPlanters,cooldownModifier:J,buyMax:()=>v.elfTraining.heatedPlanterElfTraining.milestones[2].earned.value}),x=Ze({name:"Noel",description:"Noel will automatically purchase fertilized soil you can afford, without actually spending any ash.",buyable:ee.moreFertilizer,cooldownModifier:h}),$=[Fe,ue,x],Ie=Ze({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:ee.buildFire,cooldownModifier:W,buyMax:()=>v.elfTraining.heatedCutterElfTraining.milestones[2].earned.value,visibility:()=>y(si.upgrades.logsUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased small fires",onAutoPurchase(ae,He){Ie.toggle.value&&(ee.activeFires.value=i.add(ee.activeFires.value,He))},onPurchase(){V.days[4].recentlyUpdated.value=!0}}),Wi=Ze({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:ee.buildBonfire,cooldownModifier:j,buyMax:()=>v.elfTraining.heatedPlanterElfTraining.milestones[2].earned.value,visibility:()=>y(si.upgrades.ashUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased bonfires",onAutoPurchase(ae,He){var Bi;const bi=i.mul(m((Bi=ae.cost)!=null?Bi:0),He);ee.activeFires.value=i.sub(ee.activeFires.value,bi).max(0),ee.buildFire.amount.value=i.sub(ee.buildFire.amount.value,bi).max(0),Wi.toggle.value&&(ee.activeBonfires.value=i.add(ee.activeBonfires.value,He))},onPurchase(){V.days[4].recentlyUpdated.value=!0},canBuy:ee.unlockBonfire.bought,independent:!0}),ei=Ze({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:ee.buildKiln,cooldownModifier:F,visibility:()=>y(si.upgrades.coalUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased kilns",onAutoPurchase(ae,He){ei.toggle.value&&(ee.activeKilns.value=i.add(ee.activeKilns.value,He))},onPurchase(){V.days[4].recentlyUpdated.value=!0},canBuy:ee.unlockKiln.bought}),De=[Ie,Wi,ei],Ee=Ze({name:"Star",description:"Star will automatically purchase all books you can afford, without actually spending any paper.",buyable:Object.values(z.books),cooldownModifier:X,visibility:()=>y(ai.elfUpgrades.paperElf.bought.value)}),Ci=Ze({name:"Bell",description:"Bell will automatically purchase all box buyables you can afford, without actually spending any boxes.",buyable:[...Object.values(si.buyables),...Object.values(si.buyables2)],cooldownModifier:M,visibility:()=>y(ai.elfUpgrades.boxElf.bought.value)}),Ke=Ze({name:"Gingersnap",description:"Gingersnap will automatically purchase all cloth buyables you can afford, without actually spending any resources.",buyable:[Yi.buildPens,Yi.betterShears,Yi.fasterSpinning],cooldownModifier:T,visibility:()=>y(ai.elfUpgrades.clothElf.bought.value)}),ze=[Ee,Ci,Ke],ii=Ze({name:"Peppermint",description:"Peppermint will automatically purchase all coal drills you can afford, without actually spending any resources.",buyable:ee.buildDrill,cooldownModifier:O,visibility:()=>y(v.elfTraining.expandersElfTraining.milestones[3].earned.value),hasToggle:!0,toggleDesc:"Activate auto-purchased coal drills",onAutoPurchase(ae,He){ii.toggle.value&&(ee.activeDrills.value=i.add(ee.activeDrills.value,He))}}),mi=Ze({name:"Frosty",description:"Frosty will automatically purchase all drill types in the oil section, without actually spending any resources.",buyable:[ce.buildHeavy,ce.buildHeavy2,ce.buildExtractor],cooldownModifier:k,visibility:()=>y(v.elfTraining.cutterElfTraining.milestones[4].earned.value),hasToggle:!0,toggleDesc:"Activate auto-purchased oil drills",onAutoPurchase(ae,He){mi.toggle.value&&(ae===ce.buildHeavy?ce.activeHeavy.value=i.add(ce.activeHeavy.value,He):ae===ce.buildHeavy2?ce.activeHeavy2.value=i.add(ce.activeHeavy2.value,He):ae===ce.buildExtractor&&(ce.activeExtractor.value=i.add(ce.activeExtractor.value,He)))}}),he=Ze({name:"Cocoa",description:"Cocoa will automatically purchase all oil-using machines you can afford, without actually spending any resources.",buyable:[ce.buildPump,ce.buildBurner,ce.buildSmelter],cooldownModifier:D,visibility:()=>y(v.elfTraining.heatedCutterElfTraining.milestones[4].earned.value),hasToggle:!0,toggleDesc:"Activate auto-purchased oil-using machines",onAutoPurchase(ae,He){mi.toggle.value&&(ae===ce.buildPump?ce.activePump.value=i.add(ce.activePump.value,He):ae===ce.buildBurner?ce.activeBurner.value=i.add(ce.activeBurner.value,He):ae===ce.buildSmelter&&(ce.activeSmelter.value=i.add(ce.activeSmelter.value,He)))}}),Re=[ii,mi,he],E=Ze({name:"Twinkle",description:"Twinkle will automatically purchase all metal machines you can afford, without actually spending any resources.",buyable:[Zi.oreDrill,Zi.industrialCrucible,Zi.hotterForge],cooldownModifier:de,visibility:()=>y(v.elfTraining.fertilizerElfTraining.milestones[4].earned.value)}),oe=[E],Ve=Object.fromEntries(["red","yellow","blue","orange","green","purple"].map(ae=>[Ye.dyes[ae].buyable.id,ae])),Hi=Ze({name:"Carol",description:"Carol will automatically purchase all primary dyes you can afford, without actually spending any resources.",buyable:Object.values(Ye.dyes).map(ae=>ae.buyable),cooldownModifier:_,visibility:()=>y(zi.unlockDyeElfMilestone.earned.value&&!V.isMastery.value),buyMax:()=>v.elfTraining.dyeElfTraining.milestones[2].earned.value,onAutoPurchase(ae,He){if(ae.amount.value=i.sub(ae.amount.value,He),["orange","green","purple"].includes(Ve[ae.id])&&!Zs.milestones.secondaryDyeElf.earned.value)return;const bi=Ye.dyes[Ve[ae.id]];bi.amount.value=i.times(2,ae.amount.value).plus(He).plus(1).times(He).div(2).times(bi.computedToGenerate.value).div(i.add(ae.amount.value,1)).plus(bi.amount.value),ae.amount.value=i.add(ae.amount.value,He)}}),vi=[Hi],_e={cuttersElf:Ne,plantersElf:fe,expandersElf:we,heatedCuttersElf:Fe,heatedPlantersElf:ue,fertilizerElf:x,smallFireElf:Ie,bonfireElf:Wi,kilnElf:ei,paperElf:Ee,boxElf:Ci,clothElf:Ke,coalDrillElf:ii,heavyDrillElf:mi,oilElf:he,metalElf:E,dyeElf:Hi},li=Z(()=>Object.values(_e).filter(ae=>ae.bought.value).length),Li=G(()=>({display:{requirement:"1 Elf Trained",effectDisplay:"Manual cutting and planting can happen twice as often for each trained elf"},shouldEarn:()=>i.gte(li.value,1)})),ji=G(()=>({display:{requirement:"2 Elves Trained",effectDisplay:"Research I & II aren't reset after training"},shouldEarn:()=>i.gte(li.value,2),visibility:()=>y(Li.earned.value)})),ne=G(()=>({display:{requirement:"3 Elves Trained",effectDisplay:"Coal gain is raised to the 1.25"},shouldEarn:()=>i.gte(li.value,3),visibility:()=>y(ji.earned.value)})),Xe=G(()=>({display:{requirement:"4 Elves Trained",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(li.value,4),visibility:()=>y(ne.earned.value)})),P=G(()=>({display:{requirement:"5 Elves Trained",effectDisplay:"Forest is twice as large"},shouldEarn:()=>i.gte(li.value,5),visibility:()=>y(Xe.earned.value)})),q=G(()=>({display:{requirement:"6 Elves Trained",effectDisplay:"Elves work twice as fast"},shouldEarn:()=>i.gte(li.value,6),visibility:()=>y(P.earned.value)})),$i=G(()=>({display:{requirement:"7 Elves Trained",effectDisplay:"Workshop Foundation starts at 100% complete after training"},shouldEarn:()=>i.gte(li.value,7),visibility:()=>y(q.earned.value&&V.day.value>5)})),_i=G(()=>({display:{requirement:"8 Elves Trained",effectDisplay:"Forest is twice as large (again)"},shouldEarn:()=>i.gte(li.value,8),visibility:()=>y($i.earned.value)})),Mi=G(()=>({display:{requirement:"9 Elves Trained",effectDisplay:"Trees upgrades aren't reset after training"},shouldEarn:()=>i.gte(li.value,9),visibility:()=>y(_i.earned.value)})),Pe=G(()=>({display:{requirement:"10 Elves Trained",effectDisplay:"Elves work twice as fast (again)"},shouldEarn:()=>i.gte(li.value,10),visibility:()=>y(V.day.value>=10&&Mi.earned.value)})),gi=G(()=>({display:{requirement:"11 Elves Trained",effectDisplay:"Coal upgrades aren't reset after training"},shouldEarn:()=>i.gte(li.value,11),visibility:()=>y(Pe.earned.value)})),ol=G(()=>({display:{requirement:"12 Elves Trained",effectDisplay:"Double coal gain"},shouldEarn:()=>i.gte(li.value,12),visibility:()=>y(gi.earned.value)})),Cl=[Li,ji,ne,Xe,P,q,$i,_i,Mi,Pe,gi,ol],gl={manualMilestone:Li,researchMilestone:ji,coalGainMilestone:ne,logGainMilestone:Xe,forestMilestone:P,elvesMilestone:q,foundationMilestone:$i,forestMilestone2:_i,treeUpgradesMilestone:Mi,elvesMilestone2:Pe,coalUpgradesMilestone:gi,coalGainMilestone2:ol},{collapseMilestones:Wl,display:vl}=dn(gl);yi.on("update",ae=>{i.lt(V.day.value,ln)||Object.values(_e).forEach(He=>He.update(ae))}),Pi(()=>{V.day.value===ln&&i.gte(li.value,6)&&i.gte(ee.coal.value,1e9)&&V.completeDay()});const Ol={elves:{cuttersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},plantersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},expandersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},heatedCuttersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},heatedPlantersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},fertilizerElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},smallFireElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},bonfireElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},kilnElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},paperElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},boxElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},clothElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},coalDrillElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},heavyDrillElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},oilElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},metalElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},dyeElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)}},milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]};return{name:e,day:ln,color:l,elves:_e,totalElves:li,milestones:Cl,collapseMilestones:Wl,generalTabCollapsed:U,minWidth:700,display:f(()=>t(C,null,[t("div",null,[V.day.value===ln?`Reach ${re(6)} trained elves and ${re(1e9)} ${ee.coal.displayName} to complete the day`:`${e} Complete!`," ",o("-")," ",t("button",{class:"button",style:"display: inline-block;",onClick:()=>ie.value=!0},[o("Check Modifiers")])]),We(a),We(Oe),t(pe,null,null),t("div",{style:"width: 600px"},[fl(xe,$,De,ze,Re,oe.concat(vi))]),vl()])),mastery:Ol}}),_I="coal",$n=3,ee=Di(_I,function(){const e="Coal",l="#151716",n="#B2BeB5",s="var(--foreground)",a=Vi(0,"coal"),r=Vi(0,"ash"),d=I(0),u=Z(()=>i.times(d.value,1e3)),c=Z(()=>i.times(d.value,.1)),b=Z(()=>{let N=i.times(d.value,50);return v.elfTraining.smallfireElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),J=Ae(()=>({resource:ge.logs,cost(){let N=i.times(D.amount.value,m(D.cost)).plus(this.amount.value);return i.gte(N,100)&&(N=i.pow(N,2).div(100)),i.gte(N,1e4)&&(N=i.pow(N,2).div(1e4)),N=i.pow(.95,z.books.smallFireBook.totalAmount.value).times(N),N.pow(Oi.value?1.1:1.5).times(1e4)},inverseCost(N){let R=i.div(N,1e4).root(Oi.value?1.1:1.5);return R=R.div(i.pow(.95,z.books.smallFireBook.totalAmount.value)),i.gte(R,1e4)&&(R=i.mul(R,1e4).root(2)),i.gte(R,100)&&(R=i.mul(R,100).root(2)),R=R.sub(i.times(D.amount.value,m(D.cost))),i.isNaN(R)?i.dZero:R.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Small Fire")]),t("br",null,null),o("Burn 1000 logs for 0.1 coal and 50 ash"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(u.value),o(" logs/sec"),t("br",null,null),o("+"),le(c.value),o(" coal/sec"),t("br",null,null),o("+"),le(b.value),o(" ash/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(J.cost)),o(" "),J.resource.displayName])),onPurchase(){d.value=i.add(d.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(!V.isMastery.value||Oi.value)})),{min:h,max:W,add:j,remove:F}=bl({active:d,buyable:J}),X=Vi(J.amount,"small fires"),M=I(0),T=Z(()=>i.times(M.value,1e4)),O=Z(()=>{let N=i.times(M.value,10);return v.elfTraining.bonfireElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),k=Z(()=>{let N=i.times(M.value,1e3);return v.elfTraining.bonfireElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),D=Ae(()=>({resource:X,cost(){return i.pow(.95,z.books.bonfireBook.totalAmount.value).times(10)},inverseCost(N){return i.div(N,i.pow(.95,z.books.bonfireBook.totalAmount.value).times(10)).floor()},display:f(()=>t(C,null,[t("h3",null,[o("Bonfire")]),t("br",null,null),o("Burn 10,000 logs for 10 coal and 1000 ash"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(T.value),o(" logs/sec"),t("br",null,null),o("+"),le(O.value),o(" coal/sec"),t("br",null,null),o("+"),le(k.value),o(" ash/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(D.cost)),o(" "),D.resource.displayName])),onPurchase(N){d.value=i.sub(d.value,N).max(0),M.value=i.add(M.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(ze.bought.value)})),{min:de,max:_,add:Q,remove:U}=bl({buyable:D,active:M}),ie=I(0),Oe=Z(()=>i.times(ie.value,1e6)),Ce=Z(()=>{let N=i.times(ie.value,1e4);return v.elfTraining.kilnElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),Ze=Z(()=>{let N=i.times(ie.value,1e4);return v.elfTraining.kilnElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),Ne=Ae(()=>({resource:ge.logs,cost(){let N=this.amount.value;return i.gte(N,100)&&(N=i.pow(N,2).div(100)),i.gte(N,1e4)&&(N=i.pow(N,2).div(1e4)),N=i.pow(.95,z.books.kilnBook.totalAmount.value).times(N),i.pow(1.1,N).times(1e7)},inverseCost(N){let R=i.div(N,1e7).log(1.1);return R=R.div(i.pow(.95,z.books.kilnBook.totalAmount.value)),i.gte(R,1e4)&&(R=i.mul(R,1e4).root(2)),i.gte(R,100)&&(R=i.mul(R,100).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Charcoal Kiln")]),t("br",null,null),o("Burn 1,000,000 logs for 10,000 coal and 10,000 ash"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(Oe.value),o(" logs/sec"),t("br",null,null),o("+"),le(Ce.value),o(" coal/sec"),t("br",null,null),o("+"),le(Ze.value),o(" ash/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(Ne.cost)),o(" "),Ne.resource.displayName])),onPurchase(){ie.value=i.add(ie.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(E.bought.value)})),{min:fe,max:we,add:xe,remove:Fe}=bl({buyable:Ne,active:ie}),ue=I(0),x=Z(()=>i.times(i.pow(ue.value,ce.row2Upgrades[1].bought.value?2:1),5e7).times(Zi.efficientDrill.bought.value?2:1).times(v.elfTraining.smallfireElfTraining.milestones[2].earned.value?2:1).times(v.elfTraining.bonfireElfTraining.milestones[2].earned.value?2:1).times(v.elfTraining.kilnElfTraining.milestones[2].earned.value?2:1)),$=Ae(()=>({resource:Zi.metal,cost(){let N=this.amount.value;i.gte(N,100)&&(N=i.pow(N,2).div(100)),i.gte(N,1e4)&&(N=i.pow(N,2).div(1e4)),N=i.pow(.95,z.books.coalDrillBook.totalAmount.value).times(N);let R=i.pow(1.15,N).times(10);return v.elfTraining.fertilizerElfTraining.milestones[2].earned.value&&(R=R.div(i.add(ge.totalLogs.value,Math.E).ln())),v.elfTraining.coalDrillElfTraining.milestones[2].earned.value&&(R=R.div(10)),R},inverseCost(N){v.elfTraining.coalDrillElfTraining.milestones[2].earned.value&&(N=i.mul(N,10)),v.elfTraining.fertilizerElfTraining.milestones[2].earned.value&&(N=i.mul(N,i.add(ge.totalLogs.value,Math.E).ln()));let R=i.div(N,10).log(1.15);return R=R.div(i.pow(.95,z.books.coalDrillBook.totalAmount.value)),i.gte(R,1e4)&&(R=i.mul(R,1e4).root(2)),i.gte(R,100)&&(R=i.mul(R,100).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Coal Drill")]),t("br",null,null),o("Dig through the ground to find 50,000,000 coal"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("+"),le(x.value),o(" coal/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m($.cost)),o(" "),$.resource.displayName])),onPurchase(){ue.value=i.add(ue.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(Zi.coalDrill.bought.value)})),{max:Ie,min:Wi,add:ei,remove:De}=bl({buyable:$,active:ue}),Ee=B(()=>({resource:A(a),cost:5,display:{title:"Warmer Cutters",description:"Cut down twice as many trees/s"},style:{color:s}})),Ci=B(()=>({resource:A(a),cost:5,display:{title:"Warmer Planters",description:"Plant twice as many trees/s"},style:{color:s}})),Ke=B(()=>({resource:A(r),cost:5e3,display:{title:"Ashy Soil",description:"Trees give 25% more logs"},style:{color:s}})),ze=B(()=>({resource:X,cost:10,display:{title:"Bigger Fires",description:"Put all those fires together into a larger blaze"},onPurchase(){X.value=i.add(X.value,this.cost)},style:{color:s}})),ii=[Ee,Ci,Ke,ze],mi=B(()=>({resource:A(a),cost:250,display:{title:"Dedicated Cutter Heaters",description:"Double the bonus from Heated Cutters"},style:{color:s},visibility:()=>y(ze.bought.value)})),he=B(()=>({resource:A(a),cost:250,display:{title:"Dedicated Planter Heaters",description:"Double the bonus from Heated Planters"},style:{color:s},visibility:()=>y(ze.bought.value)})),Re=B(()=>({canAfford(){return i.gte(ge.logs.value,1e5)&&i.gte(r.value,1e5)},onPurchase(){ge.logs.value=i.sub(ge.logs.value,1e5),r.value=i.sub(r.value,1e5)},display:f(()=>t(C,null,[t("h3",null,[o("Mulched Soil")]),t("br",null,null),o("Double the bonus from Fertilized Soil"),t("br",null,null),t("br",null,null),o("Cost: "),re(1e5),o(" "),ge.logs.displayName,t("br",null,null),re(1e5),o(" "),r.displayName])),style:{color:s},visibility:()=>y(ze.bought.value)})),E=B(()=>({resource:ge.logs,cost:1e7,display:{title:"Efficient Fires",description:"Move the fires underground to keep the coal from turning to ash"},style:{color:s},visibility:()=>y(ze.bought.value)})),oe=[mi,he,Re,E],Ve=B(()=>({resource:A(a),cost:1e19,display:{title:"Efficient Crucibles",description:"Double auto smelting speed and triple metal gain from auto smelting"},style:{color:s},visibility:()=>y(ce.depthMilestones[4].earned.value)})),Hi=B(()=>({resource:A(a),cost:1e45,display:{title:"Arsonist Assistance",description:"Every elf at or above level 5 doubles ash gain"},style:{color:s},visibility:()=>y(v.elfTraining.coalDrillElfTraining.milestones[3].earned.value)})),vi=B(()=>({resource:A(a),cost:1e50,display:{title:"Refined Coal",description:"Refineries boost coal gain"},style:{color:s},visibility:()=>y(v.elfTraining.coalDrillElfTraining.milestones[3].earned.value)})),_e=B(()=>({resource:A(a),cost:1e55,display:{title:"Colored Fire",description:"Green dye also affects small fire synergy"},style:{color:s},visibility:()=>y(v.elfTraining.coalDrillElfTraining.milestones[3].earned.value)})),li=[Ve,Hi,vi,_e],Li=Ae(()=>({resource:A(a),cost(){let N=this.amount.value;return i.gte(N,50)&&(N=i.pow(N,2).div(50)),i.gte(N,200)&&(N=i.pow(N,2).div(200)),i.gte(N,2e6)&&(N=i.pow(N,2).div(2e6)),N=i.pow(.95,z.books.heatedCuttersBook.totalAmount.value).times(N),v.elfTraining.heatedCutterElfTraining.milestones[0].earned.value&&(N=i.pow(.95,z.books.heatedCuttersBook.totalAmount.value).times(N)),N=N.div(zi.boosts.rainbow1.value),i.add(N,1).pow(2.5).times(10)},inverseCost(N){let R=i.div(N,10).root(2.5).sub(1);return R=R.mul(zi.boosts.rainbow1.value),v.elfTraining.heatedCutterElfTraining.milestones[0].earned.value&&(R=R.div(i.pow(.95,z.books.heatedCuttersBook.totalAmount.value))),R=R.div(i.pow(.95,z.books.heatedCuttersBook.totalAmount.value)),i.gte(R,2e6)&&(R=i.mul(R,2e6).root(2)),i.gte(R,200)&&(R=i.mul(R,200).root(2)),i.gte(R,50)&&(R=i.mul(R,50).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:{title:"Heated Cutters",description:"Even warmer cutters cut down trees faster",effectDisplay:f(()=>t(C,null,[o("Cutters cut down trees "),le(q.value),o("x faster")]))},style:{color:s},visibility:()=>y(Ee.bought.value)})),ji=Ae(()=>({resource:A(a),cost(){let N=this.amount.value;return i.gte(N,50)&&(N=i.pow(N,2).div(50)),i.gte(N,200)&&(N=i.pow(N,2).div(200)),i.gte(N,2e6)&&(N=i.pow(N,2).div(2e6)),N=i.pow(.95,z.books.heatedPlantersBook.totalAmount.value).times(N),v.elfTraining.heatedPlanterElfTraining.milestones[0].earned.value&&(N=i.pow(.95,z.books.heatedPlantersBook.totalAmount.value).times(N)),N=N.div(zi.boosts.rainbow1.value),i.add(N,1).pow(2.5).times(10)},inverseCost(N){let R=i.div(N,10).root(2.5).sub(1);return R=R.mul(zi.boosts.rainbow1.value),v.elfTraining.heatedPlanterElfTraining.milestones[0].earned.value&&(R=R.div(i.pow(.95,z.books.heatedPlantersBook.totalAmount.value))),R=R.div(i.pow(.95,z.books.heatedPlantersBook.totalAmount.value)),i.gte(R,2e6)&&(R=i.mul(R,2e6).root(2)),i.gte(R,200)&&(R=i.mul(R,200).root(2)),i.gte(R,50)&&(R=i.mul(R,50).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:{title:"Heated Planters",description:"Even warmer planters plant trees faster",effectDisplay:f(()=>t(C,null,[o("Planters plant trees "),le(_i.value),o("x faster")]))},style:{color:s},visibility:()=>y(Ci.bought.value)})),ne=Ae(()=>({resource:A(r),cost(){let N=this.amount.value;return i.gte(N,50)&&(N=i.pow(N,2).div(50)),i.gte(N,200)&&(N=i.pow(N,2).div(200)),i.gte(N,2e6)&&(N=i.pow(N,2).div(2e6)),N=i.pow(.95,z.books.fertilizerBook.totalAmount.value).times(N),v.elfTraining.fertilizerElfTraining.milestones[1].earned.value&&(N=i.pow(.95,z.books.fertilizerBook.totalAmount.value).times(N)),N=N.div(zi.boosts.rainbow1.value),i.add(N,1).pow(1.5).times(5e4)},inverseCost(N){let R=i.div(N,5e4).root(1.5).sub(1);return R=R.mul(zi.boosts.rainbow1.value),v.elfTraining.fertilizerElfTraining.milestones[1].earned.value&&(R=R.div(i.pow(.95,z.books.fertilizerBook.totalAmount.value))),R=R.div(i.pow(.95,z.books.fertilizerBook.totalAmount.value)),i.gte(R,2e6)&&(R=i.mul(R,2e6).root(2)),i.gte(R,200)&&(R=i.mul(R,200).root(2)),i.gte(R,50)&&(R=i.mul(R,50).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:{title:"Fertilized Soil",description:"More fertilizer helps trees grow bigger",effectDisplay:f(()=>t(C,null,[o("Trees give "),le(Pe.value),o("x more logs")]))},style:{color:s},visibility:()=>y(Ke.bought.value)})),Xe=[Li,ji,ne],P=be(()=>[je(()=>({addend(){return i.times(Li.amount.value,.25)},description:"Heated Cutters",enabled(){return i.gt(Li.amount.value,0)}})),p(()=>({multiplier:2,description:"Dedicated Cutter Heaters",enabled:()=>mi.bought.value}))]),q=Z(()=>P.apply(1)),$i=be(()=>[je(()=>({addend(){return i.times(ji.amount.value,.25)},description:"Heated Planters",enabled(){return i.gt(ji.amount.value,0)}})),p(()=>({multiplier:2,description:"Dedicated Planter Heaters",enabled:()=>he.bought.value}))]),_i=Z(()=>$i.apply(1)),Mi=be(()=>[je(()=>({addend(){return i.times(ne.amount.value,.25)},description:"Fertilized Soil",enabled(){return i.gt(ne.amount.value,0)}})),p(()=>({multiplier:2,description:"Mulched Soil",enabled:()=>Re.bought.value}))]),Pe=Z(()=>Mi.apply(1)),gi=be(()=>[je(()=>({addend(){return c.value},description:"Small Fires",enabled(){return i.gt(d.value,0)}})),je(()=>({addend(){return O.value},description:"Bonfires",enabled(){return i.gt(M.value,0)}})),je(()=>({addend(){return Ce.value},description:"Charcoal Kilns",enabled(){return i.gt(ie.value,0)}})),je(()=>({addend(){return x.value},description:"Coal Drills",enabled(){return i.gt(ue.value,0)}})),p(()=>({multiplier:2,description:"Carry coal in boxes",enabled:si.upgrades.coalUpgrade.bought})),p(()=>({multiplier:()=>i.div(si.buyables.coalBoxesBuyable.amount.value,2).add(1),description:"Carry more coal",enabled:si.upgrades.coalUpgrade.bought})),p(()=>({multiplier:()=>{let N=J.amount.value;v.elfTraining.smallfireElfTraining.milestones[0].earned.value&&(N=i.div(D.amount.value,10).add(N));let R=i.div(N,1e4).add(1);return _e.bought.value&&(R=i.add(R,Ye.dyes.green.amount.value)),R},description:"Small Fires Synergy",enabled:ye.elves.smallFireElf.bought})),p(()=>({multiplier:()=>i.div(D.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:ye.elves.bonfireElf.bought})),p(()=>({multiplier:()=>i.div(Ne.amount.value,100).times(Ye.boosts.green2.value).add(1),description:"Kiln Synergy",enabled:ye.elves.kilnElf.bought})),p(()=>({multiplier:2,description:"Mining overalls",enabled:Yi.metalUpgrades.metalUpgrade2.bought})),p(()=>({multiplier:3,description:"Mining helmet",enabled:Yi.metalUpgrades.metalUpgrade3.bought})),p(()=>({multiplier:4,description:"Felt-Gripped Pick",enabled:Yi.metalUpgrades.metalUpgrade4.bought})),p(()=>({multiplier:2,description:"12 Elves Trained",enabled:ye.milestones[11].earned})),tl(()=>({exponent:1.25,description:"3 Elves Trained",enabled:ye.milestones[2].earned,supportLowNumbers:!0})),p(()=>({multiplier:()=>i.mul(ce.depth.value,.25).pow(v.elfTraining.coalDrillElfTraining.milestones[4].earned.value?1.5:1).add(1),description:"5m Well Depth",enabled:ce.depthMilestones[0].earned})),p(()=>({multiplier:ce.extractorCoal,description:"Heavy Extractor",enabled:()=>i.gt(ce.activeExtractor.value,0)})),p(()=>({multiplier:i.add(a.value,1).log10().add(1).sqrt(),description:"Peppermint Level 2",enabled:v.elfTraining.coalDrillElfTraining.milestones[1].earned})),p(()=>({multiplier:i.add(ai.buildRefinery.amount.value,1).sqrt(),description:"Refined Coal",enabled:vi.bought})),tl(()=>({exponent:1.05,description:"Jack Level 2",enabled:v.elfTraining.heatedCutterElfTraining.milestones[1].earned}))]),ol=Z(()=>gi.apply(0)),Cl=be(()=>[je(()=>({addend(){return b.value},description:"Small Fires",enabled(){return i.gt(d.value,0)}})),je(()=>({addend(){return k.value},description:"Bonfires",enabled(){return i.gt(M.value,0)}})),je(()=>({addend(){return Ze.value},description:"Charcoal Kilns",enabled(){return i.gt(ie.value,0)}})),p(()=>({multiplier:2,description:"Carry ash in boxes",enabled:si.upgrades.ashUpgrade.bought})),p(()=>({multiplier:()=>i.div(si.buyables.ashBoxesBuyable.amount.value,2).add(1),description:"Carry more ash",enabled:si.upgrades.ashUpgrade.bought})),p(()=>({multiplier:()=>{let N=J.amount.value;return v.elfTraining.smallfireElfTraining.milestones[0].earned.value&&(N=i.div(D.amount.value,100).add(N)),i.div(N,1e3).add(1)},description:"Small Fires Synergy",enabled:ye.elves.smallFireElf.bought})),p(()=>({multiplier:()=>i.div(D.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:ye.elves.bonfireElf.bought})),p(()=>({multiplier:()=>i.div(Ne.amount.value,100).times(Ye.boosts.green2.value).add(1),description:"Kiln Synergy",enabled:ye.elves.kilnElf.bought})),p(()=>({multiplier:4,description:"Mining boots",enabled:Yi.metalUpgrades.metalUpgrade1.bought})),p(()=>({multiplier:()=>i.pow(2,v.level5Elves.value),description:"Arson Assistance",enabled:Hi.bought})),tl(()=>({exponent:1.1,description:"Joy Level 2",enabled:v.elfTraining.smallfireElfTraining.milestones[1].earned})),tl(()=>({exponent:1.1,description:"Faith Level 2",enabled:v.elfTraining.bonfireElfTraining.milestones[1].earned})),tl(()=>({exponent:1.1,description:"Snowball Level 2",enabled:v.elfTraining.kilnElfTraining.milestones[1].earned})),je(()=>({addend:z.paper,description:"Paper Burning",enabled:z.upgrades2.ashUpgrade.bought}))]),gl=Z(()=>Cl.apply(0)),Wl=be(()=>[je(()=>({addend(){return i.negate(u.value)},description:"Small Fires",enabled(){return i.gt(d.value,0)}})),je(()=>({addend(){return i.negate(T.value)},description:"Bonfires",enabled(){return i.gt(M.value,0)}})),je(()=>({addend(){return i.negate(Oe.value)},description:"Charcoal Kilns",enabled(){return i.gt(ie.value,0)}}))]),vl=Z(()=>Wl.apply(0)),[Ol,ae]=rl(()=>[{title:"Log Consumption",modifier:Wl,base:0,visible(){return i.gt(d.value,0)||i.gt(M.value,0)||i.gt(ie.value,0)}},{title:"Coal Gain",modifier:gi,base:0,visible(){return i.gt(d.value,0)||i.gt(M.value,0)||i.gt(ie.value,0)}},{title:"Ash Gain",modifier:Cl,base:0,visible(){return i.gt(d.value,0)||i.gt(M.value,0)||i.gt(ie.value,0)}}]),He=me(!1),bi=f(()=>t(Si,{modelValue:He.value,"onUpdate:modelValue":N=>He.value=N},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Ol}));yi.on("update",N=>{i.lt(V.day.value,$n)||i.times(N,vl.value).negate().gt(ge.logs.value)||(ge.logs.value=i.times(N,vl.value).plus(ge.logs.value),a.value=i.times(N,ol.value).plus(a.value),r.value=i.times(N,gl.value).plus(r.value),d.value=i.max(d.value,0))});const{total:Bi,trackerDisplay:dl}=wl({resource:a,goal:1e7,name:e,day:$n,color:l,modal:{show:He,display:bi}}),ni={coal:I(0),totalCoal:I(0),ash:I(0),activeFires:I(0),buildFire:{amount:I(0)},activeBonfires:I(0),buildBonfire:{amount:I(0)},activeKilns:I(0),buildKiln:{amount:I(0)},activeDrills:I(0),buildDrill:{amount:I(0)},warmerCutters:{bought:I(!1)},warmerPlanters:{bought:I(!1)},basicFertilizer:{bought:I(!1)},unlockBonfire:{bought:I(!1)},dedicatedCutters:{bought:I(!1)},dedicatedPlanters:{bought:I(!1)},betterFertilizer:{bought:I(!1)},unlockKiln:{bought:I(!1)},efficientSmelther:{bought:I(!1)},arsonistAssistance:{bought:I(!1)},refinedCoal:{bought:I(!1)},coloredFire:{bought:I(!1)},heatedCutters:{amount:I(0)},heatedPlanters:{amount:I(0)},moreFertilizer:{amount:I(0)}},ri=I(!1),Oi=Z(()=>{var N;return ri.value||((N=V.currentlyMastering.value)==null?void 0:N.name)===e});return{name:e,day:$n,color:l,coal:a,totalCoal:Bi,computedCoalGain:ol,ash:r,activeFires:d,buildFire:J,activeBonfires:M,buildBonfire:D,activeKilns:ie,buildKiln:Ne,activeDrills:ue,buildDrill:$,warmerCutters:Ee,warmerPlanters:Ci,basicFertilizer:Ke,unlockBonfire:ze,dedicatedCutters:mi,dedicatedPlanters:he,betterFertilizer:Re,unlockKiln:E,efficientSmelther:Ve,arsonistAssistance:Hi,refinedCoal:vi,coloredFire:_e,heatedCutters:Li,heatedPlanters:ji,moreFertilizer:ne,computedHeatedCutterEffect:q,computedHeatedPlanterEffect:_i,computedFertilizerEffect:Pe,generalTabCollapsed:ae,minWidth:700,display:f(()=>t(C,null,[We(dl),t(pe,null,null),Oi.value?t(C,null,[o("Decoration effect: Small fires' price increases drastically slower"),t(pe,null,null)]):null,t(Ui,{resource:a,color:l,style:{marginBottom:0},resourceStyle:{textShadow:"grey 0px 0px 10px"},effectDisplay:i.gt(ol.value,0)?`+${le(ol.value)}/s`:void 0},null),t(pe,null,null),t(Ui,{resource:r,color:n,style:"margin-bottom: 0",effectDisplay:i.gt(gl.value,0)?`+${le(gl.value)}/s`:void 0},null),t(pe,null,null),t(rn,null,{default:()=>[t(ll,null,{default:()=>[We(J),t("div",null,[re(i.floor(d.value)),o("/"),re(i.floor(J.amount.value))]),ci(h,F,j,W)]}),ze.bought.value?t(C,null,[t(pe,null,null),t(ll,null,{default:()=>[We(D),t("div",null,[re(M.value),o("/"),re(D.amount.value)]),ci(de,U,Q,_)]})]):void 0,E.bought.value?t(C,null,[t(pe,null,null),t(ll,null,{default:()=>[We(Ne),t("div",null,[re(ie.value),o("/"),re(Ne.amount.value)]),ci(fe,Fe,xe,we)]})]):void 0,Zi.coalDrill.bought.value?t(C,null,[t(pe,null,null),t(ll,null,{default:()=>[We($),t("div",null,[re(ue.value),o("/"),re($.amount.value)]),ci(Wi,De,ei,Ie)]})]):void 0]}),t(pe,null,null),fl(ii,oe,li),ci(...Xe)])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(a.value),o(" "),a.displayName])])),mastery:ni,mastered:ri}});const qI="management",nn=12,sl=13,v=Di(qI,()=>{const e="Management",l="green",n=qi(()=>({direction:Be.Right,width:600,height:25,fillStyle:`backgroundColor: ${l}`,progress:()=>V.day.value===nn?li.reduce((K,Ue)=>K+Math.min(1,Ue.level.value/3),0)/li.length:V.day.value===sl&&V.days[sl-1].opened.value?Li.reduce((K,Ue)=>K+Math.min(1,Ue.level.value/5),0)/Li.length:1,display:f(()=>V.day.value===nn||V.day.value===sl&&V.days[sl-1].opened.value?t(C,null,[re(i.times(m(n.progress),V.day.value===sl?80:36)),o("/"),V.day.value===sl?80:36,o(" elf levels")]):"")})),s=Z(()=>{let K=0;for(const Ue of Object.values(_e))K+=Ue.level.value;return K}),a=Z(()=>Object.values(_e).reduce((K,Ue)=>K.add(Ue.exp.value),new i(0))),r=Z(()=>Object.values(_e).filter(K=>K.level.value>=5).length),d=B(()=>({display:{title:"Teach the Elves",description:"The Elves probably need to be taught if they're to do better. Maybe you'll build a school so you can teach them?"},resource:ge.logs,cost:1e21,visibility:()=>y(!V.isMastery.value)})),u=B(()=>({display:{title:"Add a Classroom?",description:"Yay, you have a school. Too bad it has pretty much nothing in it. Maybe you could add some classrooms to make it less boring and more enticing to the Elves?"},visibility:()=>y(d.bought.value),resource:si.boxes,style:"width: 150px",cost:1e13})),c=B(()=>({display:{title:"Advanced Training",description:"Time for some advanced training! Now that all the elves know the basics, you have a foundation you can truly build off of. Everyone seems to be learning twice as quickly!"},visibility:()=>y(!V.isMastery.value&&V.day.value>=sl&&V.days[sl-1].opened.value),resource:si.boxes,style:"width: 150px",cost:1e25})),b=be(()=>[p(()=>({multiplier:N,description:"Classroom Effect",enabled:u.bought})),p(()=>({multiplier:2,description:"Advanced Training",enabled:c.bought})),p(()=>({multiplier:2,description:"Star Level 4",enabled:de[3].earned.value})),p(()=>({multiplier:2,description:"Carry experience in boxes???",enabled:si.row3Upgrades.xpUpgrade.bought}))]),J=Z(()=>b.apply(1));function h(K,Ue,...pi){const el=I(0);let jl=["Holly","Ivy","Hope","Jack","Mary","Noel","Joy","Faith","Snowball","Star","Bell","Gingersnap","Peppermint","Frosty","Cocoa","Twinkle","Carol"].indexOf(K.name)+1;(K.name=="Star"||K.name=="Bell")&&(jl/=3);const H=4e3*jl,se=Z(()=>i.pow(5,ul.value).mul(H)),ul=Z(()=>i.affordGeometricSeries(el.value,H,5,0).min(ri.amount.value).toNumber()),Vs=Z(()=>i.sub(el.value,i.sumGeometricSeries(ul.value,H,5,0))),Mt=qi(()=>({direction:Be.Right,width:160,height:14,style:()=>({"margin-top":"8px",background:l,"box-shadow":Ne.value==K.name?"0 0 12px black":ne.value[K.name]?"0 0 12px white":""}),baseStyle:"margin-top: -1px",fillStyle:()=>({"margin-top":"-1px","transition-duration":"0s",background:"white",animation:ne.value[K.name]?".5s focused-xp-bar linear infinite":""}),borderStyle:()=>i.gte(ul.value,ri.amount.value)?"border-color: red":"",progress:()=>i.div(Vs.value,se.value),display:f(()=>i.gte(ul.value,ri.amount.value)?t(C,null,[o("Limit reached")]):t(C,null,[le(Vs.value),o("/"),le(se.value),o(" XP")]))})),{collapseMilestones:Xt,display:xt}=dn(Ue),Ws=be(()=>[p(()=>({multiplier:J,description:"Global XP Multiplier"})),p(()=>({multiplier:ji,description:"Focus Multiplier",enabled:()=>i.gt(P.value,0)&&ne.value[K.name]==!0})),...pi]),vs=Z(()=>Ws.apply(.1));return Qi(()=>({display:{title:f(()=>t(C,null,[K.name,o(" - LV "),re(ul.value)])),description:f(()=>t(C,null,[K.name,o(" can buy buyables "),re(K.computedAutoBuyCooldown.value)," ",o("times per second, gaining")," ",i.gte(ul.value,ri.amount.value)?0:le(i.mul(vs.value,K.computedAutoBuyCooldown.value))," ",o("XP/sec."),We(Mt)]))},style:()=>({width:"190px",background:Ne.value==K.name?"var(--accent2)":""}),onClick(){Ne.value=K.name},canClick(){return Ne.value!==K.name},visibility:()=>y(K.bought.value),name:K.name,state:Xt,displayMilestone:xt,level:ul,exp:el,milestones:Ue,timeForExp:K.computedAutoBuyCooldown,amountOfTimesDone:K.amountOfTimesDone,elfXPGainComputed:vs,elfXPGain:Ws}))}const W=[G(()=>({display:{requirement:"Holly Level 1",effectDisplay:f(()=>t(C,null,[o("Multiply log gain by "),t("sup",null,[o("9")]),t(Zl,null,{default:()=>[o("Cutter amount")]}),o(".")]))},shouldEarn:()=>we.level.value>=1})),G(()=>({display:{requirement:"Holly Level 2",effectDisplay:"Holly now buys max."},visibility:()=>y(W[0].earned.value),shouldEarn:()=>we.level.value>=2})),G(()=>({display:{requirement:"Holly Level 3",effectDisplay:f(()=>t(C,null,[o("Multiply all cloth actions' effectiveness by log"),t("sub",null,[o("10")]),o("(Cutter amount).")]))},visibility:()=>y(W[1].earned.value),shouldEarn:()=>we.level.value>=3})),G(()=>({display:{requirement:"Holly Level 4",effectDisplay:"Multiply auto cutting amount by 1.1 per day completed"},visibility:()=>y(W[2].earned.value&&V.day.value>=13),shouldEarn:()=>we.level.value>=4})),G(()=>({display:{requirement:"Holly Level 5",effectDisplay:"Unlock an elf that autobuys oil drills and extractors."},visibility:()=>y(W[3].earned.value&&V.day.value>=13),shouldEarn:()=>we.level.value>=5,onComplete(){V.days[3].recentlyUpdated.value=!0}}))],j=[G(()=>({display:{requirement:"Ivy Level 1",effectDisplay:"Planters are now twice as efficent."},shouldEarn:()=>xe.level.value>=1})),G(()=>({display:{requirement:"Ivy Level 2",effectDisplay:"Ivy now buys max."},visibility:()=>y(j[0].earned.value),shouldEarn:()=>xe.level.value>=2})),G(()=>({display:{requirement:"Ivy Level 3",effectDisplay:f(()=>t(C,null,[o("Auto planting speed is multiplied by 2"),t("sup",null,[o("(log"),t("sub",null,[o("10")]),o("(trees"),t("sup",null,[o("0.2")]),o("))")])]))},visibility:()=>y(j[1].earned.value),shouldEarn:()=>xe.level.value>=3})),G(()=>({display:{requirement:"Ivy Level 4",effectDisplay:"Divide planter cost by 10"},visibility:()=>y(j[2].earned.value&&V.day.value>=13),shouldEarn:()=>xe.level.value>=4})),G(()=>({display:{requirement:"Ivy Level 5",effectDisplay:"The lesser of auto planting and cutting amounts is increased to match the greater"},visibility:()=>y(j[3].earned.value&&V.day.value>=13),shouldEarn:()=>xe.level.value>=5}))],F=[G(()=>({display:{requirement:"Hope Level 1",effectDisplay:"Forest size grows by trees planted per second raised to ^0.99"},shouldEarn:()=>Fe.level.value>=1})),G(()=>({display:{requirement:"Hope Level 2",effectDisplay:"Hope now buys max."},visibility:()=>y(F[0].earned.value),shouldEarn:()=>Fe.level.value>=2})),G(()=>({display:{requirement:"Hope Level 3",effectDisplay:"The workshop can be expanded past 100%, but costs scale faster."},visibility:()=>y(F[1].earned.value),shouldEarn:()=>Fe.level.value>=3})),G(()=>({display:{requirement:"Hope Level 4",effectDisplay:"Unlock an elf that autobuys coal drills."},visibility:()=>y(F[2].earned.value&&V.day.value>=13),shouldEarn:()=>Fe.level.value>=4,onComplete(){V.days[3].recentlyUpdated.value=!0}})),G(()=>({display:{requirement:"Hope Level 5",effectDisplay:"Raise workshop expansion cost by 0.99"},visibility:()=>y(F[3].earned.value&&V.day.value>=13),shouldEarn:()=>Fe.level.value>=5}))],X=[G(()=>({display:{requirement:"Jack Level 1",effectDisplay:'"Fahrenheit 451" affects "Heated Cutters" twice.'},shouldEarn:()=>x.level.value>=1})),G(()=>({display:{requirement:"Jack Level 2",effectDisplay:"Coal gain is raised to the ^1.05"},visibility:()=>y(X[0].earned.value),shouldEarn:()=>x.level.value>=2})),G(()=>({display:{requirement:"Jack Level 3",effectDisplay:"Jack and Joy now buy max."},visibility:()=>y(X[1].earned.value),shouldEarn:()=>x.level.value>=3})),G(()=>({display:{requirement:"Jack Level 4",effectDisplay:f(()=>t(C,null,[o("Oil gain is multiplied by "),t(Zl,null,{default:()=>[o("total elf levels")]}),o(".")]))},visibility:()=>y(X[2].earned.value&&V.day.value>=13),shouldEarn:()=>x.level.value>=4})),G(()=>({display:{requirement:"Jack Level 5",effectDisplay:"Unlock an elf that autobuys oil-using machines."},visibility:()=>y(X[3].earned.value&&V.day.value>=13),shouldEarn:()=>x.level.value>=5,onComplete(){V.days[3].recentlyUpdated.value=!0}}))],M=[G(()=>({display:{requirement:"Mary Level 1",effectDisplay:'"Tillamook Burn Country" affects "Heated Planters" twice.'},shouldEarn:()=>$.level.value>=1})),G(()=>({display:{requirement:"Mary Level 2",effectDisplay:"Metal gain is raised to the 1.1."},visibility:()=>y(M[0].earned.value),shouldEarn:()=>$.level.value>=2})),G(()=>({display:{requirement:"Mary Level 3",effectDisplay:"Mary and Faith now buy max."},visibility:()=>y(M[1].earned.value),shouldEarn:()=>$.level.value>=3})),G(()=>({display:{requirement:"Mary Level 4",effectDisplay:"Double automatic tree planting speed"},visibility:()=>y(M[2].earned.value&&V.day.value>=13),shouldEarn:()=>$.level.value>=4})),G(()=>({display:{requirement:"Mary Level 5",effectDisplay:f(()=>t(C,null,[o("Auto smelting speed is multiplied by "),t(Zl,null,{default:()=>[o("total XP/1e6")]}),o(".")]))},visibility:()=>y(M[3].earned.value&&V.day.value>=13),shouldEarn:()=>$.level.value>=5}))],T=[G(()=>({display:{requirement:"Noel Level 1",effectDisplay:f(()=>t(C,null,[o("Log gain is multiplied by "),t(Zl,null,{default:()=>[o("total elf levels")]}),o(".")]))},shouldEarn:()=>Ie.level.value>=1})),G(()=>({display:{requirement:"Noel Level 2",effectDisplay:`"The Garden Tree's Handbook" affects "Fertilized Soil" twice`},visibility:()=>y(T[0].earned.value),shouldEarn:()=>Ie.level.value>=2})),G(()=>({display:{requirement:"Noel Level 3",effectDisplay:"Divide the coal drill cost by ln(Total logs + e)"},visibility:()=>y(T[1].earned.value),shouldEarn:()=>Ie.level.value>=3})),G(()=>({display:{requirement:"Noel Level 4",effectDisplay:f(()=>t(C,null,[o("Reduce oil refinery cost by (Plastic amount)"),t("sup",null,[o("2")])]))},visibility:()=>y(T[2].earned.value&&V.day.value>=13),shouldEarn:()=>Ie.level.value>=4})),G(()=>({display:{requirement:"Noel Level 5",effectDisplay:"Unlock an elf that autobuys metal machines"},visibility:()=>y(T[3].earned.value&&V.day.value>=13),shouldEarn:()=>Ie.level.value>=5,onComplete(){V.days[3].recentlyUpdated.value=!0}}))],O=[G(()=>({display:{requirement:"Joy Level 1",effectDisplay:"Small Fire synergy counts bonfires at reduced rate."},shouldEarn:()=>ei.level.value>=1})),G(()=>({display:{requirement:"Joy Level 2",effectDisplay:"Raise ash gain to the 1.1"},visibility:()=>y(O[0].earned.value),shouldEarn:()=>ei.level.value>=2})),G(()=>({display:{requirement:"Joy Level 3",effectDisplay:"Coal drill is 2x more powerful"},visibility:()=>y(O[1].earned.value),shouldEarn:()=>ei.level.value>=3})),G(()=>({display:{requirement:"Joy Level 4",effectDisplay:"Metal gain is boosted by heavy drills"},visibility:()=>y(O[2].earned.value&&V.day.value>=13),shouldEarn:()=>ei.level.value>=4})),G(()=>({display:{requirement:"Joy Level 5",effectDisplay:"Raise Industrial Crucible's effect to the 1.1"},visibility:()=>y(O[3].earned.value&&V.day.value>=13),shouldEarn:()=>ei.level.value>=5}))],k=[G(()=>({display:{requirement:"Faith Level 1",effectDisplay:"Multiply bonfire efficiency by 5."},shouldEarn:()=>De.level.value>=1})),G(()=>({display:{requirement:"Faith Level 2",effectDisplay:"Raise ash gain to the 1.1"},visibility:()=>y(k[0].earned.value),shouldEarn:()=>De.level.value>=2})),G(()=>({display:{requirement:"Faith Level 3",effectDisplay:"Coal drill is 2x more powerful"},visibility:()=>y(k[1].earned.value),shouldEarn:()=>De.level.value>=3})),G(()=>({display:{requirement:"Faith Level 4",effectDisplay:"Oil gain is boosted by heavy drill drills"},visibility:()=>y(k[2].earned.value&&V.day.value>=13),shouldEarn:()=>De.level.value>=4})),G(()=>({display:{requirement:"Faith Level 5",effectDisplay:"Raise Industrial Crucible's effect to the 1.1"},visibility:()=>y(k[3].earned.value&&V.day.value>=13),shouldEarn:()=>De.level.value>=5}))],D=[G(()=>({display:{requirement:"Snowball Level 1",effectDisplay:"Multiply kiln efficiency by 5."},shouldEarn:()=>Ee.level.value>=1})),G(()=>({display:{requirement:"Snowball Level 2",effectDisplay:"Raise ash gain to the 1.1"},visibility:()=>y(D[0].earned.value),shouldEarn:()=>Ee.level.value>=2})),G(()=>({display:{requirement:"Snowball Level 3",effectDisplay:"Coal drill is 2x more powerful"},visibility:()=>y(D[1].earned.value),shouldEarn:()=>Ee.level.value>=3})),G(()=>({display:{requirement:"Snowball Level 4",effectDisplay:"Plastic gain is boosted by heavy extractors"},visibility:()=>y(D[2].earned.value&&V.day.value>=13),shouldEarn:()=>Ee.level.value>=4})),G(()=>({display:{requirement:"Snowball Level 5",effectDisplay:"Raise Industrial Crucible's effect to the 1.1"},visibility:()=>y(D[3].earned.value&&V.day.value>=13),shouldEarn:()=>Ee.level.value>=5}))],de=[G(()=>({display:{requirement:"Star Level 1",effectDisplay:"Book cost is divided by total books bought."},shouldEarn:()=>Ke.level.value>=1})),G(()=>({display:{requirement:"Star Level 2",effectDisplay:"Pulp requires 10x less ash"},visibility:()=>y(de[0].earned.value),shouldEarn:()=>Ke.level.value>=2})),G(()=>({display:{requirement:"Star Level 3",effectDisplay:"Book cost scaling 5x -> 4x"},visibility:()=>y(de[1].earned.value),shouldEarn:()=>Ke.level.value>=3})),G(()=>({display:{requirement:"Star Level 4",effectDisplay:"Double all elf xp gain"},visibility:()=>y(de[2].earned.value&&V.day.value>=13),shouldEarn:()=>Ke.level.value>=4})),G(()=>({display:{requirement:"Star Level 5",effectDisplay:"Gain 5 free books for all prior elves that are at level 5 or above."},visibility:()=>y(de[3].earned.value&&V.day.value>=13),shouldEarn:()=>Ke.level.value>=5}))],_=[G(()=>({display:{requirement:"Bell Level 1",effectDisplay:f(()=>t(C,null,[o("Every box buyable adds "),t(Zl,null,{default:()=>[o("level")]}),o(" levels to same-row box buyables.")]))},shouldEarn:()=>ze.level.value>=1})),G(()=>({display:{requirement:"Bell Level 2",effectDisplay:"Box gain ^1.1"},visibility:()=>y(_[0].earned.value),shouldEarn:()=>ze.level.value>=2})),G(()=>({display:{requirement:"Bell Level 3",effectDisplay:"All box buyables scaling bases -1"},visibility:()=>y(_[1].earned.value),shouldEarn:()=>ze.level.value>=3})),G(()=>({display:{requirement:"Bell Level 4",effectDisplay:"Unlock a second row of box buyables"},visibility:()=>y(_[2].earned.value&&V.day.value>=13),shouldEarn:()=>ze.level.value>=4,onComplete(){V.days[5].recentlyUpdated.value=!0}})),G(()=>({display:{requirement:"Bell Level 5",effectDisplay:"Unlock another row of box upgrades"},visibility:()=>y(_[3].earned.value&&V.day.value>=13),shouldEarn:()=>ze.level.value>=5,onComplete(){V.days[5].recentlyUpdated.value=!0}}))],Q=[G(()=>({display:{requirement:"Gingersnap Level 1",effectDisplay:"Multiply all primary dye colors by ln(cloth + e)."},shouldEarn:()=>ii.level.value>=1})),G(()=>({display:{requirement:"Gingersnap Level 2",effectDisplay:f(()=>t(C,null,[o("Multiply all cloth actions' effectiveness by log"),t("sub",null,[o("10")]),o("(dye sum + 10)")]))},visibility:()=>y(Q[0].earned.value),shouldEarn:()=>ii.level.value>=2})),G(()=>({display:{requirement:"Gingersnap Level 3",effectDisplay:"Double all dye colors and cloth actions, but reset all dyes."},visibility:()=>y(Q[1].earned.value),shouldEarn:()=>ii.level.value>=3,onComplete(){["red","yellow","blue","orange","green","purple"].forEach(K=>{Ye.dyes[K].amount.value=0,Ye.dyes[K].buyable.amount.value=0})}})),G(()=>({display:{requirement:"Gingersnap Level 4",effectDisplay:"Raise secondary dyes' first effects to the 1.1 but reset primary dyes"},visibility:()=>y(Q[2].earned.value&&V.day.value>=13),shouldEarn:()=>ii.level.value>=4,onComplete(){["red","yellow","blue"].forEach(K=>{Ye.dyes[K].amount.value=0,Ye.dyes[K].buyable.amount.value=0})}})),G(()=>({display:{requirement:"Gingersnap Level 5",effectDisplay:"Unlock another row of focus upgrades"},visibility:()=>y(Q[3].earned.value&&V.day.value>=13),shouldEarn:()=>ii.level.value>=5,onComplete(){V.days[12].recentlyUpdated.value=!0}}))],U=[G(()=>({display:{requirement:"Peppermint Level 1",effectDisplay:"The coal drill exponent is increased from 2 to 2.5"},shouldEarn:()=>he.level.value>=1})),G(()=>({display:{requirement:"Peppermint Level 2",effectDisplay:"Coal boosts its own gain"},visibility:()=>y(U[0].earned.value),shouldEarn:()=>he.level.value>=2})),G(()=>({display:{requirement:"Peppermint Level 3",effectDisplay:"The coal drill cost is 10x cheaper"},visibility:()=>y(U[1].earned.value),shouldEarn:()=>he.level.value>=3})),G(()=>({display:{requirement:"Peppermint Level 4",effectDisplay:"Unlock 3 coal upgrades"},visibility:()=>y(U[2].earned.value&&V.day.value>=13),shouldEarn:()=>he.level.value>=4,onComplete(){V.days[2].recentlyUpdated.value=!0}})),G(()=>({display:{requirement:"Peppermint Level 5",effectDisplay:"Well depth boosts coal gain an additional half time"},visibility:()=>y(U[3].earned.value&&V.day.value>=13),shouldEarn:()=>he.level.value>=5}))],ie=[G(()=>({display:{requirement:"Twinkle Level 1",effectDisplay:"Schools multiply metal gain per ore"},shouldEarn:()=>Re.level.value>=1})),G(()=>({display:{requirement:"Twinkle Level 2",effectDisplay:"Each Twinkle level multiplies auto smelting speed by 1.25"},visibility:()=>y(ie[0].earned.value),shouldEarn:()=>Re.level.value>=2})),G(()=>({display:{requirement:"Twinkle Level 3",effectDisplay:"Auto smelting multi is tripled."},visibility:()=>y(ie[1].earned.value),shouldEarn:()=>Re.level.value>=3})),G(()=>({display:{requirement:"Twinkle Level 4",effectDisplay:"All metal machines are 10x cheaper"},visibility:()=>y(ie[2].earned.value&&V.day.value>=13),shouldEarn:()=>Re.level.value>=4})),G(()=>({display:{requirement:"Twinkle Level 5",effectDisplay:f(()=>t(C,null,[t(Zl,null,{default:()=>[o("Well depth")]}),o(" divides metal machine costs")]))},visibility:()=>y(ie[3].earned.value&&V.day.value>=13),shouldEarn:()=>Re.level.value>=5}))],Oe=[G(()=>({display:{requirement:"Cocoa Level 1",effectDisplay:"The depth boost to oil gain is better"},shouldEarn:()=>E.level.value>=1})),G(()=>({display:{requirement:"Cocoa Level 2",effectDisplay:"Total oil gained boosts drill power"},visibility:()=>y(Oe[0].earned.value),shouldEarn:()=>E.level.value>=2})),G(()=>({display:{requirement:"Cocoa Level 3",effectDisplay:"Double drill power and oil gain"},visibility:()=>y(Oe[1].earned.value),shouldEarn:()=>E.level.value>=3})),G(()=>({display:{requirement:"Cocoa Level 4",effectDisplay:"Plastics are produced 5x faster but cost 5x as much oil"},visibility:()=>y(Oe[2].earned.value&&V.day.value>=13),shouldEarn:()=>E.level.value>=4})),G(()=>({display:{requirement:"Cocoa Level 5",effectDisplay:"Unlock another row of oil upgrades"},visibility:()=>y(Oe[3].earned.value&&V.day.value>=13),shouldEarn:()=>E.level.value>=5,onComplete(){V.days[8].recentlyUpdated.value=!0}}))],Ce=[G(()=>({display:{requirement:"Frosty Level 1",effectDisplay:"Oil boosts Star and Bell's xp gain"},shouldEarn:()=>oe.level.value>=1})),G(()=>({display:{requirement:"Frosty Level 2",effectDisplay:"Oil pumps are 10x cheaper"},visibility:()=>y(Ce[0].earned.value),shouldEarn:()=>oe.level.value>=2})),G(()=>({display:{requirement:"Frosty Level 3",effectDisplay:"Oil burners act like there are ^1.5 of them"},visibility:()=>y(Ce[1].earned.value),shouldEarn:()=>oe.level.value>=3})),G(()=>({display:{requirement:"Frosty Level 4",effectDisplay:f(()=>t(C,null,[o("Heavy drill drill's ln is now log"),t("sub",null,[o("2.5")])]))},visibility:()=>y(Ce[2].earned.value&&V.day.value>=13),shouldEarn:()=>oe.level.value>=4})),G(()=>({display:{requirement:"Frosty Level 5",effectDisplay:"Unlock another row of paper upgrades"},visibility:()=>y(Ce[3].earned.value&&V.day.value>=13),shouldEarn:()=>oe.level.value>=5,onComplete(){V.days[4].recentlyUpdated.value=!0}}))],Ze=[G(()=>({display:{requirement:"Carol Level 1",effectDisplay:"Double primary dye gain"},shouldEarn:()=>Ve.level.value>=1})),G(()=>({display:{requirement:"Carol Level 2",effectDisplay:"Double secondary dye gain"},shouldEarn:()=>Ve.level.value>=2,visibility:()=>y(Ze[0].earned.value)})),G(()=>({display:{requirement:"Carol Level 3",effectDisplay:"Buy maximum primary dyes"},shouldEarn:()=>Ve.level.value>=3,visibility:()=>y(Ze[1].earned.value)})),G(()=>({display:{requirement:"Carol Level 4",effectDisplay:"Secondary dyes don't spend primary dyes"},shouldEarn:()=>Ve.level.value>=4,visibility:()=>y(Ze[2].earned.value&&V.day.value>=16)})),G(()=>({display:{requirement:"Carol Level 5",effectDisplay:"Buy maximum secondary dyes"},shouldEarn:()=>Ve.level.value>=5,visibility:()=>y(Ze[3].earned.value&&V.day.value>=16)}))],Ne=I("Holly"),fe=f(()=>{const K=Object.values(_e).find(Ue=>Ue.name===Ne.value);return K==null?(console.warn("This should not happen.",Ne.value),""):t(C,null,[Ne.value,o("'s milestones: "),K.displayMilestone()])}),we=h(ye.elves.cuttersElf,W),xe=h(ye.elves.plantersElf,j),Fe=h(ye.elves.expandersElf,F),ue=[we,xe,Fe],x=h(ye.elves.heatedCuttersElf,X),$=h(ye.elves.heatedPlantersElf,M),Ie=h(ye.elves.fertilizerElf,T),Wi=[x,$,Ie],ei=h(ye.elves.smallFireElf,O),De=h(ye.elves.bonfireElf,k),Ee=h(ye.elves.kilnElf,D),Ci=[ei,De,Ee],Ke=h(ye.elves.paperElf,de,p(()=>({multiplier:()=>i.add(ce.oil.value,1).log10(),description:"Frosty Level 1",enabled:Ce[0].earned}))),ze=h(ye.elves.boxElf,_,p(()=>({multiplier:()=>i.add(ce.oil.value,1).log10(),description:"Frosty Level 1",enabled:Ce[0].earned}))),ii=h(ye.elves.clothElf,Q),mi=[Ke,ze,ii],he=h(ye.elves.coalDrillElf,U),Re=h(ye.elves.metalElf,ie),E=h(ye.elves.oilElf,Oe),oe=h(ye.elves.heavyDrillElf,Ce),Ve=h(ye.elves.dyeElf,Ze),Hi=[he,oe,E],vi=[Re,Ve],_e={cutterElfTraining:we,planterElfTraining:xe,expandersElfTraining:Fe,heatedCutterElfTraining:x,heatedPlanterElfTraining:$,fertilizerElfTraining:Ie,smallfireElfTraining:ei,bonfireElfTraining:De,kilnElfTraining:Ee,paperElfTraining:Ke,boxElfTraining:ze,clothElfTraining:ii,coalDrillElfTraining:he,metalElfTraining:Re,oilElfTraining:E,heavyDrillElfTraining:oe,dyeElfTraining:Ve},li=[we,xe,Fe,x,$,Ie,ei,De,Ee,Ke,ze,ii],Li=[we,xe,Fe,x,$,Ie,ei,De,Ee,Ke,ze,ii,he,Re,E,oe];yi.on("update",K=>{if(!(V.day.value=1&&(Ue.amountOfTimesDone.value-=pi,i.lt(Ue.level.value,ri.amount.value)&&(Ue.exp.value=i.mul(Ue.elfXPGainComputed.value,pi).add(Ue.exp.value)))}if(P.value=Math.max(P.value-K,0),Xe.value=Math.max(Xe.value-K,0),i.eq(P.value,0)){ne.value={};const Ue=bi.bought.value?2e3:1e3;let pi=1-Math.abs(Math.sin(Date.now()/Ue*2));He.bought.value&&(pi=1-(1-pi)**2),ji.value=i.pow(Mi.value,pi)}}});const ji=I(1),ne=I({}),Xe=I(0),P=I(0),q=be(()=>[p(()=>({multiplier:2,description:"Focus Upgrade 1",enabled:Wl.bought}))]),$i=be(()=>[je(()=>({addend:1,description:"Focus Upgrade 2",enabled:vl.bought})),je(()=>({addend:1,description:"Focus Upgrade 6",enabled:Bi.bought}))]),_i=be(()=>[je(()=>({addend:-5,description:"Focus Upgrade 3",enabled:Ol.bought}))]),Mi=Z(()=>q.apply(10)),Pe=Z(()=>$i.apply(3)),gi=Z(()=>_i.apply(15)),ol=qi(()=>({direction:Be.Right,width:566,height:50,style:"border-radius: 4px 4px 0 0",borderStyle:"border-radius: 4px 4px 0 0",fillStyle:()=>({background:P.value>0?l:"#7f7f00",animation:P.value>0?"1s focused-focus-bar linear infinite":"",opacity:P.value>0?P.value/10:1,transition:"none"}),progress:()=>i.sub(ji.value,1).div(i.sub(Mi.value,1)).toNumber(),display:f(()=>t(C,null,[le(ji.value),o("x"),P.value>0?t(C,null,[" ",o("to "),Object.keys(ne.value).join(", "),o(" for")," ",mn(P.value)]):""]))})),Cl=Qi(()=>({display:{title:"Focus",description:f(()=>t(C,null,[o("Motivate elves to focus, multiplying "),re(Pe.value),o(" random elves' XP gain by up to "),le(Mi.value),o("x for 10 seconds, equal to the focus bar's effect."),i.gte(Xe.value,0)?t(C,null,[t("br",null,null),o("Reroll cooldown: "),mn(Xe.value)]):""]))},style:{width:"300px"},canClick:()=>i.eq(Xe.value,0),onClick(){Xe.value=i.fromValue(gi.value).toNumber(),P.value=10,gl(Object.values(_e).filter(K=>m(K.visibility)===Ji.Visible).length,Pe.value)}}));function gl(K,Ue){var jl;let pi=0;ne.value={};const el=i.min(Ue,K);for(;el.gt(pi);){const H=Object.values(_e)[Math.floor(Math.random()*K)],se=(jl=H==null?void 0:H.name)!=null?jl:"";!ne.value[se]&&m(H.visibility)===Ji.Visible&&(ne.value[se]=!0,pi++)}}const Wl=B(()=>({display:{title:"Focus Booster",description:"Multiplies the maximum experience multiplier from focus by 2"},resource:ge.logs,cost:1e25})),vl=B(()=>({display:{title:"Focus Buffer",description:"Increase elves affected by focus by 1"},resource:ge.logs,cost:1e28})),Ol=B(()=>({display:{title:"Focus Upgrader",description:"Focus can now be rerolled every 10 seconds"},resource:ge.logs,cost:1e31})),ae=[Wl,vl,Ol],He=B(()=>({display:{title:"Focus Improver",description:"The bar moves slower when it's closer to the right and faster when it's closer to the left"},resource:ge.logs,visibility:()=>y(_e.clothElfTraining.milestones[4].earned.value),cost:1e34})),bi=B(()=>({display:{title:"Focus Focuser",description:"The bar moves 2x slower"},resource:ge.logs,visibility:()=>y(_e.clothElfTraining.milestones[4].earned.value),cost:1e35})),Bi=B(()=>({display:{title:"Focus Doubler",description:"Focus applies to an additional elf."},resource:ge.logs,visibility:()=>y(_e.clothElfTraining.milestones[4].earned.value),cost:1e36})),dl=[He,bi,Bi],ni=Z(()=>{const K=i.pow(10,ri.amount.value),Ue=i.pow(4,ri.amount.value);let pi=i.pow(2e4,i.pow(ri.amount.value,.75));i.gte(ri.amount.value,4)&&(pi=pi.div(1e3));const el=i.pow(2e3,ri.amount.value);return{wood:pi.mul(1e21),coal:el.mul(1e32),paper:el.mul(1e18),boxes:pi.mul(1e13),metalIngots:Ue.mul(1e12),cloth:K.mul(1e4),plastic:Ue.mul(1e6),dye:i.add(ri.amount.value,1).mul(1e4)}}),ri=Ae(()=>({display:f(()=>t(C,null,[t("h3",null,[o("Build a School")]),t("div",null,[o("You gotta start somewhere, right? Each school increases the maximum level for elves by 1, maximum of "),V.days[sl-1].opened.value?5:3," ",o("schools.")]),t("div",null,[o("You have "),re(ri.amount.value),o(" schools, which are currently letting elves learn up to level "),re(ri.amount.value),o(".")]),i.lt(ri.amount.value,m(ri.purchaseLimit))?t("div",null,[o("Costs "),le(ni.value.wood),o(" logs, "),le(ni.value.coal)," ",o("coal, "),le(ni.value.paper),o(" paper,")," ",le(ni.value.boxes),o(" boxes,")," ",le(ni.value.metalIngots),o(" metal ingots,")," ",le(ni.value.cloth),o(" cloth, "),le(ni.value.plastic)," ",o("plastic, and requires "),le(ni.value.dye),o(" of red, yellow, and blue dye")]):null])),canPurchase(){return ni.value.wood.lte(ge.logs.value)&&ni.value.coal.lte(ee.coal.value)&&ni.value.paper.lte(z.paper.value)&&ni.value.boxes.lte(si.boxes.value)&&ni.value.metalIngots.lte(Zi.metal.value)&&ni.value.cloth.lte(Yi.cloth.value)&&ni.value.plastic.lte(ai.plastic.value)&&ni.value.dye.lte(Ye.dyes.blue.amount.value)&&ni.value.dye.lte(Ye.dyes.red.amount.value)&&ni.value.dye.lte(Ye.dyes.yellow.amount.value)&&i.lt(ri.amount.value,m(ri.purchaseLimit))},onPurchase(){ge.logs.value=i.sub(ge.logs.value,ni.value.wood),ee.coal.value=i.sub(ee.coal.value,ni.value.coal),z.paper.value=i.sub(z.paper.value,ni.value.paper),si.boxes.value=i.sub(si.boxes.value,ni.value.boxes),Zi.metal.value=i.sub(Zi.metal.value,ni.value.metalIngots),Yi.cloth.value=i.sub(Yi.cloth.value,ni.value.cloth),ai.plastic.value=i.sub(ai.plastic.value,ni.value.plastic),this.amount.value=i.add(this.amount.value,1)},purchaseLimit(){return V.days[sl-1].opened.value?5:3},visibility:Z(()=>y(d.bought.value)),style:"width: 600px"})),Oi=Z(()=>{let K=R.amount.value;i.gte(K,50)&&(K=i.pow(K,2).div(50)),i.gte(K,200)&&(K=i.pow(K,2).div(200));const Ue=i.add(K,1).pow(1.5);return{wood:Ue.mul(1e21),paper:Ue.mul(1e18),boxes:Ue.mul(1e13),metalIngots:Ue.mul(1e12)}}),N=Z(()=>i.add(R.amount.value,1).pow(.9)),R=Ae(()=>({display:f(()=>t(C,null,[t("h3",null,[o("Build a Classroom")]),t("div",null,[o("Hopefully it makes the school a bit less boring. Multiplies elves' XP gain by")," ",o("(Classrooms + 1)"),t("sup",null,[o("0.9")]),o(".")]),t("div",null,[o("You have "),re(R.amount.value),o(" classrooms, which are currently multiplying elves' XP gain by "),le(N.value)]),t("div",null,[o("Costs "),le(Oi.value.wood),o(" logs,"),le(Oi.value.paper),o(" paper, "),le(Oi.value.boxes)," ",o("boxes, "),le(Oi.value.metalIngots),o(" metal ingots")])])),canPurchase(){return Oi.value.wood.lte(ge.logs.value)&&Oi.value.paper.lte(z.paper.value)&&Oi.value.boxes.lte(si.boxes.value)&&Oi.value.metalIngots.lte(Zi.metal.value)},onPurchase(){ge.logs.value=i.sub(ge.logs.value,Oi.value.wood),z.paper.value=i.sub(z.paper.value,Oi.value.paper),si.boxes.value=i.sub(si.boxes.value,Oi.value.boxes),Zi.metal.value=i.sub(Zi.metal.value,Oi.value.metalIngots),this.amount.value=i.add(this.amount.value,1)},visibility:Z(()=>y(u.bought.value)),style:"width: 600px"})),[$l,kl]=rl(()=>[{title:"Elves affected by Focus",modifier:$i,base:3},{title:"Maximum Focus Effect",modifier:q,base:10},{title:"Focus Cooldown",modifier:_i,unit:" secs",base:15},{title:"Global XP Gain",modifier:b,unit:" XP"},{title:"Holly XP Gain per Action",modifier:we.elfXPGain,base:.1,unit:" XP"},{title:"Ivy XP Gain per Action",modifier:xe.elfXPGain,base:.1,unit:" XP"},{title:"Hope XP Gain per Action",modifier:Fe.elfXPGain,base:.1,unit:" XP"},{title:"Jack XP Gain per Action",modifier:x.elfXPGain,base:.1,unit:" XP"},{title:"Mary XP Gain per Action",modifier:$.elfXPGain,base:.1,unit:" XP"},{title:"Noel XP Gain per Action",modifier:Ie.elfXPGain,base:.1,unit:" XP"},{title:"Joy XP Gain per Action",modifier:ei.elfXPGain,base:.1,unit:" XP"},{title:"Faith XP Gain per Action",modifier:De.elfXPGain,base:.1,unit:" XP"},{title:"Snowball XP Gain per Action",modifier:Ee.elfXPGain,base:.1,unit:" XP"},{title:"Star XP Gain per Action",modifier:Ke.elfXPGain,base:.1,unit:" XP"},{title:"Bell XP Gain per Action",modifier:ze.elfXPGain,base:.1,unit:" XP"},{title:"Gingersnap XP Gain per Action",modifier:ii.elfXPGain,base:.1,unit:" XP"},{title:"Peppermint XP Gain per Action",modifier:he.elfXPGain,base:.1,unit:" XP"},{title:"Frosty XP Gain per Action",modifier:oe.elfXPGain,base:.1,unit:" XP"},{title:"Cocoa XP Gain per Action",modifier:E.elfXPGain,base:.1,unit:" XP"},{title:"Twinkle XP Gain per Action",modifier:Re.elfXPGain,base:.1,unit:" XP"},{title:"Carol XP Gain per Action",modifier:Ve.elfXPGain,base:.1,unit:" XP"}]),zl=me(!1),xi=f(()=>t(Si,{modelValue:zl.value,"onUpdate:modelValue":K=>zl.value=K},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:$l}));Pi(()=>{(V.day.value===nn&&li.every(K=>K.level.value>=3)||V.day.value===sl&&li.every(K=>K.level.value>=5)&&Li.every(K=>K.level.value>=5))&&V.completeDay()});const Ki={elfTraining:{bonfireElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},boxElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},clothElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},coalDrillElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},cutterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},expandersElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},fertilizerElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},heatedCutterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},heatedPlanterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},heavyDrillElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},kilnElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},metalElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},oilElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},paperElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},planterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},smallfireElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},dyeElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]}},teaching:{bought:I(!1)},schools:{amount:I(0)},classrooms:{amount:I(0)},classroomUpgrade:{bought:I(!1)},advancedUpgrade:{bought:I(!1)},upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],upgrades2:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],focusMulti:I(1),focusTargets:I({}),focusCooldown:I(0),focusTime:I(0)};return{name:e,day:nn,color:l,minWidth:700,elfTraining:_e,totalElfLevels:s,totalElfExp:a,level5Elves:r,currentShown:Ne,generalTabCollapsed:kl,teaching:d,schools:ri,classrooms:R,classroomUpgrade:u,advancedUpgrade:c,focusMulti:ji,upgrades:ae,upgrades2:dl,focusTargets:ne,focusCooldown:Xe,focusTime:P,display:f(()=>t(C,null,[V.day.value===nn?"Get all elves to level 3.":V.day.value===sl&&V.days[sl-1].opened.value?"Get all elves to level 5.":`${e} Complete!`," ",o("-"),t("button",{class:"button",style:"display: inline-block;",onClick:()=>zl.value=!0},[o("Check Modifiers")]),We(xi),We(n),t("br",null,null),ml(ri,R),fl([d,u,c]),t(pe,null,null),i.gt(ri.amount.value,0)?t(C,null,[t(pe,null,null),o("Click on an elf to see their milestones."),t(pe,null,null),t(pe,null,null),We(Cl),fl(ae,dl),t(pe,null,null),fl([ol],ue,Wi,Ci,mi,Hi,vi),t(pe,null,null),fe()]):""])),mastery:Ki}}),$I="cloth",Kn=8,Yi=Di($I,function(){const e="Cloth",l="white",n=Vi(0,"cloth"),s=Vi(0,"wool"),a=Vi(10,"sheep"),r=I(0),d=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s; background: black",progress:()=>i.div(r.value,De.value)})),u=Qi(()=>({display:{title:"Breed sheep",description:f(()=>t(C,null,[o("Breed "),Se(i.floor(Wi.value)),o(" sheep"),t("br",null,null),We(d)]))},style:{minHeight:"80px"},canClick:()=>i.gte(r.value,De.value)&&(!V.isMastery.value||ji.value),onClick(){if(!m(u.canClick))return;const ne=i.floor(Wi.value);a.value=i.add(a.value,ne),r.value=0}})),c=I(0),b=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s; background: black",progress:()=>i.div(c.value,ze.value)})),J=Qi(()=>({display:{title:"Shear sheep",description:f(()=>t(C,null,[o("Shear up to "),Se(i.floor(Ci.value)),o(" sheep"),t("br",null,null),We(b)]))},style:{minHeight:"80px"},canClick:()=>i.gte(c.value,ze.value)&&(!V.isMastery.value||ji.value),onClick(){if(!m(J.canClick))return;const ne=i.min(a.value,Ci.value).floor();s.value=i.add(s.value,ne),c.value=0}})),h=I(0),W=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s; background: black",progress:()=>i.div(h.value,Re.value)})),j=Qi(()=>({display:{title:"Spinning wool",description:f(()=>t(C,null,[o("Spin "),Se(i.floor(mi.value)),o(" wool"),t("br",null,null),We(W)]))},style:{minHeight:"80px"},canClick:()=>i.gte(h.value,Re.value)&&(!V.isMastery.value||ji.value),onClick(){if(!m(j.canClick))return;const ne=i.min(s.value,mi.value).floor();n.value=i.add(n.value,ne),s.value=i.sub(s.value,ne),h.value=0}})),F=In(()=>({key:"b",description:'Press the "Breed Sheep" button',onPress:()=>{u.canClick.value&&u.onClick()}})),X=In(()=>({key:"h",description:'Press the "Shear Sheep" button',onPress:()=>{J.canClick.value&&J.onClick()}})),M=In(()=>({key:"s",description:'Press the "Spin Wool" button',onPress:()=>{j.canClick.value&&j.onClick()}})),T=Ae(()=>({resource:ge.logs,cost(){let ne=this.amount.value;return i.gte(ne,100)&&(ne=i.pow(ne,2).div(100)),ne=i.pow(.95,z.books.clothBook.totalAmount.value).times(ne),i.pow(1.5,ne).times(1e14)},inverseCost(ne){let Xe=i.div(ne,1e14).log(1.5);return Xe=Xe.div(i.pow(.95,z.books.clothBook.totalAmount.value)),i.gte(Xe,100)&&(Xe=i.mul(Xe,100).root(2)),i.isNaN(Xe)?i.dZero:Xe.floor().max(0)},display:{title:"Build more pens",description:"Breed +1 sheep at once"}})),O=Ae(()=>({resource:Zi.metal,cost(){let ne=this.amount.value;return i.gte(ne,100)&&(ne=i.pow(ne,2).div(100)),ne=i.pow(.95,z.books.clothBook.totalAmount.value).times(ne),i.pow(1.4,ne).times(1e4)},inverseCost(ne){let Xe=i.div(ne,1e4).log(1.4);return Xe=Xe.div(i.pow(.95,z.books.clothBook.totalAmount.value)),i.gte(Xe,100)&&(Xe=i.mul(Xe,100).root(2)),i.isNaN(Xe)?i.dZero:Xe.floor().max(0)},display:{title:"Make stronger shears",description:"Shear +1 sheep at once"}})),k=Ae(()=>({resource:z.paper,cost(){let ne=this.amount.value;return i.gte(ne,100)&&(ne=i.pow(ne,2).div(100)),ne=i.pow(.95,z.books.clothBook.totalAmount.value).times(ne),i.pow(1.3,ne).times(1e6)},inverseCost(ne){let Xe=i.div(ne,1e6).log(1.3);return Xe=Xe.div(i.pow(.95,z.books.clothBook.totalAmount.value)),i.gte(Xe,100)&&(Xe=i.mul(Xe,100).root(2)),i.isNaN(Xe)?i.dZero:Xe.floor().max(0)},display:{title:"Learn how to spin",description:"Spin +1 wool at once"}})),D=B(()=>({resource:A(n),cost:100,display:{title:"Lumberjack Boots",description:"Quadruple log gain"}})),de=B(()=>({resource:A(s),cost:150,visibility:()=>y(D.bought.value),display:{title:"Lumberjack Jeans",description:"Quadruple trees cut"}})),_=B(()=>({resource:A(a),cost:200,visibility:()=>y(de.bought.value),display:{title:"Lumberjack Plaid",description:"Quadruple trees planted"}})),U={treesUpgrade4:B(()=>({resource:A(n),cost:1e3,visibility:()=>y(ai.upgrades.clothTools.bought.value),display:{title:"Felt-Gripped Axe",description:"10x log gain"}})),treesUpgrade3:_,treesUpgrade2:de,treesUpgrade1:D},ie=B(()=>({resource:A(n),cost:150,display:{title:"Mining boots",description:"Quadruple ash gain"}})),Oe=B(()=>({resource:A(s),cost:225,visibility:()=>y(ie.bought.value),display:{title:"Mining overalls",description:"Double coal gain"}})),Ce=B(()=>({resource:A(a),cost:300,visibility:()=>y(Oe.bought.value),display:{title:"Mining helmet",description:"Triple coal gain"}})),Ne={metalUpgrade4:B(()=>({resource:A(n),cost:2e3,visibility:()=>y(ai.upgrades.clothTools.bought.value),display:{title:"Felt-Gripped Pick",description:"Quadruple coal gain"}})),metalUpgrade3:Ce,metalUpgrade2:Oe,metalUpgrade1:ie},fe=B(()=>({resource:A(n),cost:200,display:{title:"Scholar's shoes",description:"Double paper gain"}})),we=B(()=>({resource:A(s),cost:200,visibility:()=>y(fe.bought.value),display:{title:"Scholar's slacks",description:"Double paper gain"}})),xe=B(()=>({resource:A(a),cost:400,visibility:()=>y(we.bought.value),display:{title:"Scholar's jacket",description:"Double paper gain"}})),ue={paperUpgrade4:B(()=>({resource:A(n),cost:4e3,visibility:()=>y(ai.upgrades.clothTools.bought.value),display:{title:"Felt Elbow Pads",description:"10x paper gain"}})),paperUpgrade3:xe,paperUpgrade2:we,paperUpgrade1:fe},x=Z(()=>i.add(ge.computedAutoCuttingAmount.value,1).root(9)),$=Z(()=>i.add(Ye.dyeSum.value,10).log10()),Ie=be(()=>[je(()=>({addend:T.amount,description:"Build more pens"})),p(()=>({multiplier:()=>i.div(ai.buyables.clothGains.amount.value,10).add(1),description:"Plastic Shepherd",enabled:()=>i.gte(ai.buyables.clothGains.amount.value,1)})),p(()=>({multiplier:2,description:"Shepherding for Dummies",enabled:z.upgrades.clothUpgrade.bought})),p(()=>({multiplier:$,description:"Gingersnap Level 2",enabled:v.elfTraining.clothElfTraining.milestones[1].earned})),p(()=>({multiplier:x,description:"Holly Level 3",enabled:v.elfTraining.cutterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:2,description:"Carry cloth in boxes",enabled:si.row3Upgrades.clothUpgrade.bought}))]),Wi=Z(()=>Ie.apply(1)),ei=be(()=>[]),De=Z(()=>ei.apply(1)),Ee=be(()=>[je(()=>({addend:O.amount,description:"Make stronger shears"})),p(()=>({multiplier:()=>i.div(ai.buyables.clothGains.amount.value,10).add(1),description:"Plastic Shepherd",enabled:()=>i.gte(ai.buyables.clothGains.amount.value,1)})),p(()=>({multiplier:2,description:"Shepherding for Dummies",enabled:z.upgrades.clothUpgrade.bought})),p(()=>({multiplier:$,description:"Gingersnap Level 2",enabled:v.elfTraining.clothElfTraining.milestones[1].earned})),p(()=>({multiplier:x,description:"Holly Level 3",enabled:v.elfTraining.cutterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:2,description:"Carry cloth in boxes",enabled:si.row3Upgrades.clothUpgrade.bought}))]),Ci=Z(()=>Ee.apply(1)),Ke=be(()=>[]),ze=Z(()=>Ke.apply(1)),ii=be(()=>[je(()=>({addend:k.amount,description:"Learn how to spin"})),p(()=>({multiplier:()=>i.div(ai.buyables.clothGains.amount.value,10).add(1),description:"Plastic Shepherd",enabled:()=>i.gte(ai.buyables.clothGains.amount.value,1)})),p(()=>({multiplier:2,description:"Shepherding for Dummies",enabled:z.upgrades.clothUpgrade.bought})),p(()=>({multiplier:$,description:"Gingersnap Level 2",enabled:v.elfTraining.clothElfTraining.milestones[1].earned})),p(()=>({multiplier:x,description:"Holly Level 3",enabled:v.elfTraining.cutterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:2,description:"Carry cloth in boxes",enabled:si.row3Upgrades.clothUpgrade.bought}))]),mi=Z(()=>ii.apply(1)),he=be(()=>[]),Re=Z(()=>he.apply(1)),[E,oe]=rl(()=>[{title:"Sheep Gain",modifier:Ie,base:1},{title:"Sheep Breeding Cooldown",modifier:ei,base:1,visible:!1,unit:"s"},{title:"Shearing Amount",modifier:Ee,base:1},{title:"Shearing Cooldown",modifier:Ke,base:1,visible:!1,unit:"s"},{title:"Spinning Amount",modifier:ii,base:1},{title:"Spinning Cooldown",modifier:he,base:1,visible:!1,unit:"s"}]),Ve=me(!1),Hi=f(()=>t(Si,{modelValue:Ve.value,"onUpdate:modelValue":ne=>Ve.value=ne},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:E}));yi.on("update",ne=>{i.lt(V.day.value,Kn)||(i.gte(r.value,De.value)?r.value=De.value:(r.value=i.add(r.value,ne),u.isHolding.value&&u.onClick()),i.gte(c.value,ze.value)?c.value=ze.value:(c.value=i.add(c.value,ne),J.isHolding.value&&J.onClick()),i.gte(h.value,Re.value)?h.value=Re.value:(h.value=i.add(h.value,ne),j.isHolding.value&&j.onClick()))});const{total:vi,trackerDisplay:_e}=wl({resource:n,goal:1e3,name:e,day:Kn,color:l,textColor:"var(--feature-foreground)",modal:{show:Ve,display:Hi}}),li={cloth:I(0),totalCloth:I(0),wool:I(0),sheep:I(0),buildPens:{amount:I(0)},betterShears:{amount:I(0)},fasterSpinning:{amount:I(0)},treesUpgrades:{treesUpgrade1:{bought:I(!1)},treesUpgrade2:{bought:I(!1)},treesUpgrade3:{bought:I(!1)},treesUpgrade4:{bought:I(!1)}},metalUpgrades:{metalUpgrade1:{bought:I(!1)},metalUpgrade2:{bought:I(!1)},metalUpgrade3:{bought:I(!1)},metalUpgrade4:{bought:I(!1)}},paperUpgrades:{paperUpgrade1:{bought:I(!1)},paperUpgrade2:{bought:I(!1)},paperUpgrade3:{bought:I(!1)},paperUpgrade4:{bought:I(!1)}}},Li=I(!1),ji=Z(()=>{var ne;return Li.value||((ne=V.currentlyMastering.value)==null?void 0:ne.name)===e});return{name:e,day:Kn,color:l,cloth:n,totalCloth:vi,wool:s,sheep:a,buildPens:T,betterShears:O,fasterSpinning:k,treesUpgrades:U,metalUpgrades:Ne,paperUpgrades:ue,generalTabCollapsed:oe,breedingProgress:r,shearingProgress:c,spinningProgress:h,breedSheepHK:F,shearSheepHK:X,spinWoolHK:M,minWidth:700,display:f(()=>t(C,null,[We(_e),t(pe,null,null),t(Ui,{resource:n,style:"margin-bottom: 0"},null),t(Ui,{resource:s,style:"margin-bottom: 0"},null),t(Ui,{resource:a,style:"margin-bottom: 0"},null),ci(u,J,j),ci(T,O,k),t(pe,null,null),t(rn,null,{default:()=>[ml(...Object.values(U)),ml(...Object.values(Ne)),ml(...Object.values(ue))]})])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:li,mastered:Li}}),KI="dyes",xs=11,Ye=Di(KI,function(){const e="Dyes",l="#D4D4F4";function n(T){const O=Vi(0,T.name),k=be(()=>{const Q=[je(()=>({addend:()=>i.add(_.amount.value,1),description:`${T.name} Chambers`}))];return T.color==="yellow"&&ce.row3Upgrades[0].bought.value&&Q.push(p(()=>({multiplier(){return i.add(s.red.amount.value,1).log10().add(1).pow(.75)},description:"Dye Synergy I"}))),T.color==="red"&&ce.row3Upgrades[3].bought.value&&Q.push(p(()=>({multiplier(){return i.add(s.blue.amount.value,1).log10()},description:"Dye Synergy II"}))),["red","yellow"].includes(T.color)&&Q.push(p(()=>({multiplier:a.orange1,description:"Orange Dye Boost 1"}))),["yellow","blue"].includes(T.color)&&Q.push(p(()=>({multiplier:a.green1,description:"Green Dye Boost 1"}))),["red","blue"].includes(T.color)&&Q.push(p(()=>({multiplier:a.purple1,description:"Purple Dye Boost 1"}))),["red","yellow","blue"].includes(T.color)&&(Q.push(p(()=>({multiplier:2,description:"Wetter Dyes",enabled:u.yellowDyeUpg.bought}))),Q.push(p(()=>({multiplier:()=>i.add(Yi.cloth.value,Math.E).ln(),description:"Gingersnap Level 1",enabled:v.elfTraining.clothElfTraining.milestones[0].earned}))),Q.push(p(()=>({multiplier:2,description:"Carol Level 1",enabled:v.elfTraining.dyeElfTraining.milestones[0].earned})))),["orange","green","purple"].includes(T.color)&&Q.push(p(()=>({multiplier:2,description:"Carol Level 2",enabled:v.elfTraining.dyeElfTraining.milestones[1].earned}))),Q.push(p(()=>({multiplier:2,description:"Gingersnap Level 3",enabled:v.elfTraining.clothElfTraining.milestones[2].earned}))),Q.push(p(()=>({multiplier:2,description:"Carry dye in boxes",enabled:si.row3Upgrades.dyeUpgrade.bought}))),Q}),D=Z(()=>k.apply(0));let de;switch(T.color){case"red":case"yellow":case"blue":de=z.books.primaryDyeBook;break;case"orange":case"green":case"purple":de=z.books.secondaryDyeBook;break}const _=Ae(()=>{const Q=Ri(T.costs);return{...T,style:()=>({backgroundColor:m(_.canPurchase)?l:"#545454",minWidth:"200px"}),display:f(()=>t("span",null,[t("h3",null,[T.name,o(" Chambers")]),t("br",null,null),o("Create "),le(D.value),o(" "),T.name,T.dyesToReset.length>0?", but reset "+T.dyesToReset.map(U=>U.name).join(", "):"",o("."),t("br",null,null),t("br",null,null),t("span",{class:"white-space: pre-wrap"},[o("Currently:")," ",T.listedBoosts.filter(U=>m(U.visible)).map(U=>We(f(()=>t("div",null,[m(U.desc)]))))]),t("br",null,null),t("div",null,[o("Cost:")," ",m(Q).map(U=>We(f(()=>{var ie,Oe;return t("div",null,[le(m(i.pow((ie=m(_.cost))!=null?ie:i.dInf,m((Oe=U.root)!=null?Oe:1)).times(m(U.base))))," ",U.res.displayName,t("br",null,null)])})))])])),cost(){let U=_.amount.value;return i.gte(U,25)&&(U=i.pow(U,2).div(20)),i.gte(U,10)&&(U=i.pow(U,2).div(5)),i.gte(U,3125)&&(U=i.pow(U,2).div(3125)),U=i.mul(U,i.pow(.95,de.totalAmount.value)),i.div(U,10).plus(1)},inverseCostPre(U){let ie=i.sub(U,1).mul(10);return ie=ie.div(i.pow(.95,de.totalAmount.value)),i.gte(ie,3125)&&(ie=i.mul(ie,3125).root(2)),i.gte(ie,10)&&(ie=i.mul(ie,5).root(2)),i.gte(ie,25)&&(ie=i.mul(ie,20).root(2)),i.isNaN(ie)?i.dZero:ie.floor().max(0)},inverseCost(){return m(_.visibility)!=Ji.Visible?i.dZero:m(Q).reduce((U,ie)=>{var Oe;return i.min(this.inverseCostPre(i.div(ie.res.value,m(ie.base)).root(m((Oe=ie.root)!=null?Oe:1))),U)},i.dInf)},canPurchase:Z(U=>{var Oe;if(m(_.visibility)!=Ji.Visible||V.isMastery.value&&!M.value)return!1;const ie=(Oe=U!=null?U:m(_.cost))!=null?Oe:i.dInf;return m(Q).every(Ce=>{var Ze;return i.div(Ce.res.value,m(Ce.base)).root(m((Ze=Ce.root)!=null?Ze:1)).gte(ie)})}),onPurchase(U){var Oe;let ie=!1;switch(T.color){case"red":case"yellow":case"blue":ie=v.elfTraining.dyeElfTraining.milestones[2].earned.value;break;case"orange":case"green":case"purple":ie=v.elfTraining.dyeElfTraining.milestones[4].earned.value;break}if(ie){const Ce=this.inverseCost().sub(this.amount.value).plus(1);if(Ce.lte(0))return;O.value=i.times(2,_.amount.value).plus(Ce).plus(1).times(Ce).div(2).times(D.value).div(i.add(_.amount.value,1)).plus(O.value),_.amount.value=i.add(_.amount.value,Ce)}else O.value=i.add(O.value,D.value),_.amount.value=i.add(_.amount.value,1);if(!v.elfTraining.dyeElfTraining.milestones[3].earned.value){const Ce=(Oe=U!=null?U:m(_.cost))!=null?Oe:i.dInf;m(Q).forEach(Ze=>{var Ne;Ze.res.value=i.sub(Ze.res.value,i.pow(Ce,m((Ne=Ze.root)!=null?Ne:1)).times(m(Ze.base)))}),T.dyesToReset.forEach(Ze=>Ze.reset())}}}});return{name:T.name,amount:O,buyable:_,toGenerate:k,computedToGenerate:D,display:f(()=>t(Ui,{resource:O,color:T.color,style:"margin: 0; width: 200px; width: 180px; padding: 10px;",sticky:!1},null))}}const s={red:n({name:"Red Dye",color:"red",costs:()=>[{base:"2e18",root:5,res:ge.logs},{base:Z(()=>u.yellowDyeUpg2.bought.value?"2.5e5":"5e5"),root:2,res:ce.oil}],listedBoosts:[{visible:!0,desc:Z(()=>`+${le(a.red1.value)} effective Oil Pumps (does not impact coal consumption)`)}],dyesToReset:[]}),yellow:n({name:"Yellow Dye",color:"yellow",costs:()=>[{base:"1e18",root:5,res:ge.logs},{base:Z(()=>u.yellowDyeUpg2.bought.value?"5e5":"1e6"),root:2,res:ce.oil}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.yellow1.value)} Paper & Plastic gain`)}],dyesToReset:[]}),blue:n({name:"Blue Dye",color:"blue",costs:()=>[{base:"5e17",root:5,res:ge.logs},{base:Z(()=>u.yellowDyeUpg2.bought.value?"1e6":"2e6"),root:2,res:ce.oil}],listedBoosts:[{visible:!0,desc:Z(()=>`+${re(a.blue1.value)} forest size (after all other modifiers).`)}],dyesToReset:[]}),orange:n({name:"Orange Dye",color:"orange",costs:()=>[{base:15,root:2,res:s.red.amount},{base:10,root:2,res:s.yellow.amount}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.orange1.value)} Red and Yellow Dye gain`)},{visible:!0,desc:Z(()=>`/${le(a.orange2.value)} Box buyable costs.`)}],dyesToReset:[{name:"Red Dye",reset(){s.red.amount.value=0,s.red.buyable.amount.value=0}},{name:"Yellow Dye",reset(){s.yellow.amount.value=0,s.yellow.buyable.amount.value=0}}]}),green:n({name:"Green Dye",color:"green",costs:()=>[{base:15,root:2,res:s.yellow.amount},{base:10,root:2,res:s.blue.amount}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.green1.value)} Yellow and Blue Dye gain`)},{visible:!0,desc:Z(()=>`+${re(i.sub(a.green2.value,1).times(100))}% Kiln synergy effect.`)}],dyesToReset:[{name:"Yellow Dye",reset(){s.yellow.amount.value=0,s.yellow.buyable.amount.value=0}},{name:"Blue Dye",reset(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}}]}),purple:n({name:"Purple Dye",color:"purple",costs:()=>[{base:15,root:2,res:s.blue.amount},{base:10,root:2,res:s.red.amount}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.purple1.value)} Red and Blue Dye gain`)},{visible:!0,desc:Z(()=>`x${le(a.purple2.value)} Smelting Speed and Ore Purity`)}],dyesToReset:[{name:"Blue Dye",reset(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}},{name:"Red Dye",reset(){s.red.amount.value=0,s.red.buyable.amount.value=0}}]})},a={red1:Z(()=>i.pow(i.add(s.red.amount.value,1).log2().plus(1).log2().div(2),u.blueDyeUpg2.bought.value?1.5:1)),yellow1:Z(()=>i.add(s.yellow.amount.value,1).log2().plus(1)),blue1:Z(()=>i.add(s.blue.amount.value,1).log2().sqrt().times(5e6)),orange1:Z(()=>i.pow(2,i.add(s.orange.amount.value,1).log2().sqrt()).pow(u.coalUpg.bought.value?1.2:1).pow(v.elfTraining.clothElfTraining.milestones[3].earned.value?1.1:1)),orange2:Z(()=>i.add(s.orange.amount.value,1).log2().plus(1).pow(ce.row3Upgrades[1].bought.value?2.5:1)),green1:Z(()=>i.pow(2,i.add(s.green.amount.value,1).log2().sqrt()).pow(u.coalUpg.bought.value?1.2:1).pow(v.elfTraining.clothElfTraining.milestones[3].earned.value?1.1:1)),green2:Z(()=>i.add(s.green.amount.value,1).log2().plus(1).pow(u.coalUpg.bought.value?2:1)),purple1:Z(()=>i.pow(2,i.add(s.purple.amount.value,1).log2().sqrt()).pow(u.coalUpg.bought.value?1.2:1).pow(v.elfTraining.clothElfTraining.milestones[3].earned.value?1.1:1)),purple2:Z(()=>i.add(s.purple.amount.value,1).log2().plus(1))},[r,d]=rl(()=>[{title:"Red Dye Creation",modifier:s.red.toGenerate,base:0},{title:"Yellow Dye Creation",modifier:s.yellow.toGenerate,base:0},{title:"Blue Dye Creation",modifier:s.blue.toGenerate,base:0},{title:"Orange Dye Creation",modifier:s.orange.toGenerate,base:0},{title:"Green Dye Creation",modifier:s.green.toGenerate,base:0},{title:"Purple Dye Creation",modifier:s.purple.toGenerate,base:0}]),u={blueDyeUpg:B(()=>({visibility:()=>y(i.add(s.orange.amount.value,s.green.amount.value).add(s.purple.amount.value).gte(1)||u.blueDyeUpg.bought.value),display:{title:"Is Blue Dye just Water?",description:f(()=>t(C,null,[o("Multiply Log gain by log"),t("sub",null,[o("10")]),o("(Auto Cutting Amount)+1.")]))},cost:1e3,resource:A(s.blue.amount),onPurchase(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}})),redDyeUpg:B(()=>({visibility:()=>y(i.add(s.orange.amount.value,s.green.amount.value).add(s.purple.amount.value).gte(10)||u.redDyeUpg.bought.value),display:{title:"Glistening Paint",description:f(()=>t(C,null,[o("Multiply Ore Purity by log"),t("sub",null,[o("10")]),o("(Cloth)+1.")]))},cost:1500,resource:A(s.red.amount),onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0}})),yellowDyeUpg:B(()=>({visibility:()=>y(i.add(s.orange.amount.value,s.green.amount.value).add(s.purple.amount.value).gte(100)||u.yellowDyeUpg.bought.value),display:{title:"Wetter Dyes",description:"Double Red, Yellow, and Blue Dye gain, but reset their amounts."},cost:2e3,resource:A(s.yellow.amount),onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0,s.yellow.amount.value=0,s.yellow.buyable.amount.value=0,s.blue.amount.value=0,s.blue.buyable.amount.value=0}})),yellowDyeUpg2:B(()=>({visibility:()=>y(u.yellowDyeUpg.bought.value),display:{title:"Golden Wash",description:"Halve the Oil cost of Red, Yellow, and Blue Dyes."},cost:5e3,resource:A(s.yellow.amount),onPurchase(){s.yellow.amount.value=0,s.yellow.buyable.amount.value=0}})),redDyeUpg2:B(()=>({visibility:()=>y(u.redDyeUpg.bought.value),display:{title:"De Louvre",description:f(()=>t(C,null,[o("Multiply Smelting Speed by "),t(Zl,null,{default:()=>[o("Refineries+1")]}),o(".")]))},cost:6e3,resource:A(s.red.amount),onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0}})),blueDyeUpg2:B(()=>({visibility:()=>y(u.blueDyeUpg.bought.value),display:{title:"Hydrophobia",description:"Raise Red Dye's effect ^1.5."},cost:7500,resource:A(s.blue.amount),onPurchase(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}})),coalUpg:B(()=>({visibility:()=>y(u.blueDyeUpg2.bought.value&&u.redDyeUpg2.bought.value&&u.yellowDyeUpg2.bought.value),display:{title:"Denser Spectrum",description:"Orange, Green, and Purple Dyes' first effect is raised ^1.2, and Green Dye's second effect is squared. Buying this resets Red, Yellow, and Blue Dyes."},cost:"5e30",resource:ee.coal,onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0,s.yellow.amount.value=0,s.yellow.buyable.amount.value=0,s.blue.amount.value=0,s.blue.buyable.amount.value=0}}))},c=me(!1),b=f(()=>t(Si,{modelValue:c.value,"onUpdate:modelValue":T=>c.value=T},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:r})),J=Vi(Z(()=>Object.values(s).reduce((T,O)=>i.add(T,O.amount.value),0)),"Sum of Dyes"),h=Z(()=>[s.orange,s.green,s.purple].reduce((T,O)=>T.add(O.amount.value),new i(0))),{total:W,trackerDisplay:j}=wl({resource:J,goal:6e4,name:e,day:xs,color:l,textColor:"var(--feature-foreground)",modal:{show:c,display:b},ignoreTotal:!0}),F={dyes:{red:{amount:I(0),buyable:{amount:I(0)}},green:{amount:I(0),buyable:{amount:I(0)}},blue:{amount:I(0),buyable:{amount:I(0)}},yellow:{amount:I(0),buyable:{amount:I(0)}},purple:{amount:I(0),buyable:{amount:I(0)}},orange:{amount:I(0),buyable:{amount:I(0)}}},upgrades:{blueDyeUpg:{bought:I(!1)},redDyeUpg:{bought:I(!1)},yellowDyeUpg:{bought:I(!1)},yellowDyeUpg2:{bought:I(!1)},redDyeUpg2:{bought:I(!1)},blueDyeUpg2:{bought:I(!1)},coalUpg:{bought:I(!1)}}},X=I(!1),M=Z(()=>{var T;return X.value||((T=V.currentlyMastering.value)==null?void 0:T.name)===e});return{name:e,day:xs,color:l,dyes:s,dyeSum:J,boosts:a,totalDyeSum:W,secondaryDyeSum:h,minWidth:700,generalTabCollapsed:d,upgrades:u,display:f(()=>t(C,null,[We(j),t(pe,null,null),t("div",{style:"width: 620px"},[ci(s.red.display,s.yellow.display,s.blue.display),ci(s.red.buyable,s.yellow.buyable,s.blue.buyable),t(pe,null,null),ci(s.orange.display,s.green.display,s.purple.display),ci(s.orange.buyable,s.green.buyable,s.purple.buyable)]),t(pe,null,null),t("div",{class:"row",style:"vertical-align: top"},[ml(u.redDyeUpg,u.redDyeUpg2),ml(u.yellowDyeUpg,u.yellowDyeUpg2),ml(u.blueDyeUpg,u.blueDyeUpg2)]),We(u.coalUpg)])),mastery:F,mastered:X}}),em="boxes",es=6,si=Di(em,function(){const e="Boxes",l="#964B00",n=Vi(0,"boxes"),s=be(()=>[p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),tl(()=>({exponent:1.1,description:"Bell Level 2",enabled:v.elfTraining.boxElfTraining.milestones[1].earned}))]),a=mt(()=>({scaling:us(1e10,1),baseResource:ge.logs,gainResource:A(n),roundUpCost:!0,gainModifier:s})),r=Qi(()=>({display:f(()=>t(C,null,[t("span",{style:"font-size: large"},[o("Create "),re(a.currentGain.value),o(" "),n.displayName]),t("br",null,null),t("span",{style:"font-size: large"},[o("Cost:")," ",fn(ge.logs,i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value)," ",ge.logs.displayName])])),canClick:()=>i.gte(a.actualGain.value,1),onClick(){!m(this.canClick)||a.convert()},style:"width: 600px; min-height: unset",visibility:()=>y(!V.isMastery.value||ue.value)})),d=B(()=>({display:{title:"Carry logs in boxes",description:"Double log gain and unlock a new elf for training"},onPurchase(){ue.value&&(ye.elves.smallFireElf.bought.value=!0),V.days[3].recentlyUpdated.value=!0},resource:A(n),cost:100})),u=B(()=>({display:{title:"Carry ash in boxes",description:"Double ash gain and unlock a new elf for training"},onPurchase(){ue.value&&(ye.elves.bonfireElf.bought.value=!0),V.days[3].recentlyUpdated.value=!0},resource:A(n),cost:1e3})),c=B(()=>({display:{title:"Carry coal in boxes",description:"Double coal gain and unlock a new elf for training"},onPurchase(){ue.value&&(ye.elves.kilnElf.bought.value=!0),V.days[3].recentlyUpdated.value=!0},resource:A(n),cost:4e3})),b={logsUpgrade:d,ashUpgrade:u,coalUpgrade:c},J=B(()=>({resource:A(n),cost:1e8,visibility:()=>y(ai.upgrades.boxTools.bought.value),display:{title:"Carry ore in boxes",description:"Double ore per mining op"}})),h=B(()=>({resource:A(n),cost:1e9,visibility:()=>y(ai.upgrades.boxTools.bought.value),display:{title:"Carry metal in boxes",description:"Double ore purity"}})),W=B(()=>({resource:A(n),cost:1e10,visibility:()=>y(ai.upgrades.boxTools.bought.value),display:{title:"Carry plastic in boxes",description:"Double plastic gain"}})),j={oreUpgrade:J,metalUpgrade:h,plasticUpgrade:W},F=B(()=>({resource:A(n),cost:1e28,visibility:()=>y(v.elfTraining.boxElfTraining.milestones[4].earned.value),display:{title:"Carry cloth in boxes",description:"Double all cloth actions"}})),X=B(()=>({resource:A(n),cost:1e29,visibility:()=>y(v.elfTraining.boxElfTraining.milestones[4].earned.value),display:{title:"Carry dye in boxes",description:"Double all dye gain but reset all dyes"},onPurchase(){["red","yellow","blue","orange","green","purple"].forEach(x=>{Ye.dyes[x].amount.value=0,Ye.dyes[x].buyable.amount.value=0})}})),M=B(()=>({resource:A(n),cost:1e30,visibility:()=>y(v.elfTraining.boxElfTraining.milestones[4].earned.value),display:{title:"Carry experience in boxes???",description:"Double xp gain"}})),T={clothUpgrade:F,dyeUpgrade:X,xpUpgrade:M},O=Ae(()=>({display:{title:"Carry more logs",description:f(()=>t(C,null,[o("Use boxes to carry even more logs, boosting their gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(O.amount.value),i.gt(O.freeLevels.value,0)?t(C,null,[o(" (+"),re(O.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(O.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.totalAmount.value).times(x);let $=3;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(100).div(Ye.boosts.orange2.value).div(zi.boosts.ocean1.value)},inverseCost(x){let $=3;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,zi.boosts.ocean1.value).mul(Ye.boosts.orange2.value).div(100).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(d.bought.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(k.amount.value,1).sqrt().floor().add(i.max(D.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(O.amount.value,2).sub(O.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(O.amount.value,O.freeLevels.value))})),k=Ae(()=>({display:{title:"Carry more ash",description:f(()=>t(C,null,[o("Use boxes to carry even more ash, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(k.amount.value),i.gt(k.freeLevels.value,0)?t(C,null,[o(" (+"),re(k.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(k.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.totalAmount.value).times(x);let $=5;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e3).div(Ye.boosts.orange2.value)},inverseCost(x){let $=5;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e3).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(u.bought.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(O.amount.value,1).sqrt().floor().add(i.max(D.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(k.amount.value,2).sub(k.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(k.amount.value,k.freeLevels.value))})),D=Ae(()=>({display:{title:"Carry more coal",description:f(()=>t(C,null,[o("Use boxes to carry even more coal, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(D.amount.value),i.gt(D.freeLevels.value,0)?t(C,null,[o(" (+"),re(D.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(D.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.totalAmount.value).times(x);let $=7;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e3).div(Ye.boosts.orange2.value)},inverseCost(x){let $=7;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e3).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(c.bought.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(O.amount.value,1).sqrt().floor().add(i.max(k.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(D.amount.value,2).sub(D.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(D.amount.value,D.freeLevels.value))})),de={logBoxesBuyable:O,ashBoxesBuyable:k,coalBoxesBuyable:D},_=Ae(()=>({display:{title:"Carry more ore",description:f(()=>t(C,null,[o("Use boxes to carry even more ore, boosting their gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(_.amount.value),i.gt(_.freeLevels.value,0)?t(C,null,[o(" (+"),re(_.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(_.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.amount.value).times(x);let $=10;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e25).div(Ye.boosts.orange2.value).div(zi.boosts.ocean1.value)},inverseCost(x){let $=10;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,zi.boosts.ocean1.value).mul(Ye.boosts.orange2.value).div(1e25).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(v.elfTraining.boxElfTraining.milestones[3].earned.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(Q.amount.value,1).sqrt().floor().add(i.max(U.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(_.amount.value,2).sub(_.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(_.amount.value,_.freeLevels.value))})),Q=Ae(()=>({display:{title:"Carry more metal",description:f(()=>t(C,null,[o("Use boxes to carry even more metal, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(Q.amount.value),i.gt(Q.freeLevels.value,0)?t(C,null,[o(" (+"),re(Q.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(Q.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.amount.value).times(x);let $=15;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e28).div(Ye.boosts.orange2.value)},inverseCost(x){let $=15;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e28).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(v.elfTraining.boxElfTraining.milestones[3].earned.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(_.amount.value,1).sqrt().floor().add(i.max(U.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(Q.amount.value,2).sub(Q.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(Q.amount.value,Q.freeLevels.value))})),U=Ae(()=>({display:{title:"Carry more plastic",description:f(()=>t(C,null,[o("Use boxes to carry even more plastic, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(U.amount.value),i.gt(U.freeLevels.value,0)?t(C,null,[o(" (+"),re(U.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(U.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.amount.value).times(x);let $=20;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e31).div(Ye.boosts.orange2.value)},inverseCost(x){let $=20;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e31).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(v.elfTraining.boxElfTraining.milestones[3].earned.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(_.amount.value,1).sqrt().floor().add(i.max(Q.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(U.amount.value,2).sub(U.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(U.amount.value,U.freeLevels.value))})),ie={oreBoxesBuyable:_,metalBoxesBuyable:Q,plasticBoxesBuyable:U};yi.on("update",x=>{i.lt(V.day.value,es)||(n.value=i.times(x,ai.buyables.passiveBoxes.amount.value).times(a.currentGain.value).div(100).add(n.value))});const[Oe,Ce]=rl(()=>[{title:"Boxes Gain",modifier:s,base:()=>a.scaling.currentGain(a)}]),Ze=me(!1),Ne=f(()=>t(Si,{modelValue:Ze.value,"onUpdate:modelValue":x=>Ze.value=x},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Oe})),{total:fe,trackerDisplay:we}=wl({resource:n,goal:5e4,masteryGoal:5e5,name:e,day:es,color:l,modal:{display:Ne,show:Ze}}),xe={boxes:I(0),totalBoxes:I(0),upgrades:{logsUpgrade:{bought:I(!1)},ashUpgrade:{bought:I(!1)},coalUpgrade:{bought:I(!1)}},row2Upgrades:{oreUpgrade:{bought:I(!1)},metalUpgrade:{bought:I(!1)},plasticUpgrade:{bought:I(!1)}},row3Upgrades:{clothUpgrade:{bought:I(!1)},dyeUpgrade:{bought:I(!1)},xpUpgrade:{bought:I(!1)}},buyables:{logBoxesBuyable:{amount:I(0)},ashBoxesBuyable:{amount:I(0)},coalBoxesBuyable:{amount:I(0)}},buyables2:{oreBoxesBuyable:{amount:I(0)},metalBoxesBuyable:{amount:I(0)},plasticBoxesBuyable:{amount:I(0)}}},Fe=I(!1),ue=Z(()=>{var x;return Fe.value||((x=V.currentlyMastering.value)==null?void 0:x.name)===e});return{name:e,day:es,color:l,boxes:n,totalBoxes:fe,boxesConversion:a,upgrades:b,row2Upgrades:j,row3Upgrades:T,buyables:de,buyables2:ie,minWidth:700,generalTabCollapsed:Ce,display:f(()=>t(C,null,[We(we),t(pe,null,null),ue.value?t(C,null,[o("Decoration effect: Effective boxes buyables' levels are squared"),t(pe,null,null)]):null,t(Ui,{resource:n,color:l,style:"margin-bottom: 0"},null),t(pe,null,null),We(r),t(pe,null,null),fl(Object.values(b),Object.values(j),Object.values(T)),t(pe,null,null),fl(Object.values(de),Object.values(ie))])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:xe,mastered:Fe}});var rt="data:image/png;base64,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",dt="./assets/cloth.7bcd7f37.png",ut="data:image/png;base64,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",ct="data:image/png;base64,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",bt="./assets/elf.9fbfa563.png",Zt="./assets/elfManagement.436c8744.png",yt="./assets/letterbox.e01917c1.png",pt="./assets/metal.7407f5d1.png",ht="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAFxGAABcRgEUlENBAAAAG3RFWHRTb2Z0d2FyZQBDZWxzeXMgU3R1ZGlvIFRvb2zBp+F8AAAE/ElEQVR42u3dW3baMBRAURhzO4x2zO5P25WPPAhIuq99JhAsayNwbHG/rusm6f3ugEiASIBIgEiASIBIgEiASIBIgNQ+mPv9/8Fc13V3ejUeyFsUnwWMRgF5FAYoGgXkWRiQqD2QFThAUUsgq3FAIkAgESCQCJDtQCARIJAIEEAECCQCJArISSQfHRekgIxG4h4yQCBZdAyQADLi+0jlGyw/e+2dAY+7mzdqgr76ek9OQjeENgBSDUl2IO51awjkJJRXTnTWd2T/WxoCJDOSla9r1UQ7faGjMpKWmzZk+riQCUgEjOpIWu9qsmNCfOckZ3nAKxpGZSRjtv2JeCePXj0ywQBkEJZHTnLk6pERBiDDsHx1oqOAZMZREYmdFZ+YYBlXkAowABmAJuqd/LO/WwkHIDqGoxoM30F0DEhFHIBoO5CqMADRFiBwAALIA5MKDkCWTbTIk7Hj41V1HIAknmCnT06HyQxHUiDVd0+EoxeOVEA6PKMASC8caYBkmFjVn7WAoymQrBPr7ZfjTvdBwVEISPVbJcDojQMQwQGI4ABEcAAiMAARMIAAAgwggKg8FEAECSACBBBB0gsIJIAAAogAgUS+gwAiQCARHAmBQAIIIJCoGKCU+2JBAgwgkKgAFiuIQPElXZAUBgKGsiJxq4kgyQgEDFVAEgIEDlVBchwIHAIEDDVBcgQIHAIEDgEChwABRJDsBgKHAIFDgAAiQOAQIIAIEEAECCASIBIgUk4cgAgQQAQHIAKkBhBI1AXHNiCgqAOO7UAgUWUcR4DAooowQoAAo0o4woFAoqwwrCACAxCBURQIHMoMIxQIHLKCAKIGWGxeLVCyAIFD1ZAAIlAyAInG8dXgwgvJWCDfHVRYIDkKJGLCrRhEUABpB2T14EEyG0mr50F2DRokgJQHsn13C0hGImnxyO2RgSoI5N+4dMUNSLblNvlEm3a1rjSQbjiyT6iJV+0ASQYk8yRaOQ5VoACSEMjfY/t1u91+JJknv6/r+ukNoRCQDpd2AckNBRBAUgHJhgWQpDgSvpseBxI9FuVvNekOJNEqEooj4ryXv5u3+8crQOLmQYvnQSasHoCcnxdtth4FpAaQj85T0EWPK9O5BaTPl/WngDzyujPvVQVIkZMXDGT56gELIIC88NonQgFkKBBImgLJdoICkSy5gvXs658Cpdw/CgFZC+TVY+gOpRSQlJsbNwACCSDdgGz5ByEkh4DsmDhZT0AnIJAcBLJyAmUf+AAkKYF0RAIIIJBEApmwbAPSF0nqnz+oMsiAAHJ08CsO7uG7e0ts1NABSaqfga48oAeBbH8GZOWKWB1JKJBOdQEy5fI8IH2/h5RaQcp/MgAEkN3HAYhOfsyyggACSCcglZEAAggggAACCCCAAAIIIDV3cwdEp5AAAgggnYC4zKt2QFYiAUQtgaxA4l4stQbyChK3u2sEkGeRAKIxQL4DxTPpikSS5kdz3sNiVxMB8g4UG8cJkInnEhBABAggAgQQAQIIIIAAAgggkAACCCCAACJAABEggAgQAQKIAAFEgAAiQACBBBBAAAEEEEAAESCACBBABAggRqEeEEgAAQQQQAABBBBAAAFEp4FAAggggAACCCCAAAIJIAIEECXCAQgggEACCCCAAAIIIIAoAggkgAACCCBwAAIIIJAAAggggCgZEEgAgQMQQACBBBBAAAEEDkgK9wfV+oLa+LwMvQAAAABJRU5ErkJggg==",Vt="./assets/paperStacks.4c96ec8c.png",Wt="./assets/plastic.b8ac74ff.png",vt="./assets/ribbons.4f911bf2.png",jt="./assets/sws.714ad454.png",Jt="./assets/tree.35808197.png",ft="./assets/workshopMansion.f5e58b53.png",wt="./assets/wrappingPaper.7d754375.png";const V=Di("main",function(){const e=I(1),l=Z(()=>(+new Date(new Date().getFullYear(),11,e.value)-Me.time)/1e3),n=me(!1),s=me(-1),a=me(""),r=me(),d=Z(()=>c.value?Object.values(oi).find(M=>{var T;return m(M.mastered)===!1&&!["Elves","Management"].includes(m((T=M==null?void 0:M.name)!=null?T:""))}):void 0),u=me(!1),c=I(!1),b=()=>{u.value=!0,c.value=!c.value;for(const M of[ge,di,ee,ye,z,si,Zi,Yi,ce,ai,Ye,v,tn])J(M.mastery,M);u.value=!1};function J(M,T){for(const O of Object.keys(M))qs(M[O])?[M[O].value,T[O].value]=[T[O].value,M[O].value]:J(M[O],T[O])}function h(M){if(window.matchMedia("(min-width: 1468px)").matches)if(Me.tabs.includes(M)){const T=Me.tabs.lastIndexOf(M);Me.tabs.splice(T,1)}else Me.tabs.push(M),V.minimized.value=!0;else Me.tabs.splice(1,1/0,M);oi[M].minimized.value=!1}function W(M){const T=I(!1),O=I(!1);return nl(()=>{const k=M(),D=Ri(k.shouldNotify),de=Ri(()=>m(D)||m(O));return{...k,opened:T,shouldNotify:de,recentlyUpdated:O,[El]:ko,[Al]:function(){var xe,Fe;const{day:_,layer:Q,symbol:U,opened:ie,shouldNotify:Oe,story:Ce,completedStory:Ze,masteredStory:Ne,recentlyUpdated:fe}=this,we=(Fe=(xe=oi[Q!=null?Q:""])==null?void 0:xe.mastered)!=null?Fe:me(!1);return{day:_,symbol:U,layer:Q,opened:ie,recentlyUpdated:fe,shouldNotify:Oe,mastered:we,onOpenLore(){var $,Ie;const ue=V.day.value>_;s.value=ue?_-1:-1;const x=m((Ie=($=oi[Q!=null?Q:"trees"])==null?void 0:$.name)!=null?Ie:"");a.value=ue?`${x} - Completed!`:x,r.value=ue?m(we)?`${Ce}y(ce.depthMilestones[4].earned.value)})),x=Ae(()=>({resource:A(n),cost(){let E=new i(this.amount.value);E=i.pow(.95,z.books.metalBook.totalAmount.value).times(E);let oe=i.pow(1.15,E).times(10);return v.elfTraining.metalElfTraining.milestones[4].earned.value&&(oe=i.div(oe,i.add(ce.depth.value,1).sqrt())),v.elfTraining.metalElfTraining.milestones[3].earned.value&&(oe=i.div(oe,10)),oe},inverseCost(E){v.elfTraining.metalElfTraining.milestones[3].earned.value&&(E=i.mul(E,10)),v.elfTraining.metalElfTraining.milestones[4].earned.value&&(E=i.mul(E,i.add(ce.depth.value,1).sqrt()));let oe=i.div(E,10).log(1.15);return oe=oe.div(i.pow(.95,z.books.metalBook.totalAmount.value)),i.isNaN(oe)?i.dZero:oe.floor().max(0)},display:{title:"Metal Drill",description:"An automated machine to help you mine more ore, faster",effectDisplay:f(()=>t(C,null,[o("Mine 2.5x faster. Increase ore mining amount by")," ",Se(x.amount.value),o(" ore per operation")]))},visibility:()=>y(i.gte(x.amount.value,1)||i.div(r.value,b.value).plus(s.value).gte(10)),style:{width:"200px"}})),$=Ae(()=>({resource:A(n),cost(){let E=new i(this.amount.value);E=i.pow(.95,z.books.metalBook.totalAmount.value).times(E);let oe=i.pow(1.15,i.times(E,10)).times(10);return v.elfTraining.metalElfTraining.milestones[4].earned.value&&(oe=i.div(oe,i.add(ce.depth.value,1).sqrt())),v.elfTraining.metalElfTraining.milestones[3].earned.value&&(oe=i.div(oe,10)),oe},inverseCost(E){v.elfTraining.metalElfTraining.milestones[3].earned.value&&(E=i.mul(E,10)),v.elfTraining.metalElfTraining.milestones[4].earned.value&&(E=i.mul(E,i.add(ce.depth.value,1).sqrt()));let oe=i.div(E,10).log(1.15).div(10);return oe=oe.div(i.pow(.95,z.books.metalBook.totalAmount.value)),i.isNaN(oe)?i.dZero:oe.floor().max(0)},display:{title:"Industrial Crucible",description:"A giant automated crucible furnace, letting you smelt ore faster",effectDisplay:f(()=>t(C,null,[o("Automatically smelts")," ",Se(i.times($.amount.value,10)),o(" ore per second")]))},visibility:()=>y(i.gte($.amount.value,1)||i.gte(x.amount.value,4)||i.gte(r.value,50)),style:{width:"200px"}})),Ie=I(!0),Wi=Ae(()=>({resource:ee.coal,cost(){let E=new i(this.amount.value);E=i.pow(.95,z.books.metalBook.totalAmount.value).times(E);let oe=i.pow(10,E).times(1e12);return v.elfTraining.metalElfTraining.milestones[4].earned.value&&(oe=i.div(oe,i.add(ce.depth.value,1).sqrt())),v.elfTraining.metalElfTraining.milestones[3].earned.value&&(oe=i.div(oe,10)),oe},inverseCost(E){v.elfTraining.metalElfTraining.milestones[3].earned.value&&(E=i.mul(E,10)),v.elfTraining.metalElfTraining.milestones[4].earned.value&&(E=i.mul(E,i.add(ce.depth.value,1).sqrt()));let oe=i.div(E,1e12).log(10);return oe=oe.div(i.pow(.95,z.books.metalBook.totalAmount.value)),i.isNaN(oe)?i.dZero:oe.floor().max(0)},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:f(()=>t(C,null,[o("Gain "),Se(i.times(ei.value,100)),o("% more metal per ore")]))},visibility:()=>y(i.gte(Wi.amount.value,1)||Fe.bought.value),style:{width:"200px"}})),ei=Z(()=>i.times(Wi.amount.value,.25));yi.on("update",E=>{var vi;if(i.lt(V.day.value,qn)||V.isMastery.value&&!he.value&&((vi=V.currentlyMastering.value)==null?void 0:vi.name)!==e)return;const oe=i.sub(i.times(de.value,k.value),i.sub(u.value,d.value).max(0)),Ve=i.sub(h.value,i.sub(d.value,u.value).max(0));d.value=i.isNaN(oe)?0:oe,u.value=i.isNaN(Ve)?0:Ve,_.value=i.times(E,de.value).plus(_.value);const Hi=_.value.trunc();_.value=_.value.minus(Hi),a.value=i.add(a.value,i.times(Hi,k.value)),Ie.value&&T(i.min(X.value,i.times(h.value,E)),j.value)});const[De,Ee]=rl(()=>[{title:"Auto Smelt Speed",modifier:J,base:0,unit:"/s",visible(){return i.gt($.amount.value,0)||Re.value}},{title:"Auto Smelt Multiplier",modifier:W,base:1,visible(){return i.gt(j.value,1)}},{title:"Metal per Ore",modifier:c,base:.1},{title:"Ore per Mining Operation",modifier:O,base:1},{title:"Mining Speed",modifier:D,base:.1,unit:"/s"}]),Ci=me(!1),Ke=f(()=>t(Si,{modelValue:Ci.value,"onUpdate:modelValue":E=>Ci.value=E},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:De})),{total:ze,trackerDisplay:ii}=wl({resource:n,goal:25e3,name:e,day:qn,color:l,modal:{show:Ci,display:Ke}}),mi={ore:I(0),bestOre:I(0),oreProgress:I(0),metal:I(0),bestMetal:I(0),totalMetal:I(0),simplePickaxe:{bought:I(!1)},doublePickaxe:{bought:I(!1)},crucible:{bought:I(!1)},coalDrill:{bought:I(!1)},industrialFurnace:{bought:I(!1)},efficientDrill:{bought:I(!1)},oreDrill:{amount:I(0)},industrialCrucible:{amount:I(0)},hotterForge:{amount:I(0)}},he=I(!1),Re=Z(()=>{var E;return he.value||((E=V.currentlyMastering.value)==null?void 0:E.name)===e});return{name:e,day:qn,color:l,ore:a,bestOre:r,oreProgress:_,metal:n,bestMetal:s,totalMetal:ze,simplePickaxe:Ne,doublePickaxe:fe,crucible:we,coalDrill:xe,industrialFurnace:Fe,efficientDrill:ue,oreDrill:x,industrialCrucible:$,autoSmeltEnabled:Ie,hotterForge:Wi,generalTabCollapsed:Ee,minWidth:700,display:f(()=>t(C,null,[We(ii),t(pe,null,null),Re.value?t(C,null,[o("Decoration effect: The lesser of ore mining amount x speed and auto smelting speed is increased to match the greater"),t(pe,null,null)]):null,t(Ui,{resource:n,color:l,style:"margin-bottom: 0",sticky:!1,productionDisplay:f(()=>t(C,null,[Ie.value&&(i.gte($.amount.value,1)||Re.value)?`+${Us([[h.value,"smelting speed"],[Oe.value,"ore gain"],[i.div(ee.computedCoalGain.value,F),"coal gain"]],"/s",i.mul(b.value,j.value))}`:void 0]))},null),t(pe,null,null),We(M),i.gte($.amount.value,1)||Re.value?t("div",{style:{width:"150px"}},[t(Jl,{title:"Auto Smelt",modelValue:Ie.value,"onUpdate:modelValue":E=>Ie.value=E},null)]):void 0,t(pe,null,null),t(Ui,{resource:a,color:l,style:"margin-bottom: 0",sticky:!1,productionDisplay:f(()=>t(C,null,[Es(Ze.value)]))},null),t(pe,null,null),t("div",null,[o("Currently mining "),Te(k.value),o(" ore every")," ",Te(i.recip(de.value)),o(" seconds")]),We(U),t(pe,null,null),ci(Ne,fe,we,xe,Fe,ue),ci(x,$,Wi)])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[Te(n.value),o(" "),n.displayName])])),mastery:mi,mastered:he}}),PI="elves",ln=4,ye=Di(PI,function(){const e="Elves",l="red",n="#911D21",a=qi(()=>({direction:Be.Right,width:600,height:25,fillStyle:`backgroundColor: ${n}`,progress:()=>V.day.value===ln?i.div(li.value,6).times(.8333333333333334).add(i.div(i.add(ee.coal.value,1).log10(),i.log10(1e9)).clamp(0,1).div(6)):1,display:f(()=>V.day.value===ln?i.lt(li.value,6)?t(C,null,[re(li.value),o("/6 elves")]):t(C,null,[re(ee.coal.value),o("/"),re(1e9),o(" coal")]):"")})),r=SI(()=>({thingsToReset:[ge,di,ee],onReset(){const ae=["warmerCutters","warmerPlanters","basicFertilizer","unlockBonfire","dedicatedCutters","dedicatedPlanters","betterFertilizer","unlockKiln","efficientSmelther","arsonistAssistance","refinedCoal","coloredFire"],He=ae.map(bi=>ee[bi].bought.value);setTimeout(()=>{Mi.earned.value?(ge.row1Upgrades.forEach(bi=>bi.bought.value=!0),ge.row2Upgrades.forEach(bi=>bi.bought.value=!0)):ji.earned.value&&(ge.row1Upgrades[4].bought.value=!0,ge.row2Upgrades[4].bought.value=!0),$i.earned.value&&(di.foundationProgress.value=100),gi.earned.value&&(ae.forEach((bi,Bi)=>ee[bi].bought.value=He[Bi]),ee.warmerCutters.bought.value=!0,ee.warmerPlanters.bought.value=!0,ee.basicFertilizer.bought.value=!0,ee.unlockBonfire.bought.value=!0,ee.dedicatedCutters.bought.value=!0,ee.dedicatedPlanters.bought.value=!0,ee.betterFertilizer.bought.value=!0,ee.unlockKiln.bought.value=!0,ee.efficientSmelther.bought.value=!0,ee.arsonistAssistance.bought.value=!0,ee.refinedCoal.bought.value=!0,ee.coloredFire.bought.value=!0)})}})),d=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.cuttersBook.totalAmount.value,.1).add(1),description:"Now You're Logging!",enabled:()=>i.gt(z.books.cuttersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),u=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.plantersBook.totalAmount.value,.1).add(1),description:"The Man Who Planted Trees",enabled:()=>i.gt(z.books.plantersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),c=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.expandersBook.totalAmount.value,.1).add(1),description:"Logjam",enabled:()=>i.gt(z.books.expandersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),b=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.heatedCuttersBook.totalAmount.value,.1).add(1),description:"Fahrenheit 451",enabled:()=>i.gt(z.books.heatedCuttersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),J=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.heatedPlantersBook.totalAmount.value,.1).add(1),description:"Tillamook Burn Country",enabled:()=>i.gt(z.books.heatedPlantersBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),h=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.fertilizerBook.totalAmount.value,.1).add(1),description:"The Garden Tree's Handbook",enabled:()=>i.gt(z.books.fertilizerBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),W=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.smallFireBook.totalAmount.value,.1).add(1),description:"Firestarter",enabled:()=>i.gt(z.books.smallFireBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),j=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.bonfireBook.totalAmount.value,.1).add(1),description:"An Arsonist's Guide to Writer's Homes in New England",enabled:()=>i.gt(z.books.bonfireBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),F=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.kilnBook.totalAmount.value,.1).add(1),description:"Little Fires Everywhere",enabled:()=>i.gt(z.books.kilnBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),X=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.paperBook.totalAmount.value,.1).add(1),description:"The Book Thief",enabled:()=>i.gt(z.books.paperBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),M=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.boxBook.totalAmount.value,.1).add(1),description:"Not a box",enabled:()=>i.gt(z.books.boxBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),T=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.clothBook.totalAmount.value,.1).add(1),description:"Fuzzy Bee and Friends",enabled:()=>i.gt(z.books.clothBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),O=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.coalDrillBook.totalAmount.value,.1).add(1),description:"Drills and Mills",enabled:()=>i.gt(z.books.coalDrillBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),k=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.heavyDrillBook.totalAmount.value,.1).add(1),description:"Deep in the Earth",enabled:()=>i.gt(z.books.heavyDrillBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),D=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.oilBook.totalAmount.value,.1).add(1),description:"Burning the Midnight Oil",enabled:()=>i.gt(z.books.oilBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),de=be(()=>[p(()=>({multiplier:2,description:"6 Elves Trained",enabled:q.earned})),p(()=>({multiplier:()=>i.times(z.books.metalBook.totalAmount.value,.1).add(1),description:"Physical Metallurgy",enabled:()=>i.gt(z.books.metalBook.totalAmount.value,0)})),p(()=>({multiplier:2,description:"10 Elves Trained",enabled:Pe.earned}))]),_=be(()=>[]),[Q,U]=rl(()=>[{title:"Holly Auto-Buy Frequency",modifier:d,base:10,unit:"/s",visible:_e.cuttersElf.bought},{title:"Ivy Auto-Buy Frequency",modifier:u,base:10,unit:"/s",visible:_e.plantersElf.bought},{title:"Hope Auto-Buy Frequency",modifier:c,base:10,unit:"/s",visible:_e.expandersElf.bought},{title:"Jack Auto-Buy Frequency",modifier:b,base:10,unit:"/s",visible:_e.heatedCuttersElf.bought},{title:"Mary Auto-Buy Frequency",modifier:J,base:10,unit:"/s",visible:_e.heatedPlantersElf.bought},{title:"Noel Auto-Buy Frequency",modifier:h,base:10,unit:"/s",visible:_e.fertilizerElf.bought},{title:"Joy Auto-Buy Frequency",modifier:W,base:10,unit:"/s",visible:_e.smallFireElf.bought},{title:"Faith Auto-Buy Frequency",modifier:j,base:10,unit:"/s",visible:_e.bonfireElf.bought},{title:"Snowball Auto-Buy Frequency",modifier:F,base:10,unit:"/s",visible:_e.kilnElf.bought},{title:"Star Auto-Buy Frequency",modifier:X,base:10,unit:"/s",visible:_e.paperElf.bought},{title:"Bell Auto-Buy Frequency",modifier:M,base:10,unit:"/s",visible:_e.boxElf.bought},{title:"Gingersnap Auto-Buy Frequency",modifier:T,base:10,unit:"/s",visible:_e.clothElf.bought},{title:"Peppermint Auto-Buy Frequency",modifier:O,base:10,unit:"/s",visible:v.elfTraining.expandersElfTraining.milestones[3].earned},{title:"Frosty Auto-Buy Frequency",modifier:k,base:10,unit:"/s",visible:v.elfTraining.cutterElfTraining.milestones[4].earned.value},{title:"Cocoa Auto-Buy Frequency",modifier:D,base:10,unit:"/s",visible:v.elfTraining.heatedCutterElfTraining.milestones[4].earned.value},{title:"Twinkle Auto-Buy Frequency",modifier:de,base:10,unit:"/s",visible:v.elfTraining.fertilizerElfTraining.milestones[4].earned}]),ie=me(!1),Oe=f(()=>t(Si,{modelValue:ie.value,"onUpdate:modelValue":ae=>ie.value=ae},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Q})),Ce=Z(()=>{let ae=i.pow(4,li.value).times(1e6);return i.gte(li.value,9)&&(ae=i.times(ae,1e15)),i.gte(li.value,12)&&(ae=i.times(ae,1e15)),ae});function Ze(ae){var $l,kl,zl;const He=I(0),bi=I(0),Bi=ae.hasToggle?I(!1):me(!0),dl=Z(()=>ae.cooldownModifier.apply(10)),ni=Ri(($l=ae.canBuy)!=null?$l:!0),ri=Ri((kl=ae.buyMax)!=null?kl:!1),Oi=Ri((zl=ae.independent)!=null?zl:!1);function N(xi){if(R.bought.value&&m(ni)){He.value=i.add(He.value,xi);const Ki=i.recip(dl.value);bi.value+=xi/Ki.toNumber();let K=i.div(He.value,Ki).floor();He.value=i.sub(He.value,K.mul(Ki)),m(ri)&&(K=i.dInf),(is(ae.buyable)?ae.buyable:[ae.buyable]).forEach(Ue=>{var el,jl;if(m(Ue.visibility)!==Ji.Visible)return;const pi=i.min(i.sub(Ue.inverseCost((el=Ue.resource)==null?void 0:el.value),m(Oi)?0:Ue.amount.value).add(1),K);pi.lte(0)||(Ue.amount.value=i.add(Ue.amount.value,pi),K=i.sub(K,pi),(jl=ae.onAutoPurchase)==null||jl.call(ae,Ue,pi),K.lte(0))})}}const R=B(()=>({...ae,buyable:void 0,toggle:Bi,buyProgress:He,update:N,resource:ee.coal,cost:Ce,computedAutoBuyCooldown:dl,amountOfTimesDone:bi,name:ae.name,canAfford(){return i.gte(ee.coal.value,m(Ce))&&!V.isMastery.value},display:()=>({title:ae.name,description:f(()=>t(C,null,[ae.description,R.bought.value||["Peppermint","Twinkle","Cocoa","Frosty"].includes(ae.name)?null:t(C,null,[" ",o("Training this elf will require resetting all your progress from days 1-3.")]),R.bought.value&&ae.hasToggle===!0?t(C,null,[t(Jl,{title:ae.toggleDesc,"onUpdate:modelValue":xi=>Bi.value=xi,modelValue:Bi.value},null)]):null])),showCost:!R.bought.value}),style:"width: 190px",onPurchase(){var xi;(xi=ae.onPurchase)==null||xi.call(ae),["Peppermint","Twinkle","Cocoa","Frosty","Carol"].includes(ae.name)||r.reset()}}));return R}const Ne=Ze({name:"Holly",description:"Holly will automatically purchase cutters you can afford, without actually spending any logs.",buyable:ge.row1Buyables[0],cooldownModifier:d,buyMax:()=>v.elfTraining.cutterElfTraining.milestones[1].earned.value}),fe=Ze({name:"Ivy",description:"Ivy will automatically purchase planters you can afford, without actually spending any logs.",buyable:ge.row1Buyables[1],cooldownModifier:u,buyMax:()=>v.elfTraining.planterElfTraining.milestones[1].earned.value}),we=Ze({name:"Hope",description:"Hope will automatically purchase forest expanders you can afford, without actually spending any logs.",buyable:ge.row1Buyables[2],cooldownModifier:c,buyMax:()=>v.elfTraining.expandersElfTraining.milestones[1].earned.value}),xe=[Ne,fe,we],Fe=Ze({name:"Jack",description:"Jack will automatically purchase heated cutters you can afford, without actually spending any coal.",buyable:ee.heatedCutters,cooldownModifier:b,buyMax:()=>v.elfTraining.heatedCutterElfTraining.milestones[2].earned.value}),ue=Ze({name:"Mary",description:"Mary will automatically purchase heated planters you can afford, without actually spending any coal.",buyable:ee.heatedPlanters,cooldownModifier:J,buyMax:()=>v.elfTraining.heatedPlanterElfTraining.milestones[2].earned.value}),x=Ze({name:"Noel",description:"Noel will automatically purchase fertilized soil you can afford, without actually spending any ash.",buyable:ee.moreFertilizer,cooldownModifier:h,buyMax:()=>v.elfTraining.heatedPlanterElfTraining.milestones[2].earned.value}),$=[Fe,ue,x],Ie=Ze({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:ee.buildFire,cooldownModifier:W,buyMax:()=>v.elfTraining.heatedCutterElfTraining.milestones[2].earned.value,visibility:()=>y(si.upgrades.logsUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased small fires",onAutoPurchase(ae,He){Ie.toggle.value&&(ee.activeFires.value=i.add(ee.activeFires.value,He))},onPurchase(){V.days[4].recentlyUpdated.value=!0}}),Wi=Ze({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:ee.buildBonfire,cooldownModifier:j,buyMax:()=>v.elfTraining.heatedPlanterElfTraining.milestones[2].earned.value,visibility:()=>y(si.upgrades.ashUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased bonfires",onAutoPurchase(ae,He){var Bi;const bi=i.mul(m((Bi=ae.cost)!=null?Bi:0),He);ee.activeFires.value=i.sub(ee.activeFires.value,bi).max(0),ee.buildFire.amount.value=i.sub(ee.buildFire.amount.value,bi).max(0),Wi.toggle.value&&(ee.activeBonfires.value=i.add(ee.activeBonfires.value,He))},onPurchase(){V.days[4].recentlyUpdated.value=!0},canBuy:ee.unlockBonfire.bought,independent:!0}),ei=Ze({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:ee.buildKiln,cooldownModifier:F,visibility:()=>y(si.upgrades.coalUpgrade.bought.value),hasToggle:!0,toggleDesc:"Activate auto-purchased kilns",onAutoPurchase(ae,He){ei.toggle.value&&(ee.activeKilns.value=i.add(ee.activeKilns.value,He))},onPurchase(){V.days[4].recentlyUpdated.value=!0},canBuy:ee.unlockKiln.bought}),De=[Ie,Wi,ei],Ee=Ze({name:"Star",description:"Star will automatically purchase all books you can afford, without actually spending any paper.",buyable:Object.values(z.books),cooldownModifier:X,visibility:()=>y(ai.elfUpgrades.paperElf.bought.value)}),Ci=Ze({name:"Bell",description:"Bell will automatically purchase all box buyables you can afford, without actually spending any boxes.",buyable:[...Object.values(si.buyables),...Object.values(si.buyables2)],cooldownModifier:M,visibility:()=>y(ai.elfUpgrades.boxElf.bought.value)}),Ke=Ze({name:"Gingersnap",description:"Gingersnap will automatically purchase all cloth buyables you can afford, without actually spending any resources.",buyable:[Yi.buildPens,Yi.betterShears,Yi.fasterSpinning],cooldownModifier:T,visibility:()=>y(ai.elfUpgrades.clothElf.bought.value)}),ze=[Ee,Ci,Ke],ii=Ze({name:"Peppermint",description:"Peppermint will automatically purchase all coal drills you can afford, without actually spending any resources.",buyable:ee.buildDrill,cooldownModifier:O,visibility:()=>y(v.elfTraining.expandersElfTraining.milestones[3].earned.value),hasToggle:!0,toggleDesc:"Activate auto-purchased coal drills",onAutoPurchase(ae,He){ii.toggle.value&&(ee.activeDrills.value=i.add(ee.activeDrills.value,He))}}),mi=Ze({name:"Frosty",description:"Frosty will automatically purchase all drill types in the oil section, without actually spending any resources.",buyable:[ce.buildHeavy,ce.buildHeavy2,ce.buildExtractor],cooldownModifier:k,visibility:()=>y(v.elfTraining.cutterElfTraining.milestones[4].earned.value),hasToggle:!0,toggleDesc:"Activate auto-purchased oil drills",onAutoPurchase(ae,He){mi.toggle.value&&(ae===ce.buildHeavy?ce.activeHeavy.value=i.add(ce.activeHeavy.value,He):ae===ce.buildHeavy2?ce.activeHeavy2.value=i.add(ce.activeHeavy2.value,He):ae===ce.buildExtractor&&(ce.activeExtractor.value=i.add(ce.activeExtractor.value,He)))}}),he=Ze({name:"Cocoa",description:"Cocoa will automatically purchase all oil-using machines you can afford, without actually spending any resources.",buyable:[ce.buildPump,ce.buildBurner,ce.buildSmelter],cooldownModifier:D,visibility:()=>y(v.elfTraining.heatedCutterElfTraining.milestones[4].earned.value),hasToggle:!0,toggleDesc:"Activate auto-purchased oil-using machines",onAutoPurchase(ae,He){mi.toggle.value&&(ae===ce.buildPump?ce.activePump.value=i.add(ce.activePump.value,He):ae===ce.buildBurner?ce.activeBurner.value=i.add(ce.activeBurner.value,He):ae===ce.buildSmelter&&(ce.activeSmelter.value=i.add(ce.activeSmelter.value,He)))}}),Re=[ii,mi,he],E=Ze({name:"Twinkle",description:"Twinkle will automatically purchase all metal machines you can afford, without actually spending any resources.",buyable:[Zi.oreDrill,Zi.industrialCrucible,Zi.hotterForge],cooldownModifier:de,visibility:()=>y(v.elfTraining.fertilizerElfTraining.milestones[4].earned.value)}),oe=[E],Ve=Object.fromEntries(["red","yellow","blue","orange","green","purple"].map(ae=>[Ye.dyes[ae].buyable.id,ae])),Hi=Ze({name:"Carol",description:"Carol will automatically purchase all primary dyes you can afford, without actually spending any resources.",buyable:Object.values(Ye.dyes).map(ae=>ae.buyable),cooldownModifier:_,visibility:()=>y(zi.unlockDyeElfMilestone.earned.value&&!V.isMastery.value),buyMax:()=>v.elfTraining.dyeElfTraining.milestones[2].earned.value,onAutoPurchase(ae,He){if(ae.amount.value=i.sub(ae.amount.value,He),["orange","green","purple"].includes(Ve[ae.id])&&!Zs.milestones.secondaryDyeElf.earned.value)return;const bi=Ye.dyes[Ve[ae.id]];bi.amount.value=i.times(2,ae.amount.value).plus(He).plus(1).times(He).div(2).times(bi.computedToGenerate.value).div(i.add(ae.amount.value,1)).plus(bi.amount.value),ae.amount.value=i.add(ae.amount.value,He)}}),vi=[Hi],_e={cuttersElf:Ne,plantersElf:fe,expandersElf:we,heatedCuttersElf:Fe,heatedPlantersElf:ue,fertilizerElf:x,smallFireElf:Ie,bonfireElf:Wi,kilnElf:ei,paperElf:Ee,boxElf:Ci,clothElf:Ke,coalDrillElf:ii,heavyDrillElf:mi,oilElf:he,metalElf:E,dyeElf:Hi},li=Z(()=>Object.values(_e).filter(ae=>ae.bought.value).length),Li=G(()=>({display:{requirement:"1 Elf Trained",effectDisplay:"Manual cutting and planting can happen twice as often for each trained elf"},shouldEarn:()=>i.gte(li.value,1)})),ji=G(()=>({display:{requirement:"2 Elves Trained",effectDisplay:"Research I & II aren't reset after training"},shouldEarn:()=>i.gte(li.value,2),visibility:()=>y(Li.earned.value)})),ne=G(()=>({display:{requirement:"3 Elves Trained",effectDisplay:"Coal gain is raised to the 1.25"},shouldEarn:()=>i.gte(li.value,3),visibility:()=>y(ji.earned.value)})),Xe=G(()=>({display:{requirement:"4 Elves Trained",effectDisplay:"Trees give twice as many logs"},shouldEarn:()=>i.gte(li.value,4),visibility:()=>y(ne.earned.value)})),P=G(()=>({display:{requirement:"5 Elves Trained",effectDisplay:"Forest is twice as large"},shouldEarn:()=>i.gte(li.value,5),visibility:()=>y(Xe.earned.value)})),q=G(()=>({display:{requirement:"6 Elves Trained",effectDisplay:"Elves work twice as fast"},shouldEarn:()=>i.gte(li.value,6),visibility:()=>y(P.earned.value)})),$i=G(()=>({display:{requirement:"7 Elves Trained",effectDisplay:"Workshop Foundation starts at 100% complete after training"},shouldEarn:()=>i.gte(li.value,7),visibility:()=>y(q.earned.value&&V.day.value>5)})),_i=G(()=>({display:{requirement:"8 Elves Trained",effectDisplay:"Forest is twice as large (again)"},shouldEarn:()=>i.gte(li.value,8),visibility:()=>y($i.earned.value)})),Mi=G(()=>({display:{requirement:"9 Elves Trained",effectDisplay:"Trees upgrades aren't reset after training"},shouldEarn:()=>i.gte(li.value,9),visibility:()=>y(_i.earned.value)})),Pe=G(()=>({display:{requirement:"10 Elves Trained",effectDisplay:"Elves work twice as fast (again)"},shouldEarn:()=>i.gte(li.value,10),visibility:()=>y(V.day.value>=10&&Mi.earned.value)})),gi=G(()=>({display:{requirement:"11 Elves Trained",effectDisplay:"Coal upgrades aren't reset after training"},shouldEarn:()=>i.gte(li.value,11),visibility:()=>y(Pe.earned.value)})),ol=G(()=>({display:{requirement:"12 Elves Trained",effectDisplay:"Double coal gain"},shouldEarn:()=>i.gte(li.value,12),visibility:()=>y(gi.earned.value)})),Cl=[Li,ji,ne,Xe,P,q,$i,_i,Mi,Pe,gi,ol],gl={manualMilestone:Li,researchMilestone:ji,coalGainMilestone:ne,logGainMilestone:Xe,forestMilestone:P,elvesMilestone:q,foundationMilestone:$i,forestMilestone2:_i,treeUpgradesMilestone:Mi,elvesMilestone2:Pe,coalUpgradesMilestone:gi,coalGainMilestone2:ol},{collapseMilestones:Wl,display:vl}=dn(gl);yi.on("update",ae=>{i.lt(V.day.value,ln)||Object.values(_e).forEach(He=>He.update(ae))}),Pi(()=>{V.day.value===ln&&i.gte(li.value,6)&&i.gte(ee.coal.value,1e9)&&V.completeDay()});const Ol={elves:{cuttersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},plantersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},expandersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},heatedCuttersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},heatedPlantersElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},fertilizerElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},smallFireElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},bonfireElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},kilnElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},paperElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},boxElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},clothElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},coalDrillElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},heavyDrillElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},oilElf:{buyProgress:I(0),amountOfTimesDone:I(0),toggle:I(!1),bought:I(!1)},metalElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)},dyeElf:{buyProgress:I(0),amountOfTimesDone:I(0),bought:I(!1)}},milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]};return{name:e,day:ln,color:l,elves:_e,totalElves:li,milestones:Cl,collapseMilestones:Wl,generalTabCollapsed:U,minWidth:700,display:f(()=>t(C,null,[t("div",null,[V.day.value===ln?`Reach ${re(6)} trained elves and ${re(1e9)} ${ee.coal.displayName} to complete the day`:`${e} Complete!`," ",o("-")," ",t("button",{class:"button",style:"display: inline-block;",onClick:()=>ie.value=!0},[o("Check Modifiers")])]),We(a),We(Oe),t(pe,null,null),t("div",{style:"width: 600px"},[fl(xe,$,De,ze,Re,oe.concat(vi))]),vl()])),mastery:Ol}}),_I="coal",$n=3,ee=Di(_I,function(){const e="Coal",l="#151716",n="#B2BeB5",s="var(--foreground)",a=Vi(0,"coal"),r=Vi(0,"ash"),d=I(0),u=Z(()=>i.times(d.value,1e3)),c=Z(()=>i.times(d.value,.1)),b=Z(()=>{let N=i.times(d.value,50);return v.elfTraining.smallfireElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),J=Ae(()=>({resource:ge.logs,cost(){let N=i.times(D.amount.value,m(D.cost)).plus(this.amount.value);return i.gte(N,100)&&(N=i.pow(N,2).div(100)),i.gte(N,1e4)&&(N=i.pow(N,2).div(1e4)),N=i.pow(.95,z.books.smallFireBook.totalAmount.value).times(N),N.pow(Oi.value?1.1:1.5).times(1e4)},inverseCost(N){let R=i.div(N,1e4).root(Oi.value?1.1:1.5);return R=R.div(i.pow(.95,z.books.smallFireBook.totalAmount.value)),i.gte(R,1e4)&&(R=i.mul(R,1e4).root(2)),i.gte(R,100)&&(R=i.mul(R,100).root(2)),R=R.sub(i.times(D.amount.value,m(D.cost))),i.isNaN(R)?i.dZero:R.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Small Fire")]),t("br",null,null),o("Burn 1000 logs for 0.1 coal and 50 ash"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(u.value),o(" logs/sec"),t("br",null,null),o("+"),le(c.value),o(" coal/sec"),t("br",null,null),o("+"),le(b.value),o(" ash/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(J.cost)),o(" "),J.resource.displayName])),onPurchase(){d.value=i.add(d.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(!V.isMastery.value||Oi.value)})),{min:h,max:W,add:j,remove:F}=bl({active:d,buyable:J}),X=Vi(J.amount,"small fires"),M=I(0),T=Z(()=>i.times(M.value,1e4)),O=Z(()=>{let N=i.times(M.value,10);return v.elfTraining.bonfireElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),k=Z(()=>{let N=i.times(M.value,1e3);return v.elfTraining.bonfireElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),D=Ae(()=>({resource:X,cost(){return i.pow(.95,z.books.bonfireBook.totalAmount.value).times(10)},inverseCost(N){return i.div(N,i.pow(.95,z.books.bonfireBook.totalAmount.value).times(10)).floor()},display:f(()=>t(C,null,[t("h3",null,[o("Bonfire")]),t("br",null,null),o("Burn 10,000 logs for 10 coal and 1000 ash"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(T.value),o(" logs/sec"),t("br",null,null),o("+"),le(O.value),o(" coal/sec"),t("br",null,null),o("+"),le(k.value),o(" ash/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(D.cost)),o(" "),D.resource.displayName])),onPurchase(N){d.value=i.sub(d.value,N).max(0),M.value=i.add(M.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(ze.bought.value)})),{min:de,max:_,add:Q,remove:U}=bl({buyable:D,active:M}),ie=I(0),Oe=Z(()=>i.times(ie.value,1e6)),Ce=Z(()=>{let N=i.times(ie.value,1e4);return v.elfTraining.kilnElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),Ze=Z(()=>{let N=i.times(ie.value,1e4);return v.elfTraining.kilnElfTraining.milestones[0].earned.value&&(N=N.times(5)),N}),Ne=Ae(()=>({resource:ge.logs,cost(){let N=this.amount.value;return i.gte(N,100)&&(N=i.pow(N,2).div(100)),i.gte(N,1e4)&&(N=i.pow(N,2).div(1e4)),N=i.pow(.95,z.books.kilnBook.totalAmount.value).times(N),i.pow(1.1,N).times(1e7)},inverseCost(N){let R=i.div(N,1e7).log(1.1);return R=R.div(i.pow(.95,z.books.kilnBook.totalAmount.value)),i.gte(R,1e4)&&(R=i.mul(R,1e4).root(2)),i.gte(R,100)&&(R=i.mul(R,100).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Charcoal Kiln")]),t("br",null,null),o("Burn 1,000,000 logs for 10,000 coal and 10,000 ash"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("-"),le(Oe.value),o(" logs/sec"),t("br",null,null),o("+"),le(Ce.value),o(" coal/sec"),t("br",null,null),o("+"),le(Ze.value),o(" ash/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m(Ne.cost)),o(" "),Ne.resource.displayName])),onPurchase(){ie.value=i.add(ie.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(E.bought.value)})),{min:fe,max:we,add:xe,remove:Fe}=bl({buyable:Ne,active:ie}),ue=I(0),x=Z(()=>i.times(i.pow(ue.value,ce.row2Upgrades[1].bought.value?2:1),5e7).times(Zi.efficientDrill.bought.value?2:1).times(v.elfTraining.smallfireElfTraining.milestones[2].earned.value?2:1).times(v.elfTraining.bonfireElfTraining.milestones[2].earned.value?2:1).times(v.elfTraining.kilnElfTraining.milestones[2].earned.value?2:1)),$=Ae(()=>({resource:Zi.metal,cost(){let N=this.amount.value;i.gte(N,100)&&(N=i.pow(N,2).div(100)),i.gte(N,1e4)&&(N=i.pow(N,2).div(1e4)),N=i.pow(.95,z.books.coalDrillBook.totalAmount.value).times(N);let R=i.pow(1.15,N).times(10);return v.elfTraining.fertilizerElfTraining.milestones[2].earned.value&&(R=R.div(i.add(ge.totalLogs.value,Math.E).ln())),v.elfTraining.coalDrillElfTraining.milestones[2].earned.value&&(R=R.div(10)),R},inverseCost(N){v.elfTraining.coalDrillElfTraining.milestones[2].earned.value&&(N=i.mul(N,10)),v.elfTraining.fertilizerElfTraining.milestones[2].earned.value&&(N=i.mul(N,i.add(ge.totalLogs.value,Math.E).ln()));let R=i.div(N,10).log(1.15);return R=R.div(i.pow(.95,z.books.coalDrillBook.totalAmount.value)),i.gte(R,1e4)&&(R=i.mul(R,1e4).root(2)),i.gte(R,100)&&(R=i.mul(R,100).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:f(()=>t(C,null,[t("h3",null,[o("Coal Drill")]),t("br",null,null),o("Dig through the ground to find 50,000,000 coal"),t("br",null,null),t("br",null,null),o("Currently:"),t("br",null,null),o("+"),le(x.value),o(" coal/sec"),t("br",null,null),t("br",null,null),o("Cost: "),re(m($.cost)),o(" "),$.resource.displayName])),onPurchase(){ue.value=i.add(ue.value,1)},style:{color:s,width:"160px",flexGrow:1},visibility:()=>y(Zi.coalDrill.bought.value)})),{max:Ie,min:Wi,add:ei,remove:De}=bl({buyable:$,active:ue}),Ee=B(()=>({resource:A(a),cost:5,display:{title:"Warmer Cutters",description:"Cut down twice as many trees/s"},style:{color:s}})),Ci=B(()=>({resource:A(a),cost:5,display:{title:"Warmer Planters",description:"Plant twice as many trees/s"},style:{color:s}})),Ke=B(()=>({resource:A(r),cost:5e3,display:{title:"Ashy Soil",description:"Trees give 25% more logs"},style:{color:s}})),ze=B(()=>({resource:X,cost:10,display:{title:"Bigger Fires",description:"Put all those fires together into a larger blaze"},onPurchase(){X.value=i.add(X.value,this.cost)},style:{color:s}})),ii=[Ee,Ci,Ke,ze],mi=B(()=>({resource:A(a),cost:250,display:{title:"Dedicated Cutter Heaters",description:"Double the bonus from Heated Cutters"},style:{color:s},visibility:()=>y(ze.bought.value)})),he=B(()=>({resource:A(a),cost:250,display:{title:"Dedicated Planter Heaters",description:"Double the bonus from Heated Planters"},style:{color:s},visibility:()=>y(ze.bought.value)})),Re=B(()=>({canAfford(){return i.gte(ge.logs.value,1e5)&&i.gte(r.value,1e5)},onPurchase(){ge.logs.value=i.sub(ge.logs.value,1e5),r.value=i.sub(r.value,1e5)},display:f(()=>t(C,null,[t("h3",null,[o("Mulched Soil")]),t("br",null,null),o("Double the bonus from Fertilized Soil"),t("br",null,null),t("br",null,null),o("Cost: "),re(1e5),o(" "),ge.logs.displayName,t("br",null,null),re(1e5),o(" "),r.displayName])),style:{color:s},visibility:()=>y(ze.bought.value)})),E=B(()=>({resource:ge.logs,cost:1e7,display:{title:"Efficient Fires",description:"Move the fires underground to keep the coal from turning to ash"},style:{color:s},visibility:()=>y(ze.bought.value)})),oe=[mi,he,Re,E],Ve=B(()=>({resource:A(a),cost:1e19,display:{title:"Efficient Crucibles",description:"Double auto smelting speed and triple metal gain from auto smelting"},style:{color:s},visibility:()=>y(ce.depthMilestones[4].earned.value)})),Hi=B(()=>({resource:A(a),cost:1e45,display:{title:"Arsonist Assistance",description:"Every elf at or above level 5 doubles ash gain"},style:{color:s},visibility:()=>y(v.elfTraining.coalDrillElfTraining.milestones[3].earned.value)})),vi=B(()=>({resource:A(a),cost:1e50,display:{title:"Refined Coal",description:"Refineries boost coal gain"},style:{color:s},visibility:()=>y(v.elfTraining.coalDrillElfTraining.milestones[3].earned.value)})),_e=B(()=>({resource:A(a),cost:1e55,display:{title:"Colored Fire",description:"Green dye also affects small fire synergy"},style:{color:s},visibility:()=>y(v.elfTraining.coalDrillElfTraining.milestones[3].earned.value)})),li=[Ve,Hi,vi,_e],Li=Ae(()=>({resource:A(a),cost(){let N=this.amount.value;return i.gte(N,50)&&(N=i.pow(N,2).div(50)),i.gte(N,200)&&(N=i.pow(N,2).div(200)),i.gte(N,2e6)&&(N=i.pow(N,2).div(2e6)),N=i.pow(.95,z.books.heatedCuttersBook.totalAmount.value).times(N),v.elfTraining.heatedCutterElfTraining.milestones[0].earned.value&&(N=i.pow(.95,z.books.heatedCuttersBook.totalAmount.value).times(N)),N=N.div(zi.boosts.rainbow1.value),i.add(N,1).pow(2.5).times(10)},inverseCost(N){let R=i.div(N,10).root(2.5).sub(1);return R=R.mul(zi.boosts.rainbow1.value),v.elfTraining.heatedCutterElfTraining.milestones[0].earned.value&&(R=R.div(i.pow(.95,z.books.heatedCuttersBook.totalAmount.value))),R=R.div(i.pow(.95,z.books.heatedCuttersBook.totalAmount.value)),i.gte(R,2e6)&&(R=i.mul(R,2e6).root(2)),i.gte(R,200)&&(R=i.mul(R,200).root(2)),i.gte(R,50)&&(R=i.mul(R,50).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:{title:"Heated Cutters",description:"Even warmer cutters cut down trees faster",effectDisplay:f(()=>t(C,null,[o("Cutters cut down trees "),le(q.value),o("x faster")]))},style:{color:s},visibility:()=>y(Ee.bought.value)})),ji=Ae(()=>({resource:A(a),cost(){let N=this.amount.value;return i.gte(N,50)&&(N=i.pow(N,2).div(50)),i.gte(N,200)&&(N=i.pow(N,2).div(200)),i.gte(N,2e6)&&(N=i.pow(N,2).div(2e6)),N=i.pow(.95,z.books.heatedPlantersBook.totalAmount.value).times(N),v.elfTraining.heatedPlanterElfTraining.milestones[0].earned.value&&(N=i.pow(.95,z.books.heatedPlantersBook.totalAmount.value).times(N)),N=N.div(zi.boosts.rainbow1.value),i.add(N,1).pow(2.5).times(10)},inverseCost(N){let R=i.div(N,10).root(2.5).sub(1);return R=R.mul(zi.boosts.rainbow1.value),v.elfTraining.heatedPlanterElfTraining.milestones[0].earned.value&&(R=R.div(i.pow(.95,z.books.heatedPlantersBook.totalAmount.value))),R=R.div(i.pow(.95,z.books.heatedPlantersBook.totalAmount.value)),i.gte(R,2e6)&&(R=i.mul(R,2e6).root(2)),i.gte(R,200)&&(R=i.mul(R,200).root(2)),i.gte(R,50)&&(R=i.mul(R,50).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:{title:"Heated Planters",description:"Even warmer planters plant trees faster",effectDisplay:f(()=>t(C,null,[o("Planters plant trees "),le(_i.value),o("x faster")]))},style:{color:s},visibility:()=>y(Ci.bought.value)})),ne=Ae(()=>({resource:A(r),cost(){let N=this.amount.value;return i.gte(N,50)&&(N=i.pow(N,2).div(50)),i.gte(N,200)&&(N=i.pow(N,2).div(200)),i.gte(N,2e6)&&(N=i.pow(N,2).div(2e6)),N=i.pow(.95,z.books.fertilizerBook.totalAmount.value).times(N),v.elfTraining.fertilizerElfTraining.milestones[1].earned.value&&(N=i.pow(.95,z.books.fertilizerBook.totalAmount.value).times(N)),N=N.div(zi.boosts.rainbow1.value),i.add(N,1).pow(1.5).times(5e4)},inverseCost(N){let R=i.div(N,5e4).root(1.5).sub(1);return R=R.mul(zi.boosts.rainbow1.value),v.elfTraining.fertilizerElfTraining.milestones[1].earned.value&&(R=R.div(i.pow(.95,z.books.fertilizerBook.totalAmount.value))),R=R.div(i.pow(.95,z.books.fertilizerBook.totalAmount.value)),i.gte(R,2e6)&&(R=i.mul(R,2e6).root(2)),i.gte(R,200)&&(R=i.mul(R,200).root(2)),i.gte(R,50)&&(R=i.mul(R,50).root(2)),i.isNaN(R)?i.dZero:R.floor().max(0)},display:{title:"Fertilized Soil",description:"More fertilizer helps trees grow bigger",effectDisplay:f(()=>t(C,null,[o("Trees give "),le(Pe.value),o("x more logs")]))},style:{color:s},visibility:()=>y(Ke.bought.value)})),Xe=[Li,ji,ne],P=be(()=>[je(()=>({addend(){return i.times(Li.amount.value,.25)},description:"Heated Cutters",enabled(){return i.gt(Li.amount.value,0)}})),p(()=>({multiplier:2,description:"Dedicated Cutter Heaters",enabled:()=>mi.bought.value}))]),q=Z(()=>P.apply(1)),$i=be(()=>[je(()=>({addend(){return i.times(ji.amount.value,.25)},description:"Heated Planters",enabled(){return i.gt(ji.amount.value,0)}})),p(()=>({multiplier:2,description:"Dedicated Planter Heaters",enabled:()=>he.bought.value}))]),_i=Z(()=>$i.apply(1)),Mi=be(()=>[je(()=>({addend(){return i.times(ne.amount.value,.25)},description:"Fertilized Soil",enabled(){return i.gt(ne.amount.value,0)}})),p(()=>({multiplier:2,description:"Mulched Soil",enabled:()=>Re.bought.value}))]),Pe=Z(()=>Mi.apply(1)),gi=be(()=>[je(()=>({addend(){return c.value},description:"Small Fires",enabled(){return i.gt(d.value,0)}})),je(()=>({addend(){return O.value},description:"Bonfires",enabled(){return i.gt(M.value,0)}})),je(()=>({addend(){return Ce.value},description:"Charcoal Kilns",enabled(){return i.gt(ie.value,0)}})),je(()=>({addend(){return x.value},description:"Coal Drills",enabled(){return i.gt(ue.value,0)}})),p(()=>({multiplier:2,description:"Carry coal in boxes",enabled:si.upgrades.coalUpgrade.bought})),p(()=>({multiplier:()=>i.div(si.buyables.coalBoxesBuyable.amount.value,2).add(1),description:"Carry more coal",enabled:si.upgrades.coalUpgrade.bought})),p(()=>({multiplier:()=>{let N=J.amount.value;v.elfTraining.smallfireElfTraining.milestones[0].earned.value&&(N=i.div(D.amount.value,10).add(N));let R=i.div(N,1e4).add(1);return _e.bought.value&&(R=i.add(R,Ye.dyes.green.amount.value)),R},description:"Small Fires Synergy",enabled:ye.elves.smallFireElf.bought})),p(()=>({multiplier:()=>i.div(D.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:ye.elves.bonfireElf.bought})),p(()=>({multiplier:()=>i.div(Ne.amount.value,100).times(Ye.boosts.green2.value).add(1),description:"Kiln Synergy",enabled:ye.elves.kilnElf.bought})),p(()=>({multiplier:2,description:"Mining overalls",enabled:Yi.metalUpgrades.metalUpgrade2.bought})),p(()=>({multiplier:3,description:"Mining helmet",enabled:Yi.metalUpgrades.metalUpgrade3.bought})),p(()=>({multiplier:4,description:"Felt-Gripped Pick",enabled:Yi.metalUpgrades.metalUpgrade4.bought})),p(()=>({multiplier:2,description:"12 Elves Trained",enabled:ye.milestones[11].earned})),tl(()=>({exponent:1.25,description:"3 Elves Trained",enabled:ye.milestones[2].earned,supportLowNumbers:!0})),p(()=>({multiplier:()=>i.mul(ce.depth.value,.25).pow(v.elfTraining.coalDrillElfTraining.milestones[4].earned.value?1.5:1).add(1),description:"5m Well Depth",enabled:ce.depthMilestones[0].earned})),p(()=>({multiplier:ce.extractorCoal,description:"Heavy Extractor",enabled:()=>i.gt(ce.activeExtractor.value,0)})),p(()=>({multiplier:i.add(a.value,1).log10().add(1).sqrt(),description:"Peppermint Level 2",enabled:v.elfTraining.coalDrillElfTraining.milestones[1].earned})),p(()=>({multiplier:i.add(ai.buildRefinery.amount.value,1).sqrt(),description:"Refined Coal",enabled:vi.bought})),tl(()=>({exponent:1.05,description:"Jack Level 2",enabled:v.elfTraining.heatedCutterElfTraining.milestones[1].earned}))]),ol=Z(()=>gi.apply(0)),Cl=be(()=>[je(()=>({addend(){return b.value},description:"Small Fires",enabled(){return i.gt(d.value,0)}})),je(()=>({addend(){return k.value},description:"Bonfires",enabled(){return i.gt(M.value,0)}})),je(()=>({addend(){return Ze.value},description:"Charcoal Kilns",enabled(){return i.gt(ie.value,0)}})),p(()=>({multiplier:2,description:"Carry ash in boxes",enabled:si.upgrades.ashUpgrade.bought})),p(()=>({multiplier:()=>i.div(si.buyables.ashBoxesBuyable.amount.value,2).add(1),description:"Carry more ash",enabled:si.upgrades.ashUpgrade.bought})),p(()=>({multiplier:()=>{let N=J.amount.value;return v.elfTraining.smallfireElfTraining.milestones[0].earned.value&&(N=i.div(D.amount.value,100).add(N)),i.div(N,1e3).add(1)},description:"Small Fires Synergy",enabled:ye.elves.smallFireElf.bought})),p(()=>({multiplier:()=>i.div(D.amount.value,1e3).add(1),description:"Bonfires Synergy",enabled:ye.elves.bonfireElf.bought})),p(()=>({multiplier:()=>i.div(Ne.amount.value,100).times(Ye.boosts.green2.value).add(1),description:"Kiln Synergy",enabled:ye.elves.kilnElf.bought})),p(()=>({multiplier:4,description:"Mining boots",enabled:Yi.metalUpgrades.metalUpgrade1.bought})),p(()=>({multiplier:()=>i.pow(2,v.level5Elves.value),description:"Arson Assistance",enabled:Hi.bought})),tl(()=>({exponent:1.1,description:"Joy Level 2",enabled:v.elfTraining.smallfireElfTraining.milestones[1].earned})),tl(()=>({exponent:1.1,description:"Faith Level 2",enabled:v.elfTraining.bonfireElfTraining.milestones[1].earned})),tl(()=>({exponent:1.1,description:"Snowball Level 2",enabled:v.elfTraining.kilnElfTraining.milestones[1].earned})),je(()=>({addend:z.paper,description:"Paper Burning",enabled:z.upgrades2.ashUpgrade.bought}))]),gl=Z(()=>Cl.apply(0)),Wl=be(()=>[je(()=>({addend(){return i.negate(u.value)},description:"Small Fires",enabled(){return i.gt(d.value,0)}})),je(()=>({addend(){return i.negate(T.value)},description:"Bonfires",enabled(){return i.gt(M.value,0)}})),je(()=>({addend(){return i.negate(Oe.value)},description:"Charcoal Kilns",enabled(){return i.gt(ie.value,0)}}))]),vl=Z(()=>Wl.apply(0)),[Ol,ae]=rl(()=>[{title:"Log Consumption",modifier:Wl,base:0,visible(){return i.gt(d.value,0)||i.gt(M.value,0)||i.gt(ie.value,0)}},{title:"Coal Gain",modifier:gi,base:0,visible(){return i.gt(d.value,0)||i.gt(M.value,0)||i.gt(ie.value,0)}},{title:"Ash Gain",modifier:Cl,base:0,visible(){return i.gt(d.value,0)||i.gt(M.value,0)||i.gt(ie.value,0)}}]),He=me(!1),bi=f(()=>t(Si,{modelValue:He.value,"onUpdate:modelValue":N=>He.value=N},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Ol}));yi.on("update",N=>{i.lt(V.day.value,$n)||i.times(N,vl.value).negate().gt(ge.logs.value)||(ge.logs.value=i.times(N,vl.value).plus(ge.logs.value),a.value=i.times(N,ol.value).plus(a.value),r.value=i.times(N,gl.value).plus(r.value),d.value=i.max(d.value,0))});const{total:Bi,trackerDisplay:dl}=wl({resource:a,goal:1e7,name:e,day:$n,color:l,modal:{show:He,display:bi}}),ni={coal:I(0),totalCoal:I(0),ash:I(0),activeFires:I(0),buildFire:{amount:I(0)},activeBonfires:I(0),buildBonfire:{amount:I(0)},activeKilns:I(0),buildKiln:{amount:I(0)},activeDrills:I(0),buildDrill:{amount:I(0)},warmerCutters:{bought:I(!1)},warmerPlanters:{bought:I(!1)},basicFertilizer:{bought:I(!1)},unlockBonfire:{bought:I(!1)},dedicatedCutters:{bought:I(!1)},dedicatedPlanters:{bought:I(!1)},betterFertilizer:{bought:I(!1)},unlockKiln:{bought:I(!1)},efficientSmelther:{bought:I(!1)},arsonistAssistance:{bought:I(!1)},refinedCoal:{bought:I(!1)},coloredFire:{bought:I(!1)},heatedCutters:{amount:I(0)},heatedPlanters:{amount:I(0)},moreFertilizer:{amount:I(0)}},ri=I(!1),Oi=Z(()=>{var N;return ri.value||((N=V.currentlyMastering.value)==null?void 0:N.name)===e});return{name:e,day:$n,color:l,coal:a,totalCoal:Bi,computedCoalGain:ol,ash:r,activeFires:d,buildFire:J,activeBonfires:M,buildBonfire:D,activeKilns:ie,buildKiln:Ne,activeDrills:ue,buildDrill:$,warmerCutters:Ee,warmerPlanters:Ci,basicFertilizer:Ke,unlockBonfire:ze,dedicatedCutters:mi,dedicatedPlanters:he,betterFertilizer:Re,unlockKiln:E,efficientSmelther:Ve,arsonistAssistance:Hi,refinedCoal:vi,coloredFire:_e,heatedCutters:Li,heatedPlanters:ji,moreFertilizer:ne,computedHeatedCutterEffect:q,computedHeatedPlanterEffect:_i,computedFertilizerEffect:Pe,generalTabCollapsed:ae,minWidth:700,display:f(()=>t(C,null,[We(dl),t(pe,null,null),Oi.value?t(C,null,[o("Decoration effect: Small fires' price increases drastically slower"),t(pe,null,null)]):null,t(Ui,{resource:a,color:l,style:{marginBottom:0},resourceStyle:{textShadow:"grey 0px 0px 10px"},effectDisplay:i.gt(ol.value,0)?`+${le(ol.value)}/s`:void 0},null),t(pe,null,null),t(Ui,{resource:r,color:n,style:"margin-bottom: 0",effectDisplay:i.gt(gl.value,0)?`+${le(gl.value)}/s`:void 0},null),t(pe,null,null),t(rn,null,{default:()=>[t(ll,null,{default:()=>[We(J),t("div",null,[re(i.floor(d.value)),o("/"),re(i.floor(J.amount.value))]),ci(h,F,j,W)]}),ze.bought.value?t(C,null,[t(pe,null,null),t(ll,null,{default:()=>[We(D),t("div",null,[re(M.value),o("/"),re(D.amount.value)]),ci(de,U,Q,_)]})]):void 0,E.bought.value?t(C,null,[t(pe,null,null),t(ll,null,{default:()=>[We(Ne),t("div",null,[re(ie.value),o("/"),re(Ne.amount.value)]),ci(fe,Fe,xe,we)]})]):void 0,Zi.coalDrill.bought.value?t(C,null,[t(pe,null,null),t(ll,null,{default:()=>[We($),t("div",null,[re(ue.value),o("/"),re($.amount.value)]),ci(Wi,De,ei,Ie)]})]):void 0]}),t(pe,null,null),fl(ii,oe,li),ci(...Xe)])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(a.value),o(" "),a.displayName])])),mastery:ni,mastered:ri}});const qI="management",nn=12,sl=13,v=Di(qI,()=>{const e="Management",l="green",n=qi(()=>({direction:Be.Right,width:600,height:25,fillStyle:`backgroundColor: ${l}`,progress:()=>V.day.value===nn?li.reduce((K,Ue)=>K+Math.min(1,Ue.level.value/3),0)/li.length:V.day.value===sl&&V.days[sl-1].opened.value?Li.reduce((K,Ue)=>K+Math.min(1,Ue.level.value/5),0)/Li.length:1,display:f(()=>V.day.value===nn||V.day.value===sl&&V.days[sl-1].opened.value?t(C,null,[re(i.times(m(n.progress),V.day.value===sl?80:36)),o("/"),V.day.value===sl?80:36,o(" elf levels")]):"")})),s=Z(()=>{let K=0;for(const Ue of Object.values(_e))K+=Ue.level.value;return K}),a=Z(()=>Object.values(_e).reduce((K,Ue)=>K.add(Ue.exp.value),new i(0))),r=Z(()=>Object.values(_e).filter(K=>K.level.value>=5).length),d=B(()=>({display:{title:"Teach the Elves",description:"The Elves probably need to be taught if they're to do better. Maybe you'll build a school so you can teach them?"},resource:ge.logs,cost:1e21,visibility:()=>y(!V.isMastery.value)})),u=B(()=>({display:{title:"Add a Classroom?",description:"Yay, you have a school. Too bad it has pretty much nothing in it. Maybe you could add some classrooms to make it less boring and more enticing to the Elves?"},visibility:()=>y(d.bought.value),resource:si.boxes,style:"width: 150px",cost:1e13})),c=B(()=>({display:{title:"Advanced Training",description:"Time for some advanced training! Now that all the elves know the basics, you have a foundation you can truly build off of. Everyone seems to be learning twice as quickly!"},visibility:()=>y(!V.isMastery.value&&V.day.value>=sl&&V.days[sl-1].opened.value),resource:si.boxes,style:"width: 150px",cost:1e25})),b=be(()=>[p(()=>({multiplier:N,description:"Classroom Effect",enabled:u.bought})),p(()=>({multiplier:2,description:"Advanced Training",enabled:c.bought})),p(()=>({multiplier:2,description:"Star Level 4",enabled:de[3].earned.value})),p(()=>({multiplier:2,description:"Carry experience in boxes???",enabled:si.row3Upgrades.xpUpgrade.bought}))]),J=Z(()=>b.apply(1));function h(K,Ue,...pi){const el=I(0);let jl=["Holly","Ivy","Hope","Jack","Mary","Noel","Joy","Faith","Snowball","Star","Bell","Gingersnap","Peppermint","Frosty","Cocoa","Twinkle","Carol"].indexOf(K.name)+1;(K.name=="Star"||K.name=="Bell")&&(jl/=3);const H=4e3*jl,se=Z(()=>i.pow(5,ul.value).mul(H)),ul=Z(()=>i.affordGeometricSeries(el.value,H,5,0).min(ri.amount.value).toNumber()),Vs=Z(()=>i.sub(el.value,i.sumGeometricSeries(ul.value,H,5,0))),Mt=qi(()=>({direction:Be.Right,width:160,height:14,style:()=>({"margin-top":"8px",background:l,"box-shadow":Ne.value==K.name?"0 0 12px black":ne.value[K.name]?"0 0 12px white":""}),baseStyle:"margin-top: -1px",fillStyle:()=>({"margin-top":"-1px","transition-duration":"0s",background:"white",animation:ne.value[K.name]?".5s focused-xp-bar linear infinite":""}),borderStyle:()=>i.gte(ul.value,ri.amount.value)?"border-color: red":"",progress:()=>i.div(Vs.value,se.value),display:f(()=>i.gte(ul.value,ri.amount.value)?t(C,null,[o("Limit reached")]):t(C,null,[le(Vs.value),o("/"),le(se.value),o(" XP")]))})),{collapseMilestones:Xt,display:xt}=dn(Ue),Ws=be(()=>[p(()=>({multiplier:J,description:"Global XP Multiplier"})),p(()=>({multiplier:ji,description:"Focus Multiplier",enabled:()=>i.gt(P.value,0)&&ne.value[K.name]==!0})),...pi]),vs=Z(()=>Ws.apply(.1));return Qi(()=>({display:{title:f(()=>t(C,null,[K.name,o(" - LV "),re(ul.value)])),description:f(()=>t(C,null,[K.name,o(" can buy buyables "),re(K.computedAutoBuyCooldown.value)," ",o("times per second, gaining")," ",i.gte(ul.value,ri.amount.value)?0:le(i.mul(vs.value,K.computedAutoBuyCooldown.value))," ",o("XP/sec."),We(Mt)]))},style:()=>({width:"190px",background:Ne.value==K.name?"var(--accent2)":""}),onClick(){Ne.value=K.name},canClick(){return Ne.value!==K.name},visibility:()=>y(K.bought.value),name:K.name,state:Xt,displayMilestone:xt,level:ul,exp:el,milestones:Ue,timeForExp:K.computedAutoBuyCooldown,amountOfTimesDone:K.amountOfTimesDone,elfXPGainComputed:vs,elfXPGain:Ws}))}const W=[G(()=>({display:{requirement:"Holly Level 1",effectDisplay:f(()=>t(C,null,[o("Multiply log gain by "),t("sup",null,[o("9")]),t(Zl,null,{default:()=>[o("Cutter amount")]}),o(".")]))},shouldEarn:()=>we.level.value>=1})),G(()=>({display:{requirement:"Holly Level 2",effectDisplay:"Holly now buys max."},visibility:()=>y(W[0].earned.value),shouldEarn:()=>we.level.value>=2})),G(()=>({display:{requirement:"Holly Level 3",effectDisplay:f(()=>t(C,null,[o("Multiply all cloth actions' effectiveness by log"),t("sub",null,[o("10")]),o("(Cutter amount).")]))},visibility:()=>y(W[1].earned.value),shouldEarn:()=>we.level.value>=3})),G(()=>({display:{requirement:"Holly Level 4",effectDisplay:"Multiply auto cutting amount by 1.1 per day completed"},visibility:()=>y(W[2].earned.value&&V.day.value>=13),shouldEarn:()=>we.level.value>=4})),G(()=>({display:{requirement:"Holly Level 5",effectDisplay:"Unlock an elf that autobuys oil drills and extractors."},visibility:()=>y(W[3].earned.value&&V.day.value>=13),shouldEarn:()=>we.level.value>=5,onComplete(){V.days[3].recentlyUpdated.value=!0}}))],j=[G(()=>({display:{requirement:"Ivy Level 1",effectDisplay:"Planters are now twice as efficent."},shouldEarn:()=>xe.level.value>=1})),G(()=>({display:{requirement:"Ivy Level 2",effectDisplay:"Ivy now buys max."},visibility:()=>y(j[0].earned.value),shouldEarn:()=>xe.level.value>=2})),G(()=>({display:{requirement:"Ivy Level 3",effectDisplay:f(()=>t(C,null,[o("Auto planting speed is multiplied by 2"),t("sup",null,[o("(log"),t("sub",null,[o("10")]),o("(trees"),t("sup",null,[o("0.2")]),o("))")])]))},visibility:()=>y(j[1].earned.value),shouldEarn:()=>xe.level.value>=3})),G(()=>({display:{requirement:"Ivy Level 4",effectDisplay:"Divide planter cost by 10"},visibility:()=>y(j[2].earned.value&&V.day.value>=13),shouldEarn:()=>xe.level.value>=4})),G(()=>({display:{requirement:"Ivy Level 5",effectDisplay:"The lesser of auto planting and cutting amounts is increased to match the greater"},visibility:()=>y(j[3].earned.value&&V.day.value>=13),shouldEarn:()=>xe.level.value>=5}))],F=[G(()=>({display:{requirement:"Hope Level 1",effectDisplay:"Forest size grows by trees planted per second raised to ^0.99"},shouldEarn:()=>Fe.level.value>=1})),G(()=>({display:{requirement:"Hope Level 2",effectDisplay:"Hope now buys max."},visibility:()=>y(F[0].earned.value),shouldEarn:()=>Fe.level.value>=2})),G(()=>({display:{requirement:"Hope Level 3",effectDisplay:"The workshop can be expanded past 100%, but costs scale faster."},visibility:()=>y(F[1].earned.value),shouldEarn:()=>Fe.level.value>=3})),G(()=>({display:{requirement:"Hope Level 4",effectDisplay:"Unlock an elf that autobuys coal drills."},visibility:()=>y(F[2].earned.value&&V.day.value>=13),shouldEarn:()=>Fe.level.value>=4,onComplete(){V.days[3].recentlyUpdated.value=!0}})),G(()=>({display:{requirement:"Hope Level 5",effectDisplay:"Raise workshop expansion cost by 0.99"},visibility:()=>y(F[3].earned.value&&V.day.value>=13),shouldEarn:()=>Fe.level.value>=5}))],X=[G(()=>({display:{requirement:"Jack Level 1",effectDisplay:'"Fahrenheit 451" affects "Heated Cutters" twice.'},shouldEarn:()=>x.level.value>=1})),G(()=>({display:{requirement:"Jack Level 2",effectDisplay:"Coal gain is raised to the ^1.05"},visibility:()=>y(X[0].earned.value),shouldEarn:()=>x.level.value>=2})),G(()=>({display:{requirement:"Jack Level 3",effectDisplay:"Jack and Joy now buy max."},visibility:()=>y(X[1].earned.value),shouldEarn:()=>x.level.value>=3})),G(()=>({display:{requirement:"Jack Level 4",effectDisplay:f(()=>t(C,null,[o("Oil gain is multiplied by "),t(Zl,null,{default:()=>[o("total elf levels")]}),o(".")]))},visibility:()=>y(X[2].earned.value&&V.day.value>=13),shouldEarn:()=>x.level.value>=4})),G(()=>({display:{requirement:"Jack Level 5",effectDisplay:"Unlock an elf that autobuys oil-using machines."},visibility:()=>y(X[3].earned.value&&V.day.value>=13),shouldEarn:()=>x.level.value>=5,onComplete(){V.days[3].recentlyUpdated.value=!0}}))],M=[G(()=>({display:{requirement:"Mary Level 1",effectDisplay:'"Tillamook Burn Country" affects "Heated Planters" twice.'},shouldEarn:()=>$.level.value>=1})),G(()=>({display:{requirement:"Mary Level 2",effectDisplay:"Metal gain is raised to the 1.1."},visibility:()=>y(M[0].earned.value),shouldEarn:()=>$.level.value>=2})),G(()=>({display:{requirement:"Mary Level 3",effectDisplay:"Mary and Faith now buy max."},visibility:()=>y(M[1].earned.value),shouldEarn:()=>$.level.value>=3})),G(()=>({display:{requirement:"Mary Level 4",effectDisplay:"Double automatic tree planting speed"},visibility:()=>y(M[2].earned.value&&V.day.value>=13),shouldEarn:()=>$.level.value>=4})),G(()=>({display:{requirement:"Mary Level 5",effectDisplay:f(()=>t(C,null,[o("Auto smelting speed is multiplied by "),t(Zl,null,{default:()=>[o("total XP/1e6")]}),o(".")]))},visibility:()=>y(M[3].earned.value&&V.day.value>=13),shouldEarn:()=>$.level.value>=5}))],T=[G(()=>({display:{requirement:"Noel Level 1",effectDisplay:f(()=>t(C,null,[o("Log gain is multiplied by "),t(Zl,null,{default:()=>[o("total elf levels")]}),o(".")]))},shouldEarn:()=>Ie.level.value>=1})),G(()=>({display:{requirement:"Noel Level 2",effectDisplay:`"The Garden Tree's Handbook" affects "Fertilized Soil" twice`},visibility:()=>y(T[0].earned.value),shouldEarn:()=>Ie.level.value>=2})),G(()=>({display:{requirement:"Noel Level 3",effectDisplay:"Divide the coal drill cost by ln(Total logs + e)"},visibility:()=>y(T[1].earned.value),shouldEarn:()=>Ie.level.value>=3})),G(()=>({display:{requirement:"Noel Level 4",effectDisplay:f(()=>t(C,null,[o("Reduce oil refinery cost by (Plastic amount)"),t("sup",null,[o("2")])]))},visibility:()=>y(T[2].earned.value&&V.day.value>=13),shouldEarn:()=>Ie.level.value>=4})),G(()=>({display:{requirement:"Noel Level 5",effectDisplay:"Unlock an elf that autobuys metal machines"},visibility:()=>y(T[3].earned.value&&V.day.value>=13),shouldEarn:()=>Ie.level.value>=5,onComplete(){V.days[3].recentlyUpdated.value=!0}}))],O=[G(()=>({display:{requirement:"Joy Level 1",effectDisplay:"Small Fire synergy counts bonfires at reduced rate."},shouldEarn:()=>ei.level.value>=1})),G(()=>({display:{requirement:"Joy Level 2",effectDisplay:"Raise ash gain to the 1.1"},visibility:()=>y(O[0].earned.value),shouldEarn:()=>ei.level.value>=2})),G(()=>({display:{requirement:"Joy Level 3",effectDisplay:"Coal drill is 2x more powerful"},visibility:()=>y(O[1].earned.value),shouldEarn:()=>ei.level.value>=3})),G(()=>({display:{requirement:"Joy Level 4",effectDisplay:"Metal gain is boosted by heavy drills"},visibility:()=>y(O[2].earned.value&&V.day.value>=13),shouldEarn:()=>ei.level.value>=4})),G(()=>({display:{requirement:"Joy Level 5",effectDisplay:"Raise Industrial Crucible's effect to the 1.1"},visibility:()=>y(O[3].earned.value&&V.day.value>=13),shouldEarn:()=>ei.level.value>=5}))],k=[G(()=>({display:{requirement:"Faith Level 1",effectDisplay:"Multiply bonfire efficiency by 5."},shouldEarn:()=>De.level.value>=1})),G(()=>({display:{requirement:"Faith Level 2",effectDisplay:"Raise ash gain to the 1.1"},visibility:()=>y(k[0].earned.value),shouldEarn:()=>De.level.value>=2})),G(()=>({display:{requirement:"Faith Level 3",effectDisplay:"Coal drill is 2x more powerful"},visibility:()=>y(k[1].earned.value),shouldEarn:()=>De.level.value>=3})),G(()=>({display:{requirement:"Faith Level 4",effectDisplay:"Oil gain is boosted by heavy drill drills"},visibility:()=>y(k[2].earned.value&&V.day.value>=13),shouldEarn:()=>De.level.value>=4})),G(()=>({display:{requirement:"Faith Level 5",effectDisplay:"Raise Industrial Crucible's effect to the 1.1"},visibility:()=>y(k[3].earned.value&&V.day.value>=13),shouldEarn:()=>De.level.value>=5}))],D=[G(()=>({display:{requirement:"Snowball Level 1",effectDisplay:"Multiply kiln efficiency by 5."},shouldEarn:()=>Ee.level.value>=1})),G(()=>({display:{requirement:"Snowball Level 2",effectDisplay:"Raise ash gain to the 1.1"},visibility:()=>y(D[0].earned.value),shouldEarn:()=>Ee.level.value>=2})),G(()=>({display:{requirement:"Snowball Level 3",effectDisplay:"Coal drill is 2x more powerful"},visibility:()=>y(D[1].earned.value),shouldEarn:()=>Ee.level.value>=3})),G(()=>({display:{requirement:"Snowball Level 4",effectDisplay:"Plastic gain is boosted by heavy extractors"},visibility:()=>y(D[2].earned.value&&V.day.value>=13),shouldEarn:()=>Ee.level.value>=4})),G(()=>({display:{requirement:"Snowball Level 5",effectDisplay:"Raise Industrial Crucible's effect to the 1.1"},visibility:()=>y(D[3].earned.value&&V.day.value>=13),shouldEarn:()=>Ee.level.value>=5}))],de=[G(()=>({display:{requirement:"Star Level 1",effectDisplay:"Book cost is divided by total books bought."},shouldEarn:()=>Ke.level.value>=1})),G(()=>({display:{requirement:"Star Level 2",effectDisplay:"Pulp requires 10x less ash"},visibility:()=>y(de[0].earned.value),shouldEarn:()=>Ke.level.value>=2})),G(()=>({display:{requirement:"Star Level 3",effectDisplay:"Book cost scaling 5x -> 4x"},visibility:()=>y(de[1].earned.value),shouldEarn:()=>Ke.level.value>=3})),G(()=>({display:{requirement:"Star Level 4",effectDisplay:"Double all elf xp gain"},visibility:()=>y(de[2].earned.value&&V.day.value>=13),shouldEarn:()=>Ke.level.value>=4})),G(()=>({display:{requirement:"Star Level 5",effectDisplay:"Gain 5 free books for all prior elves that are at level 5 or above."},visibility:()=>y(de[3].earned.value&&V.day.value>=13),shouldEarn:()=>Ke.level.value>=5}))],_=[G(()=>({display:{requirement:"Bell Level 1",effectDisplay:f(()=>t(C,null,[o("Every box buyable adds "),t(Zl,null,{default:()=>[o("level")]}),o(" levels to same-row box buyables.")]))},shouldEarn:()=>ze.level.value>=1})),G(()=>({display:{requirement:"Bell Level 2",effectDisplay:"Box gain ^1.1"},visibility:()=>y(_[0].earned.value),shouldEarn:()=>ze.level.value>=2})),G(()=>({display:{requirement:"Bell Level 3",effectDisplay:"All box buyables scaling bases -1"},visibility:()=>y(_[1].earned.value),shouldEarn:()=>ze.level.value>=3})),G(()=>({display:{requirement:"Bell Level 4",effectDisplay:"Unlock a second row of box buyables"},visibility:()=>y(_[2].earned.value&&V.day.value>=13),shouldEarn:()=>ze.level.value>=4,onComplete(){V.days[5].recentlyUpdated.value=!0}})),G(()=>({display:{requirement:"Bell Level 5",effectDisplay:"Unlock another row of box upgrades"},visibility:()=>y(_[3].earned.value&&V.day.value>=13),shouldEarn:()=>ze.level.value>=5,onComplete(){V.days[5].recentlyUpdated.value=!0}}))],Q=[G(()=>({display:{requirement:"Gingersnap Level 1",effectDisplay:"Multiply all primary dye colors by ln(cloth + e)."},shouldEarn:()=>ii.level.value>=1})),G(()=>({display:{requirement:"Gingersnap Level 2",effectDisplay:f(()=>t(C,null,[o("Multiply all cloth actions' effectiveness by log"),t("sub",null,[o("10")]),o("(dye sum + 10)")]))},visibility:()=>y(Q[0].earned.value),shouldEarn:()=>ii.level.value>=2})),G(()=>({display:{requirement:"Gingersnap Level 3",effectDisplay:"Double all dye colors and cloth actions, but reset all dyes."},visibility:()=>y(Q[1].earned.value),shouldEarn:()=>ii.level.value>=3,onComplete(){["red","yellow","blue","orange","green","purple"].forEach(K=>{Ye.dyes[K].amount.value=0,Ye.dyes[K].buyable.amount.value=0})}})),G(()=>({display:{requirement:"Gingersnap Level 4",effectDisplay:"Raise secondary dyes' first effects to the 1.1 but reset primary dyes"},visibility:()=>y(Q[2].earned.value&&V.day.value>=13),shouldEarn:()=>ii.level.value>=4,onComplete(){["red","yellow","blue"].forEach(K=>{Ye.dyes[K].amount.value=0,Ye.dyes[K].buyable.amount.value=0})}})),G(()=>({display:{requirement:"Gingersnap Level 5",effectDisplay:"Unlock another row of focus upgrades"},visibility:()=>y(Q[3].earned.value&&V.day.value>=13),shouldEarn:()=>ii.level.value>=5,onComplete(){V.days[12].recentlyUpdated.value=!0}}))],U=[G(()=>({display:{requirement:"Peppermint Level 1",effectDisplay:"The coal drill exponent is increased from 2 to 2.5"},shouldEarn:()=>he.level.value>=1})),G(()=>({display:{requirement:"Peppermint Level 2",effectDisplay:"Coal boosts its own gain"},visibility:()=>y(U[0].earned.value),shouldEarn:()=>he.level.value>=2})),G(()=>({display:{requirement:"Peppermint Level 3",effectDisplay:"The coal drill cost is 10x cheaper"},visibility:()=>y(U[1].earned.value),shouldEarn:()=>he.level.value>=3})),G(()=>({display:{requirement:"Peppermint Level 4",effectDisplay:"Unlock 3 coal upgrades"},visibility:()=>y(U[2].earned.value&&V.day.value>=13),shouldEarn:()=>he.level.value>=4,onComplete(){V.days[2].recentlyUpdated.value=!0}})),G(()=>({display:{requirement:"Peppermint Level 5",effectDisplay:"Well depth boosts coal gain an additional half time"},visibility:()=>y(U[3].earned.value&&V.day.value>=13),shouldEarn:()=>he.level.value>=5}))],ie=[G(()=>({display:{requirement:"Twinkle Level 1",effectDisplay:"Schools multiply metal gain per ore"},shouldEarn:()=>Re.level.value>=1})),G(()=>({display:{requirement:"Twinkle Level 2",effectDisplay:"Each Twinkle level multiplies auto smelting speed by 1.25"},visibility:()=>y(ie[0].earned.value),shouldEarn:()=>Re.level.value>=2})),G(()=>({display:{requirement:"Twinkle Level 3",effectDisplay:"Auto smelting multi is tripled."},visibility:()=>y(ie[1].earned.value),shouldEarn:()=>Re.level.value>=3})),G(()=>({display:{requirement:"Twinkle Level 4",effectDisplay:"All metal machines are 10x cheaper"},visibility:()=>y(ie[2].earned.value&&V.day.value>=13),shouldEarn:()=>Re.level.value>=4})),G(()=>({display:{requirement:"Twinkle Level 5",effectDisplay:f(()=>t(C,null,[t(Zl,null,{default:()=>[o("Well depth")]}),o(" divides metal machine costs")]))},visibility:()=>y(ie[3].earned.value&&V.day.value>=13),shouldEarn:()=>Re.level.value>=5}))],Oe=[G(()=>({display:{requirement:"Cocoa Level 1",effectDisplay:"The depth boost to oil gain is better"},shouldEarn:()=>E.level.value>=1})),G(()=>({display:{requirement:"Cocoa Level 2",effectDisplay:"Total oil gained boosts drill power"},visibility:()=>y(Oe[0].earned.value),shouldEarn:()=>E.level.value>=2})),G(()=>({display:{requirement:"Cocoa Level 3",effectDisplay:"Double drill power and oil gain"},visibility:()=>y(Oe[1].earned.value),shouldEarn:()=>E.level.value>=3})),G(()=>({display:{requirement:"Cocoa Level 4",effectDisplay:"Plastics are produced 5x faster but cost 5x as much oil"},visibility:()=>y(Oe[2].earned.value&&V.day.value>=13),shouldEarn:()=>E.level.value>=4})),G(()=>({display:{requirement:"Cocoa Level 5",effectDisplay:"Unlock another row of oil upgrades"},visibility:()=>y(Oe[3].earned.value&&V.day.value>=13),shouldEarn:()=>E.level.value>=5,onComplete(){V.days[8].recentlyUpdated.value=!0}}))],Ce=[G(()=>({display:{requirement:"Frosty Level 1",effectDisplay:"Oil boosts Star and Bell's xp gain"},shouldEarn:()=>oe.level.value>=1})),G(()=>({display:{requirement:"Frosty Level 2",effectDisplay:"Oil pumps are 10x cheaper"},visibility:()=>y(Ce[0].earned.value),shouldEarn:()=>oe.level.value>=2})),G(()=>({display:{requirement:"Frosty Level 3",effectDisplay:"Oil burners act like there are ^1.5 of them"},visibility:()=>y(Ce[1].earned.value),shouldEarn:()=>oe.level.value>=3})),G(()=>({display:{requirement:"Frosty Level 4",effectDisplay:f(()=>t(C,null,[o("Heavy drill drill's ln is now log"),t("sub",null,[o("2.5")])]))},visibility:()=>y(Ce[2].earned.value&&V.day.value>=13),shouldEarn:()=>oe.level.value>=4})),G(()=>({display:{requirement:"Frosty Level 5",effectDisplay:"Unlock another row of paper upgrades"},visibility:()=>y(Ce[3].earned.value&&V.day.value>=13),shouldEarn:()=>oe.level.value>=5,onComplete(){V.days[4].recentlyUpdated.value=!0}}))],Ze=[G(()=>({display:{requirement:"Carol Level 1",effectDisplay:"Double primary dye gain"},shouldEarn:()=>Ve.level.value>=1})),G(()=>({display:{requirement:"Carol Level 2",effectDisplay:"Double secondary dye gain"},shouldEarn:()=>Ve.level.value>=2,visibility:()=>y(Ze[0].earned.value)})),G(()=>({display:{requirement:"Carol Level 3",effectDisplay:"Buy maximum primary dyes"},shouldEarn:()=>Ve.level.value>=3,visibility:()=>y(Ze[1].earned.value)})),G(()=>({display:{requirement:"Carol Level 4",effectDisplay:"Secondary dyes don't spend primary dyes"},shouldEarn:()=>Ve.level.value>=4,visibility:()=>y(Ze[2].earned.value&&V.day.value>=16)})),G(()=>({display:{requirement:"Carol Level 5",effectDisplay:"Buy maximum secondary dyes"},shouldEarn:()=>Ve.level.value>=5,visibility:()=>y(Ze[3].earned.value&&V.day.value>=16)}))],Ne=I("Holly"),fe=f(()=>{const K=Object.values(_e).find(Ue=>Ue.name===Ne.value);return K==null?(console.warn("This should not happen.",Ne.value),""):t(C,null,[Ne.value,o("'s milestones: "),K.displayMilestone()])}),we=h(ye.elves.cuttersElf,W),xe=h(ye.elves.plantersElf,j),Fe=h(ye.elves.expandersElf,F),ue=[we,xe,Fe],x=h(ye.elves.heatedCuttersElf,X),$=h(ye.elves.heatedPlantersElf,M),Ie=h(ye.elves.fertilizerElf,T),Wi=[x,$,Ie],ei=h(ye.elves.smallFireElf,O),De=h(ye.elves.bonfireElf,k),Ee=h(ye.elves.kilnElf,D),Ci=[ei,De,Ee],Ke=h(ye.elves.paperElf,de,p(()=>({multiplier:()=>i.add(ce.oil.value,1).log10(),description:"Frosty Level 1",enabled:Ce[0].earned}))),ze=h(ye.elves.boxElf,_,p(()=>({multiplier:()=>i.add(ce.oil.value,1).log10(),description:"Frosty Level 1",enabled:Ce[0].earned}))),ii=h(ye.elves.clothElf,Q),mi=[Ke,ze,ii],he=h(ye.elves.coalDrillElf,U),Re=h(ye.elves.metalElf,ie),E=h(ye.elves.oilElf,Oe),oe=h(ye.elves.heavyDrillElf,Ce),Ve=h(ye.elves.dyeElf,Ze),Hi=[he,oe,E],vi=[Re,Ve],_e={cutterElfTraining:we,planterElfTraining:xe,expandersElfTraining:Fe,heatedCutterElfTraining:x,heatedPlanterElfTraining:$,fertilizerElfTraining:Ie,smallfireElfTraining:ei,bonfireElfTraining:De,kilnElfTraining:Ee,paperElfTraining:Ke,boxElfTraining:ze,clothElfTraining:ii,coalDrillElfTraining:he,metalElfTraining:Re,oilElfTraining:E,heavyDrillElfTraining:oe,dyeElfTraining:Ve},li=[we,xe,Fe,x,$,Ie,ei,De,Ee,Ke,ze,ii],Li=[we,xe,Fe,x,$,Ie,ei,De,Ee,Ke,ze,ii,he,Re,E,oe];yi.on("update",K=>{if(!(V.day.value=1&&(Ue.amountOfTimesDone.value-=pi,i.lt(Ue.level.value,ri.amount.value)&&(Ue.exp.value=i.mul(Ue.elfXPGainComputed.value,pi).add(Ue.exp.value)))}if(P.value=Math.max(P.value-K,0),Xe.value=Math.max(Xe.value-K,0),i.eq(P.value,0)){ne.value={};const Ue=bi.bought.value?2e3:1e3;let pi=1-Math.abs(Math.sin(Date.now()/Ue*2));He.bought.value&&(pi=1-(1-pi)**2),ji.value=i.pow(Mi.value,pi)}}});const ji=I(1),ne=I({}),Xe=I(0),P=I(0),q=be(()=>[p(()=>({multiplier:2,description:"Focus Upgrade 1",enabled:Wl.bought}))]),$i=be(()=>[je(()=>({addend:1,description:"Focus Upgrade 2",enabled:vl.bought})),je(()=>({addend:1,description:"Focus Upgrade 6",enabled:Bi.bought}))]),_i=be(()=>[je(()=>({addend:-5,description:"Focus Upgrade 3",enabled:Ol.bought}))]),Mi=Z(()=>q.apply(10)),Pe=Z(()=>$i.apply(3)),gi=Z(()=>_i.apply(15)),ol=qi(()=>({direction:Be.Right,width:566,height:50,style:"border-radius: 4px 4px 0 0",borderStyle:"border-radius: 4px 4px 0 0",fillStyle:()=>({background:P.value>0?l:"#7f7f00",animation:P.value>0?"1s focused-focus-bar linear infinite":"",opacity:P.value>0?P.value/10:1,transition:"none"}),progress:()=>i.sub(ji.value,1).div(i.sub(Mi.value,1)).toNumber(),display:f(()=>t(C,null,[le(ji.value),o("x"),P.value>0?t(C,null,[" ",o("to "),Object.keys(ne.value).join(", "),o(" for")," ",mn(P.value)]):""]))})),Cl=Qi(()=>({display:{title:"Focus",description:f(()=>t(C,null,[o("Motivate elves to focus, multiplying "),re(Pe.value),o(" random elves' XP gain by up to "),le(Mi.value),o("x for 10 seconds, equal to the focus bar's effect."),i.gte(Xe.value,0)?t(C,null,[t("br",null,null),o("Reroll cooldown: "),mn(Xe.value)]):""]))},style:{width:"300px"},canClick:()=>i.eq(Xe.value,0),onClick(){Xe.value=i.fromValue(gi.value).toNumber(),P.value=10,gl(Object.values(_e).filter(K=>m(K.visibility)===Ji.Visible).length,Pe.value)}}));function gl(K,Ue){var jl;let pi=0;ne.value={};const el=i.min(Ue,K);for(;el.gt(pi);){const H=Object.values(_e)[Math.floor(Math.random()*K)],se=(jl=H==null?void 0:H.name)!=null?jl:"";!ne.value[se]&&m(H.visibility)===Ji.Visible&&(ne.value[se]=!0,pi++)}}const Wl=B(()=>({display:{title:"Focus Booster",description:"Multiplies the maximum experience multiplier from focus by 2"},resource:ge.logs,cost:1e25})),vl=B(()=>({display:{title:"Focus Buffer",description:"Increase elves affected by focus by 1"},resource:ge.logs,cost:1e28})),Ol=B(()=>({display:{title:"Focus Upgrader",description:"Focus can now be rerolled every 10 seconds"},resource:ge.logs,cost:1e31})),ae=[Wl,vl,Ol],He=B(()=>({display:{title:"Focus Improver",description:"The bar moves slower when it's closer to the right and faster when it's closer to the left"},resource:ge.logs,visibility:()=>y(_e.clothElfTraining.milestones[4].earned.value),cost:1e34})),bi=B(()=>({display:{title:"Focus Focuser",description:"The bar moves 2x slower"},resource:ge.logs,visibility:()=>y(_e.clothElfTraining.milestones[4].earned.value),cost:1e35})),Bi=B(()=>({display:{title:"Focus Doubler",description:"Focus applies to an additional elf."},resource:ge.logs,visibility:()=>y(_e.clothElfTraining.milestones[4].earned.value),cost:1e36})),dl=[He,bi,Bi],ni=Z(()=>{const K=i.pow(10,ri.amount.value),Ue=i.pow(4,ri.amount.value);let pi=i.pow(2e4,i.pow(ri.amount.value,.75));i.gte(ri.amount.value,4)&&(pi=pi.div(1e3));const el=i.pow(2e3,ri.amount.value);return{wood:pi.mul(1e21),coal:el.mul(1e32),paper:el.mul(1e18),boxes:pi.mul(1e13),metalIngots:Ue.mul(1e12),cloth:K.mul(1e4),plastic:Ue.mul(1e6),dye:i.add(ri.amount.value,1).mul(1e4)}}),ri=Ae(()=>({display:f(()=>t(C,null,[t("h3",null,[o("Build a School")]),t("div",null,[o("You gotta start somewhere, right? Each school increases the maximum level for elves by 1, maximum of "),V.days[sl-1].opened.value?5:3," ",o("schools.")]),t("div",null,[o("You have "),re(ri.amount.value),o(" schools, which are currently letting elves learn up to level "),re(ri.amount.value),o(".")]),i.lt(ri.amount.value,m(ri.purchaseLimit))?t("div",null,[o("Costs "),le(ni.value.wood),o(" logs, "),le(ni.value.coal)," ",o("coal, "),le(ni.value.paper),o(" paper,")," ",le(ni.value.boxes),o(" boxes,")," ",le(ni.value.metalIngots),o(" metal ingots,")," ",le(ni.value.cloth),o(" cloth, "),le(ni.value.plastic)," ",o("plastic, and requires "),le(ni.value.dye),o(" of red, yellow, and blue dye")]):null])),canPurchase(){return ni.value.wood.lte(ge.logs.value)&&ni.value.coal.lte(ee.coal.value)&&ni.value.paper.lte(z.paper.value)&&ni.value.boxes.lte(si.boxes.value)&&ni.value.metalIngots.lte(Zi.metal.value)&&ni.value.cloth.lte(Yi.cloth.value)&&ni.value.plastic.lte(ai.plastic.value)&&ni.value.dye.lte(Ye.dyes.blue.amount.value)&&ni.value.dye.lte(Ye.dyes.red.amount.value)&&ni.value.dye.lte(Ye.dyes.yellow.amount.value)&&i.lt(ri.amount.value,m(ri.purchaseLimit))},onPurchase(){ge.logs.value=i.sub(ge.logs.value,ni.value.wood),ee.coal.value=i.sub(ee.coal.value,ni.value.coal),z.paper.value=i.sub(z.paper.value,ni.value.paper),si.boxes.value=i.sub(si.boxes.value,ni.value.boxes),Zi.metal.value=i.sub(Zi.metal.value,ni.value.metalIngots),Yi.cloth.value=i.sub(Yi.cloth.value,ni.value.cloth),ai.plastic.value=i.sub(ai.plastic.value,ni.value.plastic),this.amount.value=i.add(this.amount.value,1)},purchaseLimit(){return V.days[sl-1].opened.value?5:3},visibility:Z(()=>y(d.bought.value)),style:"width: 600px"})),Oi=Z(()=>{let K=R.amount.value;i.gte(K,50)&&(K=i.pow(K,2).div(50)),i.gte(K,200)&&(K=i.pow(K,2).div(200));const Ue=i.add(K,1).pow(1.5);return{wood:Ue.mul(1e21),paper:Ue.mul(1e18),boxes:Ue.mul(1e13),metalIngots:Ue.mul(1e12)}}),N=Z(()=>i.add(R.amount.value,1).pow(.9)),R=Ae(()=>({display:f(()=>t(C,null,[t("h3",null,[o("Build a Classroom")]),t("div",null,[o("Hopefully it makes the school a bit less boring. Multiplies elves' XP gain by")," ",o("(Classrooms + 1)"),t("sup",null,[o("0.9")]),o(".")]),t("div",null,[o("You have "),re(R.amount.value),o(" classrooms, which are currently multiplying elves' XP gain by "),le(N.value)]),t("div",null,[o("Costs "),le(Oi.value.wood),o(" logs,"),le(Oi.value.paper),o(" paper, "),le(Oi.value.boxes)," ",o("boxes, "),le(Oi.value.metalIngots),o(" metal ingots")])])),canPurchase(){return Oi.value.wood.lte(ge.logs.value)&&Oi.value.paper.lte(z.paper.value)&&Oi.value.boxes.lte(si.boxes.value)&&Oi.value.metalIngots.lte(Zi.metal.value)},onPurchase(){ge.logs.value=i.sub(ge.logs.value,Oi.value.wood),z.paper.value=i.sub(z.paper.value,Oi.value.paper),si.boxes.value=i.sub(si.boxes.value,Oi.value.boxes),Zi.metal.value=i.sub(Zi.metal.value,Oi.value.metalIngots),this.amount.value=i.add(this.amount.value,1)},visibility:Z(()=>y(u.bought.value)),style:"width: 600px"})),[$l,kl]=rl(()=>[{title:"Elves affected by Focus",modifier:$i,base:3},{title:"Maximum Focus Effect",modifier:q,base:10},{title:"Focus Cooldown",modifier:_i,unit:" secs",base:15},{title:"Global XP Gain",modifier:b,unit:" XP"},{title:"Holly XP Gain per Action",modifier:we.elfXPGain,base:.1,unit:" XP"},{title:"Ivy XP Gain per Action",modifier:xe.elfXPGain,base:.1,unit:" XP"},{title:"Hope XP Gain per Action",modifier:Fe.elfXPGain,base:.1,unit:" XP"},{title:"Jack XP Gain per Action",modifier:x.elfXPGain,base:.1,unit:" XP"},{title:"Mary XP Gain per Action",modifier:$.elfXPGain,base:.1,unit:" XP"},{title:"Noel XP Gain per Action",modifier:Ie.elfXPGain,base:.1,unit:" XP"},{title:"Joy XP Gain per Action",modifier:ei.elfXPGain,base:.1,unit:" XP"},{title:"Faith XP Gain per Action",modifier:De.elfXPGain,base:.1,unit:" XP"},{title:"Snowball XP Gain per Action",modifier:Ee.elfXPGain,base:.1,unit:" XP"},{title:"Star XP Gain per Action",modifier:Ke.elfXPGain,base:.1,unit:" XP"},{title:"Bell XP Gain per Action",modifier:ze.elfXPGain,base:.1,unit:" XP"},{title:"Gingersnap XP Gain per Action",modifier:ii.elfXPGain,base:.1,unit:" XP"},{title:"Peppermint XP Gain per Action",modifier:he.elfXPGain,base:.1,unit:" XP"},{title:"Frosty XP Gain per Action",modifier:oe.elfXPGain,base:.1,unit:" XP"},{title:"Cocoa XP Gain per Action",modifier:E.elfXPGain,base:.1,unit:" XP"},{title:"Twinkle XP Gain per Action",modifier:Re.elfXPGain,base:.1,unit:" XP"},{title:"Carol XP Gain per Action",modifier:Ve.elfXPGain,base:.1,unit:" XP"}]),zl=me(!1),xi=f(()=>t(Si,{modelValue:zl.value,"onUpdate:modelValue":K=>zl.value=K},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:$l}));Pi(()=>{(V.day.value===nn&&li.every(K=>K.level.value>=3)||V.day.value===sl&&li.every(K=>K.level.value>=5)&&Li.every(K=>K.level.value>=5))&&V.completeDay()});const Ki={elfTraining:{bonfireElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},boxElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},clothElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},coalDrillElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},cutterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},expandersElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},fertilizerElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},heatedCutterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},heatedPlanterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},heavyDrillElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},kilnElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},metalElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},oilElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},paperElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},planterElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},smallfireElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]},dyeElfTraining:{exp:I(0),milestones:[{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)},{earned:I(!1)}]}},teaching:{bought:I(!1)},schools:{amount:I(0)},classrooms:{amount:I(0)},classroomUpgrade:{bought:I(!1)},advancedUpgrade:{bought:I(!1)},upgrades:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],upgrades2:[{bought:I(!1)},{bought:I(!1)},{bought:I(!1)}],focusMulti:I(1),focusTargets:I({}),focusCooldown:I(0),focusTime:I(0)};return{name:e,day:nn,color:l,minWidth:700,elfTraining:_e,totalElfLevels:s,totalElfExp:a,level5Elves:r,currentShown:Ne,generalTabCollapsed:kl,teaching:d,schools:ri,classrooms:R,classroomUpgrade:u,advancedUpgrade:c,focusMulti:ji,upgrades:ae,upgrades2:dl,focusTargets:ne,focusCooldown:Xe,focusTime:P,display:f(()=>t(C,null,[V.day.value===nn?"Get all elves to level 3.":V.day.value===sl&&V.days[sl-1].opened.value?"Get all elves to level 5.":`${e} Complete!`," ",o("-"),t("button",{class:"button",style:"display: inline-block;",onClick:()=>zl.value=!0},[o("Check Modifiers")]),We(xi),We(n),t("br",null,null),ml(ri,R),fl([d,u,c]),t(pe,null,null),i.gt(ri.amount.value,0)?t(C,null,[t(pe,null,null),o("Click on an elf to see their milestones."),t(pe,null,null),t(pe,null,null),We(Cl),fl(ae,dl),t(pe,null,null),fl([ol],ue,Wi,Ci,mi,Hi,vi),t(pe,null,null),fe()]):""])),mastery:Ki}}),$I="cloth",Kn=8,Yi=Di($I,function(){const e="Cloth",l="white",n=Vi(0,"cloth"),s=Vi(0,"wool"),a=Vi(10,"sheep"),r=I(0),d=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s; background: black",progress:()=>i.div(r.value,De.value)})),u=Qi(()=>({display:{title:"Breed sheep",description:f(()=>t(C,null,[o("Breed "),Se(i.floor(Wi.value)),o(" sheep"),t("br",null,null),We(d)]))},style:{minHeight:"80px"},canClick:()=>i.gte(r.value,De.value)&&(!V.isMastery.value||ji.value),onClick(){if(!m(u.canClick))return;const ne=i.floor(Wi.value);a.value=i.add(a.value,ne),r.value=0}})),c=I(0),b=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s; background: black",progress:()=>i.div(c.value,ze.value)})),J=Qi(()=>({display:{title:"Shear sheep",description:f(()=>t(C,null,[o("Shear up to "),Se(i.floor(Ci.value)),o(" sheep"),t("br",null,null),We(b)]))},style:{minHeight:"80px"},canClick:()=>i.gte(c.value,ze.value)&&(!V.isMastery.value||ji.value),onClick(){if(!m(J.canClick))return;const ne=i.min(a.value,Ci.value).floor();s.value=i.add(s.value,ne),c.value=0}})),h=I(0),W=qi(()=>({direction:Be.Right,width:100,height:10,style:"margin-top: 8px",borderStyle:"border-color: black",baseStyle:"margin-top: -1px",fillStyle:"margin-top: -1px; transition-duration: 0s; background: black",progress:()=>i.div(h.value,Re.value)})),j=Qi(()=>({display:{title:"Spinning wool",description:f(()=>t(C,null,[o("Spin "),Se(i.floor(mi.value)),o(" wool"),t("br",null,null),We(W)]))},style:{minHeight:"80px"},canClick:()=>i.gte(h.value,Re.value)&&(!V.isMastery.value||ji.value),onClick(){if(!m(j.canClick))return;const ne=i.min(s.value,mi.value).floor();n.value=i.add(n.value,ne),s.value=i.sub(s.value,ne),h.value=0}})),F=In(()=>({key:"b",description:'Press the "Breed Sheep" button',onPress:()=>{u.canClick.value&&u.onClick()}})),X=In(()=>({key:"h",description:'Press the "Shear Sheep" button',onPress:()=>{J.canClick.value&&J.onClick()}})),M=In(()=>({key:"s",description:'Press the "Spin Wool" button',onPress:()=>{j.canClick.value&&j.onClick()}})),T=Ae(()=>({resource:ge.logs,cost(){let ne=this.amount.value;return i.gte(ne,100)&&(ne=i.pow(ne,2).div(100)),ne=i.pow(.95,z.books.clothBook.totalAmount.value).times(ne),i.pow(1.5,ne).times(1e14)},inverseCost(ne){let Xe=i.div(ne,1e14).log(1.5);return Xe=Xe.div(i.pow(.95,z.books.clothBook.totalAmount.value)),i.gte(Xe,100)&&(Xe=i.mul(Xe,100).root(2)),i.isNaN(Xe)?i.dZero:Xe.floor().max(0)},display:{title:"Build more pens",description:"Breed +1 sheep at once"}})),O=Ae(()=>({resource:Zi.metal,cost(){let ne=this.amount.value;return i.gte(ne,100)&&(ne=i.pow(ne,2).div(100)),ne=i.pow(.95,z.books.clothBook.totalAmount.value).times(ne),i.pow(1.4,ne).times(1e4)},inverseCost(ne){let Xe=i.div(ne,1e4).log(1.4);return Xe=Xe.div(i.pow(.95,z.books.clothBook.totalAmount.value)),i.gte(Xe,100)&&(Xe=i.mul(Xe,100).root(2)),i.isNaN(Xe)?i.dZero:Xe.floor().max(0)},display:{title:"Make stronger shears",description:"Shear +1 sheep at once"}})),k=Ae(()=>({resource:z.paper,cost(){let ne=this.amount.value;return i.gte(ne,100)&&(ne=i.pow(ne,2).div(100)),ne=i.pow(.95,z.books.clothBook.totalAmount.value).times(ne),i.pow(1.3,ne).times(1e6)},inverseCost(ne){let Xe=i.div(ne,1e6).log(1.3);return Xe=Xe.div(i.pow(.95,z.books.clothBook.totalAmount.value)),i.gte(Xe,100)&&(Xe=i.mul(Xe,100).root(2)),i.isNaN(Xe)?i.dZero:Xe.floor().max(0)},display:{title:"Learn how to spin",description:"Spin +1 wool at once"}})),D=B(()=>({resource:A(n),cost:100,display:{title:"Lumberjack Boots",description:"Quadruple log gain"}})),de=B(()=>({resource:A(s),cost:150,visibility:()=>y(D.bought.value),display:{title:"Lumberjack Jeans",description:"Quadruple trees cut"}})),_=B(()=>({resource:A(a),cost:200,visibility:()=>y(de.bought.value),display:{title:"Lumberjack Plaid",description:"Quadruple trees planted"}})),U={treesUpgrade4:B(()=>({resource:A(n),cost:1e3,visibility:()=>y(ai.upgrades.clothTools.bought.value),display:{title:"Felt-Gripped Axe",description:"10x log gain"}})),treesUpgrade3:_,treesUpgrade2:de,treesUpgrade1:D},ie=B(()=>({resource:A(n),cost:150,display:{title:"Mining boots",description:"Quadruple ash gain"}})),Oe=B(()=>({resource:A(s),cost:225,visibility:()=>y(ie.bought.value),display:{title:"Mining overalls",description:"Double coal gain"}})),Ce=B(()=>({resource:A(a),cost:300,visibility:()=>y(Oe.bought.value),display:{title:"Mining helmet",description:"Triple coal gain"}})),Ne={metalUpgrade4:B(()=>({resource:A(n),cost:2e3,visibility:()=>y(ai.upgrades.clothTools.bought.value),display:{title:"Felt-Gripped Pick",description:"Quadruple coal gain"}})),metalUpgrade3:Ce,metalUpgrade2:Oe,metalUpgrade1:ie},fe=B(()=>({resource:A(n),cost:200,display:{title:"Scholar's shoes",description:"Double paper gain"}})),we=B(()=>({resource:A(s),cost:200,visibility:()=>y(fe.bought.value),display:{title:"Scholar's slacks",description:"Double paper gain"}})),xe=B(()=>({resource:A(a),cost:400,visibility:()=>y(we.bought.value),display:{title:"Scholar's jacket",description:"Double paper gain"}})),ue={paperUpgrade4:B(()=>({resource:A(n),cost:4e3,visibility:()=>y(ai.upgrades.clothTools.bought.value),display:{title:"Felt Elbow Pads",description:"10x paper gain"}})),paperUpgrade3:xe,paperUpgrade2:we,paperUpgrade1:fe},x=Z(()=>i.add(ge.computedAutoCuttingAmount.value,1).root(9)),$=Z(()=>i.add(Ye.dyeSum.value,10).log10()),Ie=be(()=>[je(()=>({addend:T.amount,description:"Build more pens"})),p(()=>({multiplier:()=>i.div(ai.buyables.clothGains.amount.value,10).add(1),description:"Plastic Shepherd",enabled:()=>i.gte(ai.buyables.clothGains.amount.value,1)})),p(()=>({multiplier:2,description:"Shepherding for Dummies",enabled:z.upgrades.clothUpgrade.bought})),p(()=>({multiplier:$,description:"Gingersnap Level 2",enabled:v.elfTraining.clothElfTraining.milestones[1].earned})),p(()=>({multiplier:x,description:"Holly Level 3",enabled:v.elfTraining.cutterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:2,description:"Carry cloth in boxes",enabled:si.row3Upgrades.clothUpgrade.bought}))]),Wi=Z(()=>Ie.apply(1)),ei=be(()=>[]),De=Z(()=>ei.apply(1)),Ee=be(()=>[je(()=>({addend:O.amount,description:"Make stronger shears"})),p(()=>({multiplier:()=>i.div(ai.buyables.clothGains.amount.value,10).add(1),description:"Plastic Shepherd",enabled:()=>i.gte(ai.buyables.clothGains.amount.value,1)})),p(()=>({multiplier:2,description:"Shepherding for Dummies",enabled:z.upgrades.clothUpgrade.bought})),p(()=>({multiplier:$,description:"Gingersnap Level 2",enabled:v.elfTraining.clothElfTraining.milestones[1].earned})),p(()=>({multiplier:x,description:"Holly Level 3",enabled:v.elfTraining.cutterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:2,description:"Carry cloth in boxes",enabled:si.row3Upgrades.clothUpgrade.bought}))]),Ci=Z(()=>Ee.apply(1)),Ke=be(()=>[]),ze=Z(()=>Ke.apply(1)),ii=be(()=>[je(()=>({addend:k.amount,description:"Learn how to spin"})),p(()=>({multiplier:()=>i.div(ai.buyables.clothGains.amount.value,10).add(1),description:"Plastic Shepherd",enabled:()=>i.gte(ai.buyables.clothGains.amount.value,1)})),p(()=>({multiplier:2,description:"Shepherding for Dummies",enabled:z.upgrades.clothUpgrade.bought})),p(()=>({multiplier:$,description:"Gingersnap Level 2",enabled:v.elfTraining.clothElfTraining.milestones[1].earned})),p(()=>({multiplier:x,description:"Holly Level 3",enabled:v.elfTraining.cutterElfTraining.milestones[2].earned})),p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),p(()=>({multiplier:2,description:"Carry cloth in boxes",enabled:si.row3Upgrades.clothUpgrade.bought}))]),mi=Z(()=>ii.apply(1)),he=be(()=>[]),Re=Z(()=>he.apply(1)),[E,oe]=rl(()=>[{title:"Sheep Gain",modifier:Ie,base:1},{title:"Sheep Breeding Cooldown",modifier:ei,base:1,visible:!1,unit:"s"},{title:"Shearing Amount",modifier:Ee,base:1},{title:"Shearing Cooldown",modifier:Ke,base:1,visible:!1,unit:"s"},{title:"Spinning Amount",modifier:ii,base:1},{title:"Spinning Cooldown",modifier:he,base:1,visible:!1,unit:"s"}]),Ve=me(!1),Hi=f(()=>t(Si,{modelValue:Ve.value,"onUpdate:modelValue":ne=>Ve.value=ne},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:E}));yi.on("update",ne=>{i.lt(V.day.value,Kn)||(i.gte(r.value,De.value)?r.value=De.value:(r.value=i.add(r.value,ne),u.isHolding.value&&u.onClick()),i.gte(c.value,ze.value)?c.value=ze.value:(c.value=i.add(c.value,ne),J.isHolding.value&&J.onClick()),i.gte(h.value,Re.value)?h.value=Re.value:(h.value=i.add(h.value,ne),j.isHolding.value&&j.onClick()))});const{total:vi,trackerDisplay:_e}=wl({resource:n,goal:1e3,name:e,day:Kn,color:l,textColor:"var(--feature-foreground)",modal:{show:Ve,display:Hi}}),li={cloth:I(0),totalCloth:I(0),wool:I(0),sheep:I(0),buildPens:{amount:I(0)},betterShears:{amount:I(0)},fasterSpinning:{amount:I(0)},treesUpgrades:{treesUpgrade1:{bought:I(!1)},treesUpgrade2:{bought:I(!1)},treesUpgrade3:{bought:I(!1)},treesUpgrade4:{bought:I(!1)}},metalUpgrades:{metalUpgrade1:{bought:I(!1)},metalUpgrade2:{bought:I(!1)},metalUpgrade3:{bought:I(!1)},metalUpgrade4:{bought:I(!1)}},paperUpgrades:{paperUpgrade1:{bought:I(!1)},paperUpgrade2:{bought:I(!1)},paperUpgrade3:{bought:I(!1)},paperUpgrade4:{bought:I(!1)}}},Li=I(!1),ji=Z(()=>{var ne;return Li.value||((ne=V.currentlyMastering.value)==null?void 0:ne.name)===e});return{name:e,day:Kn,color:l,cloth:n,totalCloth:vi,wool:s,sheep:a,buildPens:T,betterShears:O,fasterSpinning:k,treesUpgrades:U,metalUpgrades:Ne,paperUpgrades:ue,generalTabCollapsed:oe,breedingProgress:r,shearingProgress:c,spinningProgress:h,breedSheepHK:F,shearSheepHK:X,spinWoolHK:M,minWidth:700,display:f(()=>t(C,null,[We(_e),t(pe,null,null),t(Ui,{resource:n,style:"margin-bottom: 0"},null),t(Ui,{resource:s,style:"margin-bottom: 0"},null),t(Ui,{resource:a,style:"margin-bottom: 0"},null),ci(u,J,j),ci(T,O,k),t(pe,null,null),t(rn,null,{default:()=>[ml(...Object.values(U)),ml(...Object.values(Ne)),ml(...Object.values(ue))]})])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:li,mastered:Li}}),KI="dyes",xs=11,Ye=Di(KI,function(){const e="Dyes",l="#D4D4F4";function n(T){const O=Vi(0,T.name),k=be(()=>{const Q=[je(()=>({addend:()=>i.add(_.amount.value,1),description:`${T.name} Chambers`}))];return T.color==="yellow"&&Q.push(p(()=>({multiplier(){return i.add(s.red.amount.value,1).log10().add(1).pow(.75)},description:"Dye Synergy I",enabled:ce.row3Upgrades[0].bought}))),T.color==="red"&&Q.push(p(()=>({multiplier(){return i.add(s.blue.amount.value,1).log10()},description:"Dye Synergy II",enabled:ce.row3Upgrades[3].bought}))),["red","yellow"].includes(T.color)&&Q.push(p(()=>({multiplier:a.orange1,description:"Orange Dye Boost 1"}))),["yellow","blue"].includes(T.color)&&Q.push(p(()=>({multiplier:a.green1,description:"Green Dye Boost 1"}))),["red","blue"].includes(T.color)&&Q.push(p(()=>({multiplier:a.purple1,description:"Purple Dye Boost 1"}))),["red","yellow","blue"].includes(T.color)&&(Q.push(p(()=>({multiplier:2,description:"Wetter Dyes",enabled:u.yellowDyeUpg.bought}))),Q.push(p(()=>({multiplier:()=>i.add(Yi.cloth.value,Math.E).ln(),description:"Gingersnap Level 1",enabled:v.elfTraining.clothElfTraining.milestones[0].earned}))),Q.push(p(()=>({multiplier:2,description:"Carol Level 1",enabled:v.elfTraining.dyeElfTraining.milestones[0].earned})))),["orange","green","purple"].includes(T.color)&&Q.push(p(()=>({multiplier:2,description:"Carol Level 2",enabled:v.elfTraining.dyeElfTraining.milestones[1].earned}))),Q.push(p(()=>({multiplier:2,description:"Gingersnap Level 3",enabled:v.elfTraining.clothElfTraining.milestones[2].earned}))),Q.push(p(()=>({multiplier:2,description:"Carry dye in boxes",enabled:si.row3Upgrades.dyeUpgrade.bought}))),Q}),D=Z(()=>k.apply(0));let de;switch(T.color){case"red":case"yellow":case"blue":de=z.books.primaryDyeBook;break;case"orange":case"green":case"purple":de=z.books.secondaryDyeBook;break}const _=Ae(()=>{const Q=Ri(T.costs);return{...T,style:()=>({backgroundColor:m(_.canPurchase)?l:"#545454",minWidth:"200px"}),display:f(()=>t("span",null,[t("h3",null,[T.name,o(" Chambers")]),t("br",null,null),o("Create "),le(D.value),o(" "),T.name,T.dyesToReset.length>0?", but reset "+T.dyesToReset.map(U=>U.name).join(", "):"",o("."),t("br",null,null),t("br",null,null),t("span",{class:"white-space: pre-wrap"},[o("Currently:")," ",T.listedBoosts.filter(U=>m(U.visible)).map(U=>We(f(()=>t("div",null,[m(U.desc)]))))]),t("br",null,null),t("div",null,[o("Cost:")," ",m(Q).map(U=>We(f(()=>{var ie,Oe;return t("div",null,[le(m(i.pow((ie=m(_.cost))!=null?ie:i.dInf,m((Oe=U.root)!=null?Oe:1)).times(m(U.base))))," ",U.res.displayName,t("br",null,null)])})))])])),cost(){let U=_.amount.value;return i.gte(U,25)&&(U=i.pow(U,2).div(20)),i.gte(U,10)&&(U=i.pow(U,2).div(5)),i.gte(U,3125)&&(U=i.pow(U,2).div(3125)),U=i.mul(U,i.pow(.95,de.totalAmount.value)),i.div(U,10).plus(1)},inverseCostPre(U){let ie=i.sub(U,1).mul(10);return ie=ie.div(i.pow(.95,de.totalAmount.value)),i.gte(ie,3125)&&(ie=i.mul(ie,3125).root(2)),i.gte(ie,10)&&(ie=i.mul(ie,5).root(2)),i.gte(ie,25)&&(ie=i.mul(ie,20).root(2)),i.isNaN(ie)?i.dZero:ie.floor().max(0)},inverseCost(){return m(_.visibility)!=Ji.Visible?i.dZero:m(Q).reduce((U,ie)=>{var Oe;return i.min(this.inverseCostPre(i.div(ie.res.value,m(ie.base)).root(m((Oe=ie.root)!=null?Oe:1))),U)},i.dInf)},canPurchase:Z(U=>{var Oe;if(m(_.visibility)!=Ji.Visible||V.isMastery.value&&!M.value)return!1;const ie=(Oe=U!=null?U:m(_.cost))!=null?Oe:i.dInf;return m(Q).every(Ce=>{var Ze;return i.div(Ce.res.value,m(Ce.base)).root(m((Ze=Ce.root)!=null?Ze:1)).gte(ie)})}),onPurchase(U){var Oe;let ie=!1;switch(T.color){case"red":case"yellow":case"blue":ie=v.elfTraining.dyeElfTraining.milestones[2].earned.value;break;case"orange":case"green":case"purple":ie=v.elfTraining.dyeElfTraining.milestones[4].earned.value;break}if(ie){const Ce=this.inverseCost().sub(this.amount.value).plus(1);if(Ce.lte(0))return;O.value=i.times(2,_.amount.value).plus(Ce).plus(1).times(Ce).div(2).times(D.value).div(i.add(_.amount.value,1)).plus(O.value),_.amount.value=i.add(_.amount.value,Ce)}else O.value=i.add(O.value,D.value),_.amount.value=i.add(_.amount.value,1);if(!v.elfTraining.dyeElfTraining.milestones[3].earned.value){const Ce=(Oe=U!=null?U:m(_.cost))!=null?Oe:i.dInf;m(Q).forEach(Ze=>{var Ne;Ze.res.value=i.sub(Ze.res.value,i.pow(Ce,m((Ne=Ze.root)!=null?Ne:1)).times(m(Ze.base)))}),T.dyesToReset.forEach(Ze=>Ze.reset())}}}});return{name:T.name,amount:O,buyable:_,toGenerate:k,computedToGenerate:D,display:f(()=>t(Ui,{resource:O,color:T.color,style:"margin: 0; width: 200px; width: 180px; padding: 10px;",sticky:!1},null))}}const s={red:n({name:"Red Dye",color:"red",costs:()=>[{base:"2e18",root:5,res:ge.logs},{base:Z(()=>u.yellowDyeUpg2.bought.value?"2.5e5":"5e5"),root:2,res:ce.oil}],listedBoosts:[{visible:!0,desc:Z(()=>`+${le(a.red1.value)} effective Oil Pumps (does not impact coal consumption)`)}],dyesToReset:[]}),yellow:n({name:"Yellow Dye",color:"yellow",costs:()=>[{base:"1e18",root:5,res:ge.logs},{base:Z(()=>u.yellowDyeUpg2.bought.value?"5e5":"1e6"),root:2,res:ce.oil}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.yellow1.value)} Paper & Plastic gain`)}],dyesToReset:[]}),blue:n({name:"Blue Dye",color:"blue",costs:()=>[{base:"5e17",root:5,res:ge.logs},{base:Z(()=>u.yellowDyeUpg2.bought.value?"1e6":"2e6"),root:2,res:ce.oil}],listedBoosts:[{visible:!0,desc:Z(()=>`+${re(a.blue1.value)} forest size (after all other modifiers).`)}],dyesToReset:[]}),orange:n({name:"Orange Dye",color:"orange",costs:()=>[{base:15,root:2,res:s.red.amount},{base:10,root:2,res:s.yellow.amount}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.orange1.value)} Red and Yellow Dye gain`)},{visible:!0,desc:Z(()=>`/${le(a.orange2.value)} Box buyable costs.`)}],dyesToReset:[{name:"Red Dye",reset(){s.red.amount.value=0,s.red.buyable.amount.value=0}},{name:"Yellow Dye",reset(){s.yellow.amount.value=0,s.yellow.buyable.amount.value=0}}]}),green:n({name:"Green Dye",color:"green",costs:()=>[{base:15,root:2,res:s.yellow.amount},{base:10,root:2,res:s.blue.amount}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.green1.value)} Yellow and Blue Dye gain`)},{visible:!0,desc:Z(()=>`+${re(i.sub(a.green2.value,1).times(100))}% Kiln synergy effect.`)}],dyesToReset:[{name:"Yellow Dye",reset(){s.yellow.amount.value=0,s.yellow.buyable.amount.value=0}},{name:"Blue Dye",reset(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}}]}),purple:n({name:"Purple Dye",color:"purple",costs:()=>[{base:15,root:2,res:s.blue.amount},{base:10,root:2,res:s.red.amount}],listedBoosts:[{visible:!0,desc:Z(()=>`x${le(a.purple1.value)} Red and Blue Dye gain`)},{visible:!0,desc:Z(()=>`x${le(a.purple2.value)} Smelting Speed and Ore Purity`)}],dyesToReset:[{name:"Blue Dye",reset(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}},{name:"Red Dye",reset(){s.red.amount.value=0,s.red.buyable.amount.value=0}}]})},a={red1:Z(()=>i.pow(i.add(s.red.amount.value,1).log2().plus(1).log2().div(2),u.blueDyeUpg2.bought.value?1.5:1)),yellow1:Z(()=>i.add(s.yellow.amount.value,1).log2().plus(1)),blue1:Z(()=>i.add(s.blue.amount.value,1).log2().sqrt().times(5e6)),orange1:Z(()=>i.pow(2,i.add(s.orange.amount.value,1).log2().sqrt()).pow(u.coalUpg.bought.value?1.2:1).pow(v.elfTraining.clothElfTraining.milestones[3].earned.value?1.1:1)),orange2:Z(()=>i.add(s.orange.amount.value,1).log2().plus(1).pow(ce.row3Upgrades[1].bought.value?2.5:1)),green1:Z(()=>i.pow(2,i.add(s.green.amount.value,1).log2().sqrt()).pow(u.coalUpg.bought.value?1.2:1).pow(v.elfTraining.clothElfTraining.milestones[3].earned.value?1.1:1)),green2:Z(()=>i.add(s.green.amount.value,1).log2().plus(1).pow(u.coalUpg.bought.value?2:1)),purple1:Z(()=>i.pow(2,i.add(s.purple.amount.value,1).log2().sqrt()).pow(u.coalUpg.bought.value?1.2:1).pow(v.elfTraining.clothElfTraining.milestones[3].earned.value?1.1:1)),purple2:Z(()=>i.add(s.purple.amount.value,1).log2().plus(1))},[r,d]=rl(()=>[{title:"Red Dye Creation",modifier:s.red.toGenerate,base:0},{title:"Yellow Dye Creation",modifier:s.yellow.toGenerate,base:0},{title:"Blue Dye Creation",modifier:s.blue.toGenerate,base:0},{title:"Orange Dye Creation",modifier:s.orange.toGenerate,base:0},{title:"Green Dye Creation",modifier:s.green.toGenerate,base:0},{title:"Purple Dye Creation",modifier:s.purple.toGenerate,base:0}]),u={blueDyeUpg:B(()=>({visibility:()=>y(i.add(s.orange.amount.value,s.green.amount.value).add(s.purple.amount.value).gte(1)||u.blueDyeUpg.bought.value),display:{title:"Is Blue Dye just Water?",description:f(()=>t(C,null,[o("Multiply Log gain by log"),t("sub",null,[o("10")]),o("(Auto Cutting Amount)+1.")]))},cost:1e3,resource:A(s.blue.amount),onPurchase(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}})),redDyeUpg:B(()=>({visibility:()=>y(i.add(s.orange.amount.value,s.green.amount.value).add(s.purple.amount.value).gte(10)||u.redDyeUpg.bought.value),display:{title:"Glistening Paint",description:f(()=>t(C,null,[o("Multiply Ore Purity by log"),t("sub",null,[o("10")]),o("(Cloth)+1.")]))},cost:1500,resource:A(s.red.amount),onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0}})),yellowDyeUpg:B(()=>({visibility:()=>y(i.add(s.orange.amount.value,s.green.amount.value).add(s.purple.amount.value).gte(100)||u.yellowDyeUpg.bought.value),display:{title:"Wetter Dyes",description:"Double Red, Yellow, and Blue Dye gain, but reset their amounts."},cost:2e3,resource:A(s.yellow.amount),onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0,s.yellow.amount.value=0,s.yellow.buyable.amount.value=0,s.blue.amount.value=0,s.blue.buyable.amount.value=0}})),yellowDyeUpg2:B(()=>({visibility:()=>y(u.yellowDyeUpg.bought.value),display:{title:"Golden Wash",description:"Halve the Oil cost of Red, Yellow, and Blue Dyes."},cost:5e3,resource:A(s.yellow.amount),onPurchase(){s.yellow.amount.value=0,s.yellow.buyable.amount.value=0}})),redDyeUpg2:B(()=>({visibility:()=>y(u.redDyeUpg.bought.value),display:{title:"De Louvre",description:f(()=>t(C,null,[o("Multiply Smelting Speed by "),t(Zl,null,{default:()=>[o("Refineries+1")]}),o(".")]))},cost:6e3,resource:A(s.red.amount),onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0}})),blueDyeUpg2:B(()=>({visibility:()=>y(u.blueDyeUpg.bought.value),display:{title:"Hydrophobia",description:"Raise Red Dye's effect ^1.5."},cost:7500,resource:A(s.blue.amount),onPurchase(){s.blue.amount.value=0,s.blue.buyable.amount.value=0}})),coalUpg:B(()=>({visibility:()=>y(u.blueDyeUpg2.bought.value&&u.redDyeUpg2.bought.value&&u.yellowDyeUpg2.bought.value),display:{title:"Denser Spectrum",description:"Orange, Green, and Purple Dyes' first effect is raised ^1.2, and Green Dye's second effect is squared. Buying this resets Red, Yellow, and Blue Dyes."},cost:"5e30",resource:ee.coal,onPurchase(){s.red.amount.value=0,s.red.buyable.amount.value=0,s.yellow.amount.value=0,s.yellow.buyable.amount.value=0,s.blue.amount.value=0,s.blue.buyable.amount.value=0}}))},c=me(!1),b=f(()=>t(Si,{modelValue:c.value,"onUpdate:modelValue":T=>c.value=T},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:r})),J=Vi(Z(()=>Object.values(s).reduce((T,O)=>i.add(T,O.amount.value),0)),"Sum of Dyes"),h=Z(()=>[s.orange,s.green,s.purple].reduce((T,O)=>T.add(O.amount.value),new i(0))),{total:W,trackerDisplay:j}=wl({resource:J,goal:6e4,name:e,day:xs,color:l,textColor:"var(--feature-foreground)",modal:{show:c,display:b},ignoreTotal:!0}),F={dyes:{red:{amount:I(0),buyable:{amount:I(0)}},green:{amount:I(0),buyable:{amount:I(0)}},blue:{amount:I(0),buyable:{amount:I(0)}},yellow:{amount:I(0),buyable:{amount:I(0)}},purple:{amount:I(0),buyable:{amount:I(0)}},orange:{amount:I(0),buyable:{amount:I(0)}}},upgrades:{blueDyeUpg:{bought:I(!1)},redDyeUpg:{bought:I(!1)},yellowDyeUpg:{bought:I(!1)},yellowDyeUpg2:{bought:I(!1)},redDyeUpg2:{bought:I(!1)},blueDyeUpg2:{bought:I(!1)},coalUpg:{bought:I(!1)}}},X=I(!1),M=Z(()=>{var T;return X.value||((T=V.currentlyMastering.value)==null?void 0:T.name)===e});return{name:e,day:xs,color:l,dyes:s,dyeSum:J,boosts:a,totalDyeSum:W,secondaryDyeSum:h,minWidth:700,generalTabCollapsed:d,upgrades:u,display:f(()=>t(C,null,[We(j),t(pe,null,null),t("div",{style:"width: 620px"},[ci(s.red.display,s.yellow.display,s.blue.display),ci(s.red.buyable,s.yellow.buyable,s.blue.buyable),t(pe,null,null),ci(s.orange.display,s.green.display,s.purple.display),ci(s.orange.buyable,s.green.buyable,s.purple.buyable)]),t(pe,null,null),t("div",{class:"row",style:"vertical-align: top"},[ml(u.redDyeUpg,u.redDyeUpg2),ml(u.yellowDyeUpg,u.yellowDyeUpg2),ml(u.blueDyeUpg,u.blueDyeUpg2)]),We(u.coalUpg)])),mastery:F,mastered:X}}),em="boxes",es=6,si=Di(em,function(){const e="Boxes",l="#964B00",n=Vi(0,"boxes"),s=be(()=>[p(()=>({multiplier:2,description:"1000% Foundation Completed",enabled:di.milestones.extraExpansionMilestone5.earned})),tl(()=>({exponent:1.1,description:"Bell Level 2",enabled:v.elfTraining.boxElfTraining.milestones[1].earned}))]),a=mt(()=>({scaling:us(1e10,1),baseResource:ge.logs,gainResource:A(n),roundUpCost:!0,gainModifier:s})),r=Qi(()=>({display:f(()=>t(C,null,[t("span",{style:"font-size: large"},[o("Create "),re(a.currentGain.value),o(" "),n.displayName]),t("br",null,null),t("span",{style:"font-size: large"},[o("Cost:")," ",fn(ge.logs,i.gte(a.actualGain.value,1)?a.currentAt.value:a.nextAt.value)," ",ge.logs.displayName])])),canClick:()=>i.gte(a.actualGain.value,1),onClick(){!m(this.canClick)||a.convert()},style:"width: 600px; min-height: unset",visibility:()=>y(!V.isMastery.value||ue.value)})),d=B(()=>({display:{title:"Carry logs in boxes",description:"Double log gain and unlock a new elf for training"},onPurchase(){ue.value&&(ye.elves.smallFireElf.bought.value=!0),V.days[3].recentlyUpdated.value=!0},resource:A(n),cost:100})),u=B(()=>({display:{title:"Carry ash in boxes",description:"Double ash gain and unlock a new elf for training"},onPurchase(){ue.value&&(ye.elves.bonfireElf.bought.value=!0),V.days[3].recentlyUpdated.value=!0},resource:A(n),cost:1e3})),c=B(()=>({display:{title:"Carry coal in boxes",description:"Double coal gain and unlock a new elf for training"},onPurchase(){ue.value&&(ye.elves.kilnElf.bought.value=!0),V.days[3].recentlyUpdated.value=!0},resource:A(n),cost:4e3})),b={logsUpgrade:d,ashUpgrade:u,coalUpgrade:c},J=B(()=>({resource:A(n),cost:1e8,visibility:()=>y(ai.upgrades.boxTools.bought.value),display:{title:"Carry ore in boxes",description:"Double ore per mining op"}})),h=B(()=>({resource:A(n),cost:1e9,visibility:()=>y(ai.upgrades.boxTools.bought.value),display:{title:"Carry metal in boxes",description:"Double ore purity"}})),W=B(()=>({resource:A(n),cost:1e10,visibility:()=>y(ai.upgrades.boxTools.bought.value),display:{title:"Carry plastic in boxes",description:"Double plastic gain"}})),j={oreUpgrade:J,metalUpgrade:h,plasticUpgrade:W},F=B(()=>({resource:A(n),cost:1e28,visibility:()=>y(v.elfTraining.boxElfTraining.milestones[4].earned.value),display:{title:"Carry cloth in boxes",description:"Double all cloth actions"}})),X=B(()=>({resource:A(n),cost:1e29,visibility:()=>y(v.elfTraining.boxElfTraining.milestones[4].earned.value),display:{title:"Carry dye in boxes",description:"Double all dye gain but reset all dyes"},onPurchase(){["red","yellow","blue","orange","green","purple"].forEach(x=>{Ye.dyes[x].amount.value=0,Ye.dyes[x].buyable.amount.value=0})}})),M=B(()=>({resource:A(n),cost:1e30,visibility:()=>y(v.elfTraining.boxElfTraining.milestones[4].earned.value),display:{title:"Carry experience in boxes???",description:"Double xp gain"}})),T={clothUpgrade:F,dyeUpgrade:X,xpUpgrade:M},O=Ae(()=>({display:{title:"Carry more logs",description:f(()=>t(C,null,[o("Use boxes to carry even more logs, boosting their gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(O.amount.value),i.gt(O.freeLevels.value,0)?t(C,null,[o(" (+"),re(O.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(O.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.totalAmount.value).times(x);let $=3;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(100).div(Ye.boosts.orange2.value).div(zi.boosts.ocean1.value)},inverseCost(x){let $=3;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,zi.boosts.ocean1.value).mul(Ye.boosts.orange2.value).div(100).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(d.bought.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(k.amount.value,1).sqrt().floor().add(i.max(D.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(O.amount.value,2).sub(O.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(O.amount.value,O.freeLevels.value))})),k=Ae(()=>({display:{title:"Carry more ash",description:f(()=>t(C,null,[o("Use boxes to carry even more ash, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(k.amount.value),i.gt(k.freeLevels.value,0)?t(C,null,[o(" (+"),re(k.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(k.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.totalAmount.value).times(x);let $=5;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e3).div(Ye.boosts.orange2.value)},inverseCost(x){let $=5;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e3).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(u.bought.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(O.amount.value,1).sqrt().floor().add(i.max(D.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(k.amount.value,2).sub(k.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(k.amount.value,k.freeLevels.value))})),D=Ae(()=>({display:{title:"Carry more coal",description:f(()=>t(C,null,[o("Use boxes to carry even more coal, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(D.amount.value),i.gt(D.freeLevels.value,0)?t(C,null,[o(" (+"),re(D.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(D.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.totalAmount.value).times(x);let $=7;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e3).div(Ye.boosts.orange2.value)},inverseCost(x){let $=7;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e3).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(c.bought.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(O.amount.value,1).sqrt().floor().add(i.max(k.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(D.amount.value,2).sub(D.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(D.amount.value,D.freeLevels.value))})),de={logBoxesBuyable:O,ashBoxesBuyable:k,coalBoxesBuyable:D},_=Ae(()=>({display:{title:"Carry more ore",description:f(()=>t(C,null,[o("Use boxes to carry even more ore, boosting their gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(_.amount.value),i.gt(_.freeLevels.value,0)?t(C,null,[o(" (+"),re(_.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(_.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.amount.value).times(x);let $=10;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e25).div(Ye.boosts.orange2.value).div(zi.boosts.ocean1.value)},inverseCost(x){let $=10;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,zi.boosts.ocean1.value).mul(Ye.boosts.orange2.value).div(1e25).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(v.elfTraining.boxElfTraining.milestones[3].earned.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(Q.amount.value,1).sqrt().floor().add(i.max(U.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(_.amount.value,2).sub(_.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(_.amount.value,_.freeLevels.value))})),Q=Ae(()=>({display:{title:"Carry more metal",description:f(()=>t(C,null,[o("Use boxes to carry even more metal, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(Q.amount.value),i.gt(Q.freeLevels.value,0)?t(C,null,[o(" (+"),re(Q.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(Q.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.amount.value).times(x);let $=15;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e28).div(Ye.boosts.orange2.value)},inverseCost(x){let $=15;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e28).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(v.elfTraining.boxElfTraining.milestones[3].earned.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(_.amount.value,1).sqrt().floor().add(i.max(U.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(Q.amount.value,2).sub(Q.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(Q.amount.value,Q.freeLevels.value))})),U=Ae(()=>({display:{title:"Carry more plastic",description:f(()=>t(C,null,[o("Use boxes to carry even more plastic, boosting its gain"),t("br",null,null),t("br",null,null),t("div",null,[o("Amount: "),re(U.amount.value),i.gt(U.freeLevels.value,0)?t(C,null,[o(" (+"),re(U.freeLevels.value),o(")")]):null])])),effectDisplay:f(()=>t(C,null,[le(i.div(U.totalAmount.value,2).add(1)),o("x")])),showAmount:!1},resource:A(n),cost(){let x=this.amount.value;x=i.pow(.95,z.books.boxBook.amount.value).times(x);let $=20;return v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--,i.pow($,x).times(1e31).div(Ye.boosts.orange2.value)},inverseCost(x){let $=20;v.elfTraining.boxElfTraining.milestones[2].earned.value&&$--;let Ie=i.mul(x,Ye.boosts.orange2.value).div(1e31).log($);return Ie=Ie.div(i.pow(.95,z.books.boxBook.totalAmount.value)),i.isNaN(Ie)?i.dZero:Ie.floor().max(0)},visibility:()=>y(v.elfTraining.boxElfTraining.milestones[3].earned.value),freeLevels:Z(()=>{let x=0;return v.elfTraining.boxElfTraining.milestones[0].earned.value&&(x=i.max(_.amount.value,1).sqrt().floor().add(i.max(Q.amount.value,1).sqrt().floor())),ue.value&&(x=i.pow(U.amount.value,2).sub(U.amount.value).add(x)),x}),totalAmount:Z(()=>i.add(U.amount.value,U.freeLevels.value))})),ie={oreBoxesBuyable:_,metalBoxesBuyable:Q,plasticBoxesBuyable:U};yi.on("update",x=>{i.lt(V.day.value,es)||(n.value=i.times(x,ai.buyables.passiveBoxes.amount.value).times(a.currentGain.value).div(100).add(n.value))});const[Oe,Ce]=rl(()=>[{title:"Boxes Gain",modifier:s,base:()=>a.scaling.currentGain(a)}]),Ze=me(!1),Ne=f(()=>t(Si,{modelValue:Ze.value,"onUpdate:modelValue":x=>Ze.value=x},{header:()=>t("h2",null,[e,o(" Modifiers")]),body:Oe})),{total:fe,trackerDisplay:we}=wl({resource:n,goal:5e4,masteryGoal:5e5,name:e,day:es,color:l,modal:{display:Ne,show:Ze}}),xe={boxes:I(0),totalBoxes:I(0),upgrades:{logsUpgrade:{bought:I(!1)},ashUpgrade:{bought:I(!1)},coalUpgrade:{bought:I(!1)}},row2Upgrades:{oreUpgrade:{bought:I(!1)},metalUpgrade:{bought:I(!1)},plasticUpgrade:{bought:I(!1)}},row3Upgrades:{clothUpgrade:{bought:I(!1)},dyeUpgrade:{bought:I(!1)},xpUpgrade:{bought:I(!1)}},buyables:{logBoxesBuyable:{amount:I(0)},ashBoxesBuyable:{amount:I(0)},coalBoxesBuyable:{amount:I(0)}},buyables2:{oreBoxesBuyable:{amount:I(0)},metalBoxesBuyable:{amount:I(0)},plasticBoxesBuyable:{amount:I(0)}}},Fe=I(!1),ue=Z(()=>{var x;return Fe.value||((x=V.currentlyMastering.value)==null?void 0:x.name)===e});return{name:e,day:es,color:l,boxes:n,totalBoxes:fe,boxesConversion:a,upgrades:b,row2Upgrades:j,row3Upgrades:T,buyables:de,buyables2:ie,minWidth:700,generalTabCollapsed:Ce,display:f(()=>t(C,null,[We(we),t(pe,null,null),ue.value?t(C,null,[o("Decoration effect: Effective boxes buyables' levels are squared"),t(pe,null,null)]):null,t(Ui,{resource:n,color:l,style:"margin-bottom: 0"},null),t(pe,null,null),We(r),t(pe,null,null),fl(Object.values(b),Object.values(j),Object.values(T)),t(pe,null,null),fl(Object.values(de),Object.values(ie))])),minimizedDisplay:f(()=>t("div",null,[e," ",t("span",{class:"desc"},[le(n.value),o(" "),n.displayName])])),mastery:xe,mastered:Fe}});var rt="data:image/png;base64,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",dt="./assets/cloth.7bcd7f37.png",ut="data:image/png;base64,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",ct="data:image/png;base64,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",bt="./assets/elf.9fbfa563.png",Zt="./assets/elfManagement.436c8744.png",yt="./assets/letterbox.e01917c1.png",pt="./assets/metal.7407f5d1.png",ht="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAFxGAABcRgEUlENBAAAAG3RFWHRTb2Z0d2FyZQBDZWxzeXMgU3R1ZGlvIFRvb2zBp+F8AAAE/ElEQVR42u3dW3baMBRAURhzO4x2zO5P25WPPAhIuq99JhAsayNwbHG/rusm6f3ugEiASIBIgEiASIBIgEiASIBIgNQ+mPv9/8Fc13V3ejUeyFsUnwWMRgF5FAYoGgXkWRiQqD2QFThAUUsgq3FAIkAgESCQCJDtQCARIJAIEEAECCQCJArISSQfHRekgIxG4h4yQCBZdAyQADLi+0jlGyw/e+2dAY+7mzdqgr76ek9OQjeENgBSDUl2IO51awjkJJRXTnTWd2T/WxoCJDOSla9r1UQ7faGjMpKWmzZk+riQCUgEjOpIWu9qsmNCfOckZ3nAKxpGZSRjtv2JeCePXj0ywQBkEJZHTnLk6pERBiDDsHx1oqOAZMZREYmdFZ+YYBlXkAowABmAJuqd/LO/WwkHIDqGoxoM30F0DEhFHIBoO5CqMADRFiBwAALIA5MKDkCWTbTIk7Hj41V1HIAknmCnT06HyQxHUiDVd0+EoxeOVEA6PKMASC8caYBkmFjVn7WAoymQrBPr7ZfjTvdBwVEISPVbJcDojQMQwQGI4ABEcAAiMAARMIAAAgwggKg8FEAECSACBBBB0gsIJIAAAogAgUS+gwAiQCARHAmBQAIIIJCoGKCU+2JBAgwgkKgAFiuIQPElXZAUBgKGsiJxq4kgyQgEDFVAEgIEDlVBchwIHAIEDDVBcgQIHAIEDgEChwABRJDsBgKHAIFDgAAiQOAQIIAIEEAECCASIBIgUk4cgAgQQAQHIAKkBhBI1AXHNiCgqAOO7UAgUWUcR4DAooowQoAAo0o4woFAoqwwrCACAxCBURQIHMoMIxQIHLKCAKIGWGxeLVCyAIFD1ZAAIlAyAInG8dXgwgvJWCDfHVRYIDkKJGLCrRhEUABpB2T14EEyG0mr50F2DRokgJQHsn13C0hGImnxyO2RgSoI5N+4dMUNSLblNvlEm3a1rjSQbjiyT6iJV+0ASQYk8yRaOQ5VoACSEMjfY/t1u91+JJknv6/r+ukNoRCQDpd2AckNBRBAUgHJhgWQpDgSvpseBxI9FuVvNekOJNEqEooj4ryXv5u3+8crQOLmQYvnQSasHoCcnxdtth4FpAaQj85T0EWPK9O5BaTPl/WngDzyujPvVQVIkZMXDGT56gELIIC88NonQgFkKBBImgLJdoICkSy5gvXs658Cpdw/CgFZC+TVY+gOpRSQlJsbNwACCSDdgGz5ByEkh4DsmDhZT0AnIJAcBLJyAmUf+AAkKYF0RAIIIJBEApmwbAPSF0nqnz+oMsiAAHJ08CsO7uG7e0ts1NABSaqfga48oAeBbH8GZOWKWB1JKJBOdQEy5fI8IH2/h5RaQcp/MgAEkN3HAYhOfsyyggACSCcglZEAAggggAACCCCAAAIIIDV3cwdEp5AAAgggnYC4zKt2QFYiAUQtgaxA4l4stQbyChK3u2sEkGeRAKIxQL4DxTPpikSS5kdz3sNiVxMB8g4UG8cJkInnEhBABAggAgQQAQIIIIAAAgggkAACCCCAACJAABEggAgQAQKIAAFEgAAiQACBBBBAAAEEEEAAESCACBBABAggRqEeEEgAAQQQQAABBBBAAAFEp4FAAggggAACCCCAAAIJIAIEECXCAQgggEACCCCAAAIIIIAoAggkgAACCCBwAAIIIJAAAggggCgZEEgAgQMQQACBBBBAAAEEDkgK9wfV+oLa+LwMvQAAAABJRU5ErkJggg==",Vt="./assets/paperStacks.4c96ec8c.png",Wt="./assets/plastic.b8ac74ff.png",vt="./assets/ribbons.4f911bf2.png",jt="./assets/sws.714ad454.png",Jt="./assets/tree.35808197.png",ft="./assets/workshopMansion.f5e58b53.png",wt="./assets/wrappingPaper.7d754375.png";const V=Di("main",function(){const e=I(1),l=Z(()=>(+new Date(new Date().getFullYear(),11,e.value)-Me.time)/1e3),n=me(!1),s=me(-1),a=me(""),r=me(),d=Z(()=>c.value?Object.values(oi).find(M=>{var T;return m(M.mastered)===!1&&!["Elves","Management"].includes(m((T=M==null?void 0:M.name)!=null?T:""))}):void 0),u=me(!1),c=I(!1),b=()=>{u.value=!0,c.value=!c.value;for(const M of[ge,di,ee,ye,z,si,Zi,Yi,ce,ai,Ye,v,tn])J(M.mastery,M);u.value=!1};function J(M,T){for(const O of Object.keys(M))qs(M[O])?[M[O].value,T[O].value]=[T[O].value,M[O].value]:J(M[O],T[O])}function h(M){if(window.matchMedia("(min-width: 1468px)").matches)if(Me.tabs.includes(M)){const T=Me.tabs.lastIndexOf(M);Me.tabs.splice(T,1)}else Me.tabs.push(M),V.minimized.value=!0;else Me.tabs.splice(1,1/0,M);oi[M].minimized.value=!1}function W(M){const T=I(!1),O=I(!1);return nl(()=>{const k=M(),D=Ri(k.shouldNotify),de=Ri(()=>m(D)||m(O));return{...k,opened:T,shouldNotify:de,recentlyUpdated:O,[El]:ko,[Al]:function(){var xe,Fe;const{day:_,layer:Q,symbol:U,opened:ie,shouldNotify:Oe,story:Ce,completedStory:Ze,masteredStory:Ne,recentlyUpdated:fe}=this,we=(Fe=(xe=oi[Q!=null?Q:""])==null?void 0:xe.mastered)!=null?Fe:me(!1);return{day:_,symbol:U,layer:Q,opened:ie,recentlyUpdated:fe,shouldNotify:Oe,mastered:we,onOpenLore(){var $,Ie;const ue=V.day.value>_;s.value=ue?_-1:-1;const x=m((Ie=($=oi[Q!=null?Q:"trees"])==null?void 0:$.name)!=null?Ie:"");a.value=ue?`${x} - Completed!`:x,r.value=ue?m(we)?`${Ce}${Ze}${Ne}`:`${Ce}${Ze}`:Ce,n.value=!0},onOpenLayer(){fe.value=!1,h(Q!=null?Q:"trees")},onUnlockLayer(){Q&&(ie.value=!0,setTimeout(()=>{var ue,x;s.value=-1,a.value=m((x=(ue=oi[Q!=null?Q:"trees"])==null?void 0:ue.name)!=null?x:""),r.value=Ce,Me.autoPause&&(Me.devSpeed=null),n.value=!0},1e3))}}}}})}const j=[W(()=>({day:1,shouldNotify:!1,layer:"trees",symbol:Jt,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!",masteredStory:"As you repeat the basic actions again, you feel like you've learned something that you didn't know the first time around. Santa is impressed at your new knowledge and inspires you to attempt this with more jobs."})),W(()=>({day:2,shouldNotify:!1,layer:"workshop",symbol:jt,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!",masteredStory:"As you attempt to build the workshop again with your newfound experiences and resources, you realize you could have built the workshop a little bit better. As you keep building and building, you realize that you could've built it without wasting any resources."})),W(()=>({day:3,shouldNotify:!1,layer:"coal",symbol:ut,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!",masteredStory:"It's another typical day, attempting to redo your work again, but this time for coal. While doing this tedious task, an elf comes up to you. It gives you a improved blueprint on how to make small fires. You try it, and you realize that it's a lot more efficent than your old buildings designs. You thank the elf, and resume your work."})),W(()=>({day:4,shouldNotify:!1,layer:"elves",symbol:bt,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!",masteredStory:"This place feels a lot more better, with less naughty elves who are more excited than ever before to do something! As you collapse into a chair thinking of all of your hard work, Santa comes by yet again to congratulate you on your hard work. You feel a pang of jealousy as Santa is taking all the credit for your work, but you decide that saving Christmas is worth it."})),W(()=>({day:5,shouldNotify:!1,layer:"paper",symbol:Vt,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!",masteredStory:"Paper. Who knew it could be so versatile? As you slowly but surely improve your skills on making paper, you find more efficent ways to make it, and as a bonus, it's also environmentally friendly (which kinda makes up for you chopping a bit too many trees)! As you pass this information along to Santa's elves, they become more excited. Good Job!"})),W(()=>({day:6,shouldNotify:!1,layer:"boxes",symbol:rt,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!",masteredStory:"You look at your massive amounts of boxes, but something doesn't feel right. Oh wait, the elves are only filling the boxes to half the amount that it can actually store! As realisation hits you on how you can make boxes more efficent by using simple methods, you realize that you ought to teach the art of dumping-more-stuff-in-boxes-also-known-as-hoarding to the elves. Whew, that was a lot of work. Great Job!"})),W(()=>({day:7,shouldNotify:!1,layer:"metal",symbol:pt,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!",masteredStory:`Cling clang clang clang. The sounds of even more drills hit your ears. As you fondly look back at the terrific work you've done, you become more motivated to work harder. Just then, Santa appears in front of you and you scream. He says, "I see you're working hard. I suggest that you take a break." You thank Santa for the break, sit in a chair made by the elves as a gift, and relax.`})),W(()=>({day:8,shouldNotify:!1,layer:"cloth",symbol:dt,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!",masteredStory:""})),W(()=>({day:9,shouldNotify:!1,layer:"oil",symbol:ht,story:"Looks like you just need one more thing before the toy factory can start running: plastic! Every toy nowadays is made with plastic! But wait, how are you going to get plastic? What can make plastic? Wait that's right, oil! You figured out you might as well repurpose your coal and ore drills into something that can get you oil, but unfortunately you'll need to mine much deeper that you're currently doing, so let's get to work!",completedStory:"It took a while, but you finally got enough oil for the next step! You deserve a good rest after all this digging work - tomorrow will be a busy day! Good Job!",masteredStory:""})),W(()=>({day:10,shouldNotify:!1,layer:"plastic",symbol:Wt,story:"Now that plenty of oil has been prepared, it's time to start refining it into plastic! This should be incredibly useful not only for toys, but making tools and other items!",completedStory:"You've started refining massive amounts of oil into slightly less massive amounts of plastic. You have a slight pang of regret thinking of the environmental impact, but ultimately decide Christmas is worth it. Good Job!",masteredStory:""})),W(()=>({day:11,shouldNotify:!1,layer:"dyes",symbol:ct,story:"To make toys, we're going to need some color to make them look nice and enticing! We can't just give kids clear toys after all! To add some color to our toys, we'll need some dyes!",completedStory:"After all that effort, you finally have a rainbow of dyes to choose from! Now the children won't be able to resist the toys you have to offer, once you get them made of course... Good Job!",masteredStory:""})),W(()=>({day:12,shouldNotify:!1,layer:"management",symbol:Zt,story:"You watch as the elves work, and you realize that they could probably be trained to help out better. Just then, Santa comes over to check on your progress. You reply that you're doing fine, except that the elves may need a bit of behavior management. Santa offers to help, saying that he doesn't want to leave you to do everything. Unfortunately for you, the behavior problems won't fix themselves, so let's get to work!",completedStory:"Woo! You are exhausted - this layer felt really long to you. It's great seeing the elves so productive, although you worry a bit about your own job security now! Good Job!",masteredStory:""})),W(()=>({day:13,shouldNotify:!1,layer:"management",symbol:ft,story:"So after a good night's rest you decide that maybe making these elves able to do all the work for you isn't something to be scared of, but rather encouraged. Let's spend another day continuing to train them up and really get this place spinning. They are Santa's elves after all, they're supposed to be able to run everything without you!",completedStory:"The elves are doing an incredible job, and Santa does not seem keen on firing you - Score! Now you can get to work on guiding this properly trained highly functional group of hard workers to make Christmas as great as possible. Good Job!",masteredStory:""})),W(()=>({day:14,shouldNotify:!1,layer:"letters",symbol:yt,story:"Fully prepared to start working on presents, you realize you don't actually know what to make! You ask Santa and he points at a massive pile of letters hiding just off-camera. Those are all the letters to Santa that need to be processed, sorted, and categorized appropriately so every kid gets what they need!",completedStory:"The letters are sorted! You have a slight feeling you may have rushed a little, and suddenly understand why sometimes you don't get everything you asked Santa for every year, or even the occasional bad gift. You sympathetically pat Santa on the back as you head to bed for the day. Good Job!",masteredStory:""})),W(()=>({day:15,shouldNotify:!1,layer:"wrappingPaper",symbol:wt,story:"You'll need to produce wrapping paper so the presents can be wrapped. The elves are getting a bit bored of their boring old workstations, so you decide to let them decorate with some wrapping paper.",completedStory:"You've produced enough wrapping paper, and the elves are happy with their new workstations. However, some will need more than just wrapping paper to decorate. For now, Good Job!",masteredStory:""})),W(()=>({day:16,shouldNotify:!1,layer:null,symbol:vt,story:"In addition to wrapping paper, you think some ribbons are in order! These should work pretty similarly, allowing you to decorate even more workstations!",completedStory:"Ribbon surrounds the north pole now - everything looks fantastic, and you're pretty sure now you have every single material you could possibly need to start making toys and preparing them for Christmas! With just under 10 days left until Christmas, you go to sleep giddy with anticipation. Good Job!",masteredStory:""})),W(()=>({day:17,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:18,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:19,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:20,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:21,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:22,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:23,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""})),W(()=>({day:24,shouldNotify:!1,layer:null,symbol:"",story:"",completedStory:"",masteredStory:""}))];function F(){s.value=e.value-1,a.value="Day Complete!",r.value=j[e.value-1].completedStory,n.value=!0,e.value++,V.minimized.value=!1,Me.autoPause&&(Me.devSpeed=0),il()}function X(){const M=d.value;M!=null&&(s.value=M.day-1,a.value="Day Decorated!",r.value=j[s.value].masteredStory,n.value=!0,M.mastered!=null&&(M.mastered.value=!0),b())}return{name:"Calendar",days:j,day:e,openDay:h,timeUntilNewDay:l,loreScene:s,loreTitle:a,loreBody:r,showLoreModal:n,completeDay:F,completeMastery:X,minWidth:700,isMastery:c,toggleMastery:b,swappingMastery:u,currentlyMastering:d,display:f(()=>t(C,null,[Me.devSpeed===0?t("div",null,[o("Game Paused")]):null,Me.devSpeed&&Me.devSpeed!==1?t("div",null,[o("Dev Speed: "),le(Me.devSpeed),o("x")]):null,Me.offlineTime?t("div",null,[o("Offline Time: "),mn(Me.offlineTime)]):null,t(pe,null,null),t("div",{class:"advent"},[j.reduce((M,T)=>(M[M.length-1].length===4&&M.push([]),M[M.length-1].push(T),M),[[]]).map(M=>ci(...M))])]))}}),im=e=>[V,ge,di,ee,ye,z,si,Zi,Yi,ce,ai,Ye,v,tn,zi,Zs],ys=Z(()=>!1);function lm(e,l){var n,s,a;!["0.0","0.1","0.2","0.3","0.4"].includes(e!=null?e:"")||(s=(n=l.layers)==null?void 0:n.workshop)!=null&&s.foundationProgress&&(((a=l.layers)==null?void 0:a.workshop).foundationProgress=i.min(l.layers.workshop.foundationProgress,1e3))}var nm=Object.freeze(Object.defineProperty({__proto__:null,main:V,getInitialLayers:im,hasWon:ys,fixOldSave:lm},Symbol.toStringTag,{value:"Module"}));const sm={class:"scene"},tm=["src"],am=["src"],om=["src"],Im=["src"],mm=["src"],rm=["src"],dm=["src"],um=["src"],cm=["src"],bm=["src"],Zm=["src"],ym=["src"],pm=["src"],hm=["src"],Vm=["src"],Wm=["src"],vm=Qe({__name:"Scene",props:{day:null},setup(e){return(l,n)=>(g(),S("div",sm,[e.day>=7?(g(),S("img",{key:0,src:m(dt),class:"scene-item",style:{left:"4%",bottom:"3%",width:"40px",height:"40px"}},null,8,tm)):te("",!0),e.day>=0?(g(),S("img",{key:1,src:m(Jt),class:"scene-item",style:{left:"10%",bottom:"10%"}},null,8,am)):te("",!0),e.day>=13?(g(),S("img",{key:2,src:m(yt),class:"scene-item",style:{left:"26%",bottom:"12%",width:"40px",height:"40px"}},null,8,om)):te("",!0),e.day>=12?(g(),S("img",{key:3,src:m(ft),class:"scene-item",style:{left:"33%",bottom:"12%",width:"30%",height:"60%"}},null,8,Im)):(g(),S(C,{key:4},[e.day>=11?(g(),S("img",{key:0,src:m(Zt),class:"scene-item",style:{left:"28%",bottom:"12%"}},null,8,mm)):te("",!0),e.day>=1?(g(),S("img",{key:1,src:m(jt),class:"scene-item",style:{left:"40%",bottom:"12%"}},null,8,rm)):te("",!0),e.day>=3?(g(),S("img",{key:2,src:m(bt),class:"scene-item",style:{left:"52%",bottom:"12%"}},null,8,dm)):te("",!0)],64)),e.day>=2?(g(),S("img",{key:5,src:m(ut),class:"scene-item",style:{left:"65%",bottom:"12%",width:"40px",height:"40px"}},null,8,um)):te("",!0),e.day>=6?(g(),S("img",{key:6,src:m(pt),class:"scene-item",style:{left:"72%",bottom:"8%",width:"40px",height:"40px"}},null,8,cm)):te("",!0),e.day>=8?(g(),S("img",{key:7,src:m(ht),class:"scene-item",style:{left:"80%",bottom:"6%"}},null,8,bm)):te("",!0),e.day>=4?(g(),S("div",{key:8,class:"scene-bubble",style:Ni(e.day>=12?"left: 33%; bottom: 73%":"left: 50%; bottom: 38%")},[e.day>=4?(g(),S("img",{key:0,src:m(Vt),class:"scene-item"},null,8,Zm)):te("",!0),e.day>=5?(g(),S("img",{key:1,src:m(rt),class:"scene-item"},null,8,ym)):te("",!0),e.day>=9?(g(),S("img",{key:2,src:m(Wt),class:"scene-item"},null,8,pm)):te("",!0),e.day>=10?(g(),S("img",{key:3,src:m(ct),class:"scene-item"},null,8,hm)):te("",!0),e.day>=14?(g(),S("img",{key:4,src:m(wt),class:"scene-item"},null,8,Vm)):te("",!0),e.day>=15?(g(),S("img",{key:5,src:m(vt),class:"scene-item"},null,8,Wm)):te("",!0)],4)):te("",!0)]))}});var jm=ui(vm,[["__scopeId","data-v-09028fb6"]]);const Jm=Qe({components:{Context:Ps},props:{index:{type:Number,required:!0},tab:{type:Function,required:!0},display:{type:Je(Object,String,Function),required:!0},minimizedDisplay:Je(Object,String,Function),minimized:{type:Object,required:!0},minWidth:{type:Je(Number,String),required:!0},name:{type:Je(String),required:!0},color:Je(String),minimizable:Je(Boolean),nodes:{type:Object,required:!0}},setup(e){const{display:l,index:n,minimized:s,minWidth:a,tab:r,minimizedDisplay:d,name:u}=Ai(e),c=Gn(l),b=Gl(d),J=Z(()=>Ii.allowGoBack&&n.value>0&&!s.value);function h(){Me.tabs.splice(m(e.index),1)}function W(X){s.value=X}_l(()=>F(s.value,m(a.value))),hl([u,s,Zo(a)],([X,M,T])=>{F(M,T)});function j(X){e.nodes.value=X}function F(X,M){s.value=X;const T=typeof M=="number"||Number.isNaN(parseInt(M))?M+"px":M,O=r.value();O!=null&&(X?(O.style.flexGrow="0",O.style.flexShrink="0",O.style.width="60px",O.style.minWidth=O.style.flexBasis="",O.style.margin="0"):(O.style.flexGrow="",O.style.flexShrink="",O.style.width="",O.style.minWidth=O.style.flexBasis=T,O.style.margin=""))}return{component:c,minimizedComponent:b,showGoBack:J,updateNodes:j,unref:m,goBack:h,setMinimized:W,minimized:s,minWidth:a}}}),fm={key:1};function wm(e,l,n,s,a,r){const d=Tl("Context");return g(),S("div",{class:"layer-container",style:Ni({"--layer-color":e.unref(e.color)})},[e.showGoBack?(g(),S("button",{key:0,class:"goBack",onClick:l[0]||(l[0]=(...u)=>e.goBack&&e.goBack(...u))},"\u274C")):te("",!0),e.minimized?(g(),S("button",{key:1,class:"layer-tab minimized",onClick:l[1]||(l[1]=u=>e.setMinimized(!1))},[e.minimizedComponent?(g(),ke(fi(e.minimizedComponent),{key:0})):(g(),S("div",fm,qe(e.unref(e.name)),1))])):(g(),S("div",{key:2,class:wi(["layer-tab",{showGoBack:e.showGoBack}])},[t(d,{onUpdateNodes:e.updateNodes},{default:Ge(()=>[(g(),ke(fi(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(g(),S("button",{key:3,class:"minimize",onClick:l[2]||(l[2]=u=>e.setMinimized(!0))}," \u25BC ")):te("",!0)],4)}var Cm=ui(Jm,[["render",wm],["__scopeId","data-v-0fa6fe27"]]);const Ct=e=>(Ql("data-v-4b4bda40"),e=e(),Ul(),e),gm=Ct(()=>w("h2",null,"Changelog",-1)),Om=Ct(()=>w("details",{open:""},[w("summary",null,[o("v0.0 Initial Commit - "),w("time",null,"2021-09-04")]),o(" This is the first release :D "),w("ul",null,[w("li",{class:"feature"},"Did everything"),w("li",{class:"fix"},"Had some fun"),w("li",{class:"breaking"},"Removed everything"),w("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),Nm=Qe({__name:"Changelog",setup(e,{expose:l}){const n=me(!1);return l({open(){n.value=!0}}),(s,a)=>(g(),ke(Si,{modelValue:n.value,"onUpdate:modelValue":a[0]||(a[0]=r=>n.value=r)},{header:Ge(()=>[gm]),body:Ge(()=>[Om]),_:1},8,["modelValue"]))}});var Ym=ui(Nm,[["__scopeId","data-v-4b4bda40"]]);const Mm={class:"info-modal-header"},Xm=["src","alt"],xm={class:"info-modal-title"},Gm={key:0},Fm=o(" - "),km={key:0},zm={key:0},Rm=w("div",null," Made in Profectus, by thepaperpilot with inspiration from Acameada and Jacorb ",-1),Sm=w("br",null,null,-1),Hm=w("br",null,null,-1),Lm=["href"],Tm=w("span",{class:"material-icons info-modal-discord"},"discord",-1),Qm=w("div",null,[w("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[w("span",{class:"material-icons info-modal-discord"},"discord"),o(" The Paper Pilot Community ")])],-1),Um=w("div",null,[w("a",{href:"https://discord.gg/F3xveHV",class:"info-modal-discord-link",target:"_blank"},[w("span",{class:"material-icons info-modal-discord"},"discord"),o(" The Modding Tree ")])],-1),Em=w("br",null,null,-1);var Am=Qe({__name:"Info",props:{changelog:null},setup(e,{expose:l}){const n=e,{title:s,logo:a,author:r,discordName:d,discordLink:u,versionNumber:c,versionTitle:b}=Ii,J=Ai(n),h=me(!1),W=Z(()=>mn(Me.timePlayed)),j=Z(()=>ti(f(()=>t(C,null,[tt.map(We)]))));l({open(){h.value=!0}});function F(){var X;(X=m(J.changelog))==null||X.open()}return(X,M)=>(g(),ke(Si,{class:"info-modal",modelValue:h.value,"onUpdate:modelValue":M[0]||(M[0]=T=>h.value=T)},{header:Ge(()=>[w("div",Mm,[m(a)?(g(),S("img",{key:0,class:"info-modal-logo",src:m(a),alt:m(s)},null,8,Xm)):te("",!0),w("div",xm,[w("h2",null,"- "+qe(m(s))+" -",1),w("h4",null,[o(" - v"+qe(m(c)),1),m(b)?(g(),S("span",Gm,": "+qe(m(b)),1)):te("",!0),Fm])])])]),body:Ge(({shown:T})=>[T?(g(),S("div",km,[m(r)?(g(),S("div",zm,"By "+qe(m(r)),1)):te("",!0),Rm,Sm,w("div",{class:"link",onClick:F},"Changelog"),Hm,w("div",null,[m(u)?(g(),S("a",{key:0,href:m(u),class:"info-modal-discord-link",target:"_blank"},[Tm,o(" "+qe(m(d)),1)],8,Lm)):te("",!0)]),Qm,Um,Em,w("div",null,"Time Played: "+qe(m(W)),1),(g(),ke(fi(m(j))))])):te("",!0)]),_:1},8,["modelValue"]))}});const Dm=["onClick"],Bm=Qe({__name:"FeedbackButton",props:{left:{type:Boolean}},emits:["click"],setup(e,{emit:l}){const n=me(!1),s=me(null);function a(){l("click"),s.value&&clearTimeout(s.value),n.value=!1,_l(()=>{n.value=!0,s.value=setTimeout(()=>n.value=!1,500)})}return(r,d)=>(g(),S("button",{onClick:hn(a,["stop"]),class:wi(["feedback",{activated:n.value,left:e.left}])},[yl(r.$slots,"default",{},void 0,!0)],10,Dm))}});var gt=ui(Bm,[["__scopeId","data-v-01a1b95c"]]);const Pm=w("h2",null,"Settings",-1),_m={class:"option-tabs"},qm={key:0},$m={key:0},Km=o(" Manually save "),er={key:1,style:{"text-align":"center"}},ir={key:1};var lr=Qe({__name:"Options",setup(e,{expose:l}){const n=me(!1),s=me("behaviour");l({isTab:a,setTab:r,save(){il()},open(){n.value=!0}});function a(_){return _==s.value}function r(_){s.value=_}const d=Object.keys(bn).map(_=>({label:Ds(_),value:_})),u=Z(()=>ti(f(()=>t(C,null,[st.map(We)])))),{showTPS:c,theme:b,usingLog:J,alignUnits:h}=Ai(hi),{autosave:W,autoPause:j}=Ai(Me),F=Z({get(){return Me.devSpeed===0},set(_){Me.devSpeed=_?0:null}}),X=Z(()=>oi.main.days[oi.main.day.value-1].opened.value),M=f(()=>t("span",{class:"option-title"},[o("Autosave"),t(Fi,{display:"Save-specific"},{default:()=>[o("*")]}),t("desc",null,[o("Automatically save the game every second or when the game is closed.")])])),T=f(()=>t("span",{class:"option-title"},[o("Pause game"),t(Fi,{display:"Save-specific"},{default:()=>[o("*")]}),t("desc",null,[o("Stop everything from moving.")])]));f(()=>t("span",{class:"option-title"},[o("Auto-pause"),t(Fi,{display:"Save-specific"},{default:()=>[o("*")]}),t("desc",null,[o("Automatically pause the game when a day is completed. It is best to keep this on to avoid over-grinding.")])]));const O=f(()=>t("span",{class:"option-title"},[o("Theme"),t("desc",null,[o("How the game looks.")])])),k=f(()=>t("span",{class:"option-title"},[o("Show TPS"),t("desc",null,[o("Show TPS meter at the bottom-left corner of the page.")])])),D=f(()=>t("span",{class:"option-title"},[o("Logarithmic progress bars"),t("desc",null,[o("Whether progress bars should be normalized for exponential growth.")])])),de=f(()=>t("span",{class:"option-title"},[o("Align modifier units"),t("desc",null,[o("Align numbers to the beginning of the unit in modifier view.")])]));return(_,Q)=>(g(),ke(Si,{modelValue:n.value,"onUpdate:modelValue":Q[9]||(Q[9]=U=>n.value=U)},{header:Ge(()=>[Pm,w("div",_m,[w("button",{class:wi({selected:a("behaviour")}),onClick:Q[0]||(Q[0]=U=>r("behaviour"))}," Behaviour ",2),w("button",{class:wi({selected:a("appearance")}),onClick:Q[1]||(Q[1]=U=>r("appearance"))}," Appearance ",2)])]),body:Ge(()=>[a("behaviour")?(g(),S("div",qm,[m(X)?(g(),S("div",$m,[t(Jl,{title:m(M),modelValue:m(W),"onUpdate:modelValue":Q[2]||(Q[2]=U=>ki(W)?W.value=U:null)},null,8,["title","modelValue"]),m(W)?te("",!0):(g(),ke(gt,{key:0,class:"button save-button",onClick:Q[3]||(Q[3]=U=>m(il)())},{default:Ge(()=>[Km]),_:1}))])):(g(),S("div",er," Auto-saving is disabled while between days ")),m(Ii).enablePausing?(g(),ke(Jl,{key:2,title:m(T),modelValue:m(F),"onUpdate:modelValue":Q[4]||(Q[4]=U=>ki(F)?F.value=U:null)},null,8,["title","modelValue"])):te("",!0)])):te("",!0),a("appearance")?(g(),S("div",ir,[t(bs,{title:m(O),options:m(d),modelValue:m(b),"onUpdate:modelValue":Q[5]||(Q[5]=U=>ki(b)?b.value=U:null)},null,8,["title","options","modelValue"]),(g(),ke(fi(m(u)))),t(Jl,{title:m(k),modelValue:m(c),"onUpdate:modelValue":Q[6]||(Q[6]=U=>ki(c)?c.value=U:null)},null,8,["title","modelValue"]),t(Jl,{title:m(D),modelValue:m(J),"onUpdate:modelValue":Q[7]||(Q[7]=U=>ki(J)?J.value=U:null)},null,8,["title","modelValue"]),t(Jl,{title:m(de),modelValue:m(h),"onUpdate:modelValue":Q[8]||(Q[8]=U=>ki(h)?h.value=U:null)},null,8,["title","modelValue"])])):te("",!0)]),_:1},8,["modelValue"]))}});const nr=["onSubmit"],sr={class:"field"},tr={key:0,class:"field-title"},ar=["placeholder"],or=Qe({__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:l}){const n=e,s=Gl(Vl(n,"title"),"span"),a=Il(null);Fn(()=>{var c;(c=a.value)==null||c.focus()});const r=Z({get(){return m(n.modelValue)||""},set(c){l("update:modelValue",c)}});function d(){l("submit")}function u(){n.submitOnBlur!==!1?l("submit"):l("cancel")}return(c,b)=>(g(),S("form",{onSubmit:hn(d,["prevent"])},[w("div",sr,[m(s)?(g(),S("span",tr,[(g(),ke(fi(m(s))))])):te("",!0),e.textArea?(g(),ke(m(Et),{key:1,modelValue:m(r),"onUpdate:modelValue":b[0]||(b[0]=J=>ki(r)?r.value=J:null),placeholder:e.placeholder,maxHeight:e.maxHeight,onBlur:u,ref_key:"field",ref:a},null,8,["modelValue","placeholder","maxHeight"])):kn((g(),S("input",{key:2,type:"text","onUpdate:modelValue":b[1]||(b[1]=J=>ki(r)?r.value=J:null),placeholder:e.placeholder,class:wi({fullWidth:!e.title}),onBlur:u,ref_key:"field",ref:a},null,42,ar)),[[St,m(r)]])])],40,nr))}});var Ot=ui(or,[["__scopeId","data-v-67b44a54"]]);const Ir={key:0},mr=["onClick","disabled"],rr={key:0},dr=["onClick"],ur=Qe({__name:"DangerButton",props:{disabled:{type:Boolean},skipConfirm:{type:Boolean}},emits:["click","confirmingChanged"],setup(e,{emit:l}){const s=Ai(e),a=me(!1);hl(a,u=>{l("confirmingChanged",u)});function r(){if(m(s.skipConfirm)){l("click");return}a.value&&l("click"),a.value=!a.value}function d(){a.value=!1}return(u,c)=>(g(),S("span",{class:wi(["container",{confirming:a.value}])},[a.value?(g(),S("span",Ir,"Are you sure?")):te("",!0),w("button",{onClick:hn(r,["stop"]),class:"button danger",disabled:e.disabled},[a.value?(g(),S("span",rr,"Yes")):yl(u.$slots,"default",{key:1},void 0,!0)],8,mr),a.value?(g(),S("button",{key:1,class:"button",onClick:hn(d,["stop"])},"No",8,dr)):te("",!0)],2))}});var cr=ui(ur,[["__scopeId","data-v-2f8ef34c"]]);const Fl=e=>(Ql("data-v-5285ac49"),e=e(),Ul(),e),br=Fl(()=>w("div",{class:"handle material-icons"},"drag_handle",-1)),Zr={key:0,class:"actions"},yr=Fl(()=>w("span",{class:"material-icons"},"content_paste",-1)),pr=Fl(()=>w("span",{class:"material-icons"},"content_copy",-1)),hr=Fl(()=>w("span",{class:"material-icons"},"edit",-1)),Vr=Fl(()=>w("span",{class:"material-icons",style:{margin:"-2px"}},"delete",-1)),Wr={key:1,class:"actions"},vr=Fl(()=>w("span",{class:"material-icons"},"check",-1)),jr=Fl(()=>w("span",{class:"material-icons"},"close",-1)),Jr={key:2,class:"details"},fr={class:"save-version"},wr=Fl(()=>w("br",null,null,-1)),Cr={key:0},gr={key:1},Or={key:3,class:"details"},Nr={key:4,class:"details error"},Yr=Fl(()=>w("br",null,null,-1)),Mr=Qe({__name:"Save",props:{save:null},emits:["export","open","duplicate","delete","editName"],setup(e,{emit:l}){const n=e,{save:s}=Ai(n),a=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),r=me(!1),d=me(!1),u=me("");hl(r,()=>u.value=s.value.name||"");const c=Z(()=>s.value&&s.value.id===Me.id),b=Z(()=>c.value?Me.time:s.value&&s.value.time||0),J=Gn(Z(()=>{var W,j,F,X;return`Day ${(X=(F=(j=(W=s.value)==null?void 0:W.layers)==null?void 0:j.main)==null?void 0:F.day)!=null?X:1}`}));function h(){l("editName",u.value),r.value=!1}return(W,j)=>(g(),S("div",{class:wi(["save",{active:m(c)}])},[br,r.value?(g(),S("div",Wr,[w("button",{onClick:h,class:"button"},[t(Fi,{display:"Save",direction:m(Be).Left,class:"info"},{default:Ge(()=>[vr]),_:1},8,["direction"])]),w("button",{onClick:j[5]||(j[5]=F=>r.value=!r.value),class:"button"},[t(Fi,{display:"Cancel",direction:m(Be).Left,class:"info"},{default:Ge(()=>[jr]),_:1},8,["direction"])])])):(g(),S("div",Zr,[m(s).error==null&&!d.value?(g(),ke(gt,{key:0,onClick:j[0]||(j[0]=F=>l("export")),class:"button",left:""},{default:Ge(()=>[t(Fi,{display:"Export",direction:m(Be).Left,class:"info"},{default:Ge(()=>[yr]),_:1},8,["direction"])]),_:1})):te("",!0),m(s).error==null&&!d.value?(g(),S("button",{key:1,onClick:j[1]||(j[1]=F=>l("duplicate")),class:"button"},[t(Fi,{display:"Duplicate",direction:m(Be).Left,class:"info"},{default:Ge(()=>[pr]),_:1},8,["direction"])])):te("",!0),m(s).error==null&&!d.value?(g(),S("button",{key:2,onClick:j[2]||(j[2]=F=>r.value=!r.value),class:"button"},[t(Fi,{display:"Edit Name",direction:m(Be).Left,class:"info"},{default:Ge(()=>[hr]),_:1},8,["direction"])])):te("",!0),t(cr,{disabled:m(c),onClick:j[3]||(j[3]=F=>l("delete")),onConfirmingChanged:j[4]||(j[4]=F=>d.value=F)},{default:Ge(()=>[t(Fi,{display:"Delete",direction:m(Be).Left,class:"info"},{default:Ge(()=>[Vr]),_:1},8,["direction"])]),_:1},8,["disabled"])])),m(s).error==null&&!r.value?(g(),S("div",Jr,[w("button",{class:"button open",onClick:j[6]||(j[6]=F=>l("open"))},[w("h3",null,qe(m(s).name),1)]),w("span",fr,"v"+qe(m(s).modVersion),1),wr,m(b)?(g(),S("div",Cr,"Last played "+qe(m(a).format(m(b))),1)):te("",!0),m(J)?(g(),S("div",gr,[(g(),ke(fi(m(J))))])):te("",!0)])):m(s).error==null&&r.value?(g(),S("div",Or,[t(Ot,{modelValue:u.value,"onUpdate:modelValue":j[7]||(j[7]=F=>u.value=F),class:"editname",onSubmit:h},null,8,["modelValue"])])):(g(),S("div",Nr,[o(" Error: Failed to load save with id "+qe(m(s).id),1),Yr,o(qe(m(s).error),1)]))],2))}});var Xr=ui(Mr,[["__scopeId","data-v-5285ac49"]]);const ps=e=>(Ql("data-v-3b9991aa"),e=e(),Ul(),e),xr=ps(()=>w("h2",null,"Saves Manager",-1)),Gr={class:"modal-footer"},Fr={class:"field"},kr=ps(()=>w("span",{class:"field-title"},"Create Save",-1)),zr={class:"field-buttons"},Rr={class:"footer"},Sr=ps(()=>w("div",{style:{"flex-grow":"1"}},null,-1)),Hr=Qe({__name:"SavesManager",setup(e,{expose:l}){const n=me(!1),s=me(null);l({open(){n.value=!0}});const a=me(!1),r=me(""),d=me(null);hl(r,O=>{O?_l(()=>{try{if(O[0]!=="{")if(O[0]==="e")O=decodeURIComponent(escape(atob(O)));else if(O[0]==="\u1BE1")O=Sl.decompressFromUTF16(O);else{console.warn("Unable to determine preset encoding",O),a.value=!0;return}const k=JSON.parse(O);if(typeof k!="object"){a.value=!0;return}const D=On();k.id=D,il(k),r.value="",a.value=!1,hi.saves.push(D)}catch{a.value=!0}}):a.value=!1});let u={"./../../saves/Day 01 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0wIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJ0cmVlcyJdLCJ0aW1lIjoxNjcwOTUyMzU0Mzg4LCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOnRydWUsIm9mZmxpbmVUaW1lIjowLCJ0aW1lUGxheWVkIjoxMTMwLjAxODk5OTk5OTk5NTUsImtlZXBHb2luZyI6ZmFsc2UsIm1vZElEIjoiYWR2ZW50LWluY3JlbWVudGFsIiwibW9kVmVyc2lvbiI6IjAuNSIsImxheWVycyI6eyJtYWluIjp7Im1pbmltaXplZCI6ZmFsc2UsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI1Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI3Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI4Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTQiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE1Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTciOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE4Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjAiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIxIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjMiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX19LCJkYXkiOjJ9LCJ0cmVlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJsb2dzIjoiNjk5Ljc1OTQwNjI0OTk5OTUiLCJ0b3RhbExvZ3MiOiIxMDAwOS43NTk0MDYyNDk5OTciLCJzYXBsaW5ncyI6IjkuNjE2Iiwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsiYW1vdW50IjoiNSJ9LCIxIjp7ImFtb3VudCI6IjEwIn0sIjIiOnsiYW1vdW50IjowfX0sIm1hbnVhbEN1dFByb2dyZXNzIjowLCJtYW51YWxQbGFudFByb2dyZXNzIjowLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sIndvcmtzaG9wIjp7Im1pbmltaXplZCI6ZmFsc2UsImZvdW5kYXRpb25Qcm9ncmVzcyI6MCwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOmZhbHNlfSwiYXV0b0N1dE1pbGVzdG9uZTEiOnsiZWFybmVkIjpmYWxzZX0sImF1dG9QbGFudE1pbGVzdG9uZTEiOnsiZWFybmVkIjpmYWxzZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6ZmFsc2V9LCJhdXRvUGxhbnRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6ZmFsc2V9LCJsb2dHYWluTWlsZXN0b25lMiI6eyJlYXJuZWQiOmZhbHNlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjpmYWxzZX0sImxvZ0dhaW5NaWxlc3RvbmUzIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTEiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMiI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUzIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTQiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lNSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX0sImNvYWwiOnsibWluaW1pemVkIjpmYWxzZSwiY29hbCI6IjAiLCJ0b3RhbENvYWwiOjAsImFzaCI6MCwiYWN0aXZlRmlyZXMiOjAsImJ1aWxkRmlyZSI6eyJhbW91bnQiOjB9LCJhY3RpdmVCb25maXJlcyI6MCwiYnVpbGRCb25maXJlIjp7ImFtb3VudCI6MH0sImFjdGl2ZUtpbG5zIjowLCJidWlsZEtpbG4iOnsiYW1vdW50IjowfSwiYWN0aXZlRHJpbGxzIjowLCJidWlsZERyaWxsIjp7ImFtb3VudCI6MH0sIndhcm1lckN1dHRlcnMiOnsiYm91Z2h0IjpmYWxzZX0sIndhcm1lclBsYW50ZXJzIjp7ImJvdWdodCI6ZmFsc2V9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsiYm91Z2h0IjpmYWxzZX0sInVubG9ja0JvbmZpcmUiOnsiYm91Z2h0IjpmYWxzZX0sImRlZGljYXRlZEN1dHRlcnMiOnsiYm91Z2h0IjpmYWxzZX0sImRlZGljYXRlZFBsYW50ZXJzIjp7ImJvdWdodCI6ZmFsc2V9LCJiZXR0ZXJGZXJ0aWxpemVyIjp7ImJvdWdodCI6ZmFsc2V9LCJ1bmxvY2tLaWxuIjp7ImJvdWdodCI6ZmFsc2V9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJib3VnaHQiOmZhbHNlfSwiaGVhdGVkQ3V0dGVycyI6eyJhbW91bnQiOjB9LCJoZWF0ZWRQbGFudGVycyI6eyJhbW91bnQiOjB9LCJtb3JlRmVydGlsaXplciI6eyJhbW91bnQiOjB9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImVsdmVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImVsdmVzIjp7ImN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwicGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiZXhwYW5kZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImhlYXRlZEN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiaGVhdGVkUGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiZmVydGlsaXplckVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJzbWFsbEZpcmVFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiYm9uZmlyZUVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJraWxuRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sInBhcGVyRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImJveEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJjbG90aEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJtaW5pbmdEcmlsbEVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9LCJoZWF2eURyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm9pbEVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9LCJtZXRhbEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9fSwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9LCI1Ijp7ImVhcm5lZCI6ZmFsc2V9LCI2Ijp7ImVhcm5lZCI6ZmFsc2V9LCI3Ijp7ImVhcm5lZCI6ZmFsc2V9LCI4Ijp7ImVhcm5lZCI6ZmFsc2V9LCI5Ijp7ImVhcm5lZCI6ZmFsc2V9LCIxMCI6eyJlYXJuZWQiOmZhbHNlfSwiMTEiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWUsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGFwZXIiOnsibWluaW1pemVkIjpmYWxzZSwicGFwZXIiOjAsInRvdGFsUGFwZXIiOjAsImJvb2tzIjp7ImN1dHRlcnNCb29rIjp7ImFtb3VudCI6MH0sInBsYW50ZXJzQm9vayI6eyJhbW91bnQiOjB9LCJleHBhbmRlcnNCb29rIjp7ImFtb3VudCI6MH0sImhlYXRlZEN1dHRlcnNCb29rIjp7ImFtb3VudCI6MH0sImhlYXRlZFBsYW50ZXJzQm9vayI6eyJhbW91bnQiOjB9LCJmZXJ0aWxpemVyQm9vayI6eyJhbW91bnQiOjB9LCJzbWFsbEZpcmVCb29rIjp7ImFtb3VudCI6MH0sImJvbmZpcmVCb29rIjp7ImFtb3VudCI6MH0sImtpbG5Cb29rIjp7ImFtb3VudCI6MH0sInBhcGVyQm9vayI6eyJhbW91bnQiOjB9LCJib3hCb29rIjp7ImFtb3VudCI6MH0sImNsb3RoQm9vayI6eyJhbW91bnQiOjB9LCJtaW5pbmdEcmlsbEJvb2siOnsiYW1vdW50IjowfSwiaGVhdnlEcmlsbEJvb2siOnsiYW1vdW50IjowfSwib2lsQm9vayI6eyJhbW91bnQiOjB9LCJtZXRhbEJvb2siOnsiYW1vdW50IjowfX0sInVwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHJpbGxpbmdVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJvaWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJib3hlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJib3hlcyI6MCwidG90YWxCb3hlcyI6MCwidXBncmFkZXMiOnsibG9nc1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImFzaFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImNvYWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwicm93MlVwZ3JhZGVzIjp7Im9yZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwicGxhc3RpY1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJsb2dCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfSwiYXNoQm94ZXNCdXlhYmxlIjp7ImFtb3VudCI6MH0sImNvYWxCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfX0sInJvdzNVcGdyYWRlcyI6eyJjbG90aFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImR5ZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sInhwVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwibWV0YWwiOnsibWluaW1pemVkIjpmYWxzZSwib3JlIjoiMTEzIiwiYmVzdE9yZSI6IjExMyIsIm9yZVByb2dyZXNzIjoiMC4wMDE5MDAwMDAwMDAwMzMzMTk1IiwibWV0YWwiOiIwIiwiYmVzdE1ldGFsIjowLCJ0b3RhbE1ldGFsIjowLCJzaW1wbGVQaWNrYXhlIjp7ImJvdWdodCI6ZmFsc2V9LCJkb3VibGVQaWNrYXhlIjp7ImJvdWdodCI6ZmFsc2V9LCJjcnVjaWJsZSI6eyJib3VnaHQiOmZhbHNlfSwiY29hbERyaWxsIjp7ImJvdWdodCI6ZmFsc2V9LCJpbmR1c3RyaWFsRnVybmFjZSI6eyJib3VnaHQiOmZhbHNlfSwiZWZmaWNpZW50RHJpbGwiOnsiYm91Z2h0IjpmYWxzZX0sIm9yZURyaWxsIjp7ImFtb3VudCI6MH0sImluZHVzdHJpYWxDcnVjaWJsZSI6eyJhbW91bnQiOjB9LCJhdXRvU21lbHRFbmFibGVkIjp0cnVlLCJob3R0ZXJGb3JnZSI6eyJhbW91bnQiOjB9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImNsb3RoIjp7Im1pbmltaXplZCI6ZmFsc2UsImNsb3RoIjowLCJ0b3RhbENsb3RoIjowLCJ3b29sIjowLCJzaGVlcCI6MTAsImJ1aWxkUGVucyI6eyJhbW91bnQiOjB9LCJiZXR0ZXJTaGVhcnMiOnsiYW1vdW50IjowfSwiZmFzdGVyU3Bpbm5pbmciOnsiYW1vdW50IjowfSwidHJlZXNVcGdyYWRlcyI6eyJ0cmVlc1VwZ3JhZGU0Ijp7ImJvdWdodCI6ZmFsc2V9LCJ0cmVlc1VwZ3JhZGUzIjp7ImJvdWdodCI6ZmFsc2V9LCJ0cmVlc1VwZ3JhZGUyIjp7ImJvdWdodCI6ZmFsc2V9LCJ0cmVlc1VwZ3JhZGUxIjp7ImJvdWdodCI6ZmFsc2V9fSwibWV0YWxVcGdyYWRlcyI6eyJtZXRhbFVwZ3JhZGU0Ijp7ImJvdWdodCI6ZmFsc2V9LCJtZXRhbFVwZ3JhZGUzIjp7ImJvdWdodCI6ZmFsc2V9LCJtZXRhbFVwZ3JhZGUyIjp7ImJvdWdodCI6ZmFsc2V9LCJtZXRhbFVwZ3JhZGUxIjp7ImJvdWdodCI6ZmFsc2V9fSwicGFwZXJVcGdyYWRlcyI6eyJwYXBlclVwZ3JhZGU0Ijp7ImJvdWdodCI6ZmFsc2V9LCJwYXBlclVwZ3JhZGUzIjp7ImJvdWdodCI6ZmFsc2V9LCJwYXBlclVwZ3JhZGUyIjp7ImJvdWdodCI6ZmFsc2V9LCJwYXBlclVwZ3JhZGUxIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImJyZWVkaW5nUHJvZ3Jlc3MiOjAsInNoZWFyaW5nUHJvZ3Jlc3MiOjAsInNwaW5uaW5nUHJvZ3Jlc3MiOjB9LCJvaWwiOnsibWluaW1pemVkIjpmYWxzZSwib2lsIjowLCJ0b3RhbE9pbCI6MCwiZGVwdGgiOjAsImRyaWxsUHJvZ3Jlc3MiOjAsImFjdGl2ZUhlYXZ5IjowLCJidWlsZEhlYXZ5Ijp7ImFtb3VudCI6MH0sImFjdGl2ZUhlYXZ5MiI6MCwiYnVpbGRIZWF2eTIiOnsiYW1vdW50IjowfSwiYWN0aXZlRXh0cmFjdG9yIjowLCJidWlsZEV4dHJhY3RvciI6eyJhbW91bnQiOjB9LCJhY3RpdmVQdW1wIjowLCJidWlsZFB1bXAiOnsiYW1vdW50IjowfSwiYWN0aXZlQnVybmVyIjowLCJidWlsZEJ1cm5lciI6eyJhbW91bnQiOjB9LCJhY3RpdmVTbWVsdGVyIjowLCJidWlsZFNtZWx0ZXIiOnsiYW1vdW50IjowfSwiZGVwdGhNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX0sIjUiOnsiZWFybmVkIjpmYWxzZX0sIjYiOnsiZWFybmVkIjpmYWxzZX0sIjciOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZWREZXB0aE1pbGVzdG9uZXMiOnRydWUsInJvdzFVcGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6ZmFsc2V9LCIxIjp7ImJvdWdodCI6ZmFsc2V9LCIyIjp7ImJvdWdodCI6ZmFsc2V9LCIzIjp7ImJvdWdodCI6ZmFsc2V9LCI0Ijp7ImJvdWdodCI6ZmFsc2V9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX0sIjMiOnsiYm91Z2h0IjpmYWxzZX0sIjQiOnsiYm91Z2h0IjpmYWxzZX19LCJvaWxNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZWRPaWxNaWxlc3RvbmVzIjp0cnVlLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sInBsYXN0aWMiOnsibWluaW1pemVkIjpmYWxzZSwicGxhc3RpYyI6MCwidG90YWxQbGFzdGljIjowLCJidWlsZFJlZmluZXJ5Ijp7ImFtb3VudCI6MH0sImFjdGl2ZVJlZmluZXJ5IjowLCJ1cGdyYWRlcyI6eyJwYXBlclRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9LCJib3hUb29scyI6eyJib3VnaHQiOmZhbHNlfSwiY2xvdGhUb29scyI6eyJib3VnaHQiOmZhbHNlfX0sImVsZlVwZ3JhZGVzIjp7InBhcGVyRWxmIjp7ImJvdWdodCI6ZmFsc2V9LCJib3hFbGYiOnsiYm91Z2h0IjpmYWxzZX0sImNsb3RoRWxmIjp7ImJvdWdodCI6ZmFsc2V9fSwiYnV5YWJsZXMiOnsicGFzc2l2ZVBhcGVyIjp7ImFtb3VudCI6MH0sInBhc3NpdmVCb3hlcyI6eyJhbW91bnQiOjB9LCJjbG90aEdhaW5zIjp7ImFtb3VudCI6MH19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImR5ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZHllcyI6eyJyZWQiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJ5ZWxsb3ciOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJibHVlIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwib3JhbmdlIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwiZ3JlZW4iOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJwdXJwbGUiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInVwZ3JhZGVzIjp7ImJsdWVEeWVVcGciOnsiYm91Z2h0IjpmYWxzZX0sInJlZER5ZVVwZyI6eyJib3VnaHQiOmZhbHNlfSwieWVsbG93RHllVXBnIjp7ImJvdWdodCI6ZmFsc2V9LCJ5ZWxsb3dEeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJyZWREeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJibHVlRHllVXBnMiI6eyJib3VnaHQiOmZhbHNlfSwiY29hbFVwZyI6eyJib3VnaHQiOmZhbHNlfX19LCJtYW5hZ2VtZW50Ijp7Im1pbmltaXplZCI6ZmFsc2UsImVsZlRyYWluaW5nIjp7ImN1dHRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImV4cGFuZGVyc0VsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJoZWF0ZWRDdXR0ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiaGVhdGVkUGxhbnRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJmZXJ0aWxpemVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sInNtYWxsZmlyZUVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJib25maXJlRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImtpbG5FbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwicGFwZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiYm94RWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImNsb3RoRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX19LCJjdXJyZW50U2hvd24iOiJIb2xseSIsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJ0ZWFjaGluZyI6eyJib3VnaHQiOmZhbHNlfSwic2Nob29scyI6eyJhbW91bnQiOjB9LCJjbGFzc3Jvb21zIjp7ImFtb3VudCI6MH0sImNsYXNzcm9vbVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImZvY3VzTXVsdGlwbGllciI6MSwidXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfX0sImZvY3VzVGFyZ2V0cyI6e30sImZvY3VzQ29vbGRvd24iOjAsImZvY3VzVGltZSI6MH19LCJhdXRvUGF1c2UiOnRydWUsInVzaW5nTG9nIjpmYWxzZX0=","./../../saves/Day 02 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0wIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJ3b3Jrc2hvcCJdLCJ0aW1lIjoxNjcwOTU0MzkzOTE2LCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOnRydWUsIm9mZmxpbmVUaW1lIjowLCJ0aW1lUGxheWVkIjozMDE4LjQxNjk5OTk5OTI5Niwia2VlcEdvaW5nIjpmYWxzZSwibW9kSUQiOiJhZHZlbnQtaW5jcmVtZW50YWwiLCJtb2RWZXJzaW9uIjoiMC41IiwibGF5ZXJzIjp7Im1haW4iOnsibWluaW1pemVkIjpmYWxzZSwiZGF5cyI6eyIwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTAiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjExIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTMiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE0Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTYiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE3Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9fSwiZGF5IjozfSwidHJlZXMiOnsibWluaW1pemVkIjpmYWxzZSwibG9ncyI6IjQ1MC45OTU4MjE1ODY1NTA4NSIsInRvdGFsTG9ncyI6IjQxMTE0OS40NTU1MzkwNjUzNSIsInNhcGxpbmdzIjoiODUuMTc4MDAwMDAwMDAwMjIiLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJhbW91bnQiOiI5In0sIjEiOnsiYW1vdW50IjoiMzMifSwiMiI6eyJhbW91bnQiOiI1In19LCJtYW51YWxDdXRQcm9ncmVzcyI6IjAuNSIsIm1hbnVhbFBsYW50UHJvZ3Jlc3MiOiIwLjUiLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sIndvcmtzaG9wIjp7Im1pbmltaXplZCI6ZmFsc2UsImZvdW5kYXRpb25Qcm9ncmVzcyI6IjEwMCIsIm1pbGVzdG9uZXMiOnsibG9nR2Fpbk1pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwiYXV0b0N1dE1pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwiYXV0b1BsYW50TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImxvZ0dhaW5NaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sIm1vcmVQbGFudHNNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImxvZ0dhaW5NaWxlc3RvbmUzIjp7ImVhcm5lZCI6dHJ1ZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMSI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUyIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTMiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lNCI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmU1Ijp7ImVhcm5lZCI6ZmFsc2V9fSwiY29sbGFwc2VNaWxlc3RvbmVzIjp0cnVlfSwiY29hbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJjb2FsIjoiMCIsInRvdGFsQ29hbCI6MCwiYXNoIjowLCJhY3RpdmVGaXJlcyI6MCwiYnVpbGRGaXJlIjp7ImFtb3VudCI6MH0sImFjdGl2ZUJvbmZpcmVzIjowLCJidWlsZEJvbmZpcmUiOnsiYW1vdW50IjowfSwiYWN0aXZlS2lsbnMiOjAsImJ1aWxkS2lsbiI6eyJhbW91bnQiOjB9LCJhY3RpdmVEcmlsbHMiOjAsImJ1aWxkRHJpbGwiOnsiYW1vdW50IjowfSwid2FybWVyQ3V0dGVycyI6eyJib3VnaHQiOmZhbHNlfSwid2FybWVyUGxhbnRlcnMiOnsiYm91Z2h0IjpmYWxzZX0sImJhc2ljRmVydGlsaXplciI6eyJib3VnaHQiOmZhbHNlfSwidW5sb2NrQm9uZmlyZSI6eyJib3VnaHQiOmZhbHNlfSwiZGVkaWNhdGVkQ3V0dGVycyI6eyJib3VnaHQiOmZhbHNlfSwiZGVkaWNhdGVkUGxhbnRlcnMiOnsiYm91Z2h0IjpmYWxzZX0sImJldHRlckZlcnRpbGl6ZXIiOnsiYm91Z2h0IjpmYWxzZX0sInVubG9ja0tpbG4iOnsiYm91Z2h0IjpmYWxzZX0sImVmZmljaWVudFNtZWx0aGVyIjp7ImJvdWdodCI6ZmFsc2V9LCJoZWF0ZWRDdXR0ZXJzIjp7ImFtb3VudCI6MH0sImhlYXRlZFBsYW50ZXJzIjp7ImFtb3VudCI6MH0sIm1vcmVGZXJ0aWxpemVyIjp7ImFtb3VudCI6MH0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZWx2ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZWx2ZXMiOnsiY3V0dGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJwbGFudGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJleHBhbmRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiaGVhdGVkQ3V0dGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJoZWF0ZWRQbGFudGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJmZXJ0aWxpemVyRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sInNtYWxsRmlyZUVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJib25maXJlRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImtpbG5FbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwicGFwZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiYm94RWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImNsb3RoRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sIm1pbmluZ0RyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sImhlYXZ5RHJpbGxFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImFtb3VudE9mVGltZXNEb25lIjowLCJib3VnaHQiOmZhbHNlfSwib2lsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm1ldGFsRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX19LCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX0sIjUiOnsiZWFybmVkIjpmYWxzZX0sIjYiOnsiZWFybmVkIjpmYWxzZX0sIjciOnsiZWFybmVkIjpmYWxzZX0sIjgiOnsiZWFybmVkIjpmYWxzZX0sIjkiOnsiZWFybmVkIjpmYWxzZX0sIjEwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxMSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJwYXBlciI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwYXBlciI6MCwidG90YWxQYXBlciI6MCwiYm9va3MiOnsiY3V0dGVyc0Jvb2siOnsiYW1vdW50IjowfSwicGxhbnRlcnNCb29rIjp7ImFtb3VudCI6MH0sImV4cGFuZGVyc0Jvb2siOnsiYW1vdW50IjowfSwiaGVhdGVkQ3V0dGVyc0Jvb2siOnsiYW1vdW50IjowfSwiaGVhdGVkUGxhbnRlcnNCb29rIjp7ImFtb3VudCI6MH0sImZlcnRpbGl6ZXJCb29rIjp7ImFtb3VudCI6MH0sInNtYWxsRmlyZUJvb2siOnsiYW1vdW50IjowfSwiYm9uZmlyZUJvb2siOnsiYW1vdW50IjowfSwia2lsbkJvb2siOnsiYW1vdW50IjowfSwicGFwZXJCb29rIjp7ImFtb3VudCI6MH0sImJveEJvb2siOnsiYW1vdW50IjowfSwiY2xvdGhCb29rIjp7ImFtb3VudCI6MH0sIm1pbmluZ0RyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJoZWF2eURyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJvaWxCb29rIjp7ImFtb3VudCI6MH0sIm1ldGFsQm9vayI6eyJhbW91bnQiOjB9fSwidXBncmFkZXMiOnsiY2xvdGhVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJkcmlsbGluZ1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sIm9pbFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImJveGVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImJveGVzIjowLCJ0b3RhbEJveGVzIjowLCJ1cGdyYWRlcyI6eyJsb2dzVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiYXNoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiY29hbFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJyb3cyVXBncmFkZXMiOnsib3JlVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwibWV0YWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJwbGFzdGljVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfX0sImJ1eWFibGVzIjp7ImxvZ0JveGVzQnV5YWJsZSI6eyJhbW91bnQiOjB9LCJhc2hCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfSwiY29hbEJveGVzQnV5YWJsZSI6eyJhbW91bnQiOjB9fSwicm93M1VwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHllVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwieHBVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJtZXRhbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvcmUiOiIzMDEiLCJiZXN0T3JlIjoiMzAxIiwib3JlUHJvZ3Jlc3MiOiIwLjg0MTcwMDAwMDAwMDExODQiLCJtZXRhbCI6IjAiLCJiZXN0TWV0YWwiOjAsInRvdGFsTWV0YWwiOjAsInNpbXBsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImRvdWJsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImNydWNpYmxlIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2FsRHJpbGwiOnsiYm91Z2h0IjpmYWxzZX0sImluZHVzdHJpYWxGdXJuYWNlIjp7ImJvdWdodCI6ZmFsc2V9LCJlZmZpY2llbnREcmlsbCI6eyJib3VnaHQiOmZhbHNlfSwib3JlRHJpbGwiOnsiYW1vdW50IjowfSwiaW5kdXN0cmlhbENydWNpYmxlIjp7ImFtb3VudCI6MH0sImF1dG9TbWVsdEVuYWJsZWQiOnRydWUsImhvdHRlckZvcmdlIjp7ImFtb3VudCI6MH0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiY2xvdGgiOnsibWluaW1pemVkIjpmYWxzZSwiY2xvdGgiOjAsInRvdGFsQ2xvdGgiOjAsIndvb2wiOjAsInNoZWVwIjoxMCwiYnVpbGRQZW5zIjp7ImFtb3VudCI6MH0sImJldHRlclNoZWFycyI6eyJhbW91bnQiOjB9LCJmYXN0ZXJTcGlubmluZyI6eyJhbW91bnQiOjB9LCJ0cmVlc1VwZ3JhZGVzIjp7InRyZWVzVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJtZXRhbFVwZ3JhZGVzIjp7Im1ldGFsVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJwYXBlclVwZ3JhZGVzIjp7InBhcGVyVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwiYnJlZWRpbmdQcm9ncmVzcyI6MCwic2hlYXJpbmdQcm9ncmVzcyI6MCwic3Bpbm5pbmdQcm9ncmVzcyI6MH0sIm9pbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvaWwiOjAsInRvdGFsT2lsIjowLCJkZXB0aCI6MCwiZHJpbGxQcm9ncmVzcyI6MCwiYWN0aXZlSGVhdnkiOjAsImJ1aWxkSGVhdnkiOnsiYW1vdW50IjowfSwiYWN0aXZlSGVhdnkyIjowLCJidWlsZEhlYXZ5MiI6eyJhbW91bnQiOjB9LCJhY3RpdmVFeHRyYWN0b3IiOjAsImJ1aWxkRXh0cmFjdG9yIjp7ImFtb3VudCI6MH0sImFjdGl2ZVB1bXAiOjAsImJ1aWxkUHVtcCI6eyJhbW91bnQiOjB9LCJhY3RpdmVCdXJuZXIiOjAsImJ1aWxkQnVybmVyIjp7ImFtb3VudCI6MH0sImFjdGl2ZVNtZWx0ZXIiOjAsImJ1aWxkU21lbHRlciI6eyJhbW91bnQiOjB9LCJkZXB0aE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfSwiNSI6eyJlYXJuZWQiOmZhbHNlfSwiNiI6eyJlYXJuZWQiOmZhbHNlfSwiNyI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZERlcHRoTWlsZXN0b25lcyI6dHJ1ZSwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX0sIjMiOnsiYm91Z2h0IjpmYWxzZX0sIjQiOnsiYm91Z2h0IjpmYWxzZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfSwiMyI6eyJib3VnaHQiOmZhbHNlfSwiNCI6eyJib3VnaHQiOmZhbHNlfX0sIm9pbE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZE9pbE1pbGVzdG9uZXMiOnRydWUsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGxhc3RpYyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwbGFzdGljIjowLCJ0b3RhbFBsYXN0aWMiOjAsImJ1aWxkUmVmaW5lcnkiOnsiYW1vdW50IjowfSwiYWN0aXZlUmVmaW5lcnkiOjAsInVwZ3JhZGVzIjp7InBhcGVyVG9vbHMiOnsiYm91Z2h0IjpmYWxzZX0sImJveFRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9LCJjbG90aFRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9fSwiZWxmVXBncmFkZXMiOnsicGFwZXJFbGYiOnsiYm91Z2h0IjpmYWxzZX0sImJveEVsZiI6eyJib3VnaHQiOmZhbHNlfSwiY2xvdGhFbGYiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJwYXNzaXZlUGFwZXIiOnsiYW1vdW50IjowfSwicGFzc2l2ZUJveGVzIjp7ImFtb3VudCI6MH0sImNsb3RoR2FpbnMiOnsiYW1vdW50IjowfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZHllcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJkeWVzIjp7InJlZCI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInllbGxvdyI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sImJsdWUiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJvcmFuZ2UiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJncmVlbiI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInB1cnBsZSI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwidXBncmFkZXMiOnsiYmx1ZUR5ZVVwZyI6eyJib3VnaHQiOmZhbHNlfSwicmVkRHllVXBnIjp7ImJvdWdodCI6ZmFsc2V9LCJ5ZWxsb3dEeWVVcGciOnsiYm91Z2h0IjpmYWxzZX0sInllbGxvd0R5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sInJlZER5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sImJsdWVEeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2FsVXBnIjp7ImJvdWdodCI6ZmFsc2V9fX0sIm1hbmFnZW1lbnQiOnsibWluaW1pemVkIjpmYWxzZSwiZWxmVHJhaW5pbmciOnsiY3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sInBsYW50ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiZXhwYW5kZXJzRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImhlYXRlZEN1dHRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJoZWF0ZWRQbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImZlcnRpbGl6ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwic21hbGxmaXJlRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImJvbmZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwia2lsbkVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwYXBlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJib3hFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiY2xvdGhFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fX0sImN1cnJlbnRTaG93biI6IkhvbGx5IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInRlYWNoaW5nIjp7ImJvdWdodCI6ZmFsc2V9LCJzY2hvb2xzIjp7ImFtb3VudCI6MH0sImNsYXNzcm9vbXMiOnsiYW1vdW50IjowfSwiY2xhc3Nyb29tVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZm9jdXNNdWx0aXBsaWVyIjoxLCJ1cGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6ZmFsc2V9LCIxIjp7ImJvdWdodCI6ZmFsc2V9LCIyIjp7ImJvdWdodCI6ZmFsc2V9fSwiZm9jdXNUYXJnZXRzIjp7fSwiZm9jdXNDb29sZG93biI6MCwiZm9jdXNUaW1lIjowfX0sImF1dG9QYXVzZSI6dHJ1ZSwidXNpbmdMb2ciOmZhbHNlfQ==","./../../saves/Day 03 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0wIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJjb2FsIl0sInRpbWUiOjE2NzA5NTYxMDE4OTYsImF1dG9zYXZlIjp0cnVlLCJvZmZsaW5lUHJvZCI6dHJ1ZSwib2ZmbGluZVRpbWUiOjAsInRpbWVQbGF5ZWQiOjQ3MDQuMDM4OTk5OTk3OTE0LCJrZWVwR29pbmciOmZhbHNlLCJtb2RJRCI6ImFkdmVudC1pbmNyZW1lbnRhbCIsIm1vZFZlcnNpb24iOiIwLjUiLCJsYXllcnMiOnsibWFpbiI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJkYXlzIjp7IjAiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjMiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjQiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjYiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6NH0sInRyZWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImxvZ3MiOiIxODk1MTg2OS44MzY3NTI3NzYiLCJ0b3RhbExvZ3MiOiIyNDQ2NTc5NjY0LjQ0NTMiLCJzYXBsaW5ncyI6IjAiLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJhbW91bnQiOiIyNjYifSwiMSI6eyJhbW91bnQiOiI1NTEifSwiMiI6eyJhbW91bnQiOiIxNDMifX0sIm1hbnVhbEN1dFByb2dyZXNzIjoiMC41IiwibWFudWFsUGxhbnRQcm9ncmVzcyI6IjAuNSIsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwid29ya3Nob3AiOnsibWluaW1pemVkIjpmYWxzZSwiZm91bmRhdGlvblByb2dyZXNzIjoiMTAwIiwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUxIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTIiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMyI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmU0Ijp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTUiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWV9LCJjb2FsIjp7Im1pbmltaXplZCI6ZmFsc2UsImNvYWwiOiIxOTExMTA2LjcwNDYyNjIwNzciLCJ0b3RhbENvYWwiOiIxMDAwMTU1Ny41MjA3IiwiYXNoIjoiMzMzMTAyNi44MTY1NjIxODUiLCJhY3RpdmVGaXJlcyI6IjAiLCJidWlsZEZpcmUiOnsiYW1vdW50IjoiMCJ9LCJhY3RpdmVCb25maXJlcyI6MCwiYnVpbGRCb25maXJlIjp7ImFtb3VudCI6IjEifSwiYWN0aXZlS2lsbnMiOiIxMSIsImJ1aWxkS2lsbiI6eyJhbW91bnQiOiIxMSJ9LCJhY3RpdmVEcmlsbHMiOjAsImJ1aWxkRHJpbGwiOnsiYW1vdW50IjowfSwid2FybWVyQ3V0dGVycyI6eyJib3VnaHQiOnRydWV9LCJ3YXJtZXJQbGFudGVycyI6eyJib3VnaHQiOnRydWV9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrQm9uZmlyZSI6eyJib3VnaHQiOnRydWV9LCJkZWRpY2F0ZWRDdXR0ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImRlZGljYXRlZFBsYW50ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImJldHRlckZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrS2lsbiI6eyJib3VnaHQiOnRydWV9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJib3VnaHQiOmZhbHNlfSwiaGVhdGVkQ3V0dGVycyI6eyJhbW91bnQiOiI1NiJ9LCJoZWF0ZWRQbGFudGVycyI6eyJhbW91bnQiOiI1NiJ9LCJtb3JlRmVydGlsaXplciI6eyJhbW91bnQiOiIxMCJ9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImVsdmVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImVsdmVzIjp7ImN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwicGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiZXhwYW5kZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImhlYXRlZEN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiaGVhdGVkUGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiZmVydGlsaXplckVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJzbWFsbEZpcmVFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiYm9uZmlyZUVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJraWxuRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sInBhcGVyRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImJveEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJjbG90aEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJtaW5pbmdEcmlsbEVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9LCJoZWF2eURyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm9pbEVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9LCJtZXRhbEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9fSwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9LCI1Ijp7ImVhcm5lZCI6ZmFsc2V9LCI2Ijp7ImVhcm5lZCI6ZmFsc2V9LCI3Ijp7ImVhcm5lZCI6ZmFsc2V9LCI4Ijp7ImVhcm5lZCI6ZmFsc2V9LCI5Ijp7ImVhcm5lZCI6ZmFsc2V9LCIxMCI6eyJlYXJuZWQiOmZhbHNlfSwiMTEiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWUsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGFwZXIiOnsibWluaW1pemVkIjpmYWxzZSwicGFwZXIiOjAsInRvdGFsUGFwZXIiOjAsImJvb2tzIjp7ImN1dHRlcnNCb29rIjp7ImFtb3VudCI6MH0sInBsYW50ZXJzQm9vayI6eyJhbW91bnQiOjB9LCJleHBhbmRlcnNCb29rIjp7ImFtb3VudCI6MH0sImhlYXRlZEN1dHRlcnNCb29rIjp7ImFtb3VudCI6MH0sImhlYXRlZFBsYW50ZXJzQm9vayI6eyJhbW91bnQiOjB9LCJmZXJ0aWxpemVyQm9vayI6eyJhbW91bnQiOjB9LCJzbWFsbEZpcmVCb29rIjp7ImFtb3VudCI6MH0sImJvbmZpcmVCb29rIjp7ImFtb3VudCI6MH0sImtpbG5Cb29rIjp7ImFtb3VudCI6MH0sInBhcGVyQm9vayI6eyJhbW91bnQiOjB9LCJib3hCb29rIjp7ImFtb3VudCI6MH0sImNsb3RoQm9vayI6eyJhbW91bnQiOjB9LCJtaW5pbmdEcmlsbEJvb2siOnsiYW1vdW50IjowfSwiaGVhdnlEcmlsbEJvb2siOnsiYW1vdW50IjowfSwib2lsQm9vayI6eyJhbW91bnQiOjB9LCJtZXRhbEJvb2siOnsiYW1vdW50IjowfX0sInVwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHJpbGxpbmdVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJvaWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJib3hlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJib3hlcyI6MCwidG90YWxCb3hlcyI6MCwidXBncmFkZXMiOnsibG9nc1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImFzaFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImNvYWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwicm93MlVwZ3JhZGVzIjp7Im9yZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwicGxhc3RpY1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJsb2dCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfSwiYXNoQm94ZXNCdXlhYmxlIjp7ImFtb3VudCI6MH0sImNvYWxCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfX0sInJvdzNVcGdyYWRlcyI6eyJjbG90aFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImR5ZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sInhwVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwibWV0YWwiOnsibWluaW1pemVkIjpmYWxzZSwib3JlIjoiNDcwIiwiYmVzdE9yZSI6IjQ3MCIsIm9yZVByb2dyZXNzIjoiMC40MDM5MDAwMDAwMDAxOTUzIiwibWV0YWwiOiIwIiwiYmVzdE1ldGFsIjowLCJ0b3RhbE1ldGFsIjowLCJzaW1wbGVQaWNrYXhlIjp7ImJvdWdodCI6ZmFsc2V9LCJkb3VibGVQaWNrYXhlIjp7ImJvdWdodCI6ZmFsc2V9LCJjcnVjaWJsZSI6eyJib3VnaHQiOmZhbHNlfSwiY29hbERyaWxsIjp7ImJvdWdodCI6ZmFsc2V9LCJpbmR1c3RyaWFsRnVybmFjZSI6eyJib3VnaHQiOmZhbHNlfSwiZWZmaWNpZW50RHJpbGwiOnsiYm91Z2h0IjpmYWxzZX0sIm9yZURyaWxsIjp7ImFtb3VudCI6MH0sImluZHVzdHJpYWxDcnVjaWJsZSI6eyJhbW91bnQiOjB9LCJhdXRvU21lbHRFbmFibGVkIjp0cnVlLCJob3R0ZXJGb3JnZSI6eyJhbW91bnQiOjB9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImNsb3RoIjp7Im1pbmltaXplZCI6ZmFsc2UsImNsb3RoIjowLCJ0b3RhbENsb3RoIjowLCJ3b29sIjowLCJzaGVlcCI6MTAsImJ1aWxkUGVucyI6eyJhbW91bnQiOjB9LCJiZXR0ZXJTaGVhcnMiOnsiYW1vdW50IjowfSwiZmFzdGVyU3Bpbm5pbmciOnsiYW1vdW50IjowfSwidHJlZXNVcGdyYWRlcyI6eyJ0cmVlc1VwZ3JhZGU0Ijp7ImJvdWdodCI6ZmFsc2V9LCJ0cmVlc1VwZ3JhZGUzIjp7ImJvdWdodCI6ZmFsc2V9LCJ0cmVlc1VwZ3JhZGUyIjp7ImJvdWdodCI6ZmFsc2V9LCJ0cmVlc1VwZ3JhZGUxIjp7ImJvdWdodCI6ZmFsc2V9fSwibWV0YWxVcGdyYWRlcyI6eyJtZXRhbFVwZ3JhZGU0Ijp7ImJvdWdodCI6ZmFsc2V9LCJtZXRhbFVwZ3JhZGUzIjp7ImJvdWdodCI6ZmFsc2V9LCJtZXRhbFVwZ3JhZGUyIjp7ImJvdWdodCI6ZmFsc2V9LCJtZXRhbFVwZ3JhZGUxIjp7ImJvdWdodCI6ZmFsc2V9fSwicGFwZXJVcGdyYWRlcyI6eyJwYXBlclVwZ3JhZGU0Ijp7ImJvdWdodCI6ZmFsc2V9LCJwYXBlclVwZ3JhZGUzIjp7ImJvdWdodCI6ZmFsc2V9LCJwYXBlclVwZ3JhZGUyIjp7ImJvdWdodCI6ZmFsc2V9LCJwYXBlclVwZ3JhZGUxIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImJyZWVkaW5nUHJvZ3Jlc3MiOjAsInNoZWFyaW5nUHJvZ3Jlc3MiOjAsInNwaW5uaW5nUHJvZ3Jlc3MiOjB9LCJvaWwiOnsibWluaW1pemVkIjpmYWxzZSwib2lsIjowLCJ0b3RhbE9pbCI6MCwiZGVwdGgiOjAsImRyaWxsUHJvZ3Jlc3MiOjAsImFjdGl2ZUhlYXZ5IjowLCJidWlsZEhlYXZ5Ijp7ImFtb3VudCI6MH0sImFjdGl2ZUhlYXZ5MiI6MCwiYnVpbGRIZWF2eTIiOnsiYW1vdW50IjowfSwiYWN0aXZlRXh0cmFjdG9yIjowLCJidWlsZEV4dHJhY3RvciI6eyJhbW91bnQiOjB9LCJhY3RpdmVQdW1wIjowLCJidWlsZFB1bXAiOnsiYW1vdW50IjowfSwiYWN0aXZlQnVybmVyIjowLCJidWlsZEJ1cm5lciI6eyJhbW91bnQiOjB9LCJhY3RpdmVTbWVsdGVyIjowLCJidWlsZFNtZWx0ZXIiOnsiYW1vdW50IjowfSwiZGVwdGhNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX0sIjUiOnsiZWFybmVkIjpmYWxzZX0sIjYiOnsiZWFybmVkIjpmYWxzZX0sIjciOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZWREZXB0aE1pbGVzdG9uZXMiOnRydWUsInJvdzFVcGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6ZmFsc2V9LCIxIjp7ImJvdWdodCI6ZmFsc2V9LCIyIjp7ImJvdWdodCI6ZmFsc2V9LCIzIjp7ImJvdWdodCI6ZmFsc2V9LCI0Ijp7ImJvdWdodCI6ZmFsc2V9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX0sIjMiOnsiYm91Z2h0IjpmYWxzZX0sIjQiOnsiYm91Z2h0IjpmYWxzZX19LCJvaWxNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZWRPaWxNaWxlc3RvbmVzIjp0cnVlLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sInBsYXN0aWMiOnsibWluaW1pemVkIjpmYWxzZSwicGxhc3RpYyI6MCwidG90YWxQbGFzdGljIjowLCJidWlsZFJlZmluZXJ5Ijp7ImFtb3VudCI6MH0sImFjdGl2ZVJlZmluZXJ5IjowLCJ1cGdyYWRlcyI6eyJwYXBlclRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9LCJib3hUb29scyI6eyJib3VnaHQiOmZhbHNlfSwiY2xvdGhUb29scyI6eyJib3VnaHQiOmZhbHNlfX0sImVsZlVwZ3JhZGVzIjp7InBhcGVyRWxmIjp7ImJvdWdodCI6ZmFsc2V9LCJib3hFbGYiOnsiYm91Z2h0IjpmYWxzZX0sImNsb3RoRWxmIjp7ImJvdWdodCI6ZmFsc2V9fSwiYnV5YWJsZXMiOnsicGFzc2l2ZVBhcGVyIjp7ImFtb3VudCI6MH0sInBhc3NpdmVCb3hlcyI6eyJhbW91bnQiOjB9LCJjbG90aEdhaW5zIjp7ImFtb3VudCI6MH19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImR5ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZHllcyI6eyJyZWQiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJ5ZWxsb3ciOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJibHVlIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwib3JhbmdlIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwiZ3JlZW4iOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJwdXJwbGUiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInVwZ3JhZGVzIjp7ImJsdWVEeWVVcGciOnsiYm91Z2h0IjpmYWxzZX0sInJlZER5ZVVwZyI6eyJib3VnaHQiOmZhbHNlfSwieWVsbG93RHllVXBnIjp7ImJvdWdodCI6ZmFsc2V9LCJ5ZWxsb3dEeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJyZWREeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJibHVlRHllVXBnMiI6eyJib3VnaHQiOmZhbHNlfSwiY29hbFVwZyI6eyJib3VnaHQiOmZhbHNlfX19LCJtYW5hZ2VtZW50Ijp7Im1pbmltaXplZCI6ZmFsc2UsImVsZlRyYWluaW5nIjp7ImN1dHRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImV4cGFuZGVyc0VsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJoZWF0ZWRDdXR0ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiaGVhdGVkUGxhbnRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJmZXJ0aWxpemVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sInNtYWxsZmlyZUVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJib25maXJlRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImtpbG5FbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwicGFwZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiYm94RWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImNsb3RoRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX19LCJjdXJyZW50U2hvd24iOiJIb2xseSIsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJ0ZWFjaGluZyI6eyJib3VnaHQiOmZhbHNlfSwic2Nob29scyI6eyJhbW91bnQiOjB9LCJjbGFzc3Jvb21zIjp7ImFtb3VudCI6MH0sImNsYXNzcm9vbVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImZvY3VzTXVsdGlwbGllciI6MSwidXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfX0sImZvY3VzVGFyZ2V0cyI6e30sImZvY3VzQ29vbGRvd24iOjAsImZvY3VzVGltZSI6MH19LCJhdXRvUGF1c2UiOnRydWUsInVzaW5nTG9nIjpmYWxzZX0=","./../../saves/Day 04 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0wIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJlbHZlcyJdLCJ0aW1lIjoxNjcwOTYwMjQ5NDE3LCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOnRydWUsIm9mZmxpbmVUaW1lIjowLCJ0aW1lUGxheWVkIjo4ODEzLjY1Njk5OTk5NDAzNywia2VlcEdvaW5nIjpmYWxzZSwibW9kSUQiOiJhZHZlbnQtaW5jcmVtZW50YWwiLCJtb2RWZXJzaW9uIjoiMC41IiwibGF5ZXJzIjp7Im1haW4iOnsibWluaW1pemVkIjpmYWxzZSwiZGF5cyI6eyIwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIzIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjQiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjYiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6NX0sInRyZWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImxvZ3MiOiI5Njc4MjM0MjEwOC4wNTIwMyIsInRvdGFsTG9ncyI6IjExNDA2MzMwMzU2NC45NDA5MyIsInNhcGxpbmdzIjoiNjQ5NjEuNTIwMDAwMDAwMDA0Iiwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsiYW1vdW50IjoiMjE2NiJ9LCIxIjp7ImFtb3VudCI6IjIxNjYifSwiMiI6eyJhbW91bnQiOiI0Mjc3In19LCJtYW51YWxDdXRQcm9ncmVzcyI6IjAuMDA3ODEyNTAwMDAwMDAwMDAyIiwibWFudWFsUGxhbnRQcm9ncmVzcyI6IjAuMDA3ODEyNTAwMDAwMDAwMDAyIiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJ3b3Jrc2hvcCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJmb3VuZGF0aW9uUHJvZ3Jlc3MiOiIxMDAiLCJtaWxlc3RvbmVzIjp7ImxvZ0dhaW5NaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwiYXV0b0N1dE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwiYXV0b1BsYW50TWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJsb2dHYWluTWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJtb3JlUGxhbnRzTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJsb2dHYWluTWlsZXN0b25lMyI6eyJlYXJuZWQiOnRydWV9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTEiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMiI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUzIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTQiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lNSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX0sImNvYWwiOnsibWluaW1pemVkIjpmYWxzZSwiY29hbCI6IjEwMDA1MTAzMTQuNjA5MzI1MiIsInRvdGFsQ29hbCI6IjEwMDA1MTA4MjQuNjA5MzI1MiIsImFzaCI6IjM4MzQ5ODgxLjg1IiwiYWN0aXZlRmlyZXMiOiIwIiwiYnVpbGRGaXJlIjp7ImFtb3VudCI6IjAifSwiYWN0aXZlQm9uZmlyZXMiOiIxIiwiYnVpbGRCb25maXJlIjp7ImFtb3VudCI6IjEifSwiYWN0aXZlS2lsbnMiOiI1NCIsImJ1aWxkS2lsbiI6eyJhbW91bnQiOiI1NCJ9LCJhY3RpdmVEcmlsbHMiOjAsImJ1aWxkRHJpbGwiOnsiYW1vdW50IjowfSwid2FybWVyQ3V0dGVycyI6eyJib3VnaHQiOnRydWV9LCJ3YXJtZXJQbGFudGVycyI6eyJib3VnaHQiOnRydWV9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrQm9uZmlyZSI6eyJib3VnaHQiOnRydWV9LCJkZWRpY2F0ZWRDdXR0ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImRlZGljYXRlZFBsYW50ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImJldHRlckZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrS2lsbiI6eyJib3VnaHQiOnRydWV9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJib3VnaHQiOmZhbHNlfSwiaGVhdGVkQ3V0dGVycyI6eyJhbW91bnQiOiIxNjgifSwiaGVhdGVkUGxhbnRlcnMiOnsiYW1vdW50IjoiMTY4In0sIm1vcmVGZXJ0aWxpemVyIjp7ImFtb3VudCI6IjY1In0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZWx2ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZWx2ZXMiOnsiY3V0dGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDUiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjoyNTUzOS4wMTk5OTk5OTk3OTd9LCJwbGFudGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDUiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjo0MzI0NS42OTk5OTk5OTk3OH0sImV4cGFuZGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDUiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjoxMzU3My4wODk5OTk5OTk5fSwiaGVhdGVkQ3V0dGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDUiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjo2NjM2LjEyMDAwMDAwMDAwOH0sImhlYXRlZFBsYW50ZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wNSIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjkxODQuMjQwMDAwMDAwMDI5fSwiZmVydGlsaXplckVsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDUiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjo0NDEyLjAyMDAwMDAwMDAwMn0sInNtYWxsRmlyZUVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJib25maXJlRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImtpbG5FbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwicGFwZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiYm94RWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImNsb3RoRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sIm1pbmluZ0RyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sImhlYXZ5RHJpbGxFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImFtb3VudE9mVGltZXNEb25lIjowLCJib3VnaHQiOmZhbHNlfSwib2lsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm1ldGFsRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX19LCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9LCI1Ijp7ImVhcm5lZCI6dHJ1ZX0sIjYiOnsiZWFybmVkIjpmYWxzZX0sIjciOnsiZWFybmVkIjpmYWxzZX0sIjgiOnsiZWFybmVkIjpmYWxzZX0sIjkiOnsiZWFybmVkIjpmYWxzZX0sIjEwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxMSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJwYXBlciI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwYXBlciI6MCwidG90YWxQYXBlciI6MCwiYm9va3MiOnsiY3V0dGVyc0Jvb2siOnsiYW1vdW50IjowfSwicGxhbnRlcnNCb29rIjp7ImFtb3VudCI6MH0sImV4cGFuZGVyc0Jvb2siOnsiYW1vdW50IjowfSwiaGVhdGVkQ3V0dGVyc0Jvb2siOnsiYW1vdW50IjowfSwiaGVhdGVkUGxhbnRlcnNCb29rIjp7ImFtb3VudCI6MH0sImZlcnRpbGl6ZXJCb29rIjp7ImFtb3VudCI6MH0sInNtYWxsRmlyZUJvb2siOnsiYW1vdW50IjowfSwiYm9uZmlyZUJvb2siOnsiYW1vdW50IjowfSwia2lsbkJvb2siOnsiYW1vdW50IjowfSwicGFwZXJCb29rIjp7ImFtb3VudCI6MH0sImJveEJvb2siOnsiYW1vdW50IjowfSwiY2xvdGhCb29rIjp7ImFtb3VudCI6MH0sIm1pbmluZ0RyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJoZWF2eURyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJvaWxCb29rIjp7ImFtb3VudCI6MH0sIm1ldGFsQm9vayI6eyJhbW91bnQiOjB9fSwidXBncmFkZXMiOnsiY2xvdGhVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJkcmlsbGluZ1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sIm9pbFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImJveGVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImJveGVzIjowLCJ0b3RhbEJveGVzIjowLCJ1cGdyYWRlcyI6eyJsb2dzVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiYXNoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiY29hbFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJyb3cyVXBncmFkZXMiOnsib3JlVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwibWV0YWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJwbGFzdGljVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfX0sImJ1eWFibGVzIjp7ImxvZ0JveGVzQnV5YWJsZSI6eyJhbW91bnQiOjB9LCJhc2hCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfSwiY29hbEJveGVzQnV5YWJsZSI6eyJhbW91bnQiOjB9fSwicm93M1VwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHllVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwieHBVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJtZXRhbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvcmUiOiI4ODEiLCJiZXN0T3JlIjoiODgxIiwib3JlUHJvZ3Jlc3MiOiIwLjM2NTcwMDAwMDAwMDM4OTYiLCJtZXRhbCI6IjAiLCJiZXN0TWV0YWwiOjAsInRvdGFsTWV0YWwiOjAsInNpbXBsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImRvdWJsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImNydWNpYmxlIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2FsRHJpbGwiOnsiYm91Z2h0IjpmYWxzZX0sImluZHVzdHJpYWxGdXJuYWNlIjp7ImJvdWdodCI6ZmFsc2V9LCJlZmZpY2llbnREcmlsbCI6eyJib3VnaHQiOmZhbHNlfSwib3JlRHJpbGwiOnsiYW1vdW50IjowfSwiaW5kdXN0cmlhbENydWNpYmxlIjp7ImFtb3VudCI6MH0sImF1dG9TbWVsdEVuYWJsZWQiOnRydWUsImhvdHRlckZvcmdlIjp7ImFtb3VudCI6MH0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiY2xvdGgiOnsibWluaW1pemVkIjpmYWxzZSwiY2xvdGgiOjAsInRvdGFsQ2xvdGgiOjAsIndvb2wiOjAsInNoZWVwIjoxMCwiYnVpbGRQZW5zIjp7ImFtb3VudCI6MH0sImJldHRlclNoZWFycyI6eyJhbW91bnQiOjB9LCJmYXN0ZXJTcGlubmluZyI6eyJhbW91bnQiOjB9LCJ0cmVlc1VwZ3JhZGVzIjp7InRyZWVzVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJtZXRhbFVwZ3JhZGVzIjp7Im1ldGFsVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJwYXBlclVwZ3JhZGVzIjp7InBhcGVyVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwiYnJlZWRpbmdQcm9ncmVzcyI6MCwic2hlYXJpbmdQcm9ncmVzcyI6MCwic3Bpbm5pbmdQcm9ncmVzcyI6MH0sIm9pbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvaWwiOjAsInRvdGFsT2lsIjowLCJkZXB0aCI6MCwiZHJpbGxQcm9ncmVzcyI6MCwiYWN0aXZlSGVhdnkiOjAsImJ1aWxkSGVhdnkiOnsiYW1vdW50IjowfSwiYWN0aXZlSGVhdnkyIjowLCJidWlsZEhlYXZ5MiI6eyJhbW91bnQiOjB9LCJhY3RpdmVFeHRyYWN0b3IiOjAsImJ1aWxkRXh0cmFjdG9yIjp7ImFtb3VudCI6MH0sImFjdGl2ZVB1bXAiOjAsImJ1aWxkUHVtcCI6eyJhbW91bnQiOjB9LCJhY3RpdmVCdXJuZXIiOjAsImJ1aWxkQnVybmVyIjp7ImFtb3VudCI6MH0sImFjdGl2ZVNtZWx0ZXIiOjAsImJ1aWxkU21lbHRlciI6eyJhbW91bnQiOjB9LCJkZXB0aE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfSwiNSI6eyJlYXJuZWQiOmZhbHNlfSwiNiI6eyJlYXJuZWQiOmZhbHNlfSwiNyI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZERlcHRoTWlsZXN0b25lcyI6dHJ1ZSwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX0sIjMiOnsiYm91Z2h0IjpmYWxzZX0sIjQiOnsiYm91Z2h0IjpmYWxzZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfSwiMyI6eyJib3VnaHQiOmZhbHNlfSwiNCI6eyJib3VnaHQiOmZhbHNlfX0sIm9pbE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZE9pbE1pbGVzdG9uZXMiOnRydWUsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGxhc3RpYyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwbGFzdGljIjowLCJ0b3RhbFBsYXN0aWMiOjAsImJ1aWxkUmVmaW5lcnkiOnsiYW1vdW50IjowfSwiYWN0aXZlUmVmaW5lcnkiOjAsInVwZ3JhZGVzIjp7InBhcGVyVG9vbHMiOnsiYm91Z2h0IjpmYWxzZX0sImJveFRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9LCJjbG90aFRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9fSwiZWxmVXBncmFkZXMiOnsicGFwZXJFbGYiOnsiYm91Z2h0IjpmYWxzZX0sImJveEVsZiI6eyJib3VnaHQiOmZhbHNlfSwiY2xvdGhFbGYiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJwYXNzaXZlUGFwZXIiOnsiYW1vdW50IjowfSwicGFzc2l2ZUJveGVzIjp7ImFtb3VudCI6MH0sImNsb3RoR2FpbnMiOnsiYW1vdW50IjowfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZHllcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJkeWVzIjp7InJlZCI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInllbGxvdyI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sImJsdWUiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJvcmFuZ2UiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJncmVlbiI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInB1cnBsZSI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwidXBncmFkZXMiOnsiYmx1ZUR5ZVVwZyI6eyJib3VnaHQiOmZhbHNlfSwicmVkRHllVXBnIjp7ImJvdWdodCI6ZmFsc2V9LCJ5ZWxsb3dEeWVVcGciOnsiYm91Z2h0IjpmYWxzZX0sInllbGxvd0R5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sInJlZER5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sImJsdWVEeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2FsVXBnIjp7ImJvdWdodCI6ZmFsc2V9fX0sIm1hbmFnZW1lbnQiOnsibWluaW1pemVkIjpmYWxzZSwiZWxmVHJhaW5pbmciOnsiY3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sInBsYW50ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiZXhwYW5kZXJzRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImhlYXRlZEN1dHRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJoZWF0ZWRQbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImZlcnRpbGl6ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwic21hbGxmaXJlRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImJvbmZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwia2lsbkVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwYXBlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJib3hFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiY2xvdGhFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fX0sImN1cnJlbnRTaG93biI6IkhvbGx5IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInRlYWNoaW5nIjp7ImJvdWdodCI6ZmFsc2V9LCJzY2hvb2xzIjp7ImFtb3VudCI6MH0sImNsYXNzcm9vbXMiOnsiYW1vdW50IjowfSwiY2xhc3Nyb29tVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZm9jdXNNdWx0aXBsaWVyIjoxLCJ1cGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6ZmFsc2V9LCIxIjp7ImJvdWdodCI6ZmFsc2V9LCIyIjp7ImJvdWdodCI6ZmFsc2V9fSwiZm9jdXNUYXJnZXRzIjp7fSwiZm9jdXNDb29sZG93biI6MCwiZm9jdXNUaW1lIjowfX0sImF1dG9QYXVzZSI6dHJ1ZSwidXNpbmdMb2ciOmZhbHNlfQ==","./../../saves/Day 05 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0wIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJwYXBlciJdLCJ0aW1lIjoxNjcwOTYxODAxMjA2LCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOnRydWUsIm9mZmxpbmVUaW1lIjowLCJ0aW1lUGxheWVkIjoxMDMzMC4zOTc5OTk5OTU1ODYsImtlZXBHb2luZyI6ZmFsc2UsIm1vZElEIjoiYWR2ZW50LWluY3JlbWVudGFsIiwibW9kVmVyc2lvbiI6IjAuNSIsImxheWVycyI6eyJtYWluIjp7Im1pbmltaXplZCI6ZmFsc2UsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjYiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6Nn0sInRyZWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImxvZ3MiOiIxMzgyMzQwMzk2Mzc2LjQ2OTciLCJ0b3RhbExvZ3MiOiI3MjI0MzgwMzgxNjc3LjgwMyIsInNhcGxpbmdzIjoiMTA2MjE2LjYwNiIsInJvdzFVcGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6dHJ1ZX0sIjEiOnsiYm91Z2h0Ijp0cnVlfSwiMiI6eyJib3VnaHQiOnRydWV9LCIzIjp7ImJvdWdodCI6dHJ1ZX0sIjQiOnsiYm91Z2h0Ijp0cnVlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6dHJ1ZX0sIjEiOnsiYm91Z2h0Ijp0cnVlfSwiMiI6eyJib3VnaHQiOnRydWV9LCIzIjp7ImJvdWdodCI6dHJ1ZX0sIjQiOnsiYm91Z2h0Ijp0cnVlfX0sInJvdzFCdXlhYmxlcyI6eyIwIjp7ImFtb3VudCI6IjMyMjAifSwiMSI6eyJhbW91bnQiOiIzMTk5In0sIjIiOnsiYW1vdW50IjoiNzI4OCJ9fSwibWFudWFsQ3V0UHJvZ3Jlc3MiOiIwLjAwNzgxMjUwMDAwMDAwMDAwMiIsIm1hbnVhbFBsYW50UHJvZ3Jlc3MiOiIwLjAwNzgxMjUwMDAwMDAwMDAwMiIsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwid29ya3Nob3AiOnsibWluaW1pemVkIjpmYWxzZSwiZm91bmRhdGlvblByb2dyZXNzIjoiMTAwIiwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUxIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTIiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMyI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmU0Ijp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTUiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWV9LCJjb2FsIjp7Im1pbmltaXplZCI6ZmFsc2UsImNvYWwiOiI0ODYzOTE1OTY3NS42Mzc3IiwidG90YWxDb2FsIjoiNDg2MzkxNjAxODUuNjM3NyIsImFzaCI6Ii0yMDk5NzcuMjUwMDAwMTc4OCIsImFjdGl2ZUZpcmVzIjoiMCIsImJ1aWxkRmlyZSI6eyJhbW91bnQiOiIwIn0sImFjdGl2ZUJvbmZpcmVzIjoiNjQiLCJidWlsZEJvbmZpcmUiOnsiYW1vdW50IjoiNjQifSwiYWN0aXZlS2lsbnMiOiIxMDgiLCJidWlsZEtpbG4iOnsiYW1vdW50IjoiMTA4In0sImFjdGl2ZURyaWxscyI6MCwiYnVpbGREcmlsbCI6eyJhbW91bnQiOjB9LCJ3YXJtZXJDdXR0ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sIndhcm1lclBsYW50ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImJhc2ljRmVydGlsaXplciI6eyJib3VnaHQiOnRydWV9LCJ1bmxvY2tCb25maXJlIjp7ImJvdWdodCI6dHJ1ZX0sImRlZGljYXRlZEN1dHRlcnMiOnsiYm91Z2h0Ijp0cnVlfSwiZGVkaWNhdGVkUGxhbnRlcnMiOnsiYm91Z2h0Ijp0cnVlfSwiYmV0dGVyRmVydGlsaXplciI6eyJib3VnaHQiOnRydWV9LCJ1bmxvY2tLaWxuIjp7ImJvdWdodCI6dHJ1ZX0sImVmZmljaWVudFNtZWx0aGVyIjp7ImJvdWdodCI6ZmFsc2V9LCJoZWF0ZWRDdXR0ZXJzIjp7ImFtb3VudCI6IjI1OCJ9LCJoZWF0ZWRQbGFudGVycyI6eyJhbW91bnQiOiIyNTgifSwibW9yZUZlcnRpbGl6ZXIiOnsiYW1vdW50IjoiMTI5In0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZWx2ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZWx2ZXMiOnsiY3V0dGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDM1NzE0Mjg1NzE0Mjg1NzEiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjo2NTAwMy41OTU5OTk5OTQwNn0sInBsYW50ZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMzg0NjE1Mzg0NjE1Mzg0NjQiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjo4MTUzOS45NzQwMDAwMDAyNX0sImV4cGFuZGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDM4NDYxNTM4NDYxNTM4NDY0IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6NTE1MjAuODY5OTk5OTk2M30sImhlYXRlZEN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzODQ2MTUzODQ2MTUzODQ2NCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjQ0NTgwLjkwMTk5OTk5ODE0fSwiaGVhdGVkUGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzODQ2MTUzODQ2MTUzODQ2NCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjQ2Nzk0LjUxNTk5OTk5NTk5fSwiZmVydGlsaXplckVsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDM4NDYxNTM4NDYxNTM4NDY0IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6NDIwMTguOTk1OTk5OTk4MTl9LCJzbWFsbEZpcmVFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiYm9uZmlyZUVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJraWxuRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sInBhcGVyRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImJveEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJjbG90aEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYm91Z2h0IjpmYWxzZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjB9LCJtaW5pbmdEcmlsbEVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9LCJoZWF2eURyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm9pbEVsZiI6eyJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9LCJtZXRhbEVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9fSwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfSwiNSI6eyJlYXJuZWQiOnRydWV9LCI2Ijp7ImVhcm5lZCI6ZmFsc2V9LCI3Ijp7ImVhcm5lZCI6ZmFsc2V9LCI4Ijp7ImVhcm5lZCI6ZmFsc2V9LCI5Ijp7ImVhcm5lZCI6ZmFsc2V9LCIxMCI6eyJlYXJuZWQiOmZhbHNlfSwiMTEiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWUsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGFwZXIiOnsibWluaW1pemVkIjpmYWxzZSwicGFwZXIiOiIxODkwLjk5OTk5OTk5OTk5ODkiLCJ0b3RhbFBhcGVyIjoiNTAwMSIsImJvb2tzIjp7ImN1dHRlcnNCb29rIjp7ImFtb3VudCI6IjQifSwicGxhbnRlcnNCb29rIjp7ImFtb3VudCI6IjMifSwiZXhwYW5kZXJzQm9vayI6eyJhbW91bnQiOiIzIn0sImhlYXRlZEN1dHRlcnNCb29rIjp7ImFtb3VudCI6IjMifSwiaGVhdGVkUGxhbnRlcnNCb29rIjp7ImFtb3VudCI6IjMifSwiZmVydGlsaXplckJvb2siOnsiYW1vdW50IjoiMyJ9LCJzbWFsbEZpcmVCb29rIjp7ImFtb3VudCI6MH0sImJvbmZpcmVCb29rIjp7ImFtb3VudCI6MH0sImtpbG5Cb29rIjp7ImFtb3VudCI6MH0sInBhcGVyQm9vayI6eyJhbW91bnQiOjB9LCJib3hCb29rIjp7ImFtb3VudCI6MH0sImNsb3RoQm9vayI6eyJhbW91bnQiOjB9LCJtaW5pbmdEcmlsbEJvb2siOnsiYW1vdW50IjowfSwiaGVhdnlEcmlsbEJvb2siOnsiYW1vdW50IjowfSwib2lsQm9vayI6eyJhbW91bnQiOjB9LCJtZXRhbEJvb2siOnsiYW1vdW50IjowfX0sInVwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHJpbGxpbmdVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJvaWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJib3hlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJib3hlcyI6MCwidG90YWxCb3hlcyI6MCwidXBncmFkZXMiOnsibG9nc1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImFzaFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImNvYWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwicm93MlVwZ3JhZGVzIjp7Im9yZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwicGxhc3RpY1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJsb2dCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfSwiYXNoQm94ZXNCdXlhYmxlIjp7ImFtb3VudCI6MH0sImNvYWxCb3hlc0J1eWFibGUiOnsiYW1vdW50IjowfX0sInJvdzNVcGdyYWRlcyI6eyJjbG90aFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImR5ZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sInhwVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwibWV0YWwiOnsibWluaW1pemVkIjpmYWxzZSwib3JlIjoiMTAzMyIsImJlc3RPcmUiOiIxMDMzIiwib3JlUHJvZ3Jlc3MiOiIwLjAzOTgwMDAwMDAwMDQyMzM2NSIsIm1ldGFsIjoiMCIsImJlc3RNZXRhbCI6MCwidG90YWxNZXRhbCI6MCwic2ltcGxlUGlja2F4ZSI6eyJib3VnaHQiOmZhbHNlfSwiZG91YmxlUGlja2F4ZSI6eyJib3VnaHQiOmZhbHNlfSwiY3J1Y2libGUiOnsiYm91Z2h0IjpmYWxzZX0sImNvYWxEcmlsbCI6eyJib3VnaHQiOmZhbHNlfSwiaW5kdXN0cmlhbEZ1cm5hY2UiOnsiYm91Z2h0IjpmYWxzZX0sImVmZmljaWVudERyaWxsIjp7ImJvdWdodCI6ZmFsc2V9LCJvcmVEcmlsbCI6eyJhbW91bnQiOjB9LCJpbmR1c3RyaWFsQ3J1Y2libGUiOnsiYW1vdW50IjowfSwiYXV0b1NtZWx0RW5hYmxlZCI6dHJ1ZSwiaG90dGVyRm9yZ2UiOnsiYW1vdW50IjowfSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJjbG90aCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJjbG90aCI6MCwidG90YWxDbG90aCI6MCwid29vbCI6MCwic2hlZXAiOjEwLCJidWlsZFBlbnMiOnsiYW1vdW50IjowfSwiYmV0dGVyU2hlYXJzIjp7ImFtb3VudCI6MH0sImZhc3RlclNwaW5uaW5nIjp7ImFtb3VudCI6MH0sInRyZWVzVXBncmFkZXMiOnsidHJlZXNVcGdyYWRlNCI6eyJib3VnaHQiOmZhbHNlfSwidHJlZXNVcGdyYWRlMyI6eyJib3VnaHQiOmZhbHNlfSwidHJlZXNVcGdyYWRlMiI6eyJib3VnaHQiOmZhbHNlfSwidHJlZXNVcGdyYWRlMSI6eyJib3VnaHQiOmZhbHNlfX0sIm1ldGFsVXBncmFkZXMiOnsibWV0YWxVcGdyYWRlNCI6eyJib3VnaHQiOmZhbHNlfSwibWV0YWxVcGdyYWRlMyI6eyJib3VnaHQiOmZhbHNlfSwibWV0YWxVcGdyYWRlMiI6eyJib3VnaHQiOmZhbHNlfSwibWV0YWxVcGdyYWRlMSI6eyJib3VnaHQiOmZhbHNlfX0sInBhcGVyVXBncmFkZXMiOnsicGFwZXJVcGdyYWRlNCI6eyJib3VnaHQiOmZhbHNlfSwicGFwZXJVcGdyYWRlMyI6eyJib3VnaHQiOmZhbHNlfSwicGFwZXJVcGdyYWRlMiI6eyJib3VnaHQiOmZhbHNlfSwicGFwZXJVcGdyYWRlMSI6eyJib3VnaHQiOmZhbHNlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJicmVlZGluZ1Byb2dyZXNzIjowLCJzaGVhcmluZ1Byb2dyZXNzIjowLCJzcGlubmluZ1Byb2dyZXNzIjowfSwib2lsIjp7Im1pbmltaXplZCI6ZmFsc2UsIm9pbCI6MCwidG90YWxPaWwiOjAsImRlcHRoIjowLCJkcmlsbFByb2dyZXNzIjowLCJhY3RpdmVIZWF2eSI6MCwiYnVpbGRIZWF2eSI6eyJhbW91bnQiOjB9LCJhY3RpdmVIZWF2eTIiOjAsImJ1aWxkSGVhdnkyIjp7ImFtb3VudCI6MH0sImFjdGl2ZUV4dHJhY3RvciI6MCwiYnVpbGRFeHRyYWN0b3IiOnsiYW1vdW50IjowfSwiYWN0aXZlUHVtcCI6MCwiYnVpbGRQdW1wIjp7ImFtb3VudCI6MH0sImFjdGl2ZUJ1cm5lciI6MCwiYnVpbGRCdXJuZXIiOnsiYW1vdW50IjowfSwiYWN0aXZlU21lbHRlciI6MCwiYnVpbGRTbWVsdGVyIjp7ImFtb3VudCI6MH0sImRlcHRoTWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9LCI1Ijp7ImVhcm5lZCI6ZmFsc2V9LCI2Ijp7ImVhcm5lZCI6ZmFsc2V9LCI3Ijp7ImVhcm5lZCI6ZmFsc2V9fSwiY29sbGFwc2VkRGVwdGhNaWxlc3RvbmVzIjp0cnVlLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfSwiMyI6eyJib3VnaHQiOmZhbHNlfSwiNCI6eyJib3VnaHQiOmZhbHNlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6ZmFsc2V9LCIxIjp7ImJvdWdodCI6ZmFsc2V9LCIyIjp7ImJvdWdodCI6ZmFsc2V9LCIzIjp7ImJvdWdodCI6ZmFsc2V9LCI0Ijp7ImJvdWdodCI6ZmFsc2V9fSwib2lsTWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9fSwiY29sbGFwc2VkT2lsTWlsZXN0b25lcyI6dHJ1ZSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJwbGFzdGljIjp7Im1pbmltaXplZCI6ZmFsc2UsInBsYXN0aWMiOjAsInRvdGFsUGxhc3RpYyI6MCwiYnVpbGRSZWZpbmVyeSI6eyJhbW91bnQiOjB9LCJhY3RpdmVSZWZpbmVyeSI6MCwidXBncmFkZXMiOnsicGFwZXJUb29scyI6eyJib3VnaHQiOmZhbHNlfSwiYm94VG9vbHMiOnsiYm91Z2h0IjpmYWxzZX0sImNsb3RoVG9vbHMiOnsiYm91Z2h0IjpmYWxzZX19LCJlbGZVcGdyYWRlcyI6eyJwYXBlckVsZiI6eyJib3VnaHQiOmZhbHNlfSwiYm94RWxmIjp7ImJvdWdodCI6ZmFsc2V9LCJjbG90aEVsZiI6eyJib3VnaHQiOmZhbHNlfX0sImJ1eWFibGVzIjp7InBhc3NpdmVQYXBlciI6eyJhbW91bnQiOjB9LCJwYXNzaXZlQm94ZXMiOnsiYW1vdW50IjowfSwiY2xvdGhHYWlucyI6eyJhbW91bnQiOjB9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJkeWVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImR5ZXMiOnsicmVkIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwieWVsbG93Ijp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwiYmx1ZSI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sIm9yYW5nZSI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sImdyZWVuIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fSwicHVycGxlIjp7ImFtb3VudCI6MCwiYnV5YWJsZSI6eyJhbW91bnQiOjB9fX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJ1cGdyYWRlcyI6eyJibHVlRHllVXBnIjp7ImJvdWdodCI6ZmFsc2V9LCJyZWREeWVVcGciOnsiYm91Z2h0IjpmYWxzZX0sInllbGxvd0R5ZVVwZyI6eyJib3VnaHQiOmZhbHNlfSwieWVsbG93RHllVXBnMiI6eyJib3VnaHQiOmZhbHNlfSwicmVkRHllVXBnMiI6eyJib3VnaHQiOmZhbHNlfSwiYmx1ZUR5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sImNvYWxVcGciOnsiYm91Z2h0IjpmYWxzZX19fSwibWFuYWdlbWVudCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJlbGZUcmFpbmluZyI6eyJjdXR0ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwicGxhbnRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJleHBhbmRlcnNFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiaGVhdGVkQ3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImhlYXRlZFBsYW50ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiZmVydGlsaXplckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJzbWFsbGZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiYm9uZmlyZUVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJraWxuRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sInBhcGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImJveEVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJjbG90aEVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19fSwiY3VycmVudFNob3duIjoiSG9sbHkiLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwidGVhY2hpbmciOnsiYm91Z2h0IjpmYWxzZX0sInNjaG9vbHMiOnsiYW1vdW50IjowfSwiY2xhc3Nyb29tcyI6eyJhbW91bnQiOjB9LCJjbGFzc3Jvb21VcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJmb2N1c011bHRpcGxpZXIiOjEsInVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX19LCJmb2N1c1RhcmdldHMiOnt9LCJmb2N1c0Nvb2xkb3duIjowLCJmb2N1c1RpbWUiOjB9fSwiYXV0b1BhdXNlIjp0cnVlLCJ1c2luZ0xvZyI6ZmFsc2V9","./../../saves/Day 06 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0wIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJib3hlcyJdLCJ0aW1lIjoxNjcwOTYzOTQ1MjAwLCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOnRydWUsIm9mZmxpbmVUaW1lIjowLCJ0aW1lUGxheWVkIjoxMjQ0Ny45NjU5OTk5OTY5NTUsImtlZXBHb2luZyI6ZmFsc2UsIm1vZElEIjoiYWR2ZW50LWluY3JlbWVudGFsIiwibW9kVmVyc2lvbiI6IjAuNSIsImxheWVycyI6eyJtYWluIjp7Im1pbmltaXplZCI6ZmFsc2UsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTAiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjExIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTMiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE0Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTYiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE3Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9fSwiZGF5Ijo3fSwidHJlZXMiOnsibWluaW1pemVkIjpmYWxzZSwibG9ncyI6MCwidG90YWxMb2dzIjoiMzgzNTM0NjMxODQxNjI5LjUiLCJzYXBsaW5ncyI6IjU2NTI5OS41NTk5OTk5OTk5Iiwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsiYW1vdW50IjoiNTkxMiJ9LCIxIjp7ImFtb3VudCI6IjU5MTIifSwiMiI6eyJhbW91bnQiOiIxNjU5OCJ9fSwibWFudWFsQ3V0UHJvZ3Jlc3MiOiIwLjAwMDk3NjU2MjQ5OTk5OTk5ODgiLCJtYW51YWxQbGFudFByb2dyZXNzIjoiMC4wMDA5NzY1NjI0OTk5OTk5OTg4IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJ3b3Jrc2hvcCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJmb3VuZGF0aW9uUHJvZ3Jlc3MiOjEwMCwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUxIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTIiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMyI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmU0Ijp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTUiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWV9LCJjb2FsIjp7Im1pbmltaXplZCI6ZmFsc2UsImNvYWwiOiI1Mzg1MjMzNTg3ODYuOTE2NzUiLCJ0b3RhbENvYWwiOiI1Mzg1MjMzNTkyOTYuOTE2NzUiLCJhc2giOiI2NjczOTgwNTUuNDg0MDg4OSIsImFjdGl2ZUZpcmVzIjoiMS42MzI0MTg3NTAwMDEzMjEiLCJidWlsZEZpcmUiOnsiYW1vdW50IjoiMS42MzI0MTg3NTAwMDEzMjEifSwiYWN0aXZlQm9uZmlyZXMiOiI3MzIiLCJidWlsZEJvbmZpcmUiOnsiYW1vdW50IjoiNzMyIn0sImFjdGl2ZUtpbG5zIjoiMTUyIiwiYnVpbGRLaWxuIjp7ImFtb3VudCI6IjE1MiJ9LCJhY3RpdmVEcmlsbHMiOjAsImJ1aWxkRHJpbGwiOnsiYW1vdW50IjowfSwid2FybWVyQ3V0dGVycyI6eyJib3VnaHQiOnRydWV9LCJ3YXJtZXJQbGFudGVycyI6eyJib3VnaHQiOnRydWV9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrQm9uZmlyZSI6eyJib3VnaHQiOnRydWV9LCJkZWRpY2F0ZWRDdXR0ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImRlZGljYXRlZFBsYW50ZXJzIjp7ImJvdWdodCI6dHJ1ZX0sImJldHRlckZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrS2lsbiI6eyJib3VnaHQiOnRydWV9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJib3VnaHQiOmZhbHNlfSwiaGVhdGVkQ3V0dGVycyI6eyJhbW91bnQiOiIzMzYifSwiaGVhdGVkUGxhbnRlcnMiOnsiYW1vdW50IjoiMzM2In0sIm1vcmVGZXJ0aWxpemVyIjp7ImFtb3VudCI6IjIwMSJ9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImVsdmVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImVsdmVzIjp7ImN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzNTcxNDI4NTcxNDI4NTcxIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MTI0Mjk1LjUwMDAwMDAwMzEzfSwicGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMzMzMzMzMzMzMzMzMzMzIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MTQwODAzLjg3MjAwMDAxODk1fSwiZXhwYW5kZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMzMzMzMzMzMzMzMzMzMzMyIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjEwNzQyMi4yMjgwMDAwMDE1OX0sImhlYXRlZEN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMzMzMzMzMzMzMzMzMzMzIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MTAwNDgzLjQ1NDAwMDAwMTcyfSwiaGVhdGVkUGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMzMzMzMzMzMzMzMzMzMzIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MTAyNjk5LjI2Nn0sImZlcnRpbGl6ZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMzMzMzMzMzMzMzMzMzMzIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6OTc5MjQuOTQ4MDAwMDAxMTJ9LCJzbWFsbEZpcmVFbGYiOnsidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDMzMzMzMzMzMzMzMzMzMzMiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjo1ODEyNS4xNDc5OTk5OTY5MTZ9LCJib25maXJlRWxmIjp7InRvZ2dsZSI6dHJ1ZSwiYnV5UHJvZ3Jlc3MiOiIwLjAzMzMzMzMzMzMzMzMzMzMzIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6Mzg1MTYuNTgxOTk5OTk5MjV9LCJraWxuRWxmIjp7InRvZ2dsZSI6dHJ1ZSwiYnV5UHJvZ3Jlc3MiOiIwLjAzMzMzMzMzMzMzMzMzMzMzIiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MTUzODguNzAwMDAwMDAwMDcyfSwicGFwZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOjAsImJvdWdodCI6ZmFsc2UsImFtb3VudE9mVGltZXNEb25lIjowfSwiYm94RWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sImNsb3RoRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJib3VnaHQiOmZhbHNlLCJhbW91bnRPZlRpbWVzRG9uZSI6MH0sIm1pbmluZ0RyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sImhlYXZ5RHJpbGxFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImFtb3VudE9mVGltZXNEb25lIjowLCJib3VnaHQiOmZhbHNlfSwib2lsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm1ldGFsRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX19LCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9LCI1Ijp7ImVhcm5lZCI6dHJ1ZX0sIjYiOnsiZWFybmVkIjp0cnVlfSwiNyI6eyJlYXJuZWQiOnRydWV9LCI4Ijp7ImVhcm5lZCI6dHJ1ZX0sIjkiOnsiZWFybmVkIjpmYWxzZX0sIjEwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxMSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJwYXBlciI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwYXBlciI6IjIxNDcuOTk5OTk5OTk5OTY3MyIsInRvdGFsUGFwZXIiOiI2NjE4OCIsImJvb2tzIjp7ImN1dHRlcnNCb29rIjp7ImFtb3VudCI6IjQifSwicGxhbnRlcnNCb29rIjp7ImFtb3VudCI6IjUifSwiZXhwYW5kZXJzQm9vayI6eyJhbW91bnQiOiI1In0sImhlYXRlZEN1dHRlcnNCb29rIjp7ImFtb3VudCI6IjUifSwiaGVhdGVkUGxhbnRlcnNCb29rIjp7ImFtb3VudCI6IjUifSwiZmVydGlsaXplckJvb2siOnsiYW1vdW50IjoiNSJ9LCJzbWFsbEZpcmVCb29rIjp7ImFtb3VudCI6IjUifSwiYm9uZmlyZUJvb2siOnsiYW1vdW50IjoiNSJ9LCJraWxuQm9vayI6eyJhbW91bnQiOiI1In0sInBhcGVyQm9vayI6eyJhbW91bnQiOjB9LCJib3hCb29rIjp7ImFtb3VudCI6MH0sImNsb3RoQm9vayI6eyJhbW91bnQiOjB9LCJtaW5pbmdEcmlsbEJvb2siOnsiYW1vdW50IjowfSwiaGVhdnlEcmlsbEJvb2siOnsiYW1vdW50IjowfSwib2lsQm9vayI6eyJhbW91bnQiOjB9LCJtZXRhbEJvb2siOnsiYW1vdW50IjowfX0sInVwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHJpbGxpbmdVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9LCJvaWxVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJib3hlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJib3hlcyI6IjY5NDkuMDAwMDAwMDAwMDA0IiwidG90YWxCb3hlcyI6IjUwNDQ5IiwidXBncmFkZXMiOnsibG9nc1VwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwiYXNoVXBncmFkZSI6eyJib3VnaHQiOnRydWV9LCJjb2FsVXBncmFkZSI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7Im9yZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwicGxhc3RpY1VwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJsb2dCb3hlc0J1eWFibGUiOnsiYW1vdW50IjoiNiJ9LCJhc2hCb3hlc0J1eWFibGUiOnsiYW1vdW50IjoiMSJ9LCJjb2FsQm94ZXNCdXlhYmxlIjp7ImFtb3VudCI6IjEifX0sInJvdzNVcGdyYWRlcyI6eyJjbG90aFVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sImR5ZVVwZ3JhZGUiOnsiYm91Z2h0IjpmYWxzZX0sInhwVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwibWV0YWwiOnsibWluaW1pemVkIjpmYWxzZSwib3JlIjoiMTI0NCIsImJlc3RPcmUiOiIxMjQ0Iiwib3JlUHJvZ3Jlc3MiOiIwLjc5NjYwMDAwMDAwMDQ0NTYiLCJtZXRhbCI6IjAiLCJiZXN0TWV0YWwiOjAsInRvdGFsTWV0YWwiOjAsInNpbXBsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImRvdWJsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImNydWNpYmxlIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2FsRHJpbGwiOnsiYm91Z2h0IjpmYWxzZX0sImluZHVzdHJpYWxGdXJuYWNlIjp7ImJvdWdodCI6ZmFsc2V9LCJlZmZpY2llbnREcmlsbCI6eyJib3VnaHQiOmZhbHNlfSwib3JlRHJpbGwiOnsiYW1vdW50IjowfSwiaW5kdXN0cmlhbENydWNpYmxlIjp7ImFtb3VudCI6MH0sImF1dG9TbWVsdEVuYWJsZWQiOnRydWUsImhvdHRlckZvcmdlIjp7ImFtb3VudCI6MH0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiY2xvdGgiOnsibWluaW1pemVkIjpmYWxzZSwiY2xvdGgiOjAsInRvdGFsQ2xvdGgiOjAsIndvb2wiOjAsInNoZWVwIjoxMCwiYnVpbGRQZW5zIjp7ImFtb3VudCI6MH0sImJldHRlclNoZWFycyI6eyJhbW91bnQiOjB9LCJmYXN0ZXJTcGlubmluZyI6eyJhbW91bnQiOjB9LCJ0cmVlc1VwZ3JhZGVzIjp7InRyZWVzVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJtZXRhbFVwZ3JhZGVzIjp7Im1ldGFsVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJwYXBlclVwZ3JhZGVzIjp7InBhcGVyVXBncmFkZTQiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwiYnJlZWRpbmdQcm9ncmVzcyI6MCwic2hlYXJpbmdQcm9ncmVzcyI6MCwic3Bpbm5pbmdQcm9ncmVzcyI6MH0sIm9pbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvaWwiOjAsInRvdGFsT2lsIjowLCJkZXB0aCI6MCwiZHJpbGxQcm9ncmVzcyI6MCwiYWN0aXZlSGVhdnkiOjAsImJ1aWxkSGVhdnkiOnsiYW1vdW50IjowfSwiYWN0aXZlSGVhdnkyIjowLCJidWlsZEhlYXZ5MiI6eyJhbW91bnQiOjB9LCJhY3RpdmVFeHRyYWN0b3IiOjAsImJ1aWxkRXh0cmFjdG9yIjp7ImFtb3VudCI6MH0sImFjdGl2ZVB1bXAiOjAsImJ1aWxkUHVtcCI6eyJhbW91bnQiOjB9LCJhY3RpdmVCdXJuZXIiOjAsImJ1aWxkQnVybmVyIjp7ImFtb3VudCI6MH0sImFjdGl2ZVNtZWx0ZXIiOjAsImJ1aWxkU21lbHRlciI6eyJhbW91bnQiOjB9LCJkZXB0aE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfSwiNSI6eyJlYXJuZWQiOmZhbHNlfSwiNiI6eyJlYXJuZWQiOmZhbHNlfSwiNyI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZERlcHRoTWlsZXN0b25lcyI6dHJ1ZSwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX0sIjMiOnsiYm91Z2h0IjpmYWxzZX0sIjQiOnsiYm91Z2h0IjpmYWxzZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfSwiMyI6eyJib3VnaHQiOmZhbHNlfSwiNCI6eyJib3VnaHQiOmZhbHNlfX0sIm9pbE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZE9pbE1pbGVzdG9uZXMiOnRydWUsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGxhc3RpYyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwbGFzdGljIjowLCJ0b3RhbFBsYXN0aWMiOjAsImJ1aWxkUmVmaW5lcnkiOnsiYW1vdW50IjowfSwiYWN0aXZlUmVmaW5lcnkiOjAsInVwZ3JhZGVzIjp7InBhcGVyVG9vbHMiOnsiYm91Z2h0IjpmYWxzZX0sImJveFRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9LCJjbG90aFRvb2xzIjp7ImJvdWdodCI6ZmFsc2V9fSwiZWxmVXBncmFkZXMiOnsicGFwZXJFbGYiOnsiYm91Z2h0IjpmYWxzZX0sImJveEVsZiI6eyJib3VnaHQiOmZhbHNlfSwiY2xvdGhFbGYiOnsiYm91Z2h0IjpmYWxzZX19LCJidXlhYmxlcyI6eyJwYXNzaXZlUGFwZXIiOnsiYW1vdW50IjowfSwicGFzc2l2ZUJveGVzIjp7ImFtb3VudCI6MH0sImNsb3RoR2FpbnMiOnsiYW1vdW50IjowfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZHllcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJkeWVzIjp7InJlZCI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInllbGxvdyI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sImJsdWUiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJvcmFuZ2UiOnsiYW1vdW50IjowLCJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJncmVlbiI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInB1cnBsZSI6eyJhbW91bnQiOjAsImJ1eWFibGUiOnsiYW1vdW50IjowfX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwidXBncmFkZXMiOnsiYmx1ZUR5ZVVwZyI6eyJib3VnaHQiOmZhbHNlfSwicmVkRHllVXBnIjp7ImJvdWdodCI6ZmFsc2V9LCJ5ZWxsb3dEeWVVcGciOnsiYm91Z2h0IjpmYWxzZX0sInllbGxvd0R5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sInJlZER5ZVVwZzIiOnsiYm91Z2h0IjpmYWxzZX0sImJsdWVEeWVVcGcyIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2FsVXBnIjp7ImJvdWdodCI6ZmFsc2V9fX0sIm1hbmFnZW1lbnQiOnsibWluaW1pemVkIjpmYWxzZSwiZWxmVHJhaW5pbmciOnsiY3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sInBsYW50ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiZXhwYW5kZXJzRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImhlYXRlZEN1dHRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJoZWF0ZWRQbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImZlcnRpbGl6ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwic21hbGxmaXJlRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MCwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6ZmFsc2V9LCIxIjp7ImVhcm5lZCI6ZmFsc2V9LCIyIjp7ImVhcm5lZCI6ZmFsc2V9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImJvbmZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwia2lsbkVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwYXBlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJib3hFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiY2xvdGhFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fX0sImN1cnJlbnRTaG93biI6IkhvbGx5IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInRlYWNoaW5nIjp7ImJvdWdodCI6ZmFsc2V9LCJzY2hvb2xzIjp7ImFtb3VudCI6MH0sImNsYXNzcm9vbXMiOnsiYW1vdW50IjowfSwiY2xhc3Nyb29tVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZm9jdXNNdWx0aXBsaWVyIjoxLCJ1cGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6ZmFsc2V9LCIxIjp7ImJvdWdodCI6ZmFsc2V9LCIyIjp7ImJvdWdodCI6ZmFsc2V9fSwiZm9jdXNUYXJnZXRzIjp7fSwiZm9jdXNDb29sZG93biI6MCwiZm9jdXNUaW1lIjowfX0sImF1dG9QYXVzZSI6dHJ1ZSwidXNpbmdMb2ciOmZhbHNlfQ==","./../../saves/Day 07 Complete.txt":`eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0xIiwiZGV2U3BlZWQiOm51bGwsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJtZXRhbCIsImNvYWwiLCJjbG90aCIsInBhcGVyIiwidHJlZXMiLCJib3hlcyJdLCJ0aW1lIjoxNjcwNTQ3Mzg4NDQ4LCJhdXRvc2F2ZSI6dHJ1ZSwib2ZmbGluZVByb2QiOmZhbHNlLCJvZmZsaW5lVGltZSI6bnVsbCwidGltZVBsYXllZCI6NDYxMTAuNjI0NTE5MzM4Miwia2VlcEdvaW5nIjpmYWxzZSwibW9kSUQiOiJhZHZlbnQtaW5jcmVtZW50YWwiLCJtb2RWZXJzaW9uIjoiMC4wIiwibGF5ZXJzIjp7Im1haW4iOnsibWluaW1pemVkIjpmYWxzZSwiZGF5cyI6eyIwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIzIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjQiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI2Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTAiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjExIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTMiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE0Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTYiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE3Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTkiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIwIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9fSwiZGF5Ijo4fSwidHJlZXMiOnsibWluaW1pemVkIjpmYWxzZSwibG9ncyI6IjExMzA3NDkzOTU1NzczOTUuNSIsInRvdGFsTG9ncyI6IjI1Mzg3NDUyNDUyODAzMzMuNSIsInRyZWVzIjoiMTAiLCJzYXBsaW5ncyI6IjEzMDc5NC4wOTEwMDAwMDAwMSIsInJvdzFVcGdyYWRlcyI6eyIwIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjIiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIzIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiNCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjEiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIyIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMyI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjQiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiI3MjU3In0sIjEiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiI3MjU3In0sIjIiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiIyMjAwMyJ9fSwibWFudWFsQ3V0UHJvZ3Jlc3MiOiIwLjAwMDk3NjU2MjQ5OTk5OTk5ODgiLCJtYW51YWxQbGFudFByb2dyZXNzIjoiMC4wMDA5NzY1NjI0OTk5OTk5OTg4IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJ3b3Jrc2hvcCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJmb3VuZGF0aW9uUHJvZ3Jlc3MiOjEwMCwiZm91bmRhdGlvbkNvbnZlcnNpb24iOnsiYmFzZVJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiZ2FpblJlc291cmNlIjoiMTAwIn0sIm1pbGVzdG9uZXMiOnsibG9nR2Fpbk1pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwiYXV0b0N1dE1pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwiYXV0b1BsYW50TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImxvZ0dhaW5NaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sIm1vcmVQbGFudHNNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImxvZ0dhaW5NaWxlc3RvbmUzIjp7ImVhcm5lZCI6dHJ1ZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWV9LCJjb2FsIjp7Im1pbmltaXplZCI6ZmFsc2UsImNvYWwiOiI0OTQzNjUxMzczNjc0NjMzIiwidG90YWxDb2FsIjoiMS4xMzk4MTQ2OTUwMTk2MDEzZTE2IiwiYXNoIjoiNTQ3NDU2ODY2OTkuMzM4OTYiLCJhY3RpdmVGaXJlcyI6IjAiLCJidWlsZEZpcmUiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiI0LjgwNzM2OTA2MjUwMTc1NiJ9LCJhY3RpdmVCb25maXJlcyI6IjEwMjEiLCJidWlsZEJvbmZpcmUiOnsicmVzb3VyY2UiOjAsImFtb3VudCI6IjEwMjEifSwiYWN0aXZlS2lsbnMiOiIxNjMiLCJidWlsZEtpbG4iOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiIxNjMifSwid2FybWVyQ3V0dGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlfSwid2FybWVyUGxhbnRlcnMiOnsicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZX0sImJhc2ljRmVydGlsaXplciI6eyJyZXNvdXJjZSI6IjE0NTY4ODI2IiwiYm91Z2h0Ijp0cnVlfSwidW5sb2NrQm9uZmlyZSI6eyJyZXNvdXJjZSI6MCwiYm91Z2h0Ijp0cnVlfSwiZGVkaWNhdGVkQ3V0dGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlfSwiZGVkaWNhdGVkUGxhbnRlcnMiOnsicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZX0sImJldHRlckZlcnRpbGl6ZXIiOnsiYm91Z2h0Ijp0cnVlfSwidW5sb2NrS2lsbiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sImhlYXRlZEN1dHRlcnMiOnsicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImFtb3VudCI6Ijg0NyJ9LCJoZWF0ZWRQbGFudGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYW1vdW50IjoiODQ3In0sIm1vcmVGZXJ0aWxpemVyIjp7InJlc291cmNlIjoiMTQ1Njg4MjYiLCJhbW91bnQiOiIyOTIifSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImFjdGl2ZURyaWxscyI6IjI4IiwiYnVpbGREcmlsbCI6eyJhbW91bnQiOiIyOCJ9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJyZXNvdXJjZSI6IjQ5NDM2NTEzNzM2NzQ2MzMiLCJib3VnaHQiOmZhbHNlfX0sImVsdmVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImVsdmVzIjp7ImN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMTI1IiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZSwiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjMxOTgifX0sInBsYW50ZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMzEyNSIsInJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWUsImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiIzMTk4In19LCJleHBhbmRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMTI1IiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZSwiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjczNzkifX0sImhlYXRlZEN1dHRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMTI1IiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZSwiYnV5YWJsZSI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYW1vdW50IjoiMjcwIn19LCJoZWF0ZWRQbGFudGVyc0VsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDMxMjUiLCJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlLCJidXlhYmxlIjp7InJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJhbW91bnQiOiIyNzAifX0sImZlcnRpbGl6ZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAzMTI1IiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZSwiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjE0NTY4ODI2IiwiYW1vdW50IjoiMTM5In19LCJzbWFsbEZpcmVFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6MH0sInRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjoiMC4wMzEyNSIsInJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWV9LCJib25maXJlRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOjAsImFtb3VudCI6MH0sInRvZ2dsZSI6dHJ1ZSwiYnV5UHJvZ3Jlc3MiOiIwLjAzMTI1IiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZX0sImtpbG5FbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjEwMiJ9LCJ0b2dnbGUiOnRydWUsImJ1eVByb2dyZXNzIjoiMC4wMzEyNSIsInJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWV9fSwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfSwiNSI6eyJlYXJuZWQiOnRydWV9LCI2Ijp7ImVhcm5lZCI6dHJ1ZX0sIjciOnsiZWFybmVkIjp0cnVlfSwiOCI6eyJlYXJuZWQiOnRydWV9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX0sInBhcGVyIjp7Im1pbmltaXplZCI6ZmFsc2UsInBhcGVyIjoiNDU3OTAuOTk5OTk5OTk5OTkiLCJ0b3RhbFBhcGVyIjoiNDk1ODg0Ljk5OTk5OTk5OTk0IiwicGFwZXJDb252ZXJzaW9uIjp7ImdhaW5SZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5In0sImJvb2tzIjp7ImN1dHRlcnNCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiI2In0sInBsYW50ZXJzQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiNiJ9LCJleHBhbmRlcnNCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiI2In0sImhlYXRlZEN1dHRlcnNCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiI2In0sImhlYXRlZFBsYW50ZXJzQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiNiJ9LCJmZXJ0aWxpemVyQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiNiJ9LCJzbWFsbEZpcmVCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiI2In0sImJvbmZpcmVCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiI2In0sImtpbG5Cb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiI2In19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImJveGVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImJveGVzIjoiNTA5OC45OTk5OTk5OTk5OTMiLCJ0b3RhbEJveGVzIjoiMTEyMDI3IiwiYm94ZXNDb252ZXJzaW9uIjp7ImJhc2VSZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImdhaW5SZXNvdXJjZSI6MH0sInVwZ3JhZGVzIjp7ImxvZ3NVcGdyYWRlIjp7InJlc291cmNlIjowLCJib3VnaHQiOnRydWV9LCJhc2hVcGdyYWRlIjp7InJlc291cmNlIjowLCJib3VnaHQiOnRydWV9LCJjb2FsVXBncmFkZSI6eyJyZXNvdXJjZSI6MCwiYm91Z2h0Ijp0cnVlfX0sImJ1eWFibGVzIjp7ImxvZ0JveGVzQnV5YWJsZSI6eyJyZXNvdXJjZSI6MCwiYW1vdW50IjoiNSJ9LCJhc2hCb3hlc0J1eWFibGUiOnsicmVzb3VyY2UiOjAsImFtb3VudCI6IjMifSwiY29hbEJveGVzQnV5YWJsZSI6eyJyZXNvdXJjZSI6MCwiYW1vdW50IjoiMiJ9fX0sIm1ldGFsIjp7Im1pbmltaXplZCI6ZmFsc2UsIm9yZSI6IjguODcwMDAwMDAwMDAwMTE4IiwiYmVzdE9yZSI6IjE5MzYuNjMiLCJvcmVQcm9ncmVzcyI6IjAuNDI0MDAwMDAwMDAwMDE0NiIsIm1ldGFsIjoiMjU4OTAuOTEwNzk5NDU3MjgiLCJiZXN0TWV0YWwiOiIyNTg5MC45MTA3OTk0NTcyOCIsInRvdGFsTWV0YWwiOiI1NzYwMS42MzIwNjYzNzU2OCIsInNpbXBsZVBpY2theGUiOnsiYm91Z2h0Ijp0cnVlfSwiZG91YmxlUGlja2F4ZSI6eyJib3VnaHQiOmZhbHNlfSwiY3J1Y2libGUiOnsiYm91Z2h0Ijp0cnVlfSwiY29hbERyaWxsIjp7ImJvdWdodCI6dHJ1ZX0sImluZHVzdHJpYWxGdXJuYWNlIjp7ImJvdWdodCI6dHJ1ZX0sIm9yZURyaWxsIjp7ImFtb3VudCI6IjQzIn0sImluZHVzdHJpYWxDcnVjaWJsZSI6eyJhbW91bnQiOiI0In0sImF1dG9TbWVsdEVuYWJsZWQiOnRydWUsImhvdHRlckZvcmdlIjp7ImFtb3VudCI6IjQifSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImVmZmljaWVudERyaWxsIjp7ImJvdWdodCI6ZmFsc2V9fSwiY2xvdGgiOnsibWluaW1pemVkIjpmYWxzZSwiY2xvdGgiOiI4MyIsInRvdGFsQ2xvdGgiOiI4MyIsIndvb2wiOiIwIiwic2hlZXAiOiI0MCIsImJ1aWxkUGVucyI6eyJhbW91bnQiOiIxIn0sImJldHRlclNoZWFycyI6eyJhbW91bnQiOjB9LCJmYXN0ZXJTcGlubmluZyI6eyJhbW91bnQiOjB9LCJ0cmVlc1VwZ3JhZGVzIjp7InRyZWVzVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInRyZWVzVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJtZXRhbFVwZ3JhZGVzIjp7Im1ldGFsVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sIm1ldGFsVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJwYXBlclVwZ3JhZGVzIjp7InBhcGVyVXBncmFkZTMiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTIiOnsiYm91Z2h0IjpmYWxzZX0sInBhcGVyVXBncmFkZTEiOnsiYm91Z2h0IjpmYWxzZX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwiYnJlZWRpbmdQcm9ncmVzcyI6MSwic2hlYXJpbmdQcm9ncmVzcyI6MSwic3Bpbm5pbmdQcm9ncmVzcyI6MX0sIm9pbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvaWwiOjAsInRvdGFsT2lsIjowLCJkZXB0aCI6MCwiZHJpbGxQcm9ncmVzcyI6MCwiYWN0aXZlSGVhdnkiOjAsImJ1aWxkSGVhdnkiOnsiYW1vdW50IjowfSwiYWN0aXZlSGVhdnkyIjowLCJidWlsZEhlYXZ5MiI6eyJhbW91bnQiOjB9LCJhY3RpdmVFeHRyYWN0b3IiOjAsImJ1aWxkRXh0cmFjdG9yIjp7ImFtb3VudCI6MH0sImFjdGl2ZVB1bXAiOjAsImJ1aWxkUHVtcCI6eyJhbW91bnQiOjB9LCJhY3RpdmVCdXJuZXIiOjAsImJ1aWxkQnVybmVyIjp7ImFtb3VudCI6MH0sImFjdGl2ZVNtZWx0ZXIiOjAsImJ1aWxkU21lbHRlciI6eyJhbW91bnQiOjB9LCJkZXB0aE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfSwiNSI6eyJlYXJuZWQiOmZhbHNlfSwiNiI6eyJlYXJuZWQiOmZhbHNlfSwiNyI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlZERlcHRoTWlsZXN0b25lcyI6dHJ1ZSwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0IjpmYWxzZX0sIjEiOnsiYm91Z2h0IjpmYWxzZX0sIjIiOnsiYm91Z2h0IjpmYWxzZX0sIjMiOnsiYm91Z2h0IjpmYWxzZX0sIjQiOnsiYm91Z2h0IjpmYWxzZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOmZhbHNlfSwiMSI6eyJib3VnaHQiOmZhbHNlfSwiMiI6eyJib3VnaHQiOmZhbHNlfSwiMyI6eyJib3VnaHQiOmZhbHNlfSwiNCI6eyJib3VnaHQiOmZhbHNlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fX0sInVzaW5nTG9nIjpmYWxzZX0=
@@ -32,4 +32,4 @@ Trying to pop ${n.id}`;return cl.pop(),ve(n,"color"),ve(n,"display"),ve(n,"name"
`,"./../../saves/Day 11 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0xIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJjb2FsIiwibWV0YWwiLCJvaWwiLCJkeWVzIiwiZWx2ZXMiLCJ0cmVlcyIsImJveGVzIiwicGFwZXIiXSwidGltZSI6MTY3MDg4ODc1Mzk5MywiYXV0b3NhdmUiOnRydWUsIm9mZmxpbmVQcm9kIjpmYWxzZSwib2ZmbGluZVRpbWUiOm51bGwsInRpbWVQbGF5ZWQiOjYzMzg4LjE2NjUxOTM0MjE4LCJrZWVwR29pbmciOmZhbHNlLCJtb2RJRCI6ImFkdmVudC1pbmNyZW1lbnRhbCIsIm1vZFZlcnNpb24iOiIwLjAiLCJsYXllcnMiOnsibWFpbiI6eyJtaW5pbWl6ZWQiOnRydWUsImRheXMiOnsiMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMyI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI0Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjUiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI3Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjgiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTIiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6MTJ9LCJ0cmVlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJsb2dzIjoiMS41NDM4MDY5MDQxMjI1ODA2ZTE5IiwidG90YWxMb2dzIjoiMS44MDIxODcyNjAwNzAxOThlMjIiLCJ0cmVlcyI6IjEwIiwic2FwbGluZ3MiOiIwIiwicm93MVVwZ3JhZGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIxIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjMiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCI0Ijp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiMSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX0sIjIiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJib3VnaHQiOnRydWV9LCIzIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiNCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImJvdWdodCI6dHJ1ZX19LCJyb3cxQnV5YWJsZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjUyNzk3In0sIjEiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiI1Mjc5NyJ9LCIyIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYW1vdW50IjoiMzQ3MjMzIn19LCJtYW51YWxDdXRQcm9ncmVzcyI6IjAuMDAwMTIyMDcwMzEyNTAwMDAwMyIsIm1hbnVhbFBsYW50UHJvZ3Jlc3MiOiIwLjAwMDEyMjA3MDMxMjUwMDAwMDMiLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sIndvcmtzaG9wIjp7Im1pbmltaXplZCI6ZmFsc2UsImZvdW5kYXRpb25Qcm9ncmVzcyI6MTAwLCJmb3VuZGF0aW9uQ29udmVyc2lvbiI6eyJiYXNlUmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJnYWluUmVzb3VyY2UiOiIxMDAifSwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX0sImNvYWwiOnsibWluaW1pemVkIjpmYWxzZSwiY29hbCI6IjEuMTk4OTU3MzM0NjIxNDA0NmUzMiIsInRvdGFsQ29hbCI6IjEuMjUxNTEwMDAxODAxODUzNWUzMyIsImFzaCI6IjcuMDYxODA2ODk2OTU1NDQ3NWUxNiIsImFjdGl2ZUZpcmVzIjoiMCIsImJ1aWxkRmlyZSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjEuMzU5NDM4OTIwNTc2Mjg4MiJ9LCJhY3RpdmVCb25maXJlcyI6IjY0NTY5IiwiYnVpbGRCb25maXJlIjp7InJlc291cmNlIjowLCJhbW91bnQiOiI2NDU2OSJ9LCJhY3RpdmVLaWxucyI6IjQzOSIsImJ1aWxkS2lsbiI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjQzOSJ9LCJ3YXJtZXJDdXR0ZXJzIjp7InJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWV9LCJ3YXJtZXJQbGFudGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlfSwiYmFzaWNGZXJ0aWxpemVyIjp7InJlc291cmNlIjoiMTQ1Njg4MjYiLCJib3VnaHQiOnRydWV9LCJ1bmxvY2tCb25maXJlIjp7InJlc291cmNlIjowLCJib3VnaHQiOnRydWV9LCJkZWRpY2F0ZWRDdXR0ZXJzIjp7InJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWV9LCJkZWRpY2F0ZWRQbGFudGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlfSwiYmV0dGVyRmVydGlsaXplciI6eyJib3VnaHQiOnRydWV9LCJ1bmxvY2tLaWxuIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYm91Z2h0Ijp0cnVlfSwiaGVhdGVkQ3V0dGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYW1vdW50IjoiODA3NiJ9LCJoZWF0ZWRQbGFudGVycyI6eyJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYW1vdW50IjoiODA3NiJ9LCJtb3JlRmVydGlsaXplciI6eyJyZXNvdXJjZSI6IjE0NTY4ODI2IiwiYW1vdW50IjoiMjA4OCJ9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwiYWN0aXZlRHJpbGxzIjoiMTMyIiwiYnVpbGREcmlsbCI6eyJhbW91bnQiOiIxMzIifSwiZWZmaWNpZW50U21lbHRoZXIiOnsicmVzb3VyY2UiOiIxLjMzNjQ3Nzc5MTMyODI1MmUxNyIsImJvdWdodCI6dHJ1ZX19LCJlbHZlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJlbHZlcyI6eyJjdXR0ZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMDU2ODE4MTgxODE4MTgxODIiLCJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlLCJidXlhYmxlIjp7InJlc291cmNlIjoiMTAyODQzNjA2NjEwOC42NTk0IiwiYW1vdW50IjoiMzE5OCJ9fSwicGxhbnRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAwNTY4MTgxODE4MTgxODE4MiIsInJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWUsImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiIzMTk4In19LCJleHBhbmRlcnNFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAwNTY4MTgxODE4MTgxODE4MiIsInJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWUsImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOiI3Mzc5In19LCJoZWF0ZWRDdXR0ZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMDU2ODE4MTgxODE4MTgxODIiLCJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlLCJidXlhYmxlIjp7InJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJhbW91bnQiOiIyNzAifX0sImhlYXRlZFBsYW50ZXJzRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMDU2ODE4MTgxODE4MTgxODIiLCJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlLCJidXlhYmxlIjp7InJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJhbW91bnQiOiIyNzAifX0sImZlcnRpbGl6ZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAwNTY4MTgxODE4MTgxODE4MiIsInJlc291cmNlIjoiNzc3NDc4OTk3NjUuNDgzNzgiLCJib3VnaHQiOnRydWUsImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxNDU2ODgyNiIsImFtb3VudCI6IjEzOSJ9fSwic21hbGxGaXJlRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxMDI4NDM2MDY2MTA4LjY1OTQiLCJhbW91bnQiOjB9LCJ0b2dnbGUiOmZhbHNlLCJidXlQcm9ncmVzcyI6IjAuMDA1NjgxODE4MTgxODE4MTgyIiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZX0sImJvbmZpcmVFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6MCwiYW1vdW50IjowfSwidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDA1NjgxODE4MTgxODE4MTgyIiwicmVzb3VyY2UiOiI3Nzc0Nzg5OTc2NS40ODM3OCIsImJvdWdodCI6dHJ1ZX0sImtpbG5FbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImFtb3VudCI6IjEwMiJ9LCJ0b2dnbGUiOnRydWUsImJ1eVByb2dyZXNzIjoiMC4wMDU2ODE4MTgxODE4MTgxODIiLCJyZXNvdXJjZSI6Ijc3NzQ3ODk5NzY1LjQ4Mzc4IiwiYm91Z2h0Ijp0cnVlfSwicGFwZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAxNTYyNSIsImJvdWdodCI6dHJ1ZX0sImJveEVsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDE1NjI1IiwiYm91Z2h0Ijp0cnVlfSwiY2xvdGhFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAwNTY4MTgxODE4MTgxODE4MiIsImJvdWdodCI6dHJ1ZX19LCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9LCI1Ijp7ImVhcm5lZCI6dHJ1ZX0sIjYiOnsiZWFybmVkIjp0cnVlfSwiNyI6eyJlYXJuZWQiOnRydWV9LCI4Ijp7ImVhcm5lZCI6dHJ1ZX0sIjkiOnsiZWFybmVkIjp0cnVlfSwiMTAiOnsiZWFybmVkIjp0cnVlfSwiMTEiOnsiZWFybmVkIjp0cnVlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJjb2xsYXBzZU1pbGVzdG9uZXMiOnRydWV9LCJwYXBlciI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwYXBlciI6IjEuMzg0NzQ3MTUxMjY2NjExOWUxOCIsInRvdGFsUGFwZXIiOiIxLjM4NDc0NzE4OTk5OTk0NGUxOCIsInBhcGVyQ29udmVyc2lvbiI6eyJnYWluUmVzb3VyY2UiOiI0MDY5Ljk5OTk5OTk5OTk5OSJ9LCJib29rcyI6eyJjdXR0ZXJzQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiMzQifSwicGxhbnRlcnNCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiIzNCJ9LCJleHBhbmRlcnNCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiIzNCJ9LCJoZWF0ZWRDdXR0ZXJzQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiMzQifSwiaGVhdGVkUGxhbnRlcnNCb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiIzNCJ9LCJmZXJ0aWxpemVyQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiMzQifSwic21hbGxGaXJlQm9vayI6eyJyZXNvdXJjZSI6IjQwNjkuOTk5OTk5OTk5OTk5IiwiYW1vdW50IjoiMzQifSwiYm9uZmlyZUJvb2siOnsicmVzb3VyY2UiOiI0MDY5Ljk5OTk5OTk5OTk5OSIsImFtb3VudCI6IjM0In0sImtpbG5Cb29rIjp7InJlc291cmNlIjoiNDA2OS45OTk5OTk5OTk5OTkiLCJhbW91bnQiOiIzNCJ9LCJwYXBlckJvb2siOnsiYW1vdW50IjoiNiJ9LCJib3hCb29rIjp7ImFtb3VudCI6IjYifSwiY2xvdGhCb29rIjp7ImFtb3VudCI6IjM0In19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwidXBncmFkZXMiOnsiY2xvdGhVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sImRyaWxsaW5nVXBncmFkZSI6eyJib3VnaHQiOnRydWV9LCJvaWxVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX19fSwiYm94ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiYm94ZXMiOiI2NTc0MDY2NjU5MTAxNS4zOSIsInRvdGFsQm94ZXMiOiI2NTc1MTgzMjM1Nzg0My40IiwiYm94ZXNDb252ZXJzaW9uIjp7ImJhc2VSZXNvdXJjZSI6IjEwMjg0MzYwNjYxMDguNjU5NCIsImdhaW5SZXNvdXJjZSI6MH0sInVwZ3JhZGVzIjp7ImxvZ3NVcGdyYWRlIjp7InJlc291cmNlIjowLCJib3VnaHQiOnRydWV9LCJhc2hVcGdyYWRlIjp7InJlc291cmNlIjowLCJib3VnaHQiOnRydWV9LCJjb2FsVXBncmFkZSI6eyJyZXNvdXJjZSI6MCwiYm91Z2h0Ijp0cnVlfX0sImJ1eWFibGVzIjp7ImxvZ0JveGVzQnV5YWJsZSI6eyJyZXNvdXJjZSI6MCwiYW1vdW50IjoiMzcifSwiYXNoQm94ZXNCdXlhYmxlIjp7InJlc291cmNlIjowLCJhbW91bnQiOiIyMyJ9LCJjb2FsQm94ZXNCdXlhYmxlIjp7InJlc291cmNlIjowLCJhbW91bnQiOiIxOSJ9fSwicm93MlVwZ3JhZGVzIjp7Im9yZVVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwibWV0YWxVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sInBsYXN0aWNVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX19fSwibWV0YWwiOnsibWluaW1pemVkIjpmYWxzZSwib3JlIjoiNDc3OTAzMjguMzkxMjg0MDEiLCJiZXN0T3JlIjoiNzE5OTUxMzczLjI2NDk1NDkiLCJvcmVQcm9ncmVzcyI6IjAuMjM2OTk5OTk5OTk5OTI4NjYiLCJtZXRhbCI6IjUzNDQyOTExNDY4NC42MjY1IiwiYmVzdE1ldGFsIjoiMzg2MDI2MjcxMDg4MC44NDM4IiwidG90YWxNZXRhbCI6IjE2NzY0OTc1NTQxMTg0LjAyNyIsInNpbXBsZVBpY2theGUiOnsiYm91Z2h0Ijp0cnVlfSwiZG91YmxlUGlja2F4ZSI6eyJib3VnaHQiOmZhbHNlfSwiY3J1Y2libGUiOnsiYm91Z2h0Ijp0cnVlfSwiY29hbERyaWxsIjp7ImJvdWdodCI6dHJ1ZX0sImluZHVzdHJpYWxGdXJuYWNlIjp7ImJvdWdodCI6dHJ1ZX0sIm9yZURyaWxsIjp7ImFtb3VudCI6IjE2MiJ9LCJpbmR1c3RyaWFsQ3J1Y2libGUiOnsiYW1vdW50IjoiMTkifSwiYXV0b1NtZWx0RW5hYmxlZCI6dHJ1ZSwiaG90dGVyRm9yZ2UiOnsiYW1vdW50IjoiMjIifSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImVmZmljaWVudERyaWxsIjp7ImJvdWdodCI6dHJ1ZX19LCJjbG90aCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJjbG90aCI6IjQ4NzExIiwidG90YWxDbG90aCI6IjU2MTYxIiwid29vbCI6IjAiLCJzaGVlcCI6IjMyNjMiLCJidWlsZFBlbnMiOnsiYW1vdW50IjoiMTUxIn0sImJldHRlclNoZWFycyI6eyJhbW91bnQiOiIxODAifSwiZmFzdGVyU3Bpbm5pbmciOnsiYW1vdW50IjoiMjQ3In0sInRyZWVzVXBncmFkZXMiOnsidHJlZXNVcGdyYWRlMyI6eyJib3VnaHQiOnRydWV9LCJ0cmVlc1VwZ3JhZGUyIjp7ImJvdWdodCI6dHJ1ZX0sInRyZWVzVXBncmFkZTEiOnsiYm91Z2h0Ijp0cnVlfSwidHJlZXNVcGdyYWRlNCI6eyJib3VnaHQiOnRydWV9fSwibWV0YWxVcGdyYWRlcyI6eyJtZXRhbFVwZ3JhZGUzIjp7ImJvdWdodCI6dHJ1ZX0sIm1ldGFsVXBncmFkZTIiOnsiYm91Z2h0Ijp0cnVlfSwibWV0YWxVcGdyYWRlMSI6eyJib3VnaHQiOnRydWV9LCJtZXRhbFVwZ3JhZGU0Ijp7ImJvdWdodCI6dHJ1ZX19LCJwYXBlclVwZ3JhZGVzIjp7InBhcGVyVXBncmFkZTMiOnsiYm91Z2h0Ijp0cnVlfSwicGFwZXJVcGdyYWRlMiI6eyJib3VnaHQiOnRydWV9LCJwYXBlclVwZ3JhZGUxIjp7ImJvdWdodCI6dHJ1ZX0sInBhcGVyVXBncmFkZTQiOnsiYm91Z2h0Ijp0cnVlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJicmVlZGluZ1Byb2dyZXNzIjoxLCJzaGVhcmluZ1Byb2dyZXNzIjoxLCJzcGlubmluZ1Byb2dyZXNzIjoxfSwib2lsIjp7Im1pbmltaXplZCI6ZmFsc2UsIm9pbCI6IjE4NTA0NjY3OC4xMDA0NDQ4NSIsInRvdGFsT2lsIjoiMTYyMDc4NDkzMi4yMzYzNDA4IiwiZGVwdGgiOiIxMjEzNCIsImRyaWxsUHJvZ3Jlc3MiOiI0NTQ2MjUwNy45MTc2MDYzOSIsImFjdGl2ZUhlYXZ5IjoiNjEiLCJidWlsZEhlYXZ5Ijp7ImFtb3VudCI6IjYxIn0sImFjdGl2ZUhlYXZ5MiI6IjI1IiwiYnVpbGRIZWF2eTIiOnsiYW1vdW50IjoiMjUifSwiYWN0aXZlRXh0cmFjdG9yIjoiOSIsImJ1aWxkRXh0cmFjdG9yIjp7ImFtb3VudCI6IjkifSwiYWN0aXZlUHVtcCI6IjciLCJidWlsZFB1bXAiOnsiYW1vdW50IjoiNyJ9LCJhY3RpdmVCdXJuZXIiOiIyMiIsImJ1aWxkQnVybmVyIjp7ImFtb3VudCI6IjIyIn0sImFjdGl2ZVNtZWx0ZXIiOiI4IiwiYnVpbGRTbWVsdGVyIjp7ImFtb3VudCI6IjgifSwiZGVwdGhNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9LCI1Ijp7ImVhcm5lZCI6dHJ1ZX0sIjYiOnsiZWFybmVkIjp0cnVlfSwiNyI6eyJlYXJuZWQiOnRydWV9fSwiY29sbGFwc2VkRGVwdGhNaWxlc3RvbmVzIjpmYWxzZSwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sIm9pbE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfX0sImNvbGxhcHNlZE9pbE1pbGVzdG9uZXMiOnRydWV9LCJwbGFzdGljIjp7Im1pbmltaXplZCI6ZmFsc2UsInBsYXN0aWMiOiIzODgyMDEuNDQ5ODY5NDE2NCIsInRvdGFsUGxhc3RpYyI6IjIwNDgzMjc3LjEwMjY5MDQxNyIsImJ1aWxkUmVmaW5lcnkiOnsiYW1vdW50IjoiNTYifSwiYWN0aXZlUmVmaW5lcnkiOiI1NiIsInVwZ3JhZGVzIjp7InBhcGVyVG9vbHMiOnsiYm91Z2h0Ijp0cnVlfSwiYm94VG9vbHMiOnsiYm91Z2h0Ijp0cnVlfSwiY2xvdGhUb29scyI6eyJib3VnaHQiOnRydWV9fSwiZWxmVXBncmFkZXMiOnsicGFwZXJFbGYiOnsiYm91Z2h0Ijp0cnVlfSwiYm94RWxmIjp7ImJvdWdodCI6dHJ1ZX0sImNsb3RoRWxmIjp7ImJvdWdodCI6dHJ1ZX19LCJidXlhYmxlcyI6eyJwYXNzaXZlUGFwZXIiOnsiYW1vdW50IjoiMzkifSwicGFzc2l2ZUJveGVzIjp7ImFtb3VudCI6IjM5In0sImNsb3RoR2FpbnMiOnsiYW1vdW50IjoiMzIifX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwiZHllcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJkeWVzIjp7InJlZCI6eyJhbW91bnQiOiIxNzE4Mi43MjY5NzIwNDI4OTYiLCJidXlhYmxlIjp7ImFtb3VudCI6IjExIn19LCJ5ZWxsb3ciOnsiYW1vdW50IjoiMjAzMDYuODU5MTQ4Nzc3OTY3IiwiYnV5YWJsZSI6eyJhbW91bnQiOiIxMiJ9fSwiYmx1ZSI6eyJhbW91bnQiOiIyMzY5MS4zMzU2NzM1NzQyOTMiLCJidXlhYmxlIjp7ImFtb3VudCI6IjEzIn19LCJvcmFuZ2UiOnsiYW1vdW50IjoiMzc4IiwiYnV5YWJsZSI6eyJhbW91bnQiOiIyNyJ9fSwiZ3JlZW4iOnsiYW1vdW50IjoiMzc4IiwiYnV5YWJsZSI6eyJhbW91bnQiOiIyNyJ9fSwicHVycGxlIjp7ImFtb3VudCI6IjM3OCIsImJ1eWFibGUiOnsiYW1vdW50IjoiMjcifX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwidXBncmFkZXMiOnsiYmx1ZUR5ZVVwZyI6eyJib3VnaHQiOnRydWV9LCJyZWREeWVVcGciOnsiYm91Z2h0Ijp0cnVlfSwieWVsbG93RHllVXBnIjp7ImJvdWdodCI6dHJ1ZX0sInllbGxvd0R5ZVVwZzIiOnsiYm91Z2h0Ijp0cnVlfSwicmVkRHllVXBnMiI6eyJib3VnaHQiOnRydWV9LCJibHVlRHllVXBnMiI6eyJib3VnaHQiOnRydWV9LCJjb2FsVXBnIjp7ImJvdWdodCI6dHJ1ZX19fSwibWFuYWdlbWVudCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJlbGZUcmFpbmluZyI6eyJjdXR0ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjpmYWxzZX0sIjEiOnsiZWFybmVkIjpmYWxzZX0sIjIiOnsiZWFybmVkIjpmYWxzZX19fSwicGxhbnRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjAsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOmZhbHNlfSwiMSI6eyJlYXJuZWQiOmZhbHNlfSwiMiI6eyJlYXJuZWQiOmZhbHNlfX19LCJleHBhbmRlcnNFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowfSwiaGVhdGVkQ3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6MH0sImhlYXRlZFBsYW50ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowfSwiZmVydGlsaXplckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjB9LCJzbWFsbGZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowfSwiYm9uZmlyZUVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOjB9LCJmaXJlRWxmVHJhaW5pbmciOnsiMiI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjowfX19fX0sInVzaW5nTG9nIjpmYWxzZX0=","./../../saves/Day 12 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0xIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJwbGFzdGljIl0sInRpbWUiOjE2NzA5NDY5MzQ2NTQsImF1dG9zYXZlIjp0cnVlLCJvZmZsaW5lUHJvZCI6ZmFsc2UsIm9mZmxpbmVUaW1lIjpudWxsLCJ0aW1lUGxheWVkIjo5MTgyOC45MTUwMDAwNzM5Niwia2VlcEdvaW5nIjpmYWxzZSwibW9kSUQiOiJhZHZlbnQtaW5jcmVtZW50YWwiLCJtb2RWZXJzaW9uIjoiMC41IiwibGF5ZXJzIjp7Im1haW4iOnsibWluaW1pemVkIjpmYWxzZSwiZGF5cyI6eyIwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIzIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjQiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI2Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI5Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjExIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTQiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE1Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTciOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE4Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxOSI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjAiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIxIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMiI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjMiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX19LCJkYXkiOjEzfSwidHJlZXMiOnsibWluaW1pemVkIjpmYWxzZSwibG9ncyI6IjYuMDUzMzIxMTY0OTc1NDg4ZTI5IiwidG90YWxMb2dzIjoiMi43MzUyNjg5MDYxNzI2NThlMzAiLCJzYXBsaW5ncyI6IjAiLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiMSI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiMiI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiMyI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiNCI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCIxIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCIyIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCIzIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCI0Ijp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjkxODU5MCJ9LCIxIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJhbW91bnQiOiI5MTg1OTAifSwiMiI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiMTM0OTQ1NCJ9fSwibWFudWFsQ3V0UHJvZ3Jlc3MiOiIwLjAwMDEyMjA3MDMxMjUwMDAwMDMiLCJtYW51YWxQbGFudFByb2dyZXNzIjoiMC4wMDAxMjIwNzAzMTI1MDAwMDAzIiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJ3b3Jrc2hvcCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJmb3VuZGF0aW9uUHJvZ3Jlc3MiOiIyNTMiLCJmb3VuZGF0aW9uQ29udmVyc2lvbiI6eyJiYXNlUmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImdhaW5SZXNvdXJjZSI6MTAwfSwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMiI6eyJlYXJuZWQiOmZhbHNlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUzIjp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTQiOnsiZWFybmVkIjpmYWxzZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lNSI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6ZmFsc2V9LCJjb2FsIjp7Im1pbmltaXplZCI6ZmFsc2UsImNvYWwiOiIyLjYzMzIxNDA1MDQ1ODE2MmU0MyIsInRvdGFsQ29hbCI6IjIuNzQ0MzY1MTgxNTc4Njc2M2U0MyIsImFzaCI6IjEuMTA0Nzc1NzM3OTQwNTMwN2UzMyIsImFjdGl2ZUZpcmVzIjoiMjEzNTY0My45ODIzNzc0NzciLCJidWlsZEZpcmUiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjIxMzU2NDMuOTgyMzc3NDc3In0sImFjdGl2ZUJvbmZpcmVzIjoiMjcxNDY1MCIsImJ1aWxkQm9uZmlyZSI6eyJyZXNvdXJjZSI6IjMwMTciLCJhbW91bnQiOiIyNzE0NjUwIn0sImFjdGl2ZUtpbG5zIjoiMTU0MCIsImJ1aWxkS2lsbiI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiMTU0MCJ9LCJ3YXJtZXJDdXR0ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlfSwid2FybWVyUGxhbnRlcnMiOnsicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWV9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsicmVzb3VyY2UiOiI1NDU2NDA4NDYuMTUzMzU5OSIsImJvdWdodCI6dHJ1ZX0sInVubG9ja0JvbmZpcmUiOnsicmVzb3VyY2UiOiIzMDE3IiwiYm91Z2h0Ijp0cnVlfSwiZGVkaWNhdGVkQ3V0dGVycyI6eyJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZX0sImRlZGljYXRlZFBsYW50ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlfSwiYmV0dGVyRmVydGlsaXplciI6eyJib3VnaHQiOnRydWV9LCJ1bmxvY2tLaWxuIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCJoZWF0ZWRDdXR0ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYW1vdW50IjoiNjgzMzEifSwiaGVhdGVkUGxhbnRlcnMiOnsicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJhbW91bnQiOiI2ODMzMSJ9LCJtb3JlRmVydGlsaXplciI6eyJyZXNvdXJjZSI6IjU0NTY0MDg0Ni4xNTMzNTk5IiwiYW1vdW50IjoiMTE5MDE5In0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJhY3RpdmVEcmlsbHMiOiIxNTIiLCJidWlsZERyaWxsIjp7ImFtb3VudCI6IjE1MiJ9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJib3VnaHQiOnRydWV9fSwiZWx2ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZWx2ZXMiOnsiY3V0dGVyc0VsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJhbW91bnQiOiI2NDUxIn0sImJ1eVByb2dyZXNzIjoiMC4wMDI1IiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjc1MTk5OTk5OTk3OTk0MDN9LCJwbGFudGVyc0VsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJhbW91bnQiOiI2NDUxIn0sImJ1eVByb2dyZXNzIjoiMC4wMDI1IiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjgyMzk5OTk5OTk3OTk5NjN9LCJleHBhbmRlcnNFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiMTg0MTAifSwiYnV5UHJvZ3Jlc3MiOiIwLjAwMjUiLCJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuNDk1OTk5OTk5OTgwMTY3NH0sImhlYXRlZEN1dHRlcnNFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImFtb3VudCI6IjM2MyJ9LCJidXlQcm9ncmVzcyI6IjAuMDAyNSIsInJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MC4xMzU5OTk5OTk5ODAyMjEyOH0sImhlYXRlZFBsYW50ZXJzRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJhbW91bnQiOiIzNjMifSwiYnV5UHJvZ3Jlc3MiOiIwLjAwMjUiLCJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuMjk1OTk5OTk5OTgwNjIyOX0sImZlcnRpbGl6ZXJFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjU0NTY0MDg0Ni4xNTMzNTk5IiwiYW1vdW50IjoiMjU1In0sImJ1eVByb2dyZXNzIjoiMC4wMDI1IiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjMwNzk5OTk5OTk4MDc5Mzg2fSwic21hbGxGaXJlRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjMwMTcifSwidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDAxMzk3NTAwMjYyNjIzMzgxNyIsInJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MC4xNzk5OTk5OTk5ODA5OTk4fSwiYm9uZmlyZUVsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMzAxNyIsImFtb3VudCI6IjQxMCJ9LCJ0b2dnbGUiOnRydWUsImJ1eVByb2dyZXNzIjoiMC4wMDA5OTAyMzIxNTE2OTkxMjciLCJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuMzY3OTk5OTk5OTgxMDgwMzV9LCJraWxuRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjE0NCJ9LCJ0b2dnbGUiOnRydWUsImJ1eVByb2dyZXNzIjoiMC4wMDI1IiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjc0Mzk5OTk5OTk4MTE1MjZ9LCJwYXBlckVsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDEyNSIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuNDgzOTk5OTk5OTg5MzU4N30sImJveEVsZiI6eyJidXlQcm9ncmVzcyI6IjAuMDEyNSIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuNjM5OTk5OTk5OTg5MTk3N30sImNsb3RoRWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMDI1IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MC4yMzE5OTk5OTk5Nzk2MzUxNn0sIm1pbmluZ0RyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sImhlYXZ5RHJpbGxFbGYiOnsidG9nZ2xlIjpmYWxzZSwiYnV5UHJvZ3Jlc3MiOjAsImFtb3VudE9mVGltZXNEb25lIjowLCJib3VnaHQiOmZhbHNlfSwib2lsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sIm1ldGFsRWxmIjp7ImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX19LCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9LCI1Ijp7ImVhcm5lZCI6dHJ1ZX0sIjYiOnsiZWFybmVkIjp0cnVlfSwiNyI6eyJlYXJuZWQiOnRydWV9LCI4Ijp7ImVhcm5lZCI6dHJ1ZX0sIjkiOnsiZWFybmVkIjp0cnVlfSwiMTAiOnsiZWFybmVkIjp0cnVlfSwiMTEiOnsiZWFybmVkIjp0cnVlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6ZmFsc2UsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGFwZXIiOnsibWluaW1pemVkIjpmYWxzZSwicGFwZXIiOiIyLjM5ODY2Mjk0MjI4NDQyNzJlMzAiLCJ0b3RhbFBhcGVyIjoiMi40MTEyODcwOTg5MTk1MmUzMCIsInBhcGVyQ29udmVyc2lvbiI6eyJnYWluUmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjcifSwiYm9va3MiOnsiY3V0dGVyc0Jvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiI5MCJ9LCJwbGFudGVyc0Jvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiI5MCJ9LCJleHBhbmRlcnNCb29rIjp7InJlc291cmNlIjoiMTQxODIuOTk5OTk5OTk5OTI3IiwiYW1vdW50IjoiOTAifSwiaGVhdGVkQ3V0dGVyc0Jvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiI5MCJ9LCJoZWF0ZWRQbGFudGVyc0Jvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiI5MCJ9LCJmZXJ0aWxpemVyQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjkwIn0sInNtYWxsRmlyZUJvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiI5MCJ9LCJib25maXJlQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjkwIn0sImtpbG5Cb29rIjp7InJlc291cmNlIjoiMTQxODIuOTk5OTk5OTk5OTI3IiwiYW1vdW50IjoiOTAifSwicGFwZXJCb29rIjp7ImFtb3VudCI6IjEwIn0sImJveEJvb2siOnsiYW1vdW50IjoiMTAifSwiY2xvdGhCb29rIjp7ImFtb3VudCI6IjkwIn0sIm1pbmluZ0RyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJoZWF2eURyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJvaWxCb29rIjp7ImFtb3VudCI6MH0sIm1ldGFsQm9vayI6eyJhbW91bnQiOjB9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInVwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOnRydWV9LCJkcmlsbGluZ1VwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwib2lsVXBncmFkZSI6eyJib3VnaHQiOnRydWV9fX0sImJveGVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImJveGVzIjoiMy40MzQ3ODcyOTk2NzYwNzMzZTI0IiwidG90YWxCb3hlcyI6IjMuNDM1Nzg3NDAxOTAzMjU3N2UyNCIsImJveGVzQ29udmVyc2lvbiI6eyJiYXNlUmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImdhaW5SZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIn0sInVwZ3JhZGVzIjp7ImxvZ3NVcGdyYWRlIjp7InJlc291cmNlIjoiODAxMy45OTk5OTk5OTk5OTMiLCJib3VnaHQiOnRydWV9LCJhc2hVcGdyYWRlIjp7InJlc291cmNlIjoiODAxMy45OTk5OTk5OTk5OTMiLCJib3VnaHQiOnRydWV9LCJjb2FsVXBncmFkZSI6eyJyZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIiwiYm91Z2h0Ijp0cnVlfX0sImJ1eWFibGVzIjp7ImxvZ0JveGVzQnV5YWJsZSI6eyJyZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIiwiYW1vdW50IjoiMTMxIn0sImFzaEJveGVzQnV5YWJsZSI6eyJyZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIiwiYW1vdW50IjoiNjMifSwiY29hbEJveGVzQnV5YWJsZSI6eyJyZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIiwiYW1vdW50IjoiNDkifX0sInJvdzJVcGdyYWRlcyI6eyJvcmVVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sIm1ldGFsVXBncmFkZSI6eyJib3VnaHQiOnRydWV9LCJwbGFzdGljVXBncmFkZSI6eyJib3VnaHQiOnRydWV9fSwicm93M1VwZ3JhZGVzIjp7ImNsb3RoVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwiZHllVXBncmFkZSI6eyJib3VnaHQiOmZhbHNlfSwieHBVcGdyYWRlIjp7ImJvdWdodCI6ZmFsc2V9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJtZXRhbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJvcmUiOiIyNjk5NjEzNTAyLjE3NjI4NTciLCJiZXN0T3JlIjoiNTYyNjc2NTU1My40MjY0MTciLCJvcmVQcm9ncmVzcyI6IjAuMDc5OTk5OTk5OTk5ODAzNzgiLCJtZXRhbCI6IjMxODM3MjQ1NTU3MDguOTI3MiIsImJlc3RNZXRhbCI6IjcwODU5OTQzNDA4MDA4LjcyIiwidG90YWxNZXRhbCI6IjQzNTA3NjA2MTAwMjg5My4yIiwic2ltcGxlUGlja2F4ZSI6eyJib3VnaHQiOnRydWV9LCJkb3VibGVQaWNrYXhlIjp7ImJvdWdodCI6ZmFsc2V9LCJjcnVjaWJsZSI6eyJib3VnaHQiOnRydWV9LCJjb2FsRHJpbGwiOnsiYm91Z2h0Ijp0cnVlfSwiaW5kdXN0cmlhbEZ1cm5hY2UiOnsiYm91Z2h0Ijp0cnVlfSwib3JlRHJpbGwiOnsiYW1vdW50IjoiMTkzIn0sImluZHVzdHJpYWxDcnVjaWJsZSI6eyJhbW91bnQiOiIyMCJ9LCJhdXRvU21lbHRFbmFibGVkIjp0cnVlLCJob3R0ZXJGb3JnZSI6eyJhbW91bnQiOiIzMSJ9LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwiZWZmaWNpZW50RHJpbGwiOnsiYm91Z2h0Ijp0cnVlfX0sImNsb3RoIjp7Im1pbmltaXplZCI6ZmFsc2UsImNsb3RoIjoiMjAwNDIxOTU3IiwidG90YWxDbG90aCI6IjIwMTUzODEzNyIsIndvb2wiOiIwIiwic2hlZXAiOiI0MTg4MTA4IiwiYnVpbGRQZW5zIjp7ImFtb3VudCI6Ijk1OSJ9LCJiZXR0ZXJTaGVhcnMiOnsiYW1vdW50IjoiODI1In0sImZhc3RlclNwaW5uaW5nIjp7ImFtb3VudCI6IjE0NzEifSwidHJlZXNVcGdyYWRlcyI6eyJ0cmVlc1VwZ3JhZGUzIjp7ImJvdWdodCI6dHJ1ZX0sInRyZWVzVXBncmFkZTIiOnsiYm91Z2h0Ijp0cnVlfSwidHJlZXNVcGdyYWRlMSI6eyJib3VnaHQiOnRydWV9LCJ0cmVlc1VwZ3JhZGU0Ijp7ImJvdWdodCI6dHJ1ZX19LCJtZXRhbFVwZ3JhZGVzIjp7Im1ldGFsVXBncmFkZTMiOnsiYm91Z2h0Ijp0cnVlfSwibWV0YWxVcGdyYWRlMiI6eyJib3VnaHQiOnRydWV9LCJtZXRhbFVwZ3JhZGUxIjp7ImJvdWdodCI6dHJ1ZX0sIm1ldGFsVXBncmFkZTQiOnsiYm91Z2h0Ijp0cnVlfX0sInBhcGVyVXBncmFkZXMiOnsicGFwZXJVcGdyYWRlMyI6eyJib3VnaHQiOnRydWV9LCJwYXBlclVwZ3JhZGUyIjp7ImJvdWdodCI6dHJ1ZX0sInBhcGVyVXBncmFkZTEiOnsiYm91Z2h0Ijp0cnVlfSwicGFwZXJVcGdyYWRlNCI6eyJib3VnaHQiOnRydWV9fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sImJyZWVkaW5nUHJvZ3Jlc3MiOjEsInNoZWFyaW5nUHJvZ3Jlc3MiOjEsInNwaW5uaW5nUHJvZ3Jlc3MiOjF9LCJvaWwiOnsibWluaW1pemVkIjpmYWxzZSwib2lsIjoiNDY2NDk1NDI5LjIxODY0MSIsInRvdGFsT2lsIjoiMTAxMzkyMzI1MjMuODE4OTYiLCJkZXB0aCI6Ijk4MTYiLCJkcmlsbFByb2dyZXNzIjoiMzQ2NzgyOC4zNzE2NjQ4MDkiLCJhY3RpdmVIZWF2eSI6IjczIiwiYnVpbGRIZWF2eSI6eyJhbW91bnQiOiI3MyJ9LCJhY3RpdmVIZWF2eTIiOiIyOCIsImJ1aWxkSGVhdnkyIjp7ImFtb3VudCI6IjI4In0sImFjdGl2ZUV4dHJhY3RvciI6IjEwIiwiYnVpbGRFeHRyYWN0b3IiOnsiYW1vdW50IjoiMTAifSwiYWN0aXZlUHVtcCI6IjgiLCJidWlsZFB1bXAiOnsiYW1vdW50IjoiOCJ9LCJhY3RpdmVCdXJuZXIiOiIyNiIsImJ1aWxkQnVybmVyIjp7ImFtb3VudCI6IjI2In0sImFjdGl2ZVNtZWx0ZXIiOiI4IiwiYnVpbGRTbWVsdGVyIjp7ImFtb3VudCI6IjgifSwiZGVwdGhNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9LCI1Ijp7ImVhcm5lZCI6dHJ1ZX0sIjYiOnsiZWFybmVkIjp0cnVlfSwiNyI6eyJlYXJuZWQiOnRydWV9fSwiY29sbGFwc2VkRGVwdGhNaWxlc3RvbmVzIjpmYWxzZSwicm93MVVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwicm93MlVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX0sIjMiOnsiYm91Z2h0Ijp0cnVlfSwiNCI6eyJib3VnaHQiOnRydWV9fSwib2lsTWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9fSwiY29sbGFwc2VkT2lsTWlsZXN0b25lcyI6ZmFsc2UsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9fSwicGxhc3RpYyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJwbGFzdGljIjoiMjI2ODYzMTUuODIxMjc2MDg0IiwidG90YWxQbGFzdGljIjoiOTgyMDkxNjkuNTM1NjgwMjYiLCJidWlsZFJlZmluZXJ5Ijp7ImFtb3VudCI6IjcwIn0sImFjdGl2ZVJlZmluZXJ5IjoiNzAiLCJ1cGdyYWRlcyI6eyJwYXBlclRvb2xzIjp7ImJvdWdodCI6dHJ1ZX0sImJveFRvb2xzIjp7ImJvdWdodCI6dHJ1ZX0sImNsb3RoVG9vbHMiOnsiYm91Z2h0Ijp0cnVlfX0sImVsZlVwZ3JhZGVzIjp7InBhcGVyRWxmIjp7ImJvdWdodCI6dHJ1ZX0sImJveEVsZiI6eyJib3VnaHQiOnRydWV9LCJjbG90aEVsZiI6eyJib3VnaHQiOnRydWV9fSwiYnV5YWJsZXMiOnsicGFzc2l2ZVBhcGVyIjp7ImFtb3VudCI6IjQwIn0sInBhc3NpdmVCb3hlcyI6eyJhbW91bnQiOiI0MiJ9LCJjbG90aEdhaW5zIjp7ImFtb3VudCI6IjQwIn19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImR5ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZHllcyI6eyJyZWQiOnsiYW1vdW50IjoiNTgzMjQ1OS4zMjQ3MjE3NTYiLCJidXlhYmxlIjp7ImFtb3VudCI6IjI4In19LCJ5ZWxsb3ciOnsiYW1vdW50IjoiNTgzMjQ1OS4zMjQ3MjE3NTYiLCJidXlhYmxlIjp7ImFtb3VudCI6IjI4In19LCJibHVlIjp7ImFtb3VudCI6IjU0MzAyMjAuNzUwNjAzMDE1IiwiYnV5YWJsZSI6eyJhbW91bnQiOiIyNyJ9fSwib3JhbmdlIjp7ImFtb3VudCI6IjEwNTYiLCJidXlhYmxlIjp7ImFtb3VudCI6IjMyIn19LCJncmVlbiI6eyJhbW91bnQiOiIxMDU2IiwiYnV5YWJsZSI6eyJhbW91bnQiOiIzMiJ9fSwicHVycGxlIjp7ImFtb3VudCI6IjEwNTYiLCJidXlhYmxlIjp7ImFtb3VudCI6IjMyIn19fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInVwZ3JhZGVzIjp7ImJsdWVEeWVVcGciOnsiYm91Z2h0Ijp0cnVlfSwicmVkRHllVXBnIjp7ImJvdWdodCI6dHJ1ZX0sInllbGxvd0R5ZVVwZyI6eyJib3VnaHQiOnRydWV9LCJ5ZWxsb3dEeWVVcGcyIjp7ImJvdWdodCI6dHJ1ZX0sInJlZER5ZVVwZzIiOnsiYm91Z2h0Ijp0cnVlfSwiYmx1ZUR5ZVVwZzIiOnsiYm91Z2h0Ijp0cnVlfSwiY29hbFVwZyI6eyJib3VnaHQiOnRydWV9fX0sIm1hbmFnZW1lbnQiOnsibWluaW1pemVkIjpmYWxzZSwiZWxmVHJhaW5pbmciOnsiY3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjEyNDA0MS43NDczNDQ4NTAwNyIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjI0ODAzOS4xNjUzMzQ3MjgwNSIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJleHBhbmRlcnNFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiMzcyMDAxLjc0MTMzODQ2NTEzIiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImhlYXRlZEN1dHRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiI0OTYxMTIuNzI5NjQ1ODMxODYiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwiaGVhdGVkUGxhbnRlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiI2MjAwNTkuMzg4MTQwOTExIiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImZlcnRpbGl6ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiNzQ0MTM3LjI0Mzg3OTY3NDEiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwic21hbGxmaXJlRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6Ijg2ODE3Ny4zMjg3MDY0MDg3IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImJvbmZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiOTkyMDA0Ljc5MTQ0MjU3NTQiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjpmYWxzZX0sIjQiOnsiZWFybmVkIjpmYWxzZX19fSwia2lsbkVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiIxMTE2Mjc1LjYwODAzNzg4NyIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJwYXBlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiI0MTM0MDQuMDI5OTIyOTUzNCIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19LCJib3hFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiNDU0NjcwLjExNDQ3NDY5MjU2IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6ZmFsc2V9LCI0Ijp7ImVhcm5lZCI6ZmFsc2V9fX0sImNsb3RoRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjE0ODgxODguODA2Mjg3MjA3NCIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOmZhbHNlfSwiNCI6eyJlYXJuZWQiOmZhbHNlfX19fSwiY3VycmVudFNob3duIjoiU3RhciIsImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJ0ZWFjaGluZyI6eyJib3VnaHQiOnRydWV9LCJzY2hvb2xzIjp7ImFtb3VudCI6IjMifSwiY2xhc3Nyb29tcyI6eyJhbW91bnQiOiIxMiJ9LCJjbGFzc3Jvb21VcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sImZvY3VzTXVsdGlwbGllciI6IjExLjk4ODU5ODQ1Mjk4ODE3MSIsInVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6ZmFsc2V9fSwiZm9jdXNUYXJnZXRzIjp7IkphY2siOnRydWUsIlN0YXIiOnRydWUsIlNub3diYWxsIjp0cnVlLCJJdnkiOnRydWV9LCJmb2N1c0Nvb2xkb3duIjo2LjU0MTAwMDAwMDAwMDAxMiwiZm9jdXNUaW1lIjoxLjU0MTAwMDAwMDAwMDAwM319LCJhdXRvUGF1c2UiOnRydWUsInVzaW5nTG9nIjp0cnVlfQ==","./../../saves/Day 13 Complete.txt":"eyJpZCI6ImFkdmVudC1pbmNyZW1lbnRhbC0xIiwiZGV2U3BlZWQiOjAsIm5hbWUiOiJEZWZhdWx0IFNhdmUiLCJ0YWJzIjpbIm1haW4iLCJkeWVzIl0sInRpbWUiOjE2NzEwODMzMjMzNDUsImF1dG9zYXZlIjp0cnVlLCJvZmZsaW5lUHJvZCI6ZmFsc2UsIm9mZmxpbmVUaW1lIjpudWxsLCJ0aW1lUGxheWVkIjo5NzIyOS4yMzEwMDAwNzA5Mywia2VlcEdvaW5nIjpmYWxzZSwibW9kSUQiOiJhZHZlbnQtaW5jcmVtZW50YWwiLCJtb2RWZXJzaW9uIjoiMC41IiwibGF5ZXJzIjp7Im1haW4iOnsibWluaW1pemVkIjpmYWxzZSwiZGF5cyI6eyIwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMiI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIzIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjQiOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiNSI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI2Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjciOnsib3BlbmVkIjp0cnVlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiOCI6eyJvcGVuZWQiOnRydWUsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCI5Ijp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEwIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjExIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEyIjp7Im9wZW5lZCI6dHJ1ZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjEzIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTUiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE2Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIxNyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMTgiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjE5Ijp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMCI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfSwiMjEiOnsib3BlbmVkIjpmYWxzZSwicmVjZW50bHlVcGRhdGVkIjpmYWxzZX0sIjIyIjp7Im9wZW5lZCI6ZmFsc2UsInJlY2VudGx5VXBkYXRlZCI6ZmFsc2V9LCIyMyI6eyJvcGVuZWQiOmZhbHNlLCJyZWNlbnRseVVwZGF0ZWQiOmZhbHNlfX0sImRheSI6MTR9LCJ0cmVlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJsb2dzIjoiNi4zODEyNTE1NTg2NDg2MTllMzciLCJ0b3RhbExvZ3MiOiIxLjM2NDEyNDAxMzg4MTEzNDhlMzkiLCJzYXBsaW5ncyI6IjQ0MTY2ODI5Mjc3NjMwLjciLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiMSI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiMiI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiMyI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfSwiNCI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYm91Z2h0Ijp0cnVlfX0sInJvdzJVcGdyYWRlcyI6eyIwIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCIxIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCIyIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCIzIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCI0Ijp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9fSwicm93MUJ1eWFibGVzIjp7IjAiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjEyOTIyODIifSwiMSI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiMTMzMDAxNyJ9LCIyIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJhbW91bnQiOiIxOTQ0MjM2In19LCJtYW51YWxDdXRQcm9ncmVzcyI6IjAuMDAwMDA3NjI5Mzk0NTMxMjQ5OTg0IiwibWFudWFsUGxhbnRQcm9ncmVzcyI6IjAuMDAwMDA3NjI5Mzk0NTMxMjQ5OTg0IiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e319LCJ3b3Jrc2hvcCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJmb3VuZGF0aW9uUHJvZ3Jlc3MiOiI3MTciLCJmb3VuZGF0aW9uQ29udmVyc2lvbiI6eyJiYXNlUmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImdhaW5SZXNvdXJjZSI6MTAwfSwibWlsZXN0b25lcyI6eyJsb2dHYWluTWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvQ3V0TWlsZXN0b25lMSI6eyJlYXJuZWQiOnRydWV9LCJhdXRvUGxhbnRNaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9DdXRNaWxlc3RvbmUyIjp7ImVhcm5lZCI6dHJ1ZX0sImF1dG9QbGFudE1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTIiOnsiZWFybmVkIjp0cnVlfSwibW9yZVBsYW50c01pbGVzdG9uZTEiOnsiZWFybmVkIjp0cnVlfSwibG9nR2Fpbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmUxIjp7ImVhcm5lZCI6dHJ1ZX0sImV4dHJhRXhwYW5zaW9uTWlsZXN0b25lMiI6eyJlYXJuZWQiOnRydWV9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTMiOnsiZWFybmVkIjp0cnVlfSwiZXh0cmFFeHBhbnNpb25NaWxlc3RvbmU0Ijp7ImVhcm5lZCI6ZmFsc2V9LCJleHRyYUV4cGFuc2lvbk1pbGVzdG9uZTUiOnsiZWFybmVkIjpmYWxzZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOmZhbHNlfSwiY29hbCI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJjb2FsIjoiNS42ODEwMTc4MzkyNTIyMjVlNTgiLCJ0b3RhbENvYWwiOiI1LjY4MTAxODk1MDM2NDg3M2U1OCIsImFzaCI6IjYuNjc2NjU3OTc0NjEwNjUwNWU0NCIsImFjdGl2ZUZpcmVzIjoiMCIsImJ1aWxkRmlyZSI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiMCJ9LCJhY3RpdmVCb25maXJlcyI6IjExMjAxMjU2MzQwIiwiYnVpbGRCb25maXJlIjp7InJlc291cmNlIjoiMzAxNyIsImFtb3VudCI6IjExMjAxMjU2MzQwIn0sImFjdGl2ZUtpbG5zIjoiMjM4NyIsImJ1aWxkS2lsbiI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiMjM4NyJ9LCJ3YXJtZXJDdXR0ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlfSwid2FybWVyUGxhbnRlcnMiOnsicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWV9LCJiYXNpY0ZlcnRpbGl6ZXIiOnsicmVzb3VyY2UiOiI1NDU2NDA4NDYuMTUzMzU5OSIsImJvdWdodCI6dHJ1ZX0sInVubG9ja0JvbmZpcmUiOnsicmVzb3VyY2UiOiIzMDE3IiwiYm91Z2h0Ijp0cnVlfSwiZGVkaWNhdGVkQ3V0dGVycyI6eyJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZX0sImRlZGljYXRlZFBsYW50ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlfSwiYmV0dGVyRmVydGlsaXplciI6eyJib3VnaHQiOnRydWV9LCJ1bmxvY2tLaWxuIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJib3VnaHQiOnRydWV9LCJoZWF0ZWRDdXR0ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYW1vdW50IjoiNTcxODAzIn0sImhlYXRlZFBsYW50ZXJzIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYW1vdW50IjoiNTcxODAzIn0sIm1vcmVGZXJ0aWxpemVyIjp7InJlc291cmNlIjoiNTQ1NjQwODQ2LjE1MzM1OTkiLCJhbW91bnQiOiIxMzMyNTQyIn0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJhY3RpdmVEcmlsbHMiOiI1MTciLCJidWlsZERyaWxsIjp7ImFtb3VudCI6IjUxNyJ9LCJlZmZpY2llbnRTbWVsdGhlciI6eyJib3VnaHQiOnRydWV9LCJhcnNvbmlzdEFzc2lzdGFuY2UiOnsiYm91Z2h0IjpmYWxzZX0sInJlZmluZWRDb2FsIjp7ImJvdWdodCI6ZmFsc2V9LCJjb2xvcmVkRmlyZSI6eyJib3VnaHQiOmZhbHNlfX0sImVsdmVzIjp7Im1pbmltaXplZCI6ZmFsc2UsImVsdmVzIjp7ImN1dHRlcnNFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjE4MDA3NjU0MDEyNDU5LjM2IiwiYW1vdW50IjoiNjQ1MSJ9LCJidXlQcm9ncmVzcyI6IjAuMDAxNzEwNDA0NjExNjUzNzQwMiIsInJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MC40OTYwMDAwMDAxNzAxMzQ1N30sInBsYW50ZXJzRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjY0NTEifSwiYnV5UHJvZ3Jlc3MiOiIwLjAwMTcxMDQwNDYxMTY1Mzc0MDIiLCJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuNTY4MDAwMDAwMTcwNTkyfSwiZXhwYW5kZXJzRWxmIjp7ImJ1eWFibGUiOnsicmVzb3VyY2UiOiIxODAwNzY1NDAxMjQ1OS4zNiIsImFtb3VudCI6IjE4NDEwIn0sImJ1eVByb2dyZXNzIjoiMC4wMDE3MTA0MDQ2MTE2NTM3NDAyIiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjI0MDAwMDAwMDE3MDUwMzgyfSwiaGVhdGVkQ3V0dGVyc0VsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYW1vdW50IjoiMzYzIn0sImJ1eVByb2dyZXNzIjoiMC4wMDEyNDM0MjE3MTMxNjkwODc4IiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjY0NDAwMDAwMDE3MTQwOTd9LCJoZWF0ZWRQbGFudGVyc0VsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYW1vdW50IjoiMzYzIn0sImJ1eVByb2dyZXNzIjoiMC4wMDA1OTk4MTkyMTcwNDA4MTczIiwicmVzb3VyY2UiOiIxMTc5OTk3ODgxMDg0Ljk3NjgiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjQ4MDAwMDAwMDE3MzU4MjQ2fSwiZmVydGlsaXplckVsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiNTQ1NjQwODQ2LjE1MzM1OTkiLCJhbW91bnQiOiIyNTUifSwiYnV5UHJvZ3Jlc3MiOiIwLjAwMTE3MjQwMzM0OTk4MzI5NDgiLCJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuODA4MDAwMDAwMTcyODYwN30sInNtYWxsRmlyZUVsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJhbW91bnQiOiIzMDE3In0sInRvZ2dsZSI6dHJ1ZSwiYnV5UHJvZ3Jlc3MiOiIwLjAwMDc2NDEzNzAyODczNTM4NzEiLCJyZXNvdXJjZSI6IjExNzk5OTc4ODEwODQuOTc2OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuODgwMDAwMDAwMTczNDMxOH0sImJvbmZpcmVFbGYiOnsiYnV5YWJsZSI6eyJyZXNvdXJjZSI6IjMwMTciLCJhbW91bnQiOiI0MTAifSwidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDAxMjYwMzgyODk4Nzg2NDI0NiIsInJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MC41MDAwMDAwMDAxNzg1NjY1fSwia2lsbkVsZiI6eyJidXlhYmxlIjp7InJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJhbW91bnQiOiIxNDQifSwidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDAxNDQ0OTg0NzU2MjY2OTA2NiIsInJlc291cmNlIjoiMTE3OTk5Nzg4MTA4NC45NzY4IiwiYm91Z2h0Ijp0cnVlLCJhbW91bnRPZlRpbWVzRG9uZSI6MC4zNDQwMDAwMDAxNzkwNzIyfSwicGFwZXJFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAxMTIzODA5NTIzODI3NjQ1OCIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuNDIwMDAwMDAwMDAzMzk5fSwiYm94RWxmIjp7ImJ1eVByb2dyZXNzIjoiMC4wMDUyODU3MTQyODU4OTQ0MDIiLCJib3VnaHQiOnRydWUsImFtb3VudE9mVGltZXNEb25lIjowLjA1NjAwMDAwMDAwMzI1Nzg5fSwiY2xvdGhFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAwMTM5MjY3OTY1NzU0NTA2MSIsImJvdWdodCI6dHJ1ZSwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuODE2MDAwMDAwMjAxMDgyNX0sIm1pbmluZ0RyaWxsRWxmIjp7InRvZ2dsZSI6ZmFsc2UsImJ1eVByb2dyZXNzIjowLCJhbW91bnRPZlRpbWVzRG9uZSI6MCwiYm91Z2h0IjpmYWxzZX0sImhlYXZ5RHJpbGxFbGYiOnsidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDAwNDU0Njg4NjU5NzgzMzgyNCIsImFtb3VudE9mVGltZXNEb25lIjowLjUyMDAwMDAwMDAxMDgyNDcsImJvdWdodCI6dHJ1ZX0sIm9pbEVsZiI6eyJ0b2dnbGUiOnRydWUsImJ1eVByb2dyZXNzIjoiMC4wMDM2MzY1MDM3NDc5ODE5NzQyIiwiYW1vdW50T2ZUaW1lc0RvbmUiOjAuMDc2MDAwMDAwMDA5Njc4MSwiYm91Z2h0Ijp0cnVlfSwibWV0YWxFbGYiOnsiYnV5UHJvZ3Jlc3MiOiIwLjAwNDEyOTM2OTI3NDI1NjA2MyIsImFtb3VudE9mVGltZXNEb25lIjowLjM2NDAwMDAwMDAwNjQ3NzM2LCJib3VnaHQiOnRydWV9LCJjb2FsRHJpbGxFbGYiOnsidG9nZ2xlIjp0cnVlLCJidXlQcm9ncmVzcyI6IjAuMDAxOTM4MzQ2NjAyNTIxNzI3NSIsImFtb3VudE9mVGltZXNEb25lIjowLjc1NjAwMDAwMDAyMjM4OTQsImJvdWdodCI6dHJ1ZX0sImR5ZUVsZiI6eyJidXlQcm9ncmVzcyI6MCwiYW1vdW50T2ZUaW1lc0RvbmUiOjAsImJvdWdodCI6ZmFsc2V9fSwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfSwiNSI6eyJlYXJuZWQiOnRydWV9LCI2Ijp7ImVhcm5lZCI6dHJ1ZX0sIjciOnsiZWFybmVkIjp0cnVlfSwiOCI6eyJlYXJuZWQiOnRydWV9LCI5Ijp7ImVhcm5lZCI6dHJ1ZX0sIjEwIjp7ImVhcm5lZCI6dHJ1ZX0sIjExIjp7ImVhcm5lZCI6dHJ1ZX19LCJjb2xsYXBzZU1pbGVzdG9uZXMiOmZhbHNlLCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sInBhcGVyIjp7Im1pbmltaXplZCI6ZmFsc2UsInBhcGVyIjoiMy4xNjYwODM5NzcwMzA3MDY1ZTQwIiwidG90YWxQYXBlciI6IjQuMTc2MTgzOTc4NjM2ODAxZTQwIiwicGFwZXJDb252ZXJzaW9uIjp7ImdhaW5SZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyJ9LCJib29rcyI6eyJjdXR0ZXJzQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjExMyJ9LCJwbGFudGVyc0Jvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiIxMTMifSwiZXhwYW5kZXJzQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjExMyJ9LCJoZWF0ZWRDdXR0ZXJzQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjExMyJ9LCJoZWF0ZWRQbGFudGVyc0Jvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiIxMTMifSwiZmVydGlsaXplckJvb2siOnsicmVzb3VyY2UiOiIxNDE4Mi45OTk5OTk5OTk5MjciLCJhbW91bnQiOiIxMTMifSwic21hbGxGaXJlQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjExMyJ9LCJib25maXJlQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjExMyJ9LCJraWxuQm9vayI6eyJyZXNvdXJjZSI6IjE0MTgyLjk5OTk5OTk5OTkyNyIsImFtb3VudCI6IjExMyJ9LCJwYXBlckJvb2siOnsiYW1vdW50IjoiMTEifSwiYm94Qm9vayI6eyJhbW91bnQiOiIxMSJ9LCJjbG90aEJvb2siOnsiYW1vdW50IjoiMTEzIn0sIm1pbmluZ0RyaWxsQm9vayI6eyJhbW91bnQiOjB9LCJoZWF2eURyaWxsQm9vayI6eyJhbW91bnQiOiIzNyJ9LCJvaWxCb29rIjp7ImFtb3VudCI6IjM3In0sIm1ldGFsQm9vayI6eyJhbW91bnQiOiIzNyJ9LCJjb2FsRHJpbGxCb29rIjp7ImFtb3VudCI6IjM3In0sImR5ZUJvb2siOnsiYW1vdW50IjowfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJ1cGdyYWRlcyI6eyJjbG90aFVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwiZHJpbGxpbmdVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sIm9pbFVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfX0sInVwZ3JhZGVzMiI6eyJhc2hVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sImJvb2tVcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sImNsYXNzcm9vbVVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfX19LCJib3hlcyI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJib3hlcyI6IjEuODI2MTUzMjk1NTM3MzY5ZTMzIiwidG90YWxCb3hlcyI6IjEuODI3MjYzMzA2MTY4NTllMzMiLCJib3hlc0NvbnZlcnNpb24iOnsiYmFzZVJlc291cmNlIjoiMTgwMDc2NTQwMTI0NTkuMzYiLCJnYWluUmVzb3VyY2UiOiI4MDEzLjk5OTk5OTk5OTk5MyJ9LCJ1cGdyYWRlcyI6eyJsb2dzVXBncmFkZSI6eyJyZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIiwiYm91Z2h0Ijp0cnVlfSwiYXNoVXBncmFkZSI6eyJyZXNvdXJjZSI6IjgwMTMuOTk5OTk5OTk5OTkzIiwiYm91Z2h0Ijp0cnVlfSwiY29hbFVwZ3JhZGUiOnsicmVzb3VyY2UiOiI4MDEzLjk5OTk5OTk5OTk5MyIsImJvdWdodCI6dHJ1ZX19LCJidXlhYmxlcyI6eyJsb2dCb3hlc0J1eWFibGUiOnsicmVzb3VyY2UiOiI4MDEzLjk5OTk5OTk5OTk5MyIsImFtb3VudCI6IjE4OSJ9LCJhc2hCb3hlc0J1eWFibGUiOnsicmVzb3VyY2UiOiI4MDEzLjk5OTk5OTk5OTk5MyIsImFtb3VudCI6IjkyIn0sImNvYWxCb3hlc0J1eWFibGUiOnsicmVzb3VyY2UiOiI4MDEzLjk5OTk5OTk5OTk5MyIsImFtb3VudCI6IjcxIn19LCJyb3cyVXBncmFkZXMiOnsib3JlVXBncmFkZSI6eyJib3VnaHQiOnRydWV9LCJtZXRhbFVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwicGxhc3RpY1VwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfX0sInJvdzNVcGdyYWRlcyI6eyJjbG90aFVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwiZHllVXBncmFkZSI6eyJib3VnaHQiOnRydWV9LCJ4cFVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJidXlhYmxlczIiOnsib3JlQm94ZXNCdXlhYmxlIjp7ImFtb3VudCI6IjE4In0sIm1ldGFsQm94ZXNCdXlhYmxlIjp7ImFtb3VudCI6IjEwIn0sInBsYXN0aWNCb3hlc0J1eWFibGUiOnsiYW1vdW50IjoiNSJ9fX0sIm1ldGFsIjp7Im1pbmltaXplZCI6ZmFsc2UsIm9yZSI6IjAuOTAxOTk2NTUyOTQ0MTgzMyIsImJlc3RPcmUiOiI1NjI2NzY1NTUzLjQyNjQxNyIsIm9yZVByb2dyZXNzIjoiMC43MTE5OTk5OTk5OTk2NjY3IiwibWV0YWwiOiIxLjAyMjU3MzE3NzU1OTAwMzdlMjIiLCJiZXN0TWV0YWwiOiIxLjg3MjM2NDk1MzMxMjQxMDdlMjIiLCJ0b3RhbE1ldGFsIjoiOC4zOTU4NTM0NjM4MTM1NjZlMjIiLCJzaW1wbGVQaWNrYXhlIjp7ImJvdWdodCI6dHJ1ZX0sImRvdWJsZVBpY2theGUiOnsiYm91Z2h0IjpmYWxzZX0sImNydWNpYmxlIjp7ImJvdWdodCI6dHJ1ZX0sImNvYWxEcmlsbCI6eyJib3VnaHQiOnRydWV9LCJpbmR1c3RyaWFsRnVybmFjZSI6eyJib3VnaHQiOnRydWV9LCJvcmVEcmlsbCI6eyJhbW91bnQiOiIyNjgxIn0sImluZHVzdHJpYWxDcnVjaWJsZSI6eyJhbW91bnQiOiIyNjkifSwiYXV0b1NtZWx0RW5hYmxlZCI6dHJ1ZSwiaG90dGVyRm9yZ2UiOnsiYW1vdW50IjoiMzMzIn0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJlZmZpY2llbnREcmlsbCI6eyJib3VnaHQiOnRydWV9fSwiY2xvdGgiOnsibWluaW1pemVkIjpmYWxzZSwiY2xvdGgiOiIxMDE0MjQ4MzUxIiwidG90YWxDbG90aCI6IjExMjUzNjQ1MzEiLCJ3b29sIjoiMCIsInNoZWVwIjoiMzQ2NjAwNDQiLCJidWlsZFBlbnMiOnsiYW1vdW50IjoiMjE0NCJ9LCJiZXR0ZXJTaGVhcnMiOnsiYW1vdW50IjoiMjAyOSJ9LCJmYXN0ZXJTcGlubmluZyI6eyJhbW91bnQiOiIzMTU3In0sInRyZWVzVXBncmFkZXMiOnsidHJlZXNVcGdyYWRlMyI6eyJib3VnaHQiOnRydWV9LCJ0cmVlc1VwZ3JhZGUyIjp7ImJvdWdodCI6dHJ1ZX0sInRyZWVzVXBncmFkZTEiOnsiYm91Z2h0Ijp0cnVlfSwidHJlZXNVcGdyYWRlNCI6eyJib3VnaHQiOnRydWV9fSwibWV0YWxVcGdyYWRlcyI6eyJtZXRhbFVwZ3JhZGUzIjp7ImJvdWdodCI6dHJ1ZX0sIm1ldGFsVXBncmFkZTIiOnsiYm91Z2h0Ijp0cnVlfSwibWV0YWxVcGdyYWRlMSI6eyJib3VnaHQiOnRydWV9LCJtZXRhbFVwZ3JhZGU0Ijp7ImJvdWdodCI6dHJ1ZX19LCJwYXBlclVwZ3JhZGVzIjp7InBhcGVyVXBncmFkZTMiOnsiYm91Z2h0Ijp0cnVlfSwicGFwZXJVcGdyYWRlMiI6eyJib3VnaHQiOnRydWV9LCJwYXBlclVwZ3JhZGUxIjp7ImJvdWdodCI6dHJ1ZX0sInBhcGVyVXBncmFkZTQiOnsiYm91Z2h0Ijp0cnVlfX0sImdlbmVyYWxUYWJDb2xsYXBzZWQiOnt9LCJicmVlZGluZ1Byb2dyZXNzIjoxLCJzaGVhcmluZ1Byb2dyZXNzIjoxLCJzcGlubmluZ1Byb2dyZXNzIjoxfSwib2lsIjp7Im1pbmltaXplZCI6ZmFsc2UsIm9pbCI6IjQ4MTUxMDYzMzk1NDU4NS40IiwidG90YWxPaWwiOiI1OTMyODA3NDYwMjQzNzYuMiIsImRlcHRoIjoiMTcyMTUiLCJkcmlsbFByb2dyZXNzIjoiNTcyOTI3MjY3Ljc3MjA5NDciLCJhY3RpdmVIZWF2eSI6IjE4MCIsImJ1aWxkSGVhdnkiOnsiYW1vdW50IjoiMTgwIn0sImFjdGl2ZUhlYXZ5MiI6Ijg0IiwiYnVpbGRIZWF2eTIiOnsiYW1vdW50IjoiODQifSwiYWN0aXZlRXh0cmFjdG9yIjoiMTkiLCJidWlsZEV4dHJhY3RvciI6eyJhbW91bnQiOiIxOSJ9LCJhY3RpdmVQdW1wIjoiMTkiLCJidWlsZFB1bXAiOnsiYW1vdW50IjoiMTkifSwiYWN0aXZlQnVybmVyIjoiMTMxIiwiYnVpbGRCdXJuZXIiOnsiYW1vdW50IjoiMTMxIn0sImFjdGl2ZVNtZWx0ZXIiOiI3NyIsImJ1aWxkU21lbHRlciI6eyJhbW91bnQiOiI3NyJ9LCJkZXB0aE1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX0sIjUiOnsiZWFybmVkIjp0cnVlfSwiNiI6eyJlYXJuZWQiOnRydWV9LCI3Ijp7ImVhcm5lZCI6dHJ1ZX19LCJjb2xsYXBzZWREZXB0aE1pbGVzdG9uZXMiOmZhbHNlLCJyb3cxVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJyb3cyVXBncmFkZXMiOnsiMCI6eyJib3VnaHQiOnRydWV9LCIxIjp7ImJvdWdodCI6dHJ1ZX0sIjIiOnsiYm91Z2h0Ijp0cnVlfSwiMyI6eyJib3VnaHQiOnRydWV9LCI0Ijp7ImJvdWdodCI6dHJ1ZX19LCJvaWxNaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX19LCJjb2xsYXBzZWRPaWxNaWxlc3RvbmVzIjpmYWxzZSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInJvdzNVcGdyYWRlcyI6eyIwIjp7ImJvdWdodCI6dHJ1ZX0sIjEiOnsiYm91Z2h0Ijp0cnVlfSwiMiI6eyJib3VnaHQiOmZhbHNlfSwiMyI6eyJib3VnaHQiOmZhbHNlfSwiNCI6eyJib3VnaHQiOmZhbHNlfX19LCJwbGFzdGljIjp7Im1pbmltaXplZCI6ZmFsc2UsInBsYXN0aWMiOiIzNzk3MzY4MTE1LjMwOTQ1NSIsInRvdGFsUGxhc3RpYyI6Ijc0MDM3MDMzMTUuNDk2OTY5IiwiYnVpbGRSZWZpbmVyeSI6eyJhbW91bnQiOiIxODQifSwiYWN0aXZlUmVmaW5lcnkiOiIxODQiLCJ1cGdyYWRlcyI6eyJwYXBlclRvb2xzIjp7ImJvdWdodCI6dHJ1ZX0sImJveFRvb2xzIjp7ImJvdWdodCI6dHJ1ZX0sImNsb3RoVG9vbHMiOnsiYm91Z2h0Ijp0cnVlfX0sImVsZlVwZ3JhZGVzIjp7InBhcGVyRWxmIjp7ImJvdWdodCI6dHJ1ZX0sImJveEVsZiI6eyJib3VnaHQiOnRydWV9LCJjbG90aEVsZiI6eyJib3VnaHQiOnRydWV9fSwiYnV5YWJsZXMiOnsicGFzc2l2ZVBhcGVyIjp7ImFtb3VudCI6IjYwIn0sInBhc3NpdmVCb3hlcyI6eyJhbW91bnQiOiI1NiJ9LCJjbG90aEdhaW5zIjp7ImFtb3VudCI6IjUwIn19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fX0sImR5ZXMiOnsibWluaW1pemVkIjpmYWxzZSwiZHllcyI6eyJyZWQiOnsiYW1vdW50IjoiMTAzMTIyOTI4LjA2MDM2MTk4IiwiYnV5YWJsZSI6eyJhbW91bnQiOiI1NCJ9fSwieWVsbG93Ijp7ImFtb3VudCI6IjEwMzEyMjkyOC4wNjAzNjE5OCIsImJ1eWFibGUiOnsiYW1vdW50IjoiNTQifX0sImJsdWUiOnsiYW1vdW50IjoiMTAzMTIyOTI4LjA2MDM2MTk4IiwiYnV5YWJsZSI6eyJhbW91bnQiOiI1NCJ9fSwib3JhbmdlIjp7ImFtb3VudCI6IjI1MjAiLCJidXlhYmxlIjp7ImFtb3VudCI6IjM1In19LCJncmVlbiI6eyJhbW91bnQiOiIyNTIwIiwiYnV5YWJsZSI6eyJhbW91bnQiOiIzNSJ9fSwicHVycGxlIjp7ImFtb3VudCI6IjI1MjAiLCJidXlhYmxlIjp7ImFtb3VudCI6IjM1In19fSwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInVwZ3JhZGVzIjp7ImJsdWVEeWVVcGciOnsiYm91Z2h0Ijp0cnVlfSwicmVkRHllVXBnIjp7ImJvdWdodCI6dHJ1ZX0sInllbGxvd0R5ZVVwZyI6eyJib3VnaHQiOnRydWV9LCJ5ZWxsb3dEeWVVcGcyIjp7ImJvdWdodCI6dHJ1ZX0sInJlZER5ZVVwZzIiOnsiYm91Z2h0Ijp0cnVlfSwiYmx1ZUR5ZVVwZzIiOnsiYm91Z2h0Ijp0cnVlfSwiY29hbFVwZyI6eyJib3VnaHQiOnRydWV9fX0sIm1hbmFnZW1lbnQiOnsibWluaW1pemVkIjpmYWxzZSwiZWxmVHJhaW5pbmciOnsiY3V0dGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOmZhbHNlLCJleHAiOiIzMTI4MzUxLjI3NDA0MzM3ODQiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9fX0sInBsYW50ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6ZmFsc2UsImV4cCI6IjYyNjQ2MDQuNTM1NTQ4NTI2IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfX19LCJleHBhbmRlcnNFbGZUcmFpbmluZyI6eyJzdGF0ZSI6ZmFsc2UsImV4cCI6IjkzNzIwNzIuODI2NzYxNDU2IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfX19LCJoZWF0ZWRDdXR0ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiMTI0OTY2ODMuNjM5MTAzOTg2IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfX19LCJoZWF0ZWRQbGFudGVyRWxmVHJhaW5pbmciOnsic3RhdGUiOmZhbHNlLCJleHAiOiIxNTYzODMzOC40OTkxNjEwMjIiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9fX0sImZlcnRpbGl6ZXJFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiMTg3NDQzNjguNjUzOTgwMTYiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9fX0sInNtYWxsZmlyZUVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiIyMTg2ODE3OC41NjAzNDc2OTUiLCJtaWxlc3RvbmVzIjp7IjAiOnsiZWFybmVkIjp0cnVlfSwiMSI6eyJlYXJuZWQiOnRydWV9LCIyIjp7ImVhcm5lZCI6dHJ1ZX0sIjMiOnsiZWFybmVkIjp0cnVlfSwiNCI6eyJlYXJuZWQiOnRydWV9fX0sImJvbmZpcmVFbGZUcmFpbmluZyI6eyJzdGF0ZSI6dHJ1ZSwiZXhwIjoiMjQ5OTI5ODAuNzIzODU3MTA1IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfX19LCJraWxuRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjI4MTE2MjQ5LjIxMjA0MDI2IiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfX19LCJwYXBlckVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiIxMDQzNzY0Ny4yNzc0NzQ1NiIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX19fSwiYm94RWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjExNDU2Mzg3LjczNDcyMTA0OCIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX19fSwiY2xvdGhFbGZUcmFpbmluZyI6eyJzdGF0ZSI6ZmFsc2UsImV4cCI6IjM3NTYzOTc2LjQyMDMyMDA4NiIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX19fSwiY29hbERyaWxsRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjQwNjI5MTg1LjYyNDk2MDcxIiwibWlsZXN0b25lcyI6eyIwIjp7ImVhcm5lZCI6dHJ1ZX0sIjEiOnsiZWFybmVkIjp0cnVlfSwiMiI6eyJlYXJuZWQiOnRydWV9LCIzIjp7ImVhcm5lZCI6dHJ1ZX0sIjQiOnsiZWFybmVkIjp0cnVlfX19LCJtZXRhbEVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiI0OTk4NTgwNC4xOTQ4MDM0NCIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX19fSwib2lsRWxmVHJhaW5pbmciOnsic3RhdGUiOnRydWUsImV4cCI6IjQ2ODYzMTM2LjEwMzU5MDExNiIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX19fSwiaGVhdnlEcmlsbEVsZlRyYWluaW5nIjp7InN0YXRlIjp0cnVlLCJleHAiOiI0MzczNjQzMy4zNzE3ODQyNyIsIm1pbGVzdG9uZXMiOnsiMCI6eyJlYXJuZWQiOnRydWV9LCIxIjp7ImVhcm5lZCI6dHJ1ZX0sIjIiOnsiZWFybmVkIjp0cnVlfSwiMyI6eyJlYXJuZWQiOnRydWV9LCI0Ijp7ImVhcm5lZCI6dHJ1ZX19fX0sImN1cnJlbnRTaG93biI6IkNvY29hIiwiZ2VuZXJhbFRhYkNvbGxhcHNlZCI6e30sInRlYWNoaW5nIjp7ImJvdWdodCI6dHJ1ZX0sInNjaG9vbHMiOnsiYW1vdW50IjoiNSJ9LCJjbGFzc3Jvb21zIjp7ImFtb3VudCI6Ijc1MyJ9LCJjbGFzc3Jvb21VcGdyYWRlIjp7ImJvdWdodCI6dHJ1ZX0sImZvY3VzTXVsdGlwbGllciI6IjE5LjM3MTc0ODk3NDI5MDQ4MyIsInVwZ3JhZGVzIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX19LCJmb2N1c1RhcmdldHMiOnsiUGVwcGVybWludCI6dHJ1ZSwiTm9lbCI6dHJ1ZSwiR2luZ2Vyc25hcCI6dHJ1ZSwiSXZ5Ijp0cnVlLCJDb2NvYSI6dHJ1ZX0sImZvY3VzQ29vbGRvd24iOjguNjk5LCJmb2N1c1RpbWUiOjguNjk5LCJhZHZhbmNlZFVwZ3JhZGUiOnsiYm91Z2h0Ijp0cnVlfSwidXBncmFkZXMyIjp7IjAiOnsiYm91Z2h0Ijp0cnVlfSwiMSI6eyJib3VnaHQiOnRydWV9LCIyIjp7ImJvdWdodCI6dHJ1ZX19fSwid3JhcHBpbmdQYXBlciI6eyJtaW5pbWl6ZWQiOmZhbHNlLCJ3cmFwcGluZ1BhcGVyIjp7ImNocmlzdG1hcyI6eyJidXlhYmxlIjp7ImFtb3VudCI6MH19LCJyYWluYm93Ijp7ImJ1eWFibGUiOnsiYW1vdW50IjowfX0sImphenp5Ijp7ImJ1eWFibGUiOnsiYW1vdW50IjowfX0sInN1bnNoaW5lIjp7ImJ1eWFibGUiOnsiYW1vdW50IjowfX0sIm9jZWFuIjp7ImJ1eWFibGUiOnsiYW1vdW50IjowfX0sImJlYWNoIjp7ImJ1eWFibGUiOnsiYW1vdW50IjowfX19LCJnZW5lcmFsVGFiQ29sbGFwc2VkIjp7fSwibWlsZXN0b25lcyI6eyJwcmltYXJ5Qm9vc3QiOnsiZWFybmVkIjpmYWxzZX0sInNlY29uZGFyeUJvb3N0Ijp7ImVhcm5lZCI6ZmFsc2V9LCJidXlNYXhQcmltYXJ5Ijp7ImVhcm5lZCI6ZmFsc2V9LCJzZWNvbmRhcnlOb1Jlc2V0Ijp7ImVhcm5lZCI6ZmFsc2V9LCJidXlNYXhTZWNvbmRhcnkiOnsiZWFybmVkIjpmYWxzZX0sInVubG9ja0R5ZUVsZiI6eyJlYXJuZWQiOmZhbHNlfX0sImNvbGxhcHNlTWlsZXN0b25lcyI6dHJ1ZX19LCJhdXRvUGF1c2UiOnRydWUsInVzaW5nTG9nIjp0cnVlfQ=="},c=me(Object.keys(u).reduce((O,k)=>(O.push({label:k.split("/").slice(-1)[0].slice(0,-4),value:u[k]}),O),[]));const b=Rn({});function J(O){if(b[O]==null){let k=localStorage.getItem(O);if(k==null)b[O]={error:"Save doesn't exist in localStorage",id:O};else if(k==="dW5kZWZpbmVk")b[O]={error:"Save is undefined",id:O};else try{if(k[0]!=="{")if(k[0]==="e")k=decodeURIComponent(escape(atob(k)));else if(k[0]==="\u1BE1")k=Sl.decompressFromUTF16(k);else return console.warn("Unable to determine preset encoding",k),a.value=!0,b[O]={error:"Unable to determine preset encoding",id:O},b[O];b[O]={...JSON.parse(k),id:O}}catch(D){b[O]={error:D,id:O},console.warn(`SavesManager: Failed to load info about save with id ${O}:
${D}
${k}`)}}return b[O]}hl(n,O=>{O&&Object.keys(b).forEach(k=>delete b[k])});const h=Z(()=>hi.saves.reduce((O,k)=>(O[k]=J(k),O),{}));function W(O){let k;switch(Me.id===O?k=Ks(Me[Xi]):k=JSON.stringify(h.value[O]),Ii.exportEncoding){default:console.warn(`Unknown save encoding: ${Ii.exportEncoding}. Defaulting to lz`);case"lz":k=Sl.compressToUTF16(k);break;case"base64":k=btoa(unescape(encodeURIComponent(k)));break;case"plain":break}const D=document.createElement("textarea");D.value=k,document.body.appendChild(D),D.select(),D.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(D)}function j(O){Me.id===O&&il();const k={...h.value[O],id:On()};il(k),hi.saves.push(k.id)}function F(O){hi.saves=hi.saves.filter(k=>k!==O),localStorage.removeItem(O),b[O]=void 0}function X(O){h.value[Me.id].time=Me.time,il(),b[Me.id]=void 0,Pl(h.value[O]),b[O]=void 0}function M(O){if(d.value=O,_l(()=>{d.value=null}),O[0]!=="{")if(O[0]==="e")O=decodeURIComponent(escape(atob(O)));else if(O[0]==="\u1BE1")O=Sl.decompressFromUTF16(O);else{console.warn("Unable to determine preset encoding",O);return}const k=JSON.parse(O);k.id=On(),il(k),hi.saves.push(k.id),X(k.id)}function T(O,k){const D=h.value[O];D&&(D.name=k,Me.id===O?(Me.name=k,il()):(il(D),b[O]=void 0))}return(O,k)=>(g(),ke(Si,{modelValue:n.value,"onUpdate:modelValue":k[4]||(k[4]=D=>n.value=D),ref_key:"modal",ref:s},{header:Ge(()=>[xr]),body:Ge(({shown:D})=>[D?(g(),ke(m(Ut),{key:0,list:m(hi).saves,handle:".handle",itemKey:de=>de},{item:Ge(({element:de})=>[t(Xr,{save:m(h)[de],onOpen:_=>X(de),onExport:_=>W(de),onEditName:_=>T(de,_),onDuplicate:_=>j(de),onDelete:_=>F(de)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):te("",!0)]),footer:Ge(()=>[w("div",Gr,[t(Ot,{modelValue:r.value,"onUpdate:modelValue":k[0]||(k[0]=D=>r.value=D),title:"Import Save",placeholder:"Paste your save here!",class:wi({importingFailed:a.value})},null,8,["modelValue","class"]),w("div",Fr,[kr,w("div",zr,[w("button",{class:"button",onClick:k[1]||(k[1]=D=>X(m(on)().id))},"New Game"),Object.keys(m(c)).length>0?(g(),ke(bs,{key:0,options:m(c),modelValue:d.value,"onUpdate:modelValue":k[2]||(k[2]=D=>M(D)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):te("",!0)])]),w("div",Rr,[Sr,w("button",{class:"button modal-default-button",onClick:k[3]||(k[3]=D=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var Nt=ui(Hr,[["__scopeId","data-v-3b9991aa"]]);const al=e=>(Ql("data-v-8495e562"),e=e(),Ul(),e),Lr=["src","alt"],Tr={key:1,class:"title"},Qr=al(()=>w("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),Ur={class:"discord"},Er={class:"discord-links"},Ar={key:0},Dr=["href"],Br=al(()=>w("li",null,[w("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),Pr=al(()=>w("li",null,[w("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),_r={href:"https://forums.moddingtree.com/",target:"_blank"},qr=al(()=>w("span",{class:"material-icons"},"forum",-1)),$r=al(()=>w("span",{class:"material-icons"},"info",-1)),Kr=al(()=>w("span",{class:"material-icons"},"library_books",-1)),ed=al(()=>w("span",{class:"material-icons"},"settings",-1)),id=al(()=>w("span",{class:"material-icons"},"library_books",-1)),ld=al(()=>w("span",{class:"material-icons"},"settings",-1)),nd=al(()=>w("span",{class:"material-icons"},"info",-1)),sd={href:"https://forums.moddingtree.com/",target:"_blank"},td=al(()=>w("span",{class:"material-icons"},"forum",-1)),ad={class:"discord"},od={class:"discord-links"},Id={key:0},md=["href"],rd=al(()=>w("li",null,[w("a",{href:"https://discord.gg/WzejVAx",target:"_blank"},"The Paper Pilot Community")],-1)),dd=al(()=>w("li",null,[w("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),ud=Qe({__name:"Nav",setup(e){const l=me(null),n=me(null),s=me(null),a=me(null),{useHeader:r,banner:d,title:u,discordName:c,discordLink:b,versionNumber:J}=Ii;function h(){window.open(b,"mywindow")}return(W,j)=>(g(),S(C,null,[m(r)?(g(),S("div",ql({key:0,class:"nav"},W.$attrs),[m(d)?(g(),S("img",{key:0,src:m(d),class:"banner",alt:m(u)},null,8,Lr)):(g(),S("div",Tr,qe(m(u)),1)),w("div",{onClick:j[0]||(j[0]=F=>{var X;return(X=a.value)==null?void 0:X.open()}),class:"version-container"},[t(Fi,{display:"Changelog",direction:m(Be).Down,class:"version"},{default:Ge(()=>[w("span",null,"v"+qe(m(J)),1)]),_:1},8,["direction"])]),Qr,w("div",Ur,[w("span",{onClick:h,class:"material-icons"},"discord"),w("ul",Er,[m(b)?(g(),S("li",Ar,[w("a",{href:m(b),target:"_blank"},qe(m(c)),9,Dr)])):te("",!0),Br,Pr])]),w("div",null,[w("a",_r,[t(Fi,{display:"Forums",direction:m(Be).Down,yoffset:"5px"},{default:Ge(()=>[qr]),_:1},8,["direction"])])]),w("div",{onClick:j[1]||(j[1]=F=>{var X;return(X=l.value)==null?void 0:X.open()})},[t(Fi,{display:"Info",direction:m(Be).Down,class:"info"},{default:Ge(()=>[$r]),_:1},8,["direction"])]),w("div",{onClick:j[2]||(j[2]=F=>{var X;return(X=n.value)==null?void 0:X.open()})},[t(Fi,{display:"Saves",direction:m(Be).Down,xoffset:"-20px"},{default:Ge(()=>[Kr]),_:1},8,["direction"])]),w("div",{onClick:j[3]||(j[3]=F=>{var X;return(X=s.value)==null?void 0:X.open()})},[t(Fi,{display:"Options",direction:m(Be).Down,xoffset:"-66px"},{default:Ge(()=>[ed]),_:1},8,["direction"])])],16)):(g(),S("div",ql({key:1,class:"overlay-nav"},W.$attrs),[w("div",{onClick:j[4]||(j[4]=F=>{var X;return(X=a.value)==null?void 0:X.open()}),class:"version-container"},[t(Fi,{display:"Changelog",direction:m(Be).Right,xoffset:"25%",class:"version"},{default:Ge(()=>[w("span",null,"v"+qe(m(J)),1)]),_:1},8,["direction"])]),w("div",{onClick:j[5]||(j[5]=F=>{var X;return(X=n.value)==null?void 0:X.open()})},[t(Fi,{display:"Saves",direction:m(Be).Right},{default:Ge(()=>[id]),_:1},8,["direction"])]),w("div",{onClick:j[6]||(j[6]=F=>{var X;return(X=s.value)==null?void 0:X.open()})},[t(Fi,{display:"Options",direction:m(Be).Right},{default:Ge(()=>[ld]),_:1},8,["direction"])]),w("div",{onClick:j[7]||(j[7]=F=>{var X;return(X=l.value)==null?void 0:X.open()})},[t(Fi,{display:"Info",direction:m(Be).Right},{default:Ge(()=>[nd]),_:1},8,["direction"])]),w("div",null,[w("a",sd,[t(Fi,{display:"Forums",direction:m(Be).Right,xoffset:"7px"},{default:Ge(()=>[td]),_:1},8,["direction"])])]),w("div",ad,[w("span",{onClick:h,class:"material-icons"},"discord"),w("ul",od,[m(b)?(g(),S("li",Id,[w("a",{href:m(b),target:"_blank"},qe(m(c)),9,md)])):te("",!0),rd,dd])])],16)),t(Am,{ref_key:"info",ref:l,changelog:a.value},null,8,["changelog"]),t(Nt,{ref_key:"savesManager",ref:n},null,512),t(lr,{ref_key:"options",ref:s},null,512),t(Ym,{ref_key:"changelog",ref:a},null,512)],64))}});var Yt=ui(ud,[["__scopeId","data-v-8495e562"]]);const hs=e=>(Ql("data-v-e251e576"),e=e(),Ul(),e),cd={class:"inner-tab"},bd={key:1},Zd=hs(()=>w("br",null,null,-1)),yd=o(" You can help continue the "),pd=hs(()=>w("i",null,"advent",-1)),hd=o("ure at: "),Vd=hs(()=>w("a",{href:"https://discord.gg/WzejVAx",class:"info-modal-discord-link",target:"_blank"},[w("span",{class:"material-icons info-modal-discord"},"discord"),o(" The Paper Pilot Community ")],-1)),Wd=Qe({__name:"Game",setup(e){const l=Vl(Me,"tabs"),n=Z(()=>Object.keys(oi)),s=Ii.useHeader,a=Gl(V.loreBody);function r(d){const{display:u,minimized:c,minWidth:b,name:J,color:h,minimizable:W,nodes:j,minimizedDisplay:F}=d;return{display:u,minimized:c,minWidth:b,name:J,color:h,minimizable:W,nodes:j,minimizedDisplay:F}}return(d,u)=>(g(),S("div",{class:wi(["tabs-container",{useHeader:m(s)}])},[(g(!0),S(C,null,ks(m(l),(c,b)=>{var J,h;return g(),S("div",{key:b,class:wi(["tab",m((J=m(oi)[c])==null?void 0:J.classes)]),ref_for:!0,ref:`tab-${b}`,style:Ni(m((h=m(oi)[c])==null?void 0:h.style))},[b===0&&!m(s)?(g(),ke(Yt,{key:0})):te("",!0),w("div",cd,[m(n).includes(c)?(g(),ke(Cm,ql({key:0},r(m(oi)[c]),{index:b,tab:()=>{var W;return(W=d.$refs[`tab-${b}`])==null?void 0:W[0]}}),null,16,["index","tab"])):(g(),ke(fi(c),{key:1,index:b},null,8,["index"]))])],6)}),128)),t(Si,{modelValue:m(V).showLoreModal.value,"onUpdate:modelValue":u[0]||(u[0]=c=>m(V).showLoreModal.value=c)},{header:Ge(()=>[w("h2",null,qe(m(V).loreTitle.value),1)]),body:Ge(()=>[m(a)?(g(),ke(fi(m(a)),{key:0})):te("",!0),m(V).loreScene.value!==-1?(g(),S("div",bd,[t(jm,{day:m(V).loreScene.value},null,8,["day"]),Zd,yd,pd,hd,Vd])):te("",!0)]),_:1},8,["modelValue"])],2))}});var vd=ui(Wd,[["__scopeId","data-v-e251e576"]]);const wn=e=>(Ql("data-v-4a50ce42"),e=e(),Ul(),e),jd={class:"game-over-modal-header"},Jd=["src","alt"],fd={class:"game-over-modal-title"},wd=wn(()=>w("h2",null,"Congratulations!",-1)),Cd={key:0},gd=wn(()=>w("br",null,null,-1)),Od=wn(()=>w("div",null," Please check the Discord to discuss the game or to check for new content updates! ",-1)),Nd=wn(()=>w("br",null,null,-1)),Yd=["href"],Md=wn(()=>w("span",{class:"material-icons game-over-modal-discord"},"discord",-1)),Xd=Qe({__name:"GameOverScreen",setup(e){const{title:l,logo:n,discordName:s,discordLink:a,versionNumber:r,versionTitle:d}=Ii,u=Z(()=>mn(Me.timePlayed)),c=Z(()=>ys.value&&!Me.keepGoing),b=Vl(Me,"autosave");function J(){Me.keepGoing=!0}function h(){Pl(on())}return(W,j)=>(g(),ke(Si,{"model-value":m(c)},{header:Ge(()=>[w("div",jd,[m(n)?(g(),S("img",{key:0,class:"game-over-modal-logo",src:m(n),alt:m(l)},null,8,Jd)):te("",!0),w("div",fd,[wd,w("h4",null,"You've beaten "+qe(m(l))+" v"+qe(m(r))+": "+qe(m(d)),1)])])]),body:Ge(({shown:F})=>[F?(g(),S("div",Cd,[w("div",null,"It took you "+qe(m(u))+" to beat the game.",1),gd,Od,Nd,w("div",null,[w("a",{href:m(a),class:"game-over-modal-discord-link"},[Md,o(" "+qe(m(s)),1)],8,Yd)]),t(Jl,{title:"Autosave",modelValue:m(b),"onUpdate:modelValue":j[0]||(j[0]=X=>ki(b)?b.value=X:null)},null,8,["modelValue"])])):te("",!0)]),footer:Ge(()=>[w("div",{class:"game-over-footer"},[w("button",{onClick:J,class:"button"},"Keep Going"),w("button",{onClick:h,class:"button danger"},"Play Again")])]),_:1},8,["model-value"]))}});var xd=ui(Xd,[["__scopeId","data-v-4a50ce42"]]);const Tn=e=>(Ql("data-v-3de07c06"),e=e(),Ul(),e),Gd=Tn(()=>w("div",{class:"nan-modal-header"},[w("h2",null,"NaN value detected!")],-1)),Fd={key:0},kd=Tn(()=>w("br",null,null,-1)),zd=["href"],Rd=Tn(()=>w("span",{class:"material-icons nan-modal-discord"},"discord",-1)),Sd=Tn(()=>w("br",null,null,-1)),Hd={class:"nan-footer"},Ld=Qe({__name:"NaNScreen",setup(e){const{discordName:l,discordLink:n}=Ii,s=Vl(Me,"autosave"),a=Vl(Gi,"hasNaN"),r=me(null),d=Z(()=>{var j;return(j=Gi.NaNPath)==null?void 0:j.join(".")}),u=Z(()=>{var j;return(j=Gi.NaNPath)==null?void 0:j.slice(-1)[0]}),c=Z(()=>Gi.NaNReceiver&&u.value?Gi.NaNReceiver[u.value]:null),b=Z({get(){return Me.devSpeed===0},set(j){Me.devSpeed=j?null:0}});function J(){Gi.NaNReceiver&&u.value&&(Gi.NaNReceiver[u.value]=new i(0),Gi.hasNaN=!1)}function h(){Gi.NaNReceiver&&u.value&&(Gi.NaNReceiver[u.value]=new i(1),Gi.hasNaN=!1)}function W(){Gi.NaNReceiver&&u.value&&(Gi.NaNReceiver[u.value]=new i(NaN),Gi.hasNaN=!1)}return(j,F)=>(g(),S(C,null,[t(Si,ql({modelValue:m(a),"onUpdate:modelValue":F[4]||(F[4]=X=>ki(a)?a.value=X:null)},j.$attrs),{header:Ge(()=>[Gd]),body:Ge(()=>[w("div",null,[o(' Attempted to assign "'+qe(m(d))+'" to NaN',1),m(c)?(g(),S("span",Fd,qe(" ")+"(previously "+qe(m(le)(m(c)))+")",1)):te("",!0),o(". Auto-saving has been "+qe(m(s)?"enabled":"disabled")+". Check the console for more details, and consider sharing it with the developers on discord. ",1)]),kd,w("div",null,[w("a",{href:m(n),class:"nan-modal-discord-link"},[Rd,o(" "+qe(m(l)),1)],8,zd)]),Sd,t(Jl,{title:"Autosave",modelValue:m(s),"onUpdate:modelValue":F[0]||(F[0]=X=>ki(s)?s.value=X:null)},null,8,["modelValue"]),m(Ii).enablePausing?(g(),ke(Jl,{key:0,title:"Pause game",modelValue:m(b),"onUpdate:modelValue":F[1]||(F[1]=X=>ki(b)?b.value=X:null)},null,8,["modelValue"])):te("",!0)]),footer:Ge(()=>[w("div",Hd,[w("button",{onClick:F[2]||(F[2]=X=>{var M;return(M=r.value)==null?void 0:M.open()}),class:"button"},"Open Saves Manager"),w("button",{onClick:J,class:"button"},"Set to 0"),w("button",{onClick:h,class:"button"},"Set to 1"),m(c)&&m(i).neq(m(c),0)&&m(i).neq(m(c),1)?(g(),S("button",{key:0,onClick:F[3]||(F[3]=X=>a.value=!1),class:"button"}," Set to previous ")):te("",!0),w("button",{onClick:W,class:"button danger"},"Ignore")])]),_:1},16,["modelValue"]),t(Nt,{ref_key:"savesManager",ref:r},null,512)],64))}});var Td=ui(Ld,[["__scopeId","data-v-3de07c06"]]);const Qd={key:0,class:"tpsDisplay"},Ud={key:0,class:"low"},Ed=Qe({__name:"TPS",setup(e){const l=Z(()=>i.div(Gi.lastTenTicks.length,Gi.lastTenTicks.reduce((r,d)=>r+d,0))),n=me([]);Pi(()=>{n.value.push(Math.round(l.value.toNumber())),n.value.length>10&&(n.value=n.value.slice(1))});const s=Z(()=>n.value.reduce((r,d)=>i.max(r,d),0)),a=Z(()=>i.sub(l.value,s.value).gt(1));return(r,d)=>m(l).isNan()?te("",!0):(g(),S("div",Qd,[o(" TPS: "+qe(m(re)(m(l)))+" ",1),t(zn,{name:"fade"},{default:Ge(()=>[m(a)?(g(),S("span",Ud,qe(m(re)(m(s))),1)):te("",!0)]),_:1})]))}});var Ad=ui(Ed,[["__scopeId","data-v-46a3ed5b"]]);var Dd=Qe({__name:"App",setup(e){const l=Ii.useHeader,n=Z(()=>bn[hi.theme].variables),s=Vl(hi,"showTPS"),a=Z(()=>ti(f(()=>t(C,null,[mo.map(We)]))));return(r,d)=>(g(),S(C,null,[w("div",{id:"modal-root",style:Ni(m(n))},null,4),w("div",{class:wi(["app",{useHeader:m(l)}]),style:Ni(m(n))},[m(l)?(g(),ke(Yt,{key:0})):te("",!0),t(vd),m(m(s))?(g(),ke(Ad,{key:1})):te("",!0),t(xd),t(Td),(g(),ke(fi(m(a))))],6)],64))}});var Bd=ui(Dd,[["__scopeId","data-v-580927bb"]]);function Pd(e={}){const{immediate:l=!1,onNeedRefresh:n,onOfflineReady:s,onRegistered:a,onRegisterError:r}=e;let d,u;const c=async(b=!0)=>{b&&(d==null||d.addEventListener("controlling",J=>{J.isUpdate&&window.location.reload()})),u&&u.waiting&&await Dt(u.waiting,{type:"SKIP_WAITING"})};if("serviceWorker"in navigator){d=new At("./sw.js",{scope:"./",type:"classic"}),d.addEventListener("activated",b=>{b.isUpdate||s==null||s()});{const b=()=>{n==null||n()};d.addEventListener("waiting",b),d.addEventListener("externalwaiting",b)}d.register({immediate:l}).then(b=>{u=b,a==null||a(b)}).catch(b=>{r==null||r(b)})}return c}function _d(e={}){const{immediate:l=!0,onNeedRefresh:n,onOfflineReady:s,onRegistered:a,onRegisterError:r}=e,d=me(!1),u=me(!1);return{updateServiceWorker:Pd({immediate:l,onNeedRefresh(){d.value=!0,n==null||n()},onOfflineReady(){u.value=!0,s==null||s()},onRegistered:a,onRegisterError:r}),offlineReady:u,needRefresh:d}}document.title=Ii.title;window.projInfo=Ii;if(Ii.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 so();const{globalBus:e}=await Yn(()=>Promise.resolve().then(function(){return Ta}),void 0),{startGameLoop:l}=await Yn(()=>import("./gameLoop.d3d173ad.js"),["assets/gameLoop.d3d173ad.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=Ht(Bd);e.emit("setupVue",n),n.mount("#app"),_l(()=>{const s=Rs(),{updateServiceWorker:a}=_d({onNeedRefresh(){s.info("New content available, click here to update.",{timeout:!1,closeOnClick:!1,draggable:!1,icon:{iconClass:"material-icons",iconChildren:"refresh",iconTag:"i"},rtl:!1,onClick(){a()}})},onOfflineReady(){s.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(r){r&&setInterval(()=>r.update(),60*60*1e3)}})}),l()});export{i as D,Yn as _,Gi as a,Ii as b,nm as c,yi as g,rs as l,Me as p,hi as s};
+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 so();const{globalBus:e}=await Yn(()=>Promise.resolve().then(function(){return Ta}),void 0),{startGameLoop:l}=await Yn(()=>import("./gameLoop.e338d6a8.js"),["assets/gameLoop.e338d6a8.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=Ht(Bd);e.emit("setupVue",n),n.mount("#app"),_l(()=>{const s=Rs(),{updateServiceWorker:a}=_d({onNeedRefresh(){s.info("New content available, click here to update.",{timeout:!1,closeOnClick:!1,draggable:!1,icon:{iconClass:"material-icons",iconChildren:"refresh",iconTag:"i"},rtl:!1,onClick(){a()}})},onOfflineReady(){s.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(r){r&&setInterval(()=>r.update(),60*60*1e3)}})}),l()});export{i as D,Yn as _,Gi as a,Ii as b,nm as c,yi as g,rs as l,Me as p,hi as s};
diff --git a/index.html b/index.html
index 75e377f..5074296 100644
--- a/index.html
+++ b/index.html
@@ -14,7 +14,7 @@
Advent Incremental
-
+
diff --git a/sw.js b/sw.js
index f88b82f..e3a1b9e 100644
--- a/sw.js
+++ b/sw.js
@@ -1 +1 @@
-if(!self.define){let e,s={};const i=(i,n)=>(i=new URL(i+".js",n).href,s[i]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()})).then((()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e})));self.define=(n,l)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(s[r])return;let t={};const o=e=>i(e,r),u={module:{uri:r},exports:t,require:o};s[r]=Promise.all(n.map((e=>u[e]||o(e)))).then((e=>(l(...e),t)))}}define(["./workbox-958fa2bd"],(function(e){"use strict";self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"assets/@fontsource.c175eac8.css",revision:null},{url:"assets/@vue.4ce677c2.js",revision:null},{url:"assets/gameLoop.d3d173ad.js",revision:null},{url:"assets/index.4823d178.js",revision:null},{url:"assets/index.7781acb7.css",revision:null},{url:"assets/is-plain-object.906d88e8.js",revision:null},{url:"assets/lz-string.731cedc5.js",revision:null},{url:"assets/nanoevents.1080beb7.js",revision:null},{url:"assets/sortablejs.29100d8a.js",revision:null},{url:"assets/vue-next-select.9e6f4164.css",revision:null},{url:"assets/vue-next-select.a2bfab1d.js",revision:null},{url:"assets/vue-textarea-autosize.35804eaf.js",revision:null},{url:"assets/vue-toastification.4b5f8ac8.css",revision:null},{url:"assets/vue-toastification.6f567382.js",revision:null},{url:"assets/vue.92681fcb.js",revision:null},{url:"assets/vuedraggable.7949458c.js",revision:null},{url:"assets/workbox-window.8d14e8b7.js",revision:null},{url:"index.html",revision:"ea82c160e21b05a8f3f383bfa024129d"},{url:"favicon.ico",revision:"eead31eb5b19fa3bdc34af83d898c0b7"},{url:"robots.txt",revision:"5e0bd1c281a62a380d7a948085bfe2d1"},{url:"apple-touch-icon.png",revision:"26e53bb981d06c8069ffd9d2a14fce0e"},{url:"pwa-192x192.png",revision:"a16785d9e890858c5b508e0ef6954aaf"},{url:"pwa-512x512.png",revision:"b84004b93fd62ef6599ff179372861a1"},{url:"manifest.webmanifest",revision:"5f32ad2a77eb001e1b6a588835dc1efc"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html")))}));
+if(!self.define){let e,s={};const i=(i,n)=>(i=new URL(i+".js",n).href,s[i]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()})).then((()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e})));self.define=(n,l)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(s[r])return;let t={};const o=e=>i(e,r),a={module:{uri:r},exports:t,require:o};s[r]=Promise.all(n.map((e=>a[e]||o(e)))).then((e=>(l(...e),t)))}}define(["./workbox-958fa2bd"],(function(e){"use strict";self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"assets/@fontsource.c175eac8.css",revision:null},{url:"assets/@vue.4ce677c2.js",revision:null},{url:"assets/gameLoop.e338d6a8.js",revision:null},{url:"assets/index.5284aea9.js",revision:null},{url:"assets/index.7781acb7.css",revision:null},{url:"assets/is-plain-object.906d88e8.js",revision:null},{url:"assets/lz-string.731cedc5.js",revision:null},{url:"assets/nanoevents.1080beb7.js",revision:null},{url:"assets/sortablejs.29100d8a.js",revision:null},{url:"assets/vue-next-select.9e6f4164.css",revision:null},{url:"assets/vue-next-select.a2bfab1d.js",revision:null},{url:"assets/vue-textarea-autosize.35804eaf.js",revision:null},{url:"assets/vue-toastification.4b5f8ac8.css",revision:null},{url:"assets/vue-toastification.6f567382.js",revision:null},{url:"assets/vue.92681fcb.js",revision:null},{url:"assets/vuedraggable.7949458c.js",revision:null},{url:"assets/workbox-window.8d14e8b7.js",revision:null},{url:"index.html",revision:"6f71d2731ae4c833011690a904d27abc"},{url:"favicon.ico",revision:"eead31eb5b19fa3bdc34af83d898c0b7"},{url:"robots.txt",revision:"5e0bd1c281a62a380d7a948085bfe2d1"},{url:"apple-touch-icon.png",revision:"26e53bb981d06c8069ffd9d2a14fce0e"},{url:"pwa-192x192.png",revision:"a16785d9e890858c5b508e0ef6954aaf"},{url:"pwa-512x512.png",revision:"b84004b93fd62ef6599ff179372861a1"},{url:"manifest.webmanifest",revision:"5f32ad2a77eb001e1b6a588835dc1efc"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html")))}));