From 566efbc68b6fa65a7d835a056beafb55440d1eb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20van=20Noord?= <13665637+DanielNoord@users.noreply.github.com> Date: Sat, 3 Apr 2021 08:50:35 +0200 Subject: [PATCH 1/3] Made favourite settings stars yellow --- CookieMonster.js | 2 +- dist/CookieMonster.js | 2 +- dist/CookieMonster.js.map | 2 +- src/Disp/MenuSections/Settings/CreateOption.js | 6 ++++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CookieMonster.js b/CookieMonster.js index 51604b3..02d5bb7 100644 --- a/CookieMonster.js +++ b/CookieMonster.js @@ -1,2 +1,2 @@ /*! For license information please see CookieMonster.js.LICENSE.txt */ -(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings){const e=document.createElement("a");se.includes(t)?e.innerText="★":e.innerText="☆",e.className="option",e.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(t),Mn(),Game.UpdateMenu()},o.appendChild(e),o.appendChild(document.createTextNode(" "))}if("bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); +(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings){const e=document.createElement("a");se.includes(t)?(e.innerText="★",e.style.color="yellow"):e.innerText="☆",e.className="option",e.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(t),Mn(),Game.UpdateMenu()},o.appendChild(e),o.appendChild(document.createTextNode(" "))}if("bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); diff --git a/dist/CookieMonster.js b/dist/CookieMonster.js index 51604b3..02d5bb7 100644 --- a/dist/CookieMonster.js +++ b/dist/CookieMonster.js @@ -1,2 +1,2 @@ /*! For license information please see CookieMonster.js.LICENSE.txt */ -(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings){const e=document.createElement("a");se.includes(t)?e.innerText="★":e.innerText="☆",e.className="option",e.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(t),Mn(),Game.UpdateMenu()},o.appendChild(e),o.appendChild(document.createTextNode(" "))}if("bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); +(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings){const e=document.createElement("a");se.includes(t)?(e.innerText="★",e.style.color="yellow"):e.innerText="☆",e.className="option",e.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(t),Mn(),Game.UpdateMenu()},o.appendChild(e),o.appendChild(document.createTextNode(" "))}if("bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); diff --git a/dist/CookieMonster.js.map b/dist/CookieMonster.js.map index 58a56e9..fd1746f 100644 --- a/dist/CookieMonster.js.map +++ b/dist/CookieMonster.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://cookiemonster-mod/CookieMonster.js"],"names":["__webpack_modules__","877","module","global","factory","exports","document","win","Error","window","this","BoxShadow","funcName","elm","jsc","jscolor","initialized","instances","readyQueue","register","addEventListener","pub","init","installBySelector","selector","rootNode","node","elms","querySelectorAll","matchClass","RegExp","lookupClass","i","length","dataOpts","m","undefined","type","toLowerCase","isColorAttrSupported","getDataAttr","className","match","targetElm","optsStr","console","warn","docsRef","opts","trim","parseOptionsStr","e","str","JSON","parse","eParse","looseJSON","Function","eEval","getInstances","inst","targetElement","push","createEl","tagName","el","createElement","setData","nodeOrSelector","sel","querySelector","isNode","val","Node","nodeType","nodeName","removeChildren","firstChild","removeChild","isTextInput","isButton","n","indexOf","isButtonEmpty","value","textContent","isPassiveEventSupported","supported","Object","defineProperty","get","removeEventListener","setAttribute","dataProp","obj","arguments","data","hasOwnProperty","prop","map","removeData","getData","setDefault","name","attrName","getAttribute","setDataAttr","_attachedGroupEvents","attachGroupEvent","groupName","evnt","func","detachGroupEvents","evt","preventDefault","returnValue","captureTarget","target","setCapture","_capturedTarget","releaseTarget","releaseCapture","triggerEvent","eventName","bubbles","cancelable","ev","Event","createEvent","initEvent","dispatchEvent","triggerInputEvent","eventKey","keys","9","13","27","code","keyCode","strList","replace","split","hasClass","classList","contains","addClass","classNames","add","removeClass","repl","remove","getCompStyle","getComputedStyle","currentStyle","setStyle","styles","important","reversible","priority","origStyle","setVal","style","setProperty","hexColor","r","g","b","Math","round","toString","substr","toUpperCase","hexaColor","a","rgbColor","rgbaColor","linearGradient","stdName","prefixes","helper","tryFunc","tryVal","background","getFuncName","Array","prototype","join","call","setBorderRadius","border-radius","setBoxShadow","box-shadow","getElementPos","relativeToViewport","x","y","rect","getBoundingClientRect","left","top","viewPos","getViewPos","getElementSize","offsetWidth","offsetHeight","getAbsPointerPos","changedTouches","clientX","clientY","getRelPointerPos","targetRect","srcElement","doc","documentElement","pageXOffset","scrollLeft","clientLeft","pageYOffset","scrollTop","clientTop","getViewSize","innerWidth","clientWidth","innerHeight","clientHeight","RGB_HSV","min","v","max","h","HSV_RGB","s","u","floor","parseColorString","ret","rgba","format","parseInt","charAt","mR","mG","mB","mA","par","re","parseFloat","parsePaletteValue","mixed","vals","isArray","colors","color","containsTranparentColor","isAlphaFormat","scaleCanvasForHighDPR","canvas","dpr","devicePixelRatio","width","height","getContext","scale","genColorPreviewCanvas","separatorPos","specWidth","scaleForHighDPR","sepW","previewSeparator","sqSize","chessboardSize","sqColor1","chessboardColor1","sqColor2","chessboardColor2","cWidth","cHeight","ctx","fillStyle","fillRect","start","clearRect","lineWidth","beginPath","strokeStyle","moveTo","lineTo","stroke","genColorPreviewGradient","position","params","right","apply","redrawPosition","picker","owner","tp","vp","thisObj","fixed","c","ts","vs","pd","getPickerDims","ps","borderW","borderH","l","smartPosition","pp","positionValue","contractShadow","_drawPosition","vShadow","shadowBlur","wrap","boxS","shadow","shadowColor","w","controlBorderWidth","sliderSpace","getControlPadding","sliderSize","getSliderChannel","hasAlphaChannel","pal","getPaletteDims","padding","closeButton","buttonHeight","pW","pH","contentW","contentH","paddedW","paddedH","borderWidth","palette","cols","rows","cellW","cellH","sampleCount","_palette","paletteCols","ceil","paletteSpacing","paletteHeight","pointerBorderWidth","pointerThickness","getPadYChannel","mode","triggerCallback","callback","error","triggerGlobal","eventNames","trigger","_pointerMoveEvent","mouse","touch","_pointerEndEvent","_pointerOrigin","onDocumentKeyUp","tryHide","onWindowResize","onWindowScroll","onParentScroll","onDocumentMouseDown","showOnClick","disabled","show","onControlPointerStart","onPickerTouchStart","controlName","pointerType","registerDragEvents","offset","onDocumentPointerMove","onDocumentPointerEnd","parent","frameElement","ofs","abs","rel","channels","fromHSVA","setPad","setSld","setASld","onPaletteSampleClick","currentTarget","_setFormat","getFormat","paletteSetsAlpha","_paletteHasTransparency","fromRGBA","hideOnPaletteClick","hide","ofsX","ofsY","pointerAbs","xVal","yVal","fmt","createPadCanvas","draw","hGrad","createLinearGradient","addColorStop","vGrad","createSliderGradient","color1","color2","grad","createASliderGradient","hShadow","blur","spread","inset","flags","leaveValue","leaveAlpha","leavePreview","enumOpts","previewPosition","alphaChannel","deprecatedOpts","styleElement","onFineChange","overwriteImportant","closable","insetWidth","insetColor","refine","THIS","setOption","option","oldOpt","newOpt","setter","getOption","getter","drawPicker","_processParentElementsInDOM","box","boxB","pad","padB","padM","padCanvas","cross","crossBY","crossBX","crossLY","crossLX","sld","sldB","sldM","sldGrad","sldPtrS","sldPtrIB","sldPtrMB","sldPtrOB","asld","asldB","asldM","asldGrad","asldPtrS","asldPtrIB","asldPtrMB","asldPtrOB","btn","btnT","appendChild","passive","insetColors","outsetColor","p","displaySlider","displayAlphaSlider","pickerDims","crossOuterSize","crossSize","controlPadding","borderRadius","PI","clear","zIndex","border","borderColor","backgroundColor","opacity","controlBorderColor","cursor","instance","control","pointerBorderColor","pointerColor","overflow","display","sliderInnerSpace","innerHTML","chessboard","si","sampleColor","sampleCssColor","sc","sw","backgroundImage","toDataURL","backgroundRepeat","backgroundPosition","bottom","maxWidth","whiteSpace","buttonColor","font","textAlign","onmousedown","lineHeight","createTextNode","closeText","redrawPad","redrawSld","redrawASld","activeClassName","container","body","parentNode","yChannel","rgb1","rgb2","rgb","toHEXString","sldChannel","isPickerOwner","alpha","onChange","onInput","valueElement","alphaElement","previewElement","previewSize","previewPadding","required","hash","uppercase","forceStyle","hideOnLeave","minS","maxS","minV","maxV","minA","maxA","redraw","exposeColor","success","opt","channel","res","evs","callbackProp","isNaN","hsv","fromHSV","fromRGB","fromString","setPreviewElementBg","setValueElementValue","toHEXAString","toRGBString","toRGBAString","toGrayscale","toCanvas","toBackground","isLight","_currentFormat","processValueInput","processAlphaInput","colorStr","alphaVal","setAlphaElementValue","backgrounds","image","size","repeat","origin","preview","bg","sty","background-image","background-position","background-size","background-repeat","background-origin","padding-left","padding-right","_parentElementsProcessed","compStyle","set__palette","options","presetsArr","preset","slice","pres","presets","nonProperties","test","min-width","valueElementOrigEvents","oninput","oldVal","initValue","initAlpha","install","shift","ready","triggerNow","installByClassName","JSColor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__esModule","d","definition","key","o","enumerable","CMOptions","ToggleWrinklerButtons","WrinklerButtons","Game","elderWrath","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColourTextPre","ColourBackPre","ColourBlue","ColourGreen","ColourYellow","ColourOrange","ColourRed","ColourPurple","ColourGray","ColourPink","ColourBrown","ColoursOrdering","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColours","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","FavouriteSettings","BeautifyFormatting_Beautify","num","floats","forced","decimals","ScaleDecimals","Infinity","Scale","Beautify","Number","isFinite","answer","ScaleCutoff","ScaleSeparator","toLocaleString","toExponential","exponential","AmountOfTenPowerThree","toFixed","log","FormatTime","time","longFormat","formattedTime","TimeFormat","GetTimeColour","text","CookiesDiff","WrinkDiff","WrinkFattestDiff","ChoEggDiff","ClicksDiff","HeavenlyChipsDiff","CacheLastCPSCheck","CacheLastCookies","CacheLastWrinkCookies","CacheLastWrinkFattestCookies","CacheLastClicks","CacheAverageGainBank","CacheAverageGainWrink","CacheAverageGainWrinkFattest","CacheAverageGainChoEgg","CacheAverageCPS","CacheLastHeavenlyCheck","CacheLastHeavenlyChips","CacheDoRemakeBuildPrices","CacheHadBuildAura","SimBuildingsOwned","SimUpgradesOwned","SimPledges","SimAchievementsOwned","SimHeavenlyPower","SimPrestige","SimDragonAura","SimDragonAura2","SimGod1","SimGod2","SimGod3","SimDoSims","SimEffs","SimCookiesPs","SimCookiesPsRaw","CacheDragonAura","CacheDragonAura2","CacheLastDragonLevel","CacheCostDragonUpgrade","CacheLucky","CacheLuckyReward","CacheLuckyWrathReward","CacheLuckyFrenzy","CacheLuckyRewardFrenzy","CacheLuckyWrathRewardFrenzy","CacheConjure","CacheConjureReward","CacheEdifice","CacheEdificeBuilding","CacheNoGoldSwitchCookiesPS","CacheDragonsFortuneMultAdjustment","CacheGoldenCookiesMult","CacheWrathCookiesMult","CacheHCPerSecond","CacheCentEgg","CacheSeaSpec","CacheLastChoEgg","CacheObjects1","CacheObjects10","CacheObjects100","CacheWrinklersTotal","CacheWrinklersNormal","CacheWrinklersFattest","CacheCurrWrinklerCPSMult","CacheCurrWrinklerCount","CacheUpgrades","CacheAverageClicks","CacheMissingUpgrades","CacheMissingUpgradesPrestige","CacheMissingUpgradesCookies","CacheChainRequired","CacheChainRequiredNext","CacheChainMaxReward","CacheChainWrathRequired","CacheChainWrathRequiredNext","CacheChainWrathMaxReward","CacheChainFrenzyRequired","CacheChainFrenzyRequiredNext","CacheChainFrenzyMaxReward","CacheChainFrenzyWrathRequired","CacheChainFrenzyWrathRequiredNext","CacheChainFrenzyWrathMaxReward","CacheRealCookiesEarned","CacheAvgCPSWithChoEgg","CacheSpawnedGoldenShimmer","CacheSeasonPopShimmer","CacheTimeTillNextPrestige","CacheMinPP","CachePPArray","CacheGoldenShimmersByID","CacheSellForChoEgg","CacheGods","0","1","2","3","4","5","6","7","8","10","SimObjects","SimUpgrades","SimAchievements","SimAuraMult","what","dragonAuras","SimGetSellMultiplier","giveBack","SimEff","def","SimHas","it","ascensionMode","pool","tier","bought","SimHasGod","hasGod","Temple","minigame","Objects","god","gods","id","SimModifyBuildingPrice","building","price","ModifiedPrice","hasBuff","fortune","minigameLoaded","godLvl","BuildingSell","build","basePrice","free","amount","noSim","noSimRes","toChange","startingAmount","moni","buyBulk","priceIncrease","modifyBuildingPrice","getSellMultiplier","UpdateBuildings","buyMode","BuildColour","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColour","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColour","j","childNodes","div","SortUpgrades","nameChecker","arr2","upgrade","findIndex","order","GetCPS","CPSMode","CalcWrink","cookiesPs","cpsSucked","wrinklers","GetWrinkConfigBank","CreateTimer","bars","timerBar","margin","fontSize","marginRight","verticalAlign","colorBar","borderTopRightRadius","borderBottomRightRadius","timer","marginLeft","CreateBotBarBuildingColumn","buildingName","bonus","header","substring","lastChild","paddingLeft","UpdateBotBar","BotBar","count","PPString","PPDisplayTime","timeColour","bulkPrice","cookies","UpdateBackground","Background","LeftBackground","UpdateBotTimerBarPosition","TimerBar","TimerBarPos","ToggleTimerBar","CacheDragonAuras","dragonAura","dragonAura2","InitAchievement","achievementName","Achievements","you","SimGetTieredCpsMult","mult","tieredUpgrades","Tiers","special","synergies","syn","buildingTie1","buildingTie2","grandma","Grandma","misfortune","vanilla","InitialBuildingData","cps","magicCpS","ComputeCps","GrandmaSynergies","UpgradesByPool","kitten","Portal","baseCps","baseCPS","InitUpgrade","upgradeName","Upgrades","power","level","pow","CopyData","UpgradesOwned","pledges","AchievementsOwned","heavenlyPower","prestige","totalCookies","slot","won","TooltipCreateHeader","fontWeight","TooltipCreateCalculationSection","tooltip","income","marginBottom","click","production","CalculateGrimoireRefillTime","currentMagic","maxMagic","targetMagic","magic","fps","GetCPSBuffMult","buffs","multCpS","ToggleToolWarnPos","ToolWarnPos","UpdateTooltips","tooltipBox","paddingBottom","TooltipCreateTooltipBox","TooltipBuildUpgrade","increase","productionAchievs","HasAchiev","achiev","nextProductionAchiev","Building","getPrice","bonusMouse","previousSibling","chocolate","Upgrade","TooltipLump","lumpType","lumpColour","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColour","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","plantName","GardenPlots","totalGain","mortal","tile","immortal","matureBase","HarvestAll","WrinklerReward","WrinklerButton","TooltipPantheon","GodID","cps1","cps2","cps3","PantheonGods","getElementById","TooltipWarn","create","boxId","labelTextFront","labelTextBack","deficitId","transition","labelDiv","labelSpan","deficitDiv","deficitSpan","ToolWarnUser","TooltipCreateWarningSection","bonusIncomeUsed","ToolWarnBon","limitLucky","bonusNoFren","ToolWarnLucky","ToolWarnLuckyFrenzy","limitLuckyFrenzy","ToolWarnConjure","limitConjure","ToolWarnConjureFrenzy","limitConjureFrenzy","ToolWarnEdifice","children","Warnings","Draw","prefs","autosave","drawT","onMenu","Stats","innerText","sayTime","T","maxWidthTwoBar","maxWidthOneBar","numberOfTimers","shimmerTypes","golden","spawned","Has","minTime","maxTime","TimerBarOverlay","season","reindeer","BuffTimerBars","classColour","UpdateTimerBar","TooltipWrink","showingTooltip","phase","selected","placeholder","wrinkler","minWidth","escape","CheckWrinklerTooltip","sucked","toSuck","UpdateWrinklerTooltip","UpStats","UpdateMenu","monospace","CMAvgQueue","[object Object]","maxLength","queue","newValue","timePeriod","CacheAvgCPS","currDate","Date","now","choEggTotal","cookiesEarned","timeDiff","bankDiffAvg","wrinkDiffAvg","wrinkFattestDiffAvg","choEggDiffAvg","clicksDiffAvg","cookieClicks","addLatest","cpsLength","AvgCPSHist","calcAverage","choEgg","HasUnlocked","AvgClicksHist","ColourOfPP","PPSecondsLowerLimit","PPOnlyConsiderBuyable","CacheColour","PPRigidelMode","getSumPrice","PPExcludeTop","CachePP","PP_CachePP","indexOfMin","CacheBuildingsPP","BuildingGetPrice","SimWin","CalculateGains","effs","myEffs","ii","heavenlyMult","SimGetHeavenlyMultiplier","heralds","cookieUpgrades","buildMult","sin","santaLevel","milkProgress","milkMult","catMult","storedCps","eggMult","day","startDate","lumps","rawCookiesPs","CpsAchievements","threshold","auraMult","bakeryName","goldenSwitchMult","upgrades","goldenCookieUpgrades","veilMult","runModHookOnValue","Fortunes","HalloCookies","ChristCookies","ValCookies","PlantDrops","SimHasAchiev","CheckOtherAchiev","grandmas","buildingsOwned","mathematician","base10","minAmount","ObjectsById","Cursor","hasAllHalloCook","hasAllChristCook","list","fortunes","CacheBuildingIncome","result","tieredAchievs","achievUnlock","lastAchievementsOwned","BuyBuildingsBonusIncome","CacheBuildingsPrices","CacheIncome","bonusIncome","unlocked","CountsAsUpgradeOwned","diffMouseCPS","multClick","out","MouseCps","computedMouseCps","BuyUpgradesBonusIncome","MaxChainCookieReward","digit","maxPayout","totalFromChain","nextMoni","nextRequired","chain","LN10","CacheChain","cpsBuffMult","CacheHeavenlyChipsPS","chipsOwned","HowMuchPrestige","cookiesReset","ascendNowToGet","heavenlyChipsDiffAvg","CacheAllMissingUpgrades","classes","noFrame","crates","icon","iconFunction","getDynamicTooltip","crateMissing","CacheSeasonSpec","CacheStatsCookies","CacheGoldenAndWrathCookiesMults","goldenMult","wrathMult","eff","CacheWrinklers","InitCache","SettingsDefault","DetailedTime","UpgradeBarFixedPos","DragonAuraInfo","GrimoireBar","GCTimer","Favicon","HideSectionsButtons","TooltipAmor","TooltipAscendButton","MissingUpgrades","HeavenlyChipsTarget","ShowMissedGC","GeneralSound","GCNotification","GCFlash","ColourGCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","ColourFortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","ColourSeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","ColourGardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","ColourMagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","ColourWrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","ColourWrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","BulkBuyBlock","Header","Favourite","Calculation","Notation","Colours","BarsDisplay","Tooltip","Statistics","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingColours","SettingVolume","SettingInputNumber","SettingsData","insertBefore","UpBarColor","save","stringify","favouriteSettings","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","Sound_PlaySound","url","sndConfig","volConfig","sound","Audio","volume","play","CreateNotification","notifyConfig","title","message","visibilityState","badge","CMLoop","OnAscend","AscendTimer","mods","CachePantheonGods","sellTotal","Bank","marketGoods","goods","goodsVal","marketGood","stock","cookiesPsRawHighest","buildingsToSacrifice","highestBuilding","SellBuildingsForChoEgg","CacheSellAllForChoEgg","hasBuildAura","godMult","CacheCurrWrinklerCPS","cookiesToNext","HowManyCookiesReset","LoopCache","shimmers","spawnLead","cookie","fontFamily","onclick","pop","onmouseover","filter","webkitFilter","onmouseout","CreateGCTimer","transform","life","TickerEffect","nextStep","CheckMagicMeter","CurrentWrinklers","getWrinklersMax","CheckWrinklerCount","UpdateColours","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","Colors","mod","PopAllNormalWrinklers","hp","CreateTooltip","buildPrice","amortizeAmount","storedTotalCps","globalCpsMult","crateTooltip","lumpTooltip","spellTooltip","tileTooltip","toolTooltip","godTooltip","slotTooltip","area","ReplaceTooltipGrimoire","dynamic","wobble","ReplaceNativeGrimoireDraw","magicBarTextL","ReplaceNativeGrimoire","launch","ReplaceNativeGrimoireLaunch","jscolor_default","ToggleSetting_ConfigPrefix","ToggleConfigVolume","ToggleHeader","StatsHeader","span","StatsListing","listingName","StatsMissDisp","theMissDisp","frag","createDocumentFragment","missing","AddMenuStats","stats","goldCookTooltip","section","luckyColour","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColourFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColour","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColour","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColourFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColourFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColour","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColour","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColour","bakeberryFrag","chocorootColour","chocorootFrag","queenbeetColour","queenbeetFrag","duketaterColour","duketaterFrag","missingPlantDrops","GardenSection","possiblePresMax","neededCook","cookiesNextFrag","cookiesNextSmall","heavenlyChips","HCTarget","CookiesTillTarget","resetBonus","newHeavenlyChips","curCPS","ResetCPS","ResetBonus","resetFrag","resetSmall","currentPrestige","willHave","willGet","delta7","next7Reset","next7Total","frag7","delta777","next777Reset","next777Total","frag777","delta777777","next777777Reset","next777777Total","frag777777","PrestigeSection","popAllFrag","popAllA","popFattestFrag","popFattestA","specDisp","missingHalloweenCookies","missingChristmasCookies","missingValentineCookies","missingNormalEggs","eggDrops","missingRareEggs","rareEggDrops","centEgg","failRateHalloween","dropRateMult","obtainedCookiesChance","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","FavStar","ele","ToggleFavouriteSetting","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","content","promptWrapL","promptL","PlaySound","promptAnchorL","darkenL","focus","promptOn","UpdatePrompt","CookieMonsterPrompt","outerHTML","ClosePrompt","innerSpan","FixMouseY","timerBarHeight","mouseY","ReplaceNative","drawMod","from","update","updateMod","warnOffset","tta","tt","UpdateTooltipLocation","UpdateWrinklers","UpdateSpecial","ClickCookie","mouseDown","setOnCrate","ClickProduct","DescribeDragonAura","aura","bonusCPS","priceOfChange","CalculateChangeAura","timeToRecover","bonusCPSPercentage","minHeight","div2","AddAuraInfo","ToggleSpecialMenu","on","shouldHide","AddDragonLevelUpTooltip","index","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","backgroundColour","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateFlashScreen","CreateSectionHideButtons","getElementsByTagName","CreateFavicon","CreateSimpleTooltip","append","CreateWrinklerButtons","canLumps","child","coords","ReplaceTooltipPantheon","popups","Popup","Notify","Win","CM","proceed","confirm","registerHook","load","registerMod"],"mappings":"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C,KAAKC,YACpC1U,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,QAQlD,MAAMyI,EAAS,CAAC,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGhDC,EAAa,CACjB,GACA,GACA,IACA,IACA,KACA,QACA,QACA,OACA,OACA,MACA,MACA,MACA,QACA,SACA,SACA,cACA,UACA,SACA,YACA,UACA,WACA,SACA,WACA,YACA,YACA,kBAIIC,EAAwB,CAC5B,GACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,OAMF,IAAIC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAOAC,EA1BAC,EAAqB,GAErBC,EAAwB,GACxBC,EAAuB,GAOvBC,EAAkB,GAqBtB,MAAMC,EAAgB,SAChBC,EAAgB,SAMhBC,EAAa,OACbC,EAAc,QACdC,EAAe,SACfC,EAAe,SACfC,EAAY,MACZC,EAAe,SACfC,EAAa,OACbC,EAAa,OACbC,EAAc,QACdC,EAAkB,CACtBH,EACAN,EACAC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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://cookiemonster-mod/CookieMonster.js"],"names":["__webpack_modules__","877","module","global","factory","exports","document","win","Error","window","this","BoxShadow","funcName","elm","jsc","jscolor","initialized","instances","readyQueue","register","addEventListener","pub","init","installBySelector","selector","rootNode","node","elms","querySelectorAll","matchClass","RegExp","lookupClass","i","length","dataOpts","m","undefined","type","toLowerCase","isColorAttrSupported","getDataAttr","className","match","targetElm","optsStr","console","warn","docsRef","opts","trim","parseOptionsStr","e","str","JSON","parse","eParse","looseJSON","Function","eEval","getInstances","inst","targetElement","push","createEl","tagName","el","createElement","setData","nodeOrSelector","sel","querySelector","isNode","val","Node","nodeType","nodeName","removeChildren","firstChild","removeChild","isTextInput","isButton","n","indexOf","isButtonEmpty","value","textContent","isPassiveEventSupported","supported","Object","defineProperty","get","removeEventListener","setAttribute","dataProp","obj","arguments","data","hasOwnProperty","prop","map","removeData","getData","setDefault","name","attrName","getAttribute","setDataAttr","_attachedGroupEvents","attachGroupEvent","groupName","evnt","func","detachGroupEvents","evt","preventDefault","returnValue","captureTarget","target","setCapture","_capturedTarget","releaseTarget","releaseCapture","triggerEvent","eventName","bubbles","cancelable","ev","Event","createEvent","initEvent","dispatchEvent","triggerInputEvent","eventKey","keys","9","13","27","code","keyCode","strList","replace","split","hasClass","classList","contains","addClass","classNames","add","removeClass","repl","remove","getCompStyle","getComputedStyle","currentStyle","setStyle","styles","important","reversible","priority","origStyle","setVal","style","setProperty","hexColor","r","g","b","Math","round","toString","substr","toUpperCase","hexaColor","a","rgbColor","rgbaColor","linearGradient","stdName","prefixes","helper","tryFunc","tryVal","background","getFuncName","Array","prototype","join","call","setBorderRadius","border-radius","setBoxShadow","box-shadow","getElementPos","relativeToViewport","x","y","rect","getBoundingClientRect","left","top","viewPos","getViewPos","getElementSize","offsetWidth","offsetHeight","getAbsPointerPos","changedTouches","clientX","clientY","getRelPointerPos","targetRect","srcElement","doc","documentElement","pageXOffset","scrollLeft","clientLeft","pageYOffset","scrollTop","clientTop","getViewSize","innerWidth","clientWidth","innerHeight","clientHeight","RGB_HSV","min","v","max","h","HSV_RGB","s","u","floor","parseColorString","ret","rgba","format","parseInt","charAt","mR","mG","mB","mA","par","re","parseFloat","parsePaletteValue","mixed","vals","isArray","colors","color","containsTranparentColor","isAlphaFormat","scaleCanvasForHighDPR","canvas","dpr","devicePixelRatio","width","height","getContext","scale","genColorPreviewCanvas","separatorPos","specWidth","scaleForHighDPR","sepW","previewSeparator","sqSize","chessboardSize","sqColor1","chessboardColor1","sqColor2","chessboardColor2","cWidth","cHeight","ctx","fillStyle","fillRect","start","clearRect","lineWidth","beginPath","strokeStyle","moveTo","lineTo","stroke","genColorPreviewGradient","position","params","right","apply","redrawPosition","picker","owner","tp","vp","thisObj","fixed","c","ts","vs","pd","getPickerDims","ps","borderW","borderH","l","smartPosition","pp","positionValue","contractShadow","_drawPosition","vShadow","shadowBlur","wrap","boxS","shadow","shadowColor","w","controlBorderWidth","sliderSpace","getControlPadding","sliderSize","getSliderChannel","hasAlphaChannel","pal","getPaletteDims","padding","closeButton","buttonHeight","pW","pH","contentW","contentH","paddedW","paddedH","borderWidth","palette","cols","rows","cellW","cellH","sampleCount","_palette","paletteCols","ceil","paletteSpacing","paletteHeight","pointerBorderWidth","pointerThickness","getPadYChannel","mode","triggerCallback","callback","error","triggerGlobal","eventNames","trigger","_pointerMoveEvent","mouse","touch","_pointerEndEvent","_pointerOrigin","onDocumentKeyUp","tryHide","onWindowResize","onWindowScroll","onParentScroll","onDocumentMouseDown","showOnClick","disabled","show","onControlPointerStart","onPickerTouchStart","controlName","pointerType","registerDragEvents","offset","onDocumentPointerMove","onDocumentPointerEnd","parent","frameElement","ofs","abs","rel","channels","fromHSVA","setPad","setSld","setASld","onPaletteSampleClick","currentTarget","_setFormat","getFormat","paletteSetsAlpha","_paletteHasTransparency","fromRGBA","hideOnPaletteClick","hide","ofsX","ofsY","pointerAbs","xVal","yVal","fmt","createPadCanvas","draw","hGrad","createLinearGradient","addColorStop","vGrad","createSliderGradient","color1","color2","grad","createASliderGradient","hShadow","blur","spread","inset","flags","leaveValue","leaveAlpha","leavePreview","enumOpts","previewPosition","alphaChannel","deprecatedOpts","styleElement","onFineChange","overwriteImportant","closable","insetWidth","insetColor","refine","THIS","setOption","option","oldOpt","newOpt","setter","getOption","getter","drawPicker","_processParentElementsInDOM","box","boxB","pad","padB","padM","padCanvas","cross","crossBY","crossBX","crossLY","crossLX","sld","sldB","sldM","sldGrad","sldPtrS","sldPtrIB","sldPtrMB","sldPtrOB","asld","asldB","asldM","asldGrad","asldPtrS","asldPtrIB","asldPtrMB","asldPtrOB","btn","btnT","appendChild","passive","insetColors","outsetColor","p","displaySlider","displayAlphaSlider","pickerDims","crossOuterSize","crossSize","controlPadding","borderRadius","PI","clear","zIndex","border","borderColor","backgroundColor","opacity","controlBorderColor","cursor","instance","control","pointerBorderColor","pointerColor","overflow","display","sliderInnerSpace","innerHTML","chessboard","si","sampleColor","sampleCssColor","sc","sw","backgroundImage","toDataURL","backgroundRepeat","backgroundPosition","bottom","maxWidth","whiteSpace","buttonColor","font","textAlign","onmousedown","lineHeight","createTextNode","closeText","redrawPad","redrawSld","redrawASld","activeClassName","container","body","parentNode","yChannel","rgb1","rgb2","rgb","toHEXString","sldChannel","isPickerOwner","alpha","onChange","onInput","valueElement","alphaElement","previewElement","previewSize","previewPadding","required","hash","uppercase","forceStyle","hideOnLeave","minS","maxS","minV","maxV","minA","maxA","redraw","exposeColor","success","opt","channel","res","evs","callbackProp","isNaN","hsv","fromHSV","fromRGB","fromString","setPreviewElementBg","setValueElementValue","toHEXAString","toRGBString","toRGBAString","toGrayscale","toCanvas","toBackground","isLight","_currentFormat","processValueInput","processAlphaInput","colorStr","alphaVal","setAlphaElementValue","backgrounds","image","size","repeat","origin","preview","bg","sty","background-image","background-position","background-size","background-repeat","background-origin","padding-left","padding-right","_parentElementsProcessed","compStyle","set__palette","options","presetsArr","preset","slice","pres","presets","nonProperties","test","min-width","valueElementOrigEvents","oninput","oldVal","initValue","initAlpha","install","shift","ready","triggerNow","installByClassName","JSColor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__esModule","d","definition","key","o","enumerable","CMOptions","ToggleWrinklerButtons","WrinklerButtons","Game","elderWrath","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColourTextPre","ColourBackPre","ColourBlue","ColourGreen","ColourYellow","ColourOrange","ColourRed","ColourPurple","ColourGray","ColourPink","ColourBrown","ColoursOrdering","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColours","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","FavouriteSettings","BeautifyFormatting_Beautify","num","floats","forced","decimals","ScaleDecimals","Infinity","Scale","Beautify","Number","isFinite","answer","ScaleCutoff","ScaleSeparator","toLocaleString","toExponential","exponential","AmountOfTenPowerThree","toFixed","log","FormatTime","time","longFormat","formattedTime","TimeFormat","GetTimeColour","text","CookiesDiff","WrinkDiff","WrinkFattestDiff","ChoEggDiff","ClicksDiff","HeavenlyChipsDiff","CacheLastCPSCheck","CacheLastCookies","CacheLastWrinkCookies","CacheLastWrinkFattestCookies","CacheLastClicks","CacheAverageGainBank","CacheAverageGainWrink","CacheAverageGainWrinkFattest","CacheAverageGainChoEgg","CacheAverageCPS","CacheLastHeavenlyCheck","CacheLastHeavenlyChips","CacheDoRemakeBuildPrices","CacheHadBuildAura","SimBuildingsOwned","SimUpgradesOwned","SimPledges","SimAchievementsOwned","SimHeavenlyPower","SimPrestige","SimDragonAura","SimDragonAura2","SimGod1","SimGod2","SimGod3","SimDoSims","SimEffs","SimCookiesPs","SimCookiesPsRaw","CacheDragonAura","CacheDragonAura2","CacheLastDragonLevel","CacheCostDragonUpgrade","CacheLucky","CacheLuckyReward","CacheLuckyWrathReward","CacheLuckyFrenzy","CacheLuckyRewardFrenzy","CacheLuckyWrathRewardFrenzy","CacheConjure","CacheConjureReward","CacheEdifice","CacheEdificeBuilding","CacheNoGoldSwitchCookiesPS","CacheDragonsFortuneMultAdjustment","CacheGoldenCookiesMult","CacheWrathCookiesMult","CacheHCPerSecond","CacheCentEgg","CacheSeaSpec","CacheLastChoEgg","CacheObjects1","CacheObjects10","CacheObjects100","CacheWrinklersTotal","CacheWrinklersNormal","CacheWrinklersFattest","CacheCurrWrinklerCPSMult","CacheCurrWrinklerCount","CacheUpgrades","CacheAverageClicks","CacheMissingUpgrades","CacheMissingUpgradesPrestige","CacheMissingUpgradesCookies","CacheChainRequired","CacheChainRequiredNext","CacheChainMaxReward","CacheChainWrathRequired","CacheChainWrathRequiredNext","CacheChainWrathMaxReward","CacheChainFrenzyRequired","CacheChainFrenzyRequiredNext","CacheChainFrenzyMaxReward","CacheChainFrenzyWrathRequired","CacheChainFrenzyWrathRequiredNext","CacheChainFrenzyWrathMaxReward","CacheRealCookiesEarned","CacheAvgCPSWithChoEgg","CacheSpawnedGoldenShimmer","CacheSeasonPopShimmer","CacheTimeTillNextPrestige","CacheMinPP","CachePPArray","CacheGoldenShimmersByID","CacheSellForChoEgg","CacheGods","0","1","2","3","4","5","6","7","8","10","SimObjects","SimUpgrades","SimAchievements","SimAuraMult","what","dragonAuras","SimGetSellMultiplier","giveBack","SimEff","def","SimHas","it","ascensionMode","pool","tier","bought","SimHasGod","hasGod","Temple","minigame","Objects","god","gods","id","SimModifyBuildingPrice","building","price","ModifiedPrice","hasBuff","fortune","minigameLoaded","godLvl","BuildingSell","build","basePrice","free","amount","noSim","noSimRes","toChange","startingAmount","moni","buyBulk","priceIncrease","modifyBuildingPrice","getSellMultiplier","UpdateBuildings","buyMode","BuildColour","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColour","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColour","j","childNodes","div","SortUpgrades","nameChecker","arr2","upgrade","findIndex","order","GetCPS","CPSMode","CalcWrink","cookiesPs","cpsSucked","wrinklers","GetWrinkConfigBank","CreateTimer","bars","timerBar","margin","fontSize","marginRight","verticalAlign","colorBar","borderTopRightRadius","borderBottomRightRadius","timer","marginLeft","CreateBotBarBuildingColumn","buildingName","bonus","header","substring","lastChild","paddingLeft","UpdateBotBar","BotBar","count","PPString","PPDisplayTime","timeColour","bulkPrice","cookies","UpdateBackground","Background","LeftBackground","UpdateBotTimerBarPosition","TimerBar","TimerBarPos","ToggleTimerBar","CacheDragonAuras","dragonAura","dragonAura2","InitAchievement","achievementName","Achievements","you","SimGetTieredCpsMult","mult","tieredUpgrades","Tiers","special","synergies","syn","buildingTie1","buildingTie2","grandma","Grandma","misfortune","vanilla","InitialBuildingData","cps","magicCpS","ComputeCps","GrandmaSynergies","UpgradesByPool","kitten","Portal","baseCps","baseCPS","InitUpgrade","upgradeName","Upgrades","power","level","pow","CopyData","UpgradesOwned","pledges","AchievementsOwned","heavenlyPower","prestige","totalCookies","slot","won","TooltipCreateHeader","fontWeight","TooltipCreateCalculationSection","tooltip","income","marginBottom","click","production","CalculateGrimoireRefillTime","currentMagic","maxMagic","targetMagic","magic","fps","GetCPSBuffMult","buffs","multCpS","ToggleToolWarnPos","ToolWarnPos","UpdateTooltips","tooltipBox","paddingBottom","TooltipCreateTooltipBox","TooltipBuildUpgrade","increase","productionAchievs","HasAchiev","achiev","nextProductionAchiev","Building","getPrice","bonusMouse","previousSibling","chocolate","Upgrade","TooltipLump","lumpType","lumpColour","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColour","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","plantName","GardenPlots","totalGain","mortal","tile","immortal","matureBase","HarvestAll","WrinklerReward","WrinklerButton","TooltipPantheon","GodID","cps1","cps2","cps3","PantheonGods","getElementById","TooltipWarn","create","boxId","labelTextFront","labelTextBack","deficitId","transition","labelDiv","labelSpan","deficitDiv","deficitSpan","ToolWarnUser","TooltipCreateWarningSection","bonusIncomeUsed","ToolWarnBon","limitLucky","bonusNoFren","ToolWarnLucky","ToolWarnLuckyFrenzy","limitLuckyFrenzy","ToolWarnConjure","limitConjure","ToolWarnConjureFrenzy","limitConjureFrenzy","ToolWarnEdifice","children","Warnings","Draw","prefs","autosave","drawT","onMenu","Stats","innerText","sayTime","T","maxWidthTwoBar","maxWidthOneBar","numberOfTimers","shimmerTypes","golden","spawned","Has","minTime","maxTime","TimerBarOverlay","season","reindeer","BuffTimerBars","classColour","UpdateTimerBar","TooltipWrink","showingTooltip","phase","selected","placeholder","wrinkler","minWidth","escape","CheckWrinklerTooltip","sucked","toSuck","UpdateWrinklerTooltip","UpStats","UpdateMenu","monospace","CMAvgQueue","[object Object]","maxLength","queue","newValue","timePeriod","CacheAvgCPS","currDate","Date","now","choEggTotal","cookiesEarned","timeDiff","bankDiffAvg","wrinkDiffAvg","wrinkFattestDiffAvg","choEggDiffAvg","clicksDiffAvg","cookieClicks","addLatest","cpsLength","AvgCPSHist","calcAverage","choEgg","HasUnlocked","AvgClicksHist","ColourOfPP","PPSecondsLowerLimit","PPOnlyConsiderBuyable","CacheColour","PPRigidelMode","getSumPrice","PPExcludeTop","CachePP","PP_CachePP","indexOfMin","CacheBuildingsPP","BuildingGetPrice","SimWin","CalculateGains","effs","myEffs","ii","heavenlyMult","SimGetHeavenlyMultiplier","heralds","cookieUpgrades","buildMult","sin","santaLevel","milkProgress","milkMult","catMult","storedCps","eggMult","day","startDate","lumps","rawCookiesPs","CpsAchievements","threshold","auraMult","bakeryName","goldenSwitchMult","upgrades","goldenCookieUpgrades","veilMult","runModHookOnValue","Fortunes","HalloCookies","ChristCookies","ValCookies","PlantDrops","SimHasAchiev","CheckOtherAchiev","grandmas","buildingsOwned","mathematician","base10","minAmount","ObjectsById","Cursor","hasAllHalloCook","hasAllChristCook","list","fortunes","CacheBuildingIncome","result","tieredAchievs","achievUnlock","lastAchievementsOwned","BuyBuildingsBonusIncome","CacheBuildingsPrices","CacheIncome","bonusIncome","unlocked","CountsAsUpgradeOwned","diffMouseCPS","multClick","out","MouseCps","computedMouseCps","BuyUpgradesBonusIncome","MaxChainCookieReward","digit","maxPayout","totalFromChain","nextMoni","nextRequired","chain","LN10","CacheChain","cpsBuffMult","CacheHeavenlyChipsPS","chipsOwned","HowMuchPrestige","cookiesReset","ascendNowToGet","heavenlyChipsDiffAvg","CacheAllMissingUpgrades","classes","noFrame","crates","icon","iconFunction","getDynamicTooltip","crateMissing","CacheSeasonSpec","CacheStatsCookies","CacheGoldenAndWrathCookiesMults","goldenMult","wrathMult","eff","CacheWrinklers","InitCache","SettingsDefault","DetailedTime","UpgradeBarFixedPos","DragonAuraInfo","GrimoireBar","GCTimer","Favicon","HideSectionsButtons","TooltipAmor","TooltipAscendButton","MissingUpgrades","HeavenlyChipsTarget","ShowMissedGC","GeneralSound","GCNotification","GCFlash","ColourGCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","ColourFortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","ColourSeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","ColourGardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","ColourMagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","ColourWrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","ColourWrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","BulkBuyBlock","Header","Favourite","Calculation","Notation","Colours","BarsDisplay","Tooltip","Statistics","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingColours","SettingVolume","SettingInputNumber","SettingsData","insertBefore","UpBarColor","save","stringify","favouriteSettings","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","Sound_PlaySound","url","sndConfig","volConfig","sound","Audio","volume","play","CreateNotification","notifyConfig","title","message","visibilityState","badge","CMLoop","OnAscend","AscendTimer","mods","CachePantheonGods","sellTotal","Bank","marketGoods","goods","goodsVal","marketGood","stock","cookiesPsRawHighest","buildingsToSacrifice","highestBuilding","SellBuildingsForChoEgg","CacheSellAllForChoEgg","hasBuildAura","godMult","CacheCurrWrinklerCPS","cookiesToNext","HowManyCookiesReset","LoopCache","shimmers","spawnLead","cookie","fontFamily","onclick","pop","onmouseover","filter","webkitFilter","onmouseout","CreateGCTimer","transform","life","TickerEffect","nextStep","CheckMagicMeter","CurrentWrinklers","getWrinklersMax","CheckWrinklerCount","UpdateColours","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","Colors","mod","PopAllNormalWrinklers","hp","CreateTooltip","buildPrice","amortizeAmount","storedTotalCps","globalCpsMult","crateTooltip","lumpTooltip","spellTooltip","tileTooltip","toolTooltip","godTooltip","slotTooltip","area","ReplaceTooltipGrimoire","dynamic","wobble","ReplaceNativeGrimoireDraw","magicBarTextL","ReplaceNativeGrimoire","launch","ReplaceNativeGrimoireLaunch","jscolor_default","ToggleSetting_ConfigPrefix","ToggleConfigVolume","ToggleHeader","StatsHeader","span","StatsListing","listingName","StatsMissDisp","theMissDisp","frag","createDocumentFragment","missing","AddMenuStats","stats","goldCookTooltip","section","luckyColour","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColourFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColour","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColour","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColourFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColourFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColour","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColour","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColour","bakeberryFrag","chocorootColour","chocorootFrag","queenbeetColour","queenbeetFrag","duketaterColour","duketaterFrag","missingPlantDrops","GardenSection","possiblePresMax","neededCook","cookiesNextFrag","cookiesNextSmall","heavenlyChips","HCTarget","CookiesTillTarget","resetBonus","newHeavenlyChips","curCPS","ResetCPS","ResetBonus","resetFrag","resetSmall","currentPrestige","willHave","willGet","delta7","next7Reset","next7Total","frag7","delta777","next777Reset","next777Total","frag777","delta777777","next777777Reset","next777777Total","frag777777","PrestigeSection","popAllFrag","popAllA","popFattestFrag","popFattestA","specDisp","missingHalloweenCookies","missingChristmasCookies","missingValentineCookies","missingNormalEggs","eggDrops","missingRareEggs","rareEggDrops","centEgg","failRateHalloween","dropRateMult","obtainedCookiesChance","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","FavStar","ele","ToggleFavouriteSetting","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","content","promptWrapL","promptL","PlaySound","promptAnchorL","darkenL","focus","promptOn","UpdatePrompt","CookieMonsterPrompt","outerHTML","ClosePrompt","innerSpan","FixMouseY","timerBarHeight","mouseY","ReplaceNative","drawMod","from","update","updateMod","warnOffset","tta","tt","UpdateTooltipLocation","UpdateWrinklers","UpdateSpecial","ClickCookie","mouseDown","setOnCrate","ClickProduct","DescribeDragonAura","aura","bonusCPS","priceOfChange","CalculateChangeAura","timeToRecover","bonusCPSPercentage","minHeight","div2","AddAuraInfo","ToggleSpecialMenu","on","shouldHide","AddDragonLevelUpTooltip","index","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","backgroundColour","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateFlashScreen","CreateSectionHideButtons","getElementsByTagName","CreateFavicon","CreateSimpleTooltip","append","CreateWrinklerButtons","canLumps","child","coords","ReplaceTooltipPantheon","popups","Popup","Notify","Win","CM","proceed","confirm","registerHook","load","registerMod"],"mappings":"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C,KAAKC,YACpC1U,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,QAQlD,MAAMyI,EAAS,CAAC,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGhDC,EAAa,CACjB,GACA,GACA,IACA,IACA,KACA,QACA,QACA,OACA,OACA,MACA,MACA,MACA,QACA,SACA,SACA,cACA,UACA,SACA,YACA,UACA,WACA,SACA,WACA,YACA,YACA,kBAIIC,EAAwB,CAC5B,GACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,OAMF,IAAIC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAOAC,EA1BAC,EAAqB,GAErBC,EAAwB,GACxBC,EAAuB,GAOvBC,EAAkB,GAqBtB,MAAMC,EAAgB,SAChBC,EAAgB,SAMhBC,EAAa,OACbC,EAAc,QACdC,EAAe,SACfC,EAAe,SACfC,EAAY,MACZC,EAAe,SACfC,EAAa,OACbC,EAAa,OACbC,EAAc,QACdC,EAAkB,CACtBH,EACAN,EACAC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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file diff --git a/src/Disp/MenuSections/Settings/CreateOption.js b/src/Disp/MenuSections/Settings/CreateOption.js index 5874b15..9d8d4ad 100644 --- a/src/Disp/MenuSections/Settings/CreateOption.js +++ b/src/Disp/MenuSections/Settings/CreateOption.js @@ -26,8 +26,10 @@ export default function CreatePrefOption(config) { div.className = 'listing'; if (CMOptions.FavouriteSettings === 1) { const FavStar = document.createElement('a'); - if (FavouriteSettings.includes(config)) FavStar.innerText = '★'; - else FavStar.innerText = '☆'; + if (FavouriteSettings.includes(config)) { + FavStar.innerText = '★'; + FavStar.style.color = 'yellow'; + } else FavStar.innerText = '☆'; FavStar.className = 'option'; FavStar.onclick = function () { ToggleFavouriteSetting(config); From 08a1e5aa6b2939376e62447b50a8a3d6ec4dcf0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20van=20Noord?= <13665637+DanielNoord@users.noreply.github.com> Date: Sat, 3 Apr 2021 09:06:07 +0200 Subject: [PATCH 2/3] Fixed overlapping labels in settings --- CookieMonster.js | 2 +- dist/CookieMonster.js | 2 +- dist/CookieMonster.js.map | 2 +- .../MenuSections/Settings/CreateOption.js | 55 ++++++++++++++----- src/Disp/VariablesAndData.js | 5 ++ 5 files changed, 49 insertions(+), 17 deletions(-) diff --git a/CookieMonster.js b/CookieMonster.js index 02d5bb7..ef2ced0 100644 --- a/CookieMonster.js +++ b/CookieMonster.js @@ -1,2 +1,2 @@ /*! For license information please see CookieMonster.js.LICENSE.txt */ -(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings){const e=document.createElement("a");se.includes(t)?(e.innerText="★",e.style.color="yellow"):e.innerText="☆",e.className="option",e.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(t),Mn(),Game.UpdateMenu()},o.appendChild(e),o.appendChild(document.createTextNode(" "))}if("bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); +(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"],["FavouriteSettingPlaceholder","Click to set this setting as favourite and show it in 'favourite' settings at the top of the Cookie Monster Settings","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings&&o.appendChild(function(e){const t=document.createElement("a");return se.includes(e)?(t.innerText="★",t.style.color="yellow"):t.innerText="☆",t.className="option",t.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(e),Mn(),Game.UpdateMenu()},t.onmouseover=function(){Game.tooltip.draw(this,escape(R.FavouriteSettingPlaceholder.innerHTML))},t.onmouseout=function(){Game.tooltip.hide()},t.appendChild(document.createTextNode(" ")),t}(t)),"bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,i.style.lineHeight="1.6",o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,n.style.lineHeight="1.6",o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,s.style.lineHeight="1.6",o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,a.style.lineHeight="1.6",n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,n.style.lineHeight="1.6",o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,a.style.lineHeight="1.6",o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); diff --git a/dist/CookieMonster.js b/dist/CookieMonster.js index 02d5bb7..ef2ced0 100644 --- a/dist/CookieMonster.js +++ b/dist/CookieMonster.js @@ -1,2 +1,2 @@ /*! For license information please see CookieMonster.js.LICENSE.txt */ -(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings){const e=document.createElement("a");se.includes(t)?(e.innerText="★",e.style.color="yellow"):e.innerText="☆",e.className="option",e.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(t),Mn(),Game.UpdateMenu()},o.appendChild(e),o.appendChild(document.createTextNode(" "))}if("bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); +(()=>{var e={877:function(e){!function(t,o){"use strict";"object"!=typeof e.exports?o(t):e.exports=t.document?o(t):function(e){if(!e.document)throw new Error("jscolor needs a window with document");return o(e)}}("undefined"!=typeof window?window:this,(function(e){"use strict";var t,o,n,i,a=((i={initialized:!1,instances:[],readyQueue:[],register:function(){void 0!==e&&e.document&&e.document.addEventListener("DOMContentLoaded",i.pub.init,!1)},installBySelector:function(t,o){if(!(o=o?i.node(o):e.document))throw new Error("Missing root node");for(var n=o.querySelectorAll(t),a=new RegExp("(^|\\s)("+i.pub.lookupClass+")(\\s*(\\{[^}]*\\})|\\s|$)","i"),r=0;r-1},isButtonEmpty:function(e){switch(i.nodeName(e)){case"input":return!e.value||""===e.value.trim();case"button":return""===e.textContent.trim()}return null},isPassiveEventSupported:function(){var t=!1;try{var o=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassive",null,o),e.removeEventListener("testPassive",null,o)}catch(e){}return t}(),isColorAttrSupported:(n=e.document.createElement("input"),!(!n.setAttribute||(n.setAttribute("type","color"),"color"!=n.type.toLowerCase()))),dataProp:"_data_jscolor",setData:function(){var e=arguments[0];if(3===arguments.length){var t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={},o=arguments[2];return t[a=arguments[1]]=o,!0}if(2===arguments.length&&"object"==typeof arguments[1]){t=e.hasOwnProperty(i.dataProp)?e[i.dataProp]:e[i.dataProp]={};var n=arguments[1];for(var a in n)n.hasOwnProperty(a)&&(t[a]=n[a]);return!0}throw new Error("Invalid arguments")},removeData:function(){var e=arguments[0];if(!e.hasOwnProperty(i.dataProp))return!0;for(var t=1;t=3&&(n=l[0].match(s))&&(i=l[1].match(s))&&(a=l[2].match(s)))return o.format="rgb",o.rgba=[parseFloat(n[1])||0,parseFloat(i[1])||0,parseFloat(a[1])||0,null],l.length>=4&&(r=l[3].match(s))&&(o.format="rgba",o.rgba[3]=parseFloat(r[1])||0),o}return!1},parsePaletteValue:function(e){var t=[];"string"==typeof e?e.replace(/#[0-9A-F]{3}([0-9A-F]{3})?|rgba?\(([^)]*)\)/gi,(function(e){t.push(e)})):Array.isArray(e)&&(t=e);for(var o=[],n=0;ns[n]&&-t[n]+e[n]+l[n]/2>s[n]/2&&e[n]+l[n]-d[n]>=0?e[n]+l[n]-d[n]:e[n],-t[a]+e[a]+l[a]+d[a]-p+p*r>s[a]?-t[a]+e[a]+l[a]/2>s[a]/2&&e[a]+l[a]-p-p*r>=0?e[a]+l[a]-p-p*r:e[a]+l[a]-p+p*r:e[a]+l[a]-p+p*r>=0?e[a]+l[a]-p+p*r:e[a]+l[a]-p-p*r];else var u=[e[n],e[a]+l[a]-p+p*r];var m=u[n],h=u[a],g=o.fixed?"fixed":"absolute",f=(u[0]+d[0]>e[0]||u[0]0?Math.ceil(l/o):0,i=Math.max(1,Math.floor((t-(o-1)*e.paletteSpacing)/o)),a=e.paletteHeight?Math.min(e.paletteHeight,i):i),n&&(r=n*a+(n-1)*e.paletteSpacing),{cols:o,rows:n,cellW:i,cellH:a,width:t,height:r}},getControlPadding:function(e){return Math.max(e.padding/2,2*e.pointerBorderWidth+e.pointerThickness-e.controlBorderWidth)},getPadYChannel:function(e){switch(e.mode.charAt(1).toLowerCase()){case"v":return"v"}return"s"},getSliderChannel:function(e){if(e.mode.length>2)switch(e.mode.charAt(2).toLowerCase()){case"s":return"s";case"v":return"v"}return null},triggerCallback:function(e,t){if(e[t]){var o=null;if("string"==typeof e[t])try{o=new Function(e[t])}catch(e){console.error(e)}else o=e[t];o&&o.call(e)}},triggerGlobal:function(e){for(var t=i.getInstances(),o=0;o0)for(var c=0;c=2&&"string"==typeof arguments[0]){try{if(!a(arguments[0],arguments[1]))return!1}catch(e){return console.warn(e),!1}return this.redraw(),this.exposeColor(),!0}if(1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0],t=!0;for(var o in e)if(e.hasOwnProperty(o))try{a(o,e[o])||(t=!1)}catch(e){console.warn(e),t=!1}return this.redraw(),this.exposeColor(),t}throw new Error("Invalid arguments")},this.channel=function(e,t){if("string"!=typeof e)throw new Error("Invalid value for channel name: "+e);if(void 0===t)return this.channels.hasOwnProperty(e.toLowerCase())?this.channels[e.toLowerCase()]:(console.warn("Getting unknown channel: "+e),!1);var o=!1;switch(e.toLowerCase()){case"r":o=this.fromRGBA(t,null,null,null);break;case"g":o=this.fromRGBA(null,t,null,null);break;case"b":o=this.fromRGBA(null,null,t,null);break;case"h":o=this.fromHSVA(t,null,null,null);break;case"s":o=this.fromHSVA(null,t,null,null);break;case"v":o=this.fromHSVA(null,null,t,null);break;case"a":o=this.fromHSVA(null,null,null,t);break;default:return console.warn("Setting unknown channel: "+e),!1}return!!o&&(this.redraw(),!0)},this.trigger=function(e){for(var t=i.strList(e),o=0;o127.5},this.hide=function(){p()&&(i.removeClass(n.targetElement,i.pub.activeClassName),i.picker.wrap.parentNode.removeChild(i.picker.wrap),delete i.picker.owner)},this.show=function(){l()},this.redraw=function(){p()&&l()},this.getFormat=function(){return this._currentFormat},this._setFormat=function(e){this._currentFormat=e.toLowerCase()},this.hasAlphaChannel=function(){return"auto"===this.alphaChannel?"any"===this.format.toLowerCase()||i.isAlphaFormat(this.getFormat())||void 0!==this.alpha||void 0!==this.alphaElement:this.alphaChannel},this.processValueInput=function(e){this.fromString(e)||this.exposeColor()},this.processAlphaInput=function(e){this.fromHSVA(null,null,null,parseFloat(e))||this.exposeColor()},this.exposeColor=function(e){var t=this.toString(),o=this.getFormat();if(i.setDataAttr(this.targetElement,"current-color",t),e&i.flags.leaveValue||!this.valueElement||("hex"!==o&&"hexa"!==o||(this.uppercase||(t=t.toLowerCase()),this.hash||(t=t.replace(/^#/,""))),this.setValueElementValue(t)),!(e&i.flags.leaveAlpha)&&this.alphaElement){var n=Math.round(100*this.channels.a)/100;this.setAlphaElementValue(n)}e&i.flags.leavePreview||!this.previewElement||((i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&this.previewPosition,this.setPreviewElementBg(this.toRGBAString())),p()&&(s(),c(),d())},this.setPreviewElementBg=function(e){if(this.previewElement){var t=null,o=null;(i.isTextInput(this.previewElement)||i.isButton(this.previewElement)&&!i.isButtonEmpty(this.previewElement))&&(t=this.previewPosition,o=this.previewSize);var n=[];if(e){n.push({image:i.genColorPreviewGradient(e,t,o?o-i.pub.previewSeparator.length:null),position:"left top",size:"auto",repeat:t?"repeat-y":"repeat",origin:"padding-box"});var a=i.genColorPreviewCanvas("rgba(0,0,0,0)",t?{left:"right",right:"left"}[t]:null,o,!0);n.push({image:"url('"+a.canvas.toDataURL()+"')",position:(t||"left")+" top",size:a.width+"px "+a.height+"px",repeat:t?"repeat-y":"repeat",origin:"padding-box"})}else n.push({image:"none",position:"left top",size:"auto",repeat:"no-repeat",origin:"padding-box"});for(var r={image:[],position:[],size:[],repeat:[],origin:[]},l=0;l=0;h-=1){var g=m[h];if(g)if(i.pub.presets.hasOwnProperty(g)){for(var u in i.pub.presets[g])if(i.pub.presets[g].hasOwnProperty(u))try{a(u,i.pub.presets[g][u])}catch(e){console.warn(e)}}else console.warn("Unknown preset: %s",g)}var f=["preset"];for(var u in o)if(o.hasOwnProperty(u)&&-1===f.indexOf(u))try{a(u,o[u])}catch(e){console.warn(e)}if(void 0===this.container?this.container=e.document.body:this.container=i.node(this.container),!this.container)throw new Error("Cannot instantiate color picker without a container element");if(this.targetElement=i.node(t),!this.targetElement){if("string"==typeof t&&/^[a-zA-Z][\w:.-]*$/.test(t))throw new Error("If '"+t+"' is supposed to be an ID, please use '#"+t+"' or any valid CSS selector.");throw new Error("Cannot instantiate color picker without a target element")}if(this.targetElement.jscolor&&this.targetElement.jscolor instanceof i.pub)throw new Error("Color picker already installed on this element");if(this.targetElement.jscolor=this,i.addClass(this.targetElement,i.pub.className),i.instances.push(this),i.isButton(this.targetElement)&&("button"!==this.targetElement.type.toLowerCase()&&(this.targetElement.type="button"),i.isButtonEmpty(this.targetElement))){i.removeChildren(this.targetElement),this.targetElement.appendChild(e.document.createTextNode(" "));var C=i.getCompStyle(this.targetElement);(parseFloat(C["min-width"])||0)-1){var G=i.parseColorString(b);this._currentFormat=G?G.format:"hex"}else this._currentFormat=this.format.toLowerCase();this.processValueInput(b),void 0!==k&&this.processAlphaInput(k)}}).pub.className="jscolor",i.pub.activeClassName="jscolor-active",i.pub.looseJSON=!0,i.pub.presets={},i.pub.presets.default={},i.pub.presets.light={backgroundColor:"rgba(255,255,255,1)",controlBorderColor:"rgba(187,187,187,1)",buttonColor:"rgba(0,0,0,1)"},i.pub.presets.dark={backgroundColor:"rgba(51,51,51,1)",controlBorderColor:"rgba(153,153,153,1)",buttonColor:"rgba(240,240,240,1)"},i.pub.presets.small={width:101,height:101,padding:10,sliderSize:14,paletteCols:8},i.pub.presets.medium={width:181,height:101,padding:12,sliderSize:16,paletteCols:10},i.pub.presets.large={width:271,height:151,padding:12,sliderSize:24,paletteCols:15},i.pub.presets.thin={borderWidth:1,controlBorderWidth:1,pointerBorderWidth:1},i.pub.presets.thick={borderWidth:2,controlBorderWidth:2,pointerBorderWidth:2},i.pub.sliderInnerSpace=3,i.pub.chessboardSize=8,i.pub.chessboardColor1="#666666",i.pub.chessboardColor2="#999999",i.pub.previewSeparator=["rgba(255,255,255,.65)","rgba(128,128,128,.65)"],i.pub.init=function(){if(!i.initialized)for(e.document.addEventListener("mousedown",i.onDocumentMouseDown,!1),e.document.addEventListener("keyup",i.onDocumentKeyUp,!1),e.addEventListener("resize",i.onWindowResize,!1),e.addEventListener("scroll",i.onWindowScroll,!1),i.pub.install(),i.initialized=!0;i.readyQueue.length;)i.readyQueue.shift()()},i.pub.install=function(e){var t=!0;try{i.installBySelector("[data-jscolor]",e)}catch(e){t=!1,console.warn(e)}if(i.pub.lookupClass)try{i.installBySelector("input."+i.pub.lookupClass+", button."+i.pub.lookupClass,e)}catch(e){}return t},i.pub.ready=function(e){return"function"!=typeof e?(console.warn("Passed value is not a function"),!1):(i.initialized?e():i.readyQueue.push(e),!0)},i.pub.trigger=function(e){var t=function(){i.triggerGlobal(e)};i.initialized?t():i.pub.ready(t)},i.pub.hide=function(){i.picker&&i.picker.owner&&i.picker.owner.hide()},i.pub.chessboard=function(e){return e||(e="rgba(0,0,0,0)"),i.genColorPreviewCanvas(e).canvas.toDataURL()},i.pub.background=function(e){var t=[];t.push(i.genColorPreviewGradient(e));var o=i.genColorPreviewCanvas();return t.push(["url('"+o.canvas.toDataURL()+"')","left top","repeat"].join(" ")),t.join(", ")},i.pub.options={},i.pub.lookupClass="jscolor",i.pub.installByClassName=function(){return console.error('jscolor.installByClassName() is DEPRECATED. Use data-jscolor="" attribute instead of a class name.'+i.docsRef),!1},i.register(),i.pub);return void 0===e.jscolor&&(e.jscolor=e.JSColor=a),a}))}},t={};function o(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,o),a.exports}o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";let e={};function t(){e.WrinklerButtons&&Game.elderWrath?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")}const n=["","","M","G","T","P","E","Z","Y"],i=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],a=["","K","M","B","T","Qa","Qi","Sx","Sp","Oc","No","De","UDe","DDe","TDe","QaDe","QiDe","SxDe","SpDe","ODe","NDe","Vi","UVi","DVi","TVi","QaVi","QiVi","SxVi","SpVi","OVi","NVi","Tr","UTr","DTr","TTr","QaTr","QiTr","SxTr","SpTr","OTr","NTr","Qaa","UQa","DQa","TQa","QaQa","QiQa","SxQa","SpQa","OQa","NQa","Qia","UQi","DQi","TQi","QaQi","QiQi","SxQi","SpQi","OQi","NQi","Sxa","USx","DSx","TSx","QaSx","QiSx","SxSx","SpSx","OSx","NSx","Spa","USp","DSp","TSp","QaSp","QiSp","SxSp","SpSp","OSp","NSp","Oco","UOc","DOc","TOc","QaOc","QiOc","SxOc","SpOc","OOc","NOc","Noa","UNo","DNo","TNo","QaNo","QiNo","SxNo","SpNo","ONo","NNo","Ct","UCt"];let r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,w,v,x=[],T=[],M=[],S={};const P="CMText",B="CMBack",E="Blue",N="Green",O="Yellow",F="Orange",W="Red",L="Purple",A="Gray",j="Pink",D="Brown",H=[A,E,N,O,F,W,L,j,D],U=[["GoldCookTooltipPlaceholder","Calculated with Golden Switch off","200px"],["GoldCookDragonsFortuneTooltipPlaceholder","Calculated with Golden Switch off and at least one golden cookie on-screen","240px"],["PrestMaxTooltipPlaceholder","The MAX prestige is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","320px"],["NextPrestTooltipPlaceholder","Calculated with cookies gained from wrinklers and Chocolate egg","200px"],["HeavenChipMaxTooltipPlaceholder","The MAX heavenly chips is calculated with the cookies gained from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and buying Chocolate egg","330px"],["ResetTooltipPlaceholder","The bonus income you would get from new prestige levels unlocked at 100% of its potential and from ascension achievements if you have the same buildings/upgrades after reset","370px"],["ChoEggTooltipPlaceholder","The amount of cookies you would get from popping all wrinklers with Skruuia god in Diamond slot, selling all stock market goods, selling all buildings with Earth Shatterer and Reality Bending auras, and then buying Chocolate egg","300px"],["ChainNextLevelPlaceholder","Cheated cookies might break this formula","250px"],["FavouriteSettingPlaceholder","Click to set this setting as favourite and show it in 'favourite' settings at the top of the Cookie Monster Settings","250px"]],R={};let $,I,z=0,V=-1,_=[],X=1,Q=1,q=1;const Y=[10,15,30,60,300,600,900,1800],K=[1,5,10,15,30],J={Frenzy:O,"Dragon Harvest":D,"Elder frenzy":N,Clot:W,"Click frenzy":E,Dragonflight:j};let Z,ee,te,oe,ne,ie,ae,re={},le="",se=[];function ce(t,o,r){const l=e.ScaleDecimals+1;if(t===1/0)return"Infinity";if(void 0===t)return"0";if(0===e.Scale)return S.Beautify(t,o);if(Number.isFinite(t)){if(t<0)return`-${ce(Math.abs(t))}`;let s="";if(0===t)return t.toString();if(t>.001&&t=.01&&t=.01&&t=.01&&t315576e4)return"XX:XX:XX:XX:XX";c+=(i<10?"0":"")+i+":",c+=(a<10?"0":"")+a+":",c+=(r<10?"0":"")+r+":",c+=(l<10?"0":"")+l+":",c+=(s<10?"0":"")+s}else{if(n>7776e5)return o?"Over 9000 days!":">9000d";c+=i>0?i+(o?1===i?" year":" years":"y")+", ":"",c+=a>0?a+(o?1===a?" day":" days":"d")+", ":"",(c.length>0||r>0)&&(c+=r+(o?1===r?" hour":" hours":"h")+", "),(c.length>0||l>0)&&(c+=l+(o?1===l?" minute":" minutes":"m")+", "),c+=s+(o?1===s?" second":" seconds":"s")}return c}function pe(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=N):(n=de(t),o=t>300?W:t>60?F:O),{text:n,color:o}}let ue,me,he,ge,fe,Ce,ye,be,ke,Ge,we,ve,xe,Te,Me,Se,Pe,Be,Ee,Ne,Oe,Fe,We,Le,Ae,je,De,He,Ue,Re,$e,Ie,ze,Ve,_e,Xe=0,Qe=0,qe=0,Ye=0,Ke=0,Je=0,Ze=0,et=0,tt=0,ot=0,nt=0,it=0,at=0,rt=0,lt=0,st=1,ct=1,dt=1,pt=0,ut=0,mt=0,ht=0,gt={},ft={},Ct={},yt=0,bt=0,kt=[0,null],Gt=0,wt=0,vt={},xt={},Tt={},Mt={},St={},Pt=0,Bt=0,Et=[],Nt=0,Ot=0,Ft=[],Wt=0,Lt=0,At=[],jt=0,Dt=0,Ht=[],Ut=0,Rt=0,$t={},It={},zt=0,Vt=0,_t=[],Xt={},Qt=0,qt={0:[0,0,0],1:[0,0,0],2:[0,0,0],3:[0,0,0],4:[0,0,0],5:[0,0,0],6:[0,0,0],7:[0,0,0],8:[0,0,0],9:[0,0,0],10:[0,0,0]},Yt=[],Kt=[],Jt=[];function Zt(e){let t=0;return Game.dragonAuras[De].name!==e&&Game.dragonAuras[He].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[De].name&&"Reality Bending"!==Game.dragonAuras[He].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===ze[e]?void 0===t?1:t:ze[e]}function oo(e){const t=Kt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Yt.Temple.minigame&&(Yt.Temple.minigame=Game.Objects.Temple.minigame);const t=Yt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(Re===t.id)return 2;if($e===t.id)return 3}return!1}function io(e,t){let o=t;if(oo("Season savings")&&(o*=.99),oo("Santa's dominion")&&(o*=.99),oo("Faberge egg")&&(o*=.99),oo("Divine discount")&&(o*=.99),oo("Fortune #100")&&(o*=.99),o*=1-.02*Zt("Fierce Hoarder"),Game.hasBuff("Everything must go")&&(o*=.95),Game.hasBuff("Crafty pixies")&&(o*=.98),Game.hasBuff("Nasty goblins")&&(o*=1.02),e.fortune&&oo(e.fortune.name)&&(o*=.93),o*=to("buildingCost"),Yt.Temple.minigameLoaded){const e=no("creation");1===e?o*=.93:2===e?o*=.95:3===e&&(o*=.98)}return o}function ao(e,t,o,n,i,a){const r=void 0===a?0:a;let l=i,s=o,c=0;-1===i&&(l=s),i||(l=Game.buyBulk);for(let o=0;o0&&(c+=o,s-=1)}return c}function ro(){let t=Game.buyBulk;if(1===Game.buyMode?Q=t:t=Q,1===t?t=gt:10===t?t=ft:100===t&&(t=Ct),1===Game.buyMode?1===e.BuildColour?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e[`Colour${t[o].color}`]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(gt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=ce(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(gt).map((e=>{const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return H.indexOf(e.color)>H.indexOf(t.color)?1:H.indexOf(e.color){const t=gt[e];return t.name=e,t.id=Game.Objects[e].id,t}));e.sort(((e,t)=>e.id-t.id));for(let t=0;t0){let e=0,t=0,o=0,n=0,i=0,a=0,r=0;Object.keys(Game.UpgradesInStore).forEach((s=>{const c=Game.UpgradesInStore[s];let d=!1;for(let e=0;eH.indexOf(t.color)?1:H.indexOf(e.color)e.price-t.price));const o=function(e,t){return e.findIndex((e=>e.name===t.name))};for(let e=0;e{let n,i=Game.buyBulk;1===Game.buyMode?X=i:i=X,1===i&&(i=gt),10===i&&(i=ft),100===i&&(i=Ct),t+=1,l("CMBotBar").firstChild.firstChild.childNodes[0].childNodes[t].childNodes[1].textContent=Game.Objects[o].amount,l("CMBotBar").firstChild.firstChild.childNodes[1].childNodes[t].textContent=ce(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=P+i[o].color,n=e.PPDisplayTime?de(Math.round(i[o].pp)):ce(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=pe((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=P+a.color,"Done!"===a.text&&Game.cookies{!Game.Tiers[e.tieredUpgrades[o].tier].special&&oo(e.tieredUpgrades[o].name)&&(t*=2)})),Object.keys(e.synergies).forEach((o=>{if(oo(e.synergies[o].name)){const n=e.synergies[o];n.buildingTie1.name===e.name?t*=1+.05*n.buildingTie2.amount:n.buildingTie2.name===e.name&&(t*=1+.001*n.buildingTie1.amount)}})),e.fortune&&oo(e.fortune.name)&&(t*=1.07),e.grandma&&oo(e.grandma.name)&&(t*=1+.01*Yt.Grandma.amount*(1/(e.id-1))),"object"==typeof e.tieredUpgrades.misfortune&&1===e.vanilla&&oo(e.tieredUpgrades.misfortune.name))switch(Game.elderWrath){default:t*=1;break;case 1:t*=1.02;break;case 2:t*=1.04;break;case 3:t*=1.06}return t}function ko(e){const t=Game.Objects[e],o={};return"Cursor"===t.name?o.cps=function(e){let t=0;oo("Thousand fingers")&&(t+=.1),oo("Million fingers")&&(t*=5),oo("Billion fingers")&&(t*=10),oo("Trillion fingers")&&(t*=20),oo("Quadrillion fingers")&&(t*=20),oo("Quintillion fingers")&&(t*=20),oo("Sextillion fingers")&&(t*=20),oo("Septillion fingers")&&(t*=20),oo("Octillion fingers")&&(t*=20),oo("Nonillion fingers")&&(t*=20);let o=1,n=0;return Object.keys(Yt).forEach((e=>{"Cursor"!==Yt[e].name&&(n+=Yt[e].amount)})),t*=n,o*=bo(e),o*=Game.magicCpS("Cursor"),o*=to("cursorCps"),Game.ComputeCps(.1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),t)*o}:"Grandma"===t.name?o.cps=function(e){let o=1;if(Object.keys(Game.GrandmaSynergies).forEach((e=>{oo(Game.GrandmaSynergies[e])&&(o*=2)})),oo("Bingo center/Research facility")&&(o*=4),oo("Ritual rolling pins")&&(o*=2),oo("Naughty list")&&(o*=2),oo("Elderwort biscuits")&&(o*=1.02),o*=to("grandmaCps"),oo("Cat ladies"))for(let e=0;e{"Grandma"!==Yt[e].name&&(i+=Yt[e].amount)})),o*=1+.01*Zt("Elder Battalion")*i,o*=Game.magicCpS(t.name),(t.baseCps+n)*o}:o.cps=function(e){let t=1;return t*=bo(e),t*=Game.magicCpS(e.name),e.baseCPS*t},o.baseCps=t.baseCps,o.name=t.name,o.tieredUpgrades=t.tieredUpgrades,o.synergies=t.synergies,o.fortune=t.fortune,o.grandma=t.grandma,o.baseCPS=t.baseCps,o.id=t.id,o.vanilla=t.vanilla,o}function Go(e){const t=Game.Upgrades[e],o={};return o.power=t.power,"function"==typeof o.power&&("Sugar crystal cookies"===t.name?o.power=function(){let e=5;return Object.keys(Yt).forEach((t=>{Yt[t].level>=10&&(e+=1)})),e}:o.power=function(){let e=2;if(oo("Starlove")&&(e=3),Game.hasGod){const t=no("seasons");1===t?e*=1.3:2===t?e*=1.2:3===t&&(e*=1.1)}return e}),o.pool=t.pool,o.name=t.name,o}function wo(){Fe=Game.UpgradesOwned,We=Game.pledges,Le=Game.AchievementsOwned,Ae=Game.heavenlyPower,je=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Yt[e];void 0===o&&(Yt[e]=ko(e),o=Yt[e],uo(e)),o.amount=t.amount,o.level=t.level,o.totalCookies=t.totalCookies,o.basePrice=t.basePrice,o.free=t.free,t.minigameLoaded&&("Temple"===t.name&&(Ue=t.minigame.slot[0],Re=t.minigame.slot[1],$e=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Yt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=Kt[e];void 0===o&&(Kt[e]=Go(e),o=Kt[e]),o.bought=t.bought,Kt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Jt[e];void 0===o&&(Jt[e]=yo(e),o=Jt[e]),o.won=t.won,Jt[e]=o})),Co(),De=Xe,He=Qe}function vo(e){const t=document.createElement("div");return t.style.fontWeight="bold",t.id=`${e}Title`,t.className="CMTextBlue",t.textContent=e,t}function xo(e){e.appendChild(vo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(vo("Bonus Cookies per Click")),e.lastChild.style.display="none";const o=document.createElement("div");o.style.marginBottom="4px",o.style.color="white",o.style.display="none",o.id="CMTooltipCookiePerClick",e.appendChild(o),e.appendChild(vo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(vo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===te){e.appendChild(vo("Production left till next achievement")),e.lastChild.id="CMTooltipProductionHeader";const t=document.createElement("div");t.id="CMTooltipProduction",e.appendChild(t)}}function To(e,t,o){let n=e,i=0;for(;n{void 0!==Game.buffs[t].multCpS&&(e*=Game.buffs[t].multCpS)})),e}function So(){null!==l("CMDispTooltipWarningParent")&&(0===e.ToolWarnPos?(l("CMDispTooltipWarningParent").style.top="auto",l("CMDispTooltipWarningParent").style.margin="4px -4px",l("CMDispTooltipWarningParent").style.padding="3px 4px"):(l("CMDispTooltipWarningParent").style.right="auto",l("CMDispTooltipWarningParent").style.margin="4px",l("CMDispTooltipWarningParent").style.padding="4px 3px"))}function Po(){if(wo(),"none"!==l("tooltipAnchor").style.display&&l("CMTooltipArea")){l("CMTooltipArea").innerHTML="";const t=function(){l("tooltip").firstChild.style.paddingBottom="4px";const e=document.createElement("div");return e.style.border="1px solid",e.style.padding="4px",e.style.margin="0px -4px",e.id="CMTooltipBorder",e.className="CMTextGray",e}();l("CMTooltipArea").appendChild(t),"b"===te?function(){if(1===e.TooltipBuildUpgrade&&1===Game.buyMode){let t;if(xo(l("CMTooltipBorder")),1===Game.buyMode?q=t:t=q,1===Game.buyBulk?t=gt:10===Game.buyBulk?t=ft:100===Game.buyBulk&&(t=Ct),Z=Game.Objects[oe].bulkPrice,ee=t[oe].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=ce(ee,2);const o=Math.round(ee/Game.cookiesPs*1e4);Number.isFinite(o)&&0!==o?l("CMTooltipIncome").textContent+=` (${o/100}% of income)`:l("CMTooltipIncome").textContent+=` (<0${e.ScaleSeparator?",":"."}01% of income)`,l("CMTooltipBorder").className=P+t[oe].color,e.PPDisplayTime?l("CMTooltipPP").textContent=de(t[oe].pp):l("CMTooltipPP").textContent=ce(t[oe].pp,2),l("CMTooltipPP").className=P+t[oe].color;const n=pe((Z-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[oe[1]][oe[0]][0]-1].mature,o=t.plantsById[t.plot[oe[1]][oe[0]][0]-1].name;l("CMTooltipBorder").appendChild(vo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${ce(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${ce(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${ce(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?ce(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${ce(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===te?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(vo("Cookies gained from harvesting:"));let e=0,o=0;Game.keys[16]&&Game.keys[17]&&(o=1);for(let n=0;n<6;n++)for(let i=0;i<6;i++)if(t.plot[n][i][0]>=1){const a=t.plot[n][i],r=t.plantsById[a[0]-1],l=r.name;let s=!0;o&&r.immortal&&(s=!1),a[1]0&&t=1?l("CMTimerBarGCMinBar").textContent=Math.ceil((Game.shimmerTypes.golden.minTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCMinBar").textContent="",Game.shimmerTypes.golden.minTime===Game.shimmerTypes.golden.maxTime?(l("CMTimerBarGCMinBar").style.borderTopRightRadius="10px",l("CMTimerBarGCMinBar").style.borderBottomRightRadius="10px"):(l("CMTimerBarGCMinBar").style.borderTopRightRadius="",l("CMTimerBarGCMinBar").style.borderBottomRightRadius=""),l("CMTimerBarGCBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)*t/Game.shimmerTypes.golden.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarGCBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.minTime,Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps):l("CMTimerBarGCBar").textContent="",l("CMTimerBarGCTime").textContent=Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps),n+=1),"christmas"===Game.season&&0===Game.shimmerTypes.reindeer.spawned?(l("CMTimerBarRen").style.display="",l("CMTimerBarRenMinBar").style.width=`${Math.round(Math.max(0,Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenMinBar").textContent=Math.ceil((Game.shimmerTypes.reindeer.minTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenMinBar").textContent="",l("CMTimerBarRenBar").style.width=`${Math.round(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)*t/Game.shimmerTypes.reindeer.maxTime)}px`,e.TimerBarOverlay>=1?l("CMTimerBarRenBar").textContent=Math.ceil(Math.min(Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.minTime,Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps):l("CMTimerBarRenBar").textContent="",l("CMTimerBarRenTime").textContent=Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps),n+=1):l("CMTimerBarRen").style.display="none";const i={};l("CMTimerBarBuffTimers").innerHTML="",Object.keys(Game.buffs).forEach((t=>{if(Game.buffs[t]){const a=po(Game.buffs[t].name,Game.buffs[t].name,[{id:`${Game.buffs[t].name}Bar`}]);a.style.display="";let r="";r=void 0!==J[Game.buffs[t].name]?J[Game.buffs[t].name]:L,a.lastChild.children[1].className=B+r,a.lastChild.children[1].style.color="black",2===e.TimerBarOverlay?a.lastChild.children[1].textContent=`${Math.round(Game.buffs[t].time/Game.buffs[t].maxTime*100)}%`:a.lastChild.children[1].textContent="",a.lastChild.children[1].style.width=`${Math.round(Game.buffs[t].time*(o-8*Math.ceil(Game.buffs[t].time/Game.fps).toString().length)/Game.buffs[t].maxTime)}px`,a.lastChild.children[2].textContent=Math.ceil(Game.buffs[t].time/Game.fps),n+=1,i[Game.buffs[t].name]=a}})),Object.keys(i).forEach((e=>{l("CMTimerBarBuffTimers").appendChild(i[e])})),0!==n&&(l("CMTimerBar").style.height=12*n+2+"px"),ae!==n&&(ae=n,go())}}(),mo(),Po(),function(){if(1===e.TooltipWrink&&1===z){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===_[t]||void 0===_[t]){const e=document.createElement("div"),o=document.createElement("div");o.style.minWidth="120px",o.style.marginBottom="4px";const n=document.createElement("div");n.style.textAlign="center",n.id="CMTooltipWrinkler",o.appendChild(n),e.appendChild(o),Game.tooltip.draw(this,escape(e.innerHTML)),V=t,_[t]=1}}else _[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[V],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[V].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Yt.Temple.minigameLoaded){const t=Game.hasGod("scorn");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05)}l("CMTooltipWrinkler").textContent=ce(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu(),t(),e.Scale){let e=l("cookies").innerHTML.replace(/.*(?=
)/i,ce(Game.cookies));Game.prefs.monospace&&(e=`${e}`),l("cookies").innerHTML=e}}class Eo{constructor(e){this.maxLength=e,this.queue=[]}addLatest(e){this.queue.push(e)>this.maxLength&&this.queue.shift()}calcAverage(e){let t=e;t>this.maxLength&&(t=this.maxLength),t>this.queue.length&&(t=this.queue.length);let o=0;for(let e=this.queue.length-1;e>=0&&e>this.queue.length-1-t;e--)o+=this.queue[e];return 0===o?0:o/t}}function No(){const t=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){let o=Game.cookies+Qt;Game.cpsSucked>0&&(o+=yt),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-ye,i=Math.max(0,Game.cookies-be)/n,a=Math.max(0,yt-ke)/n,r=Math.max(0,kt[0]-Ge)/n,l=Math.max(0,o-ht)/n,s=(Game.cookieClicks-we)/n;for(let e=0;e0&&(n=W),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=A;else{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const i=Game.Objects[n].getSumPrice(o);Game.cookiesPs?t[n].pp=Math.max(i-(Game.cookies+co()),0)/Game.cookiesPs+i/t[n].bonus:t[n].pp=i/t[n].bonus,e.PPRigidelMode&&1===o||_t.push([t[n].pp,o])}))}function Lo(){!function(){Vt=1/0,_t=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(gt,1),Wo(ft,10),Wo(Ct,100),_t.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;_t[t][1]>Game.cookies&&(t+=1,_t.length!==t+1););Vt=_t[e.PPExcludeTop][t],Fo(gt,1),Fo(ft,10),Fo(Ct,100)}(),Object.keys(vt).forEach((e=>{Game.cookiesPs?vt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/vt[e].bonus:vt[e].pp=Game.Upgrades[e].getPrice()/vt[e].bonus,Number.isNaN(vt[e].pp)&&(vt[e].pp=1/0),vt[e].color=Oo(vt[e],Game.Upgrades[e].getPrice())}))}function Ao(e,t,o,n,i){let a=o,r=0;for(let o=0;o{if(Game.Objects[e].minigameLoaded&&Game.Objects[e].minigame.effs){const o=Game.Objects[e].minigame.effs;Object.keys(o).forEach((e=>{t[e]?t[e]*=o[e]:t[e]=o[e]}))}})),ze=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(je)*Ae*function(){let e=0;if(oo("Heavenly chip secret")&&(e+=.05),oo("Heavenly cookie stand")&&(e+=.2),oo("Heavenly bakery")&&(e+=.25),oo("Heavenly confectionery")&&(e+=.25),oo("Heavenly key")&&(e+=.25),e*=1+.05*Zt("Dragon God"),oo("Lucky digit")&&(e*=1.01),oo("Lucky number")&&(e*=1.01),oo("Lucky payout")&&(e*=1.01),Game.hasGod){const t=no("creation");1===t?e*=.7:2===t?e*=.8:3===t&&(e*=.9)}return e}()),e*=to("cps"),oo("Heralds")&&1!==Game.ascensionMode&&(e*=1+.01*Game.heralds),Object.keys(Game.cookieUpgrades).forEach((t=>{const o=Game.cookieUpgrades[t];oo(o.name)&&("function"==typeof o.power?e*=1+.01*Kt[o.name].power(Kt[o.name]):e*=1+.01*o.power)})),oo("Specialized chocolate chips")&&(e*=1.01),oo("Designer cocoa beans")&&(e*=1.02),oo("Underworld ovens")&&(e*=1.03),oo("Exotic nuts")&&(e*=1.04),oo("Arcane sugar")&&(e*=1.05),oo("Increased merriness")&&(e*=1.15),oo("Improved jolliness")&&(e*=1.15),oo("A lump of coal")&&(e*=1.01),oo("An itchy sweater")&&(e*=1.01),oo("Santa's dominion")&&(e*=1.2),oo("Fortune #100")&&(e*=1.01),oo("Fortune #101")&&(e*=1.07),oo("Dragon scale")&&(e*=1.03);let o=1;if(no){let t=no("asceticism");1===t?e*=1.15:2===t?e*=1.1:3===t&&(e*=1.05),t=no("ages"),1===t?e*=1+.15*Math.sin(Date.now()/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Date.now()/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Date.now()/1e3/86400*Math.PI*2)),t=no("decadence"),1===t?o*=.93:2===t?o*=.95:3===t&&(o*=.98),t=no("industry"),1===t?o*=1.1:2===t?o*=1.06:3===t&&(o*=1.03),t=no("labor"),1===t?o*=.97:2===t?o*=.98:3===t&&(o*=.99)}oo("Santa's legacy")&&(e*=1+.03*(Game.santaLevel+1));const n=Le/25;let i=1;if(oo("Santa's milk and cookies")&&(i*=1.05),i*=1+.05*Zt("Breath of Milk"),no){const e=no("mother");1===e?i*=1.1:2===e?i*=1.05:3===e&&(i*=1.03)}i*=to("milk");let a=1;oo("Kitten helpers")&&(a*=1+.1*n*i),oo("Kitten workers")&&(a*=1+.125*n*i),oo("Kitten engineers")&&(a*=1+.15*n*i),oo("Kitten overseers")&&(a*=1+.175*n*i),oo("Kitten managers")&&(a*=1+.2*n*i),oo("Kitten accountants")&&(a*=1+.2*n*i),oo("Kitten specialists")&&(a*=1+.2*n*i),oo("Kitten experts")&&(a*=1+.2*n*i),oo("Kitten consultants")&&(a*=1+.2*n*i),oo("Kitten assistants to the regional manager")&&(a*=1+.175*n*i),oo("Kitten marketeers")&&(a*=1+.15*n*i),oo("Kitten analysts")&&(a*=1+.125*n*i),oo("Kitten executives")&&(a*=1+.115*n*i),oo("Kitten angels")&&(a*=1+.1*n*i),oo("Fortune #103")&&(a*=1+.05*n*i),Object.keys(Yt).forEach((e=>{const t=Yt[e];let a=t.cps(t);1!==Game.ascensionMode&&(a*=(1+.01*t.level)*o),"Grandma"===t.name&&oo("Milkhelp® lactose intolerance relief tablets")&&(a*=1+.05*n*i),Ve+=t.amount*a})),oo('"egg"')&&(Ve+=9),e*=a;let r=1;if(oo("Chicken egg")&&(r*=1.01),oo("Duck egg")&&(r*=1.01),oo("Turkey egg")&&(r*=1.01),oo("Quail egg")&&(r*=1.01),oo("Robin egg")&&(r*=1.01),oo("Ostrich egg")&&(r*=1.01),oo("Cassowary egg")&&(r*=1.01),oo("Salmon roe")&&(r*=1.01),oo("Frogspawn")&&(r*=1.01),oo("Shark egg")&&(r*=1.01),oo("Turtle egg")&&(r*=1.01),oo("Ant larva")&&(r*=1.01),oo("Century egg")){let e=10*Math.floor((Date.now()-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),ut=1+.1*(1-(1-e/100)**3),r*=ut}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ve*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),_e=l;const{n:s}=Game.shimmerTypes.golden,c=Zt("Dragon's Fortune");for(let t=0;t{oo(e[o])&&(t+=.1)}))}e*=t}if(oo("Shimmering veil [off]")){let t=.5;oo("Reinforced membrane")&&(t+=.1),e*=1+t}oo("Magic shenanigans")&&(e*=1e3),oo("Occult obstruction")&&(e*=0),Ve=Game.runModHookOnValue("cps",Ve),e*=Mo(),Ve*=e}const Ho=["Fortune #001","Fortune #002","Fortune #003","Fortune #004","Fortune #005","Fortune #006","Fortune #007","Fortune #008","Fortune #009","Fortune #010","Fortune #011","Fortune #012","Fortune #013","Fortune #014","Fortune #015","Fortune #016","Fortune #017","Fortune #018","Fortune #100","Fortune #101","Fortune #102","Fortune #103","Fortune #104"],Uo=["Skull cookies","Ghost cookies","Bat cookies","Slime cookies","Pumpkin cookies","Eyeball cookies","Spider cookies"],Ro=["Christmas tree biscuits","Snowflake biscuits","Snowman biscuits","Holly biscuits","Candy cane biscuits","Bell biscuits","Present biscuits"],$o=["Pure heart biscuits","Ardent heart biscuits","Sour heart biscuits","Weeping heart biscuits","Golden heart biscuits","Eternal heart biscuits","Prism heart biscuits"],Io=["Elderwort biscuits","Bakeberry cookies","Duketater cookies","Green yeast digestives","Wheat slims","Fern tea","Ichor syrup"];function zo(e){return Jt[e]?Jt[e].won:0}function Vo(){let e=0;Object.keys(Game.GrandmaSynergies).forEach((t=>{oo(Game.GrandmaSynergies[t])&&(e+=1)})),!zo("Elder")&&e>=7&&jo("Elder"),!zo("Veteran")&&e>=14&&jo("Veteran");let t=0,o=1,n=1,i=1e5;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount,i=Math.min(Yt[e].amount,i),zo("Mathematician")||Yt[e].amount=1&&jo("One with everything"),1===o&&jo("Mathematician"),1===n&&jo("Base 10"),i>=100&&jo("Centennial"),i>=150&&jo("Centennial and a half"),i>=200&&jo("Bicentennial"),i>=250&&jo("Bicentennial and a half"),i>=300&&jo("Tricentennial"),i>=350&&jo("Tricentennial and a half"),i>=400&&jo("Quadricentennial"),i>=450&&jo("Quadricentennial and a half"),i>=500&&jo("Quincentennial"),i>=550&&jo("Quincentennial and a half"),i>=600&&jo("Sexcentennial"),t>=100&&jo("Builder"),t>=500&&jo("Architect"),t>=1e3&&jo("Engineer"),t>=2e3&&jo("Lord of Constructs"),t>=4e3&&jo("Grand design"),t>=8e3&&jo("Ecumenopolis"),Fe>=20&&jo("Enhancer"),Fe>=50&&jo("Augmenter"),Fe>=100&&jo("Upgrader"),Fe>=200&&jo("Lord of Progress"),Fe>=300&&jo("The full picture"),Fe>=400&&jo("When there's nothing left to add"),t>=4e3&&Fe>=300&&jo("Polymath"),t>=8e3&&Fe>=400&&jo("Renaissance baker"),Yt.Cursor.amount+Yt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Uo).forEach((e=>{oo(Uo[e])||(a=!1)})),a&&jo("Spooky cookies");let r=!0;if(Object.keys(Ro).forEach((e=>{oo(Ro[e])||(r=!1)})),r&&jo("Let it snow"),oo("Fortune cookies")){const e=Game.Tiers.fortune.upgrades;let t=0;Object.keys(e).forEach((o=>{oo(e[o].name)&&(t+=1)})),t>=e.length&&jo("O Fortuna")}}function _o(e){const t={};return Object.keys(Game.Objects).forEach((o=>{t[o]={},t[o].bonus=function(e,t){wo(),Yt[e].amount+=t;const o=Yt[e];"Cursor"===e?(o.amount>=1&&jo("Click"),o.amount>=2&&jo("Double-click"),o.amount>=50&&jo("Mouse wheel"),o.amount>=100&&jo("Of Mice and Men"),o.amount>=200&&jo("The Digital"),o.amount>=300&&jo("Extreme polydactyly"),o.amount>=400&&jo("Dr. T"),o.amount>=500&&jo("Thumbs, phalanges, metacarpals"),o.amount>=600&&jo("With her finger and her thumb"),o.amount>=700&&jo("Gotta hand it to you"),o.amount>=800&&jo("The devil's workshop")):Object.keys(Game.Objects[o.name].tieredAchievs).forEach((e=>{o.amount>=Game.Tiers[Game.Objects[o.name].tieredAchievs[e].tier].achievUnlock&&jo(Game.Objects[o.name].tieredAchievs[e].name)}));const n=Le;return Do(),Vo(),n!==Le&&Do(),Ve-Game.cookiesPs}(o,e),1!==e&&(Ee=1)})),t}function Xo(){Object.keys(Game.Objects).forEach((e=>{gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ft[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),Ct[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){gt=_o(1),ft=_o(10),Ct=_o(100),vt=[],Object.keys(Game.Upgrades).forEach((t=>{const o=function(e){if("toggle"===Game.Upgrades[e].pool||0===Game.Upgrades[e].bought&&Game.Upgrades[e].unlocked&&"prestige"!==Game.Upgrades[e].pool){wo(),"Shimmering veil [on]"===Kt[e].name?Kt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===Kt[e].name?Kt["Golden switch [off]"].bought=0:Kt[e].bought=(Kt[e].bought+1)%2,Kt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Fe+=1),"Elder Pledge"===e?(We+=1,We>0&&jo("Elder nap"),We>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Le;Do(),Vo(),t!==Le&&Do();const o=function(){let e=0;oo("Thousand fingers")&&(e+=.1),oo("Million fingers")&&(e*=5),oo("Billion fingers")&&(e*=10),oo("Trillion fingers")&&(e*=20),oo("Quadrillion fingers")&&(e*=20),oo("Quintillion fingers")&&(e*=20),oo("Sextillion fingers")&&(e*=20),oo("Septillion fingers")&&(e*=20),oo("Octillion fingers")&&(e*=20),oo("Nonillion fingers")&&(e*=20);let t=0;Object.keys(Yt).forEach((e=>{t+=Yt[e].amount})),t-=Yt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ve),oo("Iron mouse")&&(e+=.01*Ve),oo("Titanium mouse")&&(e+=.01*Ve),oo("Adamantium mouse")&&(e+=.01*Ve),oo("Unobtainium mouse")&&(e+=.01*Ve),oo("Eludium mouse")&&(e+=.01*Ve),oo("Wishalloy mouse")&&(e+=.01*Ve),oo("Fantasteel mouse")&&(e+=.01*Ve),oo("Nevercrack mouse")&&(e+=.01*Ve),oo("Armythril mouse")&&(e+=.01*Ve),oo("Technobsidian mouse")&&(e+=.01*Ve),oo("Plasmarble mouse")&&(e+=.01*Ve),oo("Miraculite mouse")&&(e+=.01*Ve),oo("Fortune #104")&&(e+=.01*Ve);let o=1;if(oo("Santa's helpers")&&(o*=1.1),oo("Cookie egg")&&(o*=1.1),oo("Halo gloves")&&(o*=1.1),oo("Dragon claw")&&(o*=1.03),oo("Aura gloves")&&(o*=1+.05*Math.min(Game.Objects.Cursor.level,oo("Luminous gloves")?20:10)),o*=to("click"),Yt.Temple.minigameLoaded&&no){const e=no("labor");1===e?o*=1.15:2===e?o*=1.1:3===e&&(o*=1.05)}Object.keys(Game.buffs).forEach((e=>{void 0!==Game.buffs[e].multClick&&(o*=Game.buffs[e].multClick)})),o*=1+.05*Zt("Dragon Cursor");let n=o*Game.ComputeCps(1,oo("Reinforced index finger")+oo("Carpal tunnel prevention cream")+oo("Ambidextrous"),e);return n=Game.runModHookOnValue("cookiesPerClick",n),Game.hasBuff("Cursed finger")&&(n=Game.buffs["Cursed finger"].power),n}()-Game.computedMouseCps;return o?[Ve-Game.cookiesPs,o]:[Ve-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(vt[t]={bonus:Game.cookiesPs-ve},1===e.CalcWrink?vt[t].bonus-=xe:2===e.CalcWrink&&(vt[t].bonus-=Te),Number.isFinite(vt[t].bonus)||(vt[t].bonus=0)):(vt[t]={},o[0]&&(vt[t].bonus=o[0]),o[1]&&(vt[t].bonusMouse=o[1]))}))}function qo(e,t,o){let n=0,i=0,a=0,r=0,l=1+Math.max(0,Math.ceil(Math.log(Game.cookies)/Math.LN10)-10);for(;a0?e/=t:e=0,Et=qo(7,e,ct),Pt=2*Et[1]/ct,Bt=Et[2]/60/60/6/st,Ft=qo(6,e,dt),Nt=2*Ft[1]/dt,Ot=Ft[2]/60/60/6/st,At=qo(7,7*e,ct),Wt=2*At[1]/ct,Lt=At[2]/60/60/6/st,Ht=qo(6,7*e,dt),jt=2*Ht[1]/dt,Dt=Ht[2]/60/60/6/st}function Ko(){const e=Math.floor(Date.now()/1e3);if(Game.T/Game.fps%1==0){const t=Game.HowMuchPrestige(Game.cookiesReset),o=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))-Math.floor(t),n=e-Pe,i=Math.max(0,o-Be)/n;for(let e=0;e{e.push(Game.Upgrades[t])})),e.sort((function(e,t){return e.order>t.order?1:e.order{const o=e[t];if(0===o.bought){let e="";e+=function(e){let t="crate upgrade missing";"prestige"===e.pool&&(t+=" heavenly");let o=0;Game.prefs.crates||(o=1),o&&(t+=" noFrame");let{icon:n}=e;e.iconFunction&&(n=e.iconFunction());const i=`function() {return Game.crateTooltip(Game.UpgradesById[${e.id}], 'stats');}`;return`
\n\t
`}(o),"prestige"===o.pool?Mt+=e:"cookie"===o.pool?St+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(Tt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),mt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(mt*=2)}}function en(){Ke=900*lt/.15,Ke*=st;const e=Mo();e>0?Ke/=e:Ke=0,Je=ct*(.15*Ke)+13,Ze=dt*(.15*Ke)+13,et=7*Ke,tt=ct*(.15*et)+13,ot=dt*(.15*et)+13,nt=2*Ke,it=.15*nt,at=0;let t=0,o=0;Object.keys(Game.Objects).forEach((e=>{Game.Objects[e].amount>t&&(t=Game.Objects[e].amount),Game.Objects[e].amount>0&&(o+=1)})),Object.keys(Game.Objects).forEach((e=>{(Game.Objects[e].amountat&&(at=2*Game.Objects[e].price,rt=e)}))}function tn(){let e=1,t=1,o=1;oo("Green yeast digestives")&&(o*=1.01),oo("Dragon fang")&&(o*=1.03),e*=1+.1*Game.auraMult("Ancestral Metamorphosis"),e*=Game.eff("goldenCookieGain"),t*=1+.1*Game.auraMult("Unholy Dominion"),t*=Game.eff("wrathCookieGain"),ct=o*e,dt=o*t,st=1,0===Game.shimmerTypes.golden.n&&(st*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){yt=0,bt=0,kt=[0,null];for(let e=0;ekt[0]&&(kt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),ue=new Eo(Y[Y.length-1]),me=new Eo(Y[Y.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(Y[Y.length-1]),fe=new Eo(K[K.length-1]),Ce=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,CalcWrink:0,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,TimeFormat:0,DetailedTime:1,PPDisplayTime:0,BuildColour:1,PPOnlyConsiderBuyable:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,ColourBlue:"#4bb8f0",ColourGreen:"#00ff00",ColourYellow:"#ffff00",ColourOrange:"#ff7f00",ColourRed:"#ff0000",ColourPurple:"#ff00ff",ColourGray:"#b3b3b3",ColourPink:"#ff1493",ColourBrown:"#8b4513",BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,UpBarColour:1,UpgradeBarFixedPos:1,SortBuildings:0,SortUpgrades:0,DragonAuraInfo:1,GrimoireBar:1,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnBon:1,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,ColourGCFlash:"#ffffff",GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,ColourFortuneFlash:"#ffffff",FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,ColourSeaFlash:"#ffffff",SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,ColourGardFlash:"#ffffff",GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,ColourMagicFlash:"#ffffff",MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,ColourWrinklerFlash:"#ffffff",WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,ColourWrinklerMaxFlash:"#ffffff",WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",BulkBuyBlock:0,FavouriteSettings:1,Header:{Favourite:1,Calculation:1,Notation:1,Colours:1,BarsDisplay:1,Tooltip:1,Statistics:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Miscellaneous:1,Lucky:1,Chain:1,Spells:1,Garden:1,Prestige:1,Wrink:1,Sea:1,Misc:1,InfoTab:1}},rn=function(e){if(1===e){const e=function(){try{Notification.requestPermission().then()}catch(e){return!1}return!0};"Notification"in window?e()?Notification.requestPermission().then():Notification.requestPermission():console.log("This browser does not support notifications.")}};function ln(){1===e.BotBar?(l("CMBotBar").style.display="",mo()):l("CMBotBar").style.display="none",go()}function sn(){BeautifyAll(),Game.RefreshStore(),Game.RebuildUpgrades(),mo(),ro(),lo()}function cn(){1===e.Favicon&&y>0?$t.wrath?l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/wrathCookie.ico":l("CMFavicon").href="https://aktanusa.github.io/CookieMonster/favicon/goldenCookie.ico":l("CMFavicon").href="https://orteil.dashnet.org/cookieclicker/favicon.ico"}class dn{constructor(e,t){this.type=e,this.group=t}}class pn extends dn{constructor(e,t,o,n,i,a=null){super(e,t),this.label=o,this.desc=n,this.toggle=i,a&&(this.func=a)}}class un extends dn{constructor(e,t,o){super(e,t),this.desc=o}}class mn extends dn{constructor(e,t,o,n){super(e,t),this.label=o,this.desc=n;for(let e=0;e<101;e++)this.label[e]=`${e}%`}}class hn extends dn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={CPSMode:new pn("bool","Calculation",["Current cookies per second","Average cookies per second"],"Calculate times using current cookies per second or average cookies per second",!1),AvgCPSHist:new pn("bool","Calculation",["Average CPS in past 10s","Average CPS in past 15s","Average CPS in past 30s","Average CPS in past 1m","Average CPS in past 5m","Average CPS in past 10m","Average CPS in past 15m","Average CPS in past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new pn("bool","Calculation",["Average clicks in past 1s","Average clicks in past 5s","Average clicks in past 10s","Average clicks in past 15s","Average clicks in past 30s"],"How much time average Cookie Clicks should consider",!1),CalcWrink:new pn("bool","Calculation",["Calculate with wrinklers OFF","Calculate with wrinklers ON","Calculate with single fattest wrinkler ON"],"Calculate times and average Cookies Per Second with (only the single non-shiny fattest) wrinklers",!0,(function(){Ie=!0})),Scale:new pn("bool","Notation",["Game's setting scale","Metric","Short scale","Short scale (Abbreviated)","Scientific notation","Engineering notation"],"Change how long numbers are formatted",!1,(function(){sn()})),ScaleDecimals:new pn("bool","Notation",["1 decimals","2 decimals","3 decimals"],'Set the number of decimals used when applicable. This only works with Cookie Monster scales and not with "Game\'s Setting Scale"',!1,(function(){sn()})),ScaleSeparator:new pn("bool","Notation",[". for decimals (standard)",". for thousands"],"Set the separator used for decimals and thousands",!1,(function(){sn()})),ScaleCutoff:new hn("numscale","Notation","Notation cut-off point: ","The number from which Cookie Monster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),TimeFormat:new pn("bool","Notation",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new pn("bool","Notation",["Detailed time OFF","Detailed time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=I:Game.sayTime=S.sayTime})),PPDisplayTime:new pn("bool","Notation",["PP as value (standard)","PP as time unit"],"Display PP as calculated value or as approximate time unit. Note that PP does not translate directly into a time unit and this is therefore only an approximation.",!1),BuildColour:new pn("bool","Colours",["Building colours OFF","Building colours ON"],"Colour code buildings",!0,(function(){ro()})),PPOnlyConsiderBuyable:new pn("bool","Colours",["Don't ignore non-buyable","Ignore non-buyable"],"Makes Cookie Monster label buildings and upgrades you can't buy right now red, useful in those situations where you just want to spend your full bank 'most optimally'",!0),PPExcludeTop:new pn("bool","Colours",["Don't ignore any","Ignore 1st best","Ignore 1st and 2nd best","Ignore 1st, 2nd and 3rd best"],"Makes Cookie Monster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new pn("bool","Colours",["Rigidel mode OFF","Rigidel mode ON"],'Makes Cookie Monster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel',!0),PPSecondsLowerLimit:new hn("numscale","Colours","Lower limit for PP (in seconds): ",'If a building or upgrade costs less than the specified seconds of CPS it will also be considered optimal and label it as such ("PP is less than xx seconds of CPS"); setting to 0 ignores this option',0,1/0),ColourBlue:new un("colour","Colours","Standard colour is blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels"),ColourGreen:new un("colour","Colours","Standard colour is green. Used to show best PP building, for Blood Frenzy bar, and for various labels"),ColourYellow:new un("colour","Colours","Standard colour is yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels"),ColourOrange:new un("colour","Colours","Standard colour is orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels"),ColourRed:new un("colour","Colours","Standard colour is Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels"),ColourPurple:new un("colour","Colours","Standard colour is purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels"),ColourGray:new un("colour","Colours","Standard colour is gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar"),ColourPink:new un("colour","Colours","Standard colour is pink. Used for Dragonflight bar"),ColourBrown:new un("colour","Colours","Standard colour is brown. Used for Dragon Harvest bar"),BotBar:new pn("bool","BarsDisplay",["Bottom bar OFF","Bottom bar ON"],"Building information",!0,(function(){ln()})),TimerBar:new pn("bool","BarsDisplay",["Timer bar OFF","Timer bar ON"],"Bar with timers for golden cookie, season popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new pn("bool","BarsDisplay",["Timer bar position (top left)","Timer bar position (bottom)"],"Placement of the timer bar",!1,(function(){0===e.TimerBarPos?(l("CMTimerBar").style.width="30%",l("CMTimerBar").style.bottom="",l("game").insertBefore(l("CMTimerBar"),l("sectionLeft"))):(l("CMTimerBar").style.width="100%",l("CMTimerBar").style.bottom="0px",l("wrapper").appendChild(l("CMTimerBar"))),go()})),TimerBarOverlay:new pn("bool","BarsDisplay",["Timer bar overlay OFF","Timer bar overlay only seconds","Timer bar overlay full"],"Overlay on timers displaying seconds and/or percentage left",!0),UpBarColour:new pn("bool","BarsDisplay",["Upgrade colours/bar OFF","Upgrade colours with bar ON","Upgrade colours without bar ON"],"Colour code upgrades and optionally add a counter bar",!1,(function(){1===e.UpBarColor?(l("CMUpgradeBar").style.display="",lo()):2===e.UpBarColor?(l("CMUpgradeBar").style.display="none",lo()):(l("CMUpgradeBar").style.display="none",Game.RebuildUpgrades())})),UpgradeBarFixedPos:new pn("bool","BarsDisplay",["Upgrade bar fixed position OFF","Upgrade bar fixed position ON"],"Lock the upgrade bar at top of the screen to prevent it from moving ofscreen when scrolling",!0,(function(){1===e.UpgradeBarFixedPos?(l("CMUpgradeBar").style.position="sticky",l("CMUpgradeBar").style.top="0px"):l("CMUpgradeBar").style.position=""})),SortBuildings:new pn("bool","BarsDisplay",["Sort buildings: default","Sort buildings: PP of x1 purchase","Sort buildings: PP of selected bulk mode"],"Sort the display of buildings in either default order or by PP",!1,(function(){ro()})),SortUpgrades:new pn("bool","BarsDisplay",["Sort upgrades: default","Sort upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),DragonAuraInfo:new pn("bool","BarsDisplay",["Extra dragon aura info OFF","Extra dragon aura info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),GrimoireBar:new pn("bool","BarsDisplay",["Grimoire magic meter timer OFF","Grimoire magic meter timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),GCTimer:new pn("bool","BarsDisplay",["Golden cookie timer OFF","Golden cookie timer ON"],"A timer on the golden cookie when it has been spawned",!0,(function(){1===e.GCTimer?Object.keys(re).forEach((e=>{re[e].style.display="block",re[e].style.left=Xt[e].l.style.left,re[e].style.top=Xt[e].l.style.top})):Object.keys(re).forEach((e=>re[e].style.display="none"))})),Favicon:new pn("bool","BarsDisplay",["Favicon OFF","Favicon ON"],"Update favicon with golden/wrath cookie",!0,(function(){cn()})),WrinklerButtons:new pn("bool","BarsDisplay",["Extra wrinkler buttons OFF","Extra wrinkler buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){t()})),HideSectionsButtons:new pn("bool","BarsDisplay",["Hide buildings/upgrades button OFF","Hide buildings/upgrades button ON"],"Show buttons for hiding and showing the buildings and upgrades sections in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),TooltipBuildUpgrade:new pn("bool","Tooltip",["Building/upgrade tooltip information OFF","Building/upgrade tooltip information ON"],"Extra information in building/upgrade tooltips",!0),TooltipAmor:new pn("bool","Tooltip",["Buildings tooltip amortization information OFF","Buildings tooltip amortization information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new pn("bool","Tooltip",["Tooltip lucky warning OFF","Tooltip lucky warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" rewards',!0),ToolWarnLuckyFrenzy:new pn("bool","Tooltip",["Tooltip lucky frenzy warning OFF","Tooltip lucky frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Lucky!" (Frenzy) rewards',!0),ToolWarnConjure:new pn("bool","Tooltip",["Tooltip conjure warning OFF","Tooltip conjure warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards',!0),ToolWarnConjureFrenzy:new pn("bool","Tooltip",["Tooltip conjure frenzy warning OFF","Tooltip conjure frenzy warning ON"],'A warning when buying if it will put the bank under the amount needed for max "Conjure Baked Goods" rewards with Frenzy active',!0),ToolWarnEdifice:new pn("bool","Tooltip",["Tooltip edifice warning OFF","Tooltip edifice warning ON"],'A warning when buying if it will put the bank under the amount needed for "Spontaneous Edifice" to possibly give you your most expensive building',!0),ToolWarnUser:new hn("numscale","Tooltip","Tooltip warning at x times CPS: ","Use this to show a customized warning if buying it will put the bank under the amount equal to value times cps; setting to 0 disables the function altogether",0,1/0),ToolWarnBon:new pn("bool","Tooltip",["Calculate tooltip warning with bonus CPS OFF","Calculate tooltip warning with bonus CPS ON"],"Calculate the warning with or without the bonus CPS you get from buying",!0),ToolWarnPos:new pn("bool","Tooltip",["Tooltip warning position (left)","Tooltip warning position (bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new pn("bool","Tooltip",["Grimoire tooltip information OFF","Grimoire tooltip information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new pn("bool","Tooltip",["Wrinkler tooltip OFF","Wrinkler tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new pn("bool","Tooltip",["Sugar lump tooltip OFF","Sugar lump tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new pn("bool","Tooltip",["Garden plots tooltip OFF","Garden plots tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new pn("bool","Tooltip",["Pantheon tooltip OFF","Pantheon tooltip ON"],"Shows additional info in the pantheon tooltip",!0),TooltipAscendButton:new pn("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new pn("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new pn("bool","Statistics",["Missing upgrades OFF","Missing upgrades ON"],"Shows missing upgrades in stats menu",!0),UpStats:new pn("bool","Statistics",["Statistics update rate (default)","Statistics update rate (1s)"],"Default rate is once every 5 seconds",!1),HeavenlyChipsTarget:new hn("numscale","Statistics","Heavenly chips target: ",'Use this to set a heavenly chips target that will be counted towards in the "prestige" statsistics sections',1,1/0),ShowMissedGC:new pn("bool","Statistics",["Missed GC OFF","Missed GC ON"],"Show a stat in the statistics screen that counts how many golden cookies you have missed",!0),Title:new pn("bool","NotificationGeneral",["Title OFF","Title ON","Title pinned tab highlight"],'Update title with colden cookie/season popup timers; pinned tab highlight only changes the title when a golden cookie/season popup spawns; "!" means that golden cookie/reindeer can spawn',!0),GeneralSound:new pn("bool","NotificationGeneral",["Consider game volume setting OFF","Consider game volume setting ON"],'Turning this toggle to "off" makes Cookie Monster no longer consider the volume setting of the base game, allowing mod notifications to play with base game volume turned down',!0),GCNotification:new pn("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when golden cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new pn("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on golden cookie",!0),ColourGCFlash:new un("colour","NotificationGC","The colour of the GC flash, standard colour is white"),GCSound:new pn("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on golden cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new pn("url","NotificationGC","Sound URL:","URL of the sound to be played when a golden cookie spawns"),FortuneNotification:new pn("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when fortune cookie is on the ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new pn("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on fortune cookie spawn",!0),ColourFortuneFlash:new un("colour","NotificationFC","The colour of the fortune flash, standard colour is white"),FortuneSound:new pn("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on fortune cookie spawn",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new pn("url","NotificationFC","Sound URL:","URL of the sound to be played when the ticker has a fortune cookie"),SeaNotification:new pn("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on season popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new pn("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on season popup",!0),ColourSeaFlash:new un("colour","NotificationSea","The colour of the season popup flash, standard colour is white"),SeaSound:new pn("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on season popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new pn("url","NotificationSea","Sound URL:","URL of the sound to be played when on season popup spawns"),GardFlash:new pn("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on garden tick",!0),ColourGardFlash:new un("colour","NotificationGard","The colour of the garden flash, standard colour is white"),GardSound:new pn("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on garden tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new pn("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new pn("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new pn("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),ColourMagicFlash:new un("colour","NotificationMagi","The colour of the magic flash, standard colour is white"),MagicSound:new pn("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new pn("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new pn("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new pn("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a wrinkler appears",!0),ColourWrinklerFlash:new un("colour","NotificationWrink","The colour of the wrinkler flash, standard colour is white"),WrinklerSound:new pn("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new pn("url","NotificationWrink","Sound URL:","URL of the sound to be played when a wrinkler appears"),WrinklerMaxNotification:new pn("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new pn("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),ColourWrinklerMaxFlash:new un("colour","NotificationWrinkMax","The colour of the maximum wrinkler flash, standard colour is white"),WrinklerMaxSound:new pn("bool","NotificationWrinkMax",["Sound OFF","Sound ON"],"Play a sound when the maximum amount of wrinklers has appeared",!0),WrinklerMaxVolume:new mn("vol","NotificationWrinkMax",[],"Volume"),WrinklerMaxSoundURL:new pn("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of wrinklers has appeared"),BulkBuyBlock:new pn("bool","Miscellaneous",["Block bulk buying OFF","Block bulk buying ON"],"Block clicking bulk buying when you can't buy all. This prevents buying 7 of a building when you are in buy-10 or buy-100 mode.",!0),FavouriteSettings:new pn("bool","Miscellaneous",["Favourite settings section OFF","Favourite settings section ON","Favourite settings section ON (Locked)"],"Show stars before each setting which allows selecting it for a 'favourites' section at the top of the Cookie Monster settings. Setting this to Locked removes the stars but shows the 'favourites' section",!0,(function(){Game.UpdateMenu()}))};function fn(){return JSON.stringify({favouriteSettings:se,settings:e,version:"2.031.6"})}function Cn(){if(qe!==Game.dragonLevel||Ie){if(Game.dragonLevel<25&&Game.dragonLevels[Game.dragonLevel].buy.toString().includes("sacrifice")){let e=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/Objects\[(.*)\]/)[1];const t=Game.dragonLevels[Game.dragonLevel].buy.toString().match(/sacrifice\((.*?)\)/)[1];if("i"!==e)if(e=e.replaceAll("'",""),Game.Objects[e].amount{if(e=n,Game.Objects[e].amount{Yt[e]=ko(e)})),Kt=[],Object.keys(Game.Upgrades).forEach((e=>{Kt[e]=Go(e)})),Jt=[],Object.keys(Game.Achievements).forEach((e=>{Jt[e]=yo(e)})),wo()}let kn=!1;function Gn(t,o,n){(1===e[o]||n)&&3===t&&!1===kn||1===t?(l("CMFlashScreen").style.backgroundColor=e[`Colour${o}`],l("CMFlashScreen").style.opacity="0.5",3===t?(l("CMFlashScreen").style.display="inline",setTimeout((function(){Gn(2,o,!0)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o,!0)}),1e3/Game.fps)):2===t?(l("CMFlashScreen").style.opacity="1",setTimeout((function(){Gn(1,o,!0)}),1e3/Game.fps)):0===t&&(l("CMFlashScreen").style.display="none")}function wn(t,o,n,i){if((1===e[o]||i)&&!1===kn){const o=new Audio(t);e.GeneralSound?o.volume=e[n]/100*(Game.volume/100):o.volume=e[n]/100,o.play()}}function vn(t,o,n){1===e[t]&&"hidden"===document.visibilityState&&!1===kn&&new Notification(o,{body:n,badge:"https://orteil.dashnet.org/cookieclicker/favicon.ico"})}function xn(){if(ie!==Game.OnAscend&&(ie=Game.OnAscend,Game.OnAscend?(l("game").style.bottom="0px",1===e.BotBar&&(l("CMBotBar").style.display="none"),1===e.TimerBar&&(l("CMTimerBar").style.display="none")):(ln(),fo()),ho()),!Game.OnAscend&&0===Game.AscendTimer){r!==Object.keys(Game.mods).length&&(bn(),nn(),r=Object.keys(Game.mods).length),Ie&&(Qo(),Game.Has("Golden switch [off]")?(wo(),Kt["Golden switch [off]"].bought=0,Do(),lt=Ve):lt=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)qt[e][t]=yn(e,t)}(),Zo(),function(){let e=0;if(Game.Objects.Bank.minigameLoaded){const t=Game.Objects.Bank.minigame.goods;let o=0;Object.keys(t).forEach((e=>{const n=t[e];o+=n.stock*n.val})),e+=o*Game.cookiesPsRawHighest}e+=function(){let e=0;wo();let t=2;5!==De&&18!==De||(t-=1),5!==He&&18!==He||(t-=1),De=5,He=18;for(let e=0;e{Yt[t].amount>0&&(e=t)})),Yt[e].amount-=1,Oe-=1}return Object.keys(Yt).forEach((t=>{const o=Yt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),Qt=e}(),Ie=0);const t=Game.auraMult("Fierce Hoarder")>0;!Ne&&t?(Ne=!0,Ee=1):Ne&&!t&&(Ne=!1,Ee=1),Ee&&(Xo(),Ee=0),function(){on(),Lo(),function(){Gt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Yt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}wt=e,Gt=e*(.05*e*1.1)*(.05*Game.Has("Sacrilegious corruption")+1)*(.05*Game.Has("Wrinklerspawn")+1)*t}(),No(),Ko();const e=Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset);zt=de(e/so())}(),G=0,Xt={},Object.keys(Game.shimmers).forEach((e=>{Xt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&($t=Game.shimmers[e],G+=1)})),Object.keys(re).forEach((e=>{void 0===Xt[e]&&(re[e].parentNode.removeChild(re[e]),delete re[e])})),y!==Game.shimmerTypes.golden.n?(y=Game.shimmerTypes.golden.n,y&&(b{void 0===re[Game.shimmers[t].id]&&function(t){const o=document.createElement("div");o.id=`GCTimer${t.id}`,o.style.width="96px",o.style.height="96px",o.style.position="absolute",o.style.zIndex="10000000001",o.style.textAlign="center",o.style.lineHeight="96px",o.style.fontFamily='"Kavoon", Georgia, serif',o.style.fontSize="35px",o.style.cursor="pointer",o.style.display="block",0===e.GCTimer&&(o.style.display="none"),o.style.left=t.l.style.left,o.style.top=t.l.style.top,o.onclick=function(){t.pop()},o.onmouseover=function(){t.l.style.filter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))",t.l.style.webkitFilter="brightness(125%) drop-shadow(0px 0px 3px rgba(255,255,255,1))"},o.onmouseout=function(){t.l.style.filter="",t.l.style.webkitFilter=""},re[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),cn(),b=G,0===G&&($t=0)):1===e.GCTimer&&y&&Object.keys(re).forEach((e=>{re[e].style.opacity=Xt[e].l.style.opacity,re[e].style.transform=Xt[e].l.style.transform,re[e].textContent=Math.ceil(Xt[e].life/Game.fps)})),f!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(f=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,f&&(Gn(3,"FortuneFlash",!1),wn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),vn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),g!==Game.shimmerTypes.reindeer.spawned&&(g=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(It=Game.shimmers[e])})),Gn(3,"SeaFlash",!1),wn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),vn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&C!==Game.Objects.Farm.minigame.nextStep&&(0!==C&&C0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>w?(w=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash",!1):Gn(3,"WrinklerFlash",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?wn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):wn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?vn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):vn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):w=t}}()}}function Tn(){let t="";for(let o=0;o{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"===t&&Object.keys(an.Header).forEach((n=>{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])}))})),o&&Mn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Sn(an);Game.UpdateMenu(),Tn()}function Pn(){Object.keys(Game.wrinklers).forEach((e=>{Game.wrinklers[e].sucked>0&&0===Game.wrinklers[e].type&&(Game.wrinklers[e].hp=0)}))}function Bn(t,o){if("b"===t){if(l("tooltip").innerHTML=Game.Objects[o].tooltip(),1===e.TooltipAmor){const e=Ao(Game.Objects[o],Game.Objects[o].basePrice,0,Game.Objects[o].free,Game.Objects[o].amount),t=e-Game.Objects[o].totalCookies;t>0&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split("so far").join(`so far
${ce(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${pe((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(ce(Game.Objects[o].bulkPrice)).join(ce((Game.Objects[o],Game.Objects[o].basePrice,Game.Objects[o].amount,Game.Objects[o].free,Game.buyBulk,1))))}else if("u"===t){if(!Game.UpgradesInStore[o])return"";l("tooltip").innerHTML=Game.crateTooltip(Game.UpgradesInStore[o],"store")}else"s"===t?l("tooltip").innerHTML=Game.lumpTooltip():"g"===t?l("tooltip").innerHTML=Game.Objects["Wizard tower"].minigame.spellTooltip(o)():"p"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.tileTooltip(o[0],o[1])():"ha"===t?l("tooltip").innerHTML=Game.ObjectsById[2].minigame.toolTooltip(1)():"wb"===t?l("tooltip").innerHTML="":"pag"===t?l("tooltip").innerHTML=Game.Objects.Temple.minigame.godTooltip(o)():"pas"===t&&(l("tooltip").innerHTML=Game.Objects.Temple.minigame.slotTooltip(o[0])());if("b"===t&&1===Game.buyMode||"u"===t||"s"===t||"g"===t||"p"===t&&!Game.keys[16]||"ha"===t||"wb"===t||"pag"===t||"pas"===t&&-1!==o[1]){const e=document.createElement("div");e.id="CMTooltipArea",l("tooltip").appendChild(e)}return te=t,oe=o,Po(),l("tooltip").innerHTML}function En(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(T[e]=l(`grimoireSpell${e}`).onmouseover,l(`grimoireSpell${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("g",`${e}`)}),"this"),Game.tooltip.wobble()})}))}function Nn(){if(!m&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];p=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){p(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Mn()}function Dn(t,o){const n=document.createElement("div");n.className="title",n.style.padding="0px 16px",n.style.opacity="0.7",n.style.fontSize="17px",n.style.fontFamily='"Kavoon", Georgia, serif',n.appendChild(document.createTextNode(`${t} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[o]?"-":"+",i.onclick=function(){jn(o),Game.UpdateMenu()},n.appendChild(i),n}function Hn(e,t,o,n){const i=document.createElement("div");i.className="listing";const a=document.createElement("b");if(a.textContent=t,i.appendChild(a),"withTooltip"===e){i.className="listing",i.appendChild(document.createTextNode(" "));const e=document.createElement("span");e.onmouseout=function(){Game.tooltip.hide()},e.onmouseover=function(){Game.tooltip.draw(this,escape(R[n].innerHTML))},e.style.cursor="default",e.style.display="inline-block",e.style.height="10px",e.style.width="10px",e.style.borderRadius="5px",e.style.textAlign="center",e.style.backgroundColor="#C0C0C0",e.style.color="black",e.style.fontSize="9px",e.style.verticalAlign="bottom",e.textContent="?",i.appendChild(e)}return i.appendChild(document.createTextNode(": ")),i.appendChild(o),i}function Un(e){const t=document.createDocumentFragment();t.appendChild(document.createTextNode(`${e.length} `));const o=document.createElement("span");o.onmouseout=function(){Game.tooltip.hide()};const n=document.createElement("div"),i=document.createElement("div");i.style.minWidth="140px",i.style.marginBottom="4px";const a=document.createElement("div");return a.className="name",a.style.marginBottom="4px",a.style.textAlign="center",a.textContent="Missing",i.appendChild(a),Object.keys(e).forEach((t=>{const o=document.createElement("div");o.style.textAlign="center",o.appendChild(document.createTextNode(e[t])),i.appendChild(o)})),n.appendChild(i),o.onmouseover=function(){Game.tooltip.draw(this,escape(n.innerHTML))},o.style.cursor="default",o.style.display="inline-block",o.style.height="10px",o.style.width="10px",o.style.borderRadius="5px",o.style.textAlign="center",o.style.backgroundColor="#C0C0C0",o.style.color="black",o.style.fontSize="9px",o.style.verticalAlign="bottom",o.textContent="?",t.appendChild(o),t}function Rn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(Dn("Lucky Cookies","Lucky")),e.Header.Lucky&&o.appendChild(function(){const e=Game.auraMult("Dragon's Fortune")?"GoldCookDragonsFortuneTooltipPlaceholder":"GoldCookTooltipPlaceholder",t=document.createElement("div");t.className="CMStatsLuckySection";const o=Game.cookies+co(){Game.HasUnlocked(Io[e])||c.push(Io[e])})),0!==c.length&&e.appendChild(Hn("basic","Rare plant drops left to unlock",Un(c))),e}())),o.appendChild(Dn("Prestige","Prestige")),e.Header.Prestige&&o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsPrestigeSection";const o=Math.floor(Game.HowMuchPrestige(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")?ht:0)));t.appendChild(Hn("withTooltip","Prestige Level (CUR / MAX)",document.createTextNode(`${ce(Game.prestige)} / ${ce(o)}`),"PrestMaxTooltipPlaceholder"));const n=Math.max(0,Game.HowManyCookiesReset(o+1)-(Ut+Game.cookiesReset+yt+(Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg")&&ht?ht:0))),i=document.createDocumentFragment();i.appendChild(document.createTextNode(ce(n)));const a=document.createElement("small");a.textContent=` (${de(n/Rt,1)})`,i.appendChild(a),t.appendChild(Hn("withTooltip","Cookies To Next Level",i,"NextPrestTooltipPlaceholder")),t.appendChild(Hn("withTooltip","Heavenly Chips (CUR / MAX)",document.createTextNode(`${ce(Game.heavenlyChips)} / ${ce(o-Game.prestige+Game.heavenlyChips)}`),"HeavenChipMaxTooltipPlaceholder")),t.appendChild(Hn("basic","Heavenly Chips Per Second (last 5 seconds)",document.createTextNode(ce(pt,2))));const r=Number(e.HeavenlyChipsTarget);if(!Number.isNaN(r)){const e=r-Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned));e>0&&(t.appendChild(Hn("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(ce(e)))),t.appendChild(Hn("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(de(e/pt)))))}const l=function(e){let t=Game.cookiesPs;wo(),0===Kt["Heavenly key"].bought&&(Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,Do(),t=Ve,wo()),Ut>=1e6&&jo("Sacrifice"),Ut>=1e9&&jo("Oblivion"),Ut>=1e12&&jo("From scratch"),Ut>=1e15&&jo("Nihilism"),Ut>=1e18&&jo("Dematerialize"),Ut>=1e21&&jo("Nil zero zilch"),Ut>=1e24&&jo("Transcendence"),Ut>=1e27&&jo("Obliterate"),Ut>=1e30&&jo("Negative void"),Ut>=1e33&&jo("To crumbs, you say?"),Ut>=1e36&&jo("You get nothing"),Ut>=1e39&&jo("Humble rebeginnings"),Ut>=1e42&&jo("The end of the world"),Ut>=1e45&&jo("Oh, you're back"),Ut>=1e48&&jo("Lazarus"),Ut>=1e51&&jo("Smurf account"),Ut>=1e54&&jo("If at first you don't succeed"),Kt["Heavenly chip secret"].bought=1,Kt["Heavenly cookie stand"].bought=1,Kt["Heavenly bakery"].bought=1,Kt["Heavenly confectionery"].bought=1,Kt["Heavenly key"].bought=1,je=e;const o=Le;Do(),Vo(),o!==Le&&Do();const n=Ve-t;return je=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(ce(l)));const c=Math.round(l/Game.cookiesPs*1e4);if(Number.isFinite(c)&&0!==c){const e=document.createElement("small");e.textContent=` (${c/100}% of income)`,s.appendChild(e)}t.appendChild(Hn("withTooltip","Reset Bonus Income",s,"ResetTooltipPlaceholder"));const d=Math.floor(Game.HowMuchPrestige(Game.cookiesReset)),p=Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned)),u=p-d;if(!Game.Has("Lucky digit")){let e=7-p%10;e<0&&(e+=10);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Digit" (total / reset)',i))}if(!Game.Has("Lucky number")){let e=777-p%1e3;e<0&&(e+=1e3);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Number" (total / reset)',i))}if(!Game.Has("Lucky payout")){let e=777777-p%1e6;e<0&&(e+=1e6);const o=u+e,n=p+e,i=document.createDocumentFragment();i.appendChild(document.createTextNode(`${n.toLocaleString()} / ${o.toLocaleString()} (+${e})`)),t.appendChild(Hn("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(Dn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${ce(yt)} / ${ce(bt)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Pn()},e.appendChild(t),o.appendChild(Hn("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${ce(kt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},n.appendChild(i),o.appendChild(Hn("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==kt[1]?kt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Uo).forEach((e=>{Game.Has(Uo[e])||(n.push(Uo[e]),o=!0)}));const i=[];Object.keys(Ro).forEach((e=>{Game.Has(Ro[e])||(i.push(Ro[e]),o=!0)}));const a=[];Object.keys($o).forEach((e=>{Game.Has($o[e])||(a.push($o[e]),o=!0)}));const r=[];Object.keys(Game.eggDrops).forEach((e=>{Game.HasUnlocked(Game.eggDrops[e])||(r.push(Game.eggDrops[e]),o=!0)}));const l=[];Object.keys(Game.rareEggDrops).forEach((e=>{Game.HasUnlocked(Game.rareEggDrops[e])||(l.push(Game.rareEggDrops[e]),o=!0)}));const s=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),c=Game.Has("Century egg");if(("christmas"===Game.season||o||s||c)&&(t.appendChild(Dn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Hn("basic","Halloween cookies left to buy",Un(n)));let e=.95;if(Game.HasAchiev("Spooky cookies")&&(e=.8),Game.Has("Starterror")&&(e*=.9),e*=1/Game.dropRateMult(),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=n.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${ce((1-e)*o*100)}% / ${ce((1-.9*e)*o*100)}%`)))}if(0!==i.length){t.appendChild(Hn("basic","Christmas cookies left to buy",Un(i)));let e=.8;if(Game.HasAchiev("Let it snow")&&(e=.6),e*=1/Game.dropRateMult(),Game.Has("Starsnow")&&(e*=.95),Game.hasGod){const t=Game.hasGod("seasons");1===t?e*=.9:2===t?e*=.95:3===t&&(e*=.97)}const o=i.length/7;t.appendChild(Hn("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${ce((1-e)*o*100)}%`)))}0!==a.length&&t.appendChild(Hn("basic","Valentine cookies left to buy",Un(a)));const e=function(e){let t=e*(1/Game.dropRateMult());if(Game.HasAchiev("Hide & seek champion")&&(t*=.7),Game.Has("Omelette")&&(t*=.9),Game.Has("Starspawn")&&(t*=.9),Game.hasGod){const e=Game.hasGod("seasons");1===e?t*=.9:2===e?t*=.95:3===e&&(t*=.97)}const o=1-t,n=Game.eggDrops.length-r.length,i=Game.rareEggDrops.length-l.length,a=.9*o*(1-n/Game.eggDrops.length),s=.1*o*(1-i/Game.rareEggDrops.length),c=.9*o*(n/Game.eggDrops.length)+.1*o*(i/Game.rareEggDrops.length);return[a+.9*c*(1-n/Game.eggDrops.length),s+.1*c*(1-i/Game.rareEggDrops.length)]};0!==r.length&&(t.appendChild(Hn("basic","Normal easter eggs left to unlock",Un(r))),t.appendChild(Hn("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[0])}% / ${ce(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Hn("basic","Rare easter eggs left to unlock",Un(l))),t.appendChild(Hn("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${ce(100*e(.98)[1])}% / ${ce(100*e(.9)[1])}%`)))),"christmas"===Game.season&&t.appendChild(Hn("basic","Reindeer reward",document.createTextNode(ce(mt)))),s&&t.appendChild(Hn("withTooltip","Chocolate egg cookies",document.createTextNode(ce(ht)),"ChoEggTooltipPlaceholder")),c&&t.appendChild(Hn("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(ut-1))/100+"%")))}return t}()),o.appendChild(Dn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Hn("basic",`Average Cookies Per Second (Past ${Y[e.AvgCPSHist]<60?`${Y[e.AvgCPSHist]} seconds`:Y[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(ce(so(),3)))),o.appendChild(Hn("basic",`Average Cookie Clicks Per Second (Past ${K[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(ce(xt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Ho).forEach((t=>{Game.Has(Ho[t])||e.push(Ho[t])})),0!==e.length&&o.appendChild(Hn("basic","Fortune Upgrades Left to Buy",Un(e)))}if(e.ShowMissedGC&&o.appendChild(Hn("basic","Missed Golden Cookies",document.createTextNode(ce(Game.missedGoldenClicks)))),Game.prefs.autosave){const e=document.createElement("span");e.id="CMStatsAutosaveTimer",e.innerText=Game.sayTime(60*Game.fps-(Game.OnAscend?0:Game.T%(60*Game.fps)),4),o.appendChild(Hn("basic","Time till autosave",e))}}l("menu").insertBefore(o,l("menu").childNodes[2]),e.MissingUpgrades&&l("menu").childNodes.forEach((e=>{if(e.children[0])if("Prestige"===e.children[0].innerHTML&&Mt){const t=Mt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesPrestigeTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Prestige upgrades: ${t}/${Game.PrestigeUpgrades.length} (${Math.floor(t/Game.PrestigeUpgrades.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Mt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(Tt){const t=Tt.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing normal upgrades: ${t}/${Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length} (${Math.floor(t/(Game.UpgradesByPool[""].length+Game.UpgradesByPool.tech.length)*100)}%)`,o.appendChild(n),e.insertBefore(o,e.childNodes[3]);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=Tt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(St){const t=St.match(new RegExp("div","g")||0).length/2,o=document.createElement("div");o.id="CMMissingUpgradesCookiesTitle",o.className="listing";const n=document.createElement("div");n.innerHTML=`Missing Cookie upgrades: ${t}/${Game.UpgradesByPool.cookie.length} (${Math.floor(t/Game.UpgradesByPool.cookie.length*100)}%)`,o.appendChild(n),e.appendChild(o);const i=document.createElement("div");i.className="listing crateBox",i.innerHTML=St,e.appendChild(i)}}}))}const $n={Favourite:"Favourite Settings",Calculation:"Calculation",Notation:"Notation",Colours:"Colours and colour coding",BarsDisplay:"Infobars and visual settings",Tooltip:"Tooltips",Statistics:"Statistics",Notification:"Notifications",Miscellaneous:"Miscellaneous"},In={NotificationGeneral:"General Notifications",NotificationGC:"Golden Cookie",NotificationFC:"Fortune Cookie",NotificationSea:"Season Special",NotificationGard:"Garden Tick",NotificationMagi:"Full Magic Bar",NotificationWrink:"Wrinkler",NotificationWrinkMax:"Maximum Wrinklers"};function zn(t,o){const n=document.createElement("div");n.className="title",n.style.opacity="0.7",n.style.fontSize="17px",n.appendChild(document.createTextNode(`${o} `));const i=document.createElement("span");return i.style.cursor="pointer",i.style.display="inline-block",i.style.height="14px",i.style.width="14px",i.style.borderRadius="7px",i.style.textAlign="center",i.style.backgroundColor="#C0C0C0",i.style.color="black",i.style.fontSize="13px",i.style.verticalAlign="middle",i.textContent=e.Header[t]?"-":"+",i.onclick=function(){jn(t),Game.UpdateMenu()},n.appendChild(i),n}function Vn(t){const o=document.createElement("div");if(o.className="listing",1===e.FavouriteSettings&&o.appendChild(function(e){const t=document.createElement("a");return se.includes(e)?(t.innerText="★",t.style.color="yellow"):t.innerText="☆",t.className="option",t.onclick=function(){!function(e){se.includes(e)?se=se.filter((function(t){return t!==e})):se.push(e)}(e),Mn(),Game.UpdateMenu()},t.onmouseover=function(){Game.tooltip.draw(this,escape(R.FavouriteSettingPlaceholder.innerHTML))},t.onmouseout=function(){Game.tooltip.hide()},t.appendChild(document.createTextNode(" ")),t}(t)),"bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Ln+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Ln+t).className="option off")):l(Ln+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Ln+t).innerHTML=gn[t].label[e[t]],Mn()}(t)},n.textContent=gn[t].label[e[t]],o.appendChild(n);const i=document.createElement("label");return i.textContent=gn[t].desc,i.style.lineHeight="1.6",o.appendChild(i),o}if("vol"===gn[t].type){const n=document.createElement("div");n.className="sliderBox";const i=document.createElement("div");i.style.float="left",i.innerHTML=gn[t].desc,n.appendChild(i);const a=document.createElement("div");a.id=`slider${t}right`,a.style.float="right",a.innerHTML=`${e[t]}%`,n.appendChild(a);const r=document.createElement("input");r.className="slider",r.id=`slider${t}`,r.style.clear="both",r.type="range",r.min="0",r.max="100",r.step="1",r.value=e[t],r.oninput=function(){An(t)},r.onchange=function(){An(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){wn(e[t.replace("Volume","SoundURL")],t.replace("Volume","Sound"),t,!0)},l.textContent="Test sound",o.appendChild(l),o}if("url"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,n.style.lineHeight="1.6",o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="text",i.readOnly=!0,i.setAttribute("value",e[t]),i.style.width="300px",o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("input");a.id=`${Ln+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){!function(e,t){Game.promptWrapL.className="framed";const o=e;Game.promptL.innerHTML=`${o}
`,Object.keys(t).forEach((e=>{const o=document.createElement("a");o.id=`promptOption${e}`,o.className="option",o.onclick=function(){PlaySound("snd/tick.mp3"),t[e][1]()},o.textContent=t[e][0],Game.promptL.children[1].appendChild(o)})),Game.promptAnchorL.style.display="block",Game.darkenL.style.display="block",Game.promptL.focus(),Game.promptOn=1,Game.UpdatePrompt()}(a.outerHTML,[["Save",function(){e[t]=l(`CMConfig${t}Prompt`).value,Mn(),Game.ClosePrompt(),Game.UpdateMenu()}],["Cancel",function(){Game.ClosePrompt()}]])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,s.style.lineHeight="1.6",o.appendChild(s),o}if("colour"===gn[t].type){const n=document.createElement("span");n.className="option";const i=document.createElement("input");i.id=t,i.style.width="65px",i.setAttribute("value",e[t]),n.appendChild(i),new Fn(i,{hash:!0,position:"right",onInput:function(){e[this.targetElement.id]=this.toHEXString(),Tn(),Mn(),Game.UpdateMenu()}});const a=document.createElement("label");if(a.textContent=gn[t].desc,a.style.lineHeight="1.6",n.appendChild(a),t.includes("Flash")){const e=document.createElement("a");e.className="option",e.onclick=function(){Gn(3,t.replace("Colour",""),!0)},e.textContent="Test flash",n.appendChild(e)}return o.appendChild(n),Wn().init(),o}if("numscale"===gn[t].type){const n=document.createElement("span");n.className="option",n.textContent=`${gn[t].label} `,n.style.lineHeight="1.6",o.appendChild(n);const i=document.createElement("input");i.id=Ln+t,i.className="option",i.type="number",i.value=e[t],i.min=gn[t].min,i.max=gn[t].max,i.oninput=function(){this.value>this.max&&console.log("TEST"),e[t]=this.value,Mn(),sn()},o.appendChild(i),o.appendChild(document.createTextNode(" "));const a=document.createElement("label");return a.textContent=gn[t].desc,a.style.lineHeight="1.6",o.appendChild(a),o}return o}function _n(t){if(1===e.TimerBar&&0===e.TimerBarPos){const e=parseInt(l("CMTimerBar").style.height,10);Game.mouseY-=e,t(),Game.mouseY+=e}else t()}function Xn(){S.Beautify=Beautify,Beautify=ce,S.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){S.CalculateGains(),Ie=1},S.tooltip={},S.tooltip.draw=Game.tooltip.draw,S.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){S.tooltip.drawMod(e,t,o)},S.tooltip.update=Game.tooltip.update,S.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){S.tooltip.updateMod(),function(){if("store"===Game.tooltip.origin){let t=0;1===e.ToolWarnLucky&&1===e.ToolWarnPos&&null!==l("CMDispTooltipWarningParent")&&(t=l("CMDispTooltipWarningParent").clientHeight-4),Game.tooltip.tta.style.top=`${Math.min(parseInt(Game.tooltip.tta.style.top,10),l("game").clientHeight+l("topBar").clientHeight-Game.tooltip.tt.clientHeight-t-46)}px`}}()},S.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){_n(S.UpdateWrinklers)},S.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){_n(S.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){_n(Game.ClickCookie)}),!1),S.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){S.RebuildUpgrades(),M=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(M[e]=l(`upgrade${e}`).onmouseover,l(`upgrade${e}`).onmouseover=function(){Game.mouseDown||(Game.setOnCrate(this),Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("u",`${e}`)}),"store"),Game.tooltip.wobble())})})),Game.CalculateGains()},S.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e].amount>0){const o=Yt[Game.ObjectsById[e].name].name;Yt[o].amount-=1,Oe-=1,t=Yt[o].basePrice*Game.priceIncrease**Math.max(0,Yt[o].amount-1-Yt[o].free),t=Game.modifyBuildingPrice(Yt[o],t),t=Math.ceil(t);break}const o=Le;return Do(),Vo(),o!==Le&&Do(),[Ve-Game.cookiesPs,t]}(t),n=de(o/(e+Game.cookiesPs)),i=ce(e/Game.cookiesPs*100);l("dragonAuraInfo").style.minHeight="60px",l("dragonAuraInfo").style.margin="8px",l("dragonAuraInfo").appendChild(document.createElement("div")).className="line";const a=document.createElement("div");a.style.minWidth="200px",a.style.textAlign="center",a.textContent=`Picking this aura will change CPS by ${ce(e)} (${i}% of current CPS).`,l("dragonAuraInfo").appendChild(a);const r=document.createElement("div");r.style.minWidth="200px",r.style.textAlign="center",r.textContent=`It will take ${n} to recover the cost.`,l("dragonAuraInfo").appendChild(r)}}(t)},S.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){S.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Ye}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},S.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Wn().picker&&void 0!==Wn().picker.owner||(S.UpdateMenu(),function(){const t=document.createElement("div");t.className="title","prefs"===Game.onMenu?(t.textContent="Cookie Monster Settings",function(t){const o=document.createDocumentFragment();o.appendChild(t),Object.keys($n).forEach((t=>{if("Favourite"===t){if(0!==se.length&&e.FavouriteSettings>0&&(o.appendChild(zn(t,$n[t])),e.Header[t]))for(let e=0;e{const n=zn(t,In[t]);n.style.fontSize="15px",n.style.opacity="0.5",o.appendChild(n),e.Header[t]&&Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(Vn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Sn(an)},i.textContent="Restore Default",n.appendChild(i),o.appendChild(n),l("menu").childNodes[2].insertBefore(o,l("menu").childNodes[2].childNodes[l("menu").childNodes[2].childNodes.length-1])}(t)):"stats"===Game.onMenu?e.Stats&&(t.textContent="Cookie Monster Statistics",Rn(t)):"log"===Game.onMenu&&(t.textContent="Cookie Monster ",function(t){const o=document.createElement("div");o.className="subsection";const n=document.createElement("span");if(n.style.cursor="pointer",n.style.display="inline-block",n.style.height="14px",n.style.width="14px",n.style.borderRadius="7px",n.style.textAlign="center",n.style.backgroundColor="#C0C0C0",n.style.color="black",n.style.fontSize="13px",n.style.verticalAlign="middle",n.textContent=e.Header.InfoTab?"-":"+",n.onclick=function(){jn("InfoTab"),Game.UpdateMenu()},t.appendChild(n),o.appendChild(t),e.Header.InfoTab){const e=document.createElement("div");e.innerHTML='
\n Cookie Monster\n offers a wide range of tools and statistics to enhance your game experience.\n It is not a cheat interface – although it does offer helpers for golden cookies and such, everything can be toggled off at will to only leave how much information you want.
\n Progess on new updates and all previous release notes can be found on the GitHub page linked above!
\n Please also report any bugs you may find over there!
\n
\n ',o.appendChild(e);const t=document.createElement("div");t.innerHTML='
\nThe latest update (v 2.031.6) has revamped the way PP is colourcoded. In the previous versions this was not always correct and we had some settings that made it even more incorrect. With this update Cookie Monster compares the PP of a building to all other possibilities (also buying 10 or 100) of a building and colors the PP accordingly.
\nThis means that if it is better to buy 10 of a building immediately rather than to buy in increments of 1 Cookie Monster will now show this! In this case the buy 1 option will be yellow, while the buy 10 option will be green.
\nThis also means that you will see some more diverse colors. Rather than coloring according to arbitrary "middle values" Cookie Monster now uses a top 10, 20 and 30. While this might take some getting used to we believe the new system is much better in conveying useful information to the user while also being more correct!
\n
\nThis update also implements the following functions:
\n- Added a tooltip displaying the reward to the extra pop wrinkler buttons
\n- Added tooltips to the Gods in the Pantheon
\n- The tooltip for Elder Pledge now displays correctly, although it takes some time to load after Cookie Monster has been loaded
\n- You can now test the volume and sound of notifications in the settings screen
\n- The bottom bar will now flicker less and each column has received a bit of padding
\n- Introduced new colour scheme for PP, see the explanation of colors in the Readme or the settings
\n- Added option to show buttons that can hide the upgrade and building section
\n- Added option to display PP as a time unit, note that these are only approximations. PP does not translate directly into time (the name is deceptive, we know...)
\n- Statistics page now shows chance for random drops when they have not been achieved
\n- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey
\n
\nThis update fixes the following bugs:
\n- Incorrect amount for "required for max plant reward" in statistics page
\n- Fixed the tooltips of the \'?\' buttons in the statistics page not showing
\n- Fixed some unclear settings descriptions
\n
\nPlease submit any bug reports or feature requests to the GitHub page!\n
\n
\n',o.appendChild(t)}const i=l("menu").children[1];i.insertBefore(o,i.children[1])}(t))}())},S.sayTime=Game.sayTime,I=function(e,t){return Number.isNaN(e)||e<=0?S.sayTime(e,t):de(e/Game.fps,1)},S.Logic=Game.Logic,Game.Logic=function(){S.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),le=`${Game.OnAscend?"Ascending! ":""}${ce(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=le;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=$t?$t.wrath?`[W${Math.ceil($t.life/Game.fps)}]`:`[G${Math.ceil($t.life/Game.fps)}]`:Game.Has("Golden switch [off]")?"[GS]":`[${Number(l("CMTimerBarGCMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.golden.maxTime-Game.shimmerTypes.golden.time)/Game.fps)}]`,f&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=g?`[R${Math.ceil(It.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=le;"["===a.charAt(0)&&(a=a.substring(a.lastIndexOf("]")+1)),document.title=`${e+(n?t:"")+(i?o:"")} ${a}`}else if(2===e.Title){let e="",t=!1;$t&&(t=!0,$t.wrath?e+=`[W${Math.ceil($t.life/Game.fps)}]`:e+=`[G${Math.ceil($t.life/Game.fps)}]`),f&&(t=!0,e+="[F]"),"christmas"===Game.season&&g&&(e+=`[R${Math.ceil(It.life/Game.fps)}]`,t=!0),t&&(e+=" - ");let o="Cookie Clicker";"fools"===Game.season&&(o="Cookie Baker"),e+=o,document.title=e}}(),function(){const t=Math.max(0,Game.HowManyCookiesReset(Math.floor(Game.HowMuchPrestige(Game.cookiesReset+Game.cookiesEarned))+1)-(Game.cookiesEarned+Game.cookiesReset)),o=Game.sayTime((Date.now()-Game.startDate)/1e3*Game.fps,-1);let n="";n+=`You've been on this run for ${""===o?"not very long":o}.
`,n+='
',Game.prestige>0&&(n+=`Your prestige level is currently ${ce(Game.prestige)}.
(CpS +${ce(Game.prestige)}%)`,n+='
'),n+=Be<1?"Ascending now would grant you no prestige.":Be<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${ce(Be)} prestige levels (+${ce(Be)}% CpS)
and ${ce(Be)} heavenly chips to spend.`,n+='
',n+=`You need ${ce(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${zt} to reach the next level and you are making ${ce(pt,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Qn(){bn(),en(),nn(),r=Object.keys(Game.mods).length,v=document.createElement("style"),v.type="text/css",v.id="CMCSS",document.head.appendChild(v),function(){const e=document.createElement("div");e.id="CMBotBar",e.style.height="69px",e.style.width="100%",e.style.position="absolute",e.style.display="none",e.style.backgroundColour="#262224",e.style.backgroundImage="linear-gradient(to bottom, #4d4548, #000000)",e.style.borderTop="1px solid black",e.style.overflow="auto",e.style.textShadow="-1px 0 black, 0 1px black, 1px 0 black, 0 -1px black";const t=e.appendChild(document.createElement("table"));t.style.width="100%",t.style.textAlign="center",t.style.whiteSpace="nowrap";const o=t.appendChild(document.createElement("tbody")),n=function(e,t){const o=document.createElement("td");return o.style.textAlign="right",o.className=P+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",O)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",E)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",E)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",E)),l("wrapper").appendChild(e),Object.keys(Game.Objects).forEach((e=>{uo(e)}))}(),function(){const e=document.createElement("div");e.id="CMTimerBar",e.style.position="absolute",e.style.display="none",e.style.height="0px",e.style.fontSize="10px",e.style.fontWeight="bold",e.style.backgroundColour="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:A},{id:"CMTimerBarGCBar",color:L}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:A},{id:"CMTimerBarRenBar",color:F}]);e.appendChild(o);const n=document.createElement("div");n.id="CMTimerBarBuffTimers",e.appendChild(n),l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMUpgradeBar",e.style.width="100%",e.style.backgroundColour="black",e.style.textAlign="center",e.style.fontWeight="bold",e.style.display="none",e.style.zIndex="21",e.onmouseout=function(){Game.tooltip.hide()};const t=document.createElement("div");t.appendChild(function(){const e=document.createElement("div");e.style.minWidth="330px",e.style.marginBottom="4px";const t=document.createElement("div");t.className="name",t.style.marginBottom="4px",t.textContent="Legend",e.appendChild(t);const o=function(e,t){const o=document.createElement("div");o.style.verticalAlign="middle";const n=document.createElement("span");return n.className=B+e,n.style.display="inline-block",n.style.height="10px",n.style.width="10px",n.style.marginRight="4px",o.appendChild(n),o.appendChild(document.createTextNode(t)),o};return e.appendChild(o(E,"Better than the best PP of a building option")),e.appendChild(o(N,"Same as the best PP building option")),e.appendChild(o(O,"Within the top 10 of PP for buildings")),e.appendChild(o(F,"Within the top 20 of PP for buildings")),e.appendChild(o(W,"Within the top 30 of PP for buildings")),e.appendChild(o(L,"Outside of the top 30 of PP for buildings")),e.appendChild(o(A,"Negative or infinity PP")),e}()),e.onmouseover=function(){Game.tooltip.draw(this,escape(t.innerHTML),"store")};const o=function(e,t){const o=document.createElement("span");return o.id=e,o.className=P+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",E)),e.appendChild(o("CMUpgradeBarGreen",N)),e.appendChild(o("CMUpgradeBarYellow",O)),e.appendChild(o("CMUpgradeBarOrange",F)),e.appendChild(o("CMUpgradeBarRed",W)),e.appendChild(o("CMUpgradeBarPurple",L)),e.appendChild(o("CMUpgradeBarGray",A)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMFlashScreen",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="white",e.style.display="none",e.style.zIndex="9999999999",e.style.position="absolute",l("wrapper").appendChild(e)}(),function(){const e=document.createElement("div");e.id="CMSectionHidButtons",e.style.textAlign="center";const t=document.createElement("a");t.className="option",t.onclick=function(){"flex"===l("upgrades").style.display?(l("upgrades").style.display="none",l("toggleUpgrades").style.display="none",l("techUpgrades").style.display="none",l("vaultUpgrades").style.display="none"):(l("upgrades").style.display="flex",0!==l("toggleUpgrades").children.length&&(l("toggleUpgrades").style.display="block"),0!==l("techUpgrades").children.length&&(l("techUpgrades").style.display="block"),0!==l("vaultUpgrades").children.length&&(l("vaultUpgrades").style.display="block"))},t.textContent="Hide/Show Upgrades",e.appendChild(t);const o=document.createElement("a");o.className="option",o.onclick=function(){"grid"===l("products").style.display?l("products").style.display="none":l("products").style.display="grid"},o.textContent="Hide/Show Buildings",e.appendChild(o),l("store").insertBefore(e,l("store").childNodes[2])}(),function(){const e=document.createElement("link");e.id="CMFavicon",e.rel="shortcut icon",e.href="https://orteil.dashnet.org/cookieclicker/favicon.ico",document.getElementsByTagName("head")[0].appendChild(e)}(),Object.keys(U).forEach((e=>{!function(e,t,o){const n=document.createElement("div");n.id=e;const i=document.createElement("div");i.style.minWidth=o,i.style.marginBottom="4px";const a=document.createElement("div");a.style.textAlign="left",a.textContent=t,i.appendChild(a),n.appendChild(i),R[e]=n}(U[e][0],U[e][1],U[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Pn()},e.onmouseout=function(){Game.tooltip.shouldHide=1},e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopAll")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(e);const t=document.createElement("a");t.id="PopFattestWrinklerButton",t.textContent="Pop Single Fattest",t.className="option",t.onclick=function(){null!==kt[1]&&(Game.wrinklers[kt[1]].hp=0)},t.onmouseout=function(){Game.tooltip.shouldHide=1},t.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("wb","PopFattest")}),"this"),Game.tooltip.wobble()},l("sectionLeftExtra").children[0].append(t)}(),l("products").style.display="grid",l("storeBulk").style.gridRow="1/1",l("upgrades").style.display="flex",l("upgrades").style["flex-wrap"]="wrap",Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];null!==l(`product${t.id}`).onmouseover&&(x[e]=l(`product${t.id}`).onmouseover,l(`product${t.id}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("b",`${e}`)}),"store"),Game.tooltip.wobble()})})),Game.canLumps()&&(s=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),h=Game.LoadMinigames,Game.LoadMinigames=function(){h(),Game.Objects.Farm.minigameLoaded&&(l("gardenTool-1").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("ha","HarvestAllButton")}),"this"),Game.tooltip.wobble()},Array.from(l("gardenPlot").children).forEach((e=>{const t=e.id.slice(-3);e.onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("p",[`${t[0]}`,`${t[2]}`])}),"this"),Game.tooltip.wobble()}}))),En(),function(){if(Game.Objects.Temple.minigameLoaded){for(let e=0;e<11;e+=1)l(`templeGod${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pag",e)}),"this"),Game.tooltip.wobble()};for(let e=0;e<3;e+=1)l(`templeSlot${e}`).onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("pas",[e,Game.Objects.Temple.minigame.slot[e]])}),"this"),Game.tooltip.wobble()}}}(),On()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){z=1},l("backgroundLeftCanvas").onmouseout=function(){z=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{_[e]=0}))},Xn(),On(),Game.CalculateGains(),Sn(),$=Game.OnAscend,Game.prefs.popups?Game.Popup("Cookie Monster version 2.031.6 loaded!"):Game.Notify("Cookie Monster version 2.031.6 loaded!","","",1,1),Game.Win("Third-party")}const qn={init:function(){kn=!0;let e=!0;Game.version!==Number("2.031")&&(e=confirm("Cookie Monster version 2.031.6 is meant for Game version 2.031. Loading a different version may cause errors. Do you still want to load Cookie Monster?")),e&&(Qn(),Game.registerHook("draw",Bo),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),void 0!==t.favouriteSettings&&(se=t.favouriteSettings),Sn(t.settings),"2.031.6"!==t.version&&(Game.prefs.popups?Game.Popup("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!"):Game.Notify("A new version of Cookie Monster has been loaded, check out the release notes in the info tab!","","",0,1))},save:fn};Game.registerMod("CookieMonster",qn)})()})(); diff --git a/dist/CookieMonster.js.map b/dist/CookieMonster.js.map index fd1746f..65865f8 100644 --- a/dist/CookieMonster.js.map +++ b/dist/CookieMonster.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://cookiemonster-mod/CookieMonster.js"],"names":["__webpack_modules__","877","module","global","factory","exports","document","win","Error","window","this","BoxShadow","funcName","elm","jsc","jscolor","initialized","instances","readyQueue","register","addEventListener","pub","init","installBySelector","selector","rootNode","node","elms","querySelectorAll","matchClass","RegExp","lookupClass","i","length","dataOpts","m","undefined","type","toLowerCase","isColorAttrSupported","getDataAttr","className","match","targetElm","optsStr","console","warn","docsRef","opts","trim","parseOptionsStr","e","str","JSON","parse","eParse","looseJSON","Function","eEval","getInstances","inst","targetElement","push","createEl","tagName","el","createElement","setData","nodeOrSelector","sel","querySelector","isNode","val","Node","nodeType","nodeName","removeChildren","firstChild","removeChild","isTextInput","isButton","n","indexOf","isButtonEmpty","value","textContent","isPassiveEventSupported","supported","Object","defineProperty","get","removeEventListener","setAttribute","dataProp","obj","arguments","data","hasOwnProperty","prop","map","removeData","getData","setDefault","name","attrName","getAttribute","setDataAttr","_attachedGroupEvents","attachGroupEvent","groupName","evnt","func","detachGroupEvents","evt","preventDefault","returnValue","captureTarget","target","setCapture","_capturedTarget","releaseTarget","releaseCapture","triggerEvent","eventName","bubbles","cancelable","ev","Event","createEvent","initEvent","dispatchEvent","triggerInputEvent","eventKey","keys","9","13","27","code","keyCode","strList","replace","split","hasClass","classList","contains","addClass","classNames","add","removeClass","repl","remove","getCompStyle","getComputedStyle","currentStyle","setStyle","styles","important","reversible","priority","origStyle","setVal","style","setProperty","hexColor","r","g","b","Math","round","toString","substr","toUpperCase","hexaColor","a","rgbColor","rgbaColor","linearGradient","stdName","prefixes","helper","tryFunc","tryVal","background","getFuncName","Array","prototype","join","call","setBorderRadius","border-radius","setBoxShadow","box-shadow","getElementPos","relativeToViewport","x","y","rect","getBoundingClientRect","left","top","viewPos","getViewPos","getElementSize","offsetWidth","offsetHeight","getAbsPointerPos","changedTouches","clientX","clientY","getRelPointerPos","targetRect","srcElement","doc","documentElement","pageXOffset","scrollLeft","clientLeft","pageYOffset","scrollTop","clientTop","getViewSize","innerWidth","clientWidth","innerHeight","clientHeight","RGB_HSV","min","v","max","h","HSV_RGB","s","u","floor","parseColorString","ret","rgba","format","parseInt","charAt","mR","mG","mB","mA","par","re","parseFloat","parsePaletteValue","mixed","vals","isArray","colors","color","containsTranparentColor","isAlphaFormat","scaleCanvasForHighDPR","canvas","dpr","devicePixelRatio","width","height","getContext","scale","genColorPreviewCanvas","separatorPos","specWidth","scaleForHighDPR","sepW","previewSeparator","sqSize","chessboardSize","sqColor1","chessboardColor1","sqColor2","chessboardColor2","cWidth","cHeight","ctx","fillStyle","fillRect","start","clearRect","lineWidth","beginPath","strokeStyle","moveTo","lineTo","stroke","genColorPreviewGradient","position","params","right","apply","redrawPosition","picker","owner","tp","vp","thisObj","fixed","c","ts","vs","pd","getPickerDims","ps","borderW","borderH","l","smartPosition","pp","positionValue","contractShadow","_drawPosition","vShadow","shadowBlur","wrap","boxS","shadow","shadowColor","w","controlBorderWidth","sliderSpace","getControlPadding","sliderSize","getSliderChannel","hasAlphaChannel","pal","getPaletteDims","padding","closeButton","buttonHeight","pW","pH","contentW","contentH","paddedW","paddedH","borderWidth","palette","cols","rows","cellW","cellH","sampleCount","_palette","paletteCols","ceil","paletteSpacing","paletteHeight","pointerBorderWidth","pointerThickness","getPadYChannel","mode","triggerCallback","callback","error","triggerGlobal","eventNames","trigger","_pointerMoveEvent","mouse","touch","_pointerEndEvent","_pointerOrigin","onDocumentKeyUp","tryHide","onWindowResize","onWindowScroll","onParentScroll","onDocumentMouseDown","showOnClick","disabled","show","onControlPointerStart","onPickerTouchStart","controlName","pointerType","registerDragEvents","offset","onDocumentPointerMove","onDocumentPointerEnd","parent","frameElement","ofs","abs","rel","channels","fromHSVA","setPad","setSld","setASld","onPaletteSampleClick","currentTarget","_setFormat","getFormat","paletteSetsAlpha","_paletteHasTransparency","fromRGBA","hideOnPaletteClick","hide","ofsX","ofsY","pointerAbs","xVal","yVal","fmt","createPadCanvas","draw","hGrad","createLinearGradient","addColorStop","vGrad","createSliderGradient","color1","color2","grad","createASliderGradient","hShadow","blur","spread","inset","flags","leaveValue","leaveAlpha","leavePreview","enumOpts","previewPosition","alphaChannel","deprecatedOpts","styleElement","onFineChange","overwriteImportant","closable","insetWidth","insetColor","refine","THIS","setOption","option","oldOpt","newOpt","setter","getOption","getter","drawPicker","_processParentElementsInDOM","box","boxB","pad","padB","padM","padCanvas","cross","crossBY","crossBX","crossLY","crossLX","sld","sldB","sldM","sldGrad","sldPtrS","sldPtrIB","sldPtrMB","sldPtrOB","asld","asldB","asldM","asldGrad","asldPtrS","asldPtrIB","asldPtrMB","asldPtrOB","btn","btnT","appendChild","passive","insetColors","outsetColor","p","displaySlider","displayAlphaSlider","pickerDims","crossOuterSize","crossSize","controlPadding","borderRadius","PI","clear","zIndex","border","borderColor","backgroundColor","opacity","controlBorderColor","cursor","instance","control","pointerBorderColor","pointerColor","overflow","display","sliderInnerSpace","innerHTML","chessboard","si","sampleColor","sampleCssColor","sc","sw","backgroundImage","toDataURL","backgroundRepeat","backgroundPosition","bottom","maxWidth","whiteSpace","buttonColor","font","textAlign","onmousedown","lineHeight","createTextNode","closeText","redrawPad","redrawSld","redrawASld","activeClassName","container","body","parentNode","yChannel","rgb1","rgb2","rgb","toHEXString","sldChannel","isPickerOwner","alpha","onChange","onInput","valueElement","alphaElement","previewElement","previewSize","previewPadding","required","hash","uppercase","forceStyle","hideOnLeave","minS","maxS","minV","maxV","minA","maxA","redraw","exposeColor","success","opt","channel","res","evs","callbackProp","isNaN","hsv","fromHSV","fromRGB","fromString","setPreviewElementBg","setValueElementValue","toHEXAString","toRGBString","toRGBAString","toGrayscale","toCanvas","toBackground","isLight","_currentFormat","processValueInput","processAlphaInput","colorStr","alphaVal","setAlphaElementValue","backgrounds","image","size","repeat","origin","preview","bg","sty","background-image","background-position","background-size","background-repeat","background-origin","padding-left","padding-right","_parentElementsProcessed","compStyle","set__palette","options","presetsArr","preset","slice","pres","presets","nonProperties","test","min-width","valueElementOrigEvents","oninput","oldVal","initValue","initAlpha","install","shift","ready","triggerNow","installByClassName","JSColor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__esModule","d","definition","key","o","enumerable","CMOptions","ToggleWrinklerButtons","WrinklerButtons","Game","elderWrath","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColourTextPre","ColourBackPre","ColourBlue","ColourGreen","ColourYellow","ColourOrange","ColourRed","ColourPurple","ColourGray","ColourPink","ColourBrown","ColoursOrdering","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColours","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","FavouriteSettings","BeautifyFormatting_Beautify","num","floats","forced","decimals","ScaleDecimals","Infinity","Scale","Beautify","Number","isFinite","answer","ScaleCutoff","ScaleSeparator","toLocaleString","toExponential","exponential","AmountOfTenPowerThree","toFixed","log","FormatTime","time","longFormat","formattedTime","TimeFormat","GetTimeColour","text","CookiesDiff","WrinkDiff","WrinkFattestDiff","ChoEggDiff","ClicksDiff","HeavenlyChipsDiff","CacheLastCPSCheck","CacheLastCookies","CacheLastWrinkCookies","CacheLastWrinkFattestCookies","CacheLastClicks","CacheAverageGainBank","CacheAverageGainWrink","CacheAverageGainWrinkFattest","CacheAverageGainChoEgg","CacheAverageCPS","CacheLastHeavenlyCheck","CacheLastHeavenlyChips","CacheDoRemakeBuildPrices","CacheHadBuildAura","SimBuildingsOwned","SimUpgradesOwned","SimPledges","SimAchievementsOwned","SimHeavenlyPower","SimPrestige","SimDragonAura","SimDragonAura2","SimGod1","SimGod2","SimGod3","SimDoSims","SimEffs","SimCookiesPs","SimCookiesPsRaw","CacheDragonAura","CacheDragonAura2","CacheLastDragonLevel","CacheCostDragonUpgrade","CacheLucky","CacheLuckyReward","CacheLuckyWrathReward","CacheLuckyFrenzy","CacheLuckyRewardFrenzy","CacheLuckyWrathRewardFrenzy","CacheConjure","CacheConjureReward","CacheEdifice","CacheEdificeBuilding","CacheNoGoldSwitchCookiesPS","CacheDragonsFortuneMultAdjustment","CacheGoldenCookiesMult","CacheWrathCookiesMult","CacheHCPerSecond","CacheCentEgg","CacheSeaSpec","CacheLastChoEgg","CacheObjects1","CacheObjects10","CacheObjects100","CacheWrinklersTotal","CacheWrinklersNormal","CacheWrinklersFattest","CacheCurrWrinklerCPSMult","CacheCurrWrinklerCount","CacheUpgrades","CacheAverageClicks","CacheMissingUpgrades","CacheMissingUpgradesPrestige","CacheMissingUpgradesCookies","CacheChainRequired","CacheChainRequiredNext","CacheChainMaxReward","CacheChainWrathRequired","CacheChainWrathRequiredNext","CacheChainWrathMaxReward","CacheChainFrenzyRequired","CacheChainFrenzyRequiredNext","CacheChainFrenzyMaxReward","CacheChainFrenzyWrathRequired","CacheChainFrenzyWrathRequiredNext","CacheChainFrenzyWrathMaxReward","CacheRealCookiesEarned","CacheAvgCPSWithChoEgg","CacheSpawnedGoldenShimmer","CacheSeasonPopShimmer","CacheTimeTillNextPrestige","CacheMinPP","CachePPArray","CacheGoldenShimmersByID","CacheSellForChoEgg","CacheGods","0","1","2","3","4","5","6","7","8","10","SimObjects","SimUpgrades","SimAchievements","SimAuraMult","what","dragonAuras","SimGetSellMultiplier","giveBack","SimEff","def","SimHas","it","ascensionMode","pool","tier","bought","SimHasGod","hasGod","Temple","minigame","Objects","god","gods","id","SimModifyBuildingPrice","building","price","ModifiedPrice","hasBuff","fortune","minigameLoaded","godLvl","BuildingSell","build","basePrice","free","amount","noSim","noSimRes","toChange","startingAmount","moni","buyBulk","priceIncrease","modifyBuildingPrice","getSellMultiplier","UpdateBuildings","buyMode","BuildColour","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColour","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColour","j","childNodes","div","SortUpgrades","nameChecker","arr2","upgrade","findIndex","order","GetCPS","CPSMode","CalcWrink","cookiesPs","cpsSucked","wrinklers","GetWrinkConfigBank","CreateTimer","bars","timerBar","margin","fontSize","marginRight","verticalAlign","colorBar","borderTopRightRadius","borderBottomRightRadius","timer","marginLeft","CreateBotBarBuildingColumn","buildingName","bonus","header","substring","lastChild","paddingLeft","UpdateBotBar","BotBar","count","PPString","PPDisplayTime","timeColour","bulkPrice","cookies","UpdateBackground","Background","LeftBackground","UpdateBotTimerBarPosition","TimerBar","TimerBarPos","ToggleTimerBar","CacheDragonAuras","dragonAura","dragonAura2","InitAchievement","achievementName","Achievements","you","SimGetTieredCpsMult","mult","tieredUpgrades","Tiers","special","synergies","syn","buildingTie1","buildingTie2","grandma","Grandma","misfortune","vanilla","InitialBuildingData","cps","magicCpS","ComputeCps","GrandmaSynergies","UpgradesByPool","kitten","Portal","baseCps","baseCPS","InitUpgrade","upgradeName","Upgrades","power","level","pow","CopyData","UpgradesOwned","pledges","AchievementsOwned","heavenlyPower","prestige","totalCookies","slot","won","TooltipCreateHeader","fontWeight","TooltipCreateCalculationSection","tooltip","income","marginBottom","click","production","CalculateGrimoireRefillTime","currentMagic","maxMagic","targetMagic","magic","fps","GetCPSBuffMult","buffs","multCpS","ToggleToolWarnPos","ToolWarnPos","UpdateTooltips","tooltipBox","paddingBottom","TooltipCreateTooltipBox","TooltipBuildUpgrade","increase","productionAchievs","HasAchiev","achiev","nextProductionAchiev","Building","getPrice","bonusMouse","previousSibling","chocolate","Upgrade","TooltipLump","lumpType","lumpColour","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColour","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","plantName","GardenPlots","totalGain","mortal","tile","immortal","matureBase","HarvestAll","WrinklerReward","WrinklerButton","TooltipPantheon","GodID","cps1","cps2","cps3","PantheonGods","getElementById","TooltipWarn","create","boxId","labelTextFront","labelTextBack","deficitId","transition","labelDiv","labelSpan","deficitDiv","deficitSpan","ToolWarnUser","TooltipCreateWarningSection","bonusIncomeUsed","ToolWarnBon","limitLucky","bonusNoFren","ToolWarnLucky","ToolWarnLuckyFrenzy","limitLuckyFrenzy","ToolWarnConjure","limitConjure","ToolWarnConjureFrenzy","limitConjureFrenzy","ToolWarnEdifice","children","Warnings","Draw","prefs","autosave","drawT","onMenu","Stats","innerText","sayTime","T","maxWidthTwoBar","maxWidthOneBar","numberOfTimers","shimmerTypes","golden","spawned","Has","minTime","maxTime","TimerBarOverlay","season","reindeer","BuffTimerBars","classColour","UpdateTimerBar","TooltipWrink","showingTooltip","phase","selected","placeholder","wrinkler","minWidth","escape","CheckWrinklerTooltip","sucked","toSuck","UpdateWrinklerTooltip","UpStats","UpdateMenu","monospace","CMAvgQueue","[object Object]","maxLength","queue","newValue","timePeriod","CacheAvgCPS","currDate","Date","now","choEggTotal","cookiesEarned","timeDiff","bankDiffAvg","wrinkDiffAvg","wrinkFattestDiffAvg","choEggDiffAvg","clicksDiffAvg","cookieClicks","addLatest","cpsLength","AvgCPSHist","calcAverage","choEgg","HasUnlocked","AvgClicksHist","ColourOfPP","PPSecondsLowerLimit","PPOnlyConsiderBuyable","CacheColour","PPRigidelMode","getSumPrice","PPExcludeTop","CachePP","PP_CachePP","indexOfMin","CacheBuildingsPP","BuildingGetPrice","SimWin","CalculateGains","effs","myEffs","ii","heavenlyMult","SimGetHeavenlyMultiplier","heralds","cookieUpgrades","buildMult","sin","santaLevel","milkProgress","milkMult","catMult","storedCps","eggMult","day","startDate","lumps","rawCookiesPs","CpsAchievements","threshold","auraMult","bakeryName","goldenSwitchMult","upgrades","goldenCookieUpgrades","veilMult","runModHookOnValue","Fortunes","HalloCookies","ChristCookies","ValCookies","PlantDrops","SimHasAchiev","CheckOtherAchiev","grandmas","buildingsOwned","mathematician","base10","minAmount","ObjectsById","Cursor","hasAllHalloCook","hasAllChristCook","list","fortunes","CacheBuildingIncome","result","tieredAchievs","achievUnlock","lastAchievementsOwned","BuyBuildingsBonusIncome","CacheBuildingsPrices","CacheIncome","bonusIncome","unlocked","CountsAsUpgradeOwned","diffMouseCPS","multClick","out","MouseCps","computedMouseCps","BuyUpgradesBonusIncome","MaxChainCookieReward","digit","maxPayout","totalFromChain","nextMoni","nextRequired","chain","LN10","CacheChain","cpsBuffMult","CacheHeavenlyChipsPS","chipsOwned","HowMuchPrestige","cookiesReset","ascendNowToGet","heavenlyChipsDiffAvg","CacheAllMissingUpgrades","classes","noFrame","crates","icon","iconFunction","getDynamicTooltip","crateMissing","CacheSeasonSpec","CacheStatsCookies","CacheGoldenAndWrathCookiesMults","goldenMult","wrathMult","eff","CacheWrinklers","InitCache","SettingsDefault","DetailedTime","UpgradeBarFixedPos","DragonAuraInfo","GrimoireBar","GCTimer","Favicon","HideSectionsButtons","TooltipAmor","TooltipAscendButton","MissingUpgrades","HeavenlyChipsTarget","ShowMissedGC","GeneralSound","GCNotification","GCFlash","ColourGCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","ColourFortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","ColourSeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","ColourGardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","ColourMagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","ColourWrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","ColourWrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","BulkBuyBlock","Header","Favourite","Calculation","Notation","Colours","BarsDisplay","Tooltip","Statistics","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingColours","SettingVolume","SettingInputNumber","SettingsData","insertBefore","UpBarColor","save","stringify","favouriteSettings","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","Sound_PlaySound","url","sndConfig","volConfig","sound","Audio","volume","play","CreateNotification","notifyConfig","title","message","visibilityState","badge","CMLoop","OnAscend","AscendTimer","mods","CachePantheonGods","sellTotal","Bank","marketGoods","goods","goodsVal","marketGood","stock","cookiesPsRawHighest","buildingsToSacrifice","highestBuilding","SellBuildingsForChoEgg","CacheSellAllForChoEgg","hasBuildAura","godMult","CacheCurrWrinklerCPS","cookiesToNext","HowManyCookiesReset","LoopCache","shimmers","spawnLead","cookie","fontFamily","onclick","pop","onmouseover","filter","webkitFilter","onmouseout","CreateGCTimer","transform","life","TickerEffect","nextStep","CheckMagicMeter","CurrentWrinklers","getWrinklersMax","CheckWrinklerCount","UpdateColours","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","Colors","mod","PopAllNormalWrinklers","hp","CreateTooltip","buildPrice","amortizeAmount","storedTotalCps","globalCpsMult","crateTooltip","lumpTooltip","spellTooltip","tileTooltip","toolTooltip","godTooltip","slotTooltip","area","ReplaceTooltipGrimoire","dynamic","wobble","ReplaceNativeGrimoireDraw","magicBarTextL","ReplaceNativeGrimoire","launch","ReplaceNativeGrimoireLaunch","jscolor_default","ToggleSetting_ConfigPrefix","ToggleConfigVolume","ToggleHeader","StatsHeader","span","StatsListing","listingName","StatsMissDisp","theMissDisp","frag","createDocumentFragment","missing","AddMenuStats","stats","goldCookTooltip","section","luckyColour","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColourFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColour","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColour","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColourFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColourFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColour","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColour","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColour","bakeberryFrag","chocorootColour","chocorootFrag","queenbeetColour","queenbeetFrag","duketaterColour","duketaterFrag","missingPlantDrops","GardenSection","possiblePresMax","neededCook","cookiesNextFrag","cookiesNextSmall","heavenlyChips","HCTarget","CookiesTillTarget","resetBonus","newHeavenlyChips","curCPS","ResetCPS","ResetBonus","resetFrag","resetSmall","currentPrestige","willHave","willGet","delta7","next7Reset","next7Total","frag7","delta777","next777Reset","next777Total","frag777","delta777777","next777777Reset","next777777Total","frag777777","PrestigeSection","popAllFrag","popAllA","popFattestFrag","popFattestA","specDisp","missingHalloweenCookies","missingChristmasCookies","missingValentineCookies","missingNormalEggs","eggDrops","missingRareEggs","rareEggDrops","centEgg","failRateHalloween","dropRateMult","obtainedCookiesChance","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","FavStar","ele","ToggleFavouriteSetting","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","content","promptWrapL","promptL","PlaySound","promptAnchorL","darkenL","focus","promptOn","UpdatePrompt","CookieMonsterPrompt","outerHTML","ClosePrompt","innerSpan","FixMouseY","timerBarHeight","mouseY","ReplaceNative","drawMod","from","update","updateMod","warnOffset","tta","tt","UpdateTooltipLocation","UpdateWrinklers","UpdateSpecial","ClickCookie","mouseDown","setOnCrate","ClickProduct","DescribeDragonAura","aura","bonusCPS","priceOfChange","CalculateChangeAura","timeToRecover","bonusCPSPercentage","minHeight","div2","AddAuraInfo","ToggleSpecialMenu","on","shouldHide","AddDragonLevelUpTooltip","index","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","backgroundColour","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateFlashScreen","CreateSectionHideButtons","getElementsByTagName","CreateFavicon","CreateSimpleTooltip","append","CreateWrinklerButtons","canLumps","child","coords","ReplaceTooltipPantheon","popups","Popup","Notify","Win","CM","proceed","confirm","registerHook","load","registerMod"],"mappings":"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C,KAAKC,YACpC1U,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,QAQlD,MAAMyI,EAAS,CAAC,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGhDC,EAAa,CACjB,GACA,GACA,IACA,IACA,KACA,QACA,QACA,OACA,OACA,MACA,MACA,MACA,QACA,SACA,SACA,cACA,UACA,SACA,YACA,UACA,WACA,SACA,WACA,YACA,YACA,kBAIIC,EAAwB,CAC5B,GACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,OAMF,IAAIC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAOAC,EA1BAC,EAAqB,GAErBC,EAAwB,GACxBC,EAAuB,GAOvBC,EAAkB,GAqBtB,MAAMC,EAAgB,SAChBC,EAAgB,SAMhBC,EAAa,OACbC,EAAc,QACdC,EAAe,SACfC,EAAe,SACfC,EAAY,MACZC,EAAe,SACfC,EAAa,OACbC,EAAa,OACbC,EAAc,QACdC,EAAkB,CACtBH,EACAN,EACAC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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://cookiemonster-mod/CookieMonster.js"],"names":["__webpack_modules__","877","module","global","factory","exports","document","win","Error","window","this","BoxShadow","funcName","elm","jsc","jscolor","initialized","instances","readyQueue","register","addEventListener","pub","init","installBySelector","selector","rootNode","node","elms","querySelectorAll","matchClass","RegExp","lookupClass","i","length","dataOpts","m","undefined","type","toLowerCase","isColorAttrSupported","getDataAttr","className","match","targetElm","optsStr","console","warn","docsRef","opts","trim","parseOptionsStr","e","str","JSON","parse","eParse","looseJSON","Function","eEval","getInstances","inst","targetElement","push","createEl","tagName","el","createElement","setData","nodeOrSelector","sel","querySelector","isNode","val","Node","nodeType","nodeName","removeChildren","firstChild","removeChild","isTextInput","isButton","n","indexOf","isButtonEmpty","value","textContent","isPassiveEventSupported","supported","Object","defineProperty","get","removeEventListener","setAttribute","dataProp","obj","arguments","data","hasOwnProperty","prop","map","removeData","getData","setDefault","name","attrName","getAttribute","setDataAttr","_attachedGroupEvents","attachGroupEvent","groupName","evnt","func","detachGroupEvents","evt","preventDefault","returnValue","captureTarget","target","setCapture","_capturedTarget","releaseTarget","releaseCapture","triggerEvent","eventName","bubbles","cancelable","ev","Event","createEvent","initEvent","dispatchEvent","triggerInputEvent","eventKey","keys","9","13","27","code","keyCode","strList","replace","split","hasClass","classList","contains","addClass","classNames","add","removeClass","repl","remove","getCompStyle","getComputedStyle","currentStyle","setStyle","styles","important","reversible","priority","origStyle","setVal","style","setProperty","hexColor","r","g","b","Math","round","toString","substr","toUpperCase","hexaColor","a","rgbColor","rgbaColor","linearGradient","stdName","prefixes","helper","tryFunc","tryVal","background","getFuncName","Array","prototype","join","call","setBorderRadius","border-radius","setBoxShadow","box-shadow","getElementPos","relativeToViewport","x","y","rect","getBoundingClientRect","left","top","viewPos","getViewPos","getElementSize","offsetWidth","offsetHeight","getAbsPointerPos","changedTouches","clientX","clientY","getRelPointerPos","targetRect","srcElement","doc","documentElement","pageXOffset","scrollLeft","clientLeft","pageYOffset","scrollTop","clientTop","getViewSize","innerWidth","clientWidth","innerHeight","clientHeight","RGB_HSV","min","v","max","h","HSV_RGB","s","u","floor","parseColorString","ret","rgba","format","parseInt","charAt","mR","mG","mB","mA","par","re","parseFloat","parsePaletteValue","mixed","vals","isArray","colors","color","containsTranparentColor","isAlphaFormat","scaleCanvasForHighDPR","canvas","dpr","devicePixelRatio","width","height","getContext","scale","genColorPreviewCanvas","separatorPos","specWidth","scaleForHighDPR","sepW","previewSeparator","sqSize","chessboardSize","sqColor1","chessboardColor1","sqColor2","chessboardColor2","cWidth","cHeight","ctx","fillStyle","fillRect","start","clearRect","lineWidth","beginPath","strokeStyle","moveTo","lineTo","stroke","genColorPreviewGradient","position","params","right","apply","redrawPosition","picker","owner","tp","vp","thisObj","fixed","c","ts","vs","pd","getPickerDims","ps","borderW","borderH","l","smartPosition","pp","positionValue","contractShadow","_drawPosition","vShadow","shadowBlur","wrap","boxS","shadow","shadowColor","w","controlBorderWidth","sliderSpace","getControlPadding","sliderSize","getSliderChannel","hasAlphaChannel","pal","getPaletteDims","padding","closeButton","buttonHeight","pW","pH","contentW","contentH","paddedW","paddedH","borderWidth","palette","cols","rows","cellW","cellH","sampleCount","_palette","paletteCols","ceil","paletteSpacing","paletteHeight","pointerBorderWidth","pointerThickness","getPadYChannel","mode","triggerCallback","callback","error","triggerGlobal","eventNames","trigger","_pointerMoveEvent","mouse","touch","_pointerEndEvent","_pointerOrigin","onDocumentKeyUp","tryHide","onWindowResize","onWindowScroll","onParentScroll","onDocumentMouseDown","showOnClick","disabled","show","onControlPointerStart","onPickerTouchStart","controlName","pointerType","registerDragEvents","offset","onDocumentPointerMove","onDocumentPointerEnd","parent","frameElement","ofs","abs","rel","channels","fromHSVA","setPad","setSld","setASld","onPaletteSampleClick","currentTarget","_setFormat","getFormat","paletteSetsAlpha","_paletteHasTransparency","fromRGBA","hideOnPaletteClick","hide","ofsX","ofsY","pointerAbs","xVal","yVal","fmt","createPadCanvas","draw","hGrad","createLinearGradient","addColorStop","vGrad","createSliderGradient","color1","color2","grad","createASliderGradient","hShadow","blur","spread","inset","flags","leaveValue","leaveAlpha","leavePreview","enumOpts","previewPosition","alphaChannel","deprecatedOpts","styleElement","onFineChange","overwriteImportant","closable","insetWidth","insetColor","refine","THIS","setOption","option","oldOpt","newOpt","setter","getOption","getter","drawPicker","_processParentElementsInDOM","box","boxB","pad","padB","padM","padCanvas","cross","crossBY","crossBX","crossLY","crossLX","sld","sldB","sldM","sldGrad","sldPtrS","sldPtrIB","sldPtrMB","sldPtrOB","asld","asldB","asldM","asldGrad","asldPtrS","asldPtrIB","asldPtrMB","asldPtrOB","btn","btnT","appendChild","passive","insetColors","outsetColor","p","displaySlider","displayAlphaSlider","pickerDims","crossOuterSize","crossSize","controlPadding","borderRadius","PI","clear","zIndex","border","borderColor","backgroundColor","opacity","controlBorderColor","cursor","instance","control","pointerBorderColor","pointerColor","overflow","display","sliderInnerSpace","innerHTML","chessboard","si","sampleColor","sampleCssColor","sc","sw","backgroundImage","toDataURL","backgroundRepeat","backgroundPosition","bottom","maxWidth","whiteSpace","buttonColor","font","textAlign","onmousedown","lineHeight","createTextNode","closeText","redrawPad","redrawSld","redrawASld","activeClassName","container","body","parentNode","yChannel","rgb1","rgb2","rgb","toHEXString","sldChannel","isPickerOwner","alpha","onChange","onInput","valueElement","alphaElement","previewElement","previewSize","previewPadding","required","hash","uppercase","forceStyle","hideOnLeave","minS","maxS","minV","maxV","minA","maxA","redraw","exposeColor","success","opt","channel","res","evs","callbackProp","isNaN","hsv","fromHSV","fromRGB","fromString","setPreviewElementBg","setValueElementValue","toHEXAString","toRGBString","toRGBAString","toGrayscale","toCanvas","toBackground","isLight","_currentFormat","processValueInput","processAlphaInput","colorStr","alphaVal","setAlphaElementValue","backgrounds","image","size","repeat","origin","preview","bg","sty","background-image","background-position","background-size","background-repeat","background-origin","padding-left","padding-right","_parentElementsProcessed","compStyle","set__palette","options","presetsArr","preset","slice","pres","presets","nonProperties","test","min-width","valueElementOrigEvents","oninput","oldVal","initValue","initAlpha","install","shift","ready","triggerNow","installByClassName","JSColor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__esModule","d","definition","key","o","enumerable","CMOptions","ToggleWrinklerButtons","WrinklerButtons","Game","elderWrath","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColourTextPre","ColourBackPre","ColourBlue","ColourGreen","ColourYellow","ColourOrange","ColourRed","ColourPurple","ColourGray","ColourPink","ColourBrown","ColoursOrdering","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColours","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","FavouriteSettings","BeautifyFormatting_Beautify","num","floats","forced","decimals","ScaleDecimals","Infinity","Scale","Beautify","Number","isFinite","answer","ScaleCutoff","ScaleSeparator","toLocaleString","toExponential","exponential","AmountOfTenPowerThree","toFixed","log","FormatTime","time","longFormat","formattedTime","TimeFormat","GetTimeColour","text","CookiesDiff","WrinkDiff","WrinkFattestDiff","ChoEggDiff","ClicksDiff","HeavenlyChipsDiff","CacheLastCPSCheck","CacheLastCookies","CacheLastWrinkCookies","CacheLastWrinkFattestCookies","CacheLastClicks","CacheAverageGainBank","CacheAverageGainWrink","CacheAverageGainWrinkFattest","CacheAverageGainChoEgg","CacheAverageCPS","CacheLastHeavenlyCheck","CacheLastHeavenlyChips","CacheDoRemakeBuildPrices","CacheHadBuildAura","SimBuildingsOwned","SimUpgradesOwned","SimPledges","SimAchievementsOwned","SimHeavenlyPower","SimPrestige","SimDragonAura","SimDragonAura2","SimGod1","SimGod2","SimGod3","SimDoSims","SimEffs","SimCookiesPs","SimCookiesPsRaw","CacheDragonAura","CacheDragonAura2","CacheLastDragonLevel","CacheCostDragonUpgrade","CacheLucky","CacheLuckyReward","CacheLuckyWrathReward","CacheLuckyFrenzy","CacheLuckyRewardFrenzy","CacheLuckyWrathRewardFrenzy","CacheConjure","CacheConjureReward","CacheEdifice","CacheEdificeBuilding","CacheNoGoldSwitchCookiesPS","CacheDragonsFortuneMultAdjustment","CacheGoldenCookiesMult","CacheWrathCookiesMult","CacheHCPerSecond","CacheCentEgg","CacheSeaSpec","CacheLastChoEgg","CacheObjects1","CacheObjects10","CacheObjects100","CacheWrinklersTotal","CacheWrinklersNormal","CacheWrinklersFattest","CacheCurrWrinklerCPSMult","CacheCurrWrinklerCount","CacheUpgrades","CacheAverageClicks","CacheMissingUpgrades","CacheMissingUpgradesPrestige","CacheMissingUpgradesCookies","CacheChainRequired","CacheChainRequiredNext","CacheChainMaxReward","CacheChainWrathRequired","CacheChainWrathRequiredNext","CacheChainWrathMaxReward","CacheChainFrenzyRequired","CacheChainFrenzyRequiredNext","CacheChainFrenzyMaxReward","CacheChainFrenzyWrathRequired","CacheChainFrenzyWrathRequiredNext","CacheChainFrenzyWrathMaxReward","CacheRealCookiesEarned","CacheAvgCPSWithChoEgg","CacheSpawnedGoldenShimmer","CacheSeasonPopShimmer","CacheTimeTillNextPrestige","CacheMinPP","CachePPArray","CacheGoldenShimmersByID","CacheSellForChoEgg","CacheGods","0","1","2","3","4","5","6","7","8","10","SimObjects","SimUpgrades","SimAchievements","SimAuraMult","what","dragonAuras","SimGetSellMultiplier","giveBack","SimEff","def","SimHas","it","ascensionMode","pool","tier","bought","SimHasGod","hasGod","Temple","minigame","Objects","god","gods","id","SimModifyBuildingPrice","building","price","ModifiedPrice","hasBuff","fortune","minigameLoaded","godLvl","BuildingSell","build","basePrice","free","amount","noSim","noSimRes","toChange","startingAmount","moni","buyBulk","priceIncrease","modifyBuildingPrice","getSellMultiplier","UpdateBuildings","buyMode","BuildColour","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColour","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColour","j","childNodes","div","SortUpgrades","nameChecker","arr2","upgrade","findIndex","order","GetCPS","CPSMode","CalcWrink","cookiesPs","cpsSucked","wrinklers","GetWrinkConfigBank","CreateTimer","bars","timerBar","margin","fontSize","marginRight","verticalAlign","colorBar","borderTopRightRadius","borderBottomRightRadius","timer","marginLeft","CreateBotBarBuildingColumn","buildingName","bonus","header","substring","lastChild","paddingLeft","UpdateBotBar","BotBar","count","PPString","PPDisplayTime","timeColour","bulkPrice","cookies","UpdateBackground","Background","LeftBackground","UpdateBotTimerBarPosition","TimerBar","TimerBarPos","ToggleTimerBar","CacheDragonAuras","dragonAura","dragonAura2","InitAchievement","achievementName","Achievements","you","SimGetTieredCpsMult","mult","tieredUpgrades","Tiers","special","synergies","syn","buildingTie1","buildingTie2","grandma","Grandma","misfortune","vanilla","InitialBuildingData","cps","magicCpS","ComputeCps","GrandmaSynergies","UpgradesByPool","kitten","Portal","baseCps","baseCPS","InitUpgrade","upgradeName","Upgrades","power","level","pow","CopyData","UpgradesOwned","pledges","AchievementsOwned","heavenlyPower","prestige","totalCookies","slot","won","TooltipCreateHeader","fontWeight","TooltipCreateCalculationSection","tooltip","income","marginBottom","click","production","CalculateGrimoireRefillTime","currentMagic","maxMagic","targetMagic","magic","fps","GetCPSBuffMult","buffs","multCpS","ToggleToolWarnPos","ToolWarnPos","UpdateTooltips","tooltipBox","paddingBottom","TooltipCreateTooltipBox","TooltipBuildUpgrade","increase","productionAchievs","HasAchiev","achiev","nextProductionAchiev","Building","getPrice","bonusMouse","previousSibling","chocolate","Upgrade","TooltipLump","lumpType","lumpColour","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColour","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","plantName","GardenPlots","totalGain","mortal","tile","immortal","matureBase","HarvestAll","WrinklerReward","WrinklerButton","TooltipPantheon","GodID","cps1","cps2","cps3","PantheonGods","getElementById","TooltipWarn","create","boxId","labelTextFront","labelTextBack","deficitId","transition","labelDiv","labelSpan","deficitDiv","deficitSpan","ToolWarnUser","TooltipCreateWarningSection","bonusIncomeUsed","ToolWarnBon","limitLucky","bonusNoFren","ToolWarnLucky","ToolWarnLuckyFrenzy","limitLuckyFrenzy","ToolWarnConjure","limitConjure","ToolWarnConjureFrenzy","limitConjureFrenzy","ToolWarnEdifice","children","Warnings","Draw","prefs","autosave","drawT","onMenu","Stats","innerText","sayTime","T","maxWidthTwoBar","maxWidthOneBar","numberOfTimers","shimmerTypes","golden","spawned","Has","minTime","maxTime","TimerBarOverlay","season","reindeer","BuffTimerBars","classColour","UpdateTimerBar","TooltipWrink","showingTooltip","phase","selected","placeholder","wrinkler","minWidth","escape","CheckWrinklerTooltip","sucked","toSuck","UpdateWrinklerTooltip","UpStats","UpdateMenu","monospace","CMAvgQueue","[object Object]","maxLength","queue","newValue","timePeriod","CacheAvgCPS","currDate","Date","now","choEggTotal","cookiesEarned","timeDiff","bankDiffAvg","wrinkDiffAvg","wrinkFattestDiffAvg","choEggDiffAvg","clicksDiffAvg","cookieClicks","addLatest","cpsLength","AvgCPSHist","calcAverage","choEgg","HasUnlocked","AvgClicksHist","ColourOfPP","PPSecondsLowerLimit","PPOnlyConsiderBuyable","CacheColour","PPRigidelMode","getSumPrice","PPExcludeTop","CachePP","PP_CachePP","indexOfMin","CacheBuildingsPP","BuildingGetPrice","SimWin","CalculateGains","effs","myEffs","ii","heavenlyMult","SimGetHeavenlyMultiplier","heralds","cookieUpgrades","buildMult","sin","santaLevel","milkProgress","milkMult","catMult","storedCps","eggMult","day","startDate","lumps","rawCookiesPs","CpsAchievements","threshold","auraMult","bakeryName","goldenSwitchMult","upgrades","goldenCookieUpgrades","veilMult","runModHookOnValue","Fortunes","HalloCookies","ChristCookies","ValCookies","PlantDrops","SimHasAchiev","CheckOtherAchiev","grandmas","buildingsOwned","mathematician","base10","minAmount","ObjectsById","Cursor","hasAllHalloCook","hasAllChristCook","list","fortunes","CacheBuildingIncome","result","tieredAchievs","achievUnlock","lastAchievementsOwned","BuyBuildingsBonusIncome","CacheBuildingsPrices","CacheIncome","bonusIncome","unlocked","CountsAsUpgradeOwned","diffMouseCPS","multClick","out","MouseCps","computedMouseCps","BuyUpgradesBonusIncome","MaxChainCookieReward","digit","maxPayout","totalFromChain","nextMoni","nextRequired","chain","LN10","CacheChain","cpsBuffMult","CacheHeavenlyChipsPS","chipsOwned","HowMuchPrestige","cookiesReset","ascendNowToGet","heavenlyChipsDiffAvg","CacheAllMissingUpgrades","classes","noFrame","crates","icon","iconFunction","getDynamicTooltip","crateMissing","CacheSeasonSpec","CacheStatsCookies","CacheGoldenAndWrathCookiesMults","goldenMult","wrathMult","eff","CacheWrinklers","InitCache","SettingsDefault","DetailedTime","UpgradeBarFixedPos","DragonAuraInfo","GrimoireBar","GCTimer","Favicon","HideSectionsButtons","TooltipAmor","TooltipAscendButton","MissingUpgrades","HeavenlyChipsTarget","ShowMissedGC","GeneralSound","GCNotification","GCFlash","ColourGCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","ColourFortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","ColourSeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","ColourGardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","ColourMagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","ColourWrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","ColourWrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","BulkBuyBlock","Header","Favourite","Calculation","Notation","Colours","BarsDisplay","Tooltip","Statistics","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingColours","SettingVolume","SettingInputNumber","SettingsData","insertBefore","UpBarColor","save","stringify","favouriteSettings","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","Sound_PlaySound","url","sndConfig","volConfig","sound","Audio","volume","play","CreateNotification","notifyConfig","title","message","visibilityState","badge","CMLoop","OnAscend","AscendTimer","mods","CachePantheonGods","sellTotal","Bank","marketGoods","goods","goodsVal","marketGood","stock","cookiesPsRawHighest","buildingsToSacrifice","highestBuilding","SellBuildingsForChoEgg","CacheSellAllForChoEgg","hasBuildAura","godMult","CacheCurrWrinklerCPS","cookiesToNext","HowManyCookiesReset","LoopCache","shimmers","spawnLead","cookie","fontFamily","onclick","pop","onmouseover","filter","webkitFilter","onmouseout","CreateGCTimer","transform","life","TickerEffect","nextStep","CheckMagicMeter","CurrentWrinklers","getWrinklersMax","CheckWrinklerCount","UpdateColours","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","Colors","mod","PopAllNormalWrinklers","hp","CreateTooltip","buildPrice","amortizeAmount","storedTotalCps","globalCpsMult","crateTooltip","lumpTooltip","spellTooltip","tileTooltip","toolTooltip","godTooltip","slotTooltip","area","ReplaceTooltipGrimoire","dynamic","wobble","ReplaceNativeGrimoireDraw","magicBarTextL","ReplaceNativeGrimoire","launch","ReplaceNativeGrimoireLaunch","jscolor_default","ToggleSetting_ConfigPrefix","ToggleConfigVolume","ToggleHeader","StatsHeader","span","StatsListing","listingName","StatsMissDisp","theMissDisp","frag","createDocumentFragment","missing","AddMenuStats","stats","goldCookTooltip","section","luckyColour","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColourFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColour","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColour","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColourFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColourFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColour","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColour","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColour","bakeberryFrag","chocorootColour","chocorootFrag","queenbeetColour","queenbeetFrag","duketaterColour","duketaterFrag","missingPlantDrops","GardenSection","possiblePresMax","neededCook","cookiesNextFrag","cookiesNextSmall","heavenlyChips","HCTarget","CookiesTillTarget","resetBonus","newHeavenlyChips","curCPS","ResetCPS","ResetBonus","resetFrag","resetSmall","currentPrestige","willHave","willGet","delta7","next7Reset","next7Total","frag7","delta777","next777Reset","next777Total","frag777","delta777777","next777777Reset","next777777Total","frag777777","PrestigeSection","popAllFrag","popAllA","popFattestFrag","popFattestA","specDisp","missingHalloweenCookies","missingChristmasCookies","missingValentineCookies","missingNormalEggs","eggDrops","missingRareEggs","rareEggDrops","centEgg","failRateHalloween","dropRateMult","obtainedCookiesChance","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","FavStar","ele","ToggleFavouriteSetting","FavouriteSettingPlaceholder","CreateFavouriteStar","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","content","promptWrapL","promptL","PlaySound","promptAnchorL","darkenL","focus","promptOn","UpdatePrompt","CookieMonsterPrompt","outerHTML","ClosePrompt","innerSpan","FixMouseY","timerBarHeight","mouseY","ReplaceNative","drawMod","from","update","updateMod","warnOffset","tta","tt","UpdateTooltipLocation","UpdateWrinklers","UpdateSpecial","ClickCookie","mouseDown","setOnCrate","ClickProduct","DescribeDragonAura","aura","bonusCPS","priceOfChange","CalculateChangeAura","timeToRecover","bonusCPSPercentage","minHeight","div2","AddAuraInfo","ToggleSpecialMenu","on","shouldHide","AddDragonLevelUpTooltip","index","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","backgroundColour","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateFlashScreen","CreateSectionHideButtons","getElementsByTagName","CreateFavicon","CreateSimpleTooltip","append","CreateWrinklerButtons","canLumps","child","coords","ReplaceTooltipPantheon","popups","Popup","Notify","Win","CM","proceed","confirm","registerHook","load","registerMod"],"mappings":";AAAS,MACC,IAAIA,EAAsB,CAE9BC,IACA,SAAUC,IAchB,SAAWC,EAAQC,GAElB,aAEuC,iBAAnBF,EAAOG,QAc3BD,EAAQD,GAZPD,EAAOG,QAAUF,EAAOG,SACvBF,EAASD,GACT,SAAUI,GACT,IAAKA,EAAID,SACR,MAAM,IAAIE,MAAM,wCAEjB,OAAOJ,EAAQG,IAZnB,CAoBqB,oBAAXE,OAAyBA,OAASC,MAAM,SAAUD,GAK5D,aAGA,IAwgDME,EAt7BAC,EAzXAC,EAvNFC,EAFAC,IAEAD,EAAM,CAGTE,aAAc,EAEdC,UAAY,GAEZC,WAAa,GAGbC,SAAW,gBACY,IAAXV,GAA0BA,EAAOH,UAC3CG,EAAOH,SAASc,iBAAiB,mBAAoBN,EAAIO,IAAIC,MAAM,IAKrEC,kBAAoB,SAAUC,EAAUC,GAEvC,KADAA,EAAWA,EAAWX,EAAIY,KAAKD,GAAYhB,EAAOH,UAEjD,MAAM,IAAIE,MAAM,qBAQjB,IALA,IAAImB,EAAOF,EAASG,iBAAiBJ,GAGjCK,EAAa,IAAIC,OAAO,WAAahB,EAAIO,IAAIU,YAAc,6BAA8B,KAEpFC,EAAI,EAAGA,EAAIL,EAAKM,OAAQD,GAAK,EAAG,CAUxC,IAAIE,EAAUC,EARd,KAAIR,EAAKK,GAAGjB,SAAWY,EAAKK,GAAGjB,mBAAmBD,EAAIO,YAIjCe,IAAjBT,EAAKK,GAAGK,MAAoD,SAA9BV,EAAKK,GAAGK,KAAKC,gBAA4BxB,EAAIyB,wBAOzB,QAApDL,EAAWpB,EAAI0B,YAAYb,EAAKK,GAAI,aACpCL,EAAKK,GAAGS,YAAcN,EAAIR,EAAKK,GAAGS,UAAUC,MAAMb,KAClD,CACD,IAAIc,EAAYhB,EAAKK,GAEjBY,EAAU,GACG,OAAbV,EACHU,EAAUV,EAEAC,IACVU,QAAQC,KAAK,sFAAwFhC,EAAIiC,SACrGZ,EAAE,KACLS,EAAUT,EAAE,KAId,IAAIa,EAAO,KACX,GAAIJ,EAAQK,OACX,IACCD,EAAOlC,EAAIoC,gBAAgBN,GAC1B,MAAOO,GACRN,QAAQC,KAAKK,EAAI,KAAOP,GAI1B,IACC,IAAI9B,EAAIO,IAAIsB,EAAWK,GACtB,MAAOG,GACRN,QAAQC,KAAKK,OAOjBD,gBAAkB,SAAUE,GAC3B,IAAIJ,EAAO,KAEX,IACCA,EAAOK,KAAKC,MAAMF,GAEjB,MAAOG,GACR,IAAKzC,EAAIO,IAAImC,UACZ,MAAM,IAAIhD,MAAM,4CAA8C+C,GAG9D,IACCP,EAAO,IAAKS,SAAU,eAAiBL,EAAM,kDAAtC,GACN,MAAOM,GACR,MAAM,IAAIlD,MAAM,uCAAyCkD,IAI5D,OAAOV,GAIRW,aAAe,WAEd,IADA,IAAIC,EAAO,GACF5B,EAAI,EAAGA,EAAIlB,EAAIG,UAAUgB,OAAQD,GAAK,EAE1ClB,EAAIG,UAAUe,IAAMlB,EAAIG,UAAUe,GAAG6B,eACxCD,EAAKE,KAAKhD,EAAIG,UAAUe,IAG1B,OAAO4B,GAIRG,SAAW,SAAUC,GACpB,IAAIC,EAAKxD,EAAOH,SAAS4D,cAAcF,GAEvC,OADAlD,EAAIqD,QAAQF,EAAI,OAAO,GAChBA,GAIRvC,KAAO,SAAU0C,GAChB,IAAKA,EACJ,OAAO,KAGR,GAA8B,iBAAnBA,EAA6B,CAEvC,IAAIC,EAAMD,EACNH,EAAK,KACT,IACCA,EAAKxD,EAAOH,SAASgE,cAAcD,GAClC,MAAOlB,GAER,OADAN,QAAQC,KAAKK,GACN,KAKR,OAHKc,GACJpB,QAAQC,KAAK,sCAAuCuB,GAE9CJ,EAGR,OAAInD,EAAIyD,OAAOH,GAEPA,GAGRvB,QAAQC,KAAK,qCAAsCsB,EAAgBA,GAC5D,OAKRG,OAAS,SAAUC,GAClB,MAAoB,iBAATC,KACHD,aAAeC,KAEhBD,GAAsB,iBAARA,GAA4C,iBAAjBA,EAAIE,UAAiD,iBAAjBF,EAAIG,UAIzFA,SAAW,SAAUjD,GACpB,SAAIA,IAAQA,EAAKiD,WACTjD,EAAKiD,SAASrC,eAMvBsC,eAAiB,SAAUlD,GAC1B,KAAOA,EAAKmD,YACXnD,EAAKoD,YAAYpD,EAAKmD,aAKxBE,YAAc,SAAUd,GACvB,OAAOA,GAA2B,UAArBnD,EAAI6D,SAASV,IAA6C,SAA1BA,EAAG5B,KAAKC,eAItD0C,SAAW,SAAUf,GACpB,IAAKA,EACJ,OAAO,EAER,IAAIgB,EAAInE,EAAI6D,SAASV,GACrB,MACQ,WAANgB,GACM,UAANA,GAAiB,CAAC,SAAU,SAAU,SAASC,QAAQjB,EAAG5B,KAAKC,gBAAkB,GAKpF6C,cAAgB,SAAUlB,GACzB,OAAQnD,EAAI6D,SAASV,IACpB,IAAK,QAAS,OAASA,EAAGmB,OAA6B,KAApBnB,EAAGmB,MAAMnC,OAC5C,IAAK,SAAU,MAAkC,KAA1BgB,EAAGoB,YAAYpC,OAEvC,OAAO,MAKRqC,wBAA0B,WACzB,IAAIC,GAAY,EAEhB,IACC,IAAIvC,EAAOwC,OAAOC,eAAe,GAAI,UAAW,CAC/CC,IAAK,WAAcH,GAAY,KAEhC9E,EAAOW,iBAAiB,cAAe,KAAM4B,GAC7CvC,EAAOkF,oBAAoB,cAAe,KAAM3C,GAC/C,MAAOG,IAET,OAAOoC,EAXkB,GAe1BhD,sBACK1B,EAAMJ,EAAOH,SAAS4D,cAAc,YACpCrD,EAAI+E,eACP/E,EAAI+E,aAAa,OAAQ,SACK,SAA1B/E,EAAIwB,KAAKC,iBAQfuD,SAAW,gBAOX1B,QAAU,WACT,IAAI2B,EAAMC,UAAU,GAEpB,GAAyB,IAArBA,UAAU9D,OAAc,CAE3B,IAAI+D,EAAOF,EAAIG,eAAenF,EAAI+E,UAAYC,EAAIhF,EAAI+E,UAAaC,EAAIhF,EAAI+E,UAAY,GAEnFT,EAAQW,UAAU,GAGtB,OADAC,EAHIE,EAAOH,UAAU,IAGRX,GACN,EAED,GAAyB,IAArBW,UAAU9D,QAAwC,iBAAjB8D,UAAU,GAAiB,CAElEC,EAAOF,EAAIG,eAAenF,EAAI+E,UAAYC,EAAIhF,EAAI+E,UAAaC,EAAIhF,EAAI+E,UAAY,GAAvF,IACIM,EAAMJ,UAAU,GAEpB,IAAK,IAAIG,KAAQC,EACZA,EAAIF,eAAeC,KACtBF,EAAKE,GAAQC,EAAID,IAGnB,OAAO,EAGR,MAAM,IAAI1F,MAAM,sBAOjB4F,WAAa,WACZ,IAAIN,EAAMC,UAAU,GACpB,IAAKD,EAAIG,eAAenF,EAAI+E,UAC3B,OAAO,EAER,IAAK,IAAI7D,EAAI,EAAGA,EAAI+D,UAAU9D,OAAQD,GAAK,EAAG,CAC7C,IAAIkE,EAAOH,UAAU/D,UACd8D,EAAIhF,EAAI+E,UAAUK,GAE1B,OAAO,GAIRG,QAAU,SAAUP,EAAKI,EAAMI,GAC9B,IAAKR,EAAIG,eAAenF,EAAI+E,UAAW,CAEtC,QAAmBzD,IAAfkE,EAGH,OAFAR,EAAIhF,EAAI+E,UAAY,GAKtB,IAAIG,EAAOF,EAAIhF,EAAI+E,UAKnB,OAHKG,EAAKC,eAAeC,SAAwB9D,IAAfkE,IACjCN,EAAKE,GAAQI,GAEPN,EAAKE,IAIb1D,YAAc,SAAUyB,EAAIsC,GAC3B,IAAIC,EAAW,QAAUD,EAEzB,OADgBtC,EAAGwC,aAAaD,IAKjCE,YAAc,SAAUzC,EAAIsC,EAAMnB,GACjC,IAAIoB,EAAW,QAAUD,EACzBtC,EAAG2B,aAAaY,EAAUpB,IAI3BuB,qBAAuB,GAGvBC,iBAAmB,SAAUC,EAAW5C,EAAI6C,EAAMC,GAC5CjG,EAAI6F,qBAAqBV,eAAeY,KAC5C/F,EAAI6F,qBAAqBE,GAAa,IAEvC/F,EAAI6F,qBAAqBE,GAAW/C,KAAK,CAACG,EAAI6C,EAAMC,IACpD9C,EAAG7C,iBAAiB0F,EAAMC,GAAM,IAIjCC,kBAAoB,SAAUH,GAC7B,GAAI/F,EAAI6F,qBAAqBV,eAAeY,GAAY,CACvD,IAAK,IAAI7E,EAAI,EAAGA,EAAIlB,EAAI6F,qBAAqBE,GAAW5E,OAAQD,GAAK,EAAG,CACvE,IAAIiF,EAAMnG,EAAI6F,qBAAqBE,GAAW7E,GAC9CiF,EAAI,GAAGtB,oBAAoBsB,EAAI,GAAIA,EAAI,IAAI,UAErCnG,EAAI6F,qBAAqBE,KAKlCK,eAAiB,SAAU/D,GACtBA,EAAE+D,gBAAkB/D,EAAE+D,iBAC1B/D,EAAEgE,aAAc,GAIjBC,cAAgB,SAAUC,GAErBA,EAAOC,aACVxG,EAAIyG,gBAAkBF,EACtBvG,EAAIyG,gBAAgBD,eAKtBE,cAAgB,WAEX1G,EAAIyG,kBACPzG,EAAIyG,gBAAgBE,iBACpB3G,EAAIyG,gBAAkB,OAKxBG,aAAe,SAAUzD,EAAI0D,EAAWC,EAASC,GAChD,GAAK5D,EAAL,CAIA,IAAI6D,EAAK,KAaT,MAXqB,mBAAVC,MACVD,EAAK,IAAIC,MAAMJ,EAAW,CACzBC,QAASA,EACTC,WAAYA,KAIbC,EAAKrH,EAAOH,SAAS0H,YAAY,UAC9BC,UAAUN,EAAWC,EAASC,KAG7BC,IAKLhH,EAAIqD,QAAQ2D,EAAI,YAAY,GAE5B7D,EAAGiE,cAAcJ,IACV,KAIRK,kBAAoB,SAAUlE,EAAI0D,EAAWC,EAASC,GAChD5D,GAGDnD,EAAIiE,YAAYd,IACnBnD,EAAI4G,aAAazD,EAAI0D,EAAWC,EAASC,IAK3CO,SAAW,SAAUN,GACpB,IAAIO,EAAO,CACVC,EAAG,MACHC,GAAI,QACJC,GAAI,UAEL,MAAuB,iBAAZV,EAAGW,KACNX,EAAGW,UACerG,IAAf0F,EAAGY,SAAyBL,EAAKpC,eAAe6B,EAAGY,SACtDL,EAAKP,EAAGY,SAET,MAIRC,QAAU,SAAUvF,GACnB,OAAKA,EAGEA,EAAIwF,QAAQ,aAAc,IAAIC,MAAM,OAFnC,IAOTC,SAAW,SAAUjI,EAAK4B,GACzB,QAAKA,SAGiBL,IAAlBvB,EAAIkI,UACAlI,EAAIkI,UAAUC,SAASvG,IAGvB,IAAM,IAAM5B,EAAI4B,UAAUmG,QAAQ,OAAQ,KAAO,KAAK1D,QAAQ,IAAMzC,EAAY,OAKzFwG,SAAW,SAAUpI,EAAK4B,GACzB,IAAIyG,EAAapI,EAAI6H,QAAQlG,GAE7B,QAAsBL,IAAlBvB,EAAIkI,UAOR,IAAS/G,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EACtClB,EAAIgI,SAASjI,EAAKqI,EAAWlH,MACjCnB,EAAI4B,YAAc5B,EAAI4B,UAAY,IAAM,IAAMyG,EAAWlH,SAR1D,IAAK,IAAIA,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EAC3CnB,EAAIkI,UAAUI,IAAID,EAAWlH,KAchCoH,YAAc,SAAUvI,EAAK4B,GAC5B,IAAIyG,EAAapI,EAAI6H,QAAQlG,GAE7B,QAAsBL,IAAlBvB,EAAIkI,UAOR,IAAS/G,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EAAG,CAC9C,IAAIqH,EAAO,IAAIvH,OACd,QAAUoH,EAAWlH,GAArB,YACSkH,EAAWlH,GADpB,aAESkH,EAAWlH,GAAK,SACzB,KAEDnB,EAAI4B,UAAY5B,EAAI4B,UAAUmG,QAAQS,EAAM,WAb5C,IAAK,IAAIrH,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EAC3CnB,EAAIkI,UAAUO,OAAOJ,EAAWlH,KAiBnCuH,aAAe,SAAU1I,GAKxB,OAJgBJ,EAAO+I,iBAAmB/I,EAAO+I,iBAAiB3I,GAAOA,EAAI4I,eAKrE,IAUTC,SAAW,SAAU7I,EAAK8I,EAAQC,EAAWC,GAE5C,IAAIC,EAAWF,EAAY,YAAc,GACrCG,EAAY,KAEhB,IAAK,IAAI7D,KAAQyD,EAChB,GAAIA,EAAO1D,eAAeC,GAAO,CAChC,IAAI8D,EAAS,KAEQ,OAAjBL,EAAOzD,IAGL6D,IAEJA,EAAYjJ,EAAIuF,QAAQxF,EAAK,cAE1BkJ,GAAaA,EAAU9D,eAAeC,KAEzC8D,EAASD,EAAU7D,MAMhB2D,IACEE,IAEJA,EAAYjJ,EAAIuF,QAAQxF,EAAK,YAAa,KAEtCkJ,EAAU9D,eAAeC,KAE7B6D,EAAU7D,GAAQrF,EAAIoJ,MAAM/D,KAG9B8D,EAASL,EAAOzD,IAGF,OAAX8D,GACHnJ,EAAIoJ,MAAMC,YAAYhE,EAAM8D,EAAQF,KAOxCK,SAAW,SAAUC,EAAGC,EAAGC,GAC1B,MAAO,MACL,IAAMC,KAAKC,MAAMJ,GAAGK,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMH,GAAGI,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMF,GAAGG,SAAS,KAAKC,QAAQ,IAC1CC,eAIHC,UAAY,SAAUR,EAAGC,EAAGC,EAAGO,GAC9B,MAAO,MACL,IAAMN,KAAKC,MAAMJ,GAAGK,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMH,GAAGI,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMF,GAAGG,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAU,IAAJK,GAASJ,SAAS,KAAKC,QAAQ,IAChDC,eAIHG,SAAW,SAAUV,EAAGC,EAAGC,GAC1B,MAAO,OACNC,KAAKC,MAAMJ,GAAK,IAChBG,KAAKC,MAAMH,GAAK,IAChBE,KAAKC,MAAMF,GACZ,KAIDS,UAAY,SAAUX,EAAGC,EAAGC,EAAGO,GAC9B,MAAO,QACNN,KAAKC,MAAMJ,GAAK,IAChBG,KAAKC,MAAMH,GAAK,IAChBE,KAAKC,MAAMF,GAAK,IACfC,KAAKC,MAA4C,KAArCK,QAA4B,EAAIA,IAAY,IAC1D,KAIDG,gBAmBKpK,EAjBJ,WAKC,IAJA,IAAIqK,EAAU,kBACVC,EAAW,CAAC,GAAI,WAAY,QAAS,MAAO,QAC5CC,EAAS1K,EAAOH,SAAS4D,cAAc,OAElClC,EAAI,EAAGA,EAAIkJ,EAASjJ,OAAQD,GAAK,EAAG,CAC5C,IAAIoJ,EAAUF,EAASlJ,GAAKiJ,EACxBI,EAASD,EAAU,2CAGvB,GADAD,EAAOlB,MAAMqB,WAAaD,EACtBF,EAAOlB,MAAMqB,WAChB,OAAOF,EAGT,OAAOH,EAGOM,GAER,WACN,OAAO3K,EAAW,IAAM4K,MAAMC,UAAUC,KAAKC,KAAK5F,UAAW,MAAQ,MAMvE6F,gBAAkB,SAAU/K,EAAKuE,GAChCtE,EAAI4I,SAAS7I,EAAK,CAACgL,gBAAkBzG,GAAS,OAI/C0G,aAAe,SAAUjL,EAAKuE,GAC7BtE,EAAI4I,SAAS7I,EAAK,CAACkL,aAAc3G,GAAS,UAI3C4G,cAAgB,SAAU7I,EAAG8I,GAC5B,IAAIC,EAAE,EAAGC,EAAE,EACPC,EAAOjJ,EAAEkJ,wBAGb,GAFAH,EAAIE,EAAKE,KACTH,EAAIC,EAAKG,KACJN,EAAoB,CACxB,IAAIO,EAAU1L,EAAI2L,aAClBP,GAAKM,EAAQ,GACbL,GAAKK,EAAQ,GAEd,MAAO,CAACN,EAAGC,IAIZO,eAAiB,SAAUvJ,GAC1B,MAAO,CAACA,EAAEwJ,YAAaxJ,EAAEyJ,eAK1BC,iBAAmB,SAAU1J,GAC5B,IAAI+I,EAAI,EAAGC,EAAI,EASf,YARgC,IAArBhJ,EAAE2J,gBAAkC3J,EAAE2J,eAAe7K,QAE/DiK,EAAI/I,EAAE2J,eAAe,GAAGC,QACxBZ,EAAIhJ,EAAE2J,eAAe,GAAGE,SACO,iBAAd7J,EAAE4J,UACnBb,EAAI/I,EAAE4J,QACNZ,EAAIhJ,EAAE6J,SAEA,CAAEd,EAAGA,EAAGC,EAAGA,IAKnBc,iBAAmB,SAAU9J,GAC5B,IACI+J,GADS/J,EAAEkE,QAAUlE,EAAEgK,YACHd,wBAIpBU,EAAU,EAAGC,EAAU,EAY3B,YAXgC,IAArB7J,EAAE2J,gBAAkC3J,EAAE2J,eAAe7K,QAE/D8K,EAAU5J,EAAE2J,eAAe,GAAGC,QAC9BC,EAAU7J,EAAE2J,eAAe,GAAGE,SACC,iBAAd7J,EAAE4J,UACnBA,EAAU5J,EAAE4J,QACZC,EAAU7J,EAAE6J,SAKN,CAAEd,EAFLa,EAAUG,EAAWZ,KAEVH,EADXa,EAAUE,EAAWX,MAK1BE,WAAa,WACZ,IAAIW,EAAM3M,EAAOH,SAAS+M,gBAC1B,MAAO,EACL5M,EAAO6M,aAAeF,EAAIG,aAAeH,EAAII,YAAc,IAC3D/M,EAAOgN,aAAeL,EAAIM,YAAcN,EAAIO,WAAa,KAK5DC,YAAc,WACb,IAAIR,EAAM3M,EAAOH,SAAS+M,gBAC1B,MAAO,CACL5M,EAAOoN,YAAcT,EAAIU,YACzBrN,EAAOsN,aAAeX,EAAIY,eAW7BC,QAAU,SAAU7D,EAAGC,EAAGC,GACzBF,GAAK,IACLC,GAAK,IACLC,GAAK,IACL,IAAIrF,EAAIsF,KAAK2D,IAAI3D,KAAK2D,IAAI9D,EAAEC,GAAGC,GAC3B6D,EAAI5D,KAAK6D,IAAI7D,KAAK6D,IAAIhE,EAAEC,GAAGC,GAC3BnI,EAAIgM,EAAIlJ,EACZ,GAAU,IAAN9C,EAAW,MAAO,CAAE,KAAM,EAAG,IAAMgM,GACvC,IAAIE,EAAIjE,IAAInF,EAAI,GAAGqF,EAAED,GAAGlI,EAAKkI,IAAIpF,EAAI,GAAGmF,EAAEE,GAAGnI,EAAI,GAAGkI,EAAED,GAAGjI,EACzD,MAAO,CACN,IAAU,IAAJkM,EAAM,EAAEA,GACPlM,EAAEgM,EAAT,IACA,IAAMA,IAWRG,QAAU,SAAUD,EAAGE,EAAGJ,GACzB,IAAIK,EAAWL,EAAI,IAAX,IAER,GAAU,OAANE,EACH,MAAO,CAAEG,EAAGA,EAAGA,GAGhBH,GAAK,GACLE,GAAK,IAEL,IAAIvM,EAAIuI,KAAKkE,MAAMJ,GAEflM,EAAIqM,GAAK,EAAID,GACbtJ,EAAIuJ,GAAK,EAAID,GAFTvM,EAAE,EAAIqM,EAAErM,EAAI,GAAGqM,EAAErM,KAGzB,OAAQA,GACP,KAAK,EACL,KAAK,EAAG,MAAO,CAACwM,EAAEvJ,EAAE9C,GACpB,KAAK,EAAG,MAAO,CAAC8C,EAAEuJ,EAAErM,GACpB,KAAK,EAAG,MAAO,CAACA,EAAEqM,EAAEvJ,GACpB,KAAK,EAAG,MAAO,CAAC9C,EAAE8C,EAAEuJ,GACpB,KAAK,EAAG,MAAO,CAACvJ,EAAE9C,EAAEqM,GACpB,KAAK,EAAG,MAAO,CAACA,EAAErM,EAAE8C,KAKtByJ,iBAAmB,SAAUtL,GAC5B,IAKIjB,EALAwM,EAAM,CACTC,KAAM,KACNC,OAAQ,MAKT,GAAI1M,EAAIiB,EAAIV,MAAM,4BAA6B,CAG9C,GAAoB,IAAhBP,EAAE,GAAGF,OAER0M,EAAIE,OAAS,OACbF,EAAIC,KAAO,CACVE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAAM,UAG3B,GAAoB,IAAhBvI,EAAE,GAAGF,OAEf0M,EAAIE,OAAS,MACbF,EAAIC,KAAO,CACVE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1B,UAGK,IAAoB,IAAhBvI,EAAE,GAAGF,OAWf,OAAO,EATP0M,EAAIE,OAAS,MACbF,EAAIC,KAAO,CACVE,SAAS3M,EAAE,GAAG4M,OAAO,GAAK5M,EAAE,GAAG4M,OAAO,GAAG,IACzCD,SAAS3M,EAAE,GAAG4M,OAAO,GAAK5M,EAAE,GAAG4M,OAAO,GAAG,IACzCD,SAAS3M,EAAE,GAAG4M,OAAO,GAAK5M,EAAE,GAAG4M,OAAO,GAAG,IACzC,MAOF,OAAOJ,EAGR,GAAIxM,EAAIiB,EAAIV,MAAM,6BAA8B,CAG/C,IAEIsM,EAAIC,EAAIC,EAAIC,EAFZC,EAAMjN,EAAE,GAAG0G,MAAM,KACjBwG,EAAK,kCAET,GACCD,EAAInN,QAAU,IACb+M,EAAKI,EAAI,GAAG1M,MAAM2M,MAClBJ,EAAKG,EAAI,GAAG1M,MAAM2M,MAClBH,EAAKE,EAAI,GAAG1M,MAAM2M,IAiBnB,OAfAV,EAAIE,OAAS,MACbF,EAAIC,KAAO,CACVU,WAAWN,EAAG,KAAO,EACrBM,WAAWL,EAAG,KAAO,EACrBK,WAAWJ,EAAG,KAAO,EACrB,MAIAE,EAAInN,QAAU,IACbkN,EAAKC,EAAI,GAAG1M,MAAM2M,MAEnBV,EAAIE,OAAS,OACbF,EAAIC,KAAK,GAAKU,WAAWH,EAAG,KAAO,GAE7BR,EAIT,OAAO,GAIRY,kBAAoB,SAAUC,GAC7B,IAAIC,EAAO,GAEU,iBAAVD,EAEVA,EAAM5G,QAAQ,iDAAiD,SAAUpE,GACxEiL,EAAK3L,KAAKU,MAEDgH,MAAMkE,QAAQF,KACxBC,EAAOD,GAOR,IAFA,IAAIG,EAAS,GAEJ3N,EAAI,EAAGA,EAAIyN,EAAKxN,OAAQD,IAAK,CACrC,IAAI4N,EAAQ9O,EAAI4N,iBAAiBe,EAAKzN,IAClC4N,GACHD,EAAO7L,KAAK8L,GAId,OAAOD,GAIRE,wBAA0B,SAAUF,GACnC,IAAK,IAAI3N,EAAI,EAAGA,EAAI2N,EAAO1N,OAAQD,IAAK,CACvC,IAAI6I,EAAI8E,EAAO3N,GAAG4M,KAAK,GACvB,GAAU,OAAN/D,GAAcA,EAAI,EACrB,OAAO,EAGT,OAAO,GAIRiF,cAAgB,SAAUjB,GACzB,OAAQA,EAAOvM,eACf,IAAK,OACL,IAAK,OACJ,OAAO,EAER,OAAO,GAQRyN,sBAAwB,SAAUC,GACjC,IAAIC,EAAMxP,EAAOyP,kBAAoB,EACrCF,EAAOG,OAASF,EAChBD,EAAOI,QAAUH,EACPD,EAAOK,WAAW,MACxBC,MAAML,EAAKA,IAIhBM,sBAAwB,SAAUX,EAAOY,EAAcC,EAAWC,GAEjE,IAAIC,EAAOpG,KAAKC,MAAM1J,EAAIO,IAAIuP,iBAAiB3O,QAC3C4O,EAAS/P,EAAIO,IAAIyP,eACjBC,EAAWjQ,EAAIO,IAAI2P,iBACnBC,EAAWnQ,EAAIO,IAAI6P,iBAEnBC,EAASV,GAAiC,EAATI,EACjCO,EAAmB,EAATP,EAEVb,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAE5BL,EAAOG,MAAQgB,EACfnB,EAAOI,OAASgB,EACZV,GACH5P,EAAIiP,sBAAsBC,GAI3BqB,EAAIC,UAAYP,EAChBM,EAAIE,SAAS,EAAG,EAAGJ,EAAQC,GAG3BC,EAAIC,UAAYL,EAChB,IAAK,IAAI/E,EAAI,EAAGA,EAAIiF,EAAQjF,GAAc,EAAT2E,EAChCQ,EAAIE,SAASrF,EAAG,EAAG2E,EAAQA,GAC3BQ,EAAIE,SAASrF,EAAI2E,EAAQA,EAAQA,EAAQA,GAGtCjB,IAEHyB,EAAIC,UAAY1B,EAChByB,EAAIE,SAAS,EAAG,EAAGJ,EAAQC,IAG5B,IAAII,EAAQ,KACZ,OAAQhB,GACP,IAAK,OACJgB,EAAQ,EACRH,EAAII,UAAU,EAAG,EAAGd,EAAK,EAAGS,GAC5B,MACD,IAAK,QACJI,EAAQL,EAASR,EACjBU,EAAII,UAAUN,EAAUR,EAAK,EAAI,EAAGA,EAAK,EAAGS,GAG9C,GAAc,OAAVI,EAAgB,CACnBH,EAAIK,UAAY,EAChB,IAAK,IAAI1P,EAAI,EAAGA,EAAIlB,EAAIO,IAAIuP,iBAAiB3O,OAAQD,GAAK,EACzDqP,EAAIM,YACJN,EAAIO,YAAc9Q,EAAIO,IAAIuP,iBAAiB5O,GAC3CqP,EAAIQ,OAAO,GAAML,EAAQxP,EAAG,GAC5BqP,EAAIS,OAAO,GAAMN,EAAQxP,EAAGoP,GAC5BC,EAAIU,SAIN,MAAO,CACN/B,OAAQA,EACRG,MAAOgB,EACPf,OAAQgB,IAMVY,wBAA0B,SAAUpC,EAAOqC,EAAU9B,GACpD,IAAI+B,EAkBJ,OAfCA,EADGD,GAAY9B,EACN,CACR,MAAQ,CAAC7D,KAAO,QAAS6F,MAAQ,QAAQF,GACzCrC,EAAQ,MACRA,EAAQ,IAAMO,EAAQ,KACtB,kBAAoBA,EAAQ,GAAK,KACjC,sBAGQ,CACR,WACAP,EAAQ,MACRA,EAAQ,SAIH9O,EAAIkK,eAAeoH,MAAM1R,KAAMwR,IAIvCG,eAAiB,WAEhB,GAAKvR,EAAIwR,QAAWxR,EAAIwR,OAAOC,MAA/B,CAIA,IAEIC,EAAIC,EAFJC,EAAU5R,EAAIwR,OAAOC,MAIrBG,EAAQC,OAGXH,EAAK1R,EAAIkL,cAAc0G,EAAQ7O,eAAe,GAC9C4O,EAAK,CAAC,EAAG,KAETD,EAAK1R,EAAIkL,cAAc0G,EAAQ7O,eAC/B4O,EAAK3R,EAAI2L,cAGV,IAII5B,EAAGP,EAAGsI,EAJNC,EAAK/R,EAAI4L,eAAegG,EAAQ7O,eAChCiP,EAAKhS,EAAI8M,cACTmF,EAAKjS,EAAIkS,cAAcN,GACvBO,EAAK,CAACF,EAAGG,QAASH,EAAGI,SAEzB,OAAQT,EAAQT,SAAS3P,eACxB,IAAK,OAAQuI,EAAE,EAAGP,EAAE,EAAGsI,GAAG,EAAG,MAC7B,IAAK,QAAQ/H,EAAE,EAAGP,EAAE,EAAGsI,EAAE,EAAG,MAC5B,IAAK,MAAQ/H,EAAE,EAAGP,EAAE,EAAGsI,GAAG,EAAG,MAC7B,QAAa/H,EAAE,EAAGP,EAAE,EAAGsI,EAAE,EAE1B,IAAIQ,GAAKP,EAAGvI,GAAG2I,EAAG3I,IAAI,EAGtB,GAAKoI,EAAQW,cAMRC,EAAK,EACPb,EAAG5H,GAAG2H,EAAG3H,GAAGoI,EAAGpI,GAAKiI,EAAGjI,KACrB4H,EAAG5H,GAAG2H,EAAG3H,GAAGgI,EAAGhI,GAAG,EAAIiI,EAAGjI,GAAG,GAAK2H,EAAG3H,GAAGgI,EAAGhI,GAAGoI,EAAGpI,IAAM,EAAI2H,EAAG3H,GAAGgI,EAAGhI,GAAGoI,EAAGpI,GAC3E2H,EAAG3H,IACH4H,EAAGnI,GAAGkI,EAAGlI,GAAGuI,EAAGvI,GAAG2I,EAAG3I,GAAG8I,EAAEA,EAAER,EAAIE,EAAGxI,IACjCmI,EAAGnI,GAAGkI,EAAGlI,GAAGuI,EAAGvI,GAAG,EAAIwI,EAAGxI,GAAG,GAAKkI,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,GAAK,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,EAC/FJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,GAAK,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,QAXhE,IAAIU,EAAK,CACRd,EAAG3H,GACH2H,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,GAalB,IAAI1G,EAAIoH,EAAGzI,GACPsB,EAAImH,EAAGhJ,GACPiJ,EAAgBb,EAAQC,MAAQ,QAAU,WAC1Ca,GACFF,EAAG,GAAKL,EAAG,GAAKT,EAAG,IAAMc,EAAG,GAAKd,EAAG,GAAKK,EAAG,KAC5CS,EAAG,GAAKL,EAAG,GAAKT,EAAG,GAAKK,EAAG,GAE7B/R,EAAI2S,cAAcf,EAASxG,EAAGC,EAAGoH,EAAeC,KAIjDC,cAAgB,SAAUf,EAASxG,EAAGC,EAAGoH,EAAeC,GACvD,IAAIE,EAAUF,EAAiB,EAAId,EAAQiB,WAE3C7S,EAAIwR,OAAOsB,KAAK3J,MAAMgI,SAAWsB,EACjCzS,EAAIwR,OAAOsB,KAAK3J,MAAMqC,KAAOJ,EAAI,KACjCpL,EAAIwR,OAAOsB,KAAK3J,MAAMsC,IAAMJ,EAAI,KAEhCrL,EAAIgL,aACHhL,EAAIwR,OAAOuB,KACXnB,EAAQoB,OACP,IAAIhT,EAAIH,UAAU,EAAG+S,EAAShB,EAAQiB,WAAY,EAAGjB,EAAQqB,aAC7D,OAIHf,cAAgB,SAAUN,GACzB,IAAIsB,EAAI,EAAItB,EAAQuB,mBAAqBvB,EAAQvC,MAC7C9B,EAAI,EAAIqE,EAAQuB,mBAAqBvB,EAAQtC,OAE7C8D,EAAc,EAAIxB,EAAQuB,mBAAqB,EAAInT,EAAIqT,kBAAkBzB,GAAWA,EAAQ0B,WAE5FtT,EAAIuT,iBAAiB3B,KACxBsB,GAAKE,GAEFxB,EAAQ4B,oBACXN,GAAKE,GAGN,IAAIK,EAAMzT,EAAI0T,eAAe9B,EAASsB,GAElCO,EAAInE,SACP/B,GAAKkG,EAAInE,OAASsC,EAAQ+B,SAEvB/B,EAAQgC,cACXrG,GAAK,EAAIqE,EAAQuB,mBAAqBvB,EAAQ+B,QAAU/B,EAAQiC,cAGjE,IAAIC,EAAKZ,EAAK,EAAItB,EAAQ+B,QACtBI,EAAKxG,EAAK,EAAIqE,EAAQ+B,QAE1B,MAAO,CACNK,SAAUd,EACVe,SAAU1G,EACV2G,QAASJ,EACTK,QAASJ,EACT3B,QAAS0B,EAAM,EAAIlC,EAAQwC,YAC3B/B,QAAS0B,EAAM,EAAInC,EAAQwC,YAC3BC,QAASZ,IAKXC,eAAiB,SAAU9B,EAASvC,GACnC,IAAIiF,EAAO,EAAGC,EAAO,EAAGC,EAAQ,EAAGC,EAAQ,EAAGnF,EAAS,EACnDoF,EAAc9C,EAAQ+C,SAAW/C,EAAQ+C,SAASxT,OAAS,EAiB/D,OAfIuT,IAEHH,GADAD,EAAO1C,EAAQgD,aACD,EAAInL,KAAKoL,KAAKH,EAAcJ,GAAQ,EAGlDE,EAAQ/K,KAAK6D,IAAI,EAAG7D,KAAKkE,OAAO0B,GAAUiF,EAAO,GAAK1C,EAAQkD,gBAAmBR,IACjFG,EAAQ7C,EAAQmD,cAAgBtL,KAAK2D,IAAIwE,EAAQmD,cAAeP,GAASA,GAGtED,IACHjF,EACCiF,EAAOE,GACNF,EAAO,GAAK3C,EAAQkD,gBAGhB,CACNR,KAAMA,EACNC,KAAMA,EACNC,MAAOA,EACPC,MAAOA,EACPpF,MAAOA,EACPC,OAAQA,IAKV+D,kBAAoB,SAAUzB,GAC7B,OAAOnI,KAAK6D,IACXsE,EAAQ+B,QAAU,EACjB,EAAI/B,EAAQoD,mBAAqBpD,EAAQqD,iBAAoBrD,EAAQuB,qBAKxE+B,eAAiB,SAAUtD,GAC1B,OAAQA,EAAQuD,KAAKlH,OAAO,GAAGzM,eAC9B,IAAK,IAAK,MAAO,IAElB,MAAO,KAIR+R,iBAAmB,SAAU3B,GAC5B,GAAIA,EAAQuD,KAAKhU,OAAS,EACzB,OAAQyQ,EAAQuD,KAAKlH,OAAO,GAAGzM,eAC9B,IAAK,IAAK,MAAO,IACjB,IAAK,IAAK,MAAO,IAGnB,OAAO,MAKR4T,gBAAkB,SAAUxD,EAASxM,GACpC,GAAKwM,EAAQxM,GAAb,CAGA,IAAIiQ,EAAW,KAEf,GAA6B,iBAAlBzD,EAAQxM,GAElB,IACCiQ,EAAW,IAAI1S,SAAUiP,EAAQxM,IAChC,MAAO/C,GACRN,QAAQuT,MAAMjT,QAIfgT,EAAWzD,EAAQxM,GAGhBiQ,GACHA,EAASxK,KAAK+G,KAOhB2D,cAAgB,SAAUC,GAEzB,IADA,IAAI1S,EAAO9C,EAAI6C,eACN3B,EAAI,EAAGA,EAAI4B,EAAK3B,OAAQD,GAAK,EACrC4B,EAAK5B,GAAGuU,QAAQD,IAKlBE,kBAAoB,CACnBC,MAAO,YACPC,MAAO,aAERC,iBAAmB,CAClBF,MAAO,UACPC,MAAO,YAIRE,eAAiB,KACjBrP,gBAAkB,KAGlBsP,gBAAkB,SAAU1T,IACyB,IAAhD,CAAC,MAAO,UAAU+B,QAAQpE,EAAIsH,SAASjF,KACtCrC,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMuE,WAMpBC,eAAiB,SAAU5T,GAC1BrC,EAAIuR,kBAIL2E,eAAiB,SAAU7T,GAC1BrC,EAAIuR,kBAIL4E,eAAiB,SAAU9T,GAEtBrC,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMuE,WAKnBI,oBAAsB,SAAU/T,GAC/B,IAAIkE,EAASlE,EAAEkE,QAAUlE,EAAEgK,WAEvB9F,EAAOtG,SAAWsG,EAAOtG,mBAAmBD,EAAIO,IAC/CgG,EAAOtG,QAAQoW,cAAgB9P,EAAO+P,UACzC/P,EAAOtG,QAAQsW,OAENvW,EAAIuF,QAAQgB,EAAQ,OAChBvG,EAAIuF,QAAQgB,EAAQ,YAGjCvG,EAAIwW,sBAAsBnU,EAAGkE,EAAQvG,EAAIuF,QAAQgB,EAAQ,WAAY,SAIlEvG,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMuE,WAMpBS,mBAAqB,SAAUpU,GAC9B,IAAIkE,EAASlE,EAAEkE,QAAUlE,EAAEgK,WAEvBrM,EAAIuF,QAAQgB,EAAQ,YACvBvG,EAAIwW,sBAAsBnU,EAAGkE,EAAQvG,EAAIuF,QAAQgB,EAAQ,WAAY,UAKvEiQ,sBAAwB,SAAUnU,EAAGkE,EAAQmQ,EAAaC,GACzD,IAAI/E,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAElCvG,EAAIoG,eAAe/D,GACnBrC,EAAIsG,cAAcC,GAElB,IAAIqQ,EAAqB,SAAUtK,EAAKuK,GACvC7W,EAAI8F,iBAAiB,OAAQwG,EAAKtM,EAAI0V,kBAAkBiB,GACvD3W,EAAI8W,sBAAsBzU,EAAGkE,EAAQmQ,EAAaC,EAAaE,IAChE7W,EAAI8F,iBAAiB,OAAQwG,EAAKtM,EAAI6V,iBAAiBc,GACtD3W,EAAI+W,qBAAqB1U,EAAGkE,EAAQmQ,EAAaC,KAKnD,GAFAC,EAAmBjX,EAAOH,SAAU,CAAC,EAAG,IAEpCG,EAAOqX,QAAUrX,EAAOsX,aAAc,CACzC,IAAI3L,EAAO3L,EAAOsX,aAAa1L,wBAC3B2L,EAAM,EAAE5L,EAAKE,MAAOF,EAAKG,KAC7BmL,EAAmBjX,EAAOqX,OAAOrX,OAAOH,SAAU0X,GAGnD,IAAIC,EAAMnX,EAAI+L,iBAAiB1J,GAC3B+U,EAAMpX,EAAImM,iBAAiB9J,GAM/B,OALArC,EAAI8V,eAAiB,CACpB1K,EAAG+L,EAAI/L,EAAIgM,EAAIhM,EACfC,EAAG8L,EAAI9L,EAAI+L,EAAI/L,GAGRqL,GACR,IAAK,MAEkC,MAAlC1W,EAAIuT,iBAAiB3B,IAA2C,IAAvBA,EAAQyF,SAAShK,GAC7DuE,EAAQ0F,SAAS,KAAM,KAAM,IAAK,MAEnCtX,EAAIuX,OAAO3F,EAASvP,EAAG,EAAG,GAC1B,MAED,IAAK,MACJrC,EAAIwX,OAAO5F,EAASvP,EAAG,GACvB,MAED,IAAK,OACJrC,EAAIyX,QAAQ7F,EAASvP,EAAG,GAGzBuP,EAAQ6D,QAAQ,UAIjBqB,sBAAwB,SAAUzU,EAAGkE,EAAQmQ,EAAaC,EAAaE,GACtE,OAAO,SAAUxU,GAChB,IAAIuP,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAClC,OAAQmQ,GACR,IAAK,MACJ1W,EAAIuX,OAAO3F,EAASvP,EAAGwU,EAAO,GAAIA,EAAO,IACzC,MAED,IAAK,MACJ7W,EAAIwX,OAAO5F,EAASvP,EAAGwU,EAAO,IAC9B,MAED,IAAK,OACJ7W,EAAIyX,QAAQ7F,EAASvP,EAAGwU,EAAO,IAGhCjF,EAAQ6D,QAAQ,WAKlBsB,qBAAuB,SAAU1U,EAAGkE,EAAQmQ,EAAaC,GACxD,OAAO,SAAUtU,GAChB,IAAIuP,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAClCvG,EAAIkG,kBAAkB,QACtBlG,EAAI0G,gBAKJkL,EAAQ6D,QAAQ,SAChB7D,EAAQ6D,QAAQ,YAKlBiC,qBAAuB,SAAUrV,GAChC,IAAIkE,EAASlE,EAAEsV,cACX/F,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAC9BuI,EAAQ9O,EAAIuF,QAAQgB,EAAQ,SAGK,QAAjCqL,EAAQ7D,OAAOvM,gBAClBoQ,EAAQgG,WAAW9I,EAAMf,QACpB/N,EAAIgP,cAAc4C,EAAQiG,eAC9B/I,EAAMhB,KAAK,GAAK,IAKI,OAAlBgB,EAAMhB,KAAK,MACmB,IAA7B8D,EAAQkG,kBAA2D,SAA7BlG,EAAQkG,kBAA+BlG,EAAQmG,2BACxFjJ,EAAMhB,KAAK,GAAK,GAIlB8D,EAAQoG,SAAS1G,MAAMM,EAAS9C,EAAMhB,MAEtC8D,EAAQ6D,QAAQ,SAChB7D,EAAQ6D,QAAQ,UAEZ7D,EAAQqG,oBACXrG,EAAQsG,QAKVX,OAAS,SAAU3F,EAASvP,EAAG8V,EAAMC,GACpC,IAAIC,EAAarY,EAAI+L,iBAAiB1J,GAClC+I,EAAI+M,EAAOE,EAAWjN,EAAIpL,EAAI8V,eAAe1K,EAAIwG,EAAQ+B,QAAU/B,EAAQuB,mBAC3E9H,EAAI+M,EAAOC,EAAWhN,EAAIrL,EAAI8V,eAAezK,EAAIuG,EAAQ+B,QAAU/B,EAAQuB,mBAE3EmF,EAAOlN,GAAK,KAAOwG,EAAQvC,MAAQ,IACnCkJ,EAAO,IAAOlN,GAAK,KAAOuG,EAAQtC,OAAS,IAE/C,OAAQtP,EAAIkV,eAAetD,IAC3B,IAAK,IAAKA,EAAQ0F,SAASgB,EAAMC,EAAM,KAAM,MAAO,MACpD,IAAK,IAAK3G,EAAQ0F,SAASgB,EAAM,KAAMC,EAAM,QAK9Cf,OAAS,SAAU5F,EAASvP,EAAG+V,GAC9B,IAEIG,EAAO,KADHH,EADSpY,EAAI+L,iBAAiB1J,GACZgJ,EAAIrL,EAAI8V,eAAezK,EAAIuG,EAAQ+B,QAAU/B,EAAQuB,qBACxD,KAAOvB,EAAQtC,OAAS,IAE/C,OAAQtP,EAAIuT,iBAAiB3B,IAC7B,IAAK,IAAKA,EAAQ0F,SAAS,KAAMiB,EAAM,KAAM,MAAO,MACpD,IAAK,IAAK3G,EAAQ0F,SAAS,KAAM,KAAMiB,EAAM,QAK9Cd,QAAU,SAAU7F,EAASvP,EAAG+V,GAC/B,IAEIG,EAAO,GADHH,EADSpY,EAAI+L,iBAAiB1J,GACZgJ,EAAIrL,EAAI8V,eAAezK,EAAIuG,EAAQ+B,QAAU/B,EAAQuB,qBACxD,GAAOvB,EAAQtC,OAAS,IAE/C,GAAIiJ,EAAO,EAAK,CAEf,IAAIC,EAAM5G,EAAQiG,YACmB,QAAjCjG,EAAQ7D,OAAOvM,eAA4BxB,EAAIgP,cAAcwJ,IAChE5G,EAAQgG,WAAmB,QAARY,EAAgB,OAAS,QAI9C5G,EAAQ0F,SAAS,KAAM,KAAM,KAAMiB,IAIpCE,gBAAkB,WAEjB,IAAI5K,EAAM,CACT9N,IAAK,KACL2Y,KAAM,MAGHxJ,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAsC5B,OAHA1B,EAAI9N,IAAMmP,EACVrB,EAAI6K,KAlCW,SAAUrJ,EAAOC,EAAQ/N,GACvC2N,EAAOG,MAAQA,EACfH,EAAOI,OAASA,EAEhBiB,EAAII,UAAU,EAAG,EAAGzB,EAAOG,MAAOH,EAAOI,QAEzC,IAAIqJ,EAAQpI,EAAIqI,qBAAqB,EAAG,EAAG1J,EAAOG,MAAO,GACzDsJ,EAAME,aAAa,EAAO,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,GAAO,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,EAAO,QAE1BtI,EAAIC,UAAYmI,EAChBpI,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,QAExC,IAAIwJ,EAAQvI,EAAIqI,qBAAqB,EAAG,EAAG,EAAG1J,EAAOI,QACrD,OAAQ/N,EAAKC,eACb,IAAK,IACJsX,EAAMD,aAAa,EAAG,uBACtBC,EAAMD,aAAa,EAAG,uBACtB,MACD,IAAK,IACJC,EAAMD,aAAa,EAAG,iBACtBC,EAAMD,aAAa,EAAG,iBAGvBtI,EAAIC,UAAYsI,EAChBvI,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,SAMlCzB,GAIRkL,qBAAuB,WAEtB,IAAIlL,EAAM,CACT9N,IAAK,KACL2Y,KAAM,MAGHxJ,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAmB5B,OAHA1B,EAAI9N,IAAMmP,EACVrB,EAAI6K,KAfW,SAAUrJ,EAAOC,EAAQ0J,EAAQC,GAC/C/J,EAAOG,MAAQA,EACfH,EAAOI,OAASA,EAEhBiB,EAAII,UAAU,EAAG,EAAGzB,EAAOG,MAAOH,EAAOI,QAEzC,IAAI4J,EAAO3I,EAAIqI,qBAAqB,EAAG,EAAG,EAAG1J,EAAOI,QACpD4J,EAAKL,aAAa,EAAGG,GACrBE,EAAKL,aAAa,EAAGI,GAErB1I,EAAIC,UAAY0I,EAChB3I,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,SAMlCzB,GAIRsL,sBAAwB,WAEvB,IAAItL,EAAM,CACT9N,IAAK,KACL2Y,KAAM,MAGHxJ,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAoC5B,OAHA1B,EAAI9N,IAAMmP,EACVrB,EAAI6K,KAhCW,SAAUrJ,EAAOC,EAAQR,GACvCI,EAAOG,MAAQA,EACfH,EAAOI,OAASA,EAEhBiB,EAAII,UAAU,EAAG,EAAGzB,EAAOG,MAAOH,EAAOI,QAEzC,IAAIS,EAASb,EAAOG,MAAQ,EACxBY,EAAWjQ,EAAIO,IAAI2P,iBACnBC,EAAWnQ,EAAIO,IAAI6P,iBAMvB,GAHAG,EAAIC,UAAYP,EAChBM,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,QAEpCS,EAAS,EACZ,IAAK,IAAI1E,EAAI,EAAGA,EAAI6D,EAAOI,OAAQjE,GAAc,EAAT0E,EAEvCQ,EAAIC,UAAYL,EAChBI,EAAIE,SAAS,EAAGpF,EAAG0E,EAAQA,GAC3BQ,EAAIE,SAASV,EAAQ1E,EAAI0E,EAAQA,EAAQA,GAI3C,IAAImJ,EAAO3I,EAAIqI,qBAAqB,EAAG,EAAG,EAAG1J,EAAOI,QACpD4J,EAAKL,aAAa,EAAG/J,GACrBoK,EAAKL,aAAa,EAAG,iBAErBtI,EAAIC,UAAY0I,EAChB3I,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,SAMlCzB,GAIRhO,WACKA,EAAY,SAAUuZ,EAASxG,EAASyG,EAAMC,EAAQxK,EAAOyK,GAChE3Z,KAAKwZ,QAAUA,EACfxZ,KAAKgT,QAAUA,EACfhT,KAAKyZ,KAAOA,EACZzZ,KAAK0Z,OAASA,EACd1Z,KAAKkP,MAAQA,EACblP,KAAK2Z,QAAUA,GAGhB1Z,EAAU8K,UAAUhB,SAAW,WAC9B,IAAIgF,EAAO,CACVlF,KAAKC,MAAM9J,KAAKwZ,SAAW,KAC3B3P,KAAKC,MAAM9J,KAAKgT,SAAW,KAC3BnJ,KAAKC,MAAM9J,KAAKyZ,MAAQ,KACxB5P,KAAKC,MAAM9J,KAAK0Z,QAAU,KAC1B1Z,KAAKkP,OAKN,OAHIlP,KAAK2Z,OACR5K,EAAK3L,KAAK,SAEJ2L,EAAK/D,KAAK,MAGX/K,GAIR2Z,MAAQ,CACPC,WAAa,EACbC,WAAa,EACbC,aAAe,GAIhBC,SAAW,CACV7L,OAAQ,CAAC,OAAQ,MAAO,MAAO,OAAQ,MAAO,QAC9C8L,gBAAiB,CAAC,OAAQ,SAC1B1E,KAAM,CAAC,MAAO,MAAO,KAAM,MAC3BhE,SAAU,CAAC,OAAQ,QAAS,MAAO,UACnC2I,aAAc,CAAC,QAAQ,GAAM,GAC7BhC,iBAAkB,CAAC,QAAQ,GAAM,IAIlCiC,eAAiB,CAEhBC,aAAgB,iBAChBC,aAAgB,UAChBC,mBAAsB,aACtBC,SAAY,cACZC,WAAc,qBACdC,WAAc,qBACdC,OAAU,MAIXrY,QAAU,iCAUV1B,IAAM,SAAUwC,EAAeb,GAE9B,IAAIqY,EAAO3a,KAurBX,SAAS4a,EAAWC,EAAQnW,GAC3B,GAAsB,iBAAXmW,EACV,MAAM,IAAI/a,MAAM,kCAAoC+a,GAIrD,GAAIza,EAAI4Z,SAASzU,eAAesV,KACV,iBAAVnW,IACVA,EAAQA,EAAM9C,gBAE8B,IAAzCxB,EAAI4Z,SAASa,GAAQrW,QAAQE,IAChC,MAAM,IAAI5E,MAAM,WAAc+a,EAAS,wBAA2BnW,GAKpE,GAAItE,EAAI+Z,eAAe5U,eAAesV,GAAS,CAC9C,IAAIC,EAASD,EACTE,EAAS3a,EAAI+Z,eAAeU,GAChC,IAAIE,EAMH,MAAM,IAAIjb,MAAM,WAAc+a,EAAS,mBAJvC1Y,QAAQC,KAAK,iDAAuDhC,EAAIiC,QAASyY,EAAQC,GACzFF,EAASE,EAOX,IAAIC,EAAS,QAAUH,EAEvB,GAA4B,mBAAjBF,EAAKK,GAEf,OADAL,EAAKK,GAAQtW,IACN,EAED,GAAImW,KAAUF,EAEpB,OADAA,EAAKE,GAAUnW,GACR,EAGR,MAAM,IAAI5E,MAAM,sCAAwC+a,GAIzD,SAASI,EAAWJ,GACnB,GAAsB,iBAAXA,EACV,MAAM,IAAI/a,MAAM,kCAAoC+a,GAIrD,GAAIza,EAAI+Z,eAAe5U,eAAesV,GAAS,CAC9C,IAAIC,EAASD,EACTE,EAAS3a,EAAI+Z,eAAeU,GAChC,IAAIE,EAMH,MAAM,IAAIjb,MAAM,WAAc+a,EAAS,mBAJvC1Y,QAAQC,KAAK,iDAAuDhC,EAAIiC,QAASyY,EAAQC,GACzFF,EAASE,EAOX,IAAIG,EAAS,QAAUL,EAEvB,GAA4B,mBAAjBF,EAAKO,GACf,OAAOP,EAAKO,GAAQxW,OAEd,GAAImW,KAAUF,EACpB,OAAOA,EAAKE,GAGb,MAAM,IAAI/a,MAAM,sCAAwC+a,GAWzD,SAASM,IAKRR,EAAKS,8BAEAhb,EAAIwR,SACRxR,EAAIwR,OAAS,CACZC,MAAO,KACPqB,KAAO9S,EAAIiD,SAAS,OACpBgY,IAAMjb,EAAIiD,SAAS,OACnB8P,KAAO/S,EAAIiD,SAAS,OACpBiY,KAAOlb,EAAIiD,SAAS,OACpBkY,IAAMnb,EAAIiD,SAAS,OACnBmY,KAAOpb,EAAIiD,SAAS,OACpBoY,KAAOrb,EAAIiD,SAAS,OACpBqY,UAAYtb,EAAIyY,kBAChB8C,MAAQvb,EAAIiD,SAAS,OACrBuY,QAAUxb,EAAIiD,SAAS,OACvBwY,QAAUzb,EAAIiD,SAAS,OACvByY,QAAU1b,EAAIiD,SAAS,OACvB0Y,QAAU3b,EAAIiD,SAAS,OACvB2Y,IAAM5b,EAAIiD,SAAS,OACnB4Y,KAAO7b,EAAIiD,SAAS,OACpB6Y,KAAO9b,EAAIiD,SAAS,OACpB8Y,QAAU/b,EAAI+Y,uBACdiD,QAAUhc,EAAIiD,SAAS,OACvBgZ,SAAWjc,EAAIiD,SAAS,OACxBiZ,SAAWlc,EAAIiD,SAAS,OACxBkZ,SAAWnc,EAAIiD,SAAS,OACxBmZ,KAAOpc,EAAIiD,SAAS,OACpBoZ,MAAQrc,EAAIiD,SAAS,OACrBqZ,MAAQtc,EAAIiD,SAAS,OACrBsZ,SAAWvc,EAAImZ,wBACfqD,SAAWxc,EAAIiD,SAAS,OACxBwZ,UAAYzc,EAAIiD,SAAS,OACzByZ,UAAY1c,EAAIiD,SAAS,OACzB0Z,UAAY3c,EAAIiD,SAAS,OACzBwQ,IAAMzT,EAAIiD,SAAS,OACnB2Z,IAAM5c,EAAIiD,SAAS,OACnB4Z,KAAO7c,EAAIiD,SAAS,SAGrBjD,EAAIwR,OAAO2J,IAAI2B,YAAY9c,EAAIwR,OAAO8J,UAAUvb,KAChDC,EAAIwR,OAAO4J,KAAK0B,YAAY9c,EAAIwR,OAAO2J,KACvCnb,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOgK,SACxCxb,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOiK,SACxCzb,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOkK,SACxC1b,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOmK,SACxC3b,EAAIwR,OAAO4J,KAAK0B,YAAY9c,EAAIwR,OAAO+J,OACvCvb,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO4J,MACtCpb,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO6J,MAEtCrb,EAAIwR,OAAOoK,IAAIkB,YAAY9c,EAAIwR,OAAOuK,QAAQhc,KAC9CC,EAAIwR,OAAOqK,KAAKiB,YAAY9c,EAAIwR,OAAOoK,KACvC5b,EAAIwR,OAAOqK,KAAKiB,YAAY9c,EAAIwR,OAAO2K,UACvCnc,EAAIwR,OAAO2K,SAASW,YAAY9c,EAAIwR,OAAO0K,UAC3Clc,EAAIwR,OAAO0K,SAASY,YAAY9c,EAAIwR,OAAOyK,UAC3Cjc,EAAIwR,OAAOyK,SAASa,YAAY9c,EAAIwR,OAAOwK,SAC3Chc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOqK,MACtC7b,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOsK,MAEtC9b,EAAIwR,OAAO4K,KAAKU,YAAY9c,EAAIwR,OAAO+K,SAASxc,KAChDC,EAAIwR,OAAO6K,MAAMS,YAAY9c,EAAIwR,OAAO4K,MACxCpc,EAAIwR,OAAO6K,MAAMS,YAAY9c,EAAIwR,OAAOmL,WACxC3c,EAAIwR,OAAOmL,UAAUG,YAAY9c,EAAIwR,OAAOkL,WAC5C1c,EAAIwR,OAAOkL,UAAUI,YAAY9c,EAAIwR,OAAOiL,WAC5Czc,EAAIwR,OAAOiL,UAAUK,YAAY9c,EAAIwR,OAAOgL,UAC5Cxc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO6K,OACtCrc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO8K,OAEtCtc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOiC,KAEtCzT,EAAIwR,OAAOoL,IAAIE,YAAY9c,EAAIwR,OAAOqL,MACtC7c,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOoL,KAEtC5c,EAAIwR,OAAO0J,KAAK4B,YAAY9c,EAAIwR,OAAOyJ,KACvCjb,EAAIwR,OAAOsB,KAAKgK,YAAY9c,EAAIwR,OAAOuB,MACvC/S,EAAIwR,OAAOsB,KAAKgK,YAAY9c,EAAIwR,OAAO0J,MAEvClb,EAAIwR,OAAOsB,KAAKxS,iBAAiB,aAAcN,EAAIyW,qBAClDzW,EAAIwE,yBAA0B,CAACuY,SAAS,KAG1C,IAoSKC,EACAC,EArSDC,EAAIld,EAAIwR,OAER2L,IAAkBnd,EAAIuT,iBAAiBgH,GACvC6C,EAAqB7C,EAAK/G,kBAC1B6J,EAAard,EAAIkS,cAAcqI,GAC/B+C,EAAkB,EAAI/C,EAAKvF,mBAAqBuF,EAAKtF,iBAAmB,EAAIsF,EAAKgD,UACjFC,EAAiBxd,EAAIqT,kBAAkBkH,GACvCkD,EAAehU,KAAK2D,IACvBmN,EAAKkD,aACLhU,KAAKC,MAAM6Q,EAAK5G,QAAUlK,KAAKiU,KAIhCR,EAAEpK,KAAKnR,UAAY,sBACnBub,EAAEpK,KAAK3J,MAAMwU,MAAQ,OACrBT,EAAEpK,KAAK3J,MAAMkG,MAAQgO,EAAWjL,QAAU,KAC1C8K,EAAEpK,KAAK3J,MAAMmG,OAAS+N,EAAWhL,QAAU,KAC3C6K,EAAEpK,KAAK3J,MAAMyU,OAASrD,EAAKqD,OAG3BV,EAAEjC,IAAItZ,UAAY,iBAClBub,EAAEjC,IAAI9R,MAAMkG,MAAQgO,EAAWnJ,QAAU,KACzCgJ,EAAEjC,IAAI9R,MAAMmG,OAAS+N,EAAWlJ,QAAU,KAC1C+I,EAAEjC,IAAI9R,MAAMgI,SAAW,WAGvB+L,EAAEnK,KAAKpR,UAAY,wBACnBub,EAAEnK,KAAK5J,MAAMgI,SAAW,WACxB+L,EAAEnK,KAAK5J,MAAMqC,KAAO,IACpB0R,EAAEnK,KAAK5J,MAAMsC,IAAM,IACnByR,EAAEnK,KAAK5J,MAAMkG,MAAQ,OACrB6N,EAAEnK,KAAK5J,MAAMmG,OAAS,OACtBtP,EAAI8K,gBAAgBoS,EAAEnK,KAAM0K,EAAe,MAG3CP,EAAEhC,KAAKvZ,UAAY,wBACnBub,EAAEhC,KAAK/R,MAAMgI,SAAW,WACxB+L,EAAEhC,KAAK/R,MAAM0U,OAAStD,EAAKnG,YAAc,WACzC8I,EAAEhC,KAAK/R,MAAM2U,YAAcvD,EAAKuD,YAChCZ,EAAEhC,KAAK/R,MAAMqB,WAAa+P,EAAKwD,gBAC/B/d,EAAI8K,gBAAgBoS,EAAEhC,KAAMuC,EAAe,MAK3CP,EAAE7B,KAAKlS,MAAMqB,WAAa,mBAC1B0S,EAAEpB,KAAK3S,MAAMqB,WAAa,mBAC1B0S,EAAEZ,MAAMnT,MAAMqB,WAAa,mBAE3B0S,EAAE7B,KAAKlS,MAAM6U,QACbd,EAAEpB,KAAK3S,MAAM6U,QACbd,EAAEZ,MAAMnT,MAAM6U,QACb,IAGDd,EAAE/B,IAAIhS,MAAMgI,SAAW,WACvB+L,EAAE/B,IAAIhS,MAAMkG,MAAQkL,EAAKlL,MAAQ,KACjC6N,EAAE/B,IAAIhS,MAAMmG,OAASiL,EAAKjL,OAAS,KAGnC4N,EAAE5B,UAAU5C,KAAK6B,EAAKlL,MAAOkL,EAAKjL,OAAQtP,EAAIkV,eAAeqF,IAG7D2C,EAAE9B,KAAKjS,MAAMgI,SAAW,WACxB+L,EAAE9B,KAAKjS,MAAMqC,KAAO+O,EAAK5G,QAAU,KACnCuJ,EAAE9B,KAAKjS,MAAMsC,IAAM8O,EAAK5G,QAAU,KAClCuJ,EAAE9B,KAAKjS,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAChD+J,EAAE9B,KAAKjS,MAAM2U,YAAcvD,EAAK0D,mBAGhCf,EAAE7B,KAAKlS,MAAMgI,SAAW,WACxB+L,EAAE7B,KAAKlS,MAAMqC,KAAO,MACpB0R,EAAE7B,KAAKlS,MAAMsC,IAAM,MACnByR,EAAE7B,KAAKlS,MAAMkG,MAASkL,EAAK5G,QAAU,EAAI4G,EAAKpH,mBAAqBoH,EAAKlL,MAAQmO,EAAkB,KAClGN,EAAE7B,KAAKlS,MAAMmG,OAAU,EAAIiL,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KACvF4N,EAAE7B,KAAKlS,MAAM+U,OAjEG,YAkEhBle,EAAIqD,QAAQ6Z,EAAE7B,KAAM,CACnB8C,SAAU5D,EACV6D,QAAS,QAIVlB,EAAE3B,MAAMpS,MAAMgI,SAAW,WACzB+L,EAAE3B,MAAMpS,MAAMqC,KACd0R,EAAE3B,MAAMpS,MAAMsC,IACb,IACDyR,EAAE3B,MAAMpS,MAAMkG,MACd6N,EAAE3B,MAAMpS,MAAMmG,OACbgO,EAAiB,KAGlBJ,EAAE1B,QAAQrS,MAAMgI,SAChB+L,EAAEzB,QAAQtS,MAAMgI,SACf,WACD+L,EAAE1B,QAAQrS,MAAMqB,WAChB0S,EAAEzB,QAAQtS,MAAMqB,WACf+P,EAAK8D,mBACNnB,EAAE1B,QAAQrS,MAAMkG,MAChB6N,EAAEzB,QAAQtS,MAAMmG,OACd,EAAIiL,EAAKvF,mBAAqBuF,EAAKtF,iBAAoB,KACzDiI,EAAE1B,QAAQrS,MAAMmG,OAChB4N,EAAEzB,QAAQtS,MAAMkG,MACfiO,EAAiB,KAClBJ,EAAE1B,QAAQrS,MAAMqC,KAChB0R,EAAEzB,QAAQtS,MAAMsC,IACdhC,KAAKkE,MAAM2P,EAAiB,GAAK7T,KAAKkE,MAAM4M,EAAKtF,iBAAmB,GAAKsF,EAAKvF,mBAAsB,KACtGkI,EAAE1B,QAAQrS,MAAMsC,IAChByR,EAAEzB,QAAQtS,MAAMqC,KACf,IAGD0R,EAAExB,QAAQvS,MAAMgI,SAChB+L,EAAEvB,QAAQxS,MAAMgI,SACf,WACD+L,EAAExB,QAAQvS,MAAMqB,WAChB0S,EAAEvB,QAAQxS,MAAMqB,WACf+P,EAAK+D,aACNpB,EAAExB,QAAQvS,MAAMmG,OAChB4N,EAAEvB,QAAQxS,MAAMkG,MACdiO,EAAiB,EAAI/C,EAAKvF,mBAAsB,KAClDkI,EAAExB,QAAQvS,MAAMkG,MAChB6N,EAAEvB,QAAQxS,MAAMmG,OACfiL,EAAKtF,iBAAmB,KACzBiI,EAAExB,QAAQvS,MAAMqC,KAChB0R,EAAEvB,QAAQxS,MAAMsC,IACdhC,KAAKkE,MAAM2P,EAAiB,GAAK7T,KAAKkE,MAAM4M,EAAKtF,iBAAmB,GAAM,KAC5EiI,EAAExB,QAAQvS,MAAMsC,IAChByR,EAAEvB,QAAQxS,MAAMqC,KACf+O,EAAKvF,mBAAqB,KAI3BkI,EAAEtB,IAAIzS,MAAMoV,SAAW,SACvBrB,EAAEtB,IAAIzS,MAAMkG,MAAQkL,EAAKjH,WAAa,KACtC4J,EAAEtB,IAAIzS,MAAMmG,OAASiL,EAAKjL,OAAS,KAGnC4N,EAAEnB,QAAQrD,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ,OAAQ,QAGrD4N,EAAErB,KAAK1S,MAAMqV,QAAUrB,EAAgB,QAAU,OACjDD,EAAErB,KAAK1S,MAAMgI,SAAW,WACxB+L,EAAErB,KAAK1S,MAAMqC,KAAQ+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqB,EAAIqK,EAAkB,KACrGN,EAAErB,KAAK1S,MAAMsC,IAAM8O,EAAK5G,QAAU,KAClCuJ,EAAErB,KAAK1S,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAChD+J,EAAErB,KAAK1S,MAAM2U,YAAcvD,EAAK0D,mBAGhCf,EAAEpB,KAAK3S,MAAMqV,QAAUrB,EAAgB,QAAU,OACjDD,EAAEpB,KAAK3S,MAAMgI,SAAW,WACxB+L,EAAEpB,KAAK3S,MAAMqC,KAAQ+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqBqK,EAAkB,KACjGN,EAAEpB,KAAK3S,MAAMsC,IAAM,MACnByR,EAAEpB,KAAK3S,MAAMkG,MACVkL,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,oBAChDiK,EAAqB,EAAI3T,KAAK6D,IAAI,EAAGiN,EAAK5G,QAAU6J,IAClD,KACLN,EAAEpB,KAAK3S,MAAMmG,OAAU,EAAIiL,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KACvF4N,EAAEpB,KAAK3S,MAAM+U,OAAS,UACtBle,EAAIqD,QAAQ6Z,EAAEpB,KAAM,CACnBqC,SAAU5D,EACV6D,QAAS,QAIVlB,EAAEjB,SAAS9S,MAAM0U,OACjBX,EAAEf,SAAShT,MAAM0U,OAChBtD,EAAKvF,mBAAqB,YAAcuF,EAAK8D,mBAG9CnB,EAAEf,SAAShT,MAAMgI,SAAW,WAC5B+L,EAAEf,SAAShT,MAAMqC,OAAS,EAAI+O,EAAKvF,mBAAqBuF,EAAKtF,kBAAoB,KACjFiI,EAAEf,SAAShT,MAAMsC,IAAM,IAGvByR,EAAEhB,SAAS/S,MAAM0U,OAAStD,EAAKtF,iBAAmB,YAAcsF,EAAK+D,aAGrEpB,EAAElB,QAAQ7S,MAAMkG,MAAQkL,EAAKjH,WAAa,KAC1C4J,EAAElB,QAAQ7S,MAAMmG,OAAStP,EAAIO,IAAIke,iBAAmB,KAIpDvB,EAAEd,KAAKjT,MAAMoV,SAAW,SACxBrB,EAAEd,KAAKjT,MAAMkG,MAAQkL,EAAKjH,WAAa,KACvC4J,EAAEd,KAAKjT,MAAMmG,OAASiL,EAAKjL,OAAS,KAGpC4N,EAAEX,SAAS7D,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ,QAG9C4N,EAAEb,MAAMlT,MAAMqV,QAAUpB,EAAqB,QAAU,OACvDF,EAAEb,MAAMlT,MAAMgI,SAAW,WACzB+L,EAAEb,MAAMlT,MAAMqC,KACX+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqBqK,GAC1DL,EAAiB5C,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,mBAAsB,GACrF,KACL+J,EAAEb,MAAMlT,MAAMsC,IAAM8O,EAAK5G,QAAU,KACnCuJ,EAAEb,MAAMlT,MAAM0U,OAAStD,EAAKpH,mBAAqB,WACjD+J,EAAEb,MAAMlT,MAAM2U,YAAcvD,EAAK0D,mBAGjCf,EAAEZ,MAAMnT,MAAMqV,QAAUpB,EAAqB,QAAU,OACvDF,EAAEZ,MAAMnT,MAAMgI,SAAW,WACzB+L,EAAEZ,MAAMnT,MAAMqC,KACX+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqBqK,GAC1DL,EAAiB5C,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,mBAAsB,GACrF,KACL+J,EAAEZ,MAAMnT,MAAMsC,IAAM,MACpByR,EAAEZ,MAAMnT,MAAMkG,MACXkL,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,mBACjD1J,KAAK6D,IAAI,EAAGiN,EAAK5G,QAAU6J,GACxB,KACLN,EAAEZ,MAAMnT,MAAMmG,OAAU,EAAIiL,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KACxF4N,EAAEZ,MAAMnT,MAAM+U,OAAS,UACvBle,EAAIqD,QAAQ6Z,EAAEZ,MAAO,CACpB6B,SAAU5D,EACV6D,QAAS,SAIVlB,EAAET,UAAUtT,MAAM0U,OAClBX,EAAEP,UAAUxT,MAAM0U,OACjBtD,EAAKvF,mBAAqB,YAAcuF,EAAK8D,mBAG9CnB,EAAEP,UAAUxT,MAAMgI,SAAW,WAC7B+L,EAAEP,UAAUxT,MAAMqC,OAAS,EAAI+O,EAAKvF,mBAAqBuF,EAAKtF,kBAAoB,KAClFiI,EAAEP,UAAUxT,MAAMsC,IAAM,IAGxByR,EAAER,UAAUvT,MAAM0U,OAAStD,EAAKtF,iBAAmB,YAAcsF,EAAK+D,aAGtEpB,EAAEV,SAASrT,MAAMkG,MAAQkL,EAAKjH,WAAa,KAC3C4J,EAAEV,SAASrT,MAAMmG,OAAStP,EAAIO,IAAIke,iBAAmB,KAIrDvB,EAAEzJ,IAAI9R,UAAY,kBAClBub,EAAEzJ,IAAItK,MAAMqV,QAAUnB,EAAWhJ,QAAQE,KAAO,QAAU,OAC1D2I,EAAEzJ,IAAItK,MAAMgI,SAAW,WACvB+L,EAAEzJ,IAAItK,MAAMqC,KAAO+O,EAAK5G,QAAU,KAClCuJ,EAAEzJ,IAAItK,MAAMsC,IAAO,EAAI8O,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KAInF4N,EAAEzJ,IAAIiL,UAAY,GAKlB,IAHA,IAAIC,EAAa3e,EAAIyP,sBAAsB,iBAEvCmP,EAAK,EACAtV,EAAI,EAAGA,EAAI+T,EAAWhJ,QAAQE,KAAMjL,IAC5C,IAAK,IAAIwI,EAAI,EAAGA,EAAIuL,EAAWhJ,QAAQC,MAAQsK,EAAKrE,EAAK5F,SAASxT,OAAQ2Q,IAAK8M,IAAM,CACpF,IAAIC,EAActE,EAAK5F,SAASiK,GAC5BE,EAAiB9e,EAAIiK,UAAUqH,MAAM,KAAMuN,EAAY/Q,MAEvDiR,EAAK/e,EAAIiD,SAAS,OACtB8b,EAAG5V,MAAMkG,MAASgO,EAAWhJ,QAAQG,MAAQ,EAAI+F,EAAKpH,mBAAsB,KAC5E4L,EAAG5V,MAAMmG,OAAU+N,EAAWhJ,QAAQI,MAAQ,EAAI8F,EAAKpH,mBAAsB,KAC7E4L,EAAG5V,MAAM4U,gBAAkBe,EAE3B,IAAIE,EAAKhf,EAAIiD,SAAS,OACtB+b,EAAGrd,UAAY,yBACfqd,EAAG7V,MAAMqV,QAAU,QACnBQ,EAAG7V,MAAMgI,SAAW,WACpB6N,EAAG7V,MAAMqC,MACP6R,EAAWhJ,QAAQC,MAAQ,EAAI,EAC/B7K,KAAKC,MAAYoI,IAAMuL,EAAWrJ,SAAWqJ,EAAWhJ,QAAQG,QAAU6I,EAAWhJ,QAAQC,KAAO,IAAzF,IAAiG,IACzG,KACL0K,EAAG7V,MAAMsC,IAAOnC,GAAK+T,EAAWhJ,QAAQI,MAAQ8F,EAAKzF,gBAAmB,KACxEkK,EAAG7V,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAC5C6L,EAAG7V,MAAM2U,YAAcvD,EAAK0D,mBAC5Be,EAAG7V,MAAM+U,OAAS,UACU,OAAxBW,EAAY/Q,KAAK,IAAe+Q,EAAY/Q,KAAK,GAAK,IACzDkR,EAAG7V,MAAM8V,gBAAkB,QAAWN,EAAWzP,OAAOgQ,YAAc,KACtEF,EAAG7V,MAAMgW,iBAAmB,SAC5BH,EAAG7V,MAAMiW,mBAAqB,iBAE/Bpf,EAAIqD,QAAQ2b,EAAI,CACfb,SAAU5D,EACV6D,QAAS,iBACTtP,MAAO+P,IAERG,EAAG1e,iBAAiB,QAASN,EAAI0X,sBAAsB,GACvDsH,EAAGlC,YAAYiC,GACf7B,EAAEzJ,IAAIqJ,YAAYkC,GAYpB9B,EAAEN,IAAIjb,UAAY,oBAClBub,EAAEN,IAAIzT,MAAMqV,QAAUjE,EAAK3G,YAAc,QAAU,OACnDsJ,EAAEN,IAAIzT,MAAMgI,SAAW,WACvB+L,EAAEN,IAAIzT,MAAMqC,KAAO+O,EAAK5G,QAAU,KAClCuJ,EAAEN,IAAIzT,MAAMkW,OAAS9E,EAAK5G,QAAU,KACpCuJ,EAAEN,IAAIzT,MAAMwK,QAAU,SACtBuJ,EAAEN,IAAIzT,MAAMmW,SAAYjC,EAAWrJ,SAAW,EAAIuG,EAAKpH,mBAAqB,GAAkB,KAC9F+J,EAAEN,IAAIzT,MAAMoV,SAAW,SACvBrB,EAAEN,IAAIzT,MAAMmG,OAASiL,EAAK1G,aAAe,KACzCqJ,EAAEN,IAAIzT,MAAMoW,WAAa,SACzBrC,EAAEN,IAAIzT,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAd1C8J,GADAD,EAAczC,EAAK0D,mBAAmBlW,MAAM,QAClB5G,OAAS,EAAI6b,EAAY,GAAKA,EAAY,GAAK,IAAMA,EAAY,GAAK,IAAMA,EAAY,GAAK,IAAMA,EAAY,GAC7IE,EAAEN,IAAIzT,MAAM2U,YAAcb,EAe3BC,EAAEN,IAAIzT,MAAM2F,MAAQyL,EAAKiF,YACzBtC,EAAEN,IAAIzT,MAAMsW,KAAO,kBACnBvC,EAAEN,IAAIzT,MAAMuW,UAAY,SACxBxC,EAAEN,IAAIzT,MAAM+U,OAAS,UACrBhB,EAAEN,IAAI+C,YAAc,WACnBpF,EAAKrC,QAENgF,EAAEL,KAAK1T,MAAMyW,WAAarF,EAAK1G,aAAe,KAC9CqJ,EAAEL,KAAK6B,UAAY,GACnBxB,EAAEL,KAAKC,YAAYnd,EAAOH,SAASqgB,eAAetF,EAAKuF,YAGvDC,IACAC,IACAC,IAIIjgB,EAAIwR,OAAOC,OAASzR,EAAIwR,OAAOC,QAAU8I,GAC5Cva,EAAIsI,YAAYtI,EAAIwR,OAAOC,MAAM1O,cAAe/C,EAAIO,IAAI2f,iBAIzDlgB,EAAIwR,OAAOC,MAAQ8I,EAIfA,EAAK4F,YAAcxgB,EAAOH,SAAS4gB,KACtCpgB,EAAIuR,iBAEJvR,EAAI2S,cAAc4H,EAAM,EAAG,EAAG,YAAY,GAGvC2C,EAAEpK,KAAKuN,aAAe9F,EAAK4F,WAC9B5F,EAAK4F,UAAUrD,YAAYI,EAAEpK,MAG9B9S,EAAImI,SAASoS,EAAKxX,cAAe/C,EAAIO,IAAI2f,iBAI1C,SAASH,IAER,IAAIO,EAAWtgB,EAAIkV,eAAeqF,GAC9BnP,EAAI3B,KAAKC,MAAO6Q,EAAKlD,SAAS9J,EAAI,KAAQgN,EAAKlL,MAAQ,IACvDhE,EAAI5B,KAAKC,OAAO,EAAI6Q,EAAKlD,SAASiJ,GAAY,MAAQ/F,EAAKjL,OAAS,IACpEgO,EAAkB,EAAI/C,EAAKvF,mBAAqBuF,EAAKtF,iBAAmB,EAAIsF,EAAKgD,UACjFrG,GAAOzN,KAAKkE,MAAM2P,EAAiB,GAKvC,OAJAtd,EAAIwR,OAAO+J,MAAMpS,MAAMqC,KAAQJ,EAAI8L,EAAO,KAC1ClX,EAAIwR,OAAO+J,MAAMpS,MAAMsC,IAAOJ,EAAI6L,EAAO,KAGjClX,EAAIuT,iBAAiBgH,IAC7B,IAAK,IACJ,IAAIgG,EAAOvgB,EAAIwN,QAAQ+M,EAAKlD,SAAS9J,EAAG,IAAKgN,EAAKlD,SAAShK,GACvDmT,EAAOxgB,EAAIwN,QAAQ+M,EAAKlD,SAAS9J,EAAG,EAAGgN,EAAKlD,SAAShK,GACrD2L,EAAS,OACZvP,KAAKC,MAAM6W,EAAK,IAAM,IACtB9W,KAAKC,MAAM6W,EAAK,IAAM,IACtB9W,KAAKC,MAAM6W,EAAK,IAAM,IACnBtH,EAAS,OACZxP,KAAKC,MAAM8W,EAAK,IAAM,IACtB/W,KAAKC,MAAM8W,EAAK,IAAM,IACtB/W,KAAKC,MAAM8W,EAAK,IAAM,IACvBxgB,EAAIwR,OAAOuK,QAAQrD,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ0J,EAAQC,GAC9D,MACD,IAAK,IACJ,IAAIwH,EAAMzgB,EAAIwN,QAAQ+M,EAAKlD,SAAS9J,EAAGgN,EAAKlD,SAAS5J,EAAG,KACpDuL,EAAS,OACZvP,KAAKC,MAAM+W,EAAI,IAAM,IACrBhX,KAAKC,MAAM+W,EAAI,IAAM,IACrBhX,KAAKC,MAAM+W,EAAI,IAAM,IAClBxH,EAAS,OACbjZ,EAAIwR,OAAOuK,QAAQrD,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ0J,EAAQC,GAK/DjZ,EAAIwR,OAAO+K,SAAS7D,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQiL,EAAKmG,eAI7D,SAASV,IACR,IAAIW,EAAa3gB,EAAIuT,iBAAiBgH,GACtC,GAAIoG,EAAY,CAEf,IAAItV,EAAI5B,KAAKC,OAAO,EAAI6Q,EAAKlD,SAASsJ,GAAc,MAAQpG,EAAKjL,OAAS,IAC1EtP,EAAIwR,OAAO2K,SAAShT,MAAMsC,IAAOJ,GAAK,EAAIkP,EAAKvF,mBAAqBuF,EAAKtF,kBAAoBxL,KAAKkE,MAAM3N,EAAIO,IAAIke,iBAAmB,GAAM,KAI1Ize,EAAIwR,OAAO+K,SAAS7D,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQiL,EAAKmG,eAI7D,SAAST,IACR,IAAI5U,EAAI5B,KAAKC,OAAO,EAAI6Q,EAAKlD,SAAStN,IAAMwQ,EAAKjL,OAAS,IAC1DtP,EAAIwR,OAAOmL,UAAUxT,MAAMsC,IAAOJ,GAAK,EAAIkP,EAAKvF,mBAAqBuF,EAAKtF,kBAAoBxL,KAAKkE,MAAM3N,EAAIO,IAAIke,iBAAmB,GAAM,KAI3I,SAASmC,IACR,OAAO5gB,EAAIwR,QAAUxR,EAAIwR,OAAOC,QAAU8I,EAgG3C,GAx1CKrY,IACJA,EAAO,IAGRtC,KAAKyX,SAAW,CACf/N,EAAG,IACHC,EAAG,IACHC,EAAG,IACH+D,EAAG,EACHE,EAAG,EACHJ,EAAG,IACHtD,EAAG,GAKJnK,KAAKmO,OAAS,OACdnO,KAAK0E,WAAQhD,EACb1B,KAAKihB,WAAQvf,EACb1B,KAAKkhB,cAAWxf,EAChB1B,KAAKmhB,aAAUzf,EACf1B,KAAKohB,kBAAe1f,EACpB1B,KAAKqhB,kBAAe3f,EACpB1B,KAAKshB,oBAAiB5f,EACtB1B,KAAKia,gBAAkB,OACvBja,KAAKuhB,YAAc,GACnBvhB,KAAKwhB,eAAiB,EACtBxhB,KAAKyhB,UAAW,EAChBzhB,KAAK0hB,MAAO,EACZ1hB,KAAK2hB,WAAY,EACjB3hB,KAAK4hB,YAAa,EAIlB5hB,KAAKyP,MAAQ,IACbzP,KAAK0P,OAAS,IACd1P,KAAKuV,KAAO,MACZvV,KAAKka,aAAe,OACpBla,KAAKuR,SAAW,SAChBvR,KAAK2S,eAAgB,EACrB3S,KAAKyW,aAAc,EACnBzW,KAAK6hB,aAAc,EACnB7hB,KAAKyU,QAAU,GACfzU,KAAKgV,YAAc,GACnBhV,KAAKkY,iBAAmB,OACxBlY,KAAKmV,cAAgB,GACrBnV,KAAKkV,eAAiB,EACtBlV,KAAKqY,oBAAqB,EAC1BrY,KAAK0T,WAAa,GAClB1T,KAAK2d,UAAY,EACjB3d,KAAKgU,aAAc,EACnBhU,KAAKkgB,UAAY,QACjBlgB,KAAK4f,YAAc,gBACnB5f,KAAKiU,aAAe,GACpBjU,KAAK+T,QAAU,GACf/T,KAAKme,gBAAkB,sBACvBne,KAAKwU,YAAc,EACnBxU,KAAKke,YAAc,sBACnBle,KAAK6d,aAAe,EACpB7d,KAAKuT,mBAAqB,EAC1BvT,KAAKqe,mBAAqB,sBAC1Bre,KAAKoT,QAAS,EACdpT,KAAKiT,WAAa,GAClBjT,KAAKqT,YAAc,kBACnBrT,KAAK0e,aAAe,mBACpB1e,KAAKoV,mBAAqB,EAC1BpV,KAAKye,mBAAqB,sBAC1Bze,KAAKqV,iBAAmB,EACxBrV,KAAKge,OAAS,IACdhe,KAAKugB,eAAY7e,EAIjB1B,KAAK8hB,KAAO,EACZ9hB,KAAK+hB,KAAO,IACZ/hB,KAAKgiB,KAAO,EACZhiB,KAAKiiB,KAAO,IACZjiB,KAAKkiB,KAAO,EACZliB,KAAKmiB,KAAO,EAOZniB,KAAK6a,OAAS,WACb,IAAKxV,UAAU9D,OACd,MAAM,IAAIzB,MAAM,uBAGjB,GAAyB,IAArBuF,UAAU9D,QAAwC,iBAAjB8D,UAAU,GAAiB,CAE/D,IACC,OAAO4V,EAAU5V,UAAU,IAC1B,MAAO5C,GACRN,QAAQC,KAAKK,GAEd,OAAO,EAED,GAAI4C,UAAU9D,QAAU,GAA6B,iBAAjB8D,UAAU,GAAiB,CAErE,IACC,IAAKuV,EAAUvV,UAAU,GAAIA,UAAU,IACtC,OAAO,EAEP,MAAO5C,GAER,OADAN,QAAQC,KAAKK,IACN,EAIR,OAFAzC,KAAKoiB,SACLpiB,KAAKqiB,eACE,EAED,GAAyB,IAArBhd,UAAU9D,QAAwC,iBAAjB8D,UAAU,GAAiB,CAEtE,IAAI/C,EAAO+C,UAAU,GACjBid,GAAU,EACd,IAAK,IAAIC,KAAOjgB,EACf,GAAIA,EAAKiD,eAAegd,GACvB,IACM3H,EAAU2H,EAAKjgB,EAAKigB,MACxBD,GAAU,GAEV,MAAO7f,GACRN,QAAQC,KAAKK,GACb6f,GAAU,EAMb,OAFAtiB,KAAKoiB,SACLpiB,KAAKqiB,cACEC,EAGR,MAAM,IAAIxiB,MAAM,sBAOjBE,KAAKwiB,QAAU,SAAU3c,EAAMnB,GAC9B,GAAoB,iBAATmB,EACV,MAAM,IAAI/F,MAAM,mCAAqC+F,GAGtD,QAAcnE,IAAVgD,EAEH,OAAK1E,KAAKyX,SAASlS,eAAeM,EAAKjE,eAIhC5B,KAAKyX,SAAS5R,EAAKjE,gBAHzBO,QAAQC,KAAK,4BAA8ByD,IACpC,GAMR,IAAI4c,GAAM,EACV,OAAQ5c,EAAKjE,eACZ,IAAK,IAAK6gB,EAAMziB,KAAKoY,SAAS1T,EAAO,KAAM,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAKoY,SAAS,KAAM1T,EAAO,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAKoY,SAAS,KAAM,KAAM1T,EAAO,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAShT,EAAO,KAAM,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAS,KAAMhT,EAAO,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAS,KAAM,KAAMhT,EAAO,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAS,KAAM,KAAM,KAAMhT,GAAQ,MACxD,QAEC,OADAvC,QAAQC,KAAK,4BAA8ByD,IACpC,EAET,QAAI4c,IACHziB,KAAKoiB,UACE,IAcVpiB,KAAK6V,QAAU,SAAUD,GAExB,IADA,IAAI8M,EAAMtiB,EAAI6H,QAAQ2N,GACbtU,EAAI,EAAGA,EAAIohB,EAAInhB,OAAQD,GAAK,EAAG,CACvC,IAAI8F,EAAKsb,EAAIphB,GAAGM,cAGZ+gB,EAAe,KACnB,OAAQvb,GACP,IAAK,QAASub,EAAe,UAAW,MACxC,IAAK,SAAUA,EAAe,WAE3BA,GACHviB,EAAIoV,gBAAgBxV,KAAM2iB,GAI3BviB,EAAIqH,kBAAkBzH,KAAKohB,aAAcha,GAAI,GAAM,KAUrDpH,KAAK0X,SAAW,SAAU/J,EAAGE,EAAGJ,EAAGtD,EAAGyP,GAMrC,QALUlY,IAANiM,IAAmBA,EAAI,WACjBjM,IAANmM,IAAmBA,EAAI,WACjBnM,IAAN+L,IAAmBA,EAAI,WACjB/L,IAANyI,IAAmBA,EAAI,MAEjB,OAANwD,EAAY,CACf,GAAIiV,MAAMjV,GAAM,OAAO,EACvB3N,KAAKyX,SAAS9J,EAAI9D,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKG,IAE7C,GAAU,OAANE,EAAY,CACf,GAAI+U,MAAM/U,GAAM,OAAO,EACvB7N,KAAKyX,SAAS5J,EAAIhE,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKxN,KAAK+hB,KAAMlU,GAAI7N,KAAK8hB,MAEjE,GAAU,OAANrU,EAAY,CACf,GAAImV,MAAMnV,GAAM,OAAO,EACvBzN,KAAKyX,SAAShK,EAAI5D,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKxN,KAAKiiB,KAAMxU,GAAIzN,KAAKgiB,MAEjE,GAAU,OAAN7X,EAAY,CACf,GAAIyY,MAAMzY,GAAM,OAAO,EACvBnK,KAAKyX,SAAStN,EAAInK,KAAK4T,kBACtB/J,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,EAAGxN,KAAKmiB,KAAMhY,GAAInK,KAAKkiB,MAC5C,EAGF,IAAIrB,EAAMzgB,EAAIwN,QACb5N,KAAKyX,SAAS9J,EACd3N,KAAKyX,SAAS5J,EACd7N,KAAKyX,SAAShK,GAOf,OALAzN,KAAKyX,SAAS/N,EAAImX,EAAI,GACtB7gB,KAAKyX,SAAS9N,EAAIkX,EAAI,GACtB7gB,KAAKyX,SAAS7N,EAAIiX,EAAI,GAEtB7gB,KAAKqiB,YAAYzI,IACV,GASR5Z,KAAKoY,SAAW,SAAU1O,EAAGC,EAAGC,EAAGO,EAAGyP,GAMrC,QALUlY,IAANgI,IAAmBA,EAAI,WACjBhI,IAANiI,IAAmBA,EAAI,WACjBjI,IAANkI,IAAmBA,EAAI,WACjBlI,IAANyI,IAAmBA,EAAI,MAEjB,OAANT,EAAY,CACf,GAAIkZ,MAAMlZ,GAAM,OAAO,EACvBA,EAAIG,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAK9D,IAE/B,GAAU,OAANC,EAAY,CACf,GAAIiZ,MAAMjZ,GAAM,OAAO,EACvBA,EAAIE,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAK7D,IAE/B,GAAU,OAANC,EAAY,CACf,GAAIgZ,MAAMhZ,GAAM,OAAO,EACvBA,EAAIC,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAK5D,IAE/B,GAAU,OAANO,EAAY,CACf,GAAIyY,MAAMzY,GAAM,OAAO,EACvBnK,KAAKyX,SAAStN,EAAInK,KAAK4T,kBACtB/J,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,EAAGxN,KAAKmiB,KAAMhY,GAAInK,KAAKkiB,MAC5C,EAGF,IAAIW,EAAMziB,EAAImN,QACT,OAAJ7D,EAAW1J,KAAKyX,SAAS/N,EAAIA,EACzB,OAAJC,EAAW3J,KAAKyX,SAAS9N,EAAIA,EACzB,OAAJC,EAAW5J,KAAKyX,SAAS7N,EAAIA,GAEf,OAAXiZ,EAAI,KACP7iB,KAAKyX,SAAS9J,EAAI9D,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKqV,EAAI,MAElC,IAAXA,EAAI,KACP7iB,KAAKyX,SAAS5J,EAAIhE,KAAK6D,IAAI,EAAG1N,KAAK8hB,KAAMjY,KAAK2D,IAAI,IAAKxN,KAAK+hB,KAAMc,EAAI,MAEvE7iB,KAAKyX,SAAShK,EAAI5D,KAAK6D,IAAI,EAAG1N,KAAKgiB,KAAMnY,KAAK2D,IAAI,IAAKxN,KAAKiiB,KAAMY,EAAI,KAGtE,IAAIhC,EAAMzgB,EAAIwN,QAAQ5N,KAAKyX,SAAS9J,EAAG3N,KAAKyX,SAAS5J,EAAG7N,KAAKyX,SAAShK,GAMtE,OALAzN,KAAKyX,SAAS/N,EAAImX,EAAI,GACtB7gB,KAAKyX,SAAS9N,EAAIkX,EAAI,GACtB7gB,KAAKyX,SAAS7N,EAAIiX,EAAI,GAEtB7gB,KAAKqiB,YAAYzI,IACV,GAMR5Z,KAAK8iB,QAAU,SAAUnV,EAAGE,EAAGJ,EAAGmM,GAEjC,OADAzX,QAAQC,KAAK,4DAA8DhC,EAAIiC,SACxErC,KAAK0X,SAAS/J,EAAGE,EAAGJ,EAAG,KAAMmM,IAMrC5Z,KAAK+iB,QAAU,SAAUrZ,EAAGC,EAAGC,EAAGgQ,GAEjC,OADAzX,QAAQC,KAAK,4DAA8DhC,EAAIiC,SACxErC,KAAKoY,SAAS1O,EAAGC,EAAGC,EAAG,KAAMgQ,IAIrC5Z,KAAKgjB,WAAa,SAAUtgB,EAAKkX,GAChC,IAAK5Z,KAAKyhB,UAA2B,KAAf/e,EAAIH,OAIzB,OAFAvC,KAAKijB,oBAAoB,MACzBjjB,KAAKkjB,qBAAqB,KACnB,EAGR,IAAIhU,EAAQ9O,EAAI4N,iBAAiBtL,GACjC,QAAKwM,IAG6B,QAA9BlP,KAAKmO,OAAOvM,gBACf5B,KAAKgY,WAAW9I,EAAMf,QACjB/N,EAAIgP,cAAcpP,KAAKiY,eAC3B/I,EAAMhB,KAAK,GAAK,IAGlBlO,KAAKoY,SACJlJ,EAAMhB,KAAK,GACXgB,EAAMhB,KAAK,GACXgB,EAAMhB,KAAK,GACXgB,EAAMhB,KAAK,GACX0L,IAEM,IAIR5Z,KAAK+J,SAAW,SAAUoE,GAIzB,YAHezM,IAAXyM,IACHA,EAASnO,KAAKiY,aAEP9J,EAAOvM,eACd,IAAK,MAAO,OAAO5B,KAAK8gB,cACxB,IAAK,OAAQ,OAAO9gB,KAAKmjB,eACzB,IAAK,MAAO,OAAOnjB,KAAKojB,cACxB,IAAK,OAAQ,OAAOpjB,KAAKqjB,eAE1B,OAAO,GAIRrjB,KAAK8gB,YAAc,WAClB,OAAO1gB,EAAIqJ,SACVzJ,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,IAKhB5J,KAAKmjB,aAAe,WACnB,OAAO/iB,EAAI8J,UACVlK,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,EACd5J,KAAKyX,SAAStN,IAKhBnK,KAAKojB,YAAc,WAClB,OAAOhjB,EAAIgK,SACVpK,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,IAKhB5J,KAAKqjB,aAAe,WACnB,OAAOjjB,EAAIiK,UACVrK,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,EACd5J,KAAKyX,SAAStN,IAKhBnK,KAAKsjB,YAAc,WAClB,MACC,KAAQtjB,KAAKyX,SAAS/N,EACtB,KAAQ1J,KAAKyX,SAAS9N,EACtB,KAAQ3J,KAAKyX,SAAS7N,GAKxB5J,KAAKujB,SAAW,WACf,OAAOnjB,EAAIyP,sBAAsB7P,KAAKqjB,gBAAgB/T,QAIvDtP,KAAKsf,UAAY,WAChB,OAAOtf,KAAKujB,WAAWjE,aAIxBtf,KAAKwjB,aAAe,WACnB,OAAOpjB,EAAIO,IAAIiK,WAAW5K,KAAKqjB,iBAIhCrjB,KAAKyjB,QAAU,WACd,OAAOzjB,KAAKsjB,cAAgB,OAI7BtjB,KAAKsY,KAAO,WACP0I,MAmVJ5gB,EAAIsI,YAAYiS,EAAKxX,cAAe/C,EAAIO,IAAI2f,iBAC5ClgB,EAAIwR,OAAOsB,KAAKuN,WAAWrc,YAAYhE,EAAIwR,OAAOsB,aAC3C9S,EAAIwR,OAAOC,QA/UnB7R,KAAK2W,KAAO,WACXwE,KAIDnb,KAAKoiB,OAAS,WACTpB,KACH7F,KAKFnb,KAAKiY,UAAY,WAChB,OAAOjY,KAAK0jB,gBAIb1jB,KAAKgY,WAAa,SAAU7J,GAC3BnO,KAAK0jB,eAAiBvV,EAAOvM,eAI9B5B,KAAK4T,gBAAkB,WACtB,MAA0B,SAAtB5T,KAAKka,aAEuB,QAA9Bla,KAAKmO,OAAOvM,eACZxB,EAAIgP,cAAcpP,KAAKiY,mBACRvW,IAAf1B,KAAKihB,YACiBvf,IAAtB1B,KAAKqhB,aAIArhB,KAAKka,cAIbla,KAAK2jB,kBAAoB,SAAUjhB,GAC7B1C,KAAKgjB,WAAWtgB,IAEpB1C,KAAKqiB,eAKPriB,KAAK4jB,kBAAoB,SAAUlhB,GAC7B1C,KAAK0X,SAAS,KAAM,KAAM,KAAM9I,WAAWlM,KAE/C1C,KAAKqiB,eAKPriB,KAAKqiB,YAAc,SAAUzI,GAC5B,IAAIiK,EAAW7jB,KAAK+J,WAChB6O,EAAM5Y,KAAKiY,YAaf,GAVA7X,EAAI4F,YAAYhG,KAAKmD,cAAe,gBAAiB0gB,GAE/CjK,EAAQxZ,EAAIwZ,MAAMC,aAAe7Z,KAAKohB,eAC/B,QAARxI,GAAyB,SAARA,IACf5Y,KAAK2hB,YAAakC,EAAWA,EAASjiB,eACtC5B,KAAK0hB,OAAQmC,EAAWA,EAAS3b,QAAQ,KAAM,MAErDlI,KAAKkjB,qBAAqBW,MAGrBjK,EAAQxZ,EAAIwZ,MAAME,aAAe9Z,KAAKqhB,aAAc,CACzD,IAAIyC,EAAWja,KAAKC,MAAwB,IAAlB9J,KAAKyX,SAAStN,GAAW,IACnDnK,KAAK+jB,qBAAqBD,GAGrBlK,EAAQxZ,EAAIwZ,MAAMG,eAAiB/Z,KAAKshB,kBAI5ClhB,EAAIiE,YAAYrE,KAAKshB,iBACpBlhB,EAAIkE,SAAStE,KAAKshB,kBAAoBlhB,EAAIqE,cAAczE,KAAKshB,kBAEjDthB,KAAKia,gBAGnBja,KAAKijB,oBAAoBjjB,KAAKqjB,iBAG3BrC,MACHb,IACAC,IACAC,MAKFrgB,KAAKijB,oBAAsB,SAAU/T,GACpC,GAAKlP,KAAKshB,eAAV,CAIA,IAAI/P,EAAW,KACX9B,EAAQ,MAEXrP,EAAIiE,YAAYrE,KAAKshB,iBACpBlhB,EAAIkE,SAAStE,KAAKshB,kBAAoBlhB,EAAIqE,cAAczE,KAAKshB,mBAE9D/P,EAAWvR,KAAKia,gBAChBxK,EAAQzP,KAAKuhB,aAGd,IAAIyC,EAAc,GAElB,GAAK9U,EASE,CAEN8U,EAAY5gB,KAAK,CAChB6gB,MAAO7jB,EAAIkR,wBACVpC,EACAqC,EACA9B,EAAQA,EAAQrP,EAAIO,IAAIuP,iBAAiB3O,OAAS,MAEnDgQ,SAAU,WACV2S,KAAM,OACNC,OAAQ5S,EAAW,WAAa,SAChC6S,OAAQ,gBAIT,IAAIC,EAAUjkB,EAAIyP,sBACjB,gBACA0B,EAAW,CAAC3F,KAAO,QAAS6F,MAAQ,QAAQF,GAAY,KACxD9B,GACA,GAEDuU,EAAY5gB,KAAK,CAChB6gB,MAAO,QAAWI,EAAQ/U,OAAOgQ,YAAc,KAC/C/N,UAAWA,GAAY,QAAU,OACjC2S,KAAMG,EAAQ5U,MAAQ,MAAQ4U,EAAQ3U,OAAS,KAC/CyU,OAAQ5S,EAAW,WAAa,SAChC6S,OAAQ,qBAjCTJ,EAAY5gB,KAAK,CAChB6gB,MAAO,OACP1S,SAAU,WACV2S,KAAM,OACNC,OAAQ,YACRC,OAAQ,gBAuCV,IAPA,IAAIE,EAAK,CACRL,MAAO,GACP1S,SAAU,GACV2S,KAAM,GACNC,OAAQ,GACRC,OAAQ,IAEA9iB,EAAI,EAAGA,EAAI0iB,EAAYziB,OAAQD,GAAK,EAC5CgjB,EAAGL,MAAM7gB,KAAK4gB,EAAY1iB,GAAG2iB,OAC7BK,EAAG/S,SAASnO,KAAK4gB,EAAY1iB,GAAGiQ,UAChC+S,EAAGJ,KAAK9gB,KAAK4gB,EAAY1iB,GAAG4iB,MAC5BI,EAAGH,OAAO/gB,KAAK4gB,EAAY1iB,GAAG6iB,QAC9BG,EAAGF,OAAOhhB,KAAK4gB,EAAY1iB,GAAG8iB,QAI/B,IAAIG,EAAM,CACTC,mBAAoBF,EAAGL,MAAMjZ,KAAK,MAClCyZ,sBAAuBH,EAAG/S,SAASvG,KAAK,MACxC0Z,kBAAmBJ,EAAGJ,KAAKlZ,KAAK,MAChC2Z,oBAAqBL,EAAGH,OAAOnZ,KAAK,MACpC4Z,oBAAqBN,EAAGF,OAAOpZ,KAAK,OAErC5K,EAAI4I,SAAShJ,KAAKshB,eAAgBiD,EAAKvkB,KAAK4hB,YAI5C,IAAI7N,EAAU,CACbnI,KAAM,KACN6F,MAAO,MAEJF,IACHwC,EAAQxC,GAAavR,KAAKuhB,YAAcvhB,KAAKwhB,eAAkB,MAG5D+C,EAAM,CACTM,eAAgB9Q,EAAQnI,KACxBkZ,gBAAiB/Q,EAAQtC,OAE1BrR,EAAI4I,SAAShJ,KAAKshB,eAAgBiD,EAAKvkB,KAAK4hB,YAAY,KAIzD5hB,KAAKkjB,qBAAuB,SAAUxgB,GACjC1C,KAAKohB,eACgC,UAApChhB,EAAI6D,SAASjE,KAAKohB,cACrBphB,KAAKohB,aAAa1c,MAAQhC,EAE1B1C,KAAKohB,aAAatC,UAAYpc,IAMjC1C,KAAK+jB,qBAAuB,SAAUrhB,GACjC1C,KAAKqhB,eACgC,UAApCjhB,EAAI6D,SAASjE,KAAKqhB,cACrBrhB,KAAKqhB,aAAa3c,MAAQhC,EAE1B1C,KAAKqhB,aAAavC,UAAYpc,IAMjC1C,KAAKob,4BAA8B,WAClC,IAAIpb,KAAK+kB,yBAAT,CACA/kB,KAAK+kB,0BAA2B,EAEhC,IAAI5kB,EAAMH,KAAKmD,cACf,EAAG,CAGF,IAAI6hB,EAAY5kB,EAAIyI,aAAa1I,GAC7B6kB,EAAUzT,UAAiD,UAArCyT,EAAUzT,SAAS3P,gBAC5C5B,KAAKiS,OAAQ,GAGV9R,IAAQH,KAAKmD,gBAMX/C,EAAIuF,QAAQxF,EAAK,uBACrBA,EAAIO,iBAAiB,SAAUN,EAAImW,gBAAgB,GACnDnW,EAAIqD,QAAQtD,EAAK,qBAAqB,YAG/BA,EAAMA,EAAIsgB,aAAqC,SAAtBrgB,EAAI6D,SAAS9D,MAIjDH,KAAKoW,QAAU,WACVpW,KAAK6hB,aACR7hB,KAAKsY,QAKPtY,KAAKilB,aAAe,SAAUnhB,GAC7B9D,KAAKyU,QAAU3Q,EACf9D,KAAK+U,SAAW3U,EAAIyO,kBAAkB/K,GACtC9D,KAAKmY,wBAA0B/X,EAAI+O,wBAAwBnP,KAAK+U,WAuqB7D3U,EAAIO,IAAIukB,QAEX,IAAK,IAAI3C,KAAOniB,EAAIO,IAAIukB,QACvB,GAAI9kB,EAAIO,IAAIukB,QAAQ3f,eAAegd,GAClC,IACC3H,EAAU2H,EAAKniB,EAAIO,IAAIukB,QAAQ3C,IAC9B,MAAO9f,GACRN,QAAQC,KAAKK,GASjB,IAAI0iB,EAAa,GAEb7iB,EAAK8iB,SACmB,iBAAhB9iB,EAAK8iB,OACfD,EAAa7iB,EAAK8iB,OAAOjd,MAAM,OACrB2C,MAAMkE,QAAQ1M,EAAK8iB,QAC7BD,EAAa7iB,EAAK8iB,OAAOC,QAEzBljB,QAAQC,KAAK,+BAKwB,IAAnC+iB,EAAW3gB,QAAQ,YACtB2gB,EAAW/hB,KAAK,WAKjB,IAAK,IAAI9B,EAAI6jB,EAAW5jB,OAAS,EAAGD,GAAK,EAAGA,GAAK,EAAG,CACnD,IAAIgkB,EAAOH,EAAW7jB,GACtB,GAAKgkB,EAGL,GAAKllB,EAAIO,IAAI4kB,QAAQhgB,eAAe+f,IAIpC,IAAK,IAAI/C,KAAOniB,EAAIO,IAAI4kB,QAAQD,GAC/B,GAAIllB,EAAIO,IAAI4kB,QAAQD,GAAM/f,eAAegd,GACxC,IACC3H,EAAU2H,EAAKniB,EAAIO,IAAI4kB,QAAQD,GAAM/C,IACpC,MAAO9f,GACRN,QAAQC,KAAKK,SARfN,QAAQC,KAAK,qBAAsBkjB,GAgBrC,IAAIE,EAAgB,CAEnB,UAED,IAAK,IAAIjD,KAAOjgB,EACf,GAAIA,EAAKiD,eAAegd,KACa,IAAhCiD,EAAchhB,QAAQ+d,GACzB,IACC3H,EAAU2H,EAAKjgB,EAAKigB,IACnB,MAAO9f,GACRN,QAAQC,KAAKK,GAoBjB,QAPuBf,IAAnB1B,KAAKugB,UACRvgB,KAAKugB,UAAYxgB,EAAOH,SAAS4gB,KAGjCxgB,KAAKugB,UAAYngB,EAAIY,KAAKhB,KAAKugB,YAG3BvgB,KAAKugB,UACT,MAAM,IAAIzgB,MAAM,+DAOjB,GAFAE,KAAKmD,cAAgB/C,EAAIY,KAAKmC,IAEzBnD,KAAKmD,cAAe,CAExB,GAA6B,iBAAlBA,GAA8B,qBAAqBsiB,KAAKtiB,GAGlE,MAAM,IAAIrD,MAAM,OADCqD,EACsB,2CADtBA,EACkF,gCAGpG,MAAM,IAAIrD,MAAM,4DAGjB,GAAIE,KAAKmD,cAAc9C,SAAWL,KAAKmD,cAAc9C,mBAAmBD,EAAIO,IAC3E,MAAM,IAAIb,MAAM,kDAajB,GARAE,KAAKmD,cAAc9C,QAAUL,KAC7BI,EAAImI,SAASvI,KAAKmD,cAAe/C,EAAIO,IAAIoB,WAGzC3B,EAAIG,UAAU6C,KAAKpD,MAIfI,EAAIkE,SAAStE,KAAKmD,iBAEyB,WAA1CnD,KAAKmD,cAAcxB,KAAKC,gBAG3B5B,KAAKmD,cAAcxB,KAAO,UAGvBvB,EAAIqE,cAAczE,KAAKmD,gBAAgB,CAK1C/C,EAAI8D,eAAelE,KAAKmD,eAGxBnD,KAAKmD,cAAc+Z,YAAYnd,EAAOH,SAASqgB,eAAe,MAG9D,IAAI+E,EAAY5kB,EAAIyI,aAAa7I,KAAKmD,gBACnByL,WAAWoW,EAAU,eAAiB,GACtChlB,KAAKuhB,aACvBnhB,EAAI4I,SAAShJ,KAAKmD,cAAe,CAChCuiB,YAAa1lB,KAAKuhB,YAAc,MAC9BvhB,KAAK4hB,YAsCX,QAhC0BlgB,IAAtB1B,KAAKohB,aACJhhB,EAAIiE,YAAYrE,KAAKmD,iBAExBnD,KAAKohB,aAAephB,KAAKmD,eAKM,OAAtBnD,KAAKohB,eAIfphB,KAAKohB,aAAehhB,EAAIY,KAAKhB,KAAKohB,eAI/BphB,KAAKqhB,eACRrhB,KAAKqhB,aAAejhB,EAAIY,KAAKhB,KAAKqhB,oBAIP3f,IAAxB1B,KAAKshB,eACRthB,KAAKshB,eAAiBthB,KAAKmD,cAEO,OAAxBnD,KAAKshB,iBAIfthB,KAAKshB,eAAiBlhB,EAAIY,KAAKhB,KAAKshB,iBAIjCthB,KAAKohB,cAAgBhhB,EAAIiE,YAAYrE,KAAKohB,cAAe,CAI5D,IAAIuE,EAAyB,CAC5BxE,QAASnhB,KAAKohB,aAAawE,SAE5B5lB,KAAKohB,aAAawE,QAAU,KAE5B5lB,KAAKohB,aAAa1gB,iBAAiB,WA3RpC,SAAyB0G,GACC,UAArBhH,EAAIsH,SAASN,KACZuT,EAAKyG,cACRzG,EAAKgJ,kBAAkBhJ,EAAKyG,aAAa1c,OAE1CiW,EAAKvE,cAsRwD,GAC9DpW,KAAKohB,aAAa1gB,iBAAiB,UAxQpC,SAAwB0G,GACvB,IAAIhH,EAAIuF,QAAQyB,EAAI,YAApB,CAIA,IAAIye,EAASlL,EAAKyG,aAAa1c,MAE/BiW,EAAKgJ,kBAAkBhJ,EAAKyG,aAAa1c,OAEzCtE,EAAIoV,gBAAgBmF,EAAM,YAEtBA,EAAKyG,aAAa1c,QAAUmhB,GAE/BzlB,EAAIqH,kBAAkBkT,EAAKyG,aAAc,UAAU,GAAM,OA2PE,GAC5DphB,KAAKohB,aAAa1gB,iBAAiB,SAlOpC,SAAuB0G,GAClBhH,EAAIuF,QAAQyB,EAAI,cAIhBuT,EAAKyG,cACRzG,EAAKqI,WAAWrI,EAAKyG,aAAa1c,MAAOtE,EAAIwZ,MAAMC,YAGpDzZ,EAAIoV,gBAAgBmF,EAAM,eAyNgC,GAEtDgL,EAAuBxE,SAC1BnhB,KAAKohB,aAAa1gB,iBAAiB,QAASilB,EAAuBxE,SAAS,GAG7EnhB,KAAKohB,aAAalc,aAAa,eAAgB,OAC/ClF,KAAKohB,aAAalc,aAAa,cAAe,OAC9ClF,KAAKohB,aAAalc,aAAa,iBAAkB,OACjDlF,KAAKohB,aAAalc,aAAa,cAAc,GAI1ClF,KAAKqhB,cAAgBjhB,EAAIiE,YAAYrE,KAAKqhB,gBAC7CrhB,KAAKqhB,aAAa3gB,iBAAiB,WAjSpC,SAAyB0G,GACC,UAArBhH,EAAIsH,SAASN,KACZuT,EAAK0G,cACR1G,EAAKiJ,kBAAkBjJ,EAAK0G,aAAa3c,OAE1CiW,EAAKvE,cA4RwD,GAC9DpW,KAAKqhB,aAAa3gB,iBAAiB,UAtQpC,SAAwB0G,GACvB,IAAIhH,EAAIuF,QAAQyB,EAAI,YAApB,CAIA,IAAIye,EAASlL,EAAK0G,aAAa3c,MAE/BiW,EAAKiJ,kBAAkBjJ,EAAK0G,aAAa3c,OAEzCtE,EAAIoV,gBAAgBmF,EAAM,YAG1Bva,EAAIqH,kBAAkBkT,EAAKyG,aAAc,UAAU,GAAM,GAErDzG,EAAK0G,aAAa3c,QAAUmhB,GAE/BzlB,EAAIqH,kBAAkBkT,EAAK0G,aAAc,UAAU,GAAM,OAsPE,GAC5DrhB,KAAKqhB,aAAa3gB,iBAAiB,SAlOpC,SAAuB0G,GAClBhH,EAAIuF,QAAQyB,EAAI,cAIhBuT,EAAK0G,cACR1G,EAAKjD,SAAS,KAAM,KAAM,KAAM9I,WAAW+L,EAAK0G,aAAa3c,OAAQtE,EAAIwZ,MAAME,YAGhF1Z,EAAIoV,gBAAgBmF,EAAM,WAG1Bva,EAAIqH,kBAAkBkT,EAAKyG,aAAc,SAAS,GAAM,OAsNE,GAE1DphB,KAAKqhB,aAAanc,aAAa,eAAgB,OAC/ClF,KAAKqhB,aAAanc,aAAa,cAAe,OAC9ClF,KAAKqhB,aAAanc,aAAa,iBAAkB,OACjDlF,KAAKqhB,aAAanc,aAAa,cAAc,IAK9C,IAAI4gB,EAAY,cAEGpkB,IAAf1B,KAAK0E,MACRohB,EAAY9lB,KAAK0E,MACP1E,KAAKohB,mBAA4C1f,IAA5B1B,KAAKohB,aAAa1c,QACjDohB,EAAY9lB,KAAKohB,aAAa1c,OAK/B,IAAIqhB,OAAYrkB,EAYhB,QAVmBA,IAAf1B,KAAKihB,MACR8E,EAAa,GAAG/lB,KAAKihB,MACXjhB,KAAKqhB,mBAA4C3f,IAA5B1B,KAAKqhB,aAAa3c,QACjDqhB,EAAY/lB,KAAKqhB,aAAa3c,OAK/B1E,KAAK0jB,eAAiB,KAElB,CAAC,OAAQ,OAAOlf,QAAQxE,KAAKmO,OAAOvM,gBAAkB,EAAG,CAE5D,IAAIsN,EAAQ9O,EAAI4N,iBAAiB8X,GACjC9lB,KAAK0jB,eAAiBxU,EAAQA,EAAMf,OAAS,WAG7CnO,KAAK0jB,eAAiB1jB,KAAKmO,OAAOvM,cAKnC5B,KAAK2jB,kBAAkBmC,QAOLpkB,IAAdqkB,GACH/lB,KAAK4jB,kBAAkBmC,MAkBtBplB,IAAIoB,UAAY,UAIpB3B,EAAIO,IAAI2f,gBAAkB,iBAK1BlgB,EAAIO,IAAImC,WAAY,EAIpB1C,EAAIO,IAAI4kB,QAAU,GAGlBnlB,EAAIO,IAAI4kB,QAAiB,QAAI,GAE7BnlB,EAAIO,IAAI4kB,QAAe,MAAI,CAC1BpH,gBAAiB,sBACjBE,mBAAoB,sBACpBuB,YAAa,iBAEdxf,EAAIO,IAAI4kB,QAAc,KAAI,CACzBpH,gBAAiB,mBACjBE,mBAAoB,sBACpBuB,YAAa,uBAGdxf,EAAIO,IAAI4kB,QAAe,MAAI,CAAE9V,MAAM,IAAKC,OAAO,IAAKqE,QAAQ,GAAIL,WAAW,GAAIsB,YAAY,GAC3F5U,EAAIO,IAAI4kB,QAAgB,OAAI,CAAE9V,MAAM,IAAKC,OAAO,IAAKqE,QAAQ,GAAIL,WAAW,GAAIsB,YAAY,IAC5F5U,EAAIO,IAAI4kB,QAAe,MAAI,CAAE9V,MAAM,IAAKC,OAAO,IAAKqE,QAAQ,GAAIL,WAAW,GAAIsB,YAAY,IAE3F5U,EAAIO,IAAI4kB,QAAc,KAAI,CAAE/Q,YAAY,EAAGjB,mBAAmB,EAAG6B,mBAAmB,GACpFhV,EAAIO,IAAI4kB,QAAe,MAAI,CAAE/Q,YAAY,EAAGjB,mBAAmB,EAAG6B,mBAAmB,GAIrFhV,EAAIO,IAAIke,iBAAmB,EAG3Bze,EAAIO,IAAIyP,eAAiB,EACzBhQ,EAAIO,IAAI2P,iBAAmB,UAC3BlQ,EAAIO,IAAI6P,iBAAmB,UAG3BpQ,EAAIO,IAAIuP,iBAAmB,CAAC,wBAAyB,yBAIrD9P,EAAIO,IAAIC,KAAO,WACd,IAAIR,EAAIE,YAgBR,IAXAP,EAAOH,SAASc,iBAAiB,YAAaN,EAAIoW,qBAAqB,GACvEzW,EAAOH,SAASc,iBAAiB,QAASN,EAAI+V,iBAAiB,GAC/DpW,EAAOW,iBAAiB,SAAUN,EAAIiW,gBAAgB,GACtDtW,EAAOW,iBAAiB,SAAUN,EAAIkW,gBAAgB,GAGtDlW,EAAIO,IAAIqlB,UAER5lB,EAAIE,aAAc,EAGXF,EAAII,WAAWe,QACVnB,EAAII,WAAWylB,OAC1B5f,IAMFjG,EAAIO,IAAIqlB,QAAU,SAAUjlB,GAC3B,IAAIuhB,GAAU,EAEd,IACCliB,EAAIS,kBAAkB,iBAAkBE,GACvC,MAAO0B,GACR6f,GAAU,EACVngB,QAAQC,KAAKK,GAId,GAAIrC,EAAIO,IAAIU,YACX,IACCjB,EAAIS,kBAEF,SAAWT,EAAIO,IAAIU,YAAnB,YACYjB,EAAIO,IAAIU,YAErBN,GAEA,MAAO0B,IAGV,OAAO6f,GAMRliB,EAAIO,IAAIulB,MAAQ,SAAU7f,GACzB,MAAoB,mBAATA,GACVlE,QAAQC,KAAK,mCACN,IAGJhC,EAAIE,YACP+F,IAEAjG,EAAII,WAAW4C,KAAKiD,IAEd,IASRjG,EAAIO,IAAIkV,QAAU,SAAUD,GAC3B,IAAIuQ,EAAa,WAChB/lB,EAAIuV,cAAcC,IAGfxV,EAAIE,YACP6lB,IAEA/lB,EAAIO,IAAIulB,MAAMC,IAMhB/lB,EAAIO,IAAI2X,KAAO,WACVlY,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMyG,QAMnBlY,EAAIO,IAAIoe,WAAa,SAAU7P,GAK9B,OAJKA,IACJA,EAAQ,iBAEK9O,EAAIyP,sBAAsBX,GACzBI,OAAOgQ,aAKvBlf,EAAIO,IAAIiK,WAAa,SAAUsE,GAC9B,IAAI8U,EAAc,GAGlBA,EAAY5gB,KAAKhD,EAAIkR,wBAAwBpC,IAG7C,IAAImV,EAAUjkB,EAAIyP,wBAOlB,OANAmU,EAAY5gB,KAAK,CAChB,QAAWihB,EAAQ/U,OAAOgQ,YAAc,KACxC,WACA,UACCtU,KAAK,MAEAgZ,EAAYhZ,KAAK,OAYzB5K,EAAIO,IAAIukB,QAAU,GAUlB9kB,EAAIO,IAAIU,YAAc,UAMtBjB,EAAIO,IAAIylB,mBAAqB,WAE5B,OADAjkB,QAAQuT,MAAM,qGAAuGtV,EAAIiC,UAClH,GAIRjC,EAAIK,WAGGL,EAAIO,KAaX,YAP8B,IAAnBZ,EAAOM,UACjBN,EAAOM,QAAUN,EAAOsmB,QAAUhmB,GAM5BA,OAUOimB,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqB9kB,IAAjB+kB,EACH,OAAOA,EAAa9mB,QAGrB,IAAIH,EAAS8mB,EAAyBE,GAAY,CAGjD7mB,QAAS,IAOV,OAHAL,EAAoBknB,GAAUvb,KAAKzL,EAAOG,QAASH,EAAQA,EAAOG,QAAS4mB,GAGpE/mB,EAAOG,QAOd4mB,EAAoBhiB,EAAK/E,IACxB,IAAI0b,EAAS1b,GAAUA,EAAOknB,WAC7B,IAAOlnB,EAAiB,QACxB,IAAM,EAEP,OADA+mB,EAAoBI,EAAEzL,EAAQ,CAAE/Q,EAAG+Q,IAC5BA,GAORqL,EAAoBI,EAAI,CAAChnB,EAASinB,KACjC,IAAI,IAAIC,KAAOD,EACXL,EAAoBO,EAAEF,EAAYC,KAASN,EAAoBO,EAAEnnB,EAASknB,IAC5E/hB,OAAOC,eAAepF,EAASknB,EAAK,CAAEE,YAAY,EAAM/hB,IAAK4hB,EAAWC,MAQ3EN,EAAoBO,EAAI,CAAC1hB,EAAKI,IAAUV,OAAOiG,UAAUxF,eAAe0F,KAAK7F,EAAKI,GAM7F,MACA,aAiDA,IAAIwhB,EAAY,GAUhB,SAASC,IACHD,EAAUE,iBAAmBC,KAAKC,YACpC1U,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,QAQlD,MAAMyI,EAAS,CAAC,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGhDC,EAAa,CACjB,GACA,GACA,IACA,IACA,KACA,QACA,QACA,OACA,OACA,MACA,MACA,MACA,QACA,SACA,SACA,cACA,UACA,SACA,YACA,UACA,WACA,SACA,WACA,YACA,YACA,kBAIIC,EAAwB,CAC5B,GACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,OAMF,IAAIC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAOAC,EA1BAC,EAAqB,GAErBC,EAAwB,GACxBC,EAAuB,GAOvBC,EAAkB,GAqBtB,MAAMC,EAAgB,SAChBC,EAAgB,SAMhBC,EAAa,OACbC,EAAc,QACdC,EAAe,SACfC,EAAe,SACfC,EAAY,MACZC,EAAe,SACfC,EAAa,OACbC,EAAa,OACbC,EAAc,QACdC,EAAkB,CACtBH,EACAN,EACAC,EACAC,EACAC,EACAC,EACAC,EACAE,EACAC,GAUIE,EAAc,CAClB,CAAC,6BAA8B,oCAAqC,SACpE,CACE,2CACA,6EACA,SAEF,CACE,6BACA,qPACA,SAEF,CACE,8BACA,kEACA,SAEF,CACE,kCACA,2PACA,SAEF,CACE,0BACA,gLACA,SAEF,CACE,2BACA,uOACA,SAEF,CACE,4BACA,2CACA,SAEF,CACE,8BACA,uHACA,UAGEC,EAAwB,GAM9B,IAUIC,EACAC,EAXAC,EAAsB,EACtBC,GAAmB,EAOnBC,EAA4B,GAQ5BC,EAAmB,EACnBC,EAAsB,EACtBC,EAA4B,EAMhC,MAAMC,EAAc,CAAC,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,MAC9CC,EAAa,CAAC,EAAG,EAAG,GAAI,GAAI,IAK5BC,EAAc,CAClBC,OAAQrB,EACRsB,iBAAkBhB,EAClBiB,eAAgBxB,EAChByB,KAAMtB,EACNuB,eAAgB3B,EAChB4B,aAAcrB,GAMhB,IAOIsB,EACAC,GACAC,GACAC,GACAC,GAEAC,GACAC,GAdAC,GAAW,GAKXC,GAAQ,GAcRC,GAAoB,GAkBxB,SAASC,GAA4BC,EAAKC,EAAQC,GAChD,MAAMC,EAAW1E,EAAU2E,cAAgB,EAC3C,GAAIJ,IAAQK,IACV,MAAO,WAET,QAAmB,IAARL,EACT,MAAO,IAET,GAAwB,IAApBvE,EAAU6E,MACZ,OAAOjD,EAAgBkD,SAASP,EAAKC,GAEvC,GAAIO,OAAOC,SAAST,GAAM,CACxB,GAAIA,EAAM,EACR,MAAO,IAAID,GAA4BzhB,KAAK0N,IAAIgU,MAElD,IAAIU,EAAS,GACb,GAAY,IAARV,EACF,OAAOA,EAAIxhB,WAEb,GAAIwhB,EAAM,MAASA,EAAMvE,EAAUkF,YAGjC,OAF8BD,EAA1BjF,EAAUmF,eAAyBZ,EAAIa,eAAe,MAC5Cb,EAAIa,eAAe,MAC1BH,EAET,GAAyB,IAApBjF,EAAU6E,QAAgBJ,GAAsB,IAAXA,EAExCQ,EAASV,EAAIc,cAAcX,GAAU3hB,WAAW7B,QAAQ,IAAK,SACxD,CACL,MAAMokB,EAAcf,EAAIc,gBAAgBtiB,WAClCwiB,EAAwB1iB,KAAKkE,MACjCue,EAAYjH,MAAMiH,EAAY9nB,QAAQ,KAAO,GAAK,GAEpDynB,GAAUV,EAAMQ,OAAO,KAA6B,EAAxBQ,IAA8BC,QACxDd,GAGuB,IAApB1E,EAAU6E,QAAgBJ,GAAsB,IAAXA,EAEpCF,GAAO,KAAQA,EAAMQ,OAAO,KAAqB,EAAhB1E,EAAO9lB,QAC1C0qB,GAAU,IAAI5E,EAAOkF,KAChBN,EAASX,GAA4BC,EAAK,EAAG,GACtB,IAApBvE,EAAU6E,QAAgBJ,GAAsB,IAAXA,EAE3CF,GAAO,KAAQA,EAAMQ,OAAO,KAAyB,EAApBzE,EAAW/lB,QAC9C0qB,GAAU,IAAI3E,EAAWiF,KACpBN,EAASX,GAA4BC,EAAK,EAAG,GACtB,IAApBvE,EAAU6E,QAAgBJ,GAAsB,IAAXA,EAG7CF,GAAO,KACPA,EAAMQ,OAAO,KAAoC,EAA/BxE,EAAsBhmB,QAExC0qB,GAAU,IAAI1E,EAAsBgF,KAC/BN,EAASX,GAA4BC,EAAK,EAAG,IACtB,IAApBvE,EAAU6E,QAAgBJ,GAAsB,IAAXA,KAE/CQ,GAAU,IAA4B,EAAxBM,GAUlB,MAPe,KAAXN,IACF9pB,QAAQsqB,IACN,2DAA2DlB,KAE7DU,EAASrD,EAAgBkD,SAASP,EAAKC,IAErCxE,EAAUmF,iBAAgBF,EAASA,EAAO/jB,QAAQ,IAAK,MACpD+jB,EAGT,OADA9pB,QAAQsqB,IAAI,2DAA2DlB,KAChE3C,EAAgBkD,SAASP,EAAKC,GASvC,SAASkB,GAAWC,EAAMC,GACxB,IAAIC,EAAgBF,EACpB,GAAIA,IAASf,IAAU,OAAOe,EAC9B,GAAIA,EAAO,EAAG,MAAO,uBACrBE,EAAgBhjB,KAAKoL,KAAK0X,GAC1B,MAAMlhB,EAAI5B,KAAKkE,MAAM8e,EAAgB,UAC/BlG,EAAI9c,KAAKkE,MAAO8e,EAAgB,SAAY,OAC5Clf,EAAI9D,KAAKkE,MAAO8e,EAAgB,MAAS,MACzCprB,EAAIoI,KAAKkE,MAAO8e,EAAgB,KAAQ,IACxChf,EAAIhE,KAAKkE,MAAM8e,EAAgB,IACrC,IAAInqB,EAAM,GACV,GAAIskB,EAAU8F,WAAY,CACxB,GAAID,EAAgB,SAAY,MAAO,iBACvCnqB,IAAW+I,EAAI,GAAK,IAAM,IAAMA,EAAzB,IACP/I,IAAWikB,EAAI,GAAK,IAAM,IAAMA,EAAzB,IACPjkB,IAAWiL,EAAI,GAAK,IAAM,IAAMA,EAAzB,IACPjL,IAAWjB,EAAI,GAAK,IAAM,IAAMA,EAAzB,IACPiB,IAAQmL,EAAI,GAAK,IAAM,IAAMA,MACxB,CACL,GAAIgf,EAAgB,OAClB,OAAOD,EAAa,kBAAoB,SAC1ClqB,GACE+I,EAAI,EACGA,GAAKmhB,EAAoB,IAANnhB,EAAU,QAAU,SAAY,KAAtD,KACA,GACN/I,GACEikB,EAAI,EAAOA,GAAKiG,EAAoB,IAANjG,EAAU,OAAS,QAAW,KAApD,KAA+D,IACrEjkB,EAAInB,OAAS,GAAKoM,EAAI,KACxBjL,GAAUiL,GAAKif,EAAoB,IAANjf,EAAU,QAAU,SAAY,KAAtD,OACLjL,EAAInB,OAAS,GAAKE,EAAI,KACxBiB,GAAUjB,GAAKmrB,EAAoB,IAANnrB,EAAU,UAAY,WAAc,KAA1D,MACTiB,GAAOmL,GAAK+e,EAAoB,IAAN/e,EAAU,UAAY,WAAc,KAEhE,OAAOnL,EAQT,SAASqqB,GAAcJ,GACrB,IAAIzd,EACA8d,EAWJ,OAVIL,GAAQ,GACgBK,EAAtBhG,EAAU8F,WAAmB,iBACrB,QACZ5d,EAAQ8Z,IAERgE,EAAON,GAAWC,GACFzd,EAAZyd,EAAO,IAAaxD,EACfwD,EAAO,GAAYzD,EACfD,GAER,CAAE+D,OAAM9d,SAMjB,IA0EI+d,GACAC,GACAC,GACAC,GACAC,GACAC,GAEAC,GACAC,GACAC,GACAC,GACAC,GAEAC,GACAC,GACAC,GACAC,GACAC,GAEAC,GACAC,GAEAC,GAEAC,GAwBAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GAxIAC,GAAkB,EAClBC,GAAmB,EACnBC,GAAuB,EACvBC,GAAyB,EACzBC,GAAa,EACbC,GAAmB,EACnBC,GAAwB,EACxBC,GAAmB,EACnBC,GAAyB,EACzBC,GAA8B,EAC9BC,GAAe,EACfC,GAAqB,EACrBC,GAAe,EACfC,GAAuB,EACvBC,GAA6B,EAC7BC,GAAoC,EACpCC,GAAyB,EACzBC,GAAwB,EAExBC,GAAmB,EAEnBC,GAAe,EACfC,GAAe,EACfC,GAAkB,EAElBC,GAAgB,GAChBC,GAAiB,GACjBC,GAAkB,GAElBC,GAAsB,EACtBC,GAAuB,EACvBC,GAAwB,CAAC,EAAG,MAE5BC,GAA2B,EAC3BC,GAAyB,EAEzBC,GAAgB,GAEhBC,GAAqB,GAErBC,GAAuB,GACvBC,GAA+B,GAC/BC,GAA8B,GAE9BC,GAAqB,EACrBC,GAAyB,EACzBC,GAAsB,GACtBC,GAA0B,EAC1BC,GAA8B,EAC9BC,GAA2B,GAC3BC,GAA2B,EAC3BC,GAA+B,EAC/BC,GAA4B,GAC5BC,GAAgC,EAChCC,GAAoC,EACpCC,GAAiC,GAEjCC,GAAyB,EACzBC,GAAwB,EAExBC,GAA4B,GAC5BC,GAAwB,GAExBC,GAA4B,EAG5BC,GAAa,EAEbC,GAAe,GAEfC,GAA0B,GAE1BC,GAAqB,EA6BrBC,GAAY,CACdC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVC,EAAG,CAAC,EAAG,EAAG,GACVzrB,EAAG,CAAC,EAAG,EAAG,GACV0rB,GAAI,CAAC,EAAG,EAAG,IAOTC,GAAa,GACbC,GAAc,GACdC,GAAkB,GAuBtB,SAASC,GAAYC,GACnB,IAAIpvB,EAAI,EAWR,OATE4iB,KAAKyM,YAAYjF,IAAe9oB,OAAS8tB,GACzCxM,KAAKyM,YAAYhF,IAAgB/oB,OAAS8tB,IAE1CpvB,EAAI,GAEqC,oBAAzC4iB,KAAKyM,YAAYjF,IAAe9oB,MACU,oBAA1CshB,KAAKyM,YAAYhF,IAAgB/oB,OAEjCtB,GAAK,IACAA,EAWT,SAASsvB,KACP,IAAIC,EAAW,IAEf,OADAA,GAAY,EAAIJ,GAAY,mBACrBI,EAST,SAASC,GAAOluB,EAAMmuB,GACpB,YAA6B,IAAlB/E,GAAQppB,QACK,IAARmuB,EAAsB,EAAIA,EAEnC/E,GAAQppB,GASjB,SAASouB,GAAON,GACd,MAAMO,EAAKV,GAAYG,GACvB,OACyB,IAAvBxM,KAAKgN,eACQ,aAAZD,EAAGE,MAAmC,YAAZF,EAAGG,OAGzBH,EAAKA,EAAGI,OADN,EAYX,SAASC,GAAUZ,GACjB,GAAIxM,KAAKqN,OAAQ,MACoB9yB,IAA/B6xB,GAAWkB,OAAOC,WACpBnB,GAAWkB,OAAOC,SAAWvN,KAAKwN,QAAQF,OAAOC,UAEnD,MAAME,EAAMrB,GAAWkB,OAAOC,SAASG,KAAKlB,GAC5C,GAAI9E,KAAY+F,EAAIE,GAClB,OAAO,EAET,GAAIhG,KAAY8F,EAAIE,GAClB,OAAO,EAET,GAAI/F,KAAY6F,EAAIE,GAClB,OAAO,EAGX,OAAO,EAgBT,SAASC,GAAuBC,EAAUC,GACxC,IAAIC,EAAgBD,EAapB,GAZIhB,GAAO,oBAAmBiB,GAAiB,KAC3CjB,GAAO,sBAAqBiB,GAAiB,KAC7CjB,GAAO,iBAAgBiB,GAAiB,KACxCjB,GAAO,qBAAoBiB,GAAiB,KAC5CjB,GAAO,kBAAiBiB,GAAiB,KAE7CA,GAAiB,EAAoC,IAAhCxB,GAAY,kBAC7BvM,KAAKgO,QAAQ,wBAAuBD,GAAiB,KACrD/N,KAAKgO,QAAQ,mBAAkBD,GAAiB,KAChD/N,KAAKgO,QAAQ,mBAAkBD,GAAiB,MAChDF,EAASI,SAAWnB,GAAOe,EAASI,QAAQvvB,QAAOqvB,GAAiB,KACxEA,GAAiBnB,GAAO,gBACpBR,GAAWkB,OAAOY,eAAgB,CACpC,MAAMC,EAASf,GAAU,YACV,IAAXe,EAAcJ,GAAiB,IACf,IAAXI,EAAcJ,GAAiB,IACpB,IAAXI,IAAcJ,GAAiB,KAE1C,OAAOA,EAkBT,SAASK,GACPC,EACAC,EACA3kB,EACA4kB,EACAC,EACAC,GAIA,MAAMC,OAA4B,IAAVD,EAAwB,EAAIA,EACpD,IAAIE,EAAWH,EACXI,EAAiBjlB,EACjBklB,EAAO,GACK,IAAZL,IAAeG,EAAWC,GACzBJ,IAAQG,EAAW3O,KAAK8O,SAC7B,IAAK,IAAI30B,EAAI,EAAGA,EAAIw0B,EAAUx0B,IAAK,CACjC,IAAI2zB,EACFQ,EAAYtO,KAAK+O,eAAiBrsB,KAAK6D,IAAI,EAAGqoB,EAAiBL,GACjET,EAAQY,EACJ1O,KAAKgP,oBAAoBX,EAAOP,GAChCF,GAAuBS,EAAOP,GAClCA,EAAQprB,KAAKoL,KAAKggB,GAClB,MAAMnB,EAAW+B,EACbL,EAAMY,oBACNvC,KACJoB,EAAQprB,KAAKkE,MAAMknB,EAAQnB,GACvBiC,EAAiB,IACnBC,GAAQf,EACRc,GAAkB,GAGtB,OAAOC,EAoBT,SAASK,KACP,IAAI1vB,EAASwgB,KAAK8O,QA0ClB,GAzCqB,IAAjB9O,KAAKmP,QACPrM,EAAsBtjB,EAEtBA,EAASsjB,EAEI,IAAXtjB,EAAcA,EAAS+pB,GACP,KAAX/pB,EAAeA,EAASgqB,GACb,MAAXhqB,IAAgBA,EAASiqB,IAEb,IAAjBzJ,KAAKmP,QACuB,IAA1BtP,EAAUuP,YACZzxB,OAAO6C,KAAKhB,GAAQ6vB,SAASl1B,IAC3BoR,EAAE,eAAeyU,KAAKwN,QAAQrzB,GAAGwzB,MAAMvrB,MAAM2F,MAC3C8X,EAAU,SAASrgB,EAAOrF,GAAG4N,YAGjCpK,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,IACjCoR,EAAE,eAAeyU,KAAKwN,QAAQrzB,GAAGwzB,MAAMvrB,MAAMktB,eAAe,aAGrC,IAAlBtP,KAAKmP,SACdxxB,OAAO6C,KAAK+oB,IAAe8F,SAASl1B,IAClC,MAAMwlB,EAAIK,KAAKwN,QAAQrzB,GACvBoR,EAAE,eAAeoU,EAAEgO,MAAMvrB,MAAM2F,MAAQ,GASvCwD,EAAE,eAAeoU,EAAEgO,MAAMhW,UAAYwM,GACnCiK,GAAazO,EAAGA,EAAE2O,UAAW3O,EAAE6O,OAAQ7O,EAAE4O,KAAMvO,KAAK8O,QAAS,OAQ9C,IAAjB9O,KAAKmP,SAAiBtP,EAAU0P,cAAe,CACjD,IAAIC,EAC4B,IAA5B3P,EAAU0P,eACZC,EAAM7xB,OAAO6C,KAAK+oB,IAAejrB,KAAKmxB,IACpC,MAAM9P,EAAI4J,GAAckG,GAGxB,OAFA9P,EAAEjhB,KAAO+wB,EACT9P,EAAEgO,GAAK3N,KAAKwN,QAAQiC,GAAG9B,GAChBhO,KAGT6P,EAAIE,MAAK,SAAU1sB,EAAGP,GACpB,OAAO4f,EAAgBhlB,QAAQ2F,EAAE+E,OAC/Bsa,EAAgBhlB,QAAQoF,EAAEsF,OACxB,EACAsa,EAAgBhlB,QAAQ2F,EAAE+E,OAASsa,EAAgBhlB,QAAQoF,EAAEsF,QAE7D/E,EAAEyI,GAAKhJ,EAAEgJ,IADR,EAGD,MAE+B,IAA5BoU,EAAU0P,gBACnBC,EAAM7xB,OAAO6C,KAAKhB,GAAQlB,KAAKmxB,IAC7B,MAAM9P,EAAIngB,EAAOiwB,GAGjB,OAFA9P,EAAEjhB,KAAO+wB,EACT9P,EAAEgO,GAAK3N,KAAKwN,QAAQiC,GAAG9B,GAChBhO,KAGT6P,EAAIE,MAAK,SAAU1sB,EAAGP,GACpB,OAAO4f,EAAgBhlB,QAAQ2F,EAAE+E,OAC/Bsa,EAAgBhlB,QAAQoF,EAAEsF,OACxB,EACAsa,EAAgBhlB,QAAQ2F,EAAE+E,OAASsa,EAAgBhlB,QAAQoF,EAAEsF,QAE7D/E,EAAEyI,GAAKhJ,EAAEgJ,IADR,EAGD,MAIR,IAAK,IAAIpH,EAAI,EAAGA,EAAImrB,EAAIp1B,OAAQiK,IAC9B2b,KAAKwN,QAAQgC,EAAInrB,GAAG3F,MAAM6M,EAAEnJ,MAAMutB,QAAU,GAAGtrB,EAAI,KAAKA,EAAI,QAEzD,CACL,MAAMmrB,EAAM7xB,OAAO6C,KAAK+oB,IAAejrB,KAAKmxB,IAC1C,MAAM9P,EAAI4J,GAAckG,GAGxB,OAFA9P,EAAEjhB,KAAO+wB,EACT9P,EAAEgO,GAAK3N,KAAKwN,QAAQiC,GAAG9B,GAChBhO,KAET6P,EAAIE,MAAK,CAAC1sB,EAAGP,IAAMO,EAAE2qB,GAAKlrB,EAAEkrB,KAC5B,IAAK,IAAItpB,EAAI,EAAGA,EAAImrB,EAAIp1B,OAAQiK,IAC9B2b,KAAKwN,QAAQgC,EAAInrB,GAAG3F,MAAM6M,EAAEnJ,MAAMutB,QAAU,GAAGtrB,EAAI,KAAKA,EAAI,KAiBlE,SAASurB,KAEP,GAAI/P,EAAUgQ,YAAc,EAAG,CAC7B,IAAIC,EAAO,EACPC,EAAQ,EACRC,EAAS,EACTC,EAAS,EACTC,EAAM,EACNC,EAAS,EACTC,EAAO,EAEXzyB,OAAO6C,KAAKwf,KAAKqQ,iBAAiBhB,SAASl1B,IACzC,MAAMm2B,EAAKtQ,KAAKqQ,gBAAgBl2B,GAChC,IAAIo2B,GAAc,EAClB,IAAK,IAAIC,EAAI,EAAGA,EAAIjlB,EAAE,UAAUpR,KAAKs2B,WAAWr2B,OAAQo2B,GAAK,EAC3D,IACuE,IAArEjlB,EAAE,UAAUpR,KAAKs2B,WAAWD,GAAG51B,UAAUyC,QAAQskB,GACjD,CACApW,EAAE,UAAUpR,KAAKs2B,WAAWD,GAAG51B,UAC7B+mB,EAAgBoI,GAAcuG,EAAG5xB,MAAMqJ,MACzCwoB,GAAc,EACd,MAGJ,IAAKA,EAAa,CAChB,MAAMG,EAAMj4B,SAAS4D,cAAc,OACnCq0B,EAAItuB,MAAMkG,MAAQ,OAClBooB,EAAItuB,MAAMmG,OAAS,OACnBmoB,EAAI91B,UAAY+mB,EAAgBoI,GAAcuG,EAAG5xB,MAAMqJ,MACvDwD,EAAE,UAAUpR,KAAK4b,YAAY2a,GAE3B3G,GAAcuG,EAAG5xB,MAAMqJ,QAAU6Z,EAAYkO,GAAQ,EAChD/F,GAAcuG,EAAG5xB,MAAMqJ,QAAU8Z,EAAakO,GAAS,EACvDhG,GAAcuG,EAAG5xB,MAAMqJ,QAAU+Z,EAAckO,GAAU,EACzDjG,GAAcuG,EAAG5xB,MAAMqJ,QAAUga,EAAckO,GAAU,EACzDlG,GAAcuG,EAAG5xB,MAAMqJ,QAAUia,EAAWkO,GAAO,EACnDnG,GAAcuG,EAAG5xB,MAAMqJ,QAAUka,EAAckO,GAAU,EACzDpG,GAAcuG,EAAG5xB,MAAMqJ,QAAUma,IAAYkO,GAAQ,MAGhE7kB,EAAE,oBAAoB/N,YAAcsyB,EACpCvkB,EAAE,qBAAqB/N,YAAcuyB,EACrCxkB,EAAE,sBAAsB/N,YAAcwyB,EACtCzkB,EAAE,sBAAsB/N,YAAcyyB,EACtC1kB,EAAE,mBAAmB/N,YAAc0yB,EACnC3kB,EAAE,sBAAsB/N,YAAc2yB,EACtC5kB,EAAE,oBAAoB/N,YAAc4yB,EAGtC,MAAMZ,EAAM,GAGZ,IAAK,IAAInrB,EAAI,EAAGA,EAAI2b,KAAKqQ,gBAAgBj2B,OAAQiK,GAAK,EAAG,CACvD,MAAMsb,EAAI,GACVA,EAAEjhB,KAAOshB,KAAKqQ,gBAAgBhsB,GAAG3F,KACjCihB,EAAEmO,MAAQ9N,KAAKqQ,gBAAgBhsB,GAAGiqB,UAClC3O,EAAElU,GAAKse,GAAcpK,EAAEjhB,MAAM+M,GAC7B+jB,EAAIvzB,KAAK0jB,GAGPE,EAAU8Q,aACZnB,EAAIE,MAAK,SAAU1sB,EAAGP,GACpB,OAAO4f,EAAgBhlB,QAAQ2F,EAAE+E,OAASsa,EAAgBhlB,QAAQoF,EAAEsF,OAChE,EACAsa,EAAgBhlB,QAAQ2F,EAAE+E,OAASsa,EAAgBhlB,QAAQoF,EAAEsF,QAE7D/E,EAAEyI,GAAKhJ,EAAEgJ,IADR,EAGD,KAGN+jB,EAAIE,MAAK,CAAC1sB,EAAGP,IAAMO,EAAE8qB,MAAQrrB,EAAEqrB,QAGjC,MAAM8C,EAAc,SAAUC,EAAMC,GAClC,OAAOD,EAAKE,WAAWz1B,GAAMA,EAAEoD,OAASoyB,EAAQpyB,QAElD,IAAK,IAAI2F,EAAI,EAAGA,EAAI2b,KAAKqQ,gBAAgBj2B,OAAQiK,GAAK,EACpDkH,EAAE,UAAUlH,KAAKjC,MAAM4uB,MACrBJ,EAAYpB,EAAKxP,KAAKqQ,gBAAgBhsB,IAAM,EAYlD,SAAS4sB,KACP,OAAIpR,EAAUqR,QACLrK,GAEmB,IAAxBhH,EAAUsR,UACLnR,KAAKoR,WAAa,EAAIpR,KAAKqR,WAER,IAAxBxR,EAAUsR,UAEVnR,KAAKoR,WACJvH,IAA4B,EAA6B,IAAzBC,KAGJ,OAA7BF,GAAsB,IAEE,IAAxB/J,EAAUsR,WACwC,IAAlDnR,KAAKsR,UAAU1H,GAAsB,IAAIpvB,KAGvCwlB,KAAKoR,WACwB,EAA3BvH,GAAgCC,IAC/B,EAA6B,IAAzBA,KAIX9J,KAAKoR,WACJvH,GAA2BC,IACzB,EAA6B,IAAzBA,KAaX,SAASyH,KACP,OAA4B,IAAxB1R,EAAUsR,UACLzH,GAEmB,IAAxB7J,EAAUsR,UACLvH,GAAsB,GAExB,EAcT,SAAS4H,GAAY7D,EAAIjvB,EAAM+yB,GAC7B,MAAMC,EAAWj5B,SAAS4D,cAAc,OACxCq1B,EAAS/D,GAAKA,EACd+D,EAAStvB,MAAMmG,OAAS,OACxBmpB,EAAStvB,MAAMuvB,OAAS,WACxBD,EAAStvB,MAAMgI,SAAW,WAE1B,MAAMsmB,EAAMj4B,SAAS4D,cAAc,OACnCq0B,EAAItuB,MAAMkG,MAAQ,OAClBooB,EAAItuB,MAAMmG,OAAS,OACnBmoB,EAAItuB,MAAMuvB,OAAS,OACnBjB,EAAItuB,MAAMgI,SAAW,WACrBsmB,EAAItuB,MAAMqC,KAAO,MACjBisB,EAAItuB,MAAMsC,IAAM,MAChBgsB,EAAItuB,MAAMkI,MAAQ,MAClBomB,EAAItuB,MAAMkW,OAAS,MAEnB,MAAM9d,EAAO/B,SAAS4D,cAAc,QACpC7B,EAAK4H,MAAMqV,QAAU,eACrBjd,EAAK4H,MAAMuW,UAAY,QACvBne,EAAK4H,MAAMwvB,SAAW,OACtBp3B,EAAK4H,MAAMkG,MAAQ,QACnB9N,EAAK4H,MAAMyvB,YAAc,MACzBr3B,EAAK4H,MAAM0vB,cAAgB,WAC3Bt3B,EAAKgD,YAAckB,EACnBgyB,EAAI3a,YAAYvb,GAEhB,IAAK,IAAIL,EAAI,EAAGA,EAAIs3B,EAAKr3B,OAAQD,IAAK,CACpC,MAAM43B,EAAWt5B,SAAS4D,cAAc,QACxC01B,EAASpE,GAAK8D,EAAKt3B,GAAGwzB,GACtBoE,EAAS3vB,MAAMqV,QAAU,eACzBsa,EAAS3vB,MAAMmG,OAAS,OACxBwpB,EAAS3vB,MAAM0vB,cAAgB,WAC/BC,EAAS3vB,MAAMuW,UAAY,SACvB8Y,EAAKr3B,OAAS,IAAMD,IACtB43B,EAAS3vB,MAAM4vB,qBAAuB,OACtCD,EAAS3vB,MAAM6vB,wBAA0B,aAEd,IAAlBR,EAAKt3B,GAAG4N,QACjBgqB,EAASn3B,UAAY+mB,EAAgB8P,EAAKt3B,GAAG4N,OAE/C2oB,EAAI3a,YAAYgc,GAGlB,MAAMG,EAAQz5B,SAAS4D,cAAc,QAQrC,OAPA61B,EAAMvE,GAAK,GAAGA,QACduE,EAAM9vB,MAAM+vB,WAAa,MACzBD,EAAM9vB,MAAM0vB,cAAgB,WAC5BpB,EAAI3a,YAAYmc,GAEhBR,EAAS3b,YAAY2a,GAEdgB,EAOT,SAASU,GAA2BC,GAClC,GAAsB,OAAlB9mB,EAAE,YAAsB,CAC1B,MAAM/Q,EAAO+Q,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GACtD6B,EAAQ/mB,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GACvDhlB,EAAKF,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GACpDjL,EAAOja,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAEtDt2B,EAAIk4B,EACJE,EAAS/3B,EAAKub,YAAYtd,SAAS4D,cAAc,OACvDk2B,EAAOxc,YACLtd,SAASqgB,eACP,IAAuB,IAApB3e,EAAEkD,QAAQ,KAAclD,EAAEq4B,UAAU,EAAGr4B,EAAEkD,QAAQ,MAAQlD,QAInDo4B,EAAOxc,YAAYtd,SAAS4D,cAAc,SAClDzB,UAAY8mB,aAEjB6Q,EAAOxc,YAAYtd,SAASqgB,eAAe,MAC3Cte,EAAKi4B,UAAUrwB,MAAMswB,YAAc,MACnCJ,EAAMvc,YAAYtd,SAAS4D,cAAc,OACzCi2B,EAAMG,UAAUrwB,MAAMswB,YAAc,MACpCjnB,EAAGsK,YAAYtd,SAAS4D,cAAc,OACtCoP,EAAGgnB,UAAUrwB,MAAMswB,YAAc,MACjClN,EAAKzP,YAAYtd,SAAS4D,cAAc,OACxCmpB,EAAKiN,UAAUrwB,MAAMswB,YAAc,OAoEvC,SAASC,KACP,GAAyB,IAArB9S,EAAU+S,QAAgBrJ,IAAkC,IAAjBvJ,KAAKmP,QAAe,CACjE,IAAI0D,EAAQ,EACZl1B,OAAO6C,KAAK+oB,IAAe8F,SAASl1B,IAClC,IAmBI24B,EAnBAtzB,EAASwgB,KAAK8O,QACG,IAAjB9O,KAAKmP,QACPtM,EAAmBrjB,EAEnBA,EAASqjB,EAEI,IAAXrjB,IAAcA,EAAS+pB,IACZ,KAAX/pB,IAAeA,EAASgqB,IACb,MAAXhqB,IAAgBA,EAASiqB,IAC7BoJ,GAAS,EACTtnB,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACApC,WAAW,GAAGjzB,YAAcwiB,KAAKwN,QAAQrzB,GAAGq0B,OAC9CjjB,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACAr1B,YAAc2mB,GAA4B3kB,EAAOrF,GAAGm4B,MAAO,GAC7D/mB,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACAj4B,UAAY8mB,EAAgBliB,EAAOrF,GAAG4N,MAGtC+qB,EADEjT,EAAUkT,cACDxN,GAAW7iB,KAAKC,MAAMnD,EAAOrF,GAAGsR,KAC7B0Y,GAA4BzhB,KAAKC,MAAMnD,EAAOrF,GAAGsR,IAAK,GACtEF,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACAr1B,YAAcs1B,EAChB,MAAME,EAAapN,IAChB5F,KAAKwN,QAAQrzB,GAAG84B,WAAajT,KAAKkT,QAAU3B,OAC3CN,MAEJ1lB,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACAj4B,UAAY8mB,EAAgBsR,EAAWjrB,MAEnB,UAApBirB,EAAWnN,MACX7F,KAAKkT,QAAUlT,KAAKwN,QAAQrzB,GAAG84B,UAE/B1nB,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACAr1B,YAAc,GAAGw1B,EAAWnN,oBAE9Bta,EAAE,YAAYvO,WAAWA,WAAWyzB,WAAW,GAAGA,WAChDoC,GACAr1B,YAAcw1B,EAAWnN,SAWnC,SAASsN,KACPnT,KAAKoT,WAAWjrB,OAAOG,MAAQ0X,KAAKoT,WAAWjrB,OAAOmR,WAAWxU,YACjEkb,KAAKoT,WAAWjrB,OAAOI,OACrByX,KAAKoT,WAAWjrB,OAAOmR,WAAWvU,aACpCib,KAAKqT,eAAelrB,OAAOG,MACzB0X,KAAKqT,eAAelrB,OAAOmR,WAAWxU,YACxCkb,KAAKqT,eAAelrB,OAAOI,OACzByX,KAAKqT,eAAelrB,OAAOmR,WAAWvU,aAY1C,SAASuuB,KAEgB,IAArBzT,EAAU+S,QACa,IAAvB/S,EAAU0T,UACgB,IAA1B1T,EAAU2T,aAEVjoB,EAAE,YAAYnJ,MAAMkW,OAAS/M,EAAE,cAAcnJ,MAAMmG,OACnDgD,EAAE,QAAQnJ,MAAMkW,OAAS,GACvBsM,OAAOrZ,EAAE,cAAcnJ,MAAMmG,OAAOxH,QAAQ,KAAM,KAAO,QAE7B,IAArB8e,EAAU+S,QACnBrnB,EAAE,YAAYnJ,MAAMkW,OAAS,MAC7B/M,EAAE,QAAQnJ,MAAMkW,OAAS,QACO,IAAvBuH,EAAU0T,UAA4C,IAA1B1T,EAAU2T,YAC/CjoB,EAAE,QAAQnJ,MAAMkW,OAAS/M,EAAE,cAAcnJ,MAAMmG,OAG/CgD,EAAE,QAAQnJ,MAAMkW,OAAS,MAGA,IAAvBuH,EAAU0T,UAA4C,IAA1B1T,EAAU2T,YACxCjoB,EAAE,eAAenJ,MAAMsC,IAAM6G,EAAE,cAAcnJ,MAAMmG,OAEnDgD,EAAE,eAAenJ,MAAMsC,IAAM,GAG/ByuB,KAMF,SAASM,KACoB,IAAvB5T,EAAU0T,SAAgBhoB,EAAE,cAAcnJ,MAAMqV,QAAU,GACzDlM,EAAE,cAAcnJ,MAAMqV,QAAU,OACrC6b,KAoPF,SAASI,KACPzL,GAAkBjI,KAAK2T,WACvBzL,GAAmBlI,KAAK4T,YAS1B,SAASC,GAAgBC,GACvB,MAAMxD,EAAKtQ,KAAK+T,aAAaD,GACvBE,EAAM,GAEZ,OADAA,EAAIt1B,KAAO4xB,EAAG5xB,KACPs1B,EAUT,SAASC,GAAoB3D,GAC3B,IAAI4D,EAAO,EAoBX,GAnBAv2B,OAAO6C,KAAK8vB,EAAG6D,gBAAgB9E,SAASl1B,KAEnC6lB,KAAKoU,MAAM9D,EAAG6D,eAAeh6B,GAAG+yB,MAAMmH,SACvCvH,GAAOwD,EAAG6D,eAAeh6B,GAAGuE,QAE5Bw1B,GAAQ,MAEZv2B,OAAO6C,KAAK8vB,EAAGgE,WAAWjF,SAASl1B,IACjC,GAAI2yB,GAAOwD,EAAGgE,UAAUn6B,GAAGuE,MAAO,CAChC,MAAM61B,EAAMjE,EAAGgE,UAAUn6B,GACrBo6B,EAAIC,aAAa91B,OAAS4xB,EAAG5xB,KAC/Bw1B,GAAQ,EAAI,IAAOK,EAAIE,aAAajG,OAC7B+F,EAAIE,aAAa/1B,OAAS4xB,EAAG5xB,OACpCw1B,GAAQ,EAAI,KAAQK,EAAIC,aAAahG,YAGvC8B,EAAGrC,SAAWnB,GAAOwD,EAAGrC,QAAQvvB,QAAOw1B,GAAQ,MAC/C5D,EAAGoE,SAAW5H,GAAOwD,EAAGoE,QAAQh2B,QAClCw1B,GAAQ,EAAgC,IAA5B9H,GAAWuI,QAAQnG,QAAiB,GAAK8B,EAAG3C,GAAK,KACnB,iBAAjC2C,EAAG6D,eAAeS,YACR,IAAftE,EAAGuE,SAAiB/H,GAAOwD,EAAG6D,eAAeS,WAAWl2B,MAC1D,OAAQshB,KAAKC,YACX,QACEiU,GAAQ,EACR,MACF,KAAK,EACHA,GAAQ,KACR,MACF,KAAK,EACHA,GAAQ,KACR,MACF,KAAK,EACHA,GAAQ,KAKhB,OAAOA,EAiBT,SAASY,GAAoBzC,GAC3B,MAAM/B,EAAKtQ,KAAKwN,QAAQ6E,GAClB2B,EAAM,GA2FZ,MA1FgB,WAAZ1D,EAAG5xB,KACLs1B,EAAIe,IAAM,SAAUhI,GAClB,IAAIzrB,EAAM,EACNwrB,GAAO,sBAAqBxrB,GAAO,IACnCwrB,GAAO,qBAAoBxrB,GAAO,GAClCwrB,GAAO,qBAAoBxrB,GAAO,IAClCwrB,GAAO,sBAAqBxrB,GAAO,IACnCwrB,GAAO,yBAAwBxrB,GAAO,IACtCwrB,GAAO,yBAAwBxrB,GAAO,IACtCwrB,GAAO,wBAAuBxrB,GAAO,IACrCwrB,GAAO,wBAAuBxrB,GAAO,IACrCwrB,GAAO,uBAAsBxrB,GAAO,IACpCwrB,GAAO,uBAAsBxrB,GAAO,IACxC,IAAI4yB,EAAO,EACP9P,EAAM,EAQV,OAPAzmB,OAAO6C,KAAK4rB,IAAYiD,SAASl1B,IACJ,WAAvBiyB,GAAWjyB,GAAGuE,OAAmB0lB,GAAOgI,GAAWjyB,GAAGq0B,WAE5DltB,GAAO8iB,EACP8P,GAAQD,GAAoBlH,GAC5BmH,GAAQlU,KAAKgV,SAAS,UACtBd,GAAQtH,GAAO,aAEb5M,KAAKiV,WACH,GACAnI,GAAO,2BACLA,GAAO,kCACPA,GAAO,gBACTxrB,GACE4yB,GAGa,YAAZ5D,EAAG5xB,KACZs1B,EAAIe,IAAM,SAAUhI,GAClB,IAAImH,EAAO,EAYX,GAXAv2B,OAAO6C,KAAKwf,KAAKkV,kBAAkB7F,SAASl1B,IACtC2yB,GAAO9M,KAAKkV,iBAAiB/6B,MAAK+5B,GAAQ,MAE5CpH,GAAO,oCAAmCoH,GAAQ,GAClDpH,GAAO,yBAAwBoH,GAAQ,GACvCpH,GAAO,kBAAiBoH,GAAQ,GAEhCpH,GAAO,wBAAuBoH,GAAQ,MAE1CA,GAAQtH,GAAO,cAEXE,GAAO,cACT,IAAK,IAAI3yB,EAAI,EAAGA,EAAI6lB,KAAKmV,eAAeC,OAAOh7B,OAAQD,IACjD2yB,GAAO9M,KAAKmV,eAAeC,OAAOj7B,GAAGuE,QAAOw1B,GAAQ,MAI5DA,GAAQD,GAAoBlH,GAE5B,IAAIzrB,EAAM,EACNwrB,GAAO,cAAaxrB,GAAmC,IAA5B8qB,GAAWuI,QAAQnG,QAC9C1B,GAAO,yBACTxrB,GAAmC,IAA5B8qB,GAAWuI,QAAQnG,QACxB1B,GAAO,gBAAexrB,GAAkC,IAA3B8qB,GAAWiJ,OAAO7G,QAEnD,IAAIpK,EAAM,EASV,OARAzmB,OAAO6C,KAAK4rB,IAAYiD,SAASl1B,IACJ,YAAvBiyB,GAAWjyB,GAAGuE,OAAoB0lB,GAAOgI,GAAWjyB,GAAGq0B,WAG7D0F,GAAQ,EAAqC,IAAjC3H,GAAY,mBAA4BnI,EAEpD8P,GAAQlU,KAAKgV,SAAS1E,EAAG5xB,OAEjB4xB,EAAGgF,QAAUh0B,GAAO4yB,GAG9BF,EAAIe,IAAM,SAAUhI,GAClB,IAAImH,EAAO,EAGX,OAFAA,GAAQD,GAAoBlH,GAC5BmH,GAAQlU,KAAKgV,SAASjI,EAAGruB,MAClBquB,EAAGwI,QAAUrB,GAKxBF,EAAIsB,QAAUhF,EAAGgF,QACjBtB,EAAIt1B,KAAO4xB,EAAG5xB,KACds1B,EAAIG,eAAiB7D,EAAG6D,eACxBH,EAAIM,UAAYhE,EAAGgE,UACnBN,EAAI/F,QAAUqC,EAAGrC,QACjB+F,EAAIU,QAAUpE,EAAGoE,QACjBV,EAAIuB,QAAUjF,EAAGgF,QACjBtB,EAAIrG,GAAK2C,EAAG3C,GACZqG,EAAIa,QAAUvE,EAAGuE,QACVb,EAaT,SAASwB,GAAYC,GACnB,MAAMnF,EAAKtQ,KAAK0V,SAASD,GACnBzB,EAAM,GA4BZ,OA1BAA,EAAI2B,MAAQrF,EAAGqF,MACU,mBAAd3B,EAAI2B,QACG,0BAAZrF,EAAG5xB,KACLs1B,EAAI2B,MAAQ,WACV,IAAIv4B,EAAI,EAIR,OAHAO,OAAO6C,KAAK4rB,IAAYiD,SAASl1B,IAC3BiyB,GAAWjyB,GAAGy7B,OAAS,KAAIx4B,GAAK,MAE/BA,GAGT42B,EAAI2B,MAAQ,WACV,IAAIE,EAAM,EAEV,GADI/I,GAAO,cAAa+I,EAAM,GAC1B7V,KAAKqN,OAAQ,CACf,MAAMc,EAASf,GAAU,WACV,IAAXe,EAAc0H,GAAO,IACL,IAAX1H,EAAc0H,GAAO,IACV,IAAX1H,IAAc0H,GAAO,KAEhC,OAAOA,IAIb7B,EAAI/G,KAAOqD,EAAGrD,KACd+G,EAAIt1B,KAAO4xB,EAAG5xB,KACPs1B,EAiBT,SAAS8B,KAEP3O,GAAmBnH,KAAK+V,cACxB3O,GAAapH,KAAKgW,QAClB3O,GAAuBrH,KAAKiW,kBAC5B3O,GAAmBtH,KAAKkW,cACxB3O,GAAcvH,KAAKmW,SAGnBx4B,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,IACjC,MAAMm2B,EAAKtQ,KAAKwN,QAAQrzB,GACxB,IAAI65B,EAAM5H,GAAWjyB,QACTI,IAARy5B,IAEF5H,GAAWjyB,GAAK26B,GAAoB36B,GACpC65B,EAAM5H,GAAWjyB,GACjBi4B,GAA2Bj4B,IAE7B65B,EAAIxF,OAAS8B,EAAG9B,OAChBwF,EAAI4B,MAAQtF,EAAGsF,MACf5B,EAAIoC,aAAe9F,EAAG8F,aACtBpC,EAAI1F,UAAYgC,EAAGhC,UACnB0F,EAAIzF,KAAO+B,EAAG/B,KACV+B,EAAGpC,iBACW,WAAZoC,EAAG5xB,OACLgpB,GAAU4I,EAAG/C,SAAS8I,KAAK,GAC3B1O,GAAU2I,EAAG/C,SAAS8I,KAAK,GAC3BzO,GAAU0I,EAAG/C,SAAS8I,KAAK,IAE7BrC,EAAI9F,eAAiBoC,EAAGpC,eACxB8F,EAAIzG,SAAW+C,EAAG/C,UAEpBnB,GAAWjyB,GAAK65B,KAIlBr2B,OAAO6C,KAAKwf,KAAK0V,UAAUrG,SAASl1B,IAClC,MAAMm2B,EAAKtQ,KAAK0V,SAASv7B,GACzB,IAAI65B,EAAM3H,GAAYlyB,QACVI,IAARy5B,IACF3H,GAAYlyB,GAAKq7B,GAAYr7B,GAC7B65B,EAAM3H,GAAYlyB,IAEpB65B,EAAI7G,OAASmD,EAAGnD,OAChBd,GAAYlyB,GAAK65B,KAInBr2B,OAAO6C,KAAKwf,KAAK+T,cAAc1E,SAASl1B,IACtC,MAAMm2B,EAAKtQ,KAAK+T,aAAa55B,GAC7B,IAAI65B,EAAM1H,GAAgBnyB,QACdI,IAARy5B,IACF1H,GAAgBnyB,GAAK05B,GAAgB15B,GACrC65B,EAAM1H,GAAgBnyB,IAExB65B,EAAIsC,IAAMhG,EAAGgG,IACbhK,GAAgBnyB,GAAK65B,KAIvBN,KACAlM,GAAgBS,GAChBR,GAAiBS,GA8BnB,SAASqO,GAAoB1Q,GAC3B,MAAM6K,EAAMj4B,SAAS4D,cAAc,OAKnC,OAJAq0B,EAAItuB,MAAMo0B,WAAa,OACvB9F,EAAI/C,GAAK,GAAG9H,SACZ6K,EAAI91B,UAAY8mB,aAChBgP,EAAIlzB,YAAcqoB,EACX6K,EAmHT,SAAS+F,GAAgCC,GACvCA,EAAQ3gB,YAAYwgB,GAAoB,iBACxC,MAAMI,EAASl+B,SAAS4D,cAAc,OACtCs6B,EAAOv0B,MAAMw0B,aAAe,MAC5BD,EAAOv0B,MAAM2F,MAAQ,QACrB4uB,EAAOhJ,GAAK,kBACZ+I,EAAQ3gB,YAAY4gB,GAEpBD,EAAQ3gB,YAAYwgB,GAAoB,4BACxCG,EAAQjE,UAAUrwB,MAAMqV,QAAU,OAClC,MAAMof,EAAQp+B,SAAS4D,cAAc,OACrCw6B,EAAMz0B,MAAMw0B,aAAe,MAC3BC,EAAMz0B,MAAM2F,MAAQ,QACpB8uB,EAAMz0B,MAAMqV,QAAU,OACtBof,EAAMlJ,GAAK,0BACX+I,EAAQ3gB,YAAY8gB,GAEpBH,EAAQ3gB,YAAYwgB,GAAoB,mBACxC,MAAM9qB,EAAKhT,SAAS4D,cAAc,OAClCoP,EAAGrJ,MAAMw0B,aAAe,MACxBnrB,EAAGkiB,GAAK,cACR+I,EAAQ3gB,YAAYtK,GAEpBirB,EAAQ3gB,YAAYwgB,GAAoB,cACxC,MAAM/Q,EAAO/sB,SAAS4D,cAAc,OAIpC,GAHAmpB,EAAKmI,GAAK,gBACV+I,EAAQ3gB,YAAYyP,GAEA,MAAhB7B,GAAqB,CACvB+S,EAAQ3gB,YACNwgB,GAAoB,0CAEtBG,EAAQjE,UAAU9E,GAAK,4BACvB,MAAMmJ,EAAar+B,SAAS4D,cAAc,OAC1Cy6B,EAAWnJ,GAAK,sBAChB+I,EAAQ3gB,YAAY+gB,IA+JxB,SAASC,GACPC,EACAC,EACAC,GAEA,IAAIC,EAAQH,EACRnE,EAAQ,EACZ,KAAOsE,EAAQD,GACbC,GAAqE,KAA5Dz0B,KAAK6D,IAAI,MAAQ4wB,EAAQz0B,KAAK6D,IAAI0wB,EAAU,OAAS,IAC9DpE,GAAS,EAEX,OAAOA,EAAQ7S,KAAKoX,IA0XtB,SAASC,KACP,IAAInD,EAAO,EAKX,OAJAv2B,OAAO6C,KAAKwf,KAAKsX,OAAOjI,SAASl1B,SACM,IAA1B6lB,KAAKsX,MAAMn9B,GAAGo9B,UACvBrD,GAAQlU,KAAKsX,MAAMn9B,GAAGo9B,YAEnBrD,EAWT,SAASsD,KACiC,OAApCjsB,EAAE,gCAC0B,IAA1BsU,EAAU4X,aACZlsB,EAAE,8BAA8BnJ,MAAMsC,IAAM,OAC5C6G,EAAE,8BAA8BnJ,MAAMuvB,OAAS,WAC/CpmB,EAAE,8BAA8BnJ,MAAMwK,QAAU,YAEhDrB,EAAE,8BAA8BnJ,MAAMkI,MAAQ,OAC9CiB,EAAE,8BAA8BnJ,MAAMuvB,OAAS,MAC/CpmB,EAAE,8BAA8BnJ,MAAMwK,QAAU,YA0LtD,SAAS8qB,KAEP,GADA5B,KACyC,SAArCvqB,EAAE,iBAAiBnJ,MAAMqV,SAAsBlM,EAAE,iBAAkB,CACrEA,EAAE,iBAAiBoM,UAAY,GAC/B,MAAMggB,EAx6BV,WACEpsB,EAAE,WAAWvO,WAAWoF,MAAMw1B,cAAgB,MAC9C,MAAMD,EAAal/B,SAAS4D,cAAc,OAM1C,OALAs7B,EAAWv1B,MAAM0U,OAAS,YAC1B6gB,EAAWv1B,MAAMwK,QAAU,MAC3B+qB,EAAWv1B,MAAMuvB,OAAS,WAC1BgG,EAAWhK,GAAK,kBAChBgK,EAAW/8B,UAAY8mB,aAChBiW,EAg6BcE,GACnBtsB,EAAE,iBAAiBwK,YAAY4hB,GAEX,MAAhBhU,GA9uBR,WACE,GAAsC,IAAlC9D,EAAUiY,qBAA8C,IAAjB9X,KAAKmP,QAAe,CAI7D,IAAI3vB,EAaJ,GAfAi3B,GADmBlrB,EAAE,oBAIA,IAAjByU,KAAKmP,QACPpM,EAA4BvjB,EAE5BA,EAASujB,EAEU,IAAjB/C,KAAK8O,QAAetvB,EAAS+pB,GACP,KAAjBvJ,KAAK8O,QAAgBtvB,EAASgqB,GACb,MAAjBxJ,KAAK8O,UAAiBtvB,EAASiqB,IAExChG,EAAezD,KAAKwN,QAAQ5J,IAAaqP,UACzCvP,GAAqBlkB,EAAOokB,IAAa0O,MAEH,IAAlCzS,EAAUiY,qBAA8C,IAAjB9X,KAAKmP,QAAe,CAC7D5jB,EAAE,mBAAmB/N,YAAc2mB,GAA4BT,GAAoB,GACnF,MAAMqU,EAAWr1B,KAAKC,MACnB+gB,GAAqB1D,KAAKoR,UAAa,KAEtCxM,OAAOC,SAASkT,IAA0B,IAAbA,EAC/BxsB,EAAE,mBAAmB/N,aAAe,KAAKu6B,EAAW,kBAEpDxsB,EAAE,mBAAmB/N,aAAe,OAClCqiB,EAAUmF,eAAiB,IAAM,oBAGrCzZ,EAAE,mBAAmB3Q,UACnB8mB,EAAgBliB,EAAOokB,IAAa7b,MAClC8X,EAAUkT,cACZxnB,EAAE,eAAe/N,YAAc+nB,GAAW/lB,EAAOokB,IAAanY,IAC3DF,EAAE,eAAe/N,YAAc2mB,GAA4B3kB,EAAOokB,IAAanY,GAAI,GACxFF,EAAE,eAAe3Q,UAAY8mB,EAAgBliB,EAAOokB,IAAa7b,MACjE,MAAMirB,EAAapN,IAChBnC,GAAgBzD,KAAKkT,QAAU3B,OAAyBN,MAE3D1lB,EAAE,iBAAiB/N,YAAcw1B,EAAWnN,KAEtB,UAApBmN,EAAWnN,MACX7F,KAAKkT,QAAU1zB,EAAOokB,IAAakK,MAEnCviB,EAAE,iBAAiB/N,YAAc,GAAGw1B,EAAWnN,oBAC1Cta,EAAE,iBAAiB/N,YAAcw1B,EAAWnN,KACnDta,EAAE,iBAAiB3Q,UAAY8mB,EAAgBsR,EAAWjrB,MAI5DwD,EAAE,6BAA6BnJ,MAAMqV,QAAU,OAC/ClM,EAAE,iBAAiBnJ,MAAMw0B,aAAe,MAIxC,IAAK,MAAMz8B,KAAKwD,OAAO6C,KAAKwf,KAAKwN,QAAQ5J,IAAaoU,mBACpD,IACGhY,KAAKiY,UACJjY,KAAKwN,QAAQ5J,IAAaoU,kBAAkB79B,GAAG+9B,OAAOx5B,MAExD,CACA,MAAMy5B,EACJnY,KAAKwN,QAAQ5J,IAAaoU,kBAAkB79B,GAC9CoR,EAAE,iBAAiBnJ,MAAMw0B,aAAe,MACxCrrB,EAAE,6BAA6BnJ,MAAMqV,QAAU,GAC/ClM,EAAE,uBAAuB3Q,UAAY,kBAAkBgpB,KACvDrY,EAAE,uBAAuB/N,YAAc2mB,GACrCgU,EAAqBtC,IAAMzJ,GAAWxI,IAAawS,aACnD,IAEF7qB,EAAE,uBAAuBnJ,MAAM2F,MAAQ,QACvC,YAGCwD,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAqqBtC2gB,GACyB,MAAhBzU,GA5Tf,WAYE,GAVA8S,GADmBlrB,EAAE,oBAGrBmY,GACEqG,GAAc/J,KAAKqQ,gBAAgBzM,IAAallB,MAAM4zB,MACxD7O,EAAezD,KAAK0V,SAClB1V,KAAKqQ,gBAAgBzM,IAAallB,MAClC25B,WACFxU,GACEkG,GAAc/J,KAAKqQ,gBAAgBzM,IAAallB,MAAM45B,WAElB,IAAlCzY,EAAUiY,oBAA2B,CACvCvsB,EAAE,mBAAmB/N,YAAc2mB,GAA4BT,GAAoB,GACnF,MAAMqU,EAAWr1B,KAAKC,MAAO+gB,GAAqB1D,KAAKoR,UAAa,KAG7B,MAArC7lB,EAAE,mBAAmB/N,aACJ,MAAhBmmB,IAAuC,MAAhBA,IAOpBiB,OAAOC,SAASkT,IAA0B,IAAbA,EAC/BxsB,EAAE,mBAAmB/N,aAAe,KAAKu6B,EAAW,kBAEpDxsB,EAAE,mBAAmB/N,aAAe,OAClCqiB,EAAUmF,eAAiB,IAAM,oBAGrCzZ,EAAE,mBAAmB3Q,UACnB8mB,EACAqI,GAAc/J,KAAKqQ,gBAAgBzM,IAAallB,MAAMqJ,MAEpD8b,KACFtY,EAAE,2BAA2B/N,YAAc2mB,GAA4BN,IACvEtY,EAAE,2BAA2BnJ,MAAMqV,QAAU,QAC7ClM,EAAE,2BAA2BgtB,gBAAgBn2B,MAAMqV,QAAU,SAGpC,IAAvBiM,IAA4BG,IAC9BtY,EAAE,eAAe/N,YAAc,GAAG2mB,GAChCV,EAAeI,aAEjBtY,EAAE,eAAenJ,MAAM2F,MAAQ,UAE3B8X,EAAUkT,cACZxnB,EAAE,eAAe/N,YAAc+nB,GAC7BwE,GAAc/J,KAAKqQ,gBAAgBzM,IAAallB,MAAM+M,IAGxDF,EAAE,eAAe/N,YAAc2mB,GAC7B4F,GAAc/J,KAAKqQ,gBAAgBzM,IAAallB,MAAM+M,GACtD,GAEJF,EAAE,eAAe3Q,UACf8mB,EACAqI,GAAc/J,KAAKqQ,gBAAgBzM,IAAallB,MAAMqJ,SAvC1DwD,EAAE,qBAAqBnJ,MAAMqV,QAAU,OACvClM,EAAE,mBAAmBnJ,MAAMqV,QAAU,OACrClM,EAAE,uBAAuBnJ,MAAMqV,QAAU,OACzClM,EAAE,eAAenJ,MAAMqV,QAAU,QAuCnC,MAAMub,EAAapN,IAChBnC,GAAgBzD,KAAKkT,QAAU3B,OAAyBN,MAY3D,GAVA1lB,EAAE,iBAAiB/N,YAAcw1B,EAAWnN,KAEtB,UAApBmN,EAAWnN,MACX7F,KAAKkT,QAAUlT,KAAKqQ,gBAAgBzM,IAAayU,WAEjD9sB,EAAE,iBAAiB/N,YAAc,GAAGw1B,EAAWnN,oBAC1Cta,EAAE,iBAAiB/N,YAAcw1B,EAAWnN,KACnDta,EAAE,iBAAiB3Q,UAAY8mB,EAAgBsR,EAAWjrB,MAGX,kBAA3CiY,KAAKqQ,gBAAgBzM,IAAallB,KAA0B,CAC9D6M,EAAE,mBAAmBknB,UAAUrwB,MAAMw0B,aAAe,MACpDrrB,EAAE,mBAAmBwK,YACnBwgB,GAAoB,yCAEtB,MAAMiC,EAAY//B,SAAS4D,cAAc,OACzCm8B,EAAUp2B,MAAM2F,MAAQ,QACxBywB,EAAUh7B,YAAc,GAAG2mB,GAA2C,IAAfnE,KAAKkT,cAAqB/O,GAC/EmF,MAEF/d,EAAE,mBAAmBwK,YAAYyiB,SAE9BjtB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAsOtCghB,GACyB,MAAhB9U,GAzVf,WACE,GAA8B,IAA1B9D,EAAU6Y,YAAmB,CAC/B,MAAMf,EAAapsB,EAAE,mBAErBosB,EAAW5hB,YAAYwgB,GAAoB,uBAE3C,MAAMoC,EAAWlgC,SAAS4D,cAAc,OACxCs8B,EAAShL,GAAK,gBACdgK,EAAW5hB,YAAY4iB,GACvB,MAAMC,EApCK,KADQp+B,EAqCcwlB,KAAK6Y,iBAnC/B,CAAEhT,KAAM,SAAU9d,MAAOma,GAErB,IAAT1nB,EACK,CAAEqrB,KAAM,aAAc9d,MAAO8Z,GAEzB,IAATrnB,EACK,CAAEqrB,KAAM,SAAU9d,MAAO+Z,GAErB,IAATtnB,EACK,CAAEqrB,KAAM,QAAS9d,MAAOga,GAEpB,IAATvnB,EACK,CAAEqrB,KAAM,cAAe9d,MAAOka,GAEhC,CAAE4D,KAAM,qBAAsB9d,MAAOia,GAsB1C2W,EAASn7B,YAAco7B,EAAW/S,KAClC8S,EAAS/9B,UAAY8mB,EAAgBkX,EAAW7wB,WAC3CwD,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAxC5C,IAAuBjd,EAsXjBs+B,GACyB,MAAhBnV,GA3kBf,WACE,MAAM4J,SAAEA,GAAavN,KAAKwN,QAAQ,gBAC5BuL,EAAYxL,EAASyL,aAAazL,EAAS0L,WAAWrV,KAE5D,GAA8B,IAA1B/D,EAAUqZ,aAAqBH,GAAaxL,EAAS4L,OAAQ,CAC/D,MAAMxB,EAAapsB,EAAE,mBAGrBosB,EAAW5hB,YAAYwgB,GAAoB,cAC3C,MAAM/Q,EAAO/sB,SAAS4D,cAAc,OACpCmpB,EAAKmI,GAAK,gBACVgK,EAAW5hB,YAAYyP,GACvB,MAAMwN,EAAapN,GACjBmR,GAA4BxJ,EAAS4J,MAAO5J,EAAS4L,OAAQJ,IAM/D,GAJAvT,EAAKhoB,YAAcw1B,EAAWnN,KAC9BL,EAAK5qB,UAAY8mB,EAAgBsR,EAAWjrB,MAGxCgxB,GAAaxL,EAAS4J,MAAO,CAC/BQ,EAAW5hB,YAAYwgB,GAAoB,iBAC3C,MAAM6C,EAAU3gC,SAAS4D,cAAc,OACvC+8B,EAAQzL,GAAK,mBACbgK,EAAW5hB,YAAYqjB,GACvB,MAAMC,EAAgBzT,GACpBmR,GACEr0B,KAAK6D,IAAI,EAAGgnB,EAAS4J,MAAQ4B,GAC7BxL,EAAS4L,OACT5L,EAAS4J,QAGbiC,EAAQ57B,YAAc67B,EAAcxT,KACpCuT,EAAQx+B,UAAY8mB,EAAgB2X,EAActxB,MAIpD,GAAoB,MAAhB6b,GAAqB,CACvB+T,EAAW5hB,YACTwgB,GAAoB,8BAEtB,MAAM+C,EAAU7gC,SAAS4D,cAAc,OACvCi9B,EAAQ3L,GAAK,IACbgK,EAAW5hB,YAAYujB,GACvB,MAAMC,EAAS9gC,SAAS4D,cAAc,QACtCk9B,EAAOn3B,MAAM2F,MAAQ,UACrBwxB,EAAO/7B,YAAc2mB,GACnBzhB,KAAK2D,IACqC,KAAvC2Z,KAAKkT,QAAU3B,MACa,GAA7BxI,GAAkC,IAEpC,GAEFuQ,EAAQvjB,YAAYwjB,GACpB,MAAMC,EAAY/gC,SAAS4D,cAAc,QACzCm9B,EAAUh8B,YAAc,MACxB87B,EAAQvjB,YAAYyjB,GACpB,MAAMC,EAAOhhC,SAAS4D,cAAc,QACpCo9B,EAAKr3B,MAAM2F,MAAQ,MACnB0xB,EAAKj8B,YAAc2mB,GAAyD,GAA7B4E,GAAkC,GAAI,GACrFuQ,EAAQvjB,YAAY0jB,GAGtBluB,EAAE,iBAAiBwK,YAAY4hB,QAC1BpsB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OA6gBtCiiB,GACyB,MAAhB/V,GA/pBf,WACE,MAAM4J,SAAEA,GAAavN,KAAKwN,QAAQmM,KAClC,GACE9Z,EAAU+Z,cAC2C,IAArDrM,EAASsM,KAAKjW,GAAY,IAAIA,GAAY,IAAI,GAC9C,CACA,MAAMkW,EACJvM,EAASsM,KAAKjW,GAAY,IAAIA,GAAY,IAAI,GAC9C2J,EAASwM,WAAWxM,EAASsM,KAAKjW,GAAY,IAAIA,GAAY,IAAI,GAAK,GACpEkW,OACCE,EACJzM,EAASwM,WAAWxM,EAASsM,KAAKjW,GAAY,IAAIA,GAAY,IAAI,GAAK,GACpEllB,KACL6M,EAAE,mBAAmBwK,YACnBwgB,GAAoB,+BAEtB,MAAMgD,EAAS9gC,SAAS4D,cAAc,OACtCk9B,EAAO5L,GAAK,uBACZpiB,EAAE,mBAAmBwK,YAAYwjB,GACf,cAAdS,EACFzuB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACI3V,GAA4BzhB,KAAK2D,IAAmB,IAAf2Z,KAAKkT,QAAiC,GAAjBlT,KAAKoR,UAAiB,KAChF,SACAjN,GAA6C,GAAjBnE,KAAKoR,UAAiB,MACjC,cAAd4I,GAA2C,oBAAdA,EACtCzuB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACI3V,GAA4BzhB,KAAK2D,IAAmB,IAAf2Z,KAAKkT,QAAiC,GAAjBlT,KAAKoR,UAAiB,IAChF,SACAjN,GAA6C,GAAjBnE,KAAKoR,UAAiB,KACjC,cAAd4I,EACTzuB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACI3V,GAA4BzhB,KAAK2D,IAAmB,IAAf2Z,KAAKkT,QAAiC,GAAjBlT,KAAKoR,UAAiB,KAChF,SACAjN,GAA6C,GAAjBnE,KAAKoR,UAAiB,MACjC,cAAd4I,EACTzuB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACI3V,GAA4BzhB,KAAK2D,IAAmB,IAAf2Z,KAAKkT,QAAiC,GAAjBlT,KAAKoR,UAAiB,MAChF,SACAjN,GAA6C,GAAjBnE,KAAKoR,UAAiB,OACnD7lB,EAAE,iBAAiBnJ,MAAMqV,QAAU,YACrClM,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAonBtCwiB,GACyB,OAAhBtW,GAngBf,WACE,MAAM4J,SAAEA,GAAavN,KAAKwN,QAAQmM,KAClC,GAAI9Z,EAAU6Y,YAAa,CACzBntB,EAAE,mBAAmBwK,YACnBwgB,GAAoB,oCAEtB,IAAI2D,EAAY,EACZC,EAAS,EACTna,KAAKxf,KAAK,KAAOwf,KAAKxf,KAAK,MAAK25B,EAAS,GAC7C,IAAK,IAAI71B,EAAI,EAAGA,EAAI,EAAGA,IACrB,IAAK,IAAID,EAAI,EAAGA,EAAI,EAAGA,IACrB,GAAIkpB,EAASsM,KAAKv1B,GAAGD,GAAG,IAAM,EAAG,CAC/B,MAAM+1B,EAAO7M,EAASsM,KAAKv1B,GAAGD,GACxBisB,EAAK/C,EAASwM,WAAWK,EAAK,GAAK,GACnCJ,EAAY1J,EAAG5xB,KAErB,IAAIm0B,GAAQ,EACRsH,GAAU7J,EAAG+J,WAAUxH,GAAQ,GAC/BuH,EAAK,GAAK9J,EAAGgK,aAAYzH,GAAQ,GACjCA,GAAuB,cAAdmH,EACXE,GAAax3B,KAAK2D,IACD,IAAf2Z,KAAKkT,QACY,GAAjBlT,KAAKoR,UAAiB,IAGvByB,GAAuB,cAAdmH,GACI,oBAAdA,EAEAE,GAAax3B,KAAK2D,IAAmB,IAAf2Z,KAAKkT,QAAiC,GAAjBlT,KAAKoR,UAAiB,GACxDyB,GAAuB,cAAdmH,EAClBE,GAAax3B,KAAK2D,IACD,IAAf2Z,KAAKkT,QACY,GAAjBlT,KAAKoR,UAAiB,IAEfyB,GAAuB,cAAdmH,IAClBE,GAAax3B,KAAK2D,IACD,IAAf2Z,KAAKkT,QACY,GAAjBlT,KAAKoR,UAAiB,MAMhC7lB,EAAE,mBAAmBwK,YACnBtd,SAASqgB,eAAeqL,GAA4B+V,UAEjD3uB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAsdtC8iB,GACyB,OAAhB5W,GAnDf,WACEpY,EAAE,WAAWoM,UAAY,GACzBpM,EAAE,WAAWwK,YAAYwgB,GAAoB,YAE7C,MAAMiE,EAAiB/hC,SAAS4D,cAAc,OAC9Cm+B,EAAe7M,GAAK,mBACA,WAAhB/J,GACF4W,EAAeh9B,YAAc2mB,GAA4BuF,IAChC,eAAhB9F,KACT4W,EAAeh9B,YAAc2mB,GAA4ByF,GAAsB,KAGjFre,EAAE,WAAWwK,YAAYykB,GAwCrBC,IAEgB,QAAhB9W,IACiB,QAAhBA,KAA6C,IAApBC,GAAY,KA5c5C,WACE,GAAkC,IAA9B/D,EAAU6a,gBAAuB,CACnC,MAAM/C,EAAapsB,EAAE,mBACrB,IAAIovB,EACuBA,EAAP,QAAhBhX,GAA+BC,GAAY,GAClCA,GAGb+T,EAAW5hB,YAAYwgB,GAAoB,0BAC3C,MAAMqE,EAAOniC,SAAS4D,cAAc,OAEpC,GADAu+B,EAAKjN,GAAK,6BACkB,IAAxBlC,GAAUkP,GAAO,GAAU,CAC7BC,EAAKp9B,YAAc2mB,GAA4BsH,GAAUkP,GAAO,IAChE,MAAM5C,EAAWr1B,KAAKC,MACnB8oB,GAAUkP,GAAO,GAAK3a,KAAKoR,UAAa,KAEvCxM,OAAOC,SAASkT,IAA0B,IAAbA,EAC/B6C,EAAKp9B,aAAe,KAAKu6B,EAAW,kBAEpC6C,EAAKp9B,aAAe,OAClBqiB,EAAUmF,eAAiB,IAAM,yBAGhC4V,EAAKp9B,YAAc,mBAC1Bm6B,EAAW5hB,YAAY6kB,GAEvBjD,EAAW5hB,YAAYwgB,GAAoB,0BAC3C,MAAMsE,EAAOpiC,SAAS4D,cAAc,OAEpC,GADAw+B,EAAKlN,GAAK,6BACkB,IAAxBlC,GAAUkP,GAAO,GAAU,CAC7BE,EAAKr9B,YAAc2mB,GAA4BsH,GAAUkP,GAAO,IAChE,MAAM5C,EAAWr1B,KAAKC,MACnB8oB,GAAUkP,GAAO,GAAK3a,KAAKoR,UAAa,KAEvCxM,OAAOC,SAASkT,IAA0B,IAAbA,EAC/B8C,EAAKr9B,aAAe,KAAKu6B,EAAW,kBAEpC8C,EAAKr9B,aAAe,OAClBqiB,EAAUmF,eAAiB,IAAM,yBAGhC6V,EAAKr9B,YAAc,mBAC1Bm6B,EAAW5hB,YAAY8kB,GAEvBlD,EAAW5hB,YAAYwgB,GAAoB,0BAC3C,MAAMuE,EAAOriC,SAAS4D,cAAc,OAEpC,GADAy+B,EAAKnN,GAAK,6BACkB,IAAxBlC,GAAUkP,GAAO,GAAU,CAC7BG,EAAKt9B,YAAc2mB,GAA4BsH,GAAUkP,GAAO,IAChE,MAAM5C,EAAWr1B,KAAKC,MACnB8oB,GAAUkP,GAAO,GAAK3a,KAAKoR,UAAa,KAEvCxM,OAAOC,SAASkT,IAA0B,IAAbA,EAC/B+C,EAAKt9B,aAAe,KAAKu6B,EAAW,kBAEpC+C,EAAKt9B,aAAe,OAClBqiB,EAAUmF,eAAiB,IAAM,yBAGhC8V,EAAKt9B,YAAc,mBAC1Bm6B,EAAW5hB,YAAY+kB,GAEvBvvB,EAAE,iBAAiBwK,YAAY4hB,QAC1BpsB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OA+YtCsjB,GA/LN,WACE,GAAoB,MAAhBpX,IAAuC,MAAhBA,GAAqB,CACgB,OAA1DlrB,SAASuiC,eAAe,gCAC1BzvB,EAAE,iBAAiBwK,YAnuBzB,WACE,MAAMklB,EAAcxiC,SAAS4D,cAAc,OAC3C4+B,EAAY74B,MAAMgI,SAAW,WAC7B6wB,EAAY74B,MAAMqV,QAAU,QAC5BwjB,EAAY74B,MAAMqC,KAAO,OACzBw2B,EAAY74B,MAAMkW,OAAS,OAC3B2iB,EAAYtN,GAAK,6BAEjB,MAAMuN,EAAS,SACbC,EACApzB,EACAqzB,EACAC,EACAC,GAEA,MAAMpnB,EAAMzb,SAAS4D,cAAc,OACnC6X,EAAIyZ,GAAKwN,EACTjnB,EAAI9R,MAAMqV,QAAU,OACpBvD,EAAI9R,MAAMm5B,WAAa,wBACvBrnB,EAAItZ,UAluDgB,WAkuDcmN,EAClCmM,EAAI9R,MAAMwK,QAAU,MACpBsH,EAAI9R,MAAMqB,WAAa,8BACvB,MAAM+3B,EAAW/iC,SAAS4D,cAAc,OACxC6X,EAAI6B,YAAYylB,GAChB,MAAMC,EAAYhjC,SAAS4D,cAAc,QACzCo/B,EAAU7gC,UAAY8mB,EAAgB3Z,EACtC0zB,EAAUr5B,MAAMo0B,WAAa,OAC7BiF,EAAUj+B,YAAc49B,EACxBI,EAASzlB,YAAY0lB,GACrBD,EAASzlB,YAAYtd,SAASqgB,eAAeuiB,IAC7C,MAAMK,EAAajjC,SAAS4D,cAAc,OAC1C6X,EAAI6B,YAAY2lB,GAChB,MAAMC,EAAcljC,SAAS4D,cAAc,QAI3C,OAHAs/B,EAAYhO,GAAK2N,EACjBI,EAAW3lB,YAAYtd,SAASqgB,eAAe,cAC/C4iB,EAAW3lB,YAAY4lB,GAChBznB,GA+DT,OA5DA+mB,EAAYllB,YACVmlB,EACE,yBACAlZ,EACA,YACA,uFACA,+BAGJiZ,EAAYj+B,WAAWoF,MAAMw0B,aAAe,MAC5CqE,EAAYllB,YACVmlB,EACE,+BACApZ,EACA,YACA,gGACA,qCAGJmZ,EAAYxI,UAAUrwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,2BACAjZ,EACA,YACA,oGACA,iCAGJgZ,EAAYxI,UAAUrwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,iCACAjZ,EACA,YACA,6GACA,uCAGJgZ,EAAYxI,UAAUrwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,2BACAjZ,EACA,YACA,qJACA,iCAGJgZ,EAAYxI,UAAUrwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,wBACAlZ,EACA,YACA,2EAA2EnC,EAAU+b,8BACrF,8BAIGX,EAgoB4BY,IAC/BrE,MAG4B,IAA1B3X,EAAU4X,YACZlsB,EAAE,8BAA8BnJ,MAAMkI,MAAQ,MAE9CiB,EAAE,8BAA8BnJ,MAAMsC,IAAM,GAC1C6G,EAAE,WAAWxG,iBAGjBwG,EAAE,8BAA8BnJ,MAAMkG,MACpCiD,EAAE,WAAWzG,YAAc,EADiB,KAI9C,MAAM0pB,EAASxO,KAAKkT,QAAU3B,KAAuB9N,EAC/CqY,EAAkBjc,EAAUkc,YAAcrY,GAAqB,EACrE,IAAIsY,EAAa3T,GACjB,GAA8B,IAA1BxI,EAAUkc,YAAmB,CAC/B,IAAIE,EAAcvY,GAClBuY,GAAe5E,KACf2E,GAA6B,GAAdC,EAAmB,GAAM,IAc1C,GAXgC,IAA5Bpc,EAAUqc,eACR1N,EAASwN,IAA+B,MAAhBrY,IAAwC,IAAjB3D,KAAKmP,UACtD5jB,EAAE,0BAA0BnJ,MAAMqV,QAAU,GAC5ClM,EAAE,8BAA8B/N,YAAc,GAAG2mB,GAC/C6X,EAAaxN,OACTjJ,IACHyW,EAAaxN,IAAWyC,KAAW6K,QAGnCvwB,EAAE,0BAA0BnJ,MAAMqV,QAAU,OAEb,IAAlCoI,EAAUsc,oBAA2B,CACvC,MAAMC,EAAgC,EAAbJ,EAEvBxN,EAAS4N,IACQ,MAAhBzY,IAAwC,IAAjB3D,KAAKmP,UAE7B5jB,EAAE,gCAAgCnJ,MAAMqV,QAAU,GAClDlM,EAAE,oCAAoC/N,YAAc,GAAG2mB,GACrDiY,EAAmB5N,OACfjJ,IACH6W,EAAmB5N,IAAWyC,KAAW6K,QAEvCvwB,EAAE,gCAAgCnJ,MAAMqV,QAAU,YACpDlM,EAAE,gCAAgCnJ,MAAMqV,QAAU,OAEzD,GAAkC,IAA9BoI,EAAUwc,gBAAuB,CACnC,MAAMC,EAA4B,EAAbN,EAEnBxN,EAAS8N,IACQ,MAAhB3Y,IAAwC,IAAjB3D,KAAKmP,UAE7B5jB,EAAE,4BAA4BnJ,MAAMqV,QAAU,GAC9ClM,EAAE,gCAAgC/N,YAAc,GAAG2mB,GACjDmY,EAAe9N,OACXjJ,IACH+W,EAAe9N,IAAWyC,KAAW6K,QAEnCvwB,EAAE,4BAA4BnJ,MAAMqV,QAAU,YAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,OAErD,GAAwC,IAApCoI,EAAU0c,sBAA6B,CACzC,MAAMC,EAAkC,EAAbR,EAAiB,EAE1CxN,EAASgO,IACQ,MAAhB7Y,IAAwC,IAAjB3D,KAAKmP,UAE7B5jB,EAAE,kCAAkCnJ,MAAMqV,QAAU,GACpDlM,EAAE,sCAAsC/N,YAAc,GAAG2mB,GACvDqY,EAAqBhO,OACjBjJ,IACHiX,EAAqBhO,IAAWyC,KAAW6K,QAEzCvwB,EAAE,kCAAkCnJ,MAAMqV,QAAU,YACtDlM,EAAE,kCAAkCnJ,MAAMqV,QAAU,OAG3B,IAA9BoI,EAAU4c,iBACVzc,KAAKwN,QAAQ,gBAAgBU,gBAG3BrF,IACA2F,EAAS3F,KACQ,MAAhBlF,IAAwC,IAAjB3D,KAAKmP,UAE7B5jB,EAAE,4BAA4BnJ,MAAMqV,QAAU,GAC9ClM,EAAE,gCAAgC/N,YAAc,GAAG2mB,GACjD0E,GAAe2F,OACXjJ,IACHsD,GAAe2F,IAAWyC,KAAW6K,QAGrCvwB,EAAE,4BAA4BnJ,MAAMqV,QAAU,OAEjDoI,EAAU+b,aAAe,GAEzBpN,EAAS3O,EAAU+b,aAAe3K,OACjB,MAAhBtN,IAAwC,IAAjB3D,KAAKmP,UAE7B5jB,EAAE,yBAAyBnJ,MAAMqV,QAAU,GAE3ClM,EACE,yBACAmxB,SAAS,GAAGl/B,YAAc,2EAA2EqiB,EAAU+b,8BACjHrwB,EAAE,6BAA6B/N,YAAc,GAAG2mB,GAC9CtE,EAAU+b,aAAe3K,KAAWzC,OAChCjJ,IACH1F,EAAU+b,aAAe3K,KAAWzC,IAClCyC,KAAW6K,QAGbvwB,EAAE,yBAAyBnJ,MAAMqV,QAAU,YACL,OAApClM,EAAE,+BACXA,EAAE,8BAA8B9J,SAyEhCk7B,QACgC,OAAvBpxB,EAAE,kBAE6B,OAApCA,EAAE,+BACJA,EAAE,8BAA8B9J,SA0FtC,SAASm7B,KAEP,GACE5c,KAAK6c,MAAMC,UACX9c,KAAK+c,MAAQ,IAAO,GACJ,UAAhB/c,KAAKgd,QACLnd,EAAUod,MACV,CACA,MAAM/K,EAAQz5B,SAASuiC,eAAe,wBAClC9I,IACFA,EAAMgL,UAAYld,KAAKmd,QACV,GAAXnd,KAAKoX,IAAYpX,KAAKod,GAAgB,GAAXpd,KAAKoX,KAChC,IA6BN,GAvBAlI,KACAU,KA3hDF,WACE,GAA2B,IAAvB/P,EAAU0T,SAAgB,CAE5B,MAAM8J,EAAiB9xB,EAAE,cAAczG,YAAc,IAE/Cw4B,EAAiB/xB,EAAE,cAAczG,YAAc,IACrD,IAAIy4B,EAAiB,EAIkB,IAArCvd,KAAKwd,aAAaC,OAAOC,SACxB1d,KAAK2d,IAAI,uBA+CLpyB,EAAE,gBAAgBnJ,MAAMqV,QAAU,QA7CvClM,EAAE,gBAAgBnJ,MAAMqV,QAAU,GAClClM,EAAE,sBAAsBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MAC3CD,KAAK6D,IACJ,EACAyZ,KAAKwd,aAAaC,OAAOG,QAAU5d,KAAKwd,aAAaC,OAAOjY,MAE5D6X,EACArd,KAAKwd,aAAaC,OAAOI,aAEzBhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,sBAAsB/N,YAAckF,KAAKoL,MACxCkS,KAAKwd,aAAaC,OAAOG,QAAU5d,KAAKwd,aAAaC,OAAOjY,MAC3DxF,KAAKoX,KAEN7rB,EAAE,sBAAsB/N,YAAc,GAEzCwiB,KAAKwd,aAAaC,OAAOG,UAAY5d,KAAKwd,aAAaC,OAAOI,SAE9DtyB,EAAE,sBAAsBnJ,MAAM4vB,qBAAuB,OACrDzmB,EAAE,sBAAsBnJ,MAAM6vB,wBAA0B,SAExD1mB,EAAE,sBAAsBnJ,MAAM4vB,qBAAuB,GACrDzmB,EAAE,sBAAsBnJ,MAAM6vB,wBAA0B,IAE1D1mB,EAAE,mBAAmBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MACxCD,KAAK2D,IACJ2Z,KAAKwd,aAAaC,OAAOI,QAAU7d,KAAKwd,aAAaC,OAAOG,QAC5D5d,KAAKwd,aAAaC,OAAOI,QAAU7d,KAAKwd,aAAaC,OAAOjY,MAE5D6X,EACArd,KAAKwd,aAAaC,OAAOI,aAEzBhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,mBAAmB/N,YAAckF,KAAKoL,KACtCpL,KAAK2D,IACH2Z,KAAKwd,aAAaC,OAAOI,QAAU7d,KAAKwd,aAAaC,OAAOG,QAC5D5d,KAAKwd,aAAaC,OAAOI,QAAU7d,KAAKwd,aAAaC,OAAOjY,MAC1DxF,KAAKoX,KAER7rB,EAAE,mBAAmB/N,YAAc,GACxC+N,EAAE,oBAAoB/N,YAAckF,KAAKoL,MACtCkS,KAAKwd,aAAaC,OAAOI,QAAU7d,KAAKwd,aAAaC,OAAOjY,MAC3DxF,KAAKoX,KAETmG,GAAkB,GAKF,cAAhBvd,KAAK+d,QACkC,IAAvC/d,KAAKwd,aAAaQ,SAASN,SAE3BnyB,EAAE,iBAAiBnJ,MAAMqV,QAAU,GACnClM,EAAE,uBAAuBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MAC5CD,KAAK6D,IACJ,EACAyZ,KAAKwd,aAAaQ,SAASJ,QAAU5d,KAAKwd,aAAaQ,SAASxY,MAEhE6X,EACArd,KAAKwd,aAAaQ,SAASH,aAE3Bhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,uBAAuB/N,YAAckF,KAAKoL,MACzCkS,KAAKwd,aAAaQ,SAASJ,QAC1B5d,KAAKwd,aAAaQ,SAASxY,MAC3BxF,KAAKoX,KAEN7rB,EAAE,uBAAuB/N,YAAc,GAC5C+N,EAAE,oBAAoBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MACzCD,KAAK2D,IACJ2Z,KAAKwd,aAAaQ,SAASH,QACzB7d,KAAKwd,aAAaQ,SAASJ,QAC7B5d,KAAKwd,aAAaQ,SAASH,QAAU7d,KAAKwd,aAAaQ,SAASxY,MAEhE6X,EACArd,KAAKwd,aAAaQ,SAASH,aAE3Bhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,oBAAoB/N,YAAckF,KAAKoL,KACvCpL,KAAK2D,IACH2Z,KAAKwd,aAAaQ,SAASH,QACzB7d,KAAKwd,aAAaQ,SAASJ,QAC7B5d,KAAKwd,aAAaQ,SAASH,QACzB7d,KAAKwd,aAAaQ,SAASxY,MAC3BxF,KAAKoX,KAER7rB,EAAE,oBAAoB/N,YAAc,GACzC+N,EAAE,qBAAqB/N,YAAckF,KAAKoL,MACvCkS,KAAKwd,aAAaQ,SAASH,QAAU7d,KAAKwd,aAAaQ,SAASxY,MAC/DxF,KAAKoX,KAETmG,GAAkB,GAElBhyB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAIrC,MAAMwmB,EAAgB,GACtB1yB,EAAE,wBAAwBoM,UAAY,GACtCha,OAAO6C,KAAKwf,KAAKsX,OAAOjI,SAASl1B,IAC/B,GAAI6lB,KAAKsX,MAAMn9B,GAAI,CACjB,MAAM+3B,EAAQV,GAAYxR,KAAKsX,MAAMn9B,GAAGuE,KAAMshB,KAAKsX,MAAMn9B,GAAGuE,KAAM,CAChE,CAAEivB,GAAI,GAAG3N,KAAKsX,MAAMn9B,GAAGuE,aAEzBwzB,EAAM9vB,MAAMqV,QAAU,GACtB,IAAIymB,EAAc,GAGhBA,OAD6C,IAApChb,EAAYlD,KAAKsX,MAAMn9B,GAAGuE,MACrBwkB,EAAYlD,KAAKsX,MAAMn9B,GAAGuE,MACrBujB,EACrBiQ,EAAMO,UAAUiK,SAAS,GAAG9hC,UAAY+mB,EAAgBuc,EACxDhM,EAAMO,UAAUiK,SAAS,GAAGt6B,MAAM2F,MAAQ,QACR,IAA9B8X,EAAUie,gBACZ5L,EAAMO,UAAUiK,SAAS,GAAGl/B,YAAc,GAAGkF,KAAKC,MACzCqd,KAAKsX,MAAMn9B,GAAGqrB,KAAOxF,KAAKsX,MAAMn9B,GAAG0jC,QAA1C,QAEC3L,EAAMO,UAAUiK,SAAS,GAAGl/B,YAAc,GAC/C00B,EAAMO,UAAUiK,SAAS,GAAGt6B,MAAMkG,MAAQ,GAAG5F,KAAKC,MAC/Cqd,KAAKsX,MAAMn9B,GAAGqrB,MACZ8X,EAC8D,EAA7D56B,KAAKoL,KAAKkS,KAAKsX,MAAMn9B,GAAGqrB,KAAOxF,KAAKoX,KAAKx0B,WAAWxI,QACtD4lB,KAAKsX,MAAMn9B,GAAG0jC,aAElB3L,EAAMO,UAAUiK,SAAS,GAAGl/B,YAAckF,KAAKoL,KAC7CkS,KAAKsX,MAAMn9B,GAAGqrB,KAAOxF,KAAKoX,KAE5BmG,GAAkB,EAClBU,EAAcje,KAAKsX,MAAMn9B,GAAGuE,MAAQwzB,MAGxCv0B,OAAO6C,KAAKy9B,GAAe5O,SAASl1B,IAClCoR,EAAE,wBAAwBwK,YAAYkoB,EAAc9jC,OAG/B,IAAnBojC,IACFhyB,EAAE,cAAcnJ,MAAMmG,OAA6B,GAAjBg1B,EAAsB,EAAzB,MAE7BxZ,KAAuBwZ,IACzBxZ,GAAqBwZ,EACrBjK,OAs4CJ6K,GAGAxL,KAGA+E,KAtGF,WACE,GAA+B,IAA3B7X,EAAUue,cAA8C,IAAxB1b,EAA2B,CAE7D,IAAI2b,GAAiB,EACrB1gC,OAAO6C,KAAKwf,KAAKsR,WAAWjC,SAASl1B,IACnC,MAAMm2B,EAAKtQ,KAAKsR,UAAUn3B,GAC1B,GAAIm2B,EAAGgO,MAAQ,GAAKhO,EAAGiO,UAErB,GADAF,GAAiB,EAEkB,IAAjCzb,EAA0BzoB,SACOI,IAAjCqoB,EAA0BzoB,GAC1B,CACA,MAAMqkC,EAAc/lC,SAAS4D,cAAc,OACrCoiC,EAAWhmC,SAAS4D,cAAc,OACxCoiC,EAASr8B,MAAMs8B,SAAW,QAC1BD,EAASr8B,MAAMw0B,aAAe,MAC9B,MAAMlG,EAAMj4B,SAAS4D,cAAc,OACnCq0B,EAAItuB,MAAMuW,UAAY,SACtB+X,EAAI/C,GAAK,oBACT8Q,EAAS1oB,YAAY2a,GACrB8N,EAAYzoB,YAAY0oB,GACxBze,KAAK0W,QAAQ/kB,KAAK9Y,KAAM8lC,OAAOH,EAAY7mB,YAC3CgL,EAAkBxoB,EAClByoB,EAA0BzoB,GAAK,QAGjCyoB,EAA0BzoB,GAAK,KAG9BkkC,GACHre,KAAK0W,QAAQvlB,QA2EjBytB,GAjEF,WACE,GAA+B,IAA3B/e,EAAUue,cAAiD,OAA3B7yB,EAAE,qBAA+B,CACnE,IAAIszB,OAAEA,GAAW7e,KAAKsR,UAAU3O,GAC5Bmc,EAAS,IAKb,GAJI9e,KAAK2d,IAAI,6BAA4BmB,GAAU,MACN,IAAzC9e,KAAKsR,UAAU3O,GAAiBnoB,OAAYskC,GAAU,GAC1DD,GAAUC,EACN9e,KAAK2d,IAAI,mBAAkBkB,GAAU,MACrCzS,GAAWkB,OAAOY,eAAgB,CACpC,MAAMC,EAASnO,KAAKqN,OAAO,SACZ,IAAXc,EAAc0Q,GAAU,KACR,IAAX1Q,EAAc0Q,GAAU,IACb,IAAX1Q,IAAc0Q,GAAU,MAEnCtzB,EAAE,qBAAqB/N,YAAc2mB,GAA4B0a,IAoDnEE,GAl4CElf,EAAUmf,SACM,UAAhBhf,KAAKgd,SACJhd,KAAK+c,MAAQ,IAAiB,EAAX/c,KAAKoX,MAAa,IACrCpX,KAAK+c,MAAQ,GAAK/c,KAAKoX,KAAQ,GAEhCpX,KAAKif,aAm4CPnf,IAGID,EAAU6E,MAAO,CACnB,IAAInpB,EAAMgQ,EAAE,WAAWoM,UAAU5W,QAC/B,cACAojB,GAA4BnE,KAAKkT,UAE/BlT,KAAK6c,MAAMqC,YAAW3jC,EAAM,2BAA2BA,YAC3DgQ,EAAE,WAAWoM,UAAYpc,GAiB7B,MAAM4jC,GACJC,YAAYC,GACVxmC,KAAKwmC,UAAYA,EACjBxmC,KAAKymC,MAAQ,GAGfF,UAAUG,GACJ1mC,KAAKymC,MAAMrjC,KAAKsjC,GAAY1mC,KAAKwmC,WACnCxmC,KAAKymC,MAAMxgB,QASfsgB,YAAYI,GACV,IAAIha,EAAOga,EACPha,EAAO3sB,KAAKwmC,YAAW7Z,EAAO3sB,KAAKwmC,WACnC7Z,EAAO3sB,KAAKymC,MAAMllC,SAAQorB,EAAO3sB,KAAKymC,MAAMllC,QAChD,IAAI0M,EAAM,EACV,IACE,IAAI3M,EAAItB,KAAKymC,MAAMllC,OAAS,EAC5BD,GAAK,GAAKA,EAAItB,KAAKymC,MAAMllC,OAAS,EAAIorB,EACtCrrB,IAEA2M,GAAOjO,KAAKymC,MAAMnlC,GAEpB,OAAY,IAAR2M,EACK,EAEFA,EAAM0e,GA+BjB,SAASia,KACP,MAAMC,EAAWh9B,KAAKkE,MAAM+4B,KAAKC,MAAQ,KAEzC,GAAK5f,KAAKod,EAAIpd,KAAKoX,IAAO,GAAM,EAAG,CACjC,IAAIyI,EAAc7f,KAAKkT,QAAU1H,GAC7BxL,KAAKqR,UAAY,IAAGwO,GAAenW,IACvCsB,GAAyBtoB,KAAK6D,IAAIyZ,KAAK8f,cAAeD,GACtDA,GAAe,IAGf,MAAME,EAAWL,EAAWtZ,GACtB4Z,EAAct9B,KAAK6D,IAAI,EAAGyZ,KAAKkT,QAAU7M,IAAoB0Z,EAC7DE,EACJv9B,KAAK6D,IAAI,EAAGmjB,GAAsBpD,IAAyByZ,EACvDG,EACJx9B,KAAK6D,IAAI,EAAGqjB,GAAsB,GAAKrD,IACvCwZ,EACII,EAAgBz9B,KAAK6D,IAAI,EAAGs5B,EAAcvW,IAAmByW,EAC7DK,GAAiBpgB,KAAKqgB,aAAe7Z,IAAmBuZ,EAC9D,IAAK,IAAI5lC,EAAI,EAAGA,EAAI4lC,EAAU5lC,IAC5B2rB,GAAYwa,UAAUN,GACtBja,GAAUua,UAAUL,GACpBja,GAAiBsa,UAAUJ,GAC3Bja,GAAWqa,UAAUH,GACrBja,GAAWoa,UAAUF,GAIvBha,GAAoBsZ,EACpBrZ,GAAmBrG,KAAKkT,QACxB5M,GAAwBoD,GACxBnD,GAA+BqD,GAAsB,GACrDN,GAAkBuW,EAClBrZ,GAAkBxG,KAAKqgB,aAGvB,MAAME,EAAYvd,EAAYnD,EAAU2gB,YACxC/Z,GAAuBX,GAAY2a,YAAYF,GAC/C7Z,GAAwBX,GAAU0a,YAAYF,GAC9C5Z,GAA+BX,GAAiBya,YAAYF,GAC5D3Z,GAAyBX,GAAWwa,YAAYF,GAChD1Z,GAAkBJ,GACU,IAAxB5G,EAAUsR,YAAiBtK,IAAmBH,IACtB,IAAxB7G,EAAUsR,YACZtK,IAAmBF,IAErB,MAAM+Z,EACJ1gB,KAAK2gB,YAAY,mBAAqB3gB,KAAK2d,IAAI,iBAG/C1S,GADEyV,GAAkC,IAAxB7gB,EAAUsR,UAEpB1K,GACAC,IACCga,EAAS9Z,GAAyB,GACRC,GAE/BmD,GAAqB9D,GAAWua,YAC9Bxd,EAAWpD,EAAU+gB,iBAkB3B,SAASC,GAAWvQ,EAAIxC,GACtB,IAAI/lB,EAAQ,GAmBZ,OAjBsCA,EAAlCuoB,EAAG7kB,IAAM,GAAK6kB,EAAG7kB,KAAOgZ,IAAkBvC,EACrCoO,EAAG7kB,GAAK4f,GAAoBzJ,EAC5B0O,EAAG7kB,KAAO4f,GAAoBxJ,EAC9ByO,EAAG7kB,GAAK6f,GAAa,IAAI,GAAYxJ,EACrCwO,EAAG7kB,GAAK6f,GAAa,IAAI,GAAYvJ,EACrCuO,EAAG7kB,GAAK6f,GAAa,IAAI,GAAYtJ,EACjCC,EAGiC,IAA1C2C,OAAO/E,EAAUihB,sBACfhT,EAAQmD,KAAWrM,OAAO/E,EAAUihB,uBACtC/4B,EAAQ6Z,GAGR/B,EAAUkhB,uBACRjT,EAAQ9N,KAAKkT,QAAU,IAAGnrB,EAAQia,GAEjCja,EAiBT,SAASi5B,GAAYxhC,EAAQgvB,GAC3B7wB,OAAO6C,KAAKhB,GAAQ6vB,SAASl1B,IAC3B,GAAI0lB,EAAUohB,eAA4B,IAAXzS,EAC7BhvB,EAAOrF,GAAG4N,MAAQma,MADpB,CAIA1iB,EAAOrF,GAAG4N,MAAQ84B,GAChBrhC,EAAOrF,GACP6lB,KAAKwN,QAAQrzB,GAAG+mC,YAAY1S,IAG9B,IAAK,IAAIgC,EAAI,EAAGA,EAAI3Q,EAAUshB,aAAc3Q,IACtChxB,EAAOrF,GAAGsR,KAAO6f,GAAakF,GAAG,KAAIhxB,EAAOrF,GAAG4N,MAAQma,OAKjE,SAASkf,GAAQ5hC,EAAQgvB,GACvB7wB,OAAO6C,KAAKhB,GAAQ6vB,SAASl1B,IAC3B,MAAM2zB,EAAQ9N,KAAKwN,QAAQrzB,GAAG+mC,YAAY1S,GACtCxO,KAAKoR,UACP5xB,EAAOrF,GAAGsR,GACR/I,KAAK6D,IAAIunB,GAAS9N,KAAKkT,QAAU3B,MAAuB,GACtDvR,KAAKoR,UACPtD,EAAQtuB,EAAOrF,GAAGm4B,MACf9yB,EAAOrF,GAAGsR,GAAKqiB,EAAQtuB,EAAOrF,GAAGm4B,MAClCzS,EAAUohB,eAA4B,IAAXzS,GAC/BlD,GAAarvB,KAAK,CAACuD,EAAOrF,GAAGsR,GAAI+iB,OA8EvC,SAAS6S,MAtET,WACEhW,GAAa5G,IACb6G,GAAe,QACuB,IAA3BzL,EAAUshB,eAA8BthB,EAAUshB,aAAe,GAG5EC,GAAQ7X,GAAe,GACvB6X,GAAQ5X,GAAgB,IACxB4X,GAAQ3X,GAAiB,KAGzB6B,GAAaoE,MAAK,CAAC1sB,EAAGP,IAAMO,EAAE,GAAKP,EAAE,KACrC,IAAI6+B,EAAa,EACjB,GAAIzhB,EAAUkhB,sBACZ,KAAOzV,GAAagW,GAAY,GAAKthB,KAAKkT,UACxCoO,GAAc,EACVhW,GAAalxB,SAAWknC,EAAa,KAK7CjW,GAAaC,GAAazL,EAAUshB,cAAcG,GAElDN,GAAYzX,GAAe,GAC3ByX,GAAYxX,GAAgB,IAC5BwX,GAAYvX,GAAiB,KA8C7B8X,GAjCA5jC,OAAO6C,KAAKupB,IAAesF,SAASl1B,IAC9B6lB,KAAKoR,UACPrH,GAAc5vB,GAAGsR,GACf/I,KAAK6D,IACHyZ,KAAK0V,SAASv7B,GAAGk+B,YAAcrY,KAAKkT,QAAU3B,MAC9C,GAEAvR,KAAKoR,UACPpR,KAAK0V,SAASv7B,GAAGk+B,WAAatO,GAAc5vB,GAAGm4B,MAEjDvI,GAAc5vB,GAAGsR,GACfuU,KAAK0V,SAASv7B,GAAGk+B,WAAatO,GAAc5vB,GAAGm4B,MAC/C1N,OAAOnJ,MAAMsO,GAAc5vB,GAAGsR,MAAKse,GAAc5vB,GAAGsR,GAAKgZ,KAE7DsF,GAAc5vB,GAAG4N,MAAQ84B,GACvB9W,GAAc5vB,GACd6lB,KAAK0V,SAASv7B,GAAGk+B,eAiCvB,SAASmJ,GACPnT,EACAC,EACA3kB,EACA4kB,EACAwJ,GAEA,IAAInJ,EAAiBjlB,EACjBklB,EAAO,EACX,IAAK,IAAI10B,EAAI,EAAGA,EAAI49B,EAAU59B,GAAK,EAAG,CACpC,IAAI2zB,EACFQ,EAAYtO,KAAK+O,eAAiBrsB,KAAK6D,IAAI,EAAGqoB,EAAiBL,GACjET,EAAQ9N,KAAKgP,oBAAoBX,EAAOP,GACxCA,EAAQprB,KAAKoL,KAAKggB,GAClBe,GAAQf,EACRc,GAAkB,EAEpB,OAAOC,EA0CT,SAAS4S,GAAOjV,GACVF,GAAgBE,IACgB,IAA9BF,GAAgBE,GAAM8J,MACxBhK,GAAgBE,GAAM8J,IAAM,EACS,WAAjCtW,KAAK+T,aAAavH,GAAMS,OAAmB5F,IAAwB,IAuB7E,SAASqa,KACP3Z,GAAe,EACf,IAAImM,EAAO,EAEX,MAAMyN,EAAO,GACbhkC,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,IACjC,GAAI6lB,KAAKwN,QAAQrzB,GAAG+zB,gBAAkBlO,KAAKwN,QAAQrzB,GAAGozB,SAASoU,KAAM,CACnE,MAAMC,EAAS5hB,KAAKwN,QAAQrzB,GAAGozB,SAASoU,KACxChkC,OAAO6C,KAAKohC,GAAQvS,SAASwS,IACvBF,EAAKE,GAAKF,EAAKE,IAAOD,EAAOC,GAC5BF,EAAKE,GAAMD,EAAOC,UAI7B/Z,GAAU6Z,EAEiB,IAAvB3hB,KAAKgN,gBACPkH,GAEE,IADAzsB,WAAW8f,IAEXD,GA9EN,WACE,IAAIwa,EAAe,EAWnB,GAVIhV,GAAO,0BAAyBgV,GAAgB,KAChDhV,GAAO,2BAA0BgV,GAAgB,IACjDhV,GAAO,qBAAoBgV,GAAgB,KAC3ChV,GAAO,4BAA2BgV,GAAgB,KAClDhV,GAAO,kBAAiBgV,GAAgB,KAE5CA,GAAgB,EAAgC,IAA5BvV,GAAY,cAC5BO,GAAO,iBAAgBgV,GAAgB,MACvChV,GAAO,kBAAiBgV,GAAgB,MACxChV,GAAO,kBAAiBgV,GAAgB,MACxC9hB,KAAKqN,OAAQ,CACf,MAAMc,EAASf,GAAU,YACV,IAAXe,EAAc2T,GAAgB,GACd,IAAX3T,EAAc2T,GAAgB,GACnB,IAAX3T,IAAc2T,GAAgB,IAEzC,OAAOA,EA6DHC,IAEJ7N,GAAQtH,GAAO,OAEXE,GAAO,YAAqC,IAAvB9M,KAAKgN,gBAC5BkH,GAAQ,EAAI,IAAOlU,KAAKgiB,SAE1BrkC,OAAO6C,KAAKwf,KAAKiiB,gBAAgB5S,SAASl1B,IACxC,MAAMm2B,EAAKtQ,KAAKiiB,eAAe9nC,GAC3B2yB,GAAOwD,EAAG5xB,QAIY,mBAAb4xB,EAAGqF,MACZzB,GAAQ,EAAuD,IAAnD7H,GAAYiE,EAAG5xB,MAAMi3B,MAAMtJ,GAAYiE,EAAG5xB,OACjDw1B,GAAQ,EAAe,IAAX5D,EAAGqF,UAItB7I,GAAO,iCAAgCoH,GAAQ,MAC/CpH,GAAO,0BAAyBoH,GAAQ,MACxCpH,GAAO,sBAAqBoH,GAAQ,MACpCpH,GAAO,iBAAgBoH,GAAQ,MAC/BpH,GAAO,kBAAiBoH,GAAQ,MAEhCpH,GAAO,yBAAwBoH,GAAQ,MACvCpH,GAAO,wBAAuBoH,GAAQ,MACtCpH,GAAO,oBAAmBoH,GAAQ,MAClCpH,GAAO,sBAAqBoH,GAAQ,MACpCpH,GAAO,sBAAqBoH,GAAQ,KAEpCpH,GAAO,kBAAiBoH,GAAQ,MAChCpH,GAAO,kBAAiBoH,GAAQ,MAEhCpH,GAAO,kBAAiBoH,GAAQ,MAGpC,IAAIgO,EAAY,EAChB,GAAI9U,GAAW,CACb,IAAIe,EAASf,GAAU,cACR,IAAXe,EAAc+F,GAAQ,KACN,IAAX/F,EAAc+F,GAAQ,IACX,IAAX/F,IAAc+F,GAAQ,MAE/B/F,EAASf,GAAU,QACJ,IAAXe,EACF+F,GACE,EAAI,IAAOxxB,KAAKy/B,IAAKxC,KAAKC,MAAQ,IAAO,MAAiBl9B,KAAKiU,GAAK,GACpD,IAAXwX,EACP+F,GACE,EAAI,IAAOxxB,KAAKy/B,IAAKxC,KAAKC,MAAQ,IAAO,MAAkBl9B,KAAKiU,GAAK,GACrD,IAAXwX,IACP+F,GACE,EAAI,IAAOxxB,KAAKy/B,IAAKxC,KAAKC,MAAQ,IAAO,MAAkBl9B,KAAKiU,GAAK,IAEzEwX,EAASf,GAAU,aACJ,IAAXe,EAAc+T,GAAa,IACX,IAAX/T,EAAc+T,GAAa,IAChB,IAAX/T,IAAc+T,GAAa,KAEpC/T,EAASf,GAAU,YACJ,IAAXe,EAAc+T,GAAa,IACX,IAAX/T,EAAc+T,GAAa,KAChB,IAAX/T,IAAc+T,GAAa,MAEpC/T,EAASf,GAAU,SACJ,IAAXe,EAAc+T,GAAa,IACX,IAAX/T,EAAc+T,GAAa,IAChB,IAAX/T,IAAc+T,GAAa,KAGlCpV,GAAO,oBAAmBoH,GAAQ,EAA4B,KAAvBlU,KAAKoiB,WAAa,IAE7D,MAAMC,EAAehb,GAAuB,GAC5C,IAAIib,EAAW,EAIf,GAHIxV,GAAO,8BAA6BwV,GAAY,MAEpDA,GAAY,EAAoC,IAAhC/V,GAAY,kBACxBa,GAAW,CACb,MAAMe,EAASf,GAAU,UACV,IAAXe,EAAcmU,GAAY,IACV,IAAXnU,EAAcmU,GAAY,KACf,IAAXnU,IAAcmU,GAAY,MAErCA,GAAY1V,GAAO,QAEnB,IAAI2V,EAAU,EAEVzV,GAAO,oBAAmByV,GAAW,EAAmB,GAAfF,EAAqBC,GAC9DxV,GAAO,oBAAmByV,GAAW,EAAmB,KAAfF,EAAuBC,GAChExV,GAAO,sBAAqByV,GAAW,EAAmB,IAAfF,EAAsBC,GACjExV,GAAO,sBACTyV,GAAW,EAAmB,KAAfF,EAAuBC,GACpCxV,GAAO,qBAAoByV,GAAW,EAAmB,GAAfF,EAAqBC,GAC/DxV,GAAO,wBACTyV,GAAW,EAAmB,GAAfF,EAAqBC,GAClCxV,GAAO,wBACTyV,GAAW,EAAmB,GAAfF,EAAqBC,GAClCxV,GAAO,oBAAmByV,GAAW,EAAmB,GAAfF,EAAqBC,GAC9DxV,GAAO,wBACTyV,GAAW,EAAmB,GAAfF,EAAqBC,GAClCxV,GAAO,+CACTyV,GAAW,EAAmB,KAAfF,EAAuBC,GACpCxV,GAAO,uBACTyV,GAAW,EAAmB,IAAfF,EAAsBC,GACnCxV,GAAO,qBAAoByV,GAAW,EAAmB,KAAfF,EAAuBC,GACjExV,GAAO,uBACTyV,GAAW,EAAmB,KAAfF,EAAuBC,GACpCxV,GAAO,mBAAkByV,GAAW,EAAmB,GAAfF,EAAqBC,GAC7DxV,GAAO,kBAAiByV,GAAW,EAAmB,IAAfF,EAAsBC,GAEjE3kC,OAAO6C,KAAK4rB,IAAYiD,SAASl1B,IAC/B,MAAMm2B,EAAKlE,GAAWjyB,GACtB,IAAIqoC,EAAYlS,EAAGyE,IAAIzE,GACI,IAAvBtQ,KAAKgN,gBACPwV,IAAc,EAAe,IAAXlS,EAAGsF,OAAgBsM,GAEzB,YAAZ5R,EAAG5xB,MACHouB,GAAO,sDAEP0V,GAAa,EAAI,IAAOH,EAAeC,GACzCva,IAAgBuI,EAAG9B,OAASgU,KAG1B1V,GAAO,WAAU/E,IAAgB,GAErCmM,GAAQqO,EAER,IAAIE,EAAU,EAad,GAZI3V,GAAO,iBAAgB2V,GAAW,MAClC3V,GAAO,cAAa2V,GAAW,MAC/B3V,GAAO,gBAAe2V,GAAW,MACjC3V,GAAO,eAAc2V,GAAW,MAChC3V,GAAO,eAAc2V,GAAW,MAChC3V,GAAO,iBAAgB2V,GAAW,MAClC3V,GAAO,mBAAkB2V,GAAW,MACpC3V,GAAO,gBAAe2V,GAAW,MACjC3V,GAAO,eAAc2V,GAAW,MAChC3V,GAAO,eAAc2V,GAAW,MAChC3V,GAAO,gBAAe2V,GAAW,MACjC3V,GAAO,eAAc2V,GAAW,MAChC3V,GAAO,eAAgB,CAEzB,IAAI4V,EACuD,GAAxDhgC,KAAKkE,OAAO+4B,KAAKC,MAAQ5f,KAAK2iB,WAAa,IAAO,IACnD,GACA,GACA,GACFD,EAAMhgC,KAAK2D,IAAIq8B,EAAK,KAEpBtZ,GAAe,EAAiC,IAA5B,GAAK,EAAIsZ,EAAM,MAAQ,GAC3CD,GAAWrZ,GAEb8K,GAAQuO,EAEJ3V,GAAO,kBAAiBoH,GAAQ,EAAgC,IAA5BxxB,KAAK2D,IAAI,IAAK2Z,KAAK4iB,QAG3D1O,GAAQ,EAAI3H,GAAY,oBAExB,MAAMsW,EAAe9a,GAAemM,EACpCv2B,OAAO6C,KAAKwf,KAAK8iB,iBAAiBzT,SAASl1B,IACrC0oC,GAAgB7iB,KAAK8iB,gBAAgB3oC,GAAG4oC,WAC1CtB,GAAOzhB,KAAK8iB,gBAAgB3oC,GAAGuE,SAGnCspB,GAAkB6a,EAElB,MAAMzlC,EAAEA,GAAM4iB,KAAKwd,aAAaC,OAC1BuF,EAAWzW,GAAY,oBAC7B,IAAK,IAAIpyB,EAAI,EAAGA,EAAIiD,EAAGjD,IACrB+5B,GAAQ,EAAe,KAAX8O,EAGd,MAAMtkC,EAAOshB,KAAKijB,WAAWxoC,cAM7B,GALa,WAATiE,EAAmBw1B,GAAQ,IACb,WAATx1B,IAAmBw1B,GAAQ,KAEhCpH,GAAO,oBAAmBoH,GAAQ,KAElCpH,GAAO,uBAAwB,CACjC,IAAIoW,EAAmB,IACvB,GAAIpW,GAAO,iBAAkB,CAC3B,MAAMqW,EAAWnjB,KAAKojB,qBACtBzlC,OAAO6C,KAAK2iC,GAAU9T,SAASl1B,IACzB2yB,GAAOqW,EAAShpC,MAAK+oC,GAAoB,OAGjDhP,GAAQgP,EAEV,GAAIpW,GAAO,yBAA0B,CACnC,IAAIuW,EAAW,GACXvW,GAAO,yBAAwBuW,GAAY,IAC/CnP,GAAQ,EAAImP,EAGVvW,GAAO,uBAAsBoH,GAAQ,KACrCpH,GAAO,wBAAuBoH,GAAQ,GAE1CnM,GAAe/H,KAAKsjB,kBAAkB,MAAOvb,IAE7CmM,GAAQmD,KAERtP,IAAgBmM,EASlB,MAAMqP,GAAW,CACf,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,eACA,gBAIIC,GAAe,CACnB,gBACA,gBACA,cACA,gBACA,kBACA,kBACA,kBAIIC,GAAgB,CACpB,0BACA,qBACA,mBACA,iBACA,sBACA,gBACA,oBAIIC,GAAa,CACjB,sBACA,wBACA,sBACA,yBACA,wBACA,yBACA,wBAIIC,GAAa,CACjB,qBACA,oBACA,oBACA,yBACA,cACA,WACA,eAkCF,SAASC,GAAapX,GACpB,OAAOF,GAAgBE,GAAQF,GAAgBE,GAAM8J,IAAM,EAe7D,SAASuN,KACP,IAAIC,EAAW,EACfnmC,OAAO6C,KAAKwf,KAAKkV,kBAAkB7F,SAASl1B,IACtC2yB,GAAO9M,KAAKkV,iBAAiB/6B,MAAK2pC,GAAY,OAE/CF,GAAa,UAAYE,GAAY,GAAGrC,GAAO,UAC/CmC,GAAa,YAAcE,GAAY,IAAIrC,GAAO,WAEvD,IAAIsC,EAAiB,EACjBC,EAAgB,EAChBC,EAAS,EACTC,EAAY,IAChBvmC,OAAO6C,KAAK4rB,IAAYiD,SAASl1B,IAC/B4pC,GAAkB3X,GAAWjyB,GAAGq0B,OAChC0V,EAAYxhC,KAAK2D,IAAI+lB,GAAWjyB,GAAGq0B,OAAQ0V,GACtCN,GAAa,kBAEdxX,GAAWjyB,GAAGq0B,OACd9rB,KAAK2D,IAAI,IAAK,IAAM2Z,KAAKmkB,YAAY/pC,OAAS4lB,KAAKwN,QAAQrzB,GAAGwzB,GAAK,MAEnEqW,EAAgB,GAEfJ,GAAa,YAEdxX,GAAWjyB,GAAGq0B,OACmC,IAAhDxO,KAAKmkB,YAAY/pC,OAAS4lB,KAAKwN,QAAQrzB,GAAGwzB,MAE3CsW,EAAS,MAGXC,GAAa,GAAGzC,GAAO,uBACL,IAAlBuC,GAAqBvC,GAAO,iBACjB,IAAXwC,GAAcxC,GAAO,WACrByC,GAAa,KAAKzC,GAAO,cACzByC,GAAa,KAAKzC,GAAO,yBACzByC,GAAa,KAAKzC,GAAO,gBACzByC,GAAa,KAAKzC,GAAO,2BACzByC,GAAa,KAAKzC,GAAO,iBACzByC,GAAa,KAAKzC,GAAO,4BACzByC,GAAa,KAAKzC,GAAO,oBACzByC,GAAa,KAAKzC,GAAO,+BACzByC,GAAa,KAAKzC,GAAO,kBACzByC,GAAa,KAAKzC,GAAO,6BACzByC,GAAa,KAAKzC,GAAO,iBAEzBsC,GAAkB,KAAKtC,GAAO,WAC9BsC,GAAkB,KAAKtC,GAAO,aAC9BsC,GAAkB,KAAMtC,GAAO,YAC/BsC,GAAkB,KAAMtC,GAAO,sBAC/BsC,GAAkB,KAAMtC,GAAO,gBAC/BsC,GAAkB,KAAMtC,GAAO,gBAE/Bta,IAAoB,IAAIsa,GAAO,YAC/Bta,IAAoB,IAAIsa,GAAO,aAC/Bta,IAAoB,KAAKsa,GAAO,YAChCta,IAAoB,KAAKsa,GAAO,oBAChCta,IAAoB,KAAKsa,GAAO,oBAChCta,IAAoB,KAAKsa,GAAO,oCAEhCsC,GAAkB,KAAQ5c,IAAoB,KAAKsa,GAAO,YAC1DsC,GAAkB,KAAQ5c,IAAoB,KAChDsa,GAAO,qBAELrV,GAAWgY,OAAO5V,OAASpC,GAAWuI,QAAQnG,QAAU,KAC1DiT,GAAO,qBAET,IAAI4C,GAAkB,EACtB1mC,OAAO6C,KAAKgjC,IAAcnU,SAASl1B,IAC5B2yB,GAAO0W,GAAarpC,MAAKkqC,GAAkB,MAE9CA,GAAiB5C,GAAO,kBAE5B,IAAI6C,GAAmB,EAMvB,GALA3mC,OAAO6C,KAAKijC,IAAepU,SAASl1B,IAC7B2yB,GAAO2W,GAActpC,MAAKmqC,GAAmB,MAEhDA,GAAkB7C,GAAO,eAEzB3U,GAAO,mBAAoB,CAC7B,MAAMyX,EAAOvkB,KAAKoU,MAAMnG,QAAQkV,SAChC,IAAIqB,EAAW,EACf7mC,OAAO6C,KAAK+jC,GAAMlV,SAASl1B,IACrB2yB,GAAOyX,EAAKpqC,GAAGuE,QAAO8lC,GAAY,MAEpCA,GAAYD,EAAKnqC,QAAQqnC,GAAO,cA6OxC,SAASgD,GAAoBjW,GAC3B,MAAMkW,EAAS,GAQf,OAPA/mC,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,IACjCuqC,EAAOvqC,GAAK,GACZuqC,EAAOvqC,GAAGm4B,MA/Nd,SAAiCzE,EAAUW,GACzCsH,KACA1J,GAAWyB,GAAUW,QAAUA,EAC/B,MAAM8B,EAAKlE,GAAWyB,GAEL,WAAbA,GACEyC,EAAG9B,QAAU,GAAGiT,GAAO,SACvBnR,EAAG9B,QAAU,GAAGiT,GAAO,gBACvBnR,EAAG9B,QAAU,IAAIiT,GAAO,eACxBnR,EAAG9B,QAAU,KAAKiT,GAAO,mBACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,eACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,uBACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,SACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,kCACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,iCACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,wBACzBnR,EAAG9B,QAAU,KAAKiT,GAAO,yBAE7B9jC,OAAO6C,KAAKwf,KAAKwN,QAAQ8C,EAAG5xB,MAAMimC,eAAetV,SAASmB,IAEtDF,EAAG9B,QACHxO,KAAKoU,MAAMpU,KAAKwN,QAAQ8C,EAAG5xB,MAAMimC,cAAcnU,GAAGtD,MAAM0X,cAExDnD,GAAOzhB,KAAKwN,QAAQ8C,EAAG5xB,MAAMimC,cAAcnU,GAAG9xB,SAKpD,MAAMmmC,EAAwBxd,GAU9B,OARAqa,KAEAmC,KAEIgB,IAA0Bxd,IAC5Bqa,KAGK3Z,GAAe/H,KAAKoR,UAyLP0T,CAAwB3qC,EAAGq0B,GAC9B,IAAXA,IACFxH,GAA2B,MAGxB0d,EA6BT,SAASK,KACPpnC,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,IACjCovB,GAAcpvB,GAAG2zB,MAAQ0T,GACvBxhB,KAAKwN,QAAQrzB,GACb6lB,KAAKwN,QAAQrzB,GAAGm0B,UAChBtO,KAAKwN,QAAQrzB,GAAGq0B,OAChBxO,KAAKwN,QAAQrzB,GAAGo0B,KAChB,GAEF/E,GAAervB,GAAG2zB,MAAQ0T,GACxBxhB,KAAKwN,QAAQrzB,GACb6lB,KAAKwN,QAAQrzB,GAAGm0B,UAChBtO,KAAKwN,QAAQrzB,GAAGq0B,OAChBxO,KAAKwN,QAAQrzB,GAAGo0B,KAChB,IAEF9E,GAAgBtvB,GAAG2zB,MAAQ0T,GACzBxhB,KAAKwN,QAAQrzB,GACb6lB,KAAKwN,QAAQrzB,GAAGm0B,UAChBtO,KAAKwN,QAAQrzB,GAAGq0B,OAChBxO,KAAKwN,QAAQrzB,GAAGo0B,KAChB,QASN,SAASyW,KAEPzb,GAAgBkb,GAAoB,GACpCjb,GAAiBib,GAAoB,IACrChb,GAAkBgb,GAAoB,KAvDtC1a,GAAgB,GAChBpsB,OAAO6C,KAAKwf,KAAK0V,UAAUrG,SAASl1B,IAClC,MAAM8qC,EAtFV,SAAgCnU,GAC9B,GACkC,WAAhC9Q,KAAK0V,SAAS5E,GAAS7D,MACY,IAAlCjN,KAAK0V,SAAS5E,GAAS3D,QACtBnN,KAAK0V,SAAS5E,GAASoU,UACS,aAAhCllB,KAAK0V,SAAS5E,GAAS7D,KACzB,CACA6I,KACkC,yBAA9BzJ,GAAYyE,GAASpyB,KACvB2tB,GAAY,yBAAyBc,OAAS,EACP,uBAA9Bd,GAAYyE,GAASpyB,KAC9B2tB,GAAY,uBAAuBc,OAAS,EAE5Cd,GAAYyE,GAAS3D,QAAUd,GAAYyE,GAAS3D,OAAS,GAAK,EAEzDd,GAAYyE,GACnB9Q,KAAKmlB,qBAAqBnlB,KAAK0V,SAAS5E,GAAS7D,QACnD9F,IAAoB,GAEN,iBAAZ2J,GACF1J,IAAc,EACVA,GAAa,GAAGqa,GAAO,aACvBra,IAAc,GAAGqa,GAAO,kBACP,mBAAZ3Q,EACT2Q,GAAO,cACc,yBAAZ3Q,EACT2Q,GAAO,kBACc,iBAAZ3Q,GACT2Q,GAAO,aAGT,MAAMoD,EAAwBxd,GAE9Bqa,KAEAmC,KAEIgB,IAA0Bxd,IAC5Bqa,KAGF,MAAM0D,EAvIV,WACE,IAAI9jC,EAAM,EACNwrB,GAAO,sBAAqBxrB,GAAO,IACnCwrB,GAAO,qBAAoBxrB,GAAO,GAClCwrB,GAAO,qBAAoBxrB,GAAO,IAClCwrB,GAAO,sBAAqBxrB,GAAO,IACnCwrB,GAAO,yBAAwBxrB,GAAO,IACtCwrB,GAAO,yBAAwBxrB,GAAO,IACtCwrB,GAAO,wBAAuBxrB,GAAO,IACrCwrB,GAAO,wBAAuBxrB,GAAO,IACrCwrB,GAAO,uBAAsBxrB,GAAO,IACpCwrB,GAAO,uBAAsBxrB,GAAO,IACxC,IAAI8iB,EAAM,EACVzmB,OAAO6C,KAAK4rB,IAAYiD,SAASl1B,IAC/BiqB,GAAOgI,GAAWjyB,GAAGq0B,UAEvBpK,GAAOgI,GAAWgY,OAAO5V,OACzBltB,GAAO8iB,EAGH0I,GAAO,mBAAkBxrB,GAAsB,IAAfymB,IAChC+E,GAAO,gBAAexrB,GAAsB,IAAfymB,IAC7B+E,GAAO,oBAAmBxrB,GAAsB,IAAfymB,IACjC+E,GAAO,sBAAqBxrB,GAAsB,IAAfymB,IACnC+E,GAAO,uBAAsBxrB,GAAsB,IAAfymB,IACpC+E,GAAO,mBAAkBxrB,GAAsB,IAAfymB,IAChC+E,GAAO,qBAAoBxrB,GAAsB,IAAfymB,IAClC+E,GAAO,sBAAqBxrB,GAAsB,IAAfymB,IACnC+E,GAAO,sBAAqBxrB,GAAsB,IAAfymB,IACnC+E,GAAO,qBAAoBxrB,GAAsB,IAAfymB,IAClC+E,GAAO,yBAAwBxrB,GAAsB,IAAfymB,IACtC+E,GAAO,sBAAqBxrB,GAAsB,IAAfymB,IACnC+E,GAAO,sBAAqBxrB,GAAsB,IAAfymB,IAEnC+E,GAAO,kBAAiBxrB,GAAsB,IAAfymB,IAEnC,IAAImM,EAAO,EAiBX,GAhBIpH,GAAO,qBAAoBoH,GAAQ,KACnCpH,GAAO,gBAAeoH,GAAQ,KAC9BpH,GAAO,iBAAgBoH,GAAQ,KAC/BpH,GAAO,iBAAgBoH,GAAQ,MAE/BpH,GAAO,iBACToH,GACE,EACA,IACExxB,KAAK2D,IACH2Z,KAAKwN,QAAQ4W,OAAOxO,MACpB9I,GAAO,mBAAqB,GAAK,KAIzCoH,GAAQtH,GAAO,SACXR,GAAWkB,OAAOY,gBAChBd,GAAW,CACb,MAAMe,EAASf,GAAU,SACV,IAAXe,EAAc+F,GAAQ,KACN,IAAX/F,EAAc+F,GAAQ,IACX,IAAX/F,IAAc+F,GAAQ,MAInCv2B,OAAO6C,KAAKwf,KAAKsX,OAAOjI,SAASl1B,SACQ,IAA5B6lB,KAAKsX,MAAMn9B,GAAGkrC,YACvBnR,GAAQlU,KAAKsX,MAAMn9B,GAAGkrC,cAI1BnR,GAAQ,EAAmC,IAA/B3H,GAAY,iBAGxB,IAAI+Y,EACFpR,EACAlU,KAAKiV,WACH,EACAnI,GAAO,2BACLA,GAAO,kCACPA,GAAO,gBACTxrB,GAOJ,OAJAgkC,EAAMtlB,KAAKsjB,kBAAkB,kBAAmBgC,GAE5CtlB,KAAKgO,QAAQ,mBAAkBsX,EAAMtlB,KAAKsX,MAAM,iBAAiB3B,OAE9D2P,EAkDgBC,GAAavlB,KAAKwlB,iBACvC,OAAIJ,EACK,CAACrd,GAAe/H,KAAKoR,UAAWgU,GAElC,CAACrd,GAAe/H,KAAKoR,WAE9B,MAAO,GAuCeqU,CAAuBtrC,GACjC,iBAANA,GACF4vB,GAAc5vB,GAAK,CAAEm4B,MAAOtS,KAAKoR,UAAY3K,IACjB,IAAxB5G,EAAUsR,UACZpH,GAAc5vB,GAAGm4B,OAAS5L,GACK,IAAxB7G,EAAUsR,YACjBpH,GAAc5vB,GAAGm4B,OAAS3L,IACvB/B,OAAOC,SAASkF,GAAc5vB,GAAGm4B,SAAQvI,GAAc5vB,GAAGm4B,MAAQ,KAEvEvI,GAAc5vB,GAAK,GACf8qC,EAAY,KAAIlb,GAAc5vB,GAAGm4B,MAAQ2S,EAAY,IACrDA,EAAY,KAAIlb,GAAc5vB,GAAGm+B,WAAa2M,EAAY,QA6DpE,SAASS,GAAqBC,EAAOC,EAAW1R,GAC9C,IAAI2R,EAAiB,EACjBhX,EAAO,EACPiX,EAAW,EACXC,EAAe,EACfC,EACF,EAAItjC,KAAK6D,IAAI,EAAG7D,KAAKoL,KAAKpL,KAAK4iB,IAAItF,KAAKkT,SAAWxwB,KAAKujC,MAAQ,IAClE,KAAOH,EAAWF,EAAY1R,GAC5BrF,EAAOnsB,KAAK6D,IACVo/B,EACAjjC,KAAK2D,IACH3D,KAAKkE,MAAO,EAAI,EAAK,IAAMo/B,EAAQL,EAAQzR,GAC3C0R,EAAY1R,IAGhB4R,EAAWpjC,KAAK6D,IACdo/B,EACAjjC,KAAK2D,IACH3D,KAAKkE,MAAO,EAAI,EAAK,KAAOo/B,EAAQ,GAAKL,EAAQzR,GACjD0R,EAAY1R,IAGhB6R,EAAerjC,KAAKkE,MAAO,EAAI,EAAK,KAAOo/B,EAAQ,GAAKL,EAAQzR,GAChE2R,GAAkBhX,EAClBmX,GAAS,EAEX,MAAO,CAACH,EAAgBhX,EAAMkX,GAmBhC,SAASG,KACP,IAAIN,EAEF,GADA7c,GAEA,GACA,EACAC,GAEF,MAAMmd,EAAc9O,KAChB8O,EAAc,EAAGP,GAAaO,EAC7BP,EAAY,EAEjBtb,GAAsBob,GACpB,EACAE,EACA3c,IAEFmB,GAA+C,EAAzBE,GAAoB,GAAUrB,GACpDoB,GACEC,GAAoB,GAAK,GAAK,GAAK,EAAItB,GAEzCyB,GAA2Bib,GACzB,EACAE,EACA1c,IAEFqB,GACiC,EAA9BE,GAAyB,GAAUvB,GACtCsB,GACEC,GAAyB,GACzB,GACA,GACA,EACAzB,GAEF4B,GAA4B8a,GAC1B,EACY,EAAZE,EACA3c,IAEFyB,GACkC,EAA/BE,GAA0B,GAAU3B,GACvC0B,GACEC,GAA0B,GAC1B,GACA,GACA,EACA5B,GAEF+B,GAAiC2a,GAC/B,EACY,EAAZE,EACA1c,IAEF2B,GACuC,EAApCE,GAA+B,GAAU7B,GAC5C4B,GACEC,GAA+B,GAC/B,GACA,GACA,EACA/B,GAYJ,SAASod,KACP,MAAM1G,EAAWh9B,KAAKkE,MAAM+4B,KAAKC,MAAQ,KAEzC,GAAK5f,KAAKod,EAAIpd,KAAKoX,IAAO,GAAM,EAAG,CACjC,MAAMiP,EAAarmB,KAAKsmB,gBAAgBtmB,KAAKumB,cAIvCC,EAHiB9jC,KAAKkE,MAC1BoZ,KAAKsmB,gBAAgBtmB,KAAKumB,aAAevmB,KAAK8f,gBAERp9B,KAAKkE,MAAMy/B,GAG7CtG,EAAWL,EAAW5Y,GACtB2f,EACJ/jC,KAAK6D,IAAI,EAAGigC,EAAiBzf,IAA0BgZ,EACzD,IAAK,IAAI5lC,EAAI,EAAGA,EAAI4lC,EAAU5lC,IAC5BgsB,GAAkBma,UAAUmG,GAI9B3f,GAAyB4Y,EACzB3Y,GAAyByf,EAGzBrd,GAAmBhD,GAAkBsa,YAAY,IA6HrD,SAASiG,KACPzc,GAAuB,GACvBE,GAA8B,GAC9BD,GAA+B,GAC/B,MAAMqa,EAAO,GAEb5mC,OAAO6C,KAAKwf,KAAK0V,UAAUrG,SAASl1B,IAClCoqC,EAAKtoC,KAAK+jB,KAAK0V,SAASv7B,OAO1BoqC,EAAK7U,MALW,SAAU1sB,EAAGP,GAC3B,OAAIO,EAAEguB,MAAQvuB,EAAEuuB,MAAc,EAC1BhuB,EAAEguB,MAAQvuB,EAAEuuB,OAAe,EACxB,KAITrzB,OAAO6C,KAAK+jC,GAAMlV,SAASl1B,IACzB,MAAMm2B,EAAKiU,EAAKpqC,GAEhB,GAAkB,IAAdm2B,EAAGnD,OAAc,CACnB,IAAI5xB,EAAM,GAEVA,GArDN,SAAsB+0B,GACpB,IAAIqW,EAAU,wBACE,aAAZrW,EAAGrD,OAAqB0Z,GAAW,aAEvC,IAAIC,EAAU,EACT5mB,KAAK6c,MAAMgK,SAAQD,EAAU,GAC9BA,IAASD,GAAW,YAExB,IAAIG,KAAEA,GAASxW,EACXA,EAAGyW,eAAcD,EAAOxW,EAAGyW,gBAC/B,MAAMrQ,EAAU,0DAA0DpG,EAAG3C,kBAC7E,MAAO,eAAegZ,SACrB3mB,KAAKgnB,kBAAkBtQ,EAAS,OAAO,kBAEtCoQ,EAAK,GAAK,yBAAyBA,EAAK,OAAS,yBACjB,IAAVA,EAAK,QAAwB,IAAVA,EAAK,oBAsCrCG,CAAa3W,GACJ,aAAZA,EAAGrD,KAAqB/C,IAAgC3uB,EACvC,WAAZ+0B,EAAGrD,KAAmB9C,IAA+B5uB,EAEhD,WAAZ+0B,EAAGrD,MACS,WAAZqD,EAAGrD,MACS,UAAZqD,EAAGrD,OAEHhD,IAAwB1uB,OAchC,SAAS2rC,KACP,GAAoB,cAAhBlnB,KAAK+d,OAAwB,CAC/B,IAAIphC,EAAuB,GAAjBqjB,KAAKoR,UACXpR,KAAKgO,QAAQ,kBAAiBrxB,GAAO,IACrCqjB,KAAKgO,QAAQ,YAAWrxB,GAAO,KACnC0sB,GAAe3mB,KAAK6D,IAAI,GAAI5J,GACxBqjB,KAAK2d,IAAI,gCAA+BtU,IAAgB,IAehE,SAAS8d,KACP9e,GAA2C,IAA7BU,GAAoC,IAClDV,IAAcW,GACd,MAAMmd,EAAc9O,KAChB8O,EAAc,EAAG9d,IAAc8d,EAC9B9d,GAAa,EAClBC,GAAmBW,IAAuC,IAAbZ,IAAqB,GAClEE,GAAwBW,IAAsC,IAAbb,IAAqB,GACtEG,GAAgC,EAAbH,GACnBI,GACEQ,IAA6C,IAAnBT,IAA2B,GACvDE,GACEQ,IAA4C,IAAnBV,IAA2B,GACtDG,GAA4B,EAAbN,GACfO,GAAoC,IAAfD,GAErBE,GAAe,EACf,IAAItiB,EAAM,EACNnJ,EAAI,EACRO,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,IAC7B6lB,KAAKwN,QAAQrzB,GAAGq0B,OAASjoB,IAAKA,EAAMyZ,KAAKwN,QAAQrzB,GAAGq0B,QACpDxO,KAAKwN,QAAQrzB,GAAGq0B,OAAS,IAAGpxB,GAAK,MAEvCO,OAAO6C,KAAKwf,KAAKwN,SAAS6B,SAASl1B,KAE9B6lB,KAAKwN,QAAQrzB,GAAGq0B,OAASjoB,GAAa,IAANnJ,IACjC4iB,KAAKwN,QAAQrzB,GAAGq0B,OAAS,KACD,EAAxBxO,KAAKwN,QAAQrzB,GAAG2zB,MAAYjF,KAE5BA,GAAuC,EAAxB7I,KAAKwN,QAAQrzB,GAAG2zB,MAC/BhF,GAAuB3uB,MAQ7B,SAASitC,KACP,IAAIC,EAAa,EACbC,EAAY,EACZpT,EAAO,EAGPpH,GAAO,4BAA2BoH,GAAQ,MAC1CpH,GAAO,iBAAgBoH,GAAQ,MAEnCmT,GAAc,EAA+C,GAA3CrnB,KAAKgjB,SAAS,2BAChCqE,GAAcrnB,KAAKunB,IAAI,oBACvBD,GAAa,EAAuC,GAAnCtnB,KAAKgjB,SAAS,mBAC/BsE,GAAatnB,KAAKunB,IAAI,mBAGtBte,GAAyBiL,EAAOmT,EAChCne,GAAwBgL,EAAOoT,EAM/Bte,GAAoC,EACD,IAA/BhJ,KAAKwd,aAAaC,OAAOrgC,IAC3B4rB,IACE,EAAwC,KAApChJ,KAAKgjB,SAAS,qBAkBxB,SAASwE,KACP9d,GAAsB,EACtBC,GAAuB,EACvBC,GAAwB,CAAC,EAAG,MAC5B,IAAK,IAAIzvB,EAAI,EAAGA,EAAI6lB,KAAKsR,UAAUl3B,OAAQD,IAAK,CAC9C,IAAI0kC,OAAEA,GAAW7e,KAAKsR,UAAUn3B,GAC5B2kC,EAAS,IAKb,GAJI9e,KAAK2d,IAAI,6BAA4BmB,GAAU,MACpB,IAA3B9e,KAAKsR,UAAUn3B,GAAGK,OAAYskC,GAAU,GAC5CD,GAAUC,EACN9e,KAAK2d,IAAI,mBAAkBkB,GAAU,MACrCzS,GAAWkB,OAAOY,eAAgB,CACpC,MAAMC,EAASnO,KAAKqN,OAAO,SACZ,IAAXc,EAAc0Q,GAAU,KACR,IAAX1Q,EAAc0Q,GAAU,IACb,IAAX1Q,IAAc0Q,GAAU,MAEnCnV,IAAuBmV,EACQ,IAA3B7e,KAAKsR,UAAUn3B,GAAGK,OACpBmvB,IAAwBkV,EACpBA,EAASjV,GAAsB,KACjCA,GAAwB,CAACiV,EAAQ1kC,MAuBzC,SAASstC,KACP/T,KACA8T,KACAL,KACAC,KACAlB,KACAQ,KACAQ,KA/hDAphB,GAAc,IAAIqZ,GAAWnc,EAAYA,EAAY5oB,OAAS,IAC9D2rB,GAAY,IAAIoZ,GAAWnc,EAAYA,EAAY5oB,OAAS,IAC5D4rB,GAAmB,IAAImZ,GAAWnc,EAAYA,EAAY5oB,OAAS,IACnE6rB,GAAa,IAAIkZ,GAAWnc,EAAYA,EAAY5oB,OAAS,IAC7D8rB,GAAa,IAAIiZ,GAAWlc,EAAWA,EAAW7oB,OAAS,IA6hD3D+rB,GAAoB,IAAIgZ,GAAW,GACnCiH,KACA3G,KACAuF,KACAD,KACA1D,KAKF,MA6ImCqG,GA7Ib,CACpBxW,QAAS,EACTsP,WAAY,EACZI,cAAe,EACfzP,UAAW,EACXzM,MAAO,EACPF,cAAe,EACfQ,eAAgB,EAChBD,YAAa,OACbY,WAAY,EACZgiB,aAAc,EACd5U,cAAe,EACf3D,YAAa,EACb2R,sBAAuB,EACvBI,aAAc,EACdF,cAAe,EACfH,oBAAqB,EACrBlf,WAAY,UACZC,YAAa,UACbC,aAAc,UACdC,aAAc,UACdC,UAAW,UACXC,aAAc,UACdC,WAAY,UACZC,WAAY,UACZC,YAAa,UACbwQ,OAAQ,EACRW,SAAU,EACVC,YAAa,EACbsK,gBAAiB,EACjBjO,YAAa,EACb+X,mBAAoB,EACpBrY,cAAe,EACfoB,aAAc,EACdkX,eAAgB,EAChBC,YAAa,EACbC,QAAS,EACTC,QAAS,EACTjoB,gBAAiB,EACjBkoB,oBAAqB,EACrBnQ,oBAAqB,EACrBoQ,YAAa,EACbhM,cAAe,EACfC,oBAAqB,EACrBE,gBAAiB,EACjBE,sBAAuB,EACvBE,gBAAiB,EACjBb,aAAc,EACdG,YAAa,EACbtE,YAAa,EACbyB,YAAa,EACbkF,aAAc,EACd1F,YAAa,EACbkB,aAAc,EACdc,gBAAiB,EACjByN,oBAAqB,EACrBlL,MAAO,EACPmL,gBAAiB,EACjBpJ,QAAS,EACTqJ,oBAAqB,EACrBC,aAAc,EACdrkB,MAAO,EACPskB,aAAc,EACdC,eAAgB,EAChBC,QAAS,EACTC,cAAe,UACfC,QAAS,EACTC,SAAU,IACVC,WAAY,6DACZC,oBAAqB,EACrBC,aAAc,EACdC,mBAAoB,UACpBC,aAAc,EACdC,cAAe,IACfC,gBACE,gEACFC,gBAAiB,EACjBC,SAAU,EACVC,eAAgB,UAChBC,SAAU,EACVC,UAAW,IACXC,YACE,oEACFC,UAAW,EACXC,gBAAiB,UACjBC,UAAW,EACXC,WAAY,IACZC,aAAc,+DACdC,kBAAmB,EACnBC,WAAY,EACZC,iBAAkB,UAClBC,WAAY,EACZC,YAAa,IACbC,cACE,gEACFC,qBAAsB,EACtBC,cAAe,EACfC,oBAAqB,UACrBC,cAAe,EACfC,eAAgB,IAChBC,iBACE,6DACFC,wBAAyB,EACzBC,iBAAkB,EAClBC,uBAAwB,UACxBC,iBAAkB,EAClBC,kBAAmB,IACnBC,oBACE,8DACFC,aAAc,EACd/mB,kBAAmB,EACnBgnB,OAAQ,CACNC,UAAW,EACXC,YAAa,EACbC,SAAU,EACVC,QAAS,EACTC,YAAa,EACbC,QAAS,EACTC,WAAY,EACZC,aAAc,EACdC,oBAAqB,EACrBC,eAAgB,EAChBC,eAAgB,EAChBC,gBAAiB,EACjBC,iBAAkB,EAClBC,iBAAkB,EAClBC,kBAAmB,EACnBC,qBAAsB,EACtBC,cAAe,EACfC,MAAO,EACPC,MAAO,EACPC,OAAQ,EACRC,OAAQ,EACRC,SAAU,EACVC,MAAO,EACPC,IAAK,EACLC,KAAM,EACNC,QAAS,IAoCsBC,GAvBnC,SAAsCC,GACpC,GAAoB,IAAhBA,EAAmB,CAErB,MAAMC,EAA2B,WAC/B,IACErB,aAAasB,oBAAoBC,OACjC,MAAO3xC,GACP,OAAO,EAET,OAAO,GAIH,iBAAkB1C,OAEbm0C,IACTrB,aAAasB,oBAAoBC,OAEjCvB,aAAasB,oBAJbhyC,QAAQsqB,IAAI,kDAoBlB,SAAS4nB,KACkB,IAArBrtB,EAAU+S,QACZrnB,EAAE,YAAYnJ,MAAMqV,QAAU,GAC9Bkb,MAEApnB,EAAE,YAAYnJ,MAAMqV,QAAU,OAEhC6b,KAwGF,SAAS6Z,KACPC,cACAptB,KAAKqtB,eACLrtB,KAAKstB,kBAEL3a,KACAzD,KACAU,KAuBF,SAAS2d,KACmB,IAAtB1tB,EAAUmoB,SAAiBhnB,EAAwB,EACjDkK,GAA0BsiB,MAC5BjiC,EAAE,aAAakiC,KACb,mEAEFliC,EAAE,aAAakiC,KACb,oEAEJliC,EAAE,aAAakiC,KACb,uDAQN,MAAMC,GACJtO,YAAY5kC,EAAMmzC,GAChB90C,KAAK2B,KAAOA,EACZ3B,KAAK80C,MAAQA,GAKjB,MAAMC,WAAwBF,GAC5BtO,YAAY5kC,EAAMmzC,EAAOE,EAAOC,EAAMC,EAAQ7uC,EAAO,MACnD8uC,MAAMxzC,EAAMmzC,GACZ90C,KAAKg1C,MAAQA,EACbh1C,KAAKi1C,KAAOA,EACZj1C,KAAKk1C,OAASA,EACV7uC,IACFrG,KAAKqG,KAAOA,IAKlB,MAAM+uC,WAAuBP,GAC3BtO,YAAY5kC,EAAMmzC,EAAOG,GACvBE,MAAMxzC,EAAMmzC,GACZ90C,KAAKi1C,KAAOA,GAKhB,MAAMI,WAAsBR,GAC1BtO,YAAY5kC,EAAMmzC,EAAOE,EAAOC,GAC9BE,MAAMxzC,EAAMmzC,GACZ90C,KAAKg1C,MAAQA,EACbh1C,KAAKi1C,KAAOA,EACZ,IAAK,IAAI3zC,EAAI,EAAGA,EAAI,IAAKA,IACvBtB,KAAKg1C,MAAM1zC,GAAK,GAAGA,MAMzB,MAAMg0C,WAA2BT,GAC/BtO,YAAY5kC,EAAMmzC,EAAOE,EAAOC,EAAMznC,EAAKE,GACzCynC,MAAMxzC,EAAMmzC,GACZ90C,KAAKg1C,MAAQA,EACbh1C,KAAKi1C,KAAOA,EACZj1C,KAAKwN,IAAMA,EACXxN,KAAK0N,IAAMA,GAyBf,MA4yBmC6nC,GA5yBpB,CAEbld,QAAS,IAAI0c,GACX,OACA,cACA,CAAC,6BAA8B,8BAC/B,kFACA,GAEFpN,WAAY,IAAIoN,GACd,OACA,cACA,CACE,0BACA,0BACA,0BACA,yBACA,yBACA,0BACA,0BACA,2BAEF,4DACA,GAEFhN,cAAe,IAAIgN,GACjB,OACA,cACA,CACE,4BACA,4BACA,6BACA,6BACA,8BAEF,uDACA,GAEFzc,UAAW,IAAIyc,GACb,OACA,cACA,CACE,+BACA,8BACA,6CAEF,qGACA,GACA,WACE/lB,IAAY,KAKhBnD,MAAO,IAAIkpB,GACT,OACA,WACA,CACE,uBACA,SACA,cACA,4BACA,sBACA,wBAEF,yCACA,GACA,WACET,QAGJ3oB,cAAe,IAAIopB,GACjB,OACA,WACA,CAAC,aAAc,aAAc,cAC7B,oIACA,GACA,WACET,QAGJnoB,eAAgB,IAAI4oB,GAClB,OACA,WACA,CAAC,4BAA6B,mBAC9B,qDACA,GACA,WACET,QAGJpoB,YAAa,IAAIopB,GACf,WACA,WACA,2BACA,8KACA,EACA,WAEFxoB,WAAY,IAAIioB,GACd,OACA,WACA,CAAC,0BAA2B,uBAC5B,0BACA,GAEFjG,aAAc,IAAIiG,GAChB,OACA,WACA,CAAC,oBAAqB,oBACtB,mEACA,GACA,WAlU6B,IAA3B/tB,EAAU8nB,aAAoB3nB,KAAKmd,QAAU1a,EAC5CzC,KAAKmd,QAAU1b,EAAgB0b,WAqUpCpK,cAAe,IAAI6a,GACjB,OACA,WACA,CAAC,yBAA0B,mBAC3B,sKACA,GAIFxe,YAAa,IAAIwe,GACf,OACA,UACA,CAAC,uBAAwB,uBACzB,yBACA,GACA,WACE1e,QAGJ6R,sBAAuB,IAAI6M,GACzB,OACA,UACA,CAAC,2BAA4B,sBAC7B,0KACA,GAEFzM,aAAc,IAAIyM,GAChB,OACA,UACA,CACE,mBACA,kBACA,0BACA,gCAEF,sGACA,GAEF3M,cAAe,IAAI2M,GACjB,OACA,UACA,CAAC,mBAAoB,mBACrB,sJACA,GAEF9M,oBAAqB,IAAIqN,GACvB,WACA,UACA,oCACA,wMACA,EACA1pB,KAEF7C,WAAY,IAAIqsB,GACd,SACA,UACA,6HAEFpsB,YAAa,IAAIosB,GACf,SACA,UACA,yGAEFnsB,aAAc,IAAImsB,GAChB,SACA,UACA,qHAEFlsB,aAAc,IAAIksB,GAChB,SACA,UACA,4HAEFjsB,UAAW,IAAIisB,GACb,SACA,UACA,gHAEFhsB,aAAc,IAAIgsB,GAChB,SACA,UACA,8HAEF/rB,WAAY,IAAI+rB,GACd,SACA,UACA,w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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file diff --git a/src/Disp/MenuSections/Settings/CreateOption.js b/src/Disp/MenuSections/Settings/CreateOption.js index 9d8d4ad..0581314 100644 --- a/src/Disp/MenuSections/Settings/CreateOption.js +++ b/src/Disp/MenuSections/Settings/CreateOption.js @@ -13,9 +13,42 @@ import RefreshScale from '../../HelperFunctions/RefreshScale'; import UpdateColours from '../../HelperFunctions/UpdateColours'; import Flash from '../../Notifications/Flash'; import PlaySound from '../../Notifications/Sound'; -import { FavouriteSettings } from '../../VariablesAndData'; +import { + FavouriteSettings, + SimpleTooltipElements, +} from '../../VariablesAndData'; import CookieMonsterPrompt from '../Prompt'; +/** + * This function creates the favourite setting star object + * @param {string} config The name of the option + * @returns {object} div The option object + */ +function CreateFavouriteStar(config) { + const FavStar = document.createElement('a'); + if (FavouriteSettings.includes(config)) { + FavStar.innerText = '★'; + FavStar.style.color = 'yellow'; + } else FavStar.innerText = '☆'; + FavStar.className = 'option'; + FavStar.onclick = function () { + ToggleFavouriteSetting(config); + SaveConfig(); + Game.UpdateMenu(); + }; + FavStar.onmouseover = function () { + Game.tooltip.draw( + this, + escape(SimpleTooltipElements.FavouriteSettingPlaceholder.innerHTML), + ); + }; + FavStar.onmouseout = function () { + Game.tooltip.hide(); + }; + FavStar.appendChild(document.createTextNode(' ')); + return FavStar; +} + /** * This function creates an option-object for the options page * @param {string} config The name of the option @@ -25,19 +58,7 @@ export default function CreatePrefOption(config) { const div = document.createElement('div'); div.className = 'listing'; if (CMOptions.FavouriteSettings === 1) { - const FavStar = document.createElement('a'); - if (FavouriteSettings.includes(config)) { - FavStar.innerText = '★'; - FavStar.style.color = 'yellow'; - } else FavStar.innerText = '☆'; - FavStar.className = 'option'; - FavStar.onclick = function () { - ToggleFavouriteSetting(config); - SaveConfig(); - Game.UpdateMenu(); - }; - div.appendChild(FavStar); - div.appendChild(document.createTextNode(' ')); + div.appendChild(CreateFavouriteStar(config)); } if (Config[config].type === 'bool') { const a = document.createElement('a'); @@ -54,6 +75,7 @@ export default function CreatePrefOption(config) { div.appendChild(a); const label = document.createElement('label'); label.textContent = Config[config].desc; + label.style.lineHeight = '1.6'; div.appendChild(label); return div; } @@ -104,6 +126,7 @@ export default function CreatePrefOption(config) { const span = document.createElement('span'); span.className = 'option'; span.textContent = `${Config[config].label} `; + span.style.lineHeight = '1.6'; div.appendChild(span); const input = document.createElement('input'); input.id = ConfigPrefix + config; @@ -144,6 +167,7 @@ export default function CreatePrefOption(config) { div.appendChild(a); const label = document.createElement('label'); label.textContent = Config[config].desc; + label.style.lineHeight = '1.6'; div.appendChild(label); return div; } @@ -165,6 +189,7 @@ export default function CreatePrefOption(config) { new JsColor(input, { hash: true, position: 'right', onInput: change }); const label = document.createElement('label'); label.textContent = Config[config].desc; + label.style.lineHeight = '1.6'; innerSpan.appendChild(label); if (config.includes('Flash')) { const a = document.createElement('a'); @@ -183,6 +208,7 @@ export default function CreatePrefOption(config) { const span = document.createElement('span'); span.className = 'option'; span.textContent = `${Config[config].label} `; + span.style.lineHeight = '1.6'; div.appendChild(span); const input = document.createElement('input'); input.id = ConfigPrefix + config; @@ -201,6 +227,7 @@ export default function CreatePrefOption(config) { div.appendChild(document.createTextNode(' ')); const label = document.createElement('label'); label.textContent = Config[config].desc; + label.style.lineHeight = '1.6'; div.appendChild(label); return div; } diff --git a/src/Disp/VariablesAndData.js b/src/Disp/VariablesAndData.js index 54588b3..e788a9b 100644 --- a/src/Disp/VariablesAndData.js +++ b/src/Disp/VariablesAndData.js @@ -79,6 +79,11 @@ export const TooltipText = [ 'Cheated cookies might break this formula', '250px', ], + [ + 'FavouriteSettingPlaceholder', + "Click to set this setting as favourite and show it in 'favourite' settings at the top of the Cookie Monster Settings", + '250px', + ], ]; export const SimpleTooltipElements = {}; From 812a2aaa692c7588ce582398b6c14fd7906256ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20van=20Noord?= <13665637+DanielNoord@users.noreply.github.com> Date: Sat, 3 Apr 2021 09:09:14 +0200 Subject: [PATCH 3/3] Reordered directory Disp/Settings --- dist/CookieMonster.js.map | 2 +- src/Cache/Stats/MissingUpgrades.js | 2 +- src/Disp/MenuSections/AddMenus.js | 4 ++-- src/Disp/MenuSections/{ => Info}/InfoPage.js | 6 +++--- src/Disp/MenuSections/Prompt.js | 1 - .../{ => Statistics}/AddStatsPage.js | 14 +++++++------- .../{ => Statistics}/CreateDOMElements.js | 6 +++--- .../{ => Statistics}/CreateMissingUpgrades.js | 2 +- .../{ => Statistics}/CreateStatsSections.js | 18 +++++++++--------- 9 files changed, 27 insertions(+), 28 deletions(-) rename src/Disp/MenuSections/{ => Info}/InfoPage.js (86%) rename src/Disp/MenuSections/{ => Statistics}/AddStatsPage.js (92%) rename src/Disp/MenuSections/{ => Statistics}/CreateDOMElements.js (96%) rename src/Disp/MenuSections/{ => Statistics}/CreateMissingUpgrades.js (99%) rename src/Disp/MenuSections/{ => Statistics}/CreateStatsSections.js (98%) diff --git a/dist/CookieMonster.js.map b/dist/CookieMonster.js.map index 65865f8..56db8f6 100644 --- a/dist/CookieMonster.js.map +++ b/dist/CookieMonster.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://cookiemonster-mod/CookieMonster.js"],"names":["__webpack_modules__","877","module","global","factory","exports","document","win","Error","window","this","BoxShadow","funcName","elm","jsc","jscolor","initialized","instances","readyQueue","register","addEventListener","pub","init","installBySelector","selector","rootNode","node","elms","querySelectorAll","matchClass","RegExp","lookupClass","i","length","dataOpts","m","undefined","type","toLowerCase","isColorAttrSupported","getDataAttr","className","match","targetElm","optsStr","console","warn","docsRef","opts","trim","parseOptionsStr","e","str","JSON","parse","eParse","looseJSON","Function","eEval","getInstances","inst","targetElement","push","createEl","tagName","el","createElement","setData","nodeOrSelector","sel","querySelector","isNode","val","Node","nodeType","nodeName","removeChildren","firstChild","removeChild","isTextInput","isButton","n","indexOf","isButtonEmpty","value","textContent","isPassiveEventSupported","supported","Object","defineProperty","get","removeEventListener","setAttribute","dataProp","obj","arguments","data","hasOwnProperty","prop","map","removeData","getData","setDefault","name","attrName","getAttribute","setDataAttr","_attachedGroupEvents","attachGroupEvent","groupName","evnt","func","detachGroupEvents","evt","preventDefault","returnValue","captureTarget","target","setCapture","_capturedTarget","releaseTarget","releaseCapture","triggerEvent","eventName","bubbles","cancelable","ev","Event","createEvent","initEvent","dispatchEvent","triggerInputEvent","eventKey","keys","9","13","27","code","keyCode","strList","replace","split","hasClass","classList","contains","addClass","classNames","add","removeClass","repl","remove","getCompStyle","getComputedStyle","currentStyle","setStyle","styles","important","reversible","priority","origStyle","setVal","style","setProperty","hexColor","r","g","b","Math","round","toString","substr","toUpperCase","hexaColor","a","rgbColor","rgbaColor","linearGradient","stdName","prefixes","helper","tryFunc","tryVal","background","getFuncName","Array","prototype","join","call","setBorderRadius","border-radius","setBoxShadow","box-shadow","getElementPos","relativeToViewport","x","y","rect","getBoundingClientRect","left","top","viewPos","getViewPos","getElementSize","offsetWidth","offsetHeight","getAbsPointerPos","changedTouches","clientX","clientY","getRelPointerPos","targetRect","srcElement","doc","documentElement","pageXOffset","scrollLeft","clientLeft","pageYOffset","scrollTop","clientTop","getViewSize","innerWidth","clientWidth","innerHeight","clientHeight","RGB_HSV","min","v","max","h","HSV_RGB","s","u","floor","parseColorString","ret","rgba","format","parseInt","charAt","mR","mG","mB","mA","par","re","parseFloat","parsePaletteValue","mixed","vals","isArray","colors","color","containsTranparentColor","isAlphaFormat","scaleCanvasForHighDPR","canvas","dpr","devicePixelRatio","width","height","getContext","scale","genColorPreviewCanvas","separatorPos","specWidth","scaleForHighDPR","sepW","previewSeparator","sqSize","chessboardSize","sqColor1","chessboardColor1","sqColor2","chessboardColor2","cWidth","cHeight","ctx","fillStyle","fillRect","start","clearRect","lineWidth","beginPath","strokeStyle","moveTo","lineTo","stroke","genColorPreviewGradient","position","params","right","apply","redrawPosition","picker","owner","tp","vp","thisObj","fixed","c","ts","vs","pd","getPickerDims","ps","borderW","borderH","l","smartPosition","pp","positionValue","contractShadow","_drawPosition","vShadow","shadowBlur","wrap","boxS","shadow","shadowColor","w","controlBorderWidth","sliderSpace","getControlPadding","sliderSize","getSliderChannel","hasAlphaChannel","pal","getPaletteDims","padding","closeButton","buttonHeight","pW","pH","contentW","contentH","paddedW","paddedH","borderWidth","palette","cols","rows","cellW","cellH","sampleCount","_palette","paletteCols","ceil","paletteSpacing","paletteHeight","pointerBorderWidth","pointerThickness","getPadYChannel","mode","triggerCallback","callback","error","triggerGlobal","eventNames","trigger","_pointerMoveEvent","mouse","touch","_pointerEndEvent","_pointerOrigin","onDocumentKeyUp","tryHide","onWindowResize","onWindowScroll","onParentScroll","onDocumentMouseDown","showOnClick","disabled","show","onControlPointerStart","onPickerTouchStart","controlName","pointerType","registerDragEvents","offset","onDocumentPointerMove","onDocumentPointerEnd","parent","frameElement","ofs","abs","rel","channels","fromHSVA","setPad","setSld","setASld","onPaletteSampleClick","currentTarget","_setFormat","getFormat","paletteSetsAlpha","_paletteHasTransparency","fromRGBA","hideOnPaletteClick","hide","ofsX","ofsY","pointerAbs","xVal","yVal","fmt","createPadCanvas","draw","hGrad","createLinearGradient","addColorStop","vGrad","createSliderGradient","color1","color2","grad","createASliderGradient","hShadow","blur","spread","inset","flags","leaveValue","leaveAlpha","leavePreview","enumOpts","previewPosition","alphaChannel","deprecatedOpts","styleElement","onFineChange","overwriteImportant","closable","insetWidth","insetColor","refine","THIS","setOption","option","oldOpt","newOpt","setter","getOption","getter","drawPicker","_processParentElementsInDOM","box","boxB","pad","padB","padM","padCanvas","cross","crossBY","crossBX","crossLY","crossLX","sld","sldB","sldM","sldGrad","sldPtrS","sldPtrIB","sldPtrMB","sldPtrOB","asld","asldB","asldM","asldGrad","asldPtrS","asldPtrIB","asldPtrMB","asldPtrOB","btn","btnT","appendChild","passive","insetColors","outsetColor","p","displaySlider","displayAlphaSlider","pickerDims","crossOuterSize","crossSize","controlPadding","borderRadius","PI","clear","zIndex","border","borderColor","backgroundColor","opacity","controlBorderColor","cursor","instance","control","pointerBorderColor","pointerColor","overflow","display","sliderInnerSpace","innerHTML","chessboard","si","sampleColor","sampleCssColor","sc","sw","backgroundImage","toDataURL","backgroundRepeat","backgroundPosition","bottom","maxWidth","whiteSpace","buttonColor","font","textAlign","onmousedown","lineHeight","createTextNode","closeText","redrawPad","redrawSld","redrawASld","activeClassName","container","body","parentNode","yChannel","rgb1","rgb2","rgb","toHEXString","sldChannel","isPickerOwner","alpha","onChange","onInput","valueElement","alphaElement","previewElement","previewSize","previewPadding","required","hash","uppercase","forceStyle","hideOnLeave","minS","maxS","minV","maxV","minA","maxA","redraw","exposeColor","success","opt","channel","res","evs","callbackProp","isNaN","hsv","fromHSV","fromRGB","fromString","setPreviewElementBg","setValueElementValue","toHEXAString","toRGBString","toRGBAString","toGrayscale","toCanvas","toBackground","isLight","_currentFormat","processValueInput","processAlphaInput","colorStr","alphaVal","setAlphaElementValue","backgrounds","image","size","repeat","origin","preview","bg","sty","background-image","background-position","background-size","background-repeat","background-origin","padding-left","padding-right","_parentElementsProcessed","compStyle","set__palette","options","presetsArr","preset","slice","pres","presets","nonProperties","test","min-width","valueElementOrigEvents","oninput","oldVal","initValue","initAlpha","install","shift","ready","triggerNow","installByClassName","JSColor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__esModule","d","definition","key","o","enumerable","CMOptions","ToggleWrinklerButtons","WrinklerButtons","Game","elderWrath","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColourTextPre","ColourBackPre","ColourBlue","ColourGreen","ColourYellow","ColourOrange","ColourRed","ColourPurple","ColourGray","ColourPink","ColourBrown","ColoursOrdering","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColours","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","FavouriteSettings","BeautifyFormatting_Beautify","num","floats","forced","decimals","ScaleDecimals","Infinity","Scale","Beautify","Number","isFinite","answer","ScaleCutoff","ScaleSeparator","toLocaleString","toExponential","exponential","AmountOfTenPowerThree","toFixed","log","FormatTime","time","longFormat","formattedTime","TimeFormat","GetTimeColour","text","CookiesDiff","WrinkDiff","WrinkFattestDiff","ChoEggDiff","ClicksDiff","HeavenlyChipsDiff","CacheLastCPSCheck","CacheLastCookies","CacheLastWrinkCookies","CacheLastWrinkFattestCookies","CacheLastClicks","CacheAverageGainBank","CacheAverageGainWrink","CacheAverageGainWrinkFattest","CacheAverageGainChoEgg","CacheAverageCPS","CacheLastHeavenlyCheck","CacheLastHeavenlyChips","CacheDoRemakeBuildPrices","CacheHadBuildAura","SimBuildingsOwned","SimUpgradesOwned","SimPledges","SimAchievementsOwned","SimHeavenlyPower","SimPrestige","SimDragonAura","SimDragonAura2","SimGod1","SimGod2","SimGod3","SimDoSims","SimEffs","SimCookiesPs","SimCookiesPsRaw","CacheDragonAura","CacheDragonAura2","CacheLastDragonLevel","CacheCostDragonUpgrade","CacheLucky","CacheLuckyReward","CacheLuckyWrathReward","CacheLuckyFrenzy","CacheLuckyRewardFrenzy","CacheLuckyWrathRewardFrenzy","CacheConjure","CacheConjureReward","CacheEdifice","CacheEdificeBuilding","CacheNoGoldSwitchCookiesPS","CacheDragonsFortuneMultAdjustment","CacheGoldenCookiesMult","CacheWrathCookiesMult","CacheHCPerSecond","CacheCentEgg","CacheSeaSpec","CacheLastChoEgg","CacheObjects1","CacheObjects10","CacheObjects100","CacheWrinklersTotal","CacheWrinklersNormal","CacheWrinklersFattest","CacheCurrWrinklerCPSMult","CacheCurrWrinklerCount","CacheUpgrades","CacheAverageClicks","CacheMissingUpgrades","CacheMissingUpgradesPrestige","CacheMissingUpgradesCookies","CacheChainRequired","CacheChainRequiredNext","CacheChainMaxReward","CacheChainWrathRequired","CacheChainWrathRequiredNext","CacheChainWrathMaxReward","CacheChainFrenzyRequired","CacheChainFrenzyRequiredNext","CacheChainFrenzyMaxReward","CacheChainFrenzyWrathRequired","CacheChainFrenzyWrathRequiredNext","CacheChainFrenzyWrathMaxReward","CacheRealCookiesEarned","CacheAvgCPSWithChoEgg","CacheSpawnedGoldenShimmer","CacheSeasonPopShimmer","CacheTimeTillNextPrestige","CacheMinPP","CachePPArray","CacheGoldenShimmersByID","CacheSellForChoEgg","CacheGods","0","1","2","3","4","5","6","7","8","10","SimObjects","SimUpgrades","SimAchievements","SimAuraMult","what","dragonAuras","SimGetSellMultiplier","giveBack","SimEff","def","SimHas","it","ascensionMode","pool","tier","bought","SimHasGod","hasGod","Temple","minigame","Objects","god","gods","id","SimModifyBuildingPrice","building","price","ModifiedPrice","hasBuff","fortune","minigameLoaded","godLvl","BuildingSell","build","basePrice","free","amount","noSim","noSimRes","toChange","startingAmount","moni","buyBulk","priceIncrease","modifyBuildingPrice","getSellMultiplier","UpdateBuildings","buyMode","BuildColour","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColour","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColour","j","childNodes","div","SortUpgrades","nameChecker","arr2","upgrade","findIndex","order","GetCPS","CPSMode","CalcWrink","cookiesPs","cpsSucked","wrinklers","GetWrinkConfigBank","CreateTimer","bars","timerBar","margin","fontSize","marginRight","verticalAlign","colorBar","borderTopRightRadius","borderBottomRightRadius","timer","marginLeft","CreateBotBarBuildingColumn","buildingName","bonus","header","substring","lastChild","paddingLeft","UpdateBotBar","BotBar","count","PPString","PPDisplayTime","timeColour","bulkPrice","cookies","UpdateBackground","Background","LeftBackground","UpdateBotTimerBarPosition","TimerBar","TimerBarPos","ToggleTimerBar","CacheDragonAuras","dragonAura","dragonAura2","InitAchievement","achievementName","Achievements","you","SimGetTieredCpsMult","mult","tieredUpgrades","Tiers","special","synergies","syn","buildingTie1","buildingTie2","grandma","Grandma","misfortune","vanilla","InitialBuildingData","cps","magicCpS","ComputeCps","GrandmaSynergies","UpgradesByPool","kitten","Portal","baseCps","baseCPS","InitUpgrade","upgradeName","Upgrades","power","level","pow","CopyData","UpgradesOwned","pledges","AchievementsOwned","heavenlyPower","prestige","totalCookies","slot","won","TooltipCreateHeader","fontWeight","TooltipCreateCalculationSection","tooltip","income","marginBottom","click","production","CalculateGrimoireRefillTime","currentMagic","maxMagic","targetMagic","magic","fps","GetCPSBuffMult","buffs","multCpS","ToggleToolWarnPos","ToolWarnPos","UpdateTooltips","tooltipBox","paddingBottom","TooltipCreateTooltipBox","TooltipBuildUpgrade","increase","productionAchievs","HasAchiev","achiev","nextProductionAchiev","Building","getPrice","bonusMouse","previousSibling","chocolate","Upgrade","TooltipLump","lumpType","lumpColour","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColour","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","plantName","GardenPlots","totalGain","mortal","tile","immortal","matureBase","HarvestAll","WrinklerReward","WrinklerButton","TooltipPantheon","GodID","cps1","cps2","cps3","PantheonGods","getElementById","TooltipWarn","create","boxId","labelTextFront","labelTextBack","deficitId","transition","labelDiv","labelSpan","deficitDiv","deficitSpan","ToolWarnUser","TooltipCreateWarningSection","bonusIncomeUsed","ToolWarnBon","limitLucky","bonusNoFren","ToolWarnLucky","ToolWarnLuckyFrenzy","limitLuckyFrenzy","ToolWarnConjure","limitConjure","ToolWarnConjureFrenzy","limitConjureFrenzy","ToolWarnEdifice","children","Warnings","Draw","prefs","autosave","drawT","onMenu","Stats","innerText","sayTime","T","maxWidthTwoBar","maxWidthOneBar","numberOfTimers","shimmerTypes","golden","spawned","Has","minTime","maxTime","TimerBarOverlay","season","reindeer","BuffTimerBars","classColour","UpdateTimerBar","TooltipWrink","showingTooltip","phase","selected","placeholder","wrinkler","minWidth","escape","CheckWrinklerTooltip","sucked","toSuck","UpdateWrinklerTooltip","UpStats","UpdateMenu","monospace","CMAvgQueue","[object Object]","maxLength","queue","newValue","timePeriod","CacheAvgCPS","currDate","Date","now","choEggTotal","cookiesEarned","timeDiff","bankDiffAvg","wrinkDiffAvg","wrinkFattestDiffAvg","choEggDiffAvg","clicksDiffAvg","cookieClicks","addLatest","cpsLength","AvgCPSHist","calcAverage","choEgg","HasUnlocked","AvgClicksHist","ColourOfPP","PPSecondsLowerLimit","PPOnlyConsiderBuyable","CacheColour","PPRigidelMode","getSumPrice","PPExcludeTop","CachePP","PP_CachePP","indexOfMin","CacheBuildingsPP","BuildingGetPrice","SimWin","CalculateGains","effs","myEffs","ii","heavenlyMult","SimGetHeavenlyMultiplier","heralds","cookieUpgrades","buildMult","sin","santaLevel","milkProgress","milkMult","catMult","storedCps","eggMult","day","startDate","lumps","rawCookiesPs","CpsAchievements","threshold","auraMult","bakeryName","goldenSwitchMult","upgrades","goldenCookieUpgrades","veilMult","runModHookOnValue","Fortunes","HalloCookies","ChristCookies","ValCookies","PlantDrops","SimHasAchiev","CheckOtherAchiev","grandmas","buildingsOwned","mathematician","base10","minAmount","ObjectsById","Cursor","hasAllHalloCook","hasAllChristCook","list","fortunes","CacheBuildingIncome","result","tieredAchievs","achievUnlock","lastAchievementsOwned","BuyBuildingsBonusIncome","CacheBuildingsPrices","CacheIncome","bonusIncome","unlocked","CountsAsUpgradeOwned","diffMouseCPS","multClick","out","MouseCps","computedMouseCps","BuyUpgradesBonusIncome","MaxChainCookieReward","digit","maxPayout","totalFromChain","nextMoni","nextRequired","chain","LN10","CacheChain","cpsBuffMult","CacheHeavenlyChipsPS","chipsOwned","HowMuchPrestige","cookiesReset","ascendNowToGet","heavenlyChipsDiffAvg","CacheAllMissingUpgrades","classes","noFrame","crates","icon","iconFunction","getDynamicTooltip","crateMissing","CacheSeasonSpec","CacheStatsCookies","CacheGoldenAndWrathCookiesMults","goldenMult","wrathMult","eff","CacheWrinklers","InitCache","SettingsDefault","DetailedTime","UpgradeBarFixedPos","DragonAuraInfo","GrimoireBar","GCTimer","Favicon","HideSectionsButtons","TooltipAmor","TooltipAscendButton","MissingUpgrades","HeavenlyChipsTarget","ShowMissedGC","GeneralSound","GCNotification","GCFlash","ColourGCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","ColourFortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","ColourSeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","ColourGardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","ColourMagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","ColourWrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","ColourWrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","BulkBuyBlock","Header","Favourite","Calculation","Notation","Colours","BarsDisplay","Tooltip","Statistics","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingColours","SettingVolume","SettingInputNumber","SettingsData","insertBefore","UpBarColor","save","stringify","favouriteSettings","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","Sound_PlaySound","url","sndConfig","volConfig","sound","Audio","volume","play","CreateNotification","notifyConfig","title","message","visibilityState","badge","CMLoop","OnAscend","AscendTimer","mods","CachePantheonGods","sellTotal","Bank","marketGoods","goods","goodsVal","marketGood","stock","cookiesPsRawHighest","buildingsToSacrifice","highestBuilding","SellBuildingsForChoEgg","CacheSellAllForChoEgg","hasBuildAura","godMult","CacheCurrWrinklerCPS","cookiesToNext","HowManyCookiesReset","LoopCache","shimmers","spawnLead","cookie","fontFamily","onclick","pop","onmouseover","filter","webkitFilter","onmouseout","CreateGCTimer","transform","life","TickerEffect","nextStep","CheckMagicMeter","CurrentWrinklers","getWrinklersMax","CheckWrinklerCount","UpdateColours","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","Colors","mod","PopAllNormalWrinklers","hp","CreateTooltip","buildPrice","amortizeAmount","storedTotalCps","globalCpsMult","crateTooltip","lumpTooltip","spellTooltip","tileTooltip","toolTooltip","godTooltip","slotTooltip","area","ReplaceTooltipGrimoire","dynamic","wobble","ReplaceNativeGrimoireDraw","magicBarTextL","ReplaceNativeGrimoire","launch","ReplaceNativeGrimoireLaunch","jscolor_default","ToggleSetting_ConfigPrefix","ToggleConfigVolume","ToggleHeader","StatsHeader","span","StatsListing","listingName","StatsMissDisp","theMissDisp","frag","createDocumentFragment","missing","AddMenuStats","stats","goldCookTooltip","section","luckyColour","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColourFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColour","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColour","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColourFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColourFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColour","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColour","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColour","bakeberryFrag","chocorootColour","chocorootFrag","queenbeetColour","queenbeetFrag","duketaterColour","duketaterFrag","missingPlantDrops","GardenSection","possiblePresMax","neededCook","cookiesNextFrag","cookiesNextSmall","heavenlyChips","HCTarget","CookiesTillTarget","resetBonus","newHeavenlyChips","curCPS","ResetCPS","ResetBonus","resetFrag","resetSmall","currentPrestige","willHave","willGet","delta7","next7Reset","next7Total","frag7","delta777","next777Reset","next777Total","frag777","delta777777","next777777Reset","next777777Total","frag777777","PrestigeSection","popAllFrag","popAllA","popFattestFrag","popFattestA","specDisp","missingHalloweenCookies","missingChristmasCookies","missingValentineCookies","missingNormalEggs","eggDrops","missingRareEggs","rareEggDrops","centEgg","failRateHalloween","dropRateMult","obtainedCookiesChance","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","FavStar","ele","ToggleFavouriteSetting","FavouriteSettingPlaceholder","CreateFavouriteStar","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","content","promptWrapL","promptL","PlaySound","promptAnchorL","darkenL","focus","promptOn","UpdatePrompt","CookieMonsterPrompt","outerHTML","ClosePrompt","innerSpan","FixMouseY","timerBarHeight","mouseY","ReplaceNative","drawMod","from","update","updateMod","warnOffset","tta","tt","UpdateTooltipLocation","UpdateWrinklers","UpdateSpecial","ClickCookie","mouseDown","setOnCrate","ClickProduct","DescribeDragonAura","aura","bonusCPS","priceOfChange","CalculateChangeAura","timeToRecover","bonusCPSPercentage","minHeight","div2","AddAuraInfo","ToggleSpecialMenu","on","shouldHide","AddDragonLevelUpTooltip","index","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","backgroundColour","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateFlashScreen","CreateSectionHideButtons","getElementsByTagName","CreateFavicon","CreateSimpleTooltip","append","CreateWrinklerButtons","canLumps","child","coords","ReplaceTooltipPantheon","popups","Popup","Notify","Win","CM","proceed","confirm","registerHook","load","registerMod"],"mappings":"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C,KAAKC,YACpC1U,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,QAQlD,MAAMyI,EAAS,CAAC,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGhDC,EAAa,CACjB,GACA,GACA,IACA,IACA,KACA,QACA,QACA,OACA,OACA,MACA,MACA,MACA,QACA,SACA,SACA,cACA,UACA,SACA,YACA,UACA,WACA,SACA,WACA,YACA,YACA,kBAIIC,EAAwB,CAC5B,GACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,OAMF,IAAIC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAOAC,EA1BAC,EAAqB,GAErBC,EAAwB,GACxBC,EAAuB,GAOvBC,EAAkB,GAqBtB,MAAMC,EAAgB,SAChBC,EAAgB,SAMhBC,EAAa,OACbC,EAAc,QACdC,EAAe,SACfC,EAAe,SACfC,EAAY,MACZC,EAAe,SACfC,EAAa,OACbC,EAAa,OACbC,EAAc,QACdC,EAAkB,CACtBH,EACAN,EACAC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Cb,OACA,cACA,CACE,+BACA,8BACA,6CAEF,qGACA,GACA,WACE/lB,IAAY,KAKhBnD,MAAO,IAAIkpB,GACT,OACA,WACA,CACE,uBACA,SACA,cACA,4BACA,sBACA,wBAEF,yCACA,GACA,WACET,QAGJ3oB,cAAe,IAAIopB,GACjB,OACA,WACA,CAAC,aAAc,aAAc,cAC7B,oIACA,GACA,WACET,QAGJnoB,eAAgB,IAAI4oB,GAClB,OACA,WACA,CAAC,4BAA6B,mBAC9B,qDACA,GACA,WACET,QAGJpoB,YAAa,IAAIopB,GACf,WACA,WACA,2BACA,8KACA,EACA,WAEFxoB,WAAY,IAAIioB,GACd,OACA,WACA,CAAC,0BAA2B,uBAC5B,0BACA,GAEFjG,aAAc,IAAIiG,GAChB,OACA,WACA,CAAC,oBAAqB,oBACtB,mEACA,GACA,WAlU6B,IAA3B/tB,EAAU8nB,aAAoB3nB,KAAKmd,QAAU1a,EAC5CzC,KAAKmd,QAAU1b,EAAgB0b,WAqUpCpK,cAAe,IAAI6a,GACjB,OACA,WACA,CAAC,yBAA0B,mBAC3B,sKACA,GAIFxe,YAAa,IAAIwe,GACf,OACA,UACA,CAAC,uBAAwB,uBACzB,yBACA,GACA,WACE1e,QAGJ6R,sBAAuB,IAAI6M,GACzB,OACA,UACA,CAAC,2BAA4B,sBAC7B,0KACA,GAEFzM,aAAc,IAAIyM,GAChB,OACA,UACA,CACE,mBACA,kBACA,0BACA,gCAEF,sGACA,GAEF3M,cAAe,IAAI2M,GACjB,OACA,UACA,CAAC,mBAAoB,mBACrB,sJACA,GAEF9M,oBAAqB,IAAIqN,GACvB,WACA,UACA,oCACA,wMACA,EACA1pB,KAEF7C,WAAY,IAAIqsB,GACd,SACA,UACA,6HAEFpsB,YAAa,IAAIosB,GACf,SACA,UACA,yGAEFnsB,aAAc,IAAImsB,GAChB,SACA,UACA,qHAEFlsB,aAAc,IAAIksB,GAChB,SACA,UACA,4HAEFjsB,UAAW,IAAIisB,GACb,SACA,UACA,gHAEFhsB,aAAc,IAAIgsB,GAChB,SACA,UACA,8HAEF/rB,WAAY,IAAI+rB,GACd,SACA,UACA,w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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://cookiemonster-mod/CookieMonster.js"],"names":["__webpack_modules__","877","module","global","factory","exports","document","win","Error","window","this","BoxShadow","funcName","elm","jsc","jscolor","initialized","instances","readyQueue","register","addEventListener","pub","init","installBySelector","selector","rootNode","node","elms","querySelectorAll","matchClass","RegExp","lookupClass","i","length","dataOpts","m","undefined","type","toLowerCase","isColorAttrSupported","getDataAttr","className","match","targetElm","optsStr","console","warn","docsRef","opts","trim","parseOptionsStr","e","str","JSON","parse","eParse","looseJSON","Function","eEval","getInstances","inst","targetElement","push","createEl","tagName","el","createElement","setData","nodeOrSelector","sel","querySelector","isNode","val","Node","nodeType","nodeName","removeChildren","firstChild","removeChild","isTextInput","isButton","n","indexOf","isButtonEmpty","value","textContent","isPassiveEventSupported","supported","Object","defineProperty","get","removeEventListener","setAttribute","dataProp","obj","arguments","data","hasOwnProperty","prop","map","removeData","getData","setDefault","name","attrName","getAttribute","setDataAttr","_attachedGroupEvents","attachGroupEvent","groupName","evnt","func","detachGroupEvents","evt","preventDefault","returnValue","captureTarget","target","setCapture","_capturedTarget","releaseTarget","releaseCapture","triggerEvent","eventName","bubbles","cancelable","ev","Event","createEvent","initEvent","dispatchEvent","triggerInputEvent","eventKey","keys","9","13","27","code","keyCode","strList","replace","split","hasClass","classList","contains","addClass","classNames","add","removeClass","repl","remove","getCompStyle","getComputedStyle","currentStyle","setStyle","styles","important","reversible","priority","origStyle","setVal","style","setProperty","hexColor","r","g","b","Math","round","toString","substr","toUpperCase","hexaColor","a","rgbColor","rgbaColor","linearGradient","stdName","prefixes","helper","tryFunc","tryVal","background","getFuncName","Array","prototype","join","call","setBorderRadius","border-radius","setBoxShadow","box-shadow","getElementPos","relativeToViewport","x","y","rect","getBoundingClientRect","left","top","viewPos","getViewPos","getElementSize","offsetWidth","offsetHeight","getAbsPointerPos","changedTouches","clientX","clientY","getRelPointerPos","targetRect","srcElement","doc","documentElement","pageXOffset","scrollLeft","clientLeft","pageYOffset","scrollTop","clientTop","getViewSize","innerWidth","clientWidth","innerHeight","clientHeight","RGB_HSV","min","v","max","h","HSV_RGB","s","u","floor","parseColorString","ret","rgba","format","parseInt","charAt","mR","mG","mB","mA","par","re","parseFloat","parsePaletteValue","mixed","vals","isArray","colors","color","containsTranparentColor","isAlphaFormat","scaleCanvasForHighDPR","canvas","dpr","devicePixelRatio","width","height","getContext","scale","genColorPreviewCanvas","separatorPos","specWidth","scaleForHighDPR","sepW","previewSeparator","sqSize","chessboardSize","sqColor1","chessboardColor1","sqColor2","chessboardColor2","cWidth","cHeight","ctx","fillStyle","fillRect","start","clearRect","lineWidth","beginPath","strokeStyle","moveTo","lineTo","stroke","genColorPreviewGradient","position","params","right","apply","redrawPosition","picker","owner","tp","vp","thisObj","fixed","c","ts","vs","pd","getPickerDims","ps","borderW","borderH","l","smartPosition","pp","positionValue","contractShadow","_drawPosition","vShadow","shadowBlur","wrap","boxS","shadow","shadowColor","w","controlBorderWidth","sliderSpace","getControlPadding","sliderSize","getSliderChannel","hasAlphaChannel","pal","getPaletteDims","padding","closeButton","buttonHeight","pW","pH","contentW","contentH","paddedW","paddedH","borderWidth","palette","cols","rows","cellW","cellH","sampleCount","_palette","paletteCols","ceil","paletteSpacing","paletteHeight","pointerBorderWidth","pointerThickness","getPadYChannel","mode","triggerCallback","callback","error","triggerGlobal","eventNames","trigger","_pointerMoveEvent","mouse","touch","_pointerEndEvent","_pointerOrigin","onDocumentKeyUp","tryHide","onWindowResize","onWindowScroll","onParentScroll","onDocumentMouseDown","showOnClick","disabled","show","onControlPointerStart","onPickerTouchStart","controlName","pointerType","registerDragEvents","offset","onDocumentPointerMove","onDocumentPointerEnd","parent","frameElement","ofs","abs","rel","channels","fromHSVA","setPad","setSld","setASld","onPaletteSampleClick","currentTarget","_setFormat","getFormat","paletteSetsAlpha","_paletteHasTransparency","fromRGBA","hideOnPaletteClick","hide","ofsX","ofsY","pointerAbs","xVal","yVal","fmt","createPadCanvas","draw","hGrad","createLinearGradient","addColorStop","vGrad","createSliderGradient","color1","color2","grad","createASliderGradient","hShadow","blur","spread","inset","flags","leaveValue","leaveAlpha","leavePreview","enumOpts","previewPosition","alphaChannel","deprecatedOpts","styleElement","onFineChange","overwriteImportant","closable","insetWidth","insetColor","refine","THIS","setOption","option","oldOpt","newOpt","setter","getOption","getter","drawPicker","_processParentElementsInDOM","box","boxB","pad","padB","padM","padCanvas","cross","crossBY","crossBX","crossLY","crossLX","sld","sldB","sldM","sldGrad","sldPtrS","sldPtrIB","sldPtrMB","sldPtrOB","asld","asldB","asldM","asldGrad","asldPtrS","asldPtrIB","asldPtrMB","asldPtrOB","btn","btnT","appendChild","passive","insetColors","outsetColor","p","displaySlider","displayAlphaSlider","pickerDims","crossOuterSize","crossSize","controlPadding","borderRadius","PI","clear","zIndex","border","borderColor","backgroundColor","opacity","controlBorderColor","cursor","instance","control","pointerBorderColor","pointerColor","overflow","display","sliderInnerSpace","innerHTML","chessboard","si","sampleColor","sampleCssColor","sc","sw","backgroundImage","toDataURL","backgroundRepeat","backgroundPosition","bottom","maxWidth","whiteSpace","buttonColor","font","textAlign","onmousedown","lineHeight","createTextNode","closeText","redrawPad","redrawSld","redrawASld","activeClassName","container","body","parentNode","yChannel","rgb1","rgb2","rgb","toHEXString","sldChannel","isPickerOwner","alpha","onChange","onInput","valueElement","alphaElement","previewElement","previewSize","previewPadding","required","hash","uppercase","forceStyle","hideOnLeave","minS","maxS","minV","maxV","minA","maxA","redraw","exposeColor","success","opt","channel","res","evs","callbackProp","isNaN","hsv","fromHSV","fromRGB","fromString","setPreviewElementBg","setValueElementValue","toHEXAString","toRGBString","toRGBAString","toGrayscale","toCanvas","toBackground","isLight","_currentFormat","processValueInput","processAlphaInput","colorStr","alphaVal","setAlphaElementValue","backgrounds","image","size","repeat","origin","preview","bg","sty","background-image","background-position","background-size","background-repeat","background-origin","padding-left","padding-right","_parentElementsProcessed","compStyle","set__palette","options","presetsArr","preset","slice","pres","presets","nonProperties","test","min-width","valueElementOrigEvents","oninput","oldVal","initValue","initAlpha","install","shift","ready","triggerNow","installByClassName","JSColor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__esModule","d","definition","key","o","enumerable","CMOptions","ToggleWrinklerButtons","WrinklerButtons","Game","elderWrath","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColourTextPre","ColourBackPre","ColourBlue","ColourGreen","ColourYellow","ColourOrange","ColourRed","ColourPurple","ColourGray","ColourPink","ColourBrown","ColoursOrdering","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColours","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","FavouriteSettings","BeautifyFormatting_Beautify","num","floats","forced","decimals","ScaleDecimals","Infinity","Scale","Beautify","Number","isFinite","answer","ScaleCutoff","ScaleSeparator","toLocaleString","toExponential","exponential","AmountOfTenPowerThree","toFixed","log","FormatTime","time","longFormat","formattedTime","TimeFormat","GetTimeColour","text","CookiesDiff","WrinkDiff","WrinkFattestDiff","ChoEggDiff","ClicksDiff","HeavenlyChipsDiff","CacheLastCPSCheck","CacheLastCookies","CacheLastWrinkCookies","CacheLastWrinkFattestCookies","CacheLastClicks","CacheAverageGainBank","CacheAverageGainWrink","CacheAverageGainWrinkFattest","CacheAverageGainChoEgg","CacheAverageCPS","CacheLastHeavenlyCheck","CacheLastHeavenlyChips","CacheDoRemakeBuildPrices","CacheHadBuildAura","SimBuildingsOwned","SimUpgradesOwned","SimPledges","SimAchievementsOwned","SimHeavenlyPower","SimPrestige","SimDragonAura","SimDragonAura2","SimGod1","SimGod2","SimGod3","SimDoSims","SimEffs","SimCookiesPs","SimCookiesPsRaw","CacheDragonAura","CacheDragonAura2","CacheLastDragonLevel","CacheCostDragonUpgrade","CacheLucky","CacheLuckyReward","CacheLuckyWrathReward","CacheLuckyFrenzy","CacheLuckyRewardFrenzy","CacheLuckyWrathRewardFrenzy","CacheConjure","CacheConjureReward","CacheEdifice","CacheEdificeBuilding","CacheNoGoldSwitchCookiesPS","CacheDragonsFortuneMultAdjustment","CacheGoldenCookiesMult","CacheWrathCookiesMult","CacheHCPerSecond","CacheCentEgg","CacheSeaSpec","CacheLastChoEgg","CacheObjects1","CacheObjects10","CacheObjects100","CacheWrinklersTotal","CacheWrinklersNormal","CacheWrinklersFattest","CacheCurrWrinklerCPSMult","CacheCurrWrinklerCount","CacheUpgrades","CacheAverageClicks","CacheMissingUpgrades","CacheMissingUpgradesPrestige","CacheMissingUpgradesCookies","CacheChainRequired","CacheChainRequiredNext","CacheChainMaxReward","CacheChainWrathRequired","CacheChainWrathRequiredNext","CacheChainWrathMaxReward","CacheChainFrenzyRequired","CacheChainFrenzyRequiredNext","CacheChainFrenzyMaxReward","CacheChainFrenzyWrathRequired","CacheChainFrenzyWrathRequiredNext","CacheChainFrenzyWrathMaxReward","CacheRealCookiesEarned","CacheAvgCPSWithChoEgg","CacheSpawnedGoldenShimmer","CacheSeasonPopShimmer","CacheTimeTillNextPrestige","CacheMinPP","CachePPArray","CacheGoldenShimmersByID","CacheSellForChoEgg","CacheGods","0","1","2","3","4","5","6","7","8","10","SimObjects","SimUpgrades","SimAchievements","SimAuraMult","what","dragonAuras","SimGetSellMultiplier","giveBack","SimEff","def","SimHas","it","ascensionMode","pool","tier","bought","SimHasGod","hasGod","Temple","minigame","Objects","god","gods","id","SimModifyBuildingPrice","building","price","ModifiedPrice","hasBuff","fortune","minigameLoaded","godLvl","BuildingSell","build","basePrice","free","amount","noSim","noSimRes","toChange","startingAmount","moni","buyBulk","priceIncrease","modifyBuildingPrice","getSellMultiplier","UpdateBuildings","buyMode","BuildColour","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColour","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColour","j","childNodes","div","SortUpgrades","nameChecker","arr2","upgrade","findIndex","order","GetCPS","CPSMode","CalcWrink","cookiesPs","cpsSucked","wrinklers","GetWrinkConfigBank","CreateTimer","bars","timerBar","margin","fontSize","marginRight","verticalAlign","colorBar","borderTopRightRadius","borderBottomRightRadius","timer","marginLeft","CreateBotBarBuildingColumn","buildingName","bonus","header","substring","lastChild","paddingLeft","UpdateBotBar","BotBar","count","PPString","PPDisplayTime","timeColour","bulkPrice","cookies","UpdateBackground","Background","LeftBackground","UpdateBotTimerBarPosition","TimerBar","TimerBarPos","ToggleTimerBar","CacheDragonAuras","dragonAura","dragonAura2","InitAchievement","achievementName","Achievements","you","SimGetTieredCpsMult","mult","tieredUpgrades","Tiers","special","synergies","syn","buildingTie1","buildingTie2","grandma","Grandma","misfortune","vanilla","InitialBuildingData","cps","magicCpS","ComputeCps","GrandmaSynergies","UpgradesByPool","kitten","Portal","baseCps","baseCPS","InitUpgrade","upgradeName","Upgrades","power","level","pow","CopyData","UpgradesOwned","pledges","AchievementsOwned","heavenlyPower","prestige","totalCookies","slot","won","TooltipCreateHeader","fontWeight","TooltipCreateCalculationSection","tooltip","income","marginBottom","click","production","CalculateGrimoireRefillTime","currentMagic","maxMagic","targetMagic","magic","fps","GetCPSBuffMult","buffs","multCpS","ToggleToolWarnPos","ToolWarnPos","UpdateTooltips","tooltipBox","paddingBottom","TooltipCreateTooltipBox","TooltipBuildUpgrade","increase","productionAchievs","HasAchiev","achiev","nextProductionAchiev","Building","getPrice","bonusMouse","previousSibling","chocolate","Upgrade","TooltipLump","lumpType","lumpColour","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColour","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","plantName","GardenPlots","totalGain","mortal","tile","immortal","matureBase","HarvestAll","WrinklerReward","WrinklerButton","TooltipPantheon","GodID","cps1","cps2","cps3","PantheonGods","getElementById","TooltipWarn","create","boxId","labelTextFront","labelTextBack","deficitId","transition","labelDiv","labelSpan","deficitDiv","deficitSpan","ToolWarnUser","TooltipCreateWarningSection","bonusIncomeUsed","ToolWarnBon","limitLucky","bonusNoFren","ToolWarnLucky","ToolWarnLuckyFrenzy","limitLuckyFrenzy","ToolWarnConjure","limitConjure","ToolWarnConjureFrenzy","limitConjureFrenzy","ToolWarnEdifice","children","Warnings","Draw","prefs","autosave","drawT","onMenu","Stats","innerText","sayTime","T","maxWidthTwoBar","maxWidthOneBar","numberOfTimers","shimmerTypes","golden","spawned","Has","minTime","maxTime","TimerBarOverlay","season","reindeer","BuffTimerBars","classColour","UpdateTimerBar","TooltipWrink","showingTooltip","phase","selected","placeholder","wrinkler","minWidth","escape","CheckWrinklerTooltip","sucked","toSuck","UpdateWrinklerTooltip","UpStats","UpdateMenu","monospace","CMAvgQueue","[object Object]","maxLength","queue","newValue","timePeriod","CacheAvgCPS","currDate","Date","now","choEggTotal","cookiesEarned","timeDiff","bankDiffAvg","wrinkDiffAvg","wrinkFattestDiffAvg","choEggDiffAvg","clicksDiffAvg","cookieClicks","addLatest","cpsLength","AvgCPSHist","calcAverage","choEgg","HasUnlocked","AvgClicksHist","ColourOfPP","PPSecondsLowerLimit","PPOnlyConsiderBuyable","CacheColour","PPRigidelMode","getSumPrice","PPExcludeTop","CachePP","PP_CachePP","indexOfMin","CacheBuildingsPP","BuildingGetPrice","SimWin","CalculateGains","effs","myEffs","ii","heavenlyMult","SimGetHeavenlyMultiplier","heralds","cookieUpgrades","buildMult","sin","santaLevel","milkProgress","milkMult","catMult","storedCps","eggMult","day","startDate","lumps","rawCookiesPs","CpsAchievements","threshold","auraMult","bakeryName","goldenSwitchMult","upgrades","goldenCookieUpgrades","veilMult","runModHookOnValue","Fortunes","HalloCookies","ChristCookies","ValCookies","PlantDrops","SimHasAchiev","CheckOtherAchiev","grandmas","buildingsOwned","mathematician","base10","minAmount","ObjectsById","Cursor","hasAllHalloCook","hasAllChristCook","list","fortunes","CacheBuildingIncome","result","tieredAchievs","achievUnlock","lastAchievementsOwned","BuyBuildingsBonusIncome","CacheBuildingsPrices","CacheIncome","bonusIncome","unlocked","CountsAsUpgradeOwned","diffMouseCPS","multClick","out","MouseCps","computedMouseCps","BuyUpgradesBonusIncome","MaxChainCookieReward","digit","maxPayout","totalFromChain","nextMoni","nextRequired","chain","LN10","CacheChain","cpsBuffMult","CacheHeavenlyChipsPS","chipsOwned","HowMuchPrestige","cookiesReset","ascendNowToGet","heavenlyChipsDiffAvg","CacheAllMissingUpgrades","classes","noFrame","crates","icon","iconFunction","getDynamicTooltip","crateMissing","CacheSeasonSpec","CacheStatsCookies","CacheGoldenAndWrathCookiesMults","goldenMult","wrathMult","eff","CacheWrinklers","InitCache","SettingsDefault","DetailedTime","UpgradeBarFixedPos","DragonAuraInfo","GrimoireBar","GCTimer","Favicon","HideSectionsButtons","TooltipAmor","TooltipAscendButton","MissingUpgrades","HeavenlyChipsTarget","ShowMissedGC","GeneralSound","GCNotification","GCFlash","ColourGCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","ColourFortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","ColourSeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","ColourGardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","ColourMagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","ColourWrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","ColourWrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","BulkBuyBlock","Header","Favourite","Calculation","Notation","Colours","BarsDisplay","Tooltip","Statistics","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingColours","SettingVolume","SettingInputNumber","SettingsData","insertBefore","UpBarColor","save","stringify","favouriteSettings","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","Sound_PlaySound","url","sndConfig","volConfig","sound","Audio","volume","play","CreateNotification","notifyConfig","title","message","visibilityState","badge","CMLoop","OnAscend","AscendTimer","mods","CachePantheonGods","sellTotal","Bank","marketGoods","goods","goodsVal","marketGood","stock","cookiesPsRawHighest","buildingsToSacrifice","highestBuilding","SellBuildingsForChoEgg","CacheSellAllForChoEgg","hasBuildAura","godMult","CacheCurrWrinklerCPS","cookiesToNext","HowManyCookiesReset","LoopCache","shimmers","spawnLead","cookie","fontFamily","onclick","pop","onmouseover","filter","webkitFilter","onmouseout","CreateGCTimer","transform","life","TickerEffect","nextStep","CheckMagicMeter","CurrentWrinklers","getWrinklersMax","CheckWrinklerCount","UpdateColours","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","Colors","mod","PopAllNormalWrinklers","hp","CreateTooltip","buildPrice","amortizeAmount","storedTotalCps","globalCpsMult","crateTooltip","lumpTooltip","spellTooltip","tileTooltip","toolTooltip","godTooltip","slotTooltip","area","ReplaceTooltipGrimoire","dynamic","wobble","ReplaceNativeGrimoireDraw","magicBarTextL","ReplaceNativeGrimoire","launch","ReplaceNativeGrimoireLaunch","jscolor_default","ToggleSetting_ConfigPrefix","ToggleConfigVolume","ToggleHeader","StatsHeader","span","StatsListing","listingName","StatsMissDisp","theMissDisp","frag","createDocumentFragment","missing","AddMenuStats","stats","goldCookTooltip","section","luckyColour","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColourFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColour","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColour","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColourFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColourFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColour","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColour","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColour","bakeberryFrag","chocorootColour","chocorootFrag","queenbeetColour","queenbeetFrag","duketaterColour","duketaterFrag","missingPlantDrops","GardenSection","possiblePresMax","neededCook","cookiesNextFrag","cookiesNextSmall","heavenlyChips","HCTarget","CookiesTillTarget","resetBonus","newHeavenlyChips","curCPS","ResetCPS","ResetBonus","resetFrag","resetSmall","currentPrestige","willHave","willGet","delta7","next7Reset","next7Total","frag7","delta777","next777Reset","next777Total","frag777","delta777777","next777777Reset","next777777Total","frag777777","PrestigeSection","popAllFrag","popAllA","popFattestFrag","popFattestA","specDisp","missingHalloweenCookies","missingChristmasCookies","missingValentineCookies","missingNormalEggs","eggDrops","missingRareEggs","rareEggDrops","centEgg","failRateHalloween","dropRateMult","obtainedCookiesChance","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","FavStar","ele","ToggleFavouriteSetting","FavouriteSettingPlaceholder","CreateFavouriteStar","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","content","promptWrapL","promptL","PlaySound","promptAnchorL","darkenL","focus","promptOn","UpdatePrompt","CookieMonsterPrompt","outerHTML","ClosePrompt","innerSpan","FixMouseY","timerBarHeight","mouseY","ReplaceNative","drawMod","from","update","updateMod","warnOffset","tta","tt","UpdateTooltipLocation","UpdateWrinklers","UpdateSpecial","ClickCookie","mouseDown","setOnCrate","ClickProduct","DescribeDragonAura","aura","bonusCPS","priceOfChange","CalculateChangeAura","timeToRecover","bonusCPSPercentage","minHeight","div2","AddAuraInfo","ToggleSpecialMenu","on","shouldHide","AddDragonLevelUpTooltip","index","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","backgroundColour","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateFlashScreen","CreateSectionHideButtons","getElementsByTagName","CreateFavicon","CreateSimpleTooltip","append","CreateWrinklerButtons","canLumps","child","coords","ReplaceTooltipPantheon","popups","Popup","Notify","Win","CM","proceed","confirm","registerHook","load","registerMod"],"mappings":";AAAS,MACC,IAAIA,EAAsB,CAE9BC,IACA,SAAUC,IAchB,SAAWC,EAAQC,GAElB,aAEuC,iBAAnBF,EAAOG,QAc3BD,EAAQD,GAZPD,EAAOG,QAAUF,EAAOG,SACvBF,EAASD,GACT,SAAUI,GACT,IAAKA,EAAID,SACR,MAAM,IAAIE,MAAM,wCAEjB,OAAOJ,EAAQG,IAZnB,CAoBqB,oBAAXE,OAAyBA,OAASC,MAAM,SAAUD,GAK5D,aAGA,IAwgDME,EAt7BAC,EAzXAC,EAvNFC,EAFAC,IAEAD,EAAM,CAGTE,aAAc,EAEdC,UAAY,GAEZC,WAAa,GAGbC,SAAW,gBACY,IAAXV,GAA0BA,EAAOH,UAC3CG,EAAOH,SAASc,iBAAiB,mBAAoBN,EAAIO,IAAIC,MAAM,IAKrEC,kBAAoB,SAAUC,EAAUC,GAEvC,KADAA,EAAWA,EAAWX,EAAIY,KAAKD,GAAYhB,EAAOH,UAEjD,MAAM,IAAIE,MAAM,qBAQjB,IALA,IAAImB,EAAOF,EAASG,iBAAiBJ,GAGjCK,EAAa,IAAIC,OAAO,WAAahB,EAAIO,IAAIU,YAAc,6BAA8B,KAEpFC,EAAI,EAAGA,EAAIL,EAAKM,OAAQD,GAAK,EAAG,CAUxC,IAAIE,EAAUC,EARd,KAAIR,EAAKK,GAAGjB,SAAWY,EAAKK,GAAGjB,mBAAmBD,EAAIO,YAIjCe,IAAjBT,EAAKK,GAAGK,MAAoD,SAA9BV,EAAKK,GAAGK,KAAKC,gBAA4BxB,EAAIyB,wBAOzB,QAApDL,EAAWpB,EAAI0B,YAAYb,EAAKK,GAAI,aACpCL,EAAKK,GAAGS,YAAcN,EAAIR,EAAKK,GAAGS,UAAUC,MAAMb,KAClD,CACD,IAAIc,EAAYhB,EAAKK,GAEjBY,EAAU,GACG,OAAbV,EACHU,EAAUV,EAEAC,IACVU,QAAQC,KAAK,sFAAwFhC,EAAIiC,SACrGZ,EAAE,KACLS,EAAUT,EAAE,KAId,IAAIa,EAAO,KACX,GAAIJ,EAAQK,OACX,IACCD,EAAOlC,EAAIoC,gBAAgBN,GAC1B,MAAOO,GACRN,QAAQC,KAAKK,EAAI,KAAOP,GAI1B,IACC,IAAI9B,EAAIO,IAAIsB,EAAWK,GACtB,MAAOG,GACRN,QAAQC,KAAKK,OAOjBD,gBAAkB,SAAUE,GAC3B,IAAIJ,EAAO,KAEX,IACCA,EAAOK,KAAKC,MAAMF,GAEjB,MAAOG,GACR,IAAKzC,EAAIO,IAAImC,UACZ,MAAM,IAAIhD,MAAM,4CAA8C+C,GAG9D,IACCP,EAAO,IAAKS,SAAU,eAAiBL,EAAM,kDAAtC,GACN,MAAOM,GACR,MAAM,IAAIlD,MAAM,uCAAyCkD,IAI5D,OAAOV,GAIRW,aAAe,WAEd,IADA,IAAIC,EAAO,GACF5B,EAAI,EAAGA,EAAIlB,EAAIG,UAAUgB,OAAQD,GAAK,EAE1ClB,EAAIG,UAAUe,IAAMlB,EAAIG,UAAUe,GAAG6B,eACxCD,EAAKE,KAAKhD,EAAIG,UAAUe,IAG1B,OAAO4B,GAIRG,SAAW,SAAUC,GACpB,IAAIC,EAAKxD,EAAOH,SAAS4D,cAAcF,GAEvC,OADAlD,EAAIqD,QAAQF,EAAI,OAAO,GAChBA,GAIRvC,KAAO,SAAU0C,GAChB,IAAKA,EACJ,OAAO,KAGR,GAA8B,iBAAnBA,EAA6B,CAEvC,IAAIC,EAAMD,EACNH,EAAK,KACT,IACCA,EAAKxD,EAAOH,SAASgE,cAAcD,GAClC,MAAOlB,GAER,OADAN,QAAQC,KAAKK,GACN,KAKR,OAHKc,GACJpB,QAAQC,KAAK,sCAAuCuB,GAE9CJ,EAGR,OAAInD,EAAIyD,OAAOH,GAEPA,GAGRvB,QAAQC,KAAK,qCAAsCsB,EAAgBA,GAC5D,OAKRG,OAAS,SAAUC,GAClB,MAAoB,iBAATC,KACHD,aAAeC,KAEhBD,GAAsB,iBAARA,GAA4C,iBAAjBA,EAAIE,UAAiD,iBAAjBF,EAAIG,UAIzFA,SAAW,SAAUjD,GACpB,SAAIA,IAAQA,EAAKiD,WACTjD,EAAKiD,SAASrC,eAMvBsC,eAAiB,SAAUlD,GAC1B,KAAOA,EAAKmD,YACXnD,EAAKoD,YAAYpD,EAAKmD,aAKxBE,YAAc,SAAUd,GACvB,OAAOA,GAA2B,UAArBnD,EAAI6D,SAASV,IAA6C,SAA1BA,EAAG5B,KAAKC,eAItD0C,SAAW,SAAUf,GACpB,IAAKA,EACJ,OAAO,EAER,IAAIgB,EAAInE,EAAI6D,SAASV,GACrB,MACQ,WAANgB,GACM,UAANA,GAAiB,CAAC,SAAU,SAAU,SAASC,QAAQjB,EAAG5B,KAAKC,gBAAkB,GAKpF6C,cAAgB,SAAUlB,GACzB,OAAQnD,EAAI6D,SAASV,IACpB,IAAK,QAAS,OAASA,EAAGmB,OAA6B,KAApBnB,EAAGmB,MAAMnC,OAC5C,IAAK,SAAU,MAAkC,KAA1BgB,EAAGoB,YAAYpC,OAEvC,OAAO,MAKRqC,wBAA0B,WACzB,IAAIC,GAAY,EAEhB,IACC,IAAIvC,EAAOwC,OAAOC,eAAe,GAAI,UAAW,CAC/CC,IAAK,WAAcH,GAAY,KAEhC9E,EAAOW,iBAAiB,cAAe,KAAM4B,GAC7CvC,EAAOkF,oBAAoB,cAAe,KAAM3C,GAC/C,MAAOG,IAET,OAAOoC,EAXkB,GAe1BhD,sBACK1B,EAAMJ,EAAOH,SAAS4D,cAAc,YACpCrD,EAAI+E,eACP/E,EAAI+E,aAAa,OAAQ,SACK,SAA1B/E,EAAIwB,KAAKC,iBAQfuD,SAAW,gBAOX1B,QAAU,WACT,IAAI2B,EAAMC,UAAU,GAEpB,GAAyB,IAArBA,UAAU9D,OAAc,CAE3B,IAAI+D,EAAOF,EAAIG,eAAenF,EAAI+E,UAAYC,EAAIhF,EAAI+E,UAAaC,EAAIhF,EAAI+E,UAAY,GAEnFT,EAAQW,UAAU,GAGtB,OADAC,EAHIE,EAAOH,UAAU,IAGRX,GACN,EAED,GAAyB,IAArBW,UAAU9D,QAAwC,iBAAjB8D,UAAU,GAAiB,CAElEC,EAAOF,EAAIG,eAAenF,EAAI+E,UAAYC,EAAIhF,EAAI+E,UAAaC,EAAIhF,EAAI+E,UAAY,GAAvF,IACIM,EAAMJ,UAAU,GAEpB,IAAK,IAAIG,KAAQC,EACZA,EAAIF,eAAeC,KACtBF,EAAKE,GAAQC,EAAID,IAGnB,OAAO,EAGR,MAAM,IAAI1F,MAAM,sBAOjB4F,WAAa,WACZ,IAAIN,EAAMC,UAAU,GACpB,IAAKD,EAAIG,eAAenF,EAAI+E,UAC3B,OAAO,EAER,IAAK,IAAI7D,EAAI,EAAGA,EAAI+D,UAAU9D,OAAQD,GAAK,EAAG,CAC7C,IAAIkE,EAAOH,UAAU/D,UACd8D,EAAIhF,EAAI+E,UAAUK,GAE1B,OAAO,GAIRG,QAAU,SAAUP,EAAKI,EAAMI,GAC9B,IAAKR,EAAIG,eAAenF,EAAI+E,UAAW,CAEtC,QAAmBzD,IAAfkE,EAGH,OAFAR,EAAIhF,EAAI+E,UAAY,GAKtB,IAAIG,EAAOF,EAAIhF,EAAI+E,UAKnB,OAHKG,EAAKC,eAAeC,SAAwB9D,IAAfkE,IACjCN,EAAKE,GAAQI,GAEPN,EAAKE,IAIb1D,YAAc,SAAUyB,EAAIsC,GAC3B,IAAIC,EAAW,QAAUD,EAEzB,OADgBtC,EAAGwC,aAAaD,IAKjCE,YAAc,SAAUzC,EAAIsC,EAAMnB,GACjC,IAAIoB,EAAW,QAAUD,EACzBtC,EAAG2B,aAAaY,EAAUpB,IAI3BuB,qBAAuB,GAGvBC,iBAAmB,SAAUC,EAAW5C,EAAI6C,EAAMC,GAC5CjG,EAAI6F,qBAAqBV,eAAeY,KAC5C/F,EAAI6F,qBAAqBE,GAAa,IAEvC/F,EAAI6F,qBAAqBE,GAAW/C,KAAK,CAACG,EAAI6C,EAAMC,IACpD9C,EAAG7C,iBAAiB0F,EAAMC,GAAM,IAIjCC,kBAAoB,SAAUH,GAC7B,GAAI/F,EAAI6F,qBAAqBV,eAAeY,GAAY,CACvD,IAAK,IAAI7E,EAAI,EAAGA,EAAIlB,EAAI6F,qBAAqBE,GAAW5E,OAAQD,GAAK,EAAG,CACvE,IAAIiF,EAAMnG,EAAI6F,qBAAqBE,GAAW7E,GAC9CiF,EAAI,GAAGtB,oBAAoBsB,EAAI,GAAIA,EAAI,IAAI,UAErCnG,EAAI6F,qBAAqBE,KAKlCK,eAAiB,SAAU/D,GACtBA,EAAE+D,gBAAkB/D,EAAE+D,iBAC1B/D,EAAEgE,aAAc,GAIjBC,cAAgB,SAAUC,GAErBA,EAAOC,aACVxG,EAAIyG,gBAAkBF,EACtBvG,EAAIyG,gBAAgBD,eAKtBE,cAAgB,WAEX1G,EAAIyG,kBACPzG,EAAIyG,gBAAgBE,iBACpB3G,EAAIyG,gBAAkB,OAKxBG,aAAe,SAAUzD,EAAI0D,EAAWC,EAASC,GAChD,GAAK5D,EAAL,CAIA,IAAI6D,EAAK,KAaT,MAXqB,mBAAVC,MACVD,EAAK,IAAIC,MAAMJ,EAAW,CACzBC,QAASA,EACTC,WAAYA,KAIbC,EAAKrH,EAAOH,SAAS0H,YAAY,UAC9BC,UAAUN,EAAWC,EAASC,KAG7BC,IAKLhH,EAAIqD,QAAQ2D,EAAI,YAAY,GAE5B7D,EAAGiE,cAAcJ,IACV,KAIRK,kBAAoB,SAAUlE,EAAI0D,EAAWC,EAASC,GAChD5D,GAGDnD,EAAIiE,YAAYd,IACnBnD,EAAI4G,aAAazD,EAAI0D,EAAWC,EAASC,IAK3CO,SAAW,SAAUN,GACpB,IAAIO,EAAO,CACVC,EAAG,MACHC,GAAI,QACJC,GAAI,UAEL,MAAuB,iBAAZV,EAAGW,KACNX,EAAGW,UACerG,IAAf0F,EAAGY,SAAyBL,EAAKpC,eAAe6B,EAAGY,SACtDL,EAAKP,EAAGY,SAET,MAIRC,QAAU,SAAUvF,GACnB,OAAKA,EAGEA,EAAIwF,QAAQ,aAAc,IAAIC,MAAM,OAFnC,IAOTC,SAAW,SAAUjI,EAAK4B,GACzB,QAAKA,SAGiBL,IAAlBvB,EAAIkI,UACAlI,EAAIkI,UAAUC,SAASvG,IAGvB,IAAM,IAAM5B,EAAI4B,UAAUmG,QAAQ,OAAQ,KAAO,KAAK1D,QAAQ,IAAMzC,EAAY,OAKzFwG,SAAW,SAAUpI,EAAK4B,GACzB,IAAIyG,EAAapI,EAAI6H,QAAQlG,GAE7B,QAAsBL,IAAlBvB,EAAIkI,UAOR,IAAS/G,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EACtClB,EAAIgI,SAASjI,EAAKqI,EAAWlH,MACjCnB,EAAI4B,YAAc5B,EAAI4B,UAAY,IAAM,IAAMyG,EAAWlH,SAR1D,IAAK,IAAIA,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EAC3CnB,EAAIkI,UAAUI,IAAID,EAAWlH,KAchCoH,YAAc,SAAUvI,EAAK4B,GAC5B,IAAIyG,EAAapI,EAAI6H,QAAQlG,GAE7B,QAAsBL,IAAlBvB,EAAIkI,UAOR,IAAS/G,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EAAG,CAC9C,IAAIqH,EAAO,IAAIvH,OACd,QAAUoH,EAAWlH,GAArB,YACSkH,EAAWlH,GADpB,aAESkH,EAAWlH,GAAK,SACzB,KAEDnB,EAAI4B,UAAY5B,EAAI4B,UAAUmG,QAAQS,EAAM,WAb5C,IAAK,IAAIrH,EAAI,EAAGA,EAAIkH,EAAWjH,OAAQD,GAAK,EAC3CnB,EAAIkI,UAAUO,OAAOJ,EAAWlH,KAiBnCuH,aAAe,SAAU1I,GAKxB,OAJgBJ,EAAO+I,iBAAmB/I,EAAO+I,iBAAiB3I,GAAOA,EAAI4I,eAKrE,IAUTC,SAAW,SAAU7I,EAAK8I,EAAQC,EAAWC,GAE5C,IAAIC,EAAWF,EAAY,YAAc,GACrCG,EAAY,KAEhB,IAAK,IAAI7D,KAAQyD,EAChB,GAAIA,EAAO1D,eAAeC,GAAO,CAChC,IAAI8D,EAAS,KAEQ,OAAjBL,EAAOzD,IAGL6D,IAEJA,EAAYjJ,EAAIuF,QAAQxF,EAAK,cAE1BkJ,GAAaA,EAAU9D,eAAeC,KAEzC8D,EAASD,EAAU7D,MAMhB2D,IACEE,IAEJA,EAAYjJ,EAAIuF,QAAQxF,EAAK,YAAa,KAEtCkJ,EAAU9D,eAAeC,KAE7B6D,EAAU7D,GAAQrF,EAAIoJ,MAAM/D,KAG9B8D,EAASL,EAAOzD,IAGF,OAAX8D,GACHnJ,EAAIoJ,MAAMC,YAAYhE,EAAM8D,EAAQF,KAOxCK,SAAW,SAAUC,EAAGC,EAAGC,GAC1B,MAAO,MACL,IAAMC,KAAKC,MAAMJ,GAAGK,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMH,GAAGI,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMF,GAAGG,SAAS,KAAKC,QAAQ,IAC1CC,eAIHC,UAAY,SAAUR,EAAGC,EAAGC,EAAGO,GAC9B,MAAO,MACL,IAAMN,KAAKC,MAAMJ,GAAGK,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMH,GAAGI,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAMF,GAAGG,SAAS,KAAKC,QAAQ,IAC1C,IAAMH,KAAKC,MAAU,IAAJK,GAASJ,SAAS,KAAKC,QAAQ,IAChDC,eAIHG,SAAW,SAAUV,EAAGC,EAAGC,GAC1B,MAAO,OACNC,KAAKC,MAAMJ,GAAK,IAChBG,KAAKC,MAAMH,GAAK,IAChBE,KAAKC,MAAMF,GACZ,KAIDS,UAAY,SAAUX,EAAGC,EAAGC,EAAGO,GAC9B,MAAO,QACNN,KAAKC,MAAMJ,GAAK,IAChBG,KAAKC,MAAMH,GAAK,IAChBE,KAAKC,MAAMF,GAAK,IACfC,KAAKC,MAA4C,KAArCK,QAA4B,EAAIA,IAAY,IAC1D,KAIDG,gBAmBKpK,EAjBJ,WAKC,IAJA,IAAIqK,EAAU,kBACVC,EAAW,CAAC,GAAI,WAAY,QAAS,MAAO,QAC5CC,EAAS1K,EAAOH,SAAS4D,cAAc,OAElClC,EAAI,EAAGA,EAAIkJ,EAASjJ,OAAQD,GAAK,EAAG,CAC5C,IAAIoJ,EAAUF,EAASlJ,GAAKiJ,EACxBI,EAASD,EAAU,2CAGvB,GADAD,EAAOlB,MAAMqB,WAAaD,EACtBF,EAAOlB,MAAMqB,WAChB,OAAOF,EAGT,OAAOH,EAGOM,GAER,WACN,OAAO3K,EAAW,IAAM4K,MAAMC,UAAUC,KAAKC,KAAK5F,UAAW,MAAQ,MAMvE6F,gBAAkB,SAAU/K,EAAKuE,GAChCtE,EAAI4I,SAAS7I,EAAK,CAACgL,gBAAkBzG,GAAS,OAI/C0G,aAAe,SAAUjL,EAAKuE,GAC7BtE,EAAI4I,SAAS7I,EAAK,CAACkL,aAAc3G,GAAS,UAI3C4G,cAAgB,SAAU7I,EAAG8I,GAC5B,IAAIC,EAAE,EAAGC,EAAE,EACPC,EAAOjJ,EAAEkJ,wBAGb,GAFAH,EAAIE,EAAKE,KACTH,EAAIC,EAAKG,KACJN,EAAoB,CACxB,IAAIO,EAAU1L,EAAI2L,aAClBP,GAAKM,EAAQ,GACbL,GAAKK,EAAQ,GAEd,MAAO,CAACN,EAAGC,IAIZO,eAAiB,SAAUvJ,GAC1B,MAAO,CAACA,EAAEwJ,YAAaxJ,EAAEyJ,eAK1BC,iBAAmB,SAAU1J,GAC5B,IAAI+I,EAAI,EAAGC,EAAI,EASf,YARgC,IAArBhJ,EAAE2J,gBAAkC3J,EAAE2J,eAAe7K,QAE/DiK,EAAI/I,EAAE2J,eAAe,GAAGC,QACxBZ,EAAIhJ,EAAE2J,eAAe,GAAGE,SACO,iBAAd7J,EAAE4J,UACnBb,EAAI/I,EAAE4J,QACNZ,EAAIhJ,EAAE6J,SAEA,CAAEd,EAAGA,EAAGC,EAAGA,IAKnBc,iBAAmB,SAAU9J,GAC5B,IACI+J,GADS/J,EAAEkE,QAAUlE,EAAEgK,YACHd,wBAIpBU,EAAU,EAAGC,EAAU,EAY3B,YAXgC,IAArB7J,EAAE2J,gBAAkC3J,EAAE2J,eAAe7K,QAE/D8K,EAAU5J,EAAE2J,eAAe,GAAGC,QAC9BC,EAAU7J,EAAE2J,eAAe,GAAGE,SACC,iBAAd7J,EAAE4J,UACnBA,EAAU5J,EAAE4J,QACZC,EAAU7J,EAAE6J,SAKN,CAAEd,EAFLa,EAAUG,EAAWZ,KAEVH,EADXa,EAAUE,EAAWX,MAK1BE,WAAa,WACZ,IAAIW,EAAM3M,EAAOH,SAAS+M,gBAC1B,MAAO,EACL5M,EAAO6M,aAAeF,EAAIG,aAAeH,EAAII,YAAc,IAC3D/M,EAAOgN,aAAeL,EAAIM,YAAcN,EAAIO,WAAa,KAK5DC,YAAc,WACb,IAAIR,EAAM3M,EAAOH,SAAS+M,gBAC1B,MAAO,CACL5M,EAAOoN,YAAcT,EAAIU,YACzBrN,EAAOsN,aAAeX,EAAIY,eAW7BC,QAAU,SAAU7D,EAAGC,EAAGC,GACzBF,GAAK,IACLC,GAAK,IACLC,GAAK,IACL,IAAIrF,EAAIsF,KAAK2D,IAAI3D,KAAK2D,IAAI9D,EAAEC,GAAGC,GAC3B6D,EAAI5D,KAAK6D,IAAI7D,KAAK6D,IAAIhE,EAAEC,GAAGC,GAC3BnI,EAAIgM,EAAIlJ,EACZ,GAAU,IAAN9C,EAAW,MAAO,CAAE,KAAM,EAAG,IAAMgM,GACvC,IAAIE,EAAIjE,IAAInF,EAAI,GAAGqF,EAAED,GAAGlI,EAAKkI,IAAIpF,EAAI,GAAGmF,EAAEE,GAAGnI,EAAI,GAAGkI,EAAED,GAAGjI,EACzD,MAAO,CACN,IAAU,IAAJkM,EAAM,EAAEA,GACPlM,EAAEgM,EAAT,IACA,IAAMA,IAWRG,QAAU,SAAUD,EAAGE,EAAGJ,GACzB,IAAIK,EAAWL,EAAI,IAAX,IAER,GAAU,OAANE,EACH,MAAO,CAAEG,EAAGA,EAAGA,GAGhBH,GAAK,GACLE,GAAK,IAEL,IAAIvM,EAAIuI,KAAKkE,MAAMJ,GAEflM,EAAIqM,GAAK,EAAID,GACbtJ,EAAIuJ,GAAK,EAAID,GAFTvM,EAAE,EAAIqM,EAAErM,EAAI,GAAGqM,EAAErM,KAGzB,OAAQA,GACP,KAAK,EACL,KAAK,EAAG,MAAO,CAACwM,EAAEvJ,EAAE9C,GACpB,KAAK,EAAG,MAAO,CAAC8C,EAAEuJ,EAAErM,GACpB,KAAK,EAAG,MAAO,CAACA,EAAEqM,EAAEvJ,GACpB,KAAK,EAAG,MAAO,CAAC9C,EAAE8C,EAAEuJ,GACpB,KAAK,EAAG,MAAO,CAACvJ,EAAE9C,EAAEqM,GACpB,KAAK,EAAG,MAAO,CAACA,EAAErM,EAAE8C,KAKtByJ,iBAAmB,SAAUtL,GAC5B,IAKIjB,EALAwM,EAAM,CACTC,KAAM,KACNC,OAAQ,MAKT,GAAI1M,EAAIiB,EAAIV,MAAM,4BAA6B,CAG9C,GAAoB,IAAhBP,EAAE,GAAGF,OAER0M,EAAIE,OAAS,OACbF,EAAIC,KAAO,CACVE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAAM,UAG3B,GAAoB,IAAhBvI,EAAE,GAAGF,OAEf0M,EAAIE,OAAS,MACbF,EAAIC,KAAO,CACVE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1BoE,SAAS3M,EAAE,GAAGuI,OAAO,EAAE,GAAG,IAC1B,UAGK,IAAoB,IAAhBvI,EAAE,GAAGF,OAWf,OAAO,EATP0M,EAAIE,OAAS,MACbF,EAAIC,KAAO,CACVE,SAAS3M,EAAE,GAAG4M,OAAO,GAAK5M,EAAE,GAAG4M,OAAO,GAAG,IACzCD,SAAS3M,EAAE,GAAG4M,OAAO,GAAK5M,EAAE,GAAG4M,OAAO,GAAG,IACzCD,SAAS3M,EAAE,GAAG4M,OAAO,GAAK5M,EAAE,GAAG4M,OAAO,GAAG,IACzC,MAOF,OAAOJ,EAGR,GAAIxM,EAAIiB,EAAIV,MAAM,6BAA8B,CAG/C,IAEIsM,EAAIC,EAAIC,EAAIC,EAFZC,EAAMjN,EAAE,GAAG0G,MAAM,KACjBwG,EAAK,kCAET,GACCD,EAAInN,QAAU,IACb+M,EAAKI,EAAI,GAAG1M,MAAM2M,MAClBJ,EAAKG,EAAI,GAAG1M,MAAM2M,MAClBH,EAAKE,EAAI,GAAG1M,MAAM2M,IAiBnB,OAfAV,EAAIE,OAAS,MACbF,EAAIC,KAAO,CACVU,WAAWN,EAAG,KAAO,EACrBM,WAAWL,EAAG,KAAO,EACrBK,WAAWJ,EAAG,KAAO,EACrB,MAIAE,EAAInN,QAAU,IACbkN,EAAKC,EAAI,GAAG1M,MAAM2M,MAEnBV,EAAIE,OAAS,OACbF,EAAIC,KAAK,GAAKU,WAAWH,EAAG,KAAO,GAE7BR,EAIT,OAAO,GAIRY,kBAAoB,SAAUC,GAC7B,IAAIC,EAAO,GAEU,iBAAVD,EAEVA,EAAM5G,QAAQ,iDAAiD,SAAUpE,GACxEiL,EAAK3L,KAAKU,MAEDgH,MAAMkE,QAAQF,KACxBC,EAAOD,GAOR,IAFA,IAAIG,EAAS,GAEJ3N,EAAI,EAAGA,EAAIyN,EAAKxN,OAAQD,IAAK,CACrC,IAAI4N,EAAQ9O,EAAI4N,iBAAiBe,EAAKzN,IAClC4N,GACHD,EAAO7L,KAAK8L,GAId,OAAOD,GAIRE,wBAA0B,SAAUF,GACnC,IAAK,IAAI3N,EAAI,EAAGA,EAAI2N,EAAO1N,OAAQD,IAAK,CACvC,IAAI6I,EAAI8E,EAAO3N,GAAG4M,KAAK,GACvB,GAAU,OAAN/D,GAAcA,EAAI,EACrB,OAAO,EAGT,OAAO,GAIRiF,cAAgB,SAAUjB,GACzB,OAAQA,EAAOvM,eACf,IAAK,OACL,IAAK,OACJ,OAAO,EAER,OAAO,GAQRyN,sBAAwB,SAAUC,GACjC,IAAIC,EAAMxP,EAAOyP,kBAAoB,EACrCF,EAAOG,OAASF,EAChBD,EAAOI,QAAUH,EACPD,EAAOK,WAAW,MACxBC,MAAML,EAAKA,IAIhBM,sBAAwB,SAAUX,EAAOY,EAAcC,EAAWC,GAEjE,IAAIC,EAAOpG,KAAKC,MAAM1J,EAAIO,IAAIuP,iBAAiB3O,QAC3C4O,EAAS/P,EAAIO,IAAIyP,eACjBC,EAAWjQ,EAAIO,IAAI2P,iBACnBC,EAAWnQ,EAAIO,IAAI6P,iBAEnBC,EAASV,GAAiC,EAATI,EACjCO,EAAmB,EAATP,EAEVb,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAE5BL,EAAOG,MAAQgB,EACfnB,EAAOI,OAASgB,EACZV,GACH5P,EAAIiP,sBAAsBC,GAI3BqB,EAAIC,UAAYP,EAChBM,EAAIE,SAAS,EAAG,EAAGJ,EAAQC,GAG3BC,EAAIC,UAAYL,EAChB,IAAK,IAAI/E,EAAI,EAAGA,EAAIiF,EAAQjF,GAAc,EAAT2E,EAChCQ,EAAIE,SAASrF,EAAG,EAAG2E,EAAQA,GAC3BQ,EAAIE,SAASrF,EAAI2E,EAAQA,EAAQA,EAAQA,GAGtCjB,IAEHyB,EAAIC,UAAY1B,EAChByB,EAAIE,SAAS,EAAG,EAAGJ,EAAQC,IAG5B,IAAII,EAAQ,KACZ,OAAQhB,GACP,IAAK,OACJgB,EAAQ,EACRH,EAAII,UAAU,EAAG,EAAGd,EAAK,EAAGS,GAC5B,MACD,IAAK,QACJI,EAAQL,EAASR,EACjBU,EAAII,UAAUN,EAAUR,EAAK,EAAI,EAAGA,EAAK,EAAGS,GAG9C,GAAc,OAAVI,EAAgB,CACnBH,EAAIK,UAAY,EAChB,IAAK,IAAI1P,EAAI,EAAGA,EAAIlB,EAAIO,IAAIuP,iBAAiB3O,OAAQD,GAAK,EACzDqP,EAAIM,YACJN,EAAIO,YAAc9Q,EAAIO,IAAIuP,iBAAiB5O,GAC3CqP,EAAIQ,OAAO,GAAML,EAAQxP,EAAG,GAC5BqP,EAAIS,OAAO,GAAMN,EAAQxP,EAAGoP,GAC5BC,EAAIU,SAIN,MAAO,CACN/B,OAAQA,EACRG,MAAOgB,EACPf,OAAQgB,IAMVY,wBAA0B,SAAUpC,EAAOqC,EAAU9B,GACpD,IAAI+B,EAkBJ,OAfCA,EADGD,GAAY9B,EACN,CACR,MAAQ,CAAC7D,KAAO,QAAS6F,MAAQ,QAAQF,GACzCrC,EAAQ,MACRA,EAAQ,IAAMO,EAAQ,KACtB,kBAAoBA,EAAQ,GAAK,KACjC,sBAGQ,CACR,WACAP,EAAQ,MACRA,EAAQ,SAIH9O,EAAIkK,eAAeoH,MAAM1R,KAAMwR,IAIvCG,eAAiB,WAEhB,GAAKvR,EAAIwR,QAAWxR,EAAIwR,OAAOC,MAA/B,CAIA,IAEIC,EAAIC,EAFJC,EAAU5R,EAAIwR,OAAOC,MAIrBG,EAAQC,OAGXH,EAAK1R,EAAIkL,cAAc0G,EAAQ7O,eAAe,GAC9C4O,EAAK,CAAC,EAAG,KAETD,EAAK1R,EAAIkL,cAAc0G,EAAQ7O,eAC/B4O,EAAK3R,EAAI2L,cAGV,IAII5B,EAAGP,EAAGsI,EAJNC,EAAK/R,EAAI4L,eAAegG,EAAQ7O,eAChCiP,EAAKhS,EAAI8M,cACTmF,EAAKjS,EAAIkS,cAAcN,GACvBO,EAAK,CAACF,EAAGG,QAASH,EAAGI,SAEzB,OAAQT,EAAQT,SAAS3P,eACxB,IAAK,OAAQuI,EAAE,EAAGP,EAAE,EAAGsI,GAAG,EAAG,MAC7B,IAAK,QAAQ/H,EAAE,EAAGP,EAAE,EAAGsI,EAAE,EAAG,MAC5B,IAAK,MAAQ/H,EAAE,EAAGP,EAAE,EAAGsI,GAAG,EAAG,MAC7B,QAAa/H,EAAE,EAAGP,EAAE,EAAGsI,EAAE,EAE1B,IAAIQ,GAAKP,EAAGvI,GAAG2I,EAAG3I,IAAI,EAGtB,GAAKoI,EAAQW,cAMRC,EAAK,EACPb,EAAG5H,GAAG2H,EAAG3H,GAAGoI,EAAGpI,GAAKiI,EAAGjI,KACrB4H,EAAG5H,GAAG2H,EAAG3H,GAAGgI,EAAGhI,GAAG,EAAIiI,EAAGjI,GAAG,GAAK2H,EAAG3H,GAAGgI,EAAGhI,GAAGoI,EAAGpI,IAAM,EAAI2H,EAAG3H,GAAGgI,EAAGhI,GAAGoI,EAAGpI,GAC3E2H,EAAG3H,IACH4H,EAAGnI,GAAGkI,EAAGlI,GAAGuI,EAAGvI,GAAG2I,EAAG3I,GAAG8I,EAAEA,EAAER,EAAIE,EAAGxI,IACjCmI,EAAGnI,GAAGkI,EAAGlI,GAAGuI,EAAGvI,GAAG,EAAIwI,EAAGxI,GAAG,GAAKkI,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,GAAK,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,EAC/FJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,GAAK,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,EAAIJ,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,QAXhE,IAAIU,EAAK,CACRd,EAAG3H,GACH2H,EAAGlI,GAAGuI,EAAGvI,GAAG8I,EAAEA,EAAER,GAalB,IAAI1G,EAAIoH,EAAGzI,GACPsB,EAAImH,EAAGhJ,GACPiJ,EAAgBb,EAAQC,MAAQ,QAAU,WAC1Ca,GACFF,EAAG,GAAKL,EAAG,GAAKT,EAAG,IAAMc,EAAG,GAAKd,EAAG,GAAKK,EAAG,KAC5CS,EAAG,GAAKL,EAAG,GAAKT,EAAG,GAAKK,EAAG,GAE7B/R,EAAI2S,cAAcf,EAASxG,EAAGC,EAAGoH,EAAeC,KAIjDC,cAAgB,SAAUf,EAASxG,EAAGC,EAAGoH,EAAeC,GACvD,IAAIE,EAAUF,EAAiB,EAAId,EAAQiB,WAE3C7S,EAAIwR,OAAOsB,KAAK3J,MAAMgI,SAAWsB,EACjCzS,EAAIwR,OAAOsB,KAAK3J,MAAMqC,KAAOJ,EAAI,KACjCpL,EAAIwR,OAAOsB,KAAK3J,MAAMsC,IAAMJ,EAAI,KAEhCrL,EAAIgL,aACHhL,EAAIwR,OAAOuB,KACXnB,EAAQoB,OACP,IAAIhT,EAAIH,UAAU,EAAG+S,EAAShB,EAAQiB,WAAY,EAAGjB,EAAQqB,aAC7D,OAIHf,cAAgB,SAAUN,GACzB,IAAIsB,EAAI,EAAItB,EAAQuB,mBAAqBvB,EAAQvC,MAC7C9B,EAAI,EAAIqE,EAAQuB,mBAAqBvB,EAAQtC,OAE7C8D,EAAc,EAAIxB,EAAQuB,mBAAqB,EAAInT,EAAIqT,kBAAkBzB,GAAWA,EAAQ0B,WAE5FtT,EAAIuT,iBAAiB3B,KACxBsB,GAAKE,GAEFxB,EAAQ4B,oBACXN,GAAKE,GAGN,IAAIK,EAAMzT,EAAI0T,eAAe9B,EAASsB,GAElCO,EAAInE,SACP/B,GAAKkG,EAAInE,OAASsC,EAAQ+B,SAEvB/B,EAAQgC,cACXrG,GAAK,EAAIqE,EAAQuB,mBAAqBvB,EAAQ+B,QAAU/B,EAAQiC,cAGjE,IAAIC,EAAKZ,EAAK,EAAItB,EAAQ+B,QACtBI,EAAKxG,EAAK,EAAIqE,EAAQ+B,QAE1B,MAAO,CACNK,SAAUd,EACVe,SAAU1G,EACV2G,QAASJ,EACTK,QAASJ,EACT3B,QAAS0B,EAAM,EAAIlC,EAAQwC,YAC3B/B,QAAS0B,EAAM,EAAInC,EAAQwC,YAC3BC,QAASZ,IAKXC,eAAiB,SAAU9B,EAASvC,GACnC,IAAIiF,EAAO,EAAGC,EAAO,EAAGC,EAAQ,EAAGC,EAAQ,EAAGnF,EAAS,EACnDoF,EAAc9C,EAAQ+C,SAAW/C,EAAQ+C,SAASxT,OAAS,EAiB/D,OAfIuT,IAEHH,GADAD,EAAO1C,EAAQgD,aACD,EAAInL,KAAKoL,KAAKH,EAAcJ,GAAQ,EAGlDE,EAAQ/K,KAAK6D,IAAI,EAAG7D,KAAKkE,OAAO0B,GAAUiF,EAAO,GAAK1C,EAAQkD,gBAAmBR,IACjFG,EAAQ7C,EAAQmD,cAAgBtL,KAAK2D,IAAIwE,EAAQmD,cAAeP,GAASA,GAGtED,IACHjF,EACCiF,EAAOE,GACNF,EAAO,GAAK3C,EAAQkD,gBAGhB,CACNR,KAAMA,EACNC,KAAMA,EACNC,MAAOA,EACPC,MAAOA,EACPpF,MAAOA,EACPC,OAAQA,IAKV+D,kBAAoB,SAAUzB,GAC7B,OAAOnI,KAAK6D,IACXsE,EAAQ+B,QAAU,EACjB,EAAI/B,EAAQoD,mBAAqBpD,EAAQqD,iBAAoBrD,EAAQuB,qBAKxE+B,eAAiB,SAAUtD,GAC1B,OAAQA,EAAQuD,KAAKlH,OAAO,GAAGzM,eAC9B,IAAK,IAAK,MAAO,IAElB,MAAO,KAIR+R,iBAAmB,SAAU3B,GAC5B,GAAIA,EAAQuD,KAAKhU,OAAS,EACzB,OAAQyQ,EAAQuD,KAAKlH,OAAO,GAAGzM,eAC9B,IAAK,IAAK,MAAO,IACjB,IAAK,IAAK,MAAO,IAGnB,OAAO,MAKR4T,gBAAkB,SAAUxD,EAASxM,GACpC,GAAKwM,EAAQxM,GAAb,CAGA,IAAIiQ,EAAW,KAEf,GAA6B,iBAAlBzD,EAAQxM,GAElB,IACCiQ,EAAW,IAAI1S,SAAUiP,EAAQxM,IAChC,MAAO/C,GACRN,QAAQuT,MAAMjT,QAIfgT,EAAWzD,EAAQxM,GAGhBiQ,GACHA,EAASxK,KAAK+G,KAOhB2D,cAAgB,SAAUC,GAEzB,IADA,IAAI1S,EAAO9C,EAAI6C,eACN3B,EAAI,EAAGA,EAAI4B,EAAK3B,OAAQD,GAAK,EACrC4B,EAAK5B,GAAGuU,QAAQD,IAKlBE,kBAAoB,CACnBC,MAAO,YACPC,MAAO,aAERC,iBAAmB,CAClBF,MAAO,UACPC,MAAO,YAIRE,eAAiB,KACjBrP,gBAAkB,KAGlBsP,gBAAkB,SAAU1T,IACyB,IAAhD,CAAC,MAAO,UAAU+B,QAAQpE,EAAIsH,SAASjF,KACtCrC,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMuE,WAMpBC,eAAiB,SAAU5T,GAC1BrC,EAAIuR,kBAIL2E,eAAiB,SAAU7T,GAC1BrC,EAAIuR,kBAIL4E,eAAiB,SAAU9T,GAEtBrC,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMuE,WAKnBI,oBAAsB,SAAU/T,GAC/B,IAAIkE,EAASlE,EAAEkE,QAAUlE,EAAEgK,WAEvB9F,EAAOtG,SAAWsG,EAAOtG,mBAAmBD,EAAIO,IAC/CgG,EAAOtG,QAAQoW,cAAgB9P,EAAO+P,UACzC/P,EAAOtG,QAAQsW,OAENvW,EAAIuF,QAAQgB,EAAQ,OAChBvG,EAAIuF,QAAQgB,EAAQ,YAGjCvG,EAAIwW,sBAAsBnU,EAAGkE,EAAQvG,EAAIuF,QAAQgB,EAAQ,WAAY,SAIlEvG,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMuE,WAMpBS,mBAAqB,SAAUpU,GAC9B,IAAIkE,EAASlE,EAAEkE,QAAUlE,EAAEgK,WAEvBrM,EAAIuF,QAAQgB,EAAQ,YACvBvG,EAAIwW,sBAAsBnU,EAAGkE,EAAQvG,EAAIuF,QAAQgB,EAAQ,WAAY,UAKvEiQ,sBAAwB,SAAUnU,EAAGkE,EAAQmQ,EAAaC,GACzD,IAAI/E,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAElCvG,EAAIoG,eAAe/D,GACnBrC,EAAIsG,cAAcC,GAElB,IAAIqQ,EAAqB,SAAUtK,EAAKuK,GACvC7W,EAAI8F,iBAAiB,OAAQwG,EAAKtM,EAAI0V,kBAAkBiB,GACvD3W,EAAI8W,sBAAsBzU,EAAGkE,EAAQmQ,EAAaC,EAAaE,IAChE7W,EAAI8F,iBAAiB,OAAQwG,EAAKtM,EAAI6V,iBAAiBc,GACtD3W,EAAI+W,qBAAqB1U,EAAGkE,EAAQmQ,EAAaC,KAKnD,GAFAC,EAAmBjX,EAAOH,SAAU,CAAC,EAAG,IAEpCG,EAAOqX,QAAUrX,EAAOsX,aAAc,CACzC,IAAI3L,EAAO3L,EAAOsX,aAAa1L,wBAC3B2L,EAAM,EAAE5L,EAAKE,MAAOF,EAAKG,KAC7BmL,EAAmBjX,EAAOqX,OAAOrX,OAAOH,SAAU0X,GAGnD,IAAIC,EAAMnX,EAAI+L,iBAAiB1J,GAC3B+U,EAAMpX,EAAImM,iBAAiB9J,GAM/B,OALArC,EAAI8V,eAAiB,CACpB1K,EAAG+L,EAAI/L,EAAIgM,EAAIhM,EACfC,EAAG8L,EAAI9L,EAAI+L,EAAI/L,GAGRqL,GACR,IAAK,MAEkC,MAAlC1W,EAAIuT,iBAAiB3B,IAA2C,IAAvBA,EAAQyF,SAAShK,GAC7DuE,EAAQ0F,SAAS,KAAM,KAAM,IAAK,MAEnCtX,EAAIuX,OAAO3F,EAASvP,EAAG,EAAG,GAC1B,MAED,IAAK,MACJrC,EAAIwX,OAAO5F,EAASvP,EAAG,GACvB,MAED,IAAK,OACJrC,EAAIyX,QAAQ7F,EAASvP,EAAG,GAGzBuP,EAAQ6D,QAAQ,UAIjBqB,sBAAwB,SAAUzU,EAAGkE,EAAQmQ,EAAaC,EAAaE,GACtE,OAAO,SAAUxU,GAChB,IAAIuP,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAClC,OAAQmQ,GACR,IAAK,MACJ1W,EAAIuX,OAAO3F,EAASvP,EAAGwU,EAAO,GAAIA,EAAO,IACzC,MAED,IAAK,MACJ7W,EAAIwX,OAAO5F,EAASvP,EAAGwU,EAAO,IAC9B,MAED,IAAK,OACJ7W,EAAIyX,QAAQ7F,EAASvP,EAAGwU,EAAO,IAGhCjF,EAAQ6D,QAAQ,WAKlBsB,qBAAuB,SAAU1U,EAAGkE,EAAQmQ,EAAaC,GACxD,OAAO,SAAUtU,GAChB,IAAIuP,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAClCvG,EAAIkG,kBAAkB,QACtBlG,EAAI0G,gBAKJkL,EAAQ6D,QAAQ,SAChB7D,EAAQ6D,QAAQ,YAKlBiC,qBAAuB,SAAUrV,GAChC,IAAIkE,EAASlE,EAAEsV,cACX/F,EAAU5R,EAAIuF,QAAQgB,EAAQ,YAC9BuI,EAAQ9O,EAAIuF,QAAQgB,EAAQ,SAGK,QAAjCqL,EAAQ7D,OAAOvM,gBAClBoQ,EAAQgG,WAAW9I,EAAMf,QACpB/N,EAAIgP,cAAc4C,EAAQiG,eAC9B/I,EAAMhB,KAAK,GAAK,IAKI,OAAlBgB,EAAMhB,KAAK,MACmB,IAA7B8D,EAAQkG,kBAA2D,SAA7BlG,EAAQkG,kBAA+BlG,EAAQmG,2BACxFjJ,EAAMhB,KAAK,GAAK,GAIlB8D,EAAQoG,SAAS1G,MAAMM,EAAS9C,EAAMhB,MAEtC8D,EAAQ6D,QAAQ,SAChB7D,EAAQ6D,QAAQ,UAEZ7D,EAAQqG,oBACXrG,EAAQsG,QAKVX,OAAS,SAAU3F,EAASvP,EAAG8V,EAAMC,GACpC,IAAIC,EAAarY,EAAI+L,iBAAiB1J,GAClC+I,EAAI+M,EAAOE,EAAWjN,EAAIpL,EAAI8V,eAAe1K,EAAIwG,EAAQ+B,QAAU/B,EAAQuB,mBAC3E9H,EAAI+M,EAAOC,EAAWhN,EAAIrL,EAAI8V,eAAezK,EAAIuG,EAAQ+B,QAAU/B,EAAQuB,mBAE3EmF,EAAOlN,GAAK,KAAOwG,EAAQvC,MAAQ,IACnCkJ,EAAO,IAAOlN,GAAK,KAAOuG,EAAQtC,OAAS,IAE/C,OAAQtP,EAAIkV,eAAetD,IAC3B,IAAK,IAAKA,EAAQ0F,SAASgB,EAAMC,EAAM,KAAM,MAAO,MACpD,IAAK,IAAK3G,EAAQ0F,SAASgB,EAAM,KAAMC,EAAM,QAK9Cf,OAAS,SAAU5F,EAASvP,EAAG+V,GAC9B,IAEIG,EAAO,KADHH,EADSpY,EAAI+L,iBAAiB1J,GACZgJ,EAAIrL,EAAI8V,eAAezK,EAAIuG,EAAQ+B,QAAU/B,EAAQuB,qBACxD,KAAOvB,EAAQtC,OAAS,IAE/C,OAAQtP,EAAIuT,iBAAiB3B,IAC7B,IAAK,IAAKA,EAAQ0F,SAAS,KAAMiB,EAAM,KAAM,MAAO,MACpD,IAAK,IAAK3G,EAAQ0F,SAAS,KAAM,KAAMiB,EAAM,QAK9Cd,QAAU,SAAU7F,EAASvP,EAAG+V,GAC/B,IAEIG,EAAO,GADHH,EADSpY,EAAI+L,iBAAiB1J,GACZgJ,EAAIrL,EAAI8V,eAAezK,EAAIuG,EAAQ+B,QAAU/B,EAAQuB,qBACxD,GAAOvB,EAAQtC,OAAS,IAE/C,GAAIiJ,EAAO,EAAK,CAEf,IAAIC,EAAM5G,EAAQiG,YACmB,QAAjCjG,EAAQ7D,OAAOvM,eAA4BxB,EAAIgP,cAAcwJ,IAChE5G,EAAQgG,WAAmB,QAARY,EAAgB,OAAS,QAI9C5G,EAAQ0F,SAAS,KAAM,KAAM,KAAMiB,IAIpCE,gBAAkB,WAEjB,IAAI5K,EAAM,CACT9N,IAAK,KACL2Y,KAAM,MAGHxJ,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAsC5B,OAHA1B,EAAI9N,IAAMmP,EACVrB,EAAI6K,KAlCW,SAAUrJ,EAAOC,EAAQ/N,GACvC2N,EAAOG,MAAQA,EACfH,EAAOI,OAASA,EAEhBiB,EAAII,UAAU,EAAG,EAAGzB,EAAOG,MAAOH,EAAOI,QAEzC,IAAIqJ,EAAQpI,EAAIqI,qBAAqB,EAAG,EAAG1J,EAAOG,MAAO,GACzDsJ,EAAME,aAAa,EAAO,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,GAAO,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,EAAI,EAAG,QAC1BF,EAAME,aAAa,EAAO,QAE1BtI,EAAIC,UAAYmI,EAChBpI,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,QAExC,IAAIwJ,EAAQvI,EAAIqI,qBAAqB,EAAG,EAAG,EAAG1J,EAAOI,QACrD,OAAQ/N,EAAKC,eACb,IAAK,IACJsX,EAAMD,aAAa,EAAG,uBACtBC,EAAMD,aAAa,EAAG,uBACtB,MACD,IAAK,IACJC,EAAMD,aAAa,EAAG,iBACtBC,EAAMD,aAAa,EAAG,iBAGvBtI,EAAIC,UAAYsI,EAChBvI,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,SAMlCzB,GAIRkL,qBAAuB,WAEtB,IAAIlL,EAAM,CACT9N,IAAK,KACL2Y,KAAM,MAGHxJ,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAmB5B,OAHA1B,EAAI9N,IAAMmP,EACVrB,EAAI6K,KAfW,SAAUrJ,EAAOC,EAAQ0J,EAAQC,GAC/C/J,EAAOG,MAAQA,EACfH,EAAOI,OAASA,EAEhBiB,EAAII,UAAU,EAAG,EAAGzB,EAAOG,MAAOH,EAAOI,QAEzC,IAAI4J,EAAO3I,EAAIqI,qBAAqB,EAAG,EAAG,EAAG1J,EAAOI,QACpD4J,EAAKL,aAAa,EAAGG,GACrBE,EAAKL,aAAa,EAAGI,GAErB1I,EAAIC,UAAY0I,EAChB3I,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,SAMlCzB,GAIRsL,sBAAwB,WAEvB,IAAItL,EAAM,CACT9N,IAAK,KACL2Y,KAAM,MAGHxJ,EAASlP,EAAIiD,SAAS,UACtBsN,EAAMrB,EAAOK,WAAW,MAoC5B,OAHA1B,EAAI9N,IAAMmP,EACVrB,EAAI6K,KAhCW,SAAUrJ,EAAOC,EAAQR,GACvCI,EAAOG,MAAQA,EACfH,EAAOI,OAASA,EAEhBiB,EAAII,UAAU,EAAG,EAAGzB,EAAOG,MAAOH,EAAOI,QAEzC,IAAIS,EAASb,EAAOG,MAAQ,EACxBY,EAAWjQ,EAAIO,IAAI2P,iBACnBC,EAAWnQ,EAAIO,IAAI6P,iBAMvB,GAHAG,EAAIC,UAAYP,EAChBM,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,QAEpCS,EAAS,EACZ,IAAK,IAAI1E,EAAI,EAAGA,EAAI6D,EAAOI,OAAQjE,GAAc,EAAT0E,EAEvCQ,EAAIC,UAAYL,EAChBI,EAAIE,SAAS,EAAGpF,EAAG0E,EAAQA,GAC3BQ,EAAIE,SAASV,EAAQ1E,EAAI0E,EAAQA,EAAQA,GAI3C,IAAImJ,EAAO3I,EAAIqI,qBAAqB,EAAG,EAAG,EAAG1J,EAAOI,QACpD4J,EAAKL,aAAa,EAAG/J,GACrBoK,EAAKL,aAAa,EAAG,iBAErBtI,EAAIC,UAAY0I,EAChB3I,EAAIE,SAAS,EAAG,EAAGvB,EAAOG,MAAOH,EAAOI,SAMlCzB,GAIRhO,WACKA,EAAY,SAAUuZ,EAASxG,EAASyG,EAAMC,EAAQxK,EAAOyK,GAChE3Z,KAAKwZ,QAAUA,EACfxZ,KAAKgT,QAAUA,EACfhT,KAAKyZ,KAAOA,EACZzZ,KAAK0Z,OAASA,EACd1Z,KAAKkP,MAAQA,EACblP,KAAK2Z,QAAUA,GAGhB1Z,EAAU8K,UAAUhB,SAAW,WAC9B,IAAIgF,EAAO,CACVlF,KAAKC,MAAM9J,KAAKwZ,SAAW,KAC3B3P,KAAKC,MAAM9J,KAAKgT,SAAW,KAC3BnJ,KAAKC,MAAM9J,KAAKyZ,MAAQ,KACxB5P,KAAKC,MAAM9J,KAAK0Z,QAAU,KAC1B1Z,KAAKkP,OAKN,OAHIlP,KAAK2Z,OACR5K,EAAK3L,KAAK,SAEJ2L,EAAK/D,KAAK,MAGX/K,GAIR2Z,MAAQ,CACPC,WAAa,EACbC,WAAa,EACbC,aAAe,GAIhBC,SAAW,CACV7L,OAAQ,CAAC,OAAQ,MAAO,MAAO,OAAQ,MAAO,QAC9C8L,gBAAiB,CAAC,OAAQ,SAC1B1E,KAAM,CAAC,MAAO,MAAO,KAAM,MAC3BhE,SAAU,CAAC,OAAQ,QAAS,MAAO,UACnC2I,aAAc,CAAC,QAAQ,GAAM,GAC7BhC,iBAAkB,CAAC,QAAQ,GAAM,IAIlCiC,eAAiB,CAEhBC,aAAgB,iBAChBC,aAAgB,UAChBC,mBAAsB,aACtBC,SAAY,cACZC,WAAc,qBACdC,WAAc,qBACdC,OAAU,MAIXrY,QAAU,iCAUV1B,IAAM,SAAUwC,EAAeb,GAE9B,IAAIqY,EAAO3a,KAurBX,SAAS4a,EAAWC,EAAQnW,GAC3B,GAAsB,iBAAXmW,EACV,MAAM,IAAI/a,MAAM,kCAAoC+a,GAIrD,GAAIza,EAAI4Z,SAASzU,eAAesV,KACV,iBAAVnW,IACVA,EAAQA,EAAM9C,gBAE8B,IAAzCxB,EAAI4Z,SAASa,GAAQrW,QAAQE,IAChC,MAAM,IAAI5E,MAAM,WAAc+a,EAAS,wBAA2BnW,GAKpE,GAAItE,EAAI+Z,eAAe5U,eAAesV,GAAS,CAC9C,IAAIC,EAASD,EACTE,EAAS3a,EAAI+Z,eAAeU,GAChC,IAAIE,EAMH,MAAM,IAAIjb,MAAM,WAAc+a,EAAS,mBAJvC1Y,QAAQC,KAAK,iDAAuDhC,EAAIiC,QAASyY,EAAQC,GACzFF,EAASE,EAOX,IAAIC,EAAS,QAAUH,EAEvB,GAA4B,mBAAjBF,EAAKK,GAEf,OADAL,EAAKK,GAAQtW,IACN,EAED,GAAImW,KAAUF,EAEpB,OADAA,EAAKE,GAAUnW,GACR,EAGR,MAAM,IAAI5E,MAAM,sCAAwC+a,GAIzD,SAASI,EAAWJ,GACnB,GAAsB,iBAAXA,EACV,MAAM,IAAI/a,MAAM,kCAAoC+a,GAIrD,GAAIza,EAAI+Z,eAAe5U,eAAesV,GAAS,CAC9C,IAAIC,EAASD,EACTE,EAAS3a,EAAI+Z,eAAeU,GAChC,IAAIE,EAMH,MAAM,IAAIjb,MAAM,WAAc+a,EAAS,mBAJvC1Y,QAAQC,KAAK,iDAAuDhC,EAAIiC,QAASyY,EAAQC,GACzFF,EAASE,EAOX,IAAIG,EAAS,QAAUL,EAEvB,GAA4B,mBAAjBF,EAAKO,GACf,OAAOP,EAAKO,GAAQxW,OAEd,GAAImW,KAAUF,EACpB,OAAOA,EAAKE,GAGb,MAAM,IAAI/a,MAAM,sCAAwC+a,GAWzD,SAASM,IAKRR,EAAKS,8BAEAhb,EAAIwR,SACRxR,EAAIwR,OAAS,CACZC,MAAO,KACPqB,KAAO9S,EAAIiD,SAAS,OACpBgY,IAAMjb,EAAIiD,SAAS,OACnB8P,KAAO/S,EAAIiD,SAAS,OACpBiY,KAAOlb,EAAIiD,SAAS,OACpBkY,IAAMnb,EAAIiD,SAAS,OACnBmY,KAAOpb,EAAIiD,SAAS,OACpBoY,KAAOrb,EAAIiD,SAAS,OACpBqY,UAAYtb,EAAIyY,kBAChB8C,MAAQvb,EAAIiD,SAAS,OACrBuY,QAAUxb,EAAIiD,SAAS,OACvBwY,QAAUzb,EAAIiD,SAAS,OACvByY,QAAU1b,EAAIiD,SAAS,OACvB0Y,QAAU3b,EAAIiD,SAAS,OACvB2Y,IAAM5b,EAAIiD,SAAS,OACnB4Y,KAAO7b,EAAIiD,SAAS,OACpB6Y,KAAO9b,EAAIiD,SAAS,OACpB8Y,QAAU/b,EAAI+Y,uBACdiD,QAAUhc,EAAIiD,SAAS,OACvBgZ,SAAWjc,EAAIiD,SAAS,OACxBiZ,SAAWlc,EAAIiD,SAAS,OACxBkZ,SAAWnc,EAAIiD,SAAS,OACxBmZ,KAAOpc,EAAIiD,SAAS,OACpBoZ,MAAQrc,EAAIiD,SAAS,OACrBqZ,MAAQtc,EAAIiD,SAAS,OACrBsZ,SAAWvc,EAAImZ,wBACfqD,SAAWxc,EAAIiD,SAAS,OACxBwZ,UAAYzc,EAAIiD,SAAS,OACzByZ,UAAY1c,EAAIiD,SAAS,OACzB0Z,UAAY3c,EAAIiD,SAAS,OACzBwQ,IAAMzT,EAAIiD,SAAS,OACnB2Z,IAAM5c,EAAIiD,SAAS,OACnB4Z,KAAO7c,EAAIiD,SAAS,SAGrBjD,EAAIwR,OAAO2J,IAAI2B,YAAY9c,EAAIwR,OAAO8J,UAAUvb,KAChDC,EAAIwR,OAAO4J,KAAK0B,YAAY9c,EAAIwR,OAAO2J,KACvCnb,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOgK,SACxCxb,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOiK,SACxCzb,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOkK,SACxC1b,EAAIwR,OAAO+J,MAAMuB,YAAY9c,EAAIwR,OAAOmK,SACxC3b,EAAIwR,OAAO4J,KAAK0B,YAAY9c,EAAIwR,OAAO+J,OACvCvb,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO4J,MACtCpb,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO6J,MAEtCrb,EAAIwR,OAAOoK,IAAIkB,YAAY9c,EAAIwR,OAAOuK,QAAQhc,KAC9CC,EAAIwR,OAAOqK,KAAKiB,YAAY9c,EAAIwR,OAAOoK,KACvC5b,EAAIwR,OAAOqK,KAAKiB,YAAY9c,EAAIwR,OAAO2K,UACvCnc,EAAIwR,OAAO2K,SAASW,YAAY9c,EAAIwR,OAAO0K,UAC3Clc,EAAIwR,OAAO0K,SAASY,YAAY9c,EAAIwR,OAAOyK,UAC3Cjc,EAAIwR,OAAOyK,SAASa,YAAY9c,EAAIwR,OAAOwK,SAC3Chc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOqK,MACtC7b,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOsK,MAEtC9b,EAAIwR,OAAO4K,KAAKU,YAAY9c,EAAIwR,OAAO+K,SAASxc,KAChDC,EAAIwR,OAAO6K,MAAMS,YAAY9c,EAAIwR,OAAO4K,MACxCpc,EAAIwR,OAAO6K,MAAMS,YAAY9c,EAAIwR,OAAOmL,WACxC3c,EAAIwR,OAAOmL,UAAUG,YAAY9c,EAAIwR,OAAOkL,WAC5C1c,EAAIwR,OAAOkL,UAAUI,YAAY9c,EAAIwR,OAAOiL,WAC5Czc,EAAIwR,OAAOiL,UAAUK,YAAY9c,EAAIwR,OAAOgL,UAC5Cxc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO6K,OACtCrc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAO8K,OAEtCtc,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOiC,KAEtCzT,EAAIwR,OAAOoL,IAAIE,YAAY9c,EAAIwR,OAAOqL,MACtC7c,EAAIwR,OAAOyJ,IAAI6B,YAAY9c,EAAIwR,OAAOoL,KAEtC5c,EAAIwR,OAAO0J,KAAK4B,YAAY9c,EAAIwR,OAAOyJ,KACvCjb,EAAIwR,OAAOsB,KAAKgK,YAAY9c,EAAIwR,OAAOuB,MACvC/S,EAAIwR,OAAOsB,KAAKgK,YAAY9c,EAAIwR,OAAO0J,MAEvClb,EAAIwR,OAAOsB,KAAKxS,iBAAiB,aAAcN,EAAIyW,qBAClDzW,EAAIwE,yBAA0B,CAACuY,SAAS,KAG1C,IAoSKC,EACAC,EArSDC,EAAIld,EAAIwR,OAER2L,IAAkBnd,EAAIuT,iBAAiBgH,GACvC6C,EAAqB7C,EAAK/G,kBAC1B6J,EAAard,EAAIkS,cAAcqI,GAC/B+C,EAAkB,EAAI/C,EAAKvF,mBAAqBuF,EAAKtF,iBAAmB,EAAIsF,EAAKgD,UACjFC,EAAiBxd,EAAIqT,kBAAkBkH,GACvCkD,EAAehU,KAAK2D,IACvBmN,EAAKkD,aACLhU,KAAKC,MAAM6Q,EAAK5G,QAAUlK,KAAKiU,KAIhCR,EAAEpK,KAAKnR,UAAY,sBACnBub,EAAEpK,KAAK3J,MAAMwU,MAAQ,OACrBT,EAAEpK,KAAK3J,MAAMkG,MAAQgO,EAAWjL,QAAU,KAC1C8K,EAAEpK,KAAK3J,MAAMmG,OAAS+N,EAAWhL,QAAU,KAC3C6K,EAAEpK,KAAK3J,MAAMyU,OAASrD,EAAKqD,OAG3BV,EAAEjC,IAAItZ,UAAY,iBAClBub,EAAEjC,IAAI9R,MAAMkG,MAAQgO,EAAWnJ,QAAU,KACzCgJ,EAAEjC,IAAI9R,MAAMmG,OAAS+N,EAAWlJ,QAAU,KAC1C+I,EAAEjC,IAAI9R,MAAMgI,SAAW,WAGvB+L,EAAEnK,KAAKpR,UAAY,wBACnBub,EAAEnK,KAAK5J,MAAMgI,SAAW,WACxB+L,EAAEnK,KAAK5J,MAAMqC,KAAO,IACpB0R,EAAEnK,KAAK5J,MAAMsC,IAAM,IACnByR,EAAEnK,KAAK5J,MAAMkG,MAAQ,OACrB6N,EAAEnK,KAAK5J,MAAMmG,OAAS,OACtBtP,EAAI8K,gBAAgBoS,EAAEnK,KAAM0K,EAAe,MAG3CP,EAAEhC,KAAKvZ,UAAY,wBACnBub,EAAEhC,KAAK/R,MAAMgI,SAAW,WACxB+L,EAAEhC,KAAK/R,MAAM0U,OAAStD,EAAKnG,YAAc,WACzC8I,EAAEhC,KAAK/R,MAAM2U,YAAcvD,EAAKuD,YAChCZ,EAAEhC,KAAK/R,MAAMqB,WAAa+P,EAAKwD,gBAC/B/d,EAAI8K,gBAAgBoS,EAAEhC,KAAMuC,EAAe,MAK3CP,EAAE7B,KAAKlS,MAAMqB,WAAa,mBAC1B0S,EAAEpB,KAAK3S,MAAMqB,WAAa,mBAC1B0S,EAAEZ,MAAMnT,MAAMqB,WAAa,mBAE3B0S,EAAE7B,KAAKlS,MAAM6U,QACbd,EAAEpB,KAAK3S,MAAM6U,QACbd,EAAEZ,MAAMnT,MAAM6U,QACb,IAGDd,EAAE/B,IAAIhS,MAAMgI,SAAW,WACvB+L,EAAE/B,IAAIhS,MAAMkG,MAAQkL,EAAKlL,MAAQ,KACjC6N,EAAE/B,IAAIhS,MAAMmG,OAASiL,EAAKjL,OAAS,KAGnC4N,EAAE5B,UAAU5C,KAAK6B,EAAKlL,MAAOkL,EAAKjL,OAAQtP,EAAIkV,eAAeqF,IAG7D2C,EAAE9B,KAAKjS,MAAMgI,SAAW,WACxB+L,EAAE9B,KAAKjS,MAAMqC,KAAO+O,EAAK5G,QAAU,KACnCuJ,EAAE9B,KAAKjS,MAAMsC,IAAM8O,EAAK5G,QAAU,KAClCuJ,EAAE9B,KAAKjS,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAChD+J,EAAE9B,KAAKjS,MAAM2U,YAAcvD,EAAK0D,mBAGhCf,EAAE7B,KAAKlS,MAAMgI,SAAW,WACxB+L,EAAE7B,KAAKlS,MAAMqC,KAAO,MACpB0R,EAAE7B,KAAKlS,MAAMsC,IAAM,MACnByR,EAAE7B,KAAKlS,MAAMkG,MAASkL,EAAK5G,QAAU,EAAI4G,EAAKpH,mBAAqBoH,EAAKlL,MAAQmO,EAAkB,KAClGN,EAAE7B,KAAKlS,MAAMmG,OAAU,EAAIiL,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KACvF4N,EAAE7B,KAAKlS,MAAM+U,OAjEG,YAkEhBle,EAAIqD,QAAQ6Z,EAAE7B,KAAM,CACnB8C,SAAU5D,EACV6D,QAAS,QAIVlB,EAAE3B,MAAMpS,MAAMgI,SAAW,WACzB+L,EAAE3B,MAAMpS,MAAMqC,KACd0R,EAAE3B,MAAMpS,MAAMsC,IACb,IACDyR,EAAE3B,MAAMpS,MAAMkG,MACd6N,EAAE3B,MAAMpS,MAAMmG,OACbgO,EAAiB,KAGlBJ,EAAE1B,QAAQrS,MAAMgI,SAChB+L,EAAEzB,QAAQtS,MAAMgI,SACf,WACD+L,EAAE1B,QAAQrS,MAAMqB,WAChB0S,EAAEzB,QAAQtS,MAAMqB,WACf+P,EAAK8D,mBACNnB,EAAE1B,QAAQrS,MAAMkG,MAChB6N,EAAEzB,QAAQtS,MAAMmG,OACd,EAAIiL,EAAKvF,mBAAqBuF,EAAKtF,iBAAoB,KACzDiI,EAAE1B,QAAQrS,MAAMmG,OAChB4N,EAAEzB,QAAQtS,MAAMkG,MACfiO,EAAiB,KAClBJ,EAAE1B,QAAQrS,MAAMqC,KAChB0R,EAAEzB,QAAQtS,MAAMsC,IACdhC,KAAKkE,MAAM2P,EAAiB,GAAK7T,KAAKkE,MAAM4M,EAAKtF,iBAAmB,GAAKsF,EAAKvF,mBAAsB,KACtGkI,EAAE1B,QAAQrS,MAAMsC,IAChByR,EAAEzB,QAAQtS,MAAMqC,KACf,IAGD0R,EAAExB,QAAQvS,MAAMgI,SAChB+L,EAAEvB,QAAQxS,MAAMgI,SACf,WACD+L,EAAExB,QAAQvS,MAAMqB,WAChB0S,EAAEvB,QAAQxS,MAAMqB,WACf+P,EAAK+D,aACNpB,EAAExB,QAAQvS,MAAMmG,OAChB4N,EAAEvB,QAAQxS,MAAMkG,MACdiO,EAAiB,EAAI/C,EAAKvF,mBAAsB,KAClDkI,EAAExB,QAAQvS,MAAMkG,MAChB6N,EAAEvB,QAAQxS,MAAMmG,OACfiL,EAAKtF,iBAAmB,KACzBiI,EAAExB,QAAQvS,MAAMqC,KAChB0R,EAAEvB,QAAQxS,MAAMsC,IACdhC,KAAKkE,MAAM2P,EAAiB,GAAK7T,KAAKkE,MAAM4M,EAAKtF,iBAAmB,GAAM,KAC5EiI,EAAExB,QAAQvS,MAAMsC,IAChByR,EAAEvB,QAAQxS,MAAMqC,KACf+O,EAAKvF,mBAAqB,KAI3BkI,EAAEtB,IAAIzS,MAAMoV,SAAW,SACvBrB,EAAEtB,IAAIzS,MAAMkG,MAAQkL,EAAKjH,WAAa,KACtC4J,EAAEtB,IAAIzS,MAAMmG,OAASiL,EAAKjL,OAAS,KAGnC4N,EAAEnB,QAAQrD,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ,OAAQ,QAGrD4N,EAAErB,KAAK1S,MAAMqV,QAAUrB,EAAgB,QAAU,OACjDD,EAAErB,KAAK1S,MAAMgI,SAAW,WACxB+L,EAAErB,KAAK1S,MAAMqC,KAAQ+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqB,EAAIqK,EAAkB,KACrGN,EAAErB,KAAK1S,MAAMsC,IAAM8O,EAAK5G,QAAU,KAClCuJ,EAAErB,KAAK1S,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAChD+J,EAAErB,KAAK1S,MAAM2U,YAAcvD,EAAK0D,mBAGhCf,EAAEpB,KAAK3S,MAAMqV,QAAUrB,EAAgB,QAAU,OACjDD,EAAEpB,KAAK3S,MAAMgI,SAAW,WACxB+L,EAAEpB,KAAK3S,MAAMqC,KAAQ+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqBqK,EAAkB,KACjGN,EAAEpB,KAAK3S,MAAMsC,IAAM,MACnByR,EAAEpB,KAAK3S,MAAMkG,MACVkL,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,oBAChDiK,EAAqB,EAAI3T,KAAK6D,IAAI,EAAGiN,EAAK5G,QAAU6J,IAClD,KACLN,EAAEpB,KAAK3S,MAAMmG,OAAU,EAAIiL,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KACvF4N,EAAEpB,KAAK3S,MAAM+U,OAAS,UACtBle,EAAIqD,QAAQ6Z,EAAEpB,KAAM,CACnBqC,SAAU5D,EACV6D,QAAS,QAIVlB,EAAEjB,SAAS9S,MAAM0U,OACjBX,EAAEf,SAAShT,MAAM0U,OAChBtD,EAAKvF,mBAAqB,YAAcuF,EAAK8D,mBAG9CnB,EAAEf,SAAShT,MAAMgI,SAAW,WAC5B+L,EAAEf,SAAShT,MAAMqC,OAAS,EAAI+O,EAAKvF,mBAAqBuF,EAAKtF,kBAAoB,KACjFiI,EAAEf,SAAShT,MAAMsC,IAAM,IAGvByR,EAAEhB,SAAS/S,MAAM0U,OAAStD,EAAKtF,iBAAmB,YAAcsF,EAAK+D,aAGrEpB,EAAElB,QAAQ7S,MAAMkG,MAAQkL,EAAKjH,WAAa,KAC1C4J,EAAElB,QAAQ7S,MAAMmG,OAAStP,EAAIO,IAAIke,iBAAmB,KAIpDvB,EAAEd,KAAKjT,MAAMoV,SAAW,SACxBrB,EAAEd,KAAKjT,MAAMkG,MAAQkL,EAAKjH,WAAa,KACvC4J,EAAEd,KAAKjT,MAAMmG,OAASiL,EAAKjL,OAAS,KAGpC4N,EAAEX,SAAS7D,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ,QAG9C4N,EAAEb,MAAMlT,MAAMqV,QAAUpB,EAAqB,QAAU,OACvDF,EAAEb,MAAMlT,MAAMgI,SAAW,WACzB+L,EAAEb,MAAMlT,MAAMqC,KACX+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqBqK,GAC1DL,EAAiB5C,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,mBAAsB,GACrF,KACL+J,EAAEb,MAAMlT,MAAMsC,IAAM8O,EAAK5G,QAAU,KACnCuJ,EAAEb,MAAMlT,MAAM0U,OAAStD,EAAKpH,mBAAqB,WACjD+J,EAAEb,MAAMlT,MAAM2U,YAAcvD,EAAK0D,mBAGjCf,EAAEZ,MAAMnT,MAAMqV,QAAUpB,EAAqB,QAAU,OACvDF,EAAEZ,MAAMnT,MAAMgI,SAAW,WACzB+L,EAAEZ,MAAMnT,MAAMqC,KACX+O,EAAK5G,QAAU4G,EAAKlL,MAAQ,EAAIkL,EAAKpH,mBAAqBqK,GAC1DL,EAAiB5C,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,mBAAsB,GACrF,KACL+J,EAAEZ,MAAMnT,MAAMsC,IAAM,MACpByR,EAAEZ,MAAMnT,MAAMkG,MACXkL,EAAKjH,WAAa,EAAIkK,EAAiB,EAAIjD,EAAKpH,mBACjD1J,KAAK6D,IAAI,EAAGiN,EAAK5G,QAAU6J,GACxB,KACLN,EAAEZ,MAAMnT,MAAMmG,OAAU,EAAIiL,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KACxF4N,EAAEZ,MAAMnT,MAAM+U,OAAS,UACvBle,EAAIqD,QAAQ6Z,EAAEZ,MAAO,CACpB6B,SAAU5D,EACV6D,QAAS,SAIVlB,EAAET,UAAUtT,MAAM0U,OAClBX,EAAEP,UAAUxT,MAAM0U,OACjBtD,EAAKvF,mBAAqB,YAAcuF,EAAK8D,mBAG9CnB,EAAEP,UAAUxT,MAAMgI,SAAW,WAC7B+L,EAAEP,UAAUxT,MAAMqC,OAAS,EAAI+O,EAAKvF,mBAAqBuF,EAAKtF,kBAAoB,KAClFiI,EAAEP,UAAUxT,MAAMsC,IAAM,IAGxByR,EAAER,UAAUvT,MAAM0U,OAAStD,EAAKtF,iBAAmB,YAAcsF,EAAK+D,aAGtEpB,EAAEV,SAASrT,MAAMkG,MAAQkL,EAAKjH,WAAa,KAC3C4J,EAAEV,SAASrT,MAAMmG,OAAStP,EAAIO,IAAIke,iBAAmB,KAIrDvB,EAAEzJ,IAAI9R,UAAY,kBAClBub,EAAEzJ,IAAItK,MAAMqV,QAAUnB,EAAWhJ,QAAQE,KAAO,QAAU,OAC1D2I,EAAEzJ,IAAItK,MAAMgI,SAAW,WACvB+L,EAAEzJ,IAAItK,MAAMqC,KAAO+O,EAAK5G,QAAU,KAClCuJ,EAAEzJ,IAAItK,MAAMsC,IAAO,EAAI8O,EAAKpH,mBAAqB,EAAIoH,EAAK5G,QAAU4G,EAAKjL,OAAU,KAInF4N,EAAEzJ,IAAIiL,UAAY,GAKlB,IAHA,IAAIC,EAAa3e,EAAIyP,sBAAsB,iBAEvCmP,EAAK,EACAtV,EAAI,EAAGA,EAAI+T,EAAWhJ,QAAQE,KAAMjL,IAC5C,IAAK,IAAIwI,EAAI,EAAGA,EAAIuL,EAAWhJ,QAAQC,MAAQsK,EAAKrE,EAAK5F,SAASxT,OAAQ2Q,IAAK8M,IAAM,CACpF,IAAIC,EAActE,EAAK5F,SAASiK,GAC5BE,EAAiB9e,EAAIiK,UAAUqH,MAAM,KAAMuN,EAAY/Q,MAEvDiR,EAAK/e,EAAIiD,SAAS,OACtB8b,EAAG5V,MAAMkG,MAASgO,EAAWhJ,QAAQG,MAAQ,EAAI+F,EAAKpH,mBAAsB,KAC5E4L,EAAG5V,MAAMmG,OAAU+N,EAAWhJ,QAAQI,MAAQ,EAAI8F,EAAKpH,mBAAsB,KAC7E4L,EAAG5V,MAAM4U,gBAAkBe,EAE3B,IAAIE,EAAKhf,EAAIiD,SAAS,OACtB+b,EAAGrd,UAAY,yBACfqd,EAAG7V,MAAMqV,QAAU,QACnBQ,EAAG7V,MAAMgI,SAAW,WACpB6N,EAAG7V,MAAMqC,MACP6R,EAAWhJ,QAAQC,MAAQ,EAAI,EAC/B7K,KAAKC,MAAYoI,IAAMuL,EAAWrJ,SAAWqJ,EAAWhJ,QAAQG,QAAU6I,EAAWhJ,QAAQC,KAAO,IAAzF,IAAiG,IACzG,KACL0K,EAAG7V,MAAMsC,IAAOnC,GAAK+T,EAAWhJ,QAAQI,MAAQ8F,EAAKzF,gBAAmB,KACxEkK,EAAG7V,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAC5C6L,EAAG7V,MAAM2U,YAAcvD,EAAK0D,mBAC5Be,EAAG7V,MAAM+U,OAAS,UACU,OAAxBW,EAAY/Q,KAAK,IAAe+Q,EAAY/Q,KAAK,GAAK,IACzDkR,EAAG7V,MAAM8V,gBAAkB,QAAWN,EAAWzP,OAAOgQ,YAAc,KACtEF,EAAG7V,MAAMgW,iBAAmB,SAC5BH,EAAG7V,MAAMiW,mBAAqB,iBAE/Bpf,EAAIqD,QAAQ2b,EAAI,CACfb,SAAU5D,EACV6D,QAAS,iBACTtP,MAAO+P,IAERG,EAAG1e,iBAAiB,QAASN,EAAI0X,sBAAsB,GACvDsH,EAAGlC,YAAYiC,GACf7B,EAAEzJ,IAAIqJ,YAAYkC,GAYpB9B,EAAEN,IAAIjb,UAAY,oBAClBub,EAAEN,IAAIzT,MAAMqV,QAAUjE,EAAK3G,YAAc,QAAU,OACnDsJ,EAAEN,IAAIzT,MAAMgI,SAAW,WACvB+L,EAAEN,IAAIzT,MAAMqC,KAAO+O,EAAK5G,QAAU,KAClCuJ,EAAEN,IAAIzT,MAAMkW,OAAS9E,EAAK5G,QAAU,KACpCuJ,EAAEN,IAAIzT,MAAMwK,QAAU,SACtBuJ,EAAEN,IAAIzT,MAAMmW,SAAYjC,EAAWrJ,SAAW,EAAIuG,EAAKpH,mBAAqB,GAAkB,KAC9F+J,EAAEN,IAAIzT,MAAMoV,SAAW,SACvBrB,EAAEN,IAAIzT,MAAMmG,OAASiL,EAAK1G,aAAe,KACzCqJ,EAAEN,IAAIzT,MAAMoW,WAAa,SACzBrC,EAAEN,IAAIzT,MAAM0U,OAAStD,EAAKpH,mBAAqB,WAd1C8J,GADAD,EAAczC,EAAK0D,mBAAmBlW,MAAM,QAClB5G,OAAS,EAAI6b,EAAY,GAAKA,EAAY,GAAK,IAAMA,EAAY,GAAK,IAAMA,EAAY,GAAK,IAAMA,EAAY,GAC7IE,EAAEN,IAAIzT,MAAM2U,YAAcb,EAe3BC,EAAEN,IAAIzT,MAAM2F,MAAQyL,EAAKiF,YACzBtC,EAAEN,IAAIzT,MAAMsW,KAAO,kBACnBvC,EAAEN,IAAIzT,MAAMuW,UAAY,SACxBxC,EAAEN,IAAIzT,MAAM+U,OAAS,UACrBhB,EAAEN,IAAI+C,YAAc,WACnBpF,EAAKrC,QAENgF,EAAEL,KAAK1T,MAAMyW,WAAarF,EAAK1G,aAAe,KAC9CqJ,EAAEL,KAAK6B,UAAY,GACnBxB,EAAEL,KAAKC,YAAYnd,EAAOH,SAASqgB,eAAetF,EAAKuF,YAGvDC,IACAC,IACAC,IAIIjgB,EAAIwR,OAAOC,OAASzR,EAAIwR,OAAOC,QAAU8I,GAC5Cva,EAAIsI,YAAYtI,EAAIwR,OAAOC,MAAM1O,cAAe/C,EAAIO,IAAI2f,iBAIzDlgB,EAAIwR,OAAOC,MAAQ8I,EAIfA,EAAK4F,YAAcxgB,EAAOH,SAAS4gB,KACtCpgB,EAAIuR,iBAEJvR,EAAI2S,cAAc4H,EAAM,EAAG,EAAG,YAAY,GAGvC2C,EAAEpK,KAAKuN,aAAe9F,EAAK4F,WAC9B5F,EAAK4F,UAAUrD,YAAYI,EAAEpK,MAG9B9S,EAAImI,SAASoS,EAAKxX,cAAe/C,EAAIO,IAAI2f,iBAI1C,SAASH,IAER,IAAIO,EAAWtgB,EAAIkV,eAAeqF,GAC9BnP,EAAI3B,KAAKC,MAAO6Q,EAAKlD,SAAS9J,EAAI,KAAQgN,EAAKlL,MAAQ,IACvDhE,EAAI5B,KAAKC,OAAO,EAAI6Q,EAAKlD,SAASiJ,GAAY,MAAQ/F,EAAKjL,OAAS,IACpEgO,EAAkB,EAAI/C,EAAKvF,mBAAqBuF,EAAKtF,iBAAmB,EAAIsF,EAAKgD,UACjFrG,GAAOzN,KAAKkE,MAAM2P,EAAiB,GAKvC,OAJAtd,EAAIwR,OAAO+J,MAAMpS,MAAMqC,KAAQJ,EAAI8L,EAAO,KAC1ClX,EAAIwR,OAAO+J,MAAMpS,MAAMsC,IAAOJ,EAAI6L,EAAO,KAGjClX,EAAIuT,iBAAiBgH,IAC7B,IAAK,IACJ,IAAIgG,EAAOvgB,EAAIwN,QAAQ+M,EAAKlD,SAAS9J,EAAG,IAAKgN,EAAKlD,SAAShK,GACvDmT,EAAOxgB,EAAIwN,QAAQ+M,EAAKlD,SAAS9J,EAAG,EAAGgN,EAAKlD,SAAShK,GACrD2L,EAAS,OACZvP,KAAKC,MAAM6W,EAAK,IAAM,IACtB9W,KAAKC,MAAM6W,EAAK,IAAM,IACtB9W,KAAKC,MAAM6W,EAAK,IAAM,IACnBtH,EAAS,OACZxP,KAAKC,MAAM8W,EAAK,IAAM,IACtB/W,KAAKC,MAAM8W,EAAK,IAAM,IACtB/W,KAAKC,MAAM8W,EAAK,IAAM,IACvBxgB,EAAIwR,OAAOuK,QAAQrD,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ0J,EAAQC,GAC9D,MACD,IAAK,IACJ,IAAIwH,EAAMzgB,EAAIwN,QAAQ+M,EAAKlD,SAAS9J,EAAGgN,EAAKlD,SAAS5J,EAAG,KACpDuL,EAAS,OACZvP,KAAKC,MAAM+W,EAAI,IAAM,IACrBhX,KAAKC,MAAM+W,EAAI,IAAM,IACrBhX,KAAKC,MAAM+W,EAAI,IAAM,IAClBxH,EAAS,OACbjZ,EAAIwR,OAAOuK,QAAQrD,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQ0J,EAAQC,GAK/DjZ,EAAIwR,OAAO+K,SAAS7D,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQiL,EAAKmG,eAI7D,SAASV,IACR,IAAIW,EAAa3gB,EAAIuT,iBAAiBgH,GACtC,GAAIoG,EAAY,CAEf,IAAItV,EAAI5B,KAAKC,OAAO,EAAI6Q,EAAKlD,SAASsJ,GAAc,MAAQpG,EAAKjL,OAAS,IAC1EtP,EAAIwR,OAAO2K,SAAShT,MAAMsC,IAAOJ,GAAK,EAAIkP,EAAKvF,mBAAqBuF,EAAKtF,kBAAoBxL,KAAKkE,MAAM3N,EAAIO,IAAIke,iBAAmB,GAAM,KAI1Ize,EAAIwR,OAAO+K,SAAS7D,KAAK6B,EAAKjH,WAAYiH,EAAKjL,OAAQiL,EAAKmG,eAI7D,SAAST,IACR,IAAI5U,EAAI5B,KAAKC,OAAO,EAAI6Q,EAAKlD,SAAStN,IAAMwQ,EAAKjL,OAAS,IAC1DtP,EAAIwR,OAAOmL,UAAUxT,MAAMsC,IAAOJ,GAAK,EAAIkP,EAAKvF,mBAAqBuF,EAAKtF,kBAAoBxL,KAAKkE,MAAM3N,EAAIO,IAAIke,iBAAmB,GAAM,KAI3I,SAASmC,IACR,OAAO5gB,EAAIwR,QAAUxR,EAAIwR,OAAOC,QAAU8I,EAgG3C,GAx1CKrY,IACJA,EAAO,IAGRtC,KAAKyX,SAAW,CACf/N,EAAG,IACHC,EAAG,IACHC,EAAG,IACH+D,EAAG,EACHE,EAAG,EACHJ,EAAG,IACHtD,EAAG,GAKJnK,KAAKmO,OAAS,OACdnO,KAAK0E,WAAQhD,EACb1B,KAAKihB,WAAQvf,EACb1B,KAAKkhB,cAAWxf,EAChB1B,KAAKmhB,aAAUzf,EACf1B,KAAKohB,kBAAe1f,EACpB1B,KAAKqhB,kBAAe3f,EACpB1B,KAAKshB,oBAAiB5f,EACtB1B,KAAKia,gBAAkB,OACvBja,KAAKuhB,YAAc,GACnBvhB,KAAKwhB,eAAiB,EACtBxhB,KAAKyhB,UAAW,EAChBzhB,KAAK0hB,MAAO,EACZ1hB,KAAK2hB,WAAY,EACjB3hB,KAAK4hB,YAAa,EAIlB5hB,KAAKyP,MAAQ,IACbzP,KAAK0P,OAAS,IACd1P,KAAKuV,KAAO,MACZvV,KAAKka,aAAe,OACpBla,KAAKuR,SAAW,SAChBvR,KAAK2S,eAAgB,EACrB3S,KAAKyW,aAAc,EACnBzW,KAAK6hB,aAAc,EACnB7hB,KAAKyU,QAAU,GACfzU,KAAKgV,YAAc,GACnBhV,KAAKkY,iBAAmB,OACxBlY,KAAKmV,cAAgB,GACrBnV,KAAKkV,eAAiB,EACtBlV,KAAKqY,oBAAqB,EAC1BrY,KAAK0T,WAAa,GAClB1T,KAAK2d,UAAY,EACjB3d,KAAKgU,aAAc,EACnBhU,KAAKkgB,UAAY,QACjBlgB,KAAK4f,YAAc,gBACnB5f,KAAKiU,aAAe,GACpBjU,KAAK+T,QAAU,GACf/T,KAAKme,gBAAkB,sBACvBne,KAAKwU,YAAc,EACnBxU,KAAKke,YAAc,sBACnBle,KAAK6d,aAAe,EACpB7d,KAAKuT,mBAAqB,EAC1BvT,KAAKqe,mBAAqB,sBAC1Bre,KAAKoT,QAAS,EACdpT,KAAKiT,WAAa,GAClBjT,KAAKqT,YAAc,kBACnBrT,KAAK0e,aAAe,mBACpB1e,KAAKoV,mBAAqB,EAC1BpV,KAAKye,mBAAqB,sBAC1Bze,KAAKqV,iBAAmB,EACxBrV,KAAKge,OAAS,IACdhe,KAAKugB,eAAY7e,EAIjB1B,KAAK8hB,KAAO,EACZ9hB,KAAK+hB,KAAO,IACZ/hB,KAAKgiB,KAAO,EACZhiB,KAAKiiB,KAAO,IACZjiB,KAAKkiB,KAAO,EACZliB,KAAKmiB,KAAO,EAOZniB,KAAK6a,OAAS,WACb,IAAKxV,UAAU9D,OACd,MAAM,IAAIzB,MAAM,uBAGjB,GAAyB,IAArBuF,UAAU9D,QAAwC,iBAAjB8D,UAAU,GAAiB,CAE/D,IACC,OAAO4V,EAAU5V,UAAU,IAC1B,MAAO5C,GACRN,QAAQC,KAAKK,GAEd,OAAO,EAED,GAAI4C,UAAU9D,QAAU,GAA6B,iBAAjB8D,UAAU,GAAiB,CAErE,IACC,IAAKuV,EAAUvV,UAAU,GAAIA,UAAU,IACtC,OAAO,EAEP,MAAO5C,GAER,OADAN,QAAQC,KAAKK,IACN,EAIR,OAFAzC,KAAKoiB,SACLpiB,KAAKqiB,eACE,EAED,GAAyB,IAArBhd,UAAU9D,QAAwC,iBAAjB8D,UAAU,GAAiB,CAEtE,IAAI/C,EAAO+C,UAAU,GACjBid,GAAU,EACd,IAAK,IAAIC,KAAOjgB,EACf,GAAIA,EAAKiD,eAAegd,GACvB,IACM3H,EAAU2H,EAAKjgB,EAAKigB,MACxBD,GAAU,GAEV,MAAO7f,GACRN,QAAQC,KAAKK,GACb6f,GAAU,EAMb,OAFAtiB,KAAKoiB,SACLpiB,KAAKqiB,cACEC,EAGR,MAAM,IAAIxiB,MAAM,sBAOjBE,KAAKwiB,QAAU,SAAU3c,EAAMnB,GAC9B,GAAoB,iBAATmB,EACV,MAAM,IAAI/F,MAAM,mCAAqC+F,GAGtD,QAAcnE,IAAVgD,EAEH,OAAK1E,KAAKyX,SAASlS,eAAeM,EAAKjE,eAIhC5B,KAAKyX,SAAS5R,EAAKjE,gBAHzBO,QAAQC,KAAK,4BAA8ByD,IACpC,GAMR,IAAI4c,GAAM,EACV,OAAQ5c,EAAKjE,eACZ,IAAK,IAAK6gB,EAAMziB,KAAKoY,SAAS1T,EAAO,KAAM,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAKoY,SAAS,KAAM1T,EAAO,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAKoY,SAAS,KAAM,KAAM1T,EAAO,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAShT,EAAO,KAAM,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAS,KAAMhT,EAAO,KAAM,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAS,KAAM,KAAMhT,EAAO,MAAO,MACxD,IAAK,IAAK+d,EAAMziB,KAAK0X,SAAS,KAAM,KAAM,KAAMhT,GAAQ,MACxD,QAEC,OADAvC,QAAQC,KAAK,4BAA8ByD,IACpC,EAET,QAAI4c,IACHziB,KAAKoiB,UACE,IAcVpiB,KAAK6V,QAAU,SAAUD,GAExB,IADA,IAAI8M,EAAMtiB,EAAI6H,QAAQ2N,GACbtU,EAAI,EAAGA,EAAIohB,EAAInhB,OAAQD,GAAK,EAAG,CACvC,IAAI8F,EAAKsb,EAAIphB,GAAGM,cAGZ+gB,EAAe,KACnB,OAAQvb,GACP,IAAK,QAASub,EAAe,UAAW,MACxC,IAAK,SAAUA,EAAe,WAE3BA,GACHviB,EAAIoV,gBAAgBxV,KAAM2iB,GAI3BviB,EAAIqH,kBAAkBzH,KAAKohB,aAAcha,GAAI,GAAM,KAUrDpH,KAAK0X,SAAW,SAAU/J,EAAGE,EAAGJ,EAAGtD,EAAGyP,GAMrC,QALUlY,IAANiM,IAAmBA,EAAI,WACjBjM,IAANmM,IAAmBA,EAAI,WACjBnM,IAAN+L,IAAmBA,EAAI,WACjB/L,IAANyI,IAAmBA,EAAI,MAEjB,OAANwD,EAAY,CACf,GAAIiV,MAAMjV,GAAM,OAAO,EACvB3N,KAAKyX,SAAS9J,EAAI9D,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKG,IAE7C,GAAU,OAANE,EAAY,CACf,GAAI+U,MAAM/U,GAAM,OAAO,EACvB7N,KAAKyX,SAAS5J,EAAIhE,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKxN,KAAK+hB,KAAMlU,GAAI7N,KAAK8hB,MAEjE,GAAU,OAANrU,EAAY,CACf,GAAImV,MAAMnV,GAAM,OAAO,EACvBzN,KAAKyX,SAAShK,EAAI5D,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKxN,KAAKiiB,KAAMxU,GAAIzN,KAAKgiB,MAEjE,GAAU,OAAN7X,EAAY,CACf,GAAIyY,MAAMzY,GAAM,OAAO,EACvBnK,KAAKyX,SAAStN,EAAInK,KAAK4T,kBACtB/J,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,EAAGxN,KAAKmiB,KAAMhY,GAAInK,KAAKkiB,MAC5C,EAGF,IAAIrB,EAAMzgB,EAAIwN,QACb5N,KAAKyX,SAAS9J,EACd3N,KAAKyX,SAAS5J,EACd7N,KAAKyX,SAAShK,GAOf,OALAzN,KAAKyX,SAAS/N,EAAImX,EAAI,GACtB7gB,KAAKyX,SAAS9N,EAAIkX,EAAI,GACtB7gB,KAAKyX,SAAS7N,EAAIiX,EAAI,GAEtB7gB,KAAKqiB,YAAYzI,IACV,GASR5Z,KAAKoY,SAAW,SAAU1O,EAAGC,EAAGC,EAAGO,EAAGyP,GAMrC,QALUlY,IAANgI,IAAmBA,EAAI,WACjBhI,IAANiI,IAAmBA,EAAI,WACjBjI,IAANkI,IAAmBA,EAAI,WACjBlI,IAANyI,IAAmBA,EAAI,MAEjB,OAANT,EAAY,CACf,GAAIkZ,MAAMlZ,GAAM,OAAO,EACvBA,EAAIG,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAK9D,IAE/B,GAAU,OAANC,EAAY,CACf,GAAIiZ,MAAMjZ,GAAM,OAAO,EACvBA,EAAIE,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAK7D,IAE/B,GAAU,OAANC,EAAY,CACf,GAAIgZ,MAAMhZ,GAAM,OAAO,EACvBA,EAAIC,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAK5D,IAE/B,GAAU,OAANO,EAAY,CACf,GAAIyY,MAAMzY,GAAM,OAAO,EACvBnK,KAAKyX,SAAStN,EAAInK,KAAK4T,kBACtB/J,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,EAAGxN,KAAKmiB,KAAMhY,GAAInK,KAAKkiB,MAC5C,EAGF,IAAIW,EAAMziB,EAAImN,QACT,OAAJ7D,EAAW1J,KAAKyX,SAAS/N,EAAIA,EACzB,OAAJC,EAAW3J,KAAKyX,SAAS9N,EAAIA,EACzB,OAAJC,EAAW5J,KAAKyX,SAAS7N,EAAIA,GAEf,OAAXiZ,EAAI,KACP7iB,KAAKyX,SAAS9J,EAAI9D,KAAK6D,IAAI,EAAG7D,KAAK2D,IAAI,IAAKqV,EAAI,MAElC,IAAXA,EAAI,KACP7iB,KAAKyX,SAAS5J,EAAIhE,KAAK6D,IAAI,EAAG1N,KAAK8hB,KAAMjY,KAAK2D,IAAI,IAAKxN,KAAK+hB,KAAMc,EAAI,MAEvE7iB,KAAKyX,SAAShK,EAAI5D,KAAK6D,IAAI,EAAG1N,KAAKgiB,KAAMnY,KAAK2D,IAAI,IAAKxN,KAAKiiB,KAAMY,EAAI,KAGtE,IAAIhC,EAAMzgB,EAAIwN,QAAQ5N,KAAKyX,SAAS9J,EAAG3N,KAAKyX,SAAS5J,EAAG7N,KAAKyX,SAAShK,GAMtE,OALAzN,KAAKyX,SAAS/N,EAAImX,EAAI,GACtB7gB,KAAKyX,SAAS9N,EAAIkX,EAAI,GACtB7gB,KAAKyX,SAAS7N,EAAIiX,EAAI,GAEtB7gB,KAAKqiB,YAAYzI,IACV,GAMR5Z,KAAK8iB,QAAU,SAAUnV,EAAGE,EAAGJ,EAAGmM,GAEjC,OADAzX,QAAQC,KAAK,4DAA8DhC,EAAIiC,SACxErC,KAAK0X,SAAS/J,EAAGE,EAAGJ,EAAG,KAAMmM,IAMrC5Z,KAAK+iB,QAAU,SAAUrZ,EAAGC,EAAGC,EAAGgQ,GAEjC,OADAzX,QAAQC,KAAK,4DAA8DhC,EAAIiC,SACxErC,KAAKoY,SAAS1O,EAAGC,EAAGC,EAAG,KAAMgQ,IAIrC5Z,KAAKgjB,WAAa,SAAUtgB,EAAKkX,GAChC,IAAK5Z,KAAKyhB,UAA2B,KAAf/e,EAAIH,OAIzB,OAFAvC,KAAKijB,oBAAoB,MACzBjjB,KAAKkjB,qBAAqB,KACnB,EAGR,IAAIhU,EAAQ9O,EAAI4N,iBAAiBtL,GACjC,QAAKwM,IAG6B,QAA9BlP,KAAKmO,OAAOvM,gBACf5B,KAAKgY,WAAW9I,EAAMf,QACjB/N,EAAIgP,cAAcpP,KAAKiY,eAC3B/I,EAAMhB,KAAK,GAAK,IAGlBlO,KAAKoY,SACJlJ,EAAMhB,KAAK,GACXgB,EAAMhB,KAAK,GACXgB,EAAMhB,KAAK,GACXgB,EAAMhB,KAAK,GACX0L,IAEM,IAIR5Z,KAAK+J,SAAW,SAAUoE,GAIzB,YAHezM,IAAXyM,IACHA,EAASnO,KAAKiY,aAEP9J,EAAOvM,eACd,IAAK,MAAO,OAAO5B,KAAK8gB,cACxB,IAAK,OAAQ,OAAO9gB,KAAKmjB,eACzB,IAAK,MAAO,OAAOnjB,KAAKojB,cACxB,IAAK,OAAQ,OAAOpjB,KAAKqjB,eAE1B,OAAO,GAIRrjB,KAAK8gB,YAAc,WAClB,OAAO1gB,EAAIqJ,SACVzJ,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,IAKhB5J,KAAKmjB,aAAe,WACnB,OAAO/iB,EAAI8J,UACVlK,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,EACd5J,KAAKyX,SAAStN,IAKhBnK,KAAKojB,YAAc,WAClB,OAAOhjB,EAAIgK,SACVpK,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,IAKhB5J,KAAKqjB,aAAe,WACnB,OAAOjjB,EAAIiK,UACVrK,KAAKyX,SAAS/N,EACd1J,KAAKyX,SAAS9N,EACd3J,KAAKyX,SAAS7N,EACd5J,KAAKyX,SAAStN,IAKhBnK,KAAKsjB,YAAc,WAClB,MACC,KAAQtjB,KAAKyX,SAAS/N,EACtB,KAAQ1J,KAAKyX,SAAS9N,EACtB,KAAQ3J,KAAKyX,SAAS7N,GAKxB5J,KAAKujB,SAAW,WACf,OAAOnjB,EAAIyP,sBAAsB7P,KAAKqjB,gBAAgB/T,QAIvDtP,KAAKsf,UAAY,WAChB,OAAOtf,KAAKujB,WAAWjE,aAIxBtf,KAAKwjB,aAAe,WACnB,OAAOpjB,EAAIO,IAAIiK,WAAW5K,KAAKqjB,iBAIhCrjB,KAAKyjB,QAAU,WACd,OAAOzjB,KAAKsjB,cAAgB,OAI7BtjB,KAAKsY,KAAO,WACP0I,MAmVJ5gB,EAAIsI,YAAYiS,EAAKxX,cAAe/C,EAAIO,IAAI2f,iBAC5ClgB,EAAIwR,OAAOsB,KAAKuN,WAAWrc,YAAYhE,EAAIwR,OAAOsB,aAC3C9S,EAAIwR,OAAOC,QA/UnB7R,KAAK2W,KAAO,WACXwE,KAIDnb,KAAKoiB,OAAS,WACTpB,KACH7F,KAKFnb,KAAKiY,UAAY,WAChB,OAAOjY,KAAK0jB,gBAIb1jB,KAAKgY,WAAa,SAAU7J,GAC3BnO,KAAK0jB,eAAiBvV,EAAOvM,eAI9B5B,KAAK4T,gBAAkB,WACtB,MAA0B,SAAtB5T,KAAKka,aAEuB,QAA9Bla,KAAKmO,OAAOvM,eACZxB,EAAIgP,cAAcpP,KAAKiY,mBACRvW,IAAf1B,KAAKihB,YACiBvf,IAAtB1B,KAAKqhB,aAIArhB,KAAKka,cAIbla,KAAK2jB,kBAAoB,SAAUjhB,GAC7B1C,KAAKgjB,WAAWtgB,IAEpB1C,KAAKqiB,eAKPriB,KAAK4jB,kBAAoB,SAAUlhB,GAC7B1C,KAAK0X,SAAS,KAAM,KAAM,KAAM9I,WAAWlM,KAE/C1C,KAAKqiB,eAKPriB,KAAKqiB,YAAc,SAAUzI,GAC5B,IAAIiK,EAAW7jB,KAAK+J,WAChB6O,EAAM5Y,KAAKiY,YAaf,GAVA7X,EAAI4F,YAAYhG,KAAKmD,cAAe,gBAAiB0gB,GAE/CjK,EAAQxZ,EAAIwZ,MAAMC,aAAe7Z,KAAKohB,eAC/B,QAARxI,GAAyB,SAARA,IACf5Y,KAAK2hB,YAAakC,EAAWA,EAASjiB,eACtC5B,KAAK0hB,OAAQmC,EAAWA,EAAS3b,QAAQ,KAAM,MAErDlI,KAAKkjB,qBAAqBW,MAGrBjK,EAAQxZ,EAAIwZ,MAAME,aAAe9Z,KAAKqhB,aAAc,CACzD,IAAIyC,EAAWja,KAAKC,MAAwB,IAAlB9J,KAAKyX,SAAStN,GAAW,IACnDnK,KAAK+jB,qBAAqBD,GAGrBlK,EAAQxZ,EAAIwZ,MAAMG,eAAiB/Z,KAAKshB,kBAI5ClhB,EAAIiE,YAAYrE,KAAKshB,iBACpBlhB,EAAIkE,SAAStE,KAAKshB,kBAAoBlhB,EAAIqE,cAAczE,KAAKshB,kBAEjDthB,KAAKia,gBAGnBja,KAAKijB,oBAAoBjjB,KAAKqjB,iBAG3BrC,MACHb,IACAC,IACAC,MAKFrgB,KAAKijB,oBAAsB,SAAU/T,GACpC,GAAKlP,KAAKshB,eAAV,CAIA,IAAI/P,EAAW,KACX9B,EAAQ,MAEXrP,EAAIiE,YAAYrE,KAAKshB,iBACpBlhB,EAAIkE,SAAStE,KAAKshB,kBAAoBlhB,EAAIqE,cAAczE,KAAKshB,mBAE9D/P,EAAWvR,KAAKia,gBAChBxK,EAAQzP,KAAKuhB,aAGd,IAAIyC,EAAc,GAElB,GAAK9U,EASE,CAEN8U,EAAY5gB,KAAK,CAChB6gB,MAAO7jB,EAAIkR,wBACVpC,EACAqC,EACA9B,EAAQA,EAAQrP,EAAIO,IAAIuP,iBAAiB3O,OAAS,MAEnDgQ,SAAU,WACV2S,KAAM,OACNC,OAAQ5S,EAAW,WAAa,SAChC6S,OAAQ,gBAIT,IAAIC,EAAUjkB,EAAIyP,sBACjB,gBACA0B,EAAW,CAAC3F,KAAO,QAAS6F,MAAQ,QAAQF,GAAY,KACxD9B,GACA,GAEDuU,EAAY5gB,KAAK,CAChB6gB,MAAO,QAAWI,EAAQ/U,OAAOgQ,YAAc,KAC/C/N,UAAWA,GAAY,QAAU,OACjC2S,KAAMG,EAAQ5U,MAAQ,MAAQ4U,EAAQ3U,OAAS,KAC/CyU,OAAQ5S,EAAW,WAAa,SAChC6S,OAAQ,qBAjCTJ,EAAY5gB,KAAK,CAChB6gB,MAAO,OACP1S,SAAU,WACV2S,KAAM,OACNC,OAAQ,YACRC,OAAQ,gBAuCV,IAPA,IAAIE,EAAK,CACRL,MAAO,GACP1S,SAAU,GACV2S,KAAM,GACNC,OAAQ,GACRC,OAAQ,IAEA9iB,EAAI,EAAGA,EAAI0iB,EAAYziB,OAAQD,GAAK,EAC5CgjB,EAAGL,MAAM7gB,KAAK4gB,EAAY1iB,GAAG2iB,OAC7BK,EAAG/S,SAASnO,KAAK4gB,EAAY1iB,GAAGiQ,UAChC+S,EAAGJ,KAAK9gB,KAAK4gB,EAAY1iB,GAAG4iB,MAC5BI,EAAGH,OAAO/gB,KAAK4gB,EAAY1iB,GAAG6iB,QAC9BG,EAAGF,OAAOhhB,KAAK4gB,EAAY1iB,GAAG8iB,QAI/B,IAAIG,EAAM,CACTC,mBAAoBF,EAAGL,MAAMjZ,KAAK,MAClCyZ,sBAAuBH,EAAG/S,SAASvG,KAAK,MACxC0Z,kBAAmBJ,EAAGJ,KAAKlZ,KAAK,MAChC2Z,oBAAqBL,EAAGH,OAAOnZ,KAAK,MACpC4Z,oBAAqBN,EAAGF,OAAOpZ,KAAK,OAErC5K,EAAI4I,SAAShJ,KAAKshB,eAAgBiD,EAAKvkB,KAAK4hB,YAI5C,IAAI7N,EAAU,CACbnI,KAAM,KACN6F,MAAO,MAEJF,IACHwC,EAAQxC,GAAavR,KAAKuhB,YAAcvhB,KAAKwhB,eAAkB,MAG5D+C,EAAM,CACTM,eAAgB9Q,EAAQnI,KACxBkZ,gBAAiB/Q,EAAQtC,OAE1BrR,EAAI4I,SAAShJ,KAAKshB,eAAgBiD,EAAKvkB,KAAK4hB,YAAY,KAIzD5hB,KAAKkjB,qBAAuB,SAAUxgB,GACjC1C,KAAKohB,eACgC,UAApChhB,EAAI6D,SAASjE,KAAKohB,cACrBphB,KAAKohB,aAAa1c,MAAQhC,EAE1B1C,KAAKohB,aAAatC,UAAYpc,IAMjC1C,KAAK+jB,qBAAuB,SAAUrhB,GACjC1C,KAAKqhB,eACgC,UAApCjhB,EAAI6D,SAASjE,KAAKqhB,cACrBrhB,KAAKqhB,aAAa3c,MAAQhC,EAE1B1C,KAAKqhB,aAAavC,UAAYpc,IAMjC1C,KAAKob,4BAA8B,WAClC,IAAIpb,KAAK+kB,yBAAT,CACA/kB,KAAK+kB,0BAA2B,EAEhC,IAAI5kB,EAAMH,KAAKmD,cACf,EAAG,CAGF,IAAI6hB,EAAY5kB,EAAIyI,aAAa1I,GAC7B6kB,EAAUzT,UAAiD,UAArCyT,EAAUzT,SAAS3P,gBAC5C5B,KAAKiS,OAAQ,GAGV9R,IAAQH,KAAKmD,gBAMX/C,EAAIuF,QAAQxF,EAAK,uBACrBA,EAAIO,iBAAiB,SAAUN,EAAImW,gBAAgB,GACnDnW,EAAIqD,QAAQtD,EAAK,qBAAqB,YAG/BA,EAAMA,EAAIsgB,aAAqC,SAAtBrgB,EAAI6D,SAAS9D,MAIjDH,KAAKoW,QAAU,WACVpW,KAAK6hB,aACR7hB,KAAKsY,QAKPtY,KAAKilB,aAAe,SAAUnhB,GAC7B9D,KAAKyU,QAAU3Q,EACf9D,KAAK+U,SAAW3U,EAAIyO,kBAAkB/K,GACtC9D,KAAKmY,wBAA0B/X,EAAI+O,wBAAwBnP,KAAK+U,WAuqB7D3U,EAAIO,IAAIukB,QAEX,IAAK,IAAI3C,KAAOniB,EAAIO,IAAIukB,QACvB,GAAI9kB,EAAIO,IAAIukB,QAAQ3f,eAAegd,GAClC,IACC3H,EAAU2H,EAAKniB,EAAIO,IAAIukB,QAAQ3C,IAC9B,MAAO9f,GACRN,QAAQC,KAAKK,GASjB,IAAI0iB,EAAa,GAEb7iB,EAAK8iB,SACmB,iBAAhB9iB,EAAK8iB,OACfD,EAAa7iB,EAAK8iB,OAAOjd,MAAM,OACrB2C,MAAMkE,QAAQ1M,EAAK8iB,QAC7BD,EAAa7iB,EAAK8iB,OAAOC,QAEzBljB,QAAQC,KAAK,+BAKwB,IAAnC+iB,EAAW3gB,QAAQ,YACtB2gB,EAAW/hB,KAAK,WAKjB,IAAK,IAAI9B,EAAI6jB,EAAW5jB,OAAS,EAAGD,GAAK,EAAGA,GAAK,EAAG,CACnD,IAAIgkB,EAAOH,EAAW7jB,GACtB,GAAKgkB,EAGL,GAAKllB,EAAIO,IAAI4kB,QAAQhgB,eAAe+f,IAIpC,IAAK,IAAI/C,KAAOniB,EAAIO,IAAI4kB,QAAQD,GAC/B,GAAIllB,EAAIO,IAAI4kB,QAAQD,GAAM/f,eAAegd,GACxC,IACC3H,EAAU2H,EAAKniB,EAAIO,IAAI4kB,QAAQD,GAAM/C,IACpC,MAAO9f,GACRN,QAAQC,KAAKK,SARfN,QAAQC,KAAK,qBAAsBkjB,GAgBrC,IAAIE,EAAgB,CAEnB,UAED,IAAK,IAAIjD,KAAOjgB,EACf,GAAIA,EAAKiD,eAAegd,KACa,IAAhCiD,EAAchhB,QAAQ+d,GACzB,IACC3H,EAAU2H,EAAKjgB,EAAKigB,IACnB,MAAO9f,GACRN,QAAQC,KAAKK,GAoBjB,QAPuBf,IAAnB1B,KAAKugB,UACRvgB,KAAKugB,UAAYxgB,EAAOH,SAAS4gB,KAGjCxgB,KAAKugB,UAAYngB,EAAIY,KAAKhB,KAAKugB,YAG3BvgB,KAAKugB,UACT,MAAM,IAAIzgB,MAAM,+DAOjB,GAFAE,KAAKmD,cAAgB/C,EAAIY,KAAKmC,IAEzBnD,KAAKmD,cAAe,CAExB,GAA6B,iBAAlBA,GAA8B,qBAAqBsiB,KAAKtiB,GAGlE,MAAM,IAAIrD,MAAM,OADCqD,EACsB,2CADtBA,EACkF,gCAGpG,MAAM,IAAIrD,MAAM,4DAGjB,GAAIE,KAAKmD,cAAc9C,SAAWL,KAAKmD,cAAc9C,mBAAmBD,EAAIO,IAC3E,MAAM,IAAIb,MAAM,kDAajB,GARAE,KAAKmD,cAAc9C,QAAUL,KAC7BI,EAAImI,SAASvI,KAAKmD,cAAe/C,EAAIO,IAAIoB,WAGzC3B,EAAIG,UAAU6C,KAAKpD,MAIfI,EAAIkE,SAAStE,KAAKmD,iBAEyB,WAA1CnD,KAAKmD,cAAcxB,KAAKC,gBAG3B5B,KAAKmD,cAAcxB,KAAO,UAGvBvB,EAAIqE,cAAczE,KAAKmD,gBAAgB,CAK1C/C,EAAI8D,eAAelE,KAAKmD,eAGxBnD,KAAKmD,cAAc+Z,YAAYnd,EAAOH,SAASqgB,eAAe,MAG9D,IAAI+E,EAAY5kB,EAAIyI,aAAa7I,KAAKmD,gBACnByL,WAAWoW,EAAU,eAAiB,GACtChlB,KAAKuhB,aACvBnhB,EAAI4I,SAAShJ,KAAKmD,cAAe,CAChCuiB,YAAa1lB,KAAKuhB,YAAc,MAC9BvhB,KAAK4hB,YAsCX,QAhC0BlgB,IAAtB1B,KAAKohB,aACJhhB,EAAIiE,YAAYrE,KAAKmD,iBAExBnD,KAAKohB,aAAephB,KAAKmD,eAKM,OAAtBnD,KAAKohB,eAIfphB,KAAKohB,aAAehhB,EAAIY,KAAKhB,KAAKohB,eAI/BphB,KAAKqhB,eACRrhB,KAAKqhB,aAAejhB,EAAIY,KAAKhB,KAAKqhB,oBAIP3f,IAAxB1B,KAAKshB,eACRthB,KAAKshB,eAAiBthB,KAAKmD,cAEO,OAAxBnD,KAAKshB,iBAIfthB,KAAKshB,eAAiBlhB,EAAIY,KAAKhB,KAAKshB,iBAIjCthB,KAAKohB,cAAgBhhB,EAAIiE,YAAYrE,KAAKohB,cAAe,CAI5D,IAAIuE,EAAyB,CAC5BxE,QAASnhB,KAAKohB,aAAawE,SAE5B5lB,KAAKohB,aAAawE,QAAU,KAE5B5lB,KAAKohB,aAAa1gB,iBAAiB,WA3RpC,SAAyB0G,GACC,UAArBhH,EAAIsH,SAASN,KACZuT,EAAKyG,cACRzG,EAAKgJ,kBAAkBhJ,EAAKyG,aAAa1c,OAE1CiW,EAAKvE,cAsRwD,GAC9DpW,KAAKohB,aAAa1gB,iBAAiB,UAxQpC,SAAwB0G,GACvB,IAAIhH,EAAIuF,QAAQyB,EAAI,YAApB,CAIA,IAAIye,EAASlL,EAAKyG,aAAa1c,MAE/BiW,EAAKgJ,kBAAkBhJ,EAAKyG,aAAa1c,OAEzCtE,EAAIoV,gBAAgBmF,EAAM,YAEtBA,EAAKyG,aAAa1c,QAAUmhB,GAE/BzlB,EAAIqH,kBAAkBkT,EAAKyG,aAAc,UAAU,GAAM,OA2PE,GAC5DphB,KAAKohB,aAAa1gB,iBAAiB,SAlOpC,SAAuB0G,GAClBhH,EAAIuF,QAAQyB,EAAI,cAIhBuT,EAAKyG,cACRzG,EAAKqI,WAAWrI,EAAKyG,aAAa1c,MAAOtE,EAAIwZ,MAAMC,YAGpDzZ,EAAIoV,gBAAgBmF,EAAM,eAyNgC,GAEtDgL,EAAuBxE,SAC1BnhB,KAAKohB,aAAa1gB,iBAAiB,QAASilB,EAAuBxE,SAAS,GAG7EnhB,KAAKohB,aAAalc,aAAa,eAAgB,OAC/ClF,KAAKohB,aAAalc,aAAa,cAAe,OAC9ClF,KAAKohB,aAAalc,aAAa,iBAAkB,OACjDlF,KAAKohB,aAAalc,aAAa,cAAc,GAI1ClF,KAAKqhB,cAAgBjhB,EAAIiE,YAAYrE,KAAKqhB,gBAC7CrhB,KAAKqhB,aAAa3gB,iBAAiB,WAjSpC,SAAyB0G,GACC,UAArBhH,EAAIsH,SAASN,KACZuT,EAAK0G,cACR1G,EAAKiJ,kBAAkBjJ,EAAK0G,aAAa3c,OAE1CiW,EAAKvE,cA4RwD,GAC9DpW,KAAKqhB,aAAa3gB,iBAAiB,UAtQpC,SAAwB0G,GACvB,IAAIhH,EAAIuF,QAAQyB,EAAI,YAApB,CAIA,IAAIye,EAASlL,EAAK0G,aAAa3c,MAE/BiW,EAAKiJ,kBAAkBjJ,EAAK0G,aAAa3c,OAEzCtE,EAAIoV,gBAAgBmF,EAAM,YAG1Bva,EAAIqH,kBAAkBkT,EAAKyG,aAAc,UAAU,GAAM,GAErDzG,EAAK0G,aAAa3c,QAAUmhB,GAE/BzlB,EAAIqH,kBAAkBkT,EAAK0G,aAAc,UAAU,GAAM,OAsPE,GAC5DrhB,KAAKqhB,aAAa3gB,iBAAiB,SAlOpC,SAAuB0G,GAClBhH,EAAIuF,QAAQyB,EAAI,cAIhBuT,EAAK0G,cACR1G,EAAKjD,SAAS,KAAM,KAAM,KAAM9I,WAAW+L,EAAK0G,aAAa3c,OAAQtE,EAAIwZ,MAAME,YAGhF1Z,EAAIoV,gBAAgBmF,EAAM,WAG1Bva,EAAIqH,kBAAkBkT,EAAKyG,aAAc,SAAS,GAAM,OAsNE,GAE1DphB,KAAKqhB,aAAanc,aAAa,eAAgB,OAC/ClF,KAAKqhB,aAAanc,aAAa,cAAe,OAC9ClF,KAAKqhB,aAAanc,aAAa,iBAAkB,OACjDlF,KAAKqhB,aAAanc,aAAa,cAAc,IAK9C,IAAI4gB,EAAY,cAEGpkB,IAAf1B,KAAK0E,MACRohB,EAAY9lB,KAAK0E,MACP1E,KAAKohB,mBAA4C1f,IAA5B1B,KAAKohB,aAAa1c,QACjDohB,EAAY9lB,KAAKohB,aAAa1c,OAK/B,IAAIqhB,OAAYrkB,EAYhB,QAVmBA,IAAf1B,KAAKihB,MACR8E,EAAa,GAAG/lB,KAAKihB,MACXjhB,KAAKqhB,mBAA4C3f,IAA5B1B,KAAKqhB,aAAa3c,QACjDqhB,EAAY/lB,KAAKqhB,aAAa3c,OAK/B1E,KAAK0jB,eAAiB,KAElB,CAAC,OAAQ,OAAOlf,QAAQxE,KAAKmO,OAAOvM,gBAAkB,EAAG,CAE5D,IAAIsN,EAAQ9O,EAAI4N,iBAAiB8X,GACjC9lB,KAAK0jB,eAAiBxU,EAAQA,EAAMf,OAAS,WAG7CnO,KAAK0jB,eAAiB1jB,KAAKmO,OAAOvM,cAKnC5B,KAAK2jB,kBAAkBmC,QAOLpkB,IAAdqkB,GACH/lB,KAAK4jB,kBAAkBmC,MAkBtBplB,IAAIoB,UAAY,UAIpB3B,EAAIO,IAAI2f,gBAAkB,iBAK1BlgB,EAAIO,IAAImC,WAAY,EAIpB1C,EAAIO,IAAI4kB,QAAU,GAGlBnlB,EAAIO,IAAI4kB,QAAiB,QAAI,GAE7BnlB,EAAIO,IAAI4kB,QAAe,MAAI,CAC1BpH,gBAAiB,sBACjBE,mBAAoB,sBACpBuB,YAAa,iBAEdxf,EAAIO,IAAI4kB,QAAc,KAAI,CACzBpH,gBAAiB,mBACjBE,mBAAoB,sBACpBuB,YAAa,uBAGdxf,EAAIO,IAAI4kB,QAAe,MAAI,CAAE9V,MAAM,IAAKC,OAAO,IAAKqE,QAAQ,GAAIL,WAAW,GAAIsB,YAAY,GAC3F5U,EAAIO,IAAI4kB,QAAgB,OAAI,CAAE9V,MAAM,IAAKC,OAAO,IAAKqE,QAAQ,GAAIL,WAAW,GAAIsB,YAAY,IAC5F5U,EAAIO,IAAI4kB,QAAe,MAAI,CAAE9V,MAAM,IAAKC,OAAO,IAAKqE,QAAQ,GAAIL,WAAW,GAAIsB,YAAY,IAE3F5U,EAAIO,IAAI4kB,QAAc,KAAI,CAAE/Q,YAAY,EAAGjB,mBAAmB,EAAG6B,mBAAmB,GACpFhV,EAAIO,IAAI4kB,QAAe,MAAI,CAAE/Q,YAAY,EAAGjB,mBAAmB,EAAG6B,mBAAmB,GAIrFhV,EAAIO,IAAIke,iBAAmB,EAG3Bze,EAAIO,IAAIyP,eAAiB,EACzBhQ,EAAIO,IAAI2P,iBAAmB,UAC3BlQ,EAAIO,IAAI6P,iBAAmB,UAG3BpQ,EAAIO,IAAIuP,iBAAmB,CAAC,wBAAyB,yBAIrD9P,EAAIO,IAAIC,KAAO,WACd,IAAIR,EAAIE,YAgBR,IAXAP,EAAOH,SAASc,iBAAiB,YAAaN,EAAIoW,qBAAqB,GACvEzW,EAAOH,SAASc,iBAAiB,QAASN,EAAI+V,iBAAiB,GAC/DpW,EAAOW,iBAAiB,SAAUN,EAAIiW,gBAAgB,GACtDtW,EAAOW,iBAAiB,SAAUN,EAAIkW,gBAAgB,GAGtDlW,EAAIO,IAAIqlB,UAER5lB,EAAIE,aAAc,EAGXF,EAAII,WAAWe,QACVnB,EAAII,WAAWylB,OAC1B5f,IAMFjG,EAAIO,IAAIqlB,QAAU,SAAUjlB,GAC3B,IAAIuhB,GAAU,EAEd,IACCliB,EAAIS,kBAAkB,iBAAkBE,GACvC,MAAO0B,GACR6f,GAAU,EACVngB,QAAQC,KAAKK,GAId,GAAIrC,EAAIO,IAAIU,YACX,IACCjB,EAAIS,kBAEF,SAAWT,EAAIO,IAAIU,YAAnB,YACYjB,EAAIO,IAAIU,YAErBN,GAEA,MAAO0B,IAGV,OAAO6f,GAMRliB,EAAIO,IAAIulB,MAAQ,SAAU7f,GACzB,MAAoB,mBAATA,GACVlE,QAAQC,KAAK,mCACN,IAGJhC,EAAIE,YACP+F,IAEAjG,EAAII,WAAW4C,KAAKiD,IAEd,IASRjG,EAAIO,IAAIkV,QAAU,SAAUD,GAC3B,IAAIuQ,EAAa,WAChB/lB,EAAIuV,cAAcC,IAGfxV,EAAIE,YACP6lB,IAEA/lB,EAAIO,IAAIulB,MAAMC,IAMhB/lB,EAAIO,IAAI2X,KAAO,WACVlY,EAAIwR,QAAUxR,EAAIwR,OAAOC,OAC5BzR,EAAIwR,OAAOC,MAAMyG,QAMnBlY,EAAIO,IAAIoe,WAAa,SAAU7P,GAK9B,OAJKA,IACJA,EAAQ,iBAEK9O,EAAIyP,sBAAsBX,GACzBI,OAAOgQ,aAKvBlf,EAAIO,IAAIiK,WAAa,SAAUsE,GAC9B,IAAI8U,EAAc,GAGlBA,EAAY5gB,KAAKhD,EAAIkR,wBAAwBpC,IAG7C,IAAImV,EAAUjkB,EAAIyP,wBAOlB,OANAmU,EAAY5gB,KAAK,CAChB,QAAWihB,EAAQ/U,OAAOgQ,YAAc,KACxC,WACA,UACCtU,KAAK,MAEAgZ,EAAYhZ,KAAK,OAYzB5K,EAAIO,IAAIukB,QAAU,GAUlB9kB,EAAIO,IAAIU,YAAc,UAMtBjB,EAAIO,IAAIylB,mBAAqB,WAE5B,OADAjkB,QAAQuT,MAAM,qGAAuGtV,EAAIiC,UAClH,GAIRjC,EAAIK,WAGGL,EAAIO,KAaX,YAP8B,IAAnBZ,EAAOM,UACjBN,EAAOM,QAAUN,EAAOsmB,QAAUhmB,GAM5BA,OAUOimB,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqB9kB,IAAjB+kB,EACH,OAAOA,EAAa9mB,QAGrB,IAAIH,EAAS8mB,EAAyBE,GAAY,CAGjD7mB,QAAS,IAOV,OAHAL,EAAoBknB,GAAUvb,KAAKzL,EAAOG,QAASH,EAAQA,EAAOG,QAAS4mB,GAGpE/mB,EAAOG,QAOd4mB,EAAoBhiB,EAAK/E,IACxB,IAAI0b,EAAS1b,GAAUA,EAAOknB,WAC7B,IAAOlnB,EAAiB,QACxB,IAAM,EAEP,OADA+mB,EAAoBI,EAAEzL,EAAQ,CAAE/Q,EAAG+Q,IAC5BA,GAORqL,EAAoBI,EAAI,CAAChnB,EAASinB,KACjC,IAAI,IAAIC,KAAOD,EACXL,EAAoBO,EAAEF,EAAYC,KAASN,EAAoBO,EAAEnnB,EAASknB,IAC5E/hB,OAAOC,eAAepF,EAASknB,EAAK,CAAEE,YAAY,EAAM/hB,IAAK4hB,EAAWC,MAQ3EN,EAAoBO,EAAI,CAAC1hB,EAAKI,IAAUV,OAAOiG,UAAUxF,eAAe0F,KAAK7F,EAAKI,GAM7F,MACA,aAiDA,IAAIwhB,EAAY,GAUhB,SAASC,IACHD,EAAUE,iBAAmBC,KAAKC,YACpC1U,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,QAQlD,MAAMyI,EAAS,CAAC,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAGhDC,EAAa,CACjB,GACA,GACA,IACA,IACA,KACA,QACA,QACA,OACA,OACA,MACA,MACA,MACA,QACA,SACA,SACA,cACA,UACA,SACA,YACA,UACA,WACA,SACA,WACA,YACA,YACA,kBAIIC,EAAwB,CAC5B,GACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,MACA,MACA,KACA,OAMF,IAAIC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAOAC,EA1BAC,EAAqB,GAErBC,EAAwB,GACxBC,EAAuB,GAOvBC,EAAkB,GAqBtB,MAAMC,EAAgB,SAChBC,EAAgB,SAMhBC,EAAa,OACbC,EAAc,QACdC,EAAe,SACfC,EAAe,SACfC,EAAY,MACZC,EAAe,SACfC,EAAa,OACbC,EAAa,OACbC,EAAc,QACdC,EAAkB,CACtBH,EACAN,EACAC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Cb,OACA,cACA,CACE,+BACA,8BACA,6CAEF,qGACA,GACA,WACE/lB,IAAY,KAKhBnD,MAAO,IAAIkpB,GACT,OACA,WACA,CACE,uBACA,SACA,cACA,4BACA,sBACA,wBAEF,yCACA,GACA,WACET,QAGJ3oB,cAAe,IAAIopB,GACjB,OACA,WACA,CAAC,aAAc,aAAc,cAC7B,oIACA,GACA,WACET,QAGJnoB,eAAgB,IAAI4oB,GAClB,OACA,WACA,CAAC,4BAA6B,mBAC9B,qDACA,GACA,WACET,QAGJpoB,YAAa,IAAIopB,GACf,WACA,WACA,2BACA,8KACA,EACA,WAEFxoB,WAAY,IAAIioB,GACd,OACA,WACA,CAAC,0BAA2B,uBAC5B,0BACA,GAEFjG,aAAc,IAAIiG,GAChB,OACA,WACA,CAAC,oBAAqB,oBACtB,mEACA,GACA,WAlU6B,IAA3B/tB,EAAU8nB,aAAoB3nB,KAAKmd,QAAU1a,EAC5CzC,KAAKmd,QAAU1b,EAAgB0b,WAqUpCpK,cAAe,IAAI6a,GACjB,OACA,WACA,CAAC,yBAA0B,mBAC3B,sKACA,GAIFxe,YAAa,IAAIwe,GACf,OACA,UACA,CAAC,uBAAwB,uBACzB,yBACA,GACA,WACE1e,QAGJ6R,sBAAuB,IAAI6M,GACzB,OACA,UACA,CAAC,2BAA4B,sBAC7B,0KACA,GAEFzM,aAAc,IAAIyM,GAChB,OACA,UACA,CACE,mBACA,kBACA,0BACA,gCAEF,sGACA,GAEF3M,cAAe,IAAI2M,GACjB,OACA,UACA,CAAC,mBAAoB,mBACrB,sJACA,GAEF9M,oBAAqB,IAAIqN,GACvB,WACA,UACA,oCACA,wMACA,EACA1pB,KAEF7C,WAAY,IAAIqsB,GACd,SACA,UACA,6HAEFpsB,YAAa,IAAIosB,GACf,SACA,UACA,yGAEFnsB,aAAc,IAAImsB,GAChB,SACA,UACA,qHAEFlsB,aAAc,IAAIksB,GAChB,SACA,UACA,4HAEFjsB,UAAW,IAAIisB,GACb,SACA,UACA,gHAEFhsB,aAAc,IAAIgsB,GAChB,SACA,UACA,8HAEF/rB,WAAY,IAAI+rB,GACd,SACA,UACA,w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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file diff --git a/src/Cache/Stats/MissingUpgrades.js b/src/Cache/Stats/MissingUpgrades.js index 6cf4235..73975b8 100644 --- a/src/Cache/Stats/MissingUpgrades.js +++ b/src/Cache/Stats/MissingUpgrades.js @@ -1,5 +1,5 @@ /* eslint-disable no-unused-vars */ -import { crateMissing } from '../../Disp/MenuSections/CreateMissingUpgrades'; +import { crateMissing } from '../../Disp/MenuSections/Statistics/CreateMissingUpgrades'; import { CacheMissingUpgrades, CacheMissingUpgradesCookies, diff --git a/src/Disp/MenuSections/AddMenus.js b/src/Disp/MenuSections/AddMenus.js index 90a5e80..dad9e4a 100644 --- a/src/Disp/MenuSections/AddMenus.js +++ b/src/Disp/MenuSections/AddMenus.js @@ -1,6 +1,6 @@ import { CMOptions } from '../../Config/VariablesAndData'; -import AddMenuStats from './AddStatsPage'; -import AddMenuInfo from './InfoPage'; +import AddMenuStats from './Statistics/AddStatsPage'; +import AddMenuInfo from './Info/InfoPage'; import AddMenuPref from './Settings/SettingsPage'; /** diff --git a/src/Disp/MenuSections/InfoPage.js b/src/Disp/MenuSections/Info/InfoPage.js similarity index 86% rename from src/Disp/MenuSections/InfoPage.js rename to src/Disp/MenuSections/Info/InfoPage.js index 3c1cd3b..44f3e25 100644 --- a/src/Disp/MenuSections/InfoPage.js +++ b/src/Disp/MenuSections/Info/InfoPage.js @@ -1,8 +1,8 @@ /** Functions related to the Stats page */ -import { ToggleHeader } from '../../Config/ToggleSetting'; -import { CMOptions } from '../../Config/VariablesAndData'; -import { LatestReleaseNotes, ModDescription } from '../../Data/Moddata'; +import { ToggleHeader } from '../../../Config/ToggleSetting'; +import { CMOptions } from '../../../Config/VariablesAndData'; +import { LatestReleaseNotes, ModDescription } from '../../../Data/Moddata'; /** * This function adds stats created by CookieMonster to the stats page diff --git a/src/Disp/MenuSections/Prompt.js b/src/Disp/MenuSections/Prompt.js index 0c18a29..b481990 100644 --- a/src/Disp/MenuSections/Prompt.js +++ b/src/Disp/MenuSections/Prompt.js @@ -1,4 +1,3 @@ -/* eslint-disable no-return-assign */ /** Creates a Prompt similar to the base game without some of the stuff breaking them */ export default function CookieMonsterPrompt(content, options) { Game.promptWrapL.className = 'framed'; diff --git a/src/Disp/MenuSections/AddStatsPage.js b/src/Disp/MenuSections/Statistics/AddStatsPage.js similarity index 92% rename from src/Disp/MenuSections/AddStatsPage.js rename to src/Disp/MenuSections/Statistics/AddStatsPage.js index ddede57..8fc65fa 100644 --- a/src/Disp/MenuSections/AddStatsPage.js +++ b/src/Disp/MenuSections/Statistics/AddStatsPage.js @@ -3,19 +3,19 @@ import { AddMissingUpgrades } from './CreateMissingUpgrades'; import * as CreateSections from './CreateStatsSections'; import * as CreateElements from './CreateDOMElements'; -import * as GameData from '../../Data/Gamedata'; -import { CMOptions } from '../../Config/VariablesAndData'; +import * as GameData from '../../../Data/Gamedata'; +import { CMOptions } from '../../../Config/VariablesAndData'; import { CacheAverageClicks, CacheWrinklersFattest, CacheWrinklersNormal, CacheWrinklersTotal, -} from '../../Cache/VariablesAndData'; -import PopAllNormalWrinklers from '../HelperFunctions/PopWrinklers'; -import { ClickTimes, CookieTimes } from '../VariablesAndData'; -import GetCPS from '../HelperFunctions/GetCPS'; -import { Beautify } from '../BeautifyAndFormatting/BeautifyFormatting'; +} from '../../../Cache/VariablesAndData'; +import PopAllNormalWrinklers from '../../HelperFunctions/PopWrinklers'; +import { ClickTimes, CookieTimes } from '../../VariablesAndData'; +import GetCPS from '../../HelperFunctions/GetCPS'; +import { Beautify } from '../../BeautifyAndFormatting/BeautifyFormatting'; /** * This function adds stats created by CookieMonster to the stats page diff --git a/src/Disp/MenuSections/CreateDOMElements.js b/src/Disp/MenuSections/Statistics/CreateDOMElements.js similarity index 96% rename from src/Disp/MenuSections/CreateDOMElements.js rename to src/Disp/MenuSections/Statistics/CreateDOMElements.js index bafd0da..ae36721 100644 --- a/src/Disp/MenuSections/CreateDOMElements.js +++ b/src/Disp/MenuSections/Statistics/CreateDOMElements.js @@ -1,8 +1,8 @@ /** Section: Functions related to the creation of basic DOM elements page */ -import { ToggleHeader } from '../../Config/ToggleSetting'; -import { CMOptions } from '../../Config/VariablesAndData'; -import { SimpleTooltipElements } from '../VariablesAndData'; +import { ToggleHeader } from '../../../Config/ToggleSetting'; +import { CMOptions } from '../../../Config/VariablesAndData'; +import { SimpleTooltipElements } from '../../VariablesAndData'; /** * This function creates a header-object for the stats page diff --git a/src/Disp/MenuSections/CreateMissingUpgrades.js b/src/Disp/MenuSections/Statistics/CreateMissingUpgrades.js similarity index 99% rename from src/Disp/MenuSections/CreateMissingUpgrades.js rename to src/Disp/MenuSections/Statistics/CreateMissingUpgrades.js index ad8785c..86e32bd 100644 --- a/src/Disp/MenuSections/CreateMissingUpgrades.js +++ b/src/Disp/MenuSections/Statistics/CreateMissingUpgrades.js @@ -4,7 +4,7 @@ import { CacheMissingUpgrades, CacheMissingUpgradesCookies, CacheMissingUpgradesPrestige, -} from '../../Cache/VariablesAndData'; +} from '../../../Cache/VariablesAndData'; /** * This function creates the missing upgrades sections for prestige, normal and cookie upgrades diff --git a/src/Disp/MenuSections/CreateStatsSections.js b/src/Disp/MenuSections/Statistics/CreateStatsSections.js similarity index 98% rename from src/Disp/MenuSections/CreateStatsSections.js rename to src/Disp/MenuSections/Statistics/CreateStatsSections.js index 8868db8..273d9c1 100644 --- a/src/Disp/MenuSections/CreateStatsSections.js +++ b/src/Disp/MenuSections/Statistics/CreateStatsSections.js @@ -1,7 +1,7 @@ /** Functions to create the individual sections of the Statistics page */ -import * as GameData from '../../Data/Gamedata'; -import { MaxChainCookieReward } from '../../Cache/Stats/ChainCookies'; +import * as GameData from '../../../Data/Gamedata'; +import { MaxChainCookieReward } from '../../../Cache/Stats/ChainCookies'; import { CacheAvgCPSWithChoEgg, CacheCentEgg, @@ -35,17 +35,17 @@ import { CacheSeaSpec, CacheWrathCookiesMult, CacheWrinklersTotal, -} from '../../Cache/VariablesAndData'; -import { CMOptions } from '../../Config/VariablesAndData'; -import ResetBonus from '../../Sim/SimulationEvents/ResetAscension'; +} from '../../../Cache/VariablesAndData'; +import { CMOptions } from '../../../Config/VariablesAndData'; +import ResetBonus from '../../../Sim/SimulationEvents/ResetAscension'; import { Beautify, FormatTime, -} from '../BeautifyAndFormatting/BeautifyFormatting'; +} from '../../BeautifyAndFormatting/BeautifyFormatting'; -import GetCPS from '../HelperFunctions/GetCPS'; -import GetWrinkConfigBank from '../HelperFunctions/GetWrinkConfigBank'; -import { ColourGreen, ColourRed, ColourTextPre } from '../VariablesAndData'; +import GetCPS from '../../HelperFunctions/GetCPS'; +import GetWrinkConfigBank from '../../HelperFunctions/GetWrinkConfigBank'; +import { ColourGreen, ColourRed, ColourTextPre } from '../../VariablesAndData'; import { StatsListing, StatsHeader, StatsMissDisp } from './CreateDOMElements'; /**