diff --git a/CookieMonster.js b/CookieMonster.js index 935e1b5..d063522 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={};const t=["","","M","G","T","P","E","Z","Y"],n=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],i=["","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 a,r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,v,w=[],x=[],T=[],M={};const S="CMText",B="CMBack",P="Blue",E="Green",N="Yellow",O="Orange",F="Red",W="Purple",L="Gray",A="Pink",j="Brown",U=[L,P,E,N,O,F,W,A,j],D=[["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"]],H={};let R,$,I=0,z=-1,V=[],_=1,X=1,Q=1;const q=[10,15,30,60,300,600,900,1800],Y=[1,5,10,15,30],K={Frenzy:N,"Dragon Harvest":j,"Elder frenzy":E,Clot:F,"Click frenzy":P,Dragonflight:A};let J,Z,ee,te,oe,ne,ie,ae={},re="";function le(o,a,r){const l=e.ScaleDecimals+1;if(o===1/0)return"Infinity";if(void 0===o)return"0";if(0===e.Scale)return M.Beautify(o,a);if(Number.isFinite(o)){let s="";if(0===o)return o.toString();if(o>.001&&o=.01&&o=.01&&o=.01&&o315576e4)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 ce(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=E):(n=se(t),o=t>300?F:t>60?O:N),{text:n,color:o}}let de,pe,ue,me,he,ge,fe,Ce,ye,be,ke,Ge,ve,we,xe,Te,Me,Se,Be,Pe,Ee,Ne,Oe,Fe,We,Le,Ae,je,Ue,De,He,Re,$e,Ie,ze,Ve=0,_e=0,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=1,lt=1,st=1,ct=0,dt=0,pt=0,ut=0,mt={},ht={},gt={},ft=0,Ct=0,yt=[0,null],bt=0,kt=0,Gt={},vt={},wt={},xt={},Tt={},Mt=0,St=0,Bt=[],Pt=0,Et=0,Nt=[],Ot=0,Ft=0,Wt=[],Lt=0,At=0,jt=[],Ut=0,Dt=0,Ht={},Rt={},$t=0,It=0,zt=[],Vt={},_t=0,Xt={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]},Qt=[],qt=[],Yt=[],Kt=Game.startDate,Jt=Game.startDate;function Zt(e){let t=0;return Game.dragonAuras[Ae].name!==e&&Game.dragonAuras[je].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[Ae].name&&"Reality Bending"!==Game.dragonAuras[je].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===$e[e]?void 0===t?1:t:$e[e]}function oo(e){const t=qt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Qt.Temple.minigame&&(Qt.Temple.minigame=Game.Objects.Temple.minigame);const t=Qt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(De===t.id)return 2;if(He===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"),Qt.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?X=t:t=X,1===t?t=mt:10===t?t=ht:100===t&&(t=gt),1===Game.buyMode?1===e.BuildColor?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e.Colors[t[o].color]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(mt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=le(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(mt).map((e=>{const t=mt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const t=mt[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;eU.indexOf(t.color)?1:U.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?_=i:i=_,1===i&&(i=mt),10===i&&(i=ht),100===i&&(i=gt),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=le(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=S+i[o].color,n=e.PPDisplayTime?se(Math.round(i[o].pp)):le(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=ce((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=S+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*Qt.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(Qt).forEach((e=>{"Cursor"!==Qt[e].name&&(n+=Qt[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"!==Qt[e].name&&(i+=Qt[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(Qt).forEach((t=>{Qt[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 vo(){Ne=Game.UpgradesOwned,Oe=Game.pledges,Fe=Game.AchievementsOwned,We=Game.heavenlyPower,Le=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Qt[e];void 0===o&&(Qt[e]=ko(e),o=Qt[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],De=t.minigame.slot[1],He=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Qt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=qt[e];void 0===o&&(qt[e]=Go(e),o=qt[e]),o.bought=t.bought,qt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Yt[e];void 0===o&&(Yt[e]=yo(e),o=Yt[e]),o.won=t.won,Yt[e]=o})),Co(),Ae=Ve,je=_e}function wo(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(wo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(wo("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(wo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(wo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===ee){e.appendChild(wo("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 Bo(){if(vo(),"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"===ee?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=mt:10===Game.buyBulk?t=ht:100===Game.buyBulk&&(t=gt),J=Game.Objects[te].bulkPrice,Z=t[te].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=le(Z,2);const o=Math.round(Z/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=S+t[te].color,e.PPDisplayTime?l("CMTooltipPP").textContent=se(t[te].pp):l("CMTooltipPP").textContent=le(t[te].pp,2),l("CMTooltipPP").className=S+t[te].color;const n=ce((J-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[te[1]][te[0]][0]-1].matureBase,o=t.plantsById[t.plot[te[1]][te[0]][0]-1].name;l("CMTooltipBorder").appendChild(wo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${le(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${le(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${le(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${le(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===ee?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(wo("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!==K[Game.buffs[t].name]?K[Game.buffs[t].name]:W,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"),ie!==n&&(ie=n,go())}}(),mo(),Bo(),function(){if(1===e.TooltipWrink&&1===I){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===V[t]||void 0===V[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)),z=t,V[t]=1}}else V[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[z],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[z].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Qt.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=le(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu();let t=l("cookies").innerHTML.replace(/.*(?=
)/i,le(Game.cookies));Game.prefs.monospace&&(t=`${t}`),l("cookies").innerHTML=t}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+_t;Game.cpsSucked>0&&(o+=ft),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-fe,i=Math.max(0,Game.cookies-Ce)/n,a=Math.max(0,ft-ye)/n,r=Math.max(0,yt[0]-be)/n,l=Math.max(0,o-ut)/n,s=(Game.cookieClicks-ke)/n;for(let e=0;ezt[30][0]?F:W,0!==Number(e.PPSecondsLowerLimit)&&o/so()0&&(n=F),n}function Fo(t,o){Object.keys(t).forEach((n=>{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const n=Game.Objects[o].getSumPrice(t);Game.cookiesPs?e[o].pp=Math.max(n-(Game.cookies+co()),0)/Game.cookiesPs+n/e[o].bonus:e[o].pp=n/e[o].bonus,zt.push([e[o].pp,t])}))}function Lo(){!function(){It=1/0,zt=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(mt,1),Wo(ht,10),Wo(gt,100),zt.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;zt[t][1]>Game.cookies&&(t+=1,zt.length!==t+1););It=zt[e.PPExcludeTop][t],Fo(mt,1),Fo(ht,10),Fo(gt,100)}(),Object.keys(Gt).forEach((e=>{Game.cookiesPs?Gt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/Gt[e].bonus:Gt[e].pp=Game.Upgrades[e].getPrice()/Gt[e].bonus,Number.isNaN(Gt[e].pp)&&(Gt[e].pp=1/0),Gt[e].color=Oo(Gt[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]}))}})),$e=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(Le)*We*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*qt[o.name].power(qt[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(Jt/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Jt/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Jt/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=Fe/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(Qt).forEach((e=>{const t=Qt[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),Ie+=t.amount*a})),oo('"egg"')&&(Ie+=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((Kt-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),dt=1+.1*(1-(1-e/100)**3),r*=dt}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ie*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),ze=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),Ie=Game.runModHookOnValue("cps",Ie),e*=Mo(),Ie*=e}const Do=["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"],Ho=["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 Yt[e]?Yt[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(Qt).forEach((e=>{t+=Qt[e].amount,i=Math.min(Qt[e].amount,i),zo("Mathematician")||Qt[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"),Ne>=20&&jo("Enhancer"),Ne>=50&&jo("Augmenter"),Ne>=100&&jo("Upgrader"),Ne>=200&&jo("Lord of Progress"),Ne>=300&&jo("The full picture"),Ne>=400&&jo("When there's nothing left to add"),t>=4e3&&Ne>=300&&jo("Polymath"),t>=8e3&&Ne>=400&&jo("Renaissance baker"),Qt.Cursor.amount+Qt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Ho).forEach((e=>{oo(Ho[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,t){const o=[];return Object.keys(Game.Objects).forEach((t=>{o[t]={},o[t].bonus=function(e,t){vo(),Qt[e].amount+=t;const o=Qt[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=Fe;return Uo(),Vo(),n!==Fe&&Uo(),Ie-Game.cookiesPs}(t,e),1!==e&&(Be=1)})),o}function Xo(){Object.keys(Game.Objects).forEach((e=>{mt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ht[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){mt=_o(1),ht=_o(10),gt=_o(100),Gt=[],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){vo(),"Shimmering veil [on]"===qt[e].name?qt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===qt[e].name?qt["Golden switch [off]"].bought=0:qt[e].bought=(qt[e].bought+1)%2,qt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Ne+=1),"Elder Pledge"===e?(Oe+=1,Oe>0&&jo("Elder nap"),Oe>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Fe;Uo(),Vo(),t!==Fe&&Uo();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(Qt).forEach((e=>{t+=Qt[e].amount})),t-=Qt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ie),oo("Iron mouse")&&(e+=.01*Ie),oo("Titanium mouse")&&(e+=.01*Ie),oo("Adamantium mouse")&&(e+=.01*Ie),oo("Unobtainium mouse")&&(e+=.01*Ie),oo("Eludium mouse")&&(e+=.01*Ie),oo("Wishalloy mouse")&&(e+=.01*Ie),oo("Fantasteel mouse")&&(e+=.01*Ie),oo("Nevercrack mouse")&&(e+=.01*Ie),oo("Armythril mouse")&&(e+=.01*Ie),oo("Technobsidian mouse")&&(e+=.01*Ie),oo("Plasmarble mouse")&&(e+=.01*Ie),oo("Miraculite mouse")&&(e+=.01*Ie),oo("Fortune #104")&&(e+=.01*Ie);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"),Qt.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?[Ie-Game.cookiesPs,o]:[Ie-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(Gt[t]={bonus:Game.cookiesPs-Ge},1===e.CalcWrink?Gt[t].bonus-=ve:2===e.CalcWrink&&(Gt[t].bonus-=we),Number.isFinite(Gt[t].bonus)||(Gt[t].bonus=0)):(Gt[t]={},o[0]&&(Gt[t].bonus=o[0]),o[1]&&(Gt[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,Bt=qo(7,e,lt),Mt=2*Bt[1]/lt,St=Bt[2]/60/60/6/rt,Nt=qo(6,e,st),Pt=2*Nt[1]/st,Et=Nt[2]/60/60/6/rt,Wt=qo(7,7*e,lt),Ot=2*Wt[1]/lt,Ft=Wt[2]/60/60/6/rt,jt=qo(6,7*e,st),Lt=2*jt[1]/st,At=jt[2]/60/60/6/rt}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-Me,i=Math.max(0,o-Se)/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?xt+=e:"cookie"===o.pool?Tt+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(wt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),pt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(pt*=2)}}function en(){qe=900*at/.15,qe*=rt;const e=Mo();e>0?qe/=e:qe=0,Ye=lt*(.15*qe)+13,Ke=st*(.15*qe)+13,Je=7*qe,Ze=lt*(.15*Je)+13,et=st*(.15*Je)+13,tt=2*qe,ot=.15*tt,nt=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].amountnt&&(nt=2*Game.Objects[e].price,it=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"),lt=o*e,st=o*t,rt=1,0===Game.shimmerTypes.golden.n&&(rt*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){ft=0,Ct=0,yt=[0,null];for(let e=0;eyt[0]&&(yt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),de=new Eo(q[q.length-1]),pe=new Eo(q[q.length-1]),ue=new Eo(q[q.length-1]),me=new Eo(q[q.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,BuildColor:1,PPDisplayTime:0,UpBarColor:1,UpgradeBarFixedPos:1,CalcWrink:0,CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,PPExcludeTop:0,PPSecondsLowerLimit:0,PPOnlyConsiderBuyable:0,ToolWarnBon:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,DragonAuraInfo:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,TimeFormat:0,DetailedTime:1,GrimoireBar:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,Colors:{Blue:"#4bb8f0",Green:"#00ff00",Yellow:"#ffff00",Orange:"#ff7f00",Red:"#ff0000",Purple:"#ff00ff",Gray:"#b3b3b3",Pink:"#ff1493",Brown:"#8b4513"},SortBuildings:0,SortUpgrades:0,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,BulkBuyBlock:0,Header:{BarsColors:1,Calculation:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Tooltip:1,Statistics:1,Notation: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(){let t="";for(let o=0;o0?Ht.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 pn{constructor(e,t){this.type=e,this.group=t}}class un extends pn{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 mn extends pn{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 pn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={BotBar:new un("bool","BarsColors",["Bottom Bar OFF","Bottom Bar ON"],"Building Information",!0,(function(){ln()})),TimerBar:new un("bool","BarsColors",["Timer Bar OFF","Timer Bar ON"],"Timers of Golden Cookie, Season Popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new un("bool","BarsColors",["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 un("bool","BarsColors",["Timer Bar Overlay OFF","Timer Bar Overlay Only Seconds","Timer Bar Overlay Full"],"Overlay on timers displaying seconds and/or percentage left",!0),SortBuildings:new un("bool","BarsColors",["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 un("bool","BarsColors",["Sort Upgrades: Default","Sort Upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),BuildColor:new un("bool","BarsColors",["Building Colors OFF","Building Colors ON"],"Color code buildings",!0,(function(){ro()})),PPDisplayTime:new un("bool","BarsColors",["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),UpBarColor:new un("bool","BarsColors",["Upgrade Colors/Bar OFF","Upgrade Colors with Bar ON","Upgrade Colors without Bar ON"],"Color 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())})),Colors:new class extends pn{constructor(e,t,o,n){super(e,t),this.desc=o,this.func=n}}("color","BarsColors",{Blue:"Color Blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels",Green:"Color Green. Used to show best PP building, for Blood Frenzy bar, and for various labels",Yellow:"Color Yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels",Orange:"Color Orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels",Red:"Color Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels",Purple:"Color Purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels",Gray:"Color Gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar",Pink:"Color Pink. Used for Dragonflight bar",Brown:"Color Brown. Used for Dragon Harvest bar"},(function(){cn()})),UpgradeBarFixedPos:new un("bool","BarsColors",["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=""})),CalcWrink:new un("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(){Re=!0})),CPSMode:new un("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 un("bool","Calculation",["Average CPS for past 10s","Average CPS for past 15s","Average CPS for past 30s","Average CPS for past 1m","Average CPS for past 5m","Average CPS for past 10m","Average CPS for past 15m","Average CPS for past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new un("bool","Calculation",["Average Cookie Clicks for past 1s","Average Cookie Clicks for past 5s","Average Cookie Clicks for past 10s","Average Cookie Clicks for past 15s","Average Cookie Clicks for past 30s"],"How much time average Cookie Clicks should consider",!1),PPExcludeTop:new un("bool","Calculation",["Don't Ignore Any","Ignore 1st Best","Ignore 1st and 2nd Best","Ignore 1st, 2nd and 3rd Best"],"Makes CookieMonster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPSecondsLowerLimit:new hn("numscale","Calculation","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),PPOnlyConsiderBuyable:new un("bool","Calculation",["Don't Ignore Non-Buyable","Ignore Non-Buyable"],"Makes CookieMonster 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),ToolWarnBon:new un("bool","Calculation",["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),Title:new un("bool","NotificationGeneral",["Title OFF","Title ON","Title Pinned Tab Highlight"],'Update title with Golden 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 un("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 un("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when Golden Cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new un("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on Golden Cookie",!0),GCSound:new un("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on Golden Cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new un("url","NotificationGC","Sound URL:","URL of the sound to be played when a Golden Cookie spawns"),FortuneNotification:new un("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when Fortune Cookie is on the Ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new un("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on Fortune Cookie",!0),FortuneSound:new un("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on Fortune Cookie",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new un("url","NotificationFC","Sound URL:","URL of the sound to be played when the Ticker has a Fortune Cookie"),SeaNotification:new un("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on Season Popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new un("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on Season Popup",!0),SeaSound:new un("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on Season Popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new un("url","NotificationSea","Sound URL:","URL of the sound to be played when a Season Special spawns"),GardFlash:new un("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on Garden Tick",!0),GardSound:new un("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on Garden Tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new un("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new un("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new un("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),MagicSound:new un("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new un("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new un("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a Wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new un("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a Wrinkler appears",!0),WrinklerSound:new un("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a Wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new un("url","NotificationWrink","Sound URL:","URL of the sound to be played when a Wrinkler appears"),WrinklerMaxNotification:new un("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of Wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new un("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),WrinklerMaxSound:new un("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 un("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of Wrinklers has appeared"),TooltipBuildUpgrade:new un("bool","Tooltip",["Building/Upgrade Tooltip Information OFF","Building/Upgrade Tooltip Information ON"],"Extra information in Building/Upgrade tooltips",!0),TooltipAmor:new un("bool","Tooltip",["Buildings Tooltip Amortization Information OFF","Buildings Tooltip Amortization Information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new un("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 un("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 un("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 un("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 un("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),ToolWarnPos:new un("bool","Tooltip",["Tooltip Warning Position (Left)","Tooltip Warning Position (Bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new un("bool","Tooltip",["Grimoire Tooltip Information OFF","Grimoire Tooltip Information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new un("bool","Tooltip",["Wrinkler Tooltip OFF","Wrinkler Tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new un("bool","Tooltip",["Sugar Lump Tooltip OFF","Sugar Lump Tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new un("bool","Tooltip",["Garden Plots Tooltip OFF","Garden Plots Tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new un("bool","Tooltip",["Show Extra Info Pantheon Tooltip OFF","Show Extra Info Pantheon Tooltip ON"],"Shows additional info in the pantheon tooltip",!0),DragonAuraInfo:new un("bool","Tooltip",["Extra Dragon Aura Info OFF","Extra Dragon Aura Info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),TooltipAscendButton:new un("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new un("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new un("bool","Statistics",["Missing Upgrades OFF","Missing Upgrades ON"],"Shows Missing upgrades in Stats Menu. This feature can be laggy for users with a low amount of unlocked achievements.",!0),UpStats:new un("bool","Statistics",["Statistics Update Rate (Default)","Statistics Update Rate (1s)"],"Default Game rate is once every 5 seconds",!1),TimeFormat:new un("bool","Statistics",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new un("bool","Statistics",["Detailed Time OFF","Detailed Time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=$:Game.sayTime=M.sayTime})),GrimoireBar:new un("bool","Statistics",["Grimoire Magic Meter Timer OFF","Grimoire Magic Meter Timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),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 un("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),Scale:new un("bool","Notation",["Game's Setting Scale","Metric","Short Scale","Short Scale (Abbreviated)","Scientific Notation","Engineering Notation"],"Change how long numbers are handled",!1,(function(){sn()})),ScaleDecimals:new un("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 un("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 CookieMonster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),GCTimer:new un("bool","Miscellaneous",["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(ae).forEach((e=>{ae[e].style.display="block",ae[e].style.left=Vt[e].l.style.left,ae[e].style.top=Vt[e].l.style.top})):Object.keys(ae).forEach((e=>ae[e].style.display="none"))})),Favicon:new un("bool","Miscellaneous",["Favicon OFF","Favicon ON"],"Update favicon with Golden/Wrath Cookie",!0,(function(){dn()})),WrinklerButtons:new un("bool","Miscellaneous",["Extra Wrinkler Buttons OFF","Extra Wrinkler Buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){e.WrinklerButtons?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")})),HideSectionsButtons:new un("bool","Miscellaneous",["Hide Upgrades/Buildings Button OFF","Hide Upgrades/Buildings Button ON"],"Show buttons for hiding and showing the upgrades and buildings section in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),BulkBuyBlock:new un("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)};function fn(){return JSON.stringify({settings:e,version:"2.031.6"})}function Cn(){if(Xe!==Game.dragonLevel||Re){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{Qt[e]=ko(e)})),qt=[],Object.keys(Game.Upgrades).forEach((e=>{qt[e]=Go(e)})),Yt=[],Object.keys(Game.Achievements).forEach((e=>{Yt[e]=yo(e)})),vo()}let kn=!1;function Gn(t,o){1===e[o]&&3===t&&!1===kn||1===t?(l("CMWhiteScreen").style.opacity="0.5",3===t?(l("CMWhiteScreen").style.display="inline",setTimeout((function(){Gn(2,o)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o)}),1e3/Game.fps)):2===t?(l("CMWhiteScreen").style.opacity="1",setTimeout((function(){Gn(1,o)}),1e3/Game.fps)):0===t&&(l("CMWhiteScreen").style.display="none")}function vn(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 wn(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(ne!==Game.OnAscend&&(ne=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){a!==Object.keys(Game.mods).length&&(bn(),nn(),a=Object.keys(Game.mods).length),Re&&(Qo(),Game.Has("Golden switch [off]")?(vo(),qt["Golden switch [off]"].bought=0,Uo(),at=Ie):at=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)Xt[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;vo();let t=2;5!==Ae&&18!==Ae||(t-=1),5!==je&&18!==je||(t-=1),Ae=5,je=18;for(let e=0;e{Qt[t].amount>0&&(e=t)})),Qt[e].amount-=1,Ee-=1}return Object.keys(Qt).forEach((t=>{const o=Qt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),_t=e}(),Re=0);const t=Game.auraMult("Fierce Hoarder")>0;!Pe&&t?(Pe=!0,Be=1):Pe&&!t&&(Pe=!1,Be=1),Be&&(Xo(),Be=0),function(){on(),Lo(),function(){bt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Qt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}kt=e,bt=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);$t=se(e/so())}(),k=0,Vt={},Object.keys(Game.shimmers).forEach((e=>{Vt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&(Ht=Game.shimmers[e],k+=1)})),Object.keys(ae).forEach((e=>{void 0===Vt[e]&&(ae[e].parentNode.removeChild(ae[e]),delete ae[e])})),C!==Game.shimmerTypes.golden.n?(C=Game.shimmerTypes.golden.n,C&&(y{void 0===ae[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=""},ae[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),dn(),y=k,0===k&&(Ht=0)):1===e.GCTimer&&C&&Object.keys(ae).forEach((e=>{ae[e].style.opacity=Vt[e].l.style.opacity,ae[e].style.transform=Vt[e].l.style.transform,ae[e].textContent=Math.ceil(Vt[e].life/Game.fps)})),g!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(g=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,g&&(Gn(3,"FortuneFlash"),vn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),wn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),h!==Game.shimmerTypes.reindeer.spawned&&(h=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(Rt=Game.shimmers[e])})),Gn(3,"SeaFlash"),vn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),wn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&f!==Game.Objects.Farm.minigame.nextStep&&(0!==f&&f0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>G?(G=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash"):Gn(3,"WrinklerFlash"),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?vn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):vn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?wn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):wn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):G=t}}()}}function Tn(){const e=b64_to_utf8(unescape(localStorage.getItem("CookieClickerGame")).split("!END!")[0]),t=e.match(/CookieMonster.*(;|$)/);if(null!==t){const o=e.replace(t[0],`CookieMonster:${fn()}`);localStorage.setItem("CookieClickerGame",escape(`${utf8_to_b64(o)}!END!`))}}function Mn(t){if(void 0!==localStorage.CMConfig&&delete localStorage.CMConfig,void 0!==t){e=t;let o=!1;Object.keys(an).forEach((t=>{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"!==t&&"Colors"!==t?-1===t.indexOf("SoundURL")?e[t]>-1&&e[t]{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])})):Object.keys(an.Colors).forEach((n=>{void 0!==e[t][n]&&"string"==typeof e[t][n]||(o=!0,e[t][n]=an[t][n])}))})),o&&Tn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Mn(an)}function Sn(){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
${le(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${ce((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(le(Game.Objects[o].bulkPrice)).join(le((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 ee=t,te=o,Bo(),l("tooltip").innerHTML}function Pn(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(x[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 En(){if(!u&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];d=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){d(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Tn()}function jn(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(){An(o),Game.UpdateMenu()},n.appendChild(i),n}function Un(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(H[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 Dn(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 Hn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(jn("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()0&&(t.appendChild(Un("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(le(e)))),t.appendChild(Un("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(se(e/ct)))))}const l=function(e){let t=Game.cookiesPs;vo(),0===qt["Heavenly key"].bought&&(qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Uo(),t=Ie,vo()),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"),qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Le=e;const o=Fe;Uo(),Vo(),o!==Fe&&Uo();const n=Ie-t;return Le=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(le(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(Un("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(Un("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(Un("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(Un("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(jn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${le(ft)} / ${le(Ct)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Sn()},e.appendChild(t),o.appendChild(Un("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${le(yt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==yt[1]&&(Game.wrinklers[yt[1]].hp=0)},n.appendChild(i),o.appendChild(Un("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==yt[1]?yt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Ho).forEach((e=>{Game.Has(Ho[e])||(n.push(Ho[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=[];Object.keys(Io).forEach((e=>{Game.HasUnlocked(Io[e])||(s.push(Io[e]),o=!0)}));const c=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),d=Game.Has("Century egg");if(("christmas"===Game.season||o||c||d)&&(t.appendChild(jn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Un("basic","Halloween cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${le(100*(1-e))}% / ${le(100*(1-.9*e))}%`)))}if(0!==i.length){t.appendChild(Un("basic","Christmas cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${le(100*(1-e))}%`)))}0!==a.length&&t.appendChild(Un("basic","Valentine cookies left to buy",Dn(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(Un("basic","Normal easter eggs left to unlock",Dn(r))),t.appendChild(Un("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[0])}% / ${le(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Un("basic","Rare easter eggs left to unlock",Dn(l))),t.appendChild(Un("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[1])}% / ${le(100*e(.9)[1])}%`)))),0!==s.length&&t.appendChild(Un("basic","Rare plant drops left to unlock",Dn(s))),"christmas"===Game.season&&t.appendChild(Un("basic","Reindeer reward",document.createTextNode(le(pt)))),c&&t.appendChild(Un("withTooltip","Chocolate egg cookies",document.createTextNode(le(ut)),"ChoEggTooltipPlaceholder")),d&&t.appendChild(Un("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(dt-1))/100+"%")))}return t}()),o.appendChild(jn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Un("basic",`Average Cookies Per Second (Past ${q[e.AvgCPSHist]<60?`${q[e.AvgCPSHist]} seconds`:q[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(le(so(),3)))),o.appendChild(Un("basic",`Average Cookie Clicks Per Second (Past ${Y[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(le(vt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Do).forEach((t=>{Game.Has(Do[t])||e.push(Do[t])})),0!==e.length&&o.appendChild(Un("basic","Fortune Upgrades Left to Buy",Dn(e)))}if(e.ShowMissedGC&&o.appendChild(Un("basic","Missed Golden Cookies",document.createTextNode(le(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(Un("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&&xt){const t=xt.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=xt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(wt){const t=wt.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=wt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(Tt){const t=Tt.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=Tt,e.appendChild(i)}}}))}const Rn={BarsColors:"Bars/Colors",Calculation:"Calculation",Notification:"Notification",Tooltip:"Tooltips and additional insights",Statistics:"Statistics",Notation:"Notation",Miscellaneous:"Miscellaneous"},$n={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 In(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(){An(t),Game.UpdateMenu()},n.appendChild(i),n}function zn(t){const o=document.createElement("div");if(o.className="listing","bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Wn+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Wn+t).className="option off")):l(Wn+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Wn+t).innerHTML=gn[t].label[e[t]],Tn()}(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(){Ln(t)},r.onchange=function(){Ln(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){vn(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=Wn+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=`${Wn+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){Game.Prompt(a.outerHTML,[["Save",function(){e[`${t}`]=l(`CMConfig${t}Prompt`).value,Tn(),Game.ClosePrompt(),Game.UpdateMenu()}],"Cancel"])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("color"===gn[t].type){o.className="";for(let t=0;tthis.max&&console.log("TEST"),e[t]=this.value,Tn(),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 Vn(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 _n(){M.Beautify=Beautify,Beautify=le,M.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){M.CalculateGains(),Re=1,Jt=Date.now(),Kt=Date.now()},M.tooltip={},M.tooltip.draw=Game.tooltip.draw,M.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){M.tooltip.drawMod(e,t,o)},M.tooltip.update=Game.tooltip.update,M.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){M.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`}}()},M.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){Vn(M.UpdateWrinklers)},M.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){Vn(M.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){Vn(Game.ClickCookie)}),!1),M.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){M.RebuildUpgrades(),T=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(T[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()},M.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e-1].amount>0){const o=Qt[Game.ObjectsById[e].name].name;Qt[o].amount-=1,Ee-=1,t=Qt[o].basePrice*Game.priceIncrease**Math.max(0,Qt[o].amount-1-Qt[o].free),t=Game.modifyBuildingPrice(Qt[o],t),t=Math.ceil(t);break}const o=Fe;return Uo(),Vo(),o!==Fe&&Uo(),[Ie-Game.cookiesPs,t]}(t),n=se(o/(e+Game.cookiesPs)),i=le(e/Game.cookiesPs);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 ${le(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)},M.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){M.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Qe}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},M.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Fn().picker&&void 0!==Fn().picker.owner||(M.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(Rn).forEach((t=>{const n=In(t,Rn[t]);o.appendChild(n),e.Header[t]&&("Notification"===t?Object.keys($n).forEach((t=>{const n=In(t,$n[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(zn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(zn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Mn(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",Hn(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(){An("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
\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))}())},M.sayTime=Game.sayTime,$=function(e,t){return Number.isNaN(e)||e<=0?M.sayTime(e,t):se(e/Game.fps,1)},M.Logic=Game.Logic,Game.Logic=function(){M.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),re=`${Game.OnAscend?"Ascending! ":""}${le(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=re;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=Ht?Ht.wrath?`[W${Math.ceil(Ht.life/Game.fps)}]`:`[G${Math.ceil(Ht.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)}]`,g&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=h?`[R${Math.ceil(Rt.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=re;"["===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;Ht&&(t=!0,Ht.wrath?e+=`[W${Math.ceil(Ht.life/Game.fps)}]`:e+=`[G${Math.ceil(Ht.life/Game.fps)}]`),g&&(t=!0,e+="[F]"),"christmas"===Game.season&&h&&(e+=`[R${Math.ceil(Rt.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 ${le(Game.prestige)}.
(CpS +${le(Game.prestige)}%)`,n+='
'),n+=Se<1?"Ascending now would grant you no prestige.":Se<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${le(Se)} prestige levels (+${le(Se)}% CpS)
and ${le(Se)} heavenly chips to spend.`,n+='
',n+=`You need ${le(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${$t} to reach the next level and you are making ${le(ct,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Xn(){bn(),en(),nn(),a=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.backgroundColor="#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=S+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",N)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",P)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",P)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",P)),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.backgroundColor="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:L},{id:"CMTimerBarGCBar",color:W}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:L},{id:"CMTimerBarRenBar",color:O}]);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.backgroundColor="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(P,"Better than best PP building")),e.appendChild(o(E,"Same as best PP building")),e.appendChild(o(N,"Between best and worst PP buildings closer to best")),e.appendChild(o(O,"Between best and worst PP buildings closer to worst")),e.appendChild(o(F,"Same as worst PP building")),e.appendChild(o(W,"Worse than worst PP building")),e.appendChild(o(L,"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=S+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",P)),e.appendChild(o("CMUpgradeBarGreen",E)),e.appendChild(o("CMUpgradeBarYellow",N)),e.appendChild(o("CMUpgradeBarOrange",O)),e.appendChild(o("CMUpgradeBarRed",F)),e.appendChild(o("CMUpgradeBarPurple",W)),e.appendChild(o("CMUpgradeBarGray",L)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMWhiteScreen",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(D).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),H[e]=n}(D[e][0],D[e][1],D[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Sn()},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!==yt[1]&&(Game.wrinklers[yt[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&&(w[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()&&(r=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),m=Game.LoadMinigames,Game.LoadMinigames=function(){m(),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()}}))),Pn(),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()}}}(),Nn()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){I=1},l("backgroundLeftCanvas").onmouseout=function(){I=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{V[e]=0}))},_n(),Nn(),Game.CalculateGains(),Mn(),R=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&&(Xn(),Game.registerHook("draw",Po),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),Mn(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={};const t=["","","M","G","T","P","E","Z","Y"],n=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],i=["","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 a,r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,v,w=[],x=[],T=[],M={};const S="CMText",B="CMBack",P="Blue",E="Green",N="Yellow",O="Orange",F="Red",W="Purple",L="Gray",A="Pink",j="Brown",U=[L,P,E,N,O,F,W,A,j],D=[["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"]],H={};let R,$,I=0,z=-1,V=[],_=1,X=1,Q=1;const q=[10,15,30,60,300,600,900,1800],Y=[1,5,10,15,30],K={Frenzy:N,"Dragon Harvest":j,"Elder frenzy":E,Clot:F,"Click frenzy":P,Dragonflight:A};let J,Z,ee,te,oe,ne,ie,ae={},re="";function le(o,a,r){const l=e.ScaleDecimals+1;if(o===1/0)return"Infinity";if(void 0===o)return"0";if(0===e.Scale)return M.Beautify(o,a);if(Number.isFinite(o)){let s="";if(0===o)return o.toString();if(o>.001&&o=.01&&o=.01&&o=.01&&o315576e4)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 ce(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=E):(n=se(t),o=t>300?F:t>60?O:N),{text:n,color:o}}let de,pe,ue,me,he,ge,fe,Ce,ye,be,ke,Ge,ve,we,xe,Te,Me,Se,Be,Pe,Ee,Ne,Oe,Fe,We,Le,Ae,je,Ue,De,He,Re,$e,Ie,ze,Ve=0,_e=0,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=1,lt=1,st=1,ct=0,dt=0,pt=0,ut=0,mt={},ht={},gt={},ft=0,Ct=0,yt=[0,null],bt=0,kt=0,Gt={},vt={},wt={},xt={},Tt={},Mt=0,St=0,Bt=[],Pt=0,Et=0,Nt=[],Ot=0,Ft=0,Wt=[],Lt=0,At=0,jt=[],Ut=0,Dt=0,Ht={},Rt={},$t=0,It=0,zt=[],Vt={},_t=0,Xt={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]},Qt=[],qt=[],Yt=[],Kt=Game.startDate,Jt=Game.startDate;function Zt(e){let t=0;return Game.dragonAuras[Ae].name!==e&&Game.dragonAuras[je].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[Ae].name&&"Reality Bending"!==Game.dragonAuras[je].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===$e[e]?void 0===t?1:t:$e[e]}function oo(e){const t=qt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Qt.Temple.minigame&&(Qt.Temple.minigame=Game.Objects.Temple.minigame);const t=Qt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(De===t.id)return 2;if(He===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"),Qt.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?X=t:t=X,1===t?t=mt:10===t?t=ht:100===t&&(t=gt),1===Game.buyMode?1===e.BuildColor?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e.Colors[t[o].color]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(mt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=le(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(mt).map((e=>{const t=mt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const t=mt[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;eU.indexOf(t.color)?1:U.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?_=i:i=_,1===i&&(i=mt),10===i&&(i=ht),100===i&&(i=gt),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=le(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=S+i[o].color,n=e.PPDisplayTime?se(Math.round(i[o].pp)):le(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=ce((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=S+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*Qt.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(Qt).forEach((e=>{"Cursor"!==Qt[e].name&&(n+=Qt[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"!==Qt[e].name&&(i+=Qt[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(Qt).forEach((t=>{Qt[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 vo(){Ne=Game.UpgradesOwned,Oe=Game.pledges,Fe=Game.AchievementsOwned,We=Game.heavenlyPower,Le=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Qt[e];void 0===o&&(Qt[e]=ko(e),o=Qt[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],De=t.minigame.slot[1],He=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Qt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=qt[e];void 0===o&&(qt[e]=Go(e),o=qt[e]),o.bought=t.bought,qt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Yt[e];void 0===o&&(Yt[e]=yo(e),o=Yt[e]),o.won=t.won,Yt[e]=o})),Co(),Ae=Ve,je=_e}function wo(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(wo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(wo("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(wo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(wo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===ee){e.appendChild(wo("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 Bo(){if(vo(),"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"===ee?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=mt:10===Game.buyBulk?t=ht:100===Game.buyBulk&&(t=gt),J=Game.Objects[te].bulkPrice,Z=t[te].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=le(Z,2);const o=Math.round(Z/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=S+t[te].color,e.PPDisplayTime?l("CMTooltipPP").textContent=se(t[te].pp):l("CMTooltipPP").textContent=le(t[te].pp,2),l("CMTooltipPP").className=S+t[te].color;const n=ce((J-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[te[1]][te[0]][0]-1].matureBase,o=t.plantsById[t.plot[te[1]][te[0]][0]-1].name;l("CMTooltipBorder").appendChild(wo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${le(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${le(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${le(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${le(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===ee?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(wo("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!==K[Game.buffs[t].name]?K[Game.buffs[t].name]:W,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"),ie!==n&&(ie=n,go())}}(),mo(),Bo(),function(){if(1===e.TooltipWrink&&1===I){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===V[t]||void 0===V[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)),z=t,V[t]=1}}else V[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[z],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[z].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Qt.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=le(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu();let t=l("cookies").innerHTML.replace(/.*(?=
)/i,le(Game.cookies));Game.prefs.monospace&&(t=`${t}`),l("cookies").innerHTML=t}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+_t;Game.cpsSucked>0&&(o+=ft),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-fe,i=Math.max(0,Game.cookies-Ce)/n,a=Math.max(0,ft-ye)/n,r=Math.max(0,yt[0]-be)/n,l=Math.max(0,o-ut)/n,s=(Game.cookieClicks-ke)/n;for(let e=0;ezt[30][0]?F:W,0!==Number(e.PPSecondsLowerLimit)&&o/so()0&&(n=F),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=L;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||zt.push([t[n].pp,o])}))}function Lo(){!function(){It=1/0,zt=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(mt,1),Wo(ht,10),Wo(gt,100),zt.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;zt[t][1]>Game.cookies&&(t+=1,zt.length!==t+1););It=zt[e.PPExcludeTop][t],Fo(mt,1),Fo(ht,10),Fo(gt,100)}(),Object.keys(Gt).forEach((e=>{Game.cookiesPs?Gt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/Gt[e].bonus:Gt[e].pp=Game.Upgrades[e].getPrice()/Gt[e].bonus,Number.isNaN(Gt[e].pp)&&(Gt[e].pp=1/0),Gt[e].color=Oo(Gt[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]}))}})),$e=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(Le)*We*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*qt[o.name].power(qt[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(Jt/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Jt/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Jt/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=Fe/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(Qt).forEach((e=>{const t=Qt[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),Ie+=t.amount*a})),oo('"egg"')&&(Ie+=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((Kt-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),dt=1+.1*(1-(1-e/100)**3),r*=dt}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ie*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),ze=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),Ie=Game.runModHookOnValue("cps",Ie),e*=Mo(),Ie*=e}const Do=["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"],Ho=["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 Yt[e]?Yt[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(Qt).forEach((e=>{t+=Qt[e].amount,i=Math.min(Qt[e].amount,i),zo("Mathematician")||Qt[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"),Ne>=20&&jo("Enhancer"),Ne>=50&&jo("Augmenter"),Ne>=100&&jo("Upgrader"),Ne>=200&&jo("Lord of Progress"),Ne>=300&&jo("The full picture"),Ne>=400&&jo("When there's nothing left to add"),t>=4e3&&Ne>=300&&jo("Polymath"),t>=8e3&&Ne>=400&&jo("Renaissance baker"),Qt.Cursor.amount+Qt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Ho).forEach((e=>{oo(Ho[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,t){const o=[];return Object.keys(Game.Objects).forEach((t=>{o[t]={},o[t].bonus=function(e,t){vo(),Qt[e].amount+=t;const o=Qt[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=Fe;return Uo(),Vo(),n!==Fe&&Uo(),Ie-Game.cookiesPs}(t,e),1!==e&&(Be=1)})),o}function Xo(){Object.keys(Game.Objects).forEach((e=>{mt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ht[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){mt=_o(1),ht=_o(10),gt=_o(100),Gt=[],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){vo(),"Shimmering veil [on]"===qt[e].name?qt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===qt[e].name?qt["Golden switch [off]"].bought=0:qt[e].bought=(qt[e].bought+1)%2,qt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Ne+=1),"Elder Pledge"===e?(Oe+=1,Oe>0&&jo("Elder nap"),Oe>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Fe;Uo(),Vo(),t!==Fe&&Uo();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(Qt).forEach((e=>{t+=Qt[e].amount})),t-=Qt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ie),oo("Iron mouse")&&(e+=.01*Ie),oo("Titanium mouse")&&(e+=.01*Ie),oo("Adamantium mouse")&&(e+=.01*Ie),oo("Unobtainium mouse")&&(e+=.01*Ie),oo("Eludium mouse")&&(e+=.01*Ie),oo("Wishalloy mouse")&&(e+=.01*Ie),oo("Fantasteel mouse")&&(e+=.01*Ie),oo("Nevercrack mouse")&&(e+=.01*Ie),oo("Armythril mouse")&&(e+=.01*Ie),oo("Technobsidian mouse")&&(e+=.01*Ie),oo("Plasmarble mouse")&&(e+=.01*Ie),oo("Miraculite mouse")&&(e+=.01*Ie),oo("Fortune #104")&&(e+=.01*Ie);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"),Qt.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?[Ie-Game.cookiesPs,o]:[Ie-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(Gt[t]={bonus:Game.cookiesPs-Ge},1===e.CalcWrink?Gt[t].bonus-=ve:2===e.CalcWrink&&(Gt[t].bonus-=we),Number.isFinite(Gt[t].bonus)||(Gt[t].bonus=0)):(Gt[t]={},o[0]&&(Gt[t].bonus=o[0]),o[1]&&(Gt[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,Bt=qo(7,e,lt),Mt=2*Bt[1]/lt,St=Bt[2]/60/60/6/rt,Nt=qo(6,e,st),Pt=2*Nt[1]/st,Et=Nt[2]/60/60/6/rt,Wt=qo(7,7*e,lt),Ot=2*Wt[1]/lt,Ft=Wt[2]/60/60/6/rt,jt=qo(6,7*e,st),Lt=2*jt[1]/st,At=jt[2]/60/60/6/rt}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-Me,i=Math.max(0,o-Se)/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?xt+=e:"cookie"===o.pool?Tt+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(wt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),pt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(pt*=2)}}function en(){qe=900*at/.15,qe*=rt;const e=Mo();e>0?qe/=e:qe=0,Ye=lt*(.15*qe)+13,Ke=st*(.15*qe)+13,Je=7*qe,Ze=lt*(.15*Je)+13,et=st*(.15*Je)+13,tt=2*qe,ot=.15*tt,nt=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].amountnt&&(nt=2*Game.Objects[e].price,it=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"),lt=o*e,st=o*t,rt=1,0===Game.shimmerTypes.golden.n&&(rt*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){ft=0,Ct=0,yt=[0,null];for(let e=0;eyt[0]&&(yt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),de=new Eo(q[q.length-1]),pe=new Eo(q[q.length-1]),ue=new Eo(q[q.length-1]),me=new Eo(q[q.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,BuildColor:1,PPDisplayTime:0,UpBarColor:1,UpgradeBarFixedPos:1,CalcWrink:0,CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,PPOnlyConsiderBuyable:0,ToolWarnBon:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,DragonAuraInfo:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,TimeFormat:0,DetailedTime:1,GrimoireBar:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,Colors:{Blue:"#4bb8f0",Green:"#00ff00",Yellow:"#ffff00",Orange:"#ff7f00",Red:"#ff0000",Purple:"#ff00ff",Gray:"#b3b3b3",Pink:"#ff1493",Brown:"#8b4513"},SortBuildings:0,SortUpgrades:0,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,BulkBuyBlock:0,Header:{BarsColors:1,Calculation:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Tooltip:1,Statistics:1,Notation: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(){let t="";for(let o=0;o0?Ht.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 pn{constructor(e,t){this.type=e,this.group=t}}class un extends pn{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 mn extends pn{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 pn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={BotBar:new un("bool","BarsColors",["Bottom Bar OFF","Bottom Bar ON"],"Building Information",!0,(function(){ln()})),TimerBar:new un("bool","BarsColors",["Timer Bar OFF","Timer Bar ON"],"Timers of Golden Cookie, Season Popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new un("bool","BarsColors",["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 un("bool","BarsColors",["Timer Bar Overlay OFF","Timer Bar Overlay Only Seconds","Timer Bar Overlay Full"],"Overlay on timers displaying seconds and/or percentage left",!0),SortBuildings:new un("bool","BarsColors",["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 un("bool","BarsColors",["Sort Upgrades: Default","Sort Upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),BuildColor:new un("bool","BarsColors",["Building Colors OFF","Building Colors ON"],"Color code buildings",!0,(function(){ro()})),PPDisplayTime:new un("bool","BarsColors",["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),UpBarColor:new un("bool","BarsColors",["Upgrade Colors/Bar OFF","Upgrade Colors with Bar ON","Upgrade Colors without Bar ON"],"Color 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())})),Colors:new class extends pn{constructor(e,t,o,n){super(e,t),this.desc=o,this.func=n}}("color","BarsColors",{Blue:"Color Blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels",Green:"Color Green. Used to show best PP building, for Blood Frenzy bar, and for various labels",Yellow:"Color Yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels",Orange:"Color Orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels",Red:"Color Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels",Purple:"Color Purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels",Gray:"Color Gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar",Pink:"Color Pink. Used for Dragonflight bar",Brown:"Color Brown. Used for Dragon Harvest bar"},(function(){cn()})),UpgradeBarFixedPos:new un("bool","BarsColors",["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=""})),CalcWrink:new un("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(){Re=!0})),CPSMode:new un("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 un("bool","Calculation",["Average CPS for past 10s","Average CPS for past 15s","Average CPS for past 30s","Average CPS for past 1m","Average CPS for past 5m","Average CPS for past 10m","Average CPS for past 15m","Average CPS for past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new un("bool","Calculation",["Average Cookie Clicks for past 1s","Average Cookie Clicks for past 5s","Average Cookie Clicks for past 10s","Average Cookie Clicks for past 15s","Average Cookie Clicks for past 30s"],"How much time average Cookie Clicks should consider",!1),PPExcludeTop:new un("bool","Calculation",["Don't Ignore Any","Ignore 1st Best","Ignore 1st and 2nd Best","Ignore 1st, 2nd and 3rd Best"],"Makes CookieMonster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new un("bool","Calculation",["Rigidel Mode OFF","Rigidel Mode ON"],'Makes CookieMonster 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","Calculation","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),PPOnlyConsiderBuyable:new un("bool","Calculation",["Don't Ignore Non-Buyable","Ignore Non-Buyable"],"Makes CookieMonster 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),ToolWarnBon:new un("bool","Calculation",["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),Title:new un("bool","NotificationGeneral",["Title OFF","Title ON","Title Pinned Tab Highlight"],'Update title with Golden 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 un("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 un("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when Golden Cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new un("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on Golden Cookie",!0),GCSound:new un("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on Golden Cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new un("url","NotificationGC","Sound URL:","URL of the sound to be played when a Golden Cookie spawns"),FortuneNotification:new un("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when Fortune Cookie is on the Ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new un("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on Fortune Cookie",!0),FortuneSound:new un("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on Fortune Cookie",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new un("url","NotificationFC","Sound URL:","URL of the sound to be played when the Ticker has a Fortune Cookie"),SeaNotification:new un("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on Season Popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new un("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on Season Popup",!0),SeaSound:new un("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on Season Popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new un("url","NotificationSea","Sound URL:","URL of the sound to be played when a Season Special spawns"),GardFlash:new un("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on Garden Tick",!0),GardSound:new un("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on Garden Tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new un("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new un("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new un("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),MagicSound:new un("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new un("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new un("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a Wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new un("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a Wrinkler appears",!0),WrinklerSound:new un("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a Wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new un("url","NotificationWrink","Sound URL:","URL of the sound to be played when a Wrinkler appears"),WrinklerMaxNotification:new un("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of Wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new un("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),WrinklerMaxSound:new un("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 un("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of Wrinklers has appeared"),TooltipBuildUpgrade:new un("bool","Tooltip",["Building/Upgrade Tooltip Information OFF","Building/Upgrade Tooltip Information ON"],"Extra information in Building/Upgrade tooltips",!0),TooltipAmor:new un("bool","Tooltip",["Buildings Tooltip Amortization Information OFF","Buildings Tooltip Amortization Information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new un("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 un("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 un("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 un("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 un("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),ToolWarnPos:new un("bool","Tooltip",["Tooltip Warning Position (Left)","Tooltip Warning Position (Bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new un("bool","Tooltip",["Grimoire Tooltip Information OFF","Grimoire Tooltip Information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new un("bool","Tooltip",["Wrinkler Tooltip OFF","Wrinkler Tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new un("bool","Tooltip",["Sugar Lump Tooltip OFF","Sugar Lump Tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new un("bool","Tooltip",["Garden Plots Tooltip OFF","Garden Plots Tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new un("bool","Tooltip",["Show Extra Info Pantheon Tooltip OFF","Show Extra Info Pantheon Tooltip ON"],"Shows additional info in the pantheon tooltip",!0),DragonAuraInfo:new un("bool","Tooltip",["Extra Dragon Aura Info OFF","Extra Dragon Aura Info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),TooltipAscendButton:new un("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new un("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new un("bool","Statistics",["Missing Upgrades OFF","Missing Upgrades ON"],"Shows Missing upgrades in Stats Menu. This feature can be laggy for users with a low amount of unlocked achievements.",!0),UpStats:new un("bool","Statistics",["Statistics Update Rate (Default)","Statistics Update Rate (1s)"],"Default Game rate is once every 5 seconds",!1),TimeFormat:new un("bool","Statistics",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new un("bool","Statistics",["Detailed Time OFF","Detailed Time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=$:Game.sayTime=M.sayTime})),GrimoireBar:new un("bool","Statistics",["Grimoire Magic Meter Timer OFF","Grimoire Magic Meter Timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),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 un("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),Scale:new un("bool","Notation",["Game's Setting Scale","Metric","Short Scale","Short Scale (Abbreviated)","Scientific Notation","Engineering Notation"],"Change how long numbers are handled",!1,(function(){sn()})),ScaleDecimals:new un("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 un("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 CookieMonster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),GCTimer:new un("bool","Miscellaneous",["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(ae).forEach((e=>{ae[e].style.display="block",ae[e].style.left=Vt[e].l.style.left,ae[e].style.top=Vt[e].l.style.top})):Object.keys(ae).forEach((e=>ae[e].style.display="none"))})),Favicon:new un("bool","Miscellaneous",["Favicon OFF","Favicon ON"],"Update favicon with Golden/Wrath Cookie",!0,(function(){dn()})),WrinklerButtons:new un("bool","Miscellaneous",["Extra Wrinkler Buttons OFF","Extra Wrinkler Buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){e.WrinklerButtons?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")})),HideSectionsButtons:new un("bool","Miscellaneous",["Hide Upgrades/Buildings Button OFF","Hide Upgrades/Buildings Button ON"],"Show buttons for hiding and showing the upgrades and buildings section in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),BulkBuyBlock:new un("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)};function fn(){return JSON.stringify({settings:e,version:"2.031.6"})}function Cn(){if(Xe!==Game.dragonLevel||Re){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{Qt[e]=ko(e)})),qt=[],Object.keys(Game.Upgrades).forEach((e=>{qt[e]=Go(e)})),Yt=[],Object.keys(Game.Achievements).forEach((e=>{Yt[e]=yo(e)})),vo()}let kn=!1;function Gn(t,o){1===e[o]&&3===t&&!1===kn||1===t?(l("CMWhiteScreen").style.opacity="0.5",3===t?(l("CMWhiteScreen").style.display="inline",setTimeout((function(){Gn(2,o)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o)}),1e3/Game.fps)):2===t?(l("CMWhiteScreen").style.opacity="1",setTimeout((function(){Gn(1,o)}),1e3/Game.fps)):0===t&&(l("CMWhiteScreen").style.display="none")}function vn(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 wn(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(ne!==Game.OnAscend&&(ne=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){a!==Object.keys(Game.mods).length&&(bn(),nn(),a=Object.keys(Game.mods).length),Re&&(Qo(),Game.Has("Golden switch [off]")?(vo(),qt["Golden switch [off]"].bought=0,Uo(),at=Ie):at=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)Xt[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;vo();let t=2;5!==Ae&&18!==Ae||(t-=1),5!==je&&18!==je||(t-=1),Ae=5,je=18;for(let e=0;e{Qt[t].amount>0&&(e=t)})),Qt[e].amount-=1,Ee-=1}return Object.keys(Qt).forEach((t=>{const o=Qt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),_t=e}(),Re=0);const t=Game.auraMult("Fierce Hoarder")>0;!Pe&&t?(Pe=!0,Be=1):Pe&&!t&&(Pe=!1,Be=1),Be&&(Xo(),Be=0),function(){on(),Lo(),function(){bt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Qt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}kt=e,bt=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);$t=se(e/so())}(),k=0,Vt={},Object.keys(Game.shimmers).forEach((e=>{Vt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&(Ht=Game.shimmers[e],k+=1)})),Object.keys(ae).forEach((e=>{void 0===Vt[e]&&(ae[e].parentNode.removeChild(ae[e]),delete ae[e])})),C!==Game.shimmerTypes.golden.n?(C=Game.shimmerTypes.golden.n,C&&(y{void 0===ae[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=""},ae[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),dn(),y=k,0===k&&(Ht=0)):1===e.GCTimer&&C&&Object.keys(ae).forEach((e=>{ae[e].style.opacity=Vt[e].l.style.opacity,ae[e].style.transform=Vt[e].l.style.transform,ae[e].textContent=Math.ceil(Vt[e].life/Game.fps)})),g!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(g=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,g&&(Gn(3,"FortuneFlash"),vn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),wn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),h!==Game.shimmerTypes.reindeer.spawned&&(h=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(Rt=Game.shimmers[e])})),Gn(3,"SeaFlash"),vn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),wn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&f!==Game.Objects.Farm.minigame.nextStep&&(0!==f&&f0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>G?(G=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash"):Gn(3,"WrinklerFlash"),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?vn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):vn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?wn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):wn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):G=t}}()}}function Tn(){const e=b64_to_utf8(unescape(localStorage.getItem("CookieClickerGame")).split("!END!")[0]),t=e.match(/CookieMonster.*(;|$)/);if(null!==t){const o=e.replace(t[0],`CookieMonster:${fn()}`);localStorage.setItem("CookieClickerGame",escape(`${utf8_to_b64(o)}!END!`))}}function Mn(t){if(void 0!==localStorage.CMConfig&&delete localStorage.CMConfig,void 0!==t){e=t;let o=!1;Object.keys(an).forEach((t=>{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"!==t&&"Colors"!==t?-1===t.indexOf("SoundURL")?e[t]>-1&&e[t]{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])})):Object.keys(an.Colors).forEach((n=>{void 0!==e[t][n]&&"string"==typeof e[t][n]||(o=!0,e[t][n]=an[t][n])}))})),o&&Tn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Mn(an)}function Sn(){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
${le(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${ce((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(le(Game.Objects[o].bulkPrice)).join(le((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 ee=t,te=o,Bo(),l("tooltip").innerHTML}function Pn(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(x[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 En(){if(!u&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];d=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){d(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Tn()}function jn(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(){An(o),Game.UpdateMenu()},n.appendChild(i),n}function Un(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(H[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 Dn(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 Hn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(jn("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()0&&(t.appendChild(Un("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(le(e)))),t.appendChild(Un("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(se(e/ct)))))}const l=function(e){let t=Game.cookiesPs;vo(),0===qt["Heavenly key"].bought&&(qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Uo(),t=Ie,vo()),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"),qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Le=e;const o=Fe;Uo(),Vo(),o!==Fe&&Uo();const n=Ie-t;return Le=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(le(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(Un("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(Un("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(Un("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(Un("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(jn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${le(ft)} / ${le(Ct)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Sn()},e.appendChild(t),o.appendChild(Un("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${le(yt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==yt[1]&&(Game.wrinklers[yt[1]].hp=0)},n.appendChild(i),o.appendChild(Un("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==yt[1]?yt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Ho).forEach((e=>{Game.Has(Ho[e])||(n.push(Ho[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=[];Object.keys(Io).forEach((e=>{Game.HasUnlocked(Io[e])||(s.push(Io[e]),o=!0)}));const c=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),d=Game.Has("Century egg");if(("christmas"===Game.season||o||c||d)&&(t.appendChild(jn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Un("basic","Halloween cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${le(100*(1-e))}% / ${le(100*(1-.9*e))}%`)))}if(0!==i.length){t.appendChild(Un("basic","Christmas cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${le(100*(1-e))}%`)))}0!==a.length&&t.appendChild(Un("basic","Valentine cookies left to buy",Dn(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(Un("basic","Normal easter eggs left to unlock",Dn(r))),t.appendChild(Un("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[0])}% / ${le(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Un("basic","Rare easter eggs left to unlock",Dn(l))),t.appendChild(Un("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[1])}% / ${le(100*e(.9)[1])}%`)))),0!==s.length&&t.appendChild(Un("basic","Rare plant drops left to unlock",Dn(s))),"christmas"===Game.season&&t.appendChild(Un("basic","Reindeer reward",document.createTextNode(le(pt)))),c&&t.appendChild(Un("withTooltip","Chocolate egg cookies",document.createTextNode(le(ut)),"ChoEggTooltipPlaceholder")),d&&t.appendChild(Un("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(dt-1))/100+"%")))}return t}()),o.appendChild(jn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Un("basic",`Average Cookies Per Second (Past ${q[e.AvgCPSHist]<60?`${q[e.AvgCPSHist]} seconds`:q[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(le(so(),3)))),o.appendChild(Un("basic",`Average Cookie Clicks Per Second (Past ${Y[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(le(vt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Do).forEach((t=>{Game.Has(Do[t])||e.push(Do[t])})),0!==e.length&&o.appendChild(Un("basic","Fortune Upgrades Left to Buy",Dn(e)))}if(e.ShowMissedGC&&o.appendChild(Un("basic","Missed Golden Cookies",document.createTextNode(le(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(Un("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&&xt){const t=xt.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=xt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(wt){const t=wt.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=wt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(Tt){const t=Tt.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=Tt,e.appendChild(i)}}}))}const Rn={BarsColors:"Bars/Colors",Calculation:"Calculation",Notification:"Notification",Tooltip:"Tooltips and additional insights",Statistics:"Statistics",Notation:"Notation",Miscellaneous:"Miscellaneous"},$n={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 In(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(){An(t),Game.UpdateMenu()},n.appendChild(i),n}function zn(t){const o=document.createElement("div");if(o.className="listing","bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Wn+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Wn+t).className="option off")):l(Wn+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Wn+t).innerHTML=gn[t].label[e[t]],Tn()}(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(){Ln(t)},r.onchange=function(){Ln(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){vn(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=Wn+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=`${Wn+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){Game.Prompt(a.outerHTML,[["Save",function(){e[`${t}`]=l(`CMConfig${t}Prompt`).value,Tn(),Game.ClosePrompt(),Game.UpdateMenu()}],"Cancel"])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("color"===gn[t].type){o.className="";for(let t=0;tthis.max&&console.log("TEST"),e[t]=this.value,Tn(),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 Vn(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 _n(){M.Beautify=Beautify,Beautify=le,M.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){M.CalculateGains(),Re=1,Jt=Date.now(),Kt=Date.now()},M.tooltip={},M.tooltip.draw=Game.tooltip.draw,M.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){M.tooltip.drawMod(e,t,o)},M.tooltip.update=Game.tooltip.update,M.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){M.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`}}()},M.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){Vn(M.UpdateWrinklers)},M.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){Vn(M.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){Vn(Game.ClickCookie)}),!1),M.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){M.RebuildUpgrades(),T=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(T[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()},M.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e-1].amount>0){const o=Qt[Game.ObjectsById[e].name].name;Qt[o].amount-=1,Ee-=1,t=Qt[o].basePrice*Game.priceIncrease**Math.max(0,Qt[o].amount-1-Qt[o].free),t=Game.modifyBuildingPrice(Qt[o],t),t=Math.ceil(t);break}const o=Fe;return Uo(),Vo(),o!==Fe&&Uo(),[Ie-Game.cookiesPs,t]}(t),n=se(o/(e+Game.cookiesPs)),i=le(e/Game.cookiesPs);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 ${le(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)},M.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){M.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Qe}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},M.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Fn().picker&&void 0!==Fn().picker.owner||(M.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(Rn).forEach((t=>{const n=In(t,Rn[t]);o.appendChild(n),e.Header[t]&&("Notification"===t?Object.keys($n).forEach((t=>{const n=In(t,$n[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(zn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(zn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Mn(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",Hn(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(){An("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))}())},M.sayTime=Game.sayTime,$=function(e,t){return Number.isNaN(e)||e<=0?M.sayTime(e,t):se(e/Game.fps,1)},M.Logic=Game.Logic,Game.Logic=function(){M.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),re=`${Game.OnAscend?"Ascending! ":""}${le(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=re;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=Ht?Ht.wrath?`[W${Math.ceil(Ht.life/Game.fps)}]`:`[G${Math.ceil(Ht.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)}]`,g&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=h?`[R${Math.ceil(Rt.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=re;"["===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;Ht&&(t=!0,Ht.wrath?e+=`[W${Math.ceil(Ht.life/Game.fps)}]`:e+=`[G${Math.ceil(Ht.life/Game.fps)}]`),g&&(t=!0,e+="[F]"),"christmas"===Game.season&&h&&(e+=`[R${Math.ceil(Rt.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 ${le(Game.prestige)}.
(CpS +${le(Game.prestige)}%)`,n+='
'),n+=Se<1?"Ascending now would grant you no prestige.":Se<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${le(Se)} prestige levels (+${le(Se)}% CpS)
and ${le(Se)} heavenly chips to spend.`,n+='
',n+=`You need ${le(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${$t} to reach the next level and you are making ${le(ct,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Xn(){bn(),en(),nn(),a=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.backgroundColor="#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=S+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",N)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",P)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",P)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",P)),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.backgroundColor="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:L},{id:"CMTimerBarGCBar",color:W}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:L},{id:"CMTimerBarRenBar",color:O}]);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.backgroundColor="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(P,"Better than the best PP of a building option")),e.appendChild(o(E,"Same as the best PP building option")),e.appendChild(o(N,"Within the top 10 of PP for buildings")),e.appendChild(o(O,"Within the top 20 of PP for buildings")),e.appendChild(o(F,"Within the top 30 of PP for buildings")),e.appendChild(o(W,"Outside of the top 30 of PP for buildings")),e.appendChild(o(L,"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=S+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",P)),e.appendChild(o("CMUpgradeBarGreen",E)),e.appendChild(o("CMUpgradeBarYellow",N)),e.appendChild(o("CMUpgradeBarOrange",O)),e.appendChild(o("CMUpgradeBarRed",F)),e.appendChild(o("CMUpgradeBarPurple",W)),e.appendChild(o("CMUpgradeBarGray",L)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMWhiteScreen",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(D).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),H[e]=n}(D[e][0],D[e][1],D[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Sn()},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!==yt[1]&&(Game.wrinklers[yt[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&&(w[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()&&(r=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),m=Game.LoadMinigames,Game.LoadMinigames=function(){m(),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()}}))),Pn(),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()}}}(),Nn()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){I=1},l("backgroundLeftCanvas").onmouseout=function(){I=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{V[e]=0}))},_n(),Nn(),Game.CalculateGains(),Mn(),R=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&&(Xn(),Game.registerHook("draw",Po),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),Mn(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 935e1b5..d063522 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={};const t=["","","M","G","T","P","E","Z","Y"],n=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],i=["","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 a,r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,v,w=[],x=[],T=[],M={};const S="CMText",B="CMBack",P="Blue",E="Green",N="Yellow",O="Orange",F="Red",W="Purple",L="Gray",A="Pink",j="Brown",U=[L,P,E,N,O,F,W,A,j],D=[["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"]],H={};let R,$,I=0,z=-1,V=[],_=1,X=1,Q=1;const q=[10,15,30,60,300,600,900,1800],Y=[1,5,10,15,30],K={Frenzy:N,"Dragon Harvest":j,"Elder frenzy":E,Clot:F,"Click frenzy":P,Dragonflight:A};let J,Z,ee,te,oe,ne,ie,ae={},re="";function le(o,a,r){const l=e.ScaleDecimals+1;if(o===1/0)return"Infinity";if(void 0===o)return"0";if(0===e.Scale)return M.Beautify(o,a);if(Number.isFinite(o)){let s="";if(0===o)return o.toString();if(o>.001&&o=.01&&o=.01&&o=.01&&o315576e4)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 ce(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=E):(n=se(t),o=t>300?F:t>60?O:N),{text:n,color:o}}let de,pe,ue,me,he,ge,fe,Ce,ye,be,ke,Ge,ve,we,xe,Te,Me,Se,Be,Pe,Ee,Ne,Oe,Fe,We,Le,Ae,je,Ue,De,He,Re,$e,Ie,ze,Ve=0,_e=0,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=1,lt=1,st=1,ct=0,dt=0,pt=0,ut=0,mt={},ht={},gt={},ft=0,Ct=0,yt=[0,null],bt=0,kt=0,Gt={},vt={},wt={},xt={},Tt={},Mt=0,St=0,Bt=[],Pt=0,Et=0,Nt=[],Ot=0,Ft=0,Wt=[],Lt=0,At=0,jt=[],Ut=0,Dt=0,Ht={},Rt={},$t=0,It=0,zt=[],Vt={},_t=0,Xt={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]},Qt=[],qt=[],Yt=[],Kt=Game.startDate,Jt=Game.startDate;function Zt(e){let t=0;return Game.dragonAuras[Ae].name!==e&&Game.dragonAuras[je].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[Ae].name&&"Reality Bending"!==Game.dragonAuras[je].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===$e[e]?void 0===t?1:t:$e[e]}function oo(e){const t=qt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Qt.Temple.minigame&&(Qt.Temple.minigame=Game.Objects.Temple.minigame);const t=Qt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(De===t.id)return 2;if(He===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"),Qt.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?X=t:t=X,1===t?t=mt:10===t?t=ht:100===t&&(t=gt),1===Game.buyMode?1===e.BuildColor?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e.Colors[t[o].color]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(mt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=le(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(mt).map((e=>{const t=mt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const t=mt[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;eU.indexOf(t.color)?1:U.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?_=i:i=_,1===i&&(i=mt),10===i&&(i=ht),100===i&&(i=gt),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=le(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=S+i[o].color,n=e.PPDisplayTime?se(Math.round(i[o].pp)):le(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=ce((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=S+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*Qt.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(Qt).forEach((e=>{"Cursor"!==Qt[e].name&&(n+=Qt[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"!==Qt[e].name&&(i+=Qt[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(Qt).forEach((t=>{Qt[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 vo(){Ne=Game.UpgradesOwned,Oe=Game.pledges,Fe=Game.AchievementsOwned,We=Game.heavenlyPower,Le=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Qt[e];void 0===o&&(Qt[e]=ko(e),o=Qt[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],De=t.minigame.slot[1],He=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Qt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=qt[e];void 0===o&&(qt[e]=Go(e),o=qt[e]),o.bought=t.bought,qt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Yt[e];void 0===o&&(Yt[e]=yo(e),o=Yt[e]),o.won=t.won,Yt[e]=o})),Co(),Ae=Ve,je=_e}function wo(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(wo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(wo("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(wo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(wo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===ee){e.appendChild(wo("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 Bo(){if(vo(),"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"===ee?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=mt:10===Game.buyBulk?t=ht:100===Game.buyBulk&&(t=gt),J=Game.Objects[te].bulkPrice,Z=t[te].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=le(Z,2);const o=Math.round(Z/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=S+t[te].color,e.PPDisplayTime?l("CMTooltipPP").textContent=se(t[te].pp):l("CMTooltipPP").textContent=le(t[te].pp,2),l("CMTooltipPP").className=S+t[te].color;const n=ce((J-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[te[1]][te[0]][0]-1].matureBase,o=t.plantsById[t.plot[te[1]][te[0]][0]-1].name;l("CMTooltipBorder").appendChild(wo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${le(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${le(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${le(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${le(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===ee?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(wo("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!==K[Game.buffs[t].name]?K[Game.buffs[t].name]:W,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"),ie!==n&&(ie=n,go())}}(),mo(),Bo(),function(){if(1===e.TooltipWrink&&1===I){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===V[t]||void 0===V[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)),z=t,V[t]=1}}else V[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[z],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[z].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Qt.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=le(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu();let t=l("cookies").innerHTML.replace(/.*(?=
)/i,le(Game.cookies));Game.prefs.monospace&&(t=`${t}`),l("cookies").innerHTML=t}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+_t;Game.cpsSucked>0&&(o+=ft),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-fe,i=Math.max(0,Game.cookies-Ce)/n,a=Math.max(0,ft-ye)/n,r=Math.max(0,yt[0]-be)/n,l=Math.max(0,o-ut)/n,s=(Game.cookieClicks-ke)/n;for(let e=0;ezt[30][0]?F:W,0!==Number(e.PPSecondsLowerLimit)&&o/so()0&&(n=F),n}function Fo(t,o){Object.keys(t).forEach((n=>{t[n].color=Oo(t[n],Game.Objects[n].getSumPrice(o));for(let o=0;o{const n=Game.Objects[o].getSumPrice(t);Game.cookiesPs?e[o].pp=Math.max(n-(Game.cookies+co()),0)/Game.cookiesPs+n/e[o].bonus:e[o].pp=n/e[o].bonus,zt.push([e[o].pp,t])}))}function Lo(){!function(){It=1/0,zt=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(mt,1),Wo(ht,10),Wo(gt,100),zt.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;zt[t][1]>Game.cookies&&(t+=1,zt.length!==t+1););It=zt[e.PPExcludeTop][t],Fo(mt,1),Fo(ht,10),Fo(gt,100)}(),Object.keys(Gt).forEach((e=>{Game.cookiesPs?Gt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/Gt[e].bonus:Gt[e].pp=Game.Upgrades[e].getPrice()/Gt[e].bonus,Number.isNaN(Gt[e].pp)&&(Gt[e].pp=1/0),Gt[e].color=Oo(Gt[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]}))}})),$e=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(Le)*We*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*qt[o.name].power(qt[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(Jt/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Jt/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Jt/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=Fe/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(Qt).forEach((e=>{const t=Qt[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),Ie+=t.amount*a})),oo('"egg"')&&(Ie+=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((Kt-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),dt=1+.1*(1-(1-e/100)**3),r*=dt}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ie*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),ze=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),Ie=Game.runModHookOnValue("cps",Ie),e*=Mo(),Ie*=e}const Do=["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"],Ho=["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 Yt[e]?Yt[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(Qt).forEach((e=>{t+=Qt[e].amount,i=Math.min(Qt[e].amount,i),zo("Mathematician")||Qt[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"),Ne>=20&&jo("Enhancer"),Ne>=50&&jo("Augmenter"),Ne>=100&&jo("Upgrader"),Ne>=200&&jo("Lord of Progress"),Ne>=300&&jo("The full picture"),Ne>=400&&jo("When there's nothing left to add"),t>=4e3&&Ne>=300&&jo("Polymath"),t>=8e3&&Ne>=400&&jo("Renaissance baker"),Qt.Cursor.amount+Qt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Ho).forEach((e=>{oo(Ho[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,t){const o=[];return Object.keys(Game.Objects).forEach((t=>{o[t]={},o[t].bonus=function(e,t){vo(),Qt[e].amount+=t;const o=Qt[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=Fe;return Uo(),Vo(),n!==Fe&&Uo(),Ie-Game.cookiesPs}(t,e),1!==e&&(Be=1)})),o}function Xo(){Object.keys(Game.Objects).forEach((e=>{mt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ht[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){mt=_o(1),ht=_o(10),gt=_o(100),Gt=[],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){vo(),"Shimmering veil [on]"===qt[e].name?qt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===qt[e].name?qt["Golden switch [off]"].bought=0:qt[e].bought=(qt[e].bought+1)%2,qt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Ne+=1),"Elder Pledge"===e?(Oe+=1,Oe>0&&jo("Elder nap"),Oe>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Fe;Uo(),Vo(),t!==Fe&&Uo();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(Qt).forEach((e=>{t+=Qt[e].amount})),t-=Qt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ie),oo("Iron mouse")&&(e+=.01*Ie),oo("Titanium mouse")&&(e+=.01*Ie),oo("Adamantium mouse")&&(e+=.01*Ie),oo("Unobtainium mouse")&&(e+=.01*Ie),oo("Eludium mouse")&&(e+=.01*Ie),oo("Wishalloy mouse")&&(e+=.01*Ie),oo("Fantasteel mouse")&&(e+=.01*Ie),oo("Nevercrack mouse")&&(e+=.01*Ie),oo("Armythril mouse")&&(e+=.01*Ie),oo("Technobsidian mouse")&&(e+=.01*Ie),oo("Plasmarble mouse")&&(e+=.01*Ie),oo("Miraculite mouse")&&(e+=.01*Ie),oo("Fortune #104")&&(e+=.01*Ie);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"),Qt.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?[Ie-Game.cookiesPs,o]:[Ie-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(Gt[t]={bonus:Game.cookiesPs-Ge},1===e.CalcWrink?Gt[t].bonus-=ve:2===e.CalcWrink&&(Gt[t].bonus-=we),Number.isFinite(Gt[t].bonus)||(Gt[t].bonus=0)):(Gt[t]={},o[0]&&(Gt[t].bonus=o[0]),o[1]&&(Gt[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,Bt=qo(7,e,lt),Mt=2*Bt[1]/lt,St=Bt[2]/60/60/6/rt,Nt=qo(6,e,st),Pt=2*Nt[1]/st,Et=Nt[2]/60/60/6/rt,Wt=qo(7,7*e,lt),Ot=2*Wt[1]/lt,Ft=Wt[2]/60/60/6/rt,jt=qo(6,7*e,st),Lt=2*jt[1]/st,At=jt[2]/60/60/6/rt}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-Me,i=Math.max(0,o-Se)/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?xt+=e:"cookie"===o.pool?Tt+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(wt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),pt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(pt*=2)}}function en(){qe=900*at/.15,qe*=rt;const e=Mo();e>0?qe/=e:qe=0,Ye=lt*(.15*qe)+13,Ke=st*(.15*qe)+13,Je=7*qe,Ze=lt*(.15*Je)+13,et=st*(.15*Je)+13,tt=2*qe,ot=.15*tt,nt=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].amountnt&&(nt=2*Game.Objects[e].price,it=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"),lt=o*e,st=o*t,rt=1,0===Game.shimmerTypes.golden.n&&(rt*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){ft=0,Ct=0,yt=[0,null];for(let e=0;eyt[0]&&(yt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),de=new Eo(q[q.length-1]),pe=new Eo(q[q.length-1]),ue=new Eo(q[q.length-1]),me=new Eo(q[q.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,BuildColor:1,PPDisplayTime:0,UpBarColor:1,UpgradeBarFixedPos:1,CalcWrink:0,CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,PPExcludeTop:0,PPSecondsLowerLimit:0,PPOnlyConsiderBuyable:0,ToolWarnBon:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,DragonAuraInfo:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,TimeFormat:0,DetailedTime:1,GrimoireBar:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,Colors:{Blue:"#4bb8f0",Green:"#00ff00",Yellow:"#ffff00",Orange:"#ff7f00",Red:"#ff0000",Purple:"#ff00ff",Gray:"#b3b3b3",Pink:"#ff1493",Brown:"#8b4513"},SortBuildings:0,SortUpgrades:0,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,BulkBuyBlock:0,Header:{BarsColors:1,Calculation:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Tooltip:1,Statistics:1,Notation: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(){let t="";for(let o=0;o0?Ht.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 pn{constructor(e,t){this.type=e,this.group=t}}class un extends pn{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 mn extends pn{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 pn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={BotBar:new un("bool","BarsColors",["Bottom Bar OFF","Bottom Bar ON"],"Building Information",!0,(function(){ln()})),TimerBar:new un("bool","BarsColors",["Timer Bar OFF","Timer Bar ON"],"Timers of Golden Cookie, Season Popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new un("bool","BarsColors",["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 un("bool","BarsColors",["Timer Bar Overlay OFF","Timer Bar Overlay Only Seconds","Timer Bar Overlay Full"],"Overlay on timers displaying seconds and/or percentage left",!0),SortBuildings:new un("bool","BarsColors",["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 un("bool","BarsColors",["Sort Upgrades: Default","Sort Upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),BuildColor:new un("bool","BarsColors",["Building Colors OFF","Building Colors ON"],"Color code buildings",!0,(function(){ro()})),PPDisplayTime:new un("bool","BarsColors",["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),UpBarColor:new un("bool","BarsColors",["Upgrade Colors/Bar OFF","Upgrade Colors with Bar ON","Upgrade Colors without Bar ON"],"Color 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())})),Colors:new class extends pn{constructor(e,t,o,n){super(e,t),this.desc=o,this.func=n}}("color","BarsColors",{Blue:"Color Blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels",Green:"Color Green. Used to show best PP building, for Blood Frenzy bar, and for various labels",Yellow:"Color Yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels",Orange:"Color Orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels",Red:"Color Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels",Purple:"Color Purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels",Gray:"Color Gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar",Pink:"Color Pink. Used for Dragonflight bar",Brown:"Color Brown. Used for Dragon Harvest bar"},(function(){cn()})),UpgradeBarFixedPos:new un("bool","BarsColors",["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=""})),CalcWrink:new un("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(){Re=!0})),CPSMode:new un("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 un("bool","Calculation",["Average CPS for past 10s","Average CPS for past 15s","Average CPS for past 30s","Average CPS for past 1m","Average CPS for past 5m","Average CPS for past 10m","Average CPS for past 15m","Average CPS for past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new un("bool","Calculation",["Average Cookie Clicks for past 1s","Average Cookie Clicks for past 5s","Average Cookie Clicks for past 10s","Average Cookie Clicks for past 15s","Average Cookie Clicks for past 30s"],"How much time average Cookie Clicks should consider",!1),PPExcludeTop:new un("bool","Calculation",["Don't Ignore Any","Ignore 1st Best","Ignore 1st and 2nd Best","Ignore 1st, 2nd and 3rd Best"],"Makes CookieMonster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPSecondsLowerLimit:new hn("numscale","Calculation","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),PPOnlyConsiderBuyable:new un("bool","Calculation",["Don't Ignore Non-Buyable","Ignore Non-Buyable"],"Makes CookieMonster 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),ToolWarnBon:new un("bool","Calculation",["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),Title:new un("bool","NotificationGeneral",["Title OFF","Title ON","Title Pinned Tab Highlight"],'Update title with Golden 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 un("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 un("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when Golden Cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new un("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on Golden Cookie",!0),GCSound:new un("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on Golden Cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new un("url","NotificationGC","Sound URL:","URL of the sound to be played when a Golden Cookie spawns"),FortuneNotification:new un("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when Fortune Cookie is on the Ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new un("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on Fortune Cookie",!0),FortuneSound:new un("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on Fortune Cookie",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new un("url","NotificationFC","Sound URL:","URL of the sound to be played when the Ticker has a Fortune Cookie"),SeaNotification:new un("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on Season Popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new un("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on Season Popup",!0),SeaSound:new un("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on Season Popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new un("url","NotificationSea","Sound URL:","URL of the sound to be played when a Season Special spawns"),GardFlash:new un("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on Garden Tick",!0),GardSound:new un("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on Garden Tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new un("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new un("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new un("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),MagicSound:new un("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new un("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new un("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a Wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new un("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a Wrinkler appears",!0),WrinklerSound:new un("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a Wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new un("url","NotificationWrink","Sound URL:","URL of the sound to be played when a Wrinkler appears"),WrinklerMaxNotification:new un("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of Wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new un("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),WrinklerMaxSound:new un("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 un("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of Wrinklers has appeared"),TooltipBuildUpgrade:new un("bool","Tooltip",["Building/Upgrade Tooltip Information OFF","Building/Upgrade Tooltip Information ON"],"Extra information in Building/Upgrade tooltips",!0),TooltipAmor:new un("bool","Tooltip",["Buildings Tooltip Amortization Information OFF","Buildings Tooltip Amortization Information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new un("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 un("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 un("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 un("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 un("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),ToolWarnPos:new un("bool","Tooltip",["Tooltip Warning Position (Left)","Tooltip Warning Position (Bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new un("bool","Tooltip",["Grimoire Tooltip Information OFF","Grimoire Tooltip Information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new un("bool","Tooltip",["Wrinkler Tooltip OFF","Wrinkler Tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new un("bool","Tooltip",["Sugar Lump Tooltip OFF","Sugar Lump Tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new un("bool","Tooltip",["Garden Plots Tooltip OFF","Garden Plots Tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new un("bool","Tooltip",["Show Extra Info Pantheon Tooltip OFF","Show Extra Info Pantheon Tooltip ON"],"Shows additional info in the pantheon tooltip",!0),DragonAuraInfo:new un("bool","Tooltip",["Extra Dragon Aura Info OFF","Extra Dragon Aura Info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),TooltipAscendButton:new un("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new un("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new un("bool","Statistics",["Missing Upgrades OFF","Missing Upgrades ON"],"Shows Missing upgrades in Stats Menu. This feature can be laggy for users with a low amount of unlocked achievements.",!0),UpStats:new un("bool","Statistics",["Statistics Update Rate (Default)","Statistics Update Rate (1s)"],"Default Game rate is once every 5 seconds",!1),TimeFormat:new un("bool","Statistics",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new un("bool","Statistics",["Detailed Time OFF","Detailed Time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=$:Game.sayTime=M.sayTime})),GrimoireBar:new un("bool","Statistics",["Grimoire Magic Meter Timer OFF","Grimoire Magic Meter Timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),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 un("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),Scale:new un("bool","Notation",["Game's Setting Scale","Metric","Short Scale","Short Scale (Abbreviated)","Scientific Notation","Engineering Notation"],"Change how long numbers are handled",!1,(function(){sn()})),ScaleDecimals:new un("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 un("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 CookieMonster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),GCTimer:new un("bool","Miscellaneous",["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(ae).forEach((e=>{ae[e].style.display="block",ae[e].style.left=Vt[e].l.style.left,ae[e].style.top=Vt[e].l.style.top})):Object.keys(ae).forEach((e=>ae[e].style.display="none"))})),Favicon:new un("bool","Miscellaneous",["Favicon OFF","Favicon ON"],"Update favicon with Golden/Wrath Cookie",!0,(function(){dn()})),WrinklerButtons:new un("bool","Miscellaneous",["Extra Wrinkler Buttons OFF","Extra Wrinkler Buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){e.WrinklerButtons?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")})),HideSectionsButtons:new un("bool","Miscellaneous",["Hide Upgrades/Buildings Button OFF","Hide Upgrades/Buildings Button ON"],"Show buttons for hiding and showing the upgrades and buildings section in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),BulkBuyBlock:new un("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)};function fn(){return JSON.stringify({settings:e,version:"2.031.6"})}function Cn(){if(Xe!==Game.dragonLevel||Re){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{Qt[e]=ko(e)})),qt=[],Object.keys(Game.Upgrades).forEach((e=>{qt[e]=Go(e)})),Yt=[],Object.keys(Game.Achievements).forEach((e=>{Yt[e]=yo(e)})),vo()}let kn=!1;function Gn(t,o){1===e[o]&&3===t&&!1===kn||1===t?(l("CMWhiteScreen").style.opacity="0.5",3===t?(l("CMWhiteScreen").style.display="inline",setTimeout((function(){Gn(2,o)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o)}),1e3/Game.fps)):2===t?(l("CMWhiteScreen").style.opacity="1",setTimeout((function(){Gn(1,o)}),1e3/Game.fps)):0===t&&(l("CMWhiteScreen").style.display="none")}function vn(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 wn(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(ne!==Game.OnAscend&&(ne=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){a!==Object.keys(Game.mods).length&&(bn(),nn(),a=Object.keys(Game.mods).length),Re&&(Qo(),Game.Has("Golden switch [off]")?(vo(),qt["Golden switch [off]"].bought=0,Uo(),at=Ie):at=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)Xt[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;vo();let t=2;5!==Ae&&18!==Ae||(t-=1),5!==je&&18!==je||(t-=1),Ae=5,je=18;for(let e=0;e{Qt[t].amount>0&&(e=t)})),Qt[e].amount-=1,Ee-=1}return Object.keys(Qt).forEach((t=>{const o=Qt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),_t=e}(),Re=0);const t=Game.auraMult("Fierce Hoarder")>0;!Pe&&t?(Pe=!0,Be=1):Pe&&!t&&(Pe=!1,Be=1),Be&&(Xo(),Be=0),function(){on(),Lo(),function(){bt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Qt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}kt=e,bt=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);$t=se(e/so())}(),k=0,Vt={},Object.keys(Game.shimmers).forEach((e=>{Vt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&(Ht=Game.shimmers[e],k+=1)})),Object.keys(ae).forEach((e=>{void 0===Vt[e]&&(ae[e].parentNode.removeChild(ae[e]),delete ae[e])})),C!==Game.shimmerTypes.golden.n?(C=Game.shimmerTypes.golden.n,C&&(y{void 0===ae[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=""},ae[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),dn(),y=k,0===k&&(Ht=0)):1===e.GCTimer&&C&&Object.keys(ae).forEach((e=>{ae[e].style.opacity=Vt[e].l.style.opacity,ae[e].style.transform=Vt[e].l.style.transform,ae[e].textContent=Math.ceil(Vt[e].life/Game.fps)})),g!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(g=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,g&&(Gn(3,"FortuneFlash"),vn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),wn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),h!==Game.shimmerTypes.reindeer.spawned&&(h=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(Rt=Game.shimmers[e])})),Gn(3,"SeaFlash"),vn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),wn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&f!==Game.Objects.Farm.minigame.nextStep&&(0!==f&&f0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>G?(G=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash"):Gn(3,"WrinklerFlash"),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?vn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):vn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?wn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):wn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):G=t}}()}}function Tn(){const e=b64_to_utf8(unescape(localStorage.getItem("CookieClickerGame")).split("!END!")[0]),t=e.match(/CookieMonster.*(;|$)/);if(null!==t){const o=e.replace(t[0],`CookieMonster:${fn()}`);localStorage.setItem("CookieClickerGame",escape(`${utf8_to_b64(o)}!END!`))}}function Mn(t){if(void 0!==localStorage.CMConfig&&delete localStorage.CMConfig,void 0!==t){e=t;let o=!1;Object.keys(an).forEach((t=>{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"!==t&&"Colors"!==t?-1===t.indexOf("SoundURL")?e[t]>-1&&e[t]{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])})):Object.keys(an.Colors).forEach((n=>{void 0!==e[t][n]&&"string"==typeof e[t][n]||(o=!0,e[t][n]=an[t][n])}))})),o&&Tn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Mn(an)}function Sn(){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
${le(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${ce((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(le(Game.Objects[o].bulkPrice)).join(le((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 ee=t,te=o,Bo(),l("tooltip").innerHTML}function Pn(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(x[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 En(){if(!u&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];d=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){d(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Tn()}function jn(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(){An(o),Game.UpdateMenu()},n.appendChild(i),n}function Un(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(H[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 Dn(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 Hn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(jn("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()0&&(t.appendChild(Un("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(le(e)))),t.appendChild(Un("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(se(e/ct)))))}const l=function(e){let t=Game.cookiesPs;vo(),0===qt["Heavenly key"].bought&&(qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Uo(),t=Ie,vo()),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"),qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Le=e;const o=Fe;Uo(),Vo(),o!==Fe&&Uo();const n=Ie-t;return Le=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(le(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(Un("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(Un("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(Un("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(Un("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(jn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${le(ft)} / ${le(Ct)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Sn()},e.appendChild(t),o.appendChild(Un("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${le(yt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==yt[1]&&(Game.wrinklers[yt[1]].hp=0)},n.appendChild(i),o.appendChild(Un("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==yt[1]?yt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Ho).forEach((e=>{Game.Has(Ho[e])||(n.push(Ho[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=[];Object.keys(Io).forEach((e=>{Game.HasUnlocked(Io[e])||(s.push(Io[e]),o=!0)}));const c=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),d=Game.Has("Century egg");if(("christmas"===Game.season||o||c||d)&&(t.appendChild(jn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Un("basic","Halloween cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${le(100*(1-e))}% / ${le(100*(1-.9*e))}%`)))}if(0!==i.length){t.appendChild(Un("basic","Christmas cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${le(100*(1-e))}%`)))}0!==a.length&&t.appendChild(Un("basic","Valentine cookies left to buy",Dn(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(Un("basic","Normal easter eggs left to unlock",Dn(r))),t.appendChild(Un("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[0])}% / ${le(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Un("basic","Rare easter eggs left to unlock",Dn(l))),t.appendChild(Un("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[1])}% / ${le(100*e(.9)[1])}%`)))),0!==s.length&&t.appendChild(Un("basic","Rare plant drops left to unlock",Dn(s))),"christmas"===Game.season&&t.appendChild(Un("basic","Reindeer reward",document.createTextNode(le(pt)))),c&&t.appendChild(Un("withTooltip","Chocolate egg cookies",document.createTextNode(le(ut)),"ChoEggTooltipPlaceholder")),d&&t.appendChild(Un("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(dt-1))/100+"%")))}return t}()),o.appendChild(jn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Un("basic",`Average Cookies Per Second (Past ${q[e.AvgCPSHist]<60?`${q[e.AvgCPSHist]} seconds`:q[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(le(so(),3)))),o.appendChild(Un("basic",`Average Cookie Clicks Per Second (Past ${Y[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(le(vt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Do).forEach((t=>{Game.Has(Do[t])||e.push(Do[t])})),0!==e.length&&o.appendChild(Un("basic","Fortune Upgrades Left to Buy",Dn(e)))}if(e.ShowMissedGC&&o.appendChild(Un("basic","Missed Golden Cookies",document.createTextNode(le(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(Un("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&&xt){const t=xt.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=xt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(wt){const t=wt.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=wt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(Tt){const t=Tt.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=Tt,e.appendChild(i)}}}))}const Rn={BarsColors:"Bars/Colors",Calculation:"Calculation",Notification:"Notification",Tooltip:"Tooltips and additional insights",Statistics:"Statistics",Notation:"Notation",Miscellaneous:"Miscellaneous"},$n={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 In(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(){An(t),Game.UpdateMenu()},n.appendChild(i),n}function zn(t){const o=document.createElement("div");if(o.className="listing","bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Wn+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Wn+t).className="option off")):l(Wn+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Wn+t).innerHTML=gn[t].label[e[t]],Tn()}(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(){Ln(t)},r.onchange=function(){Ln(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){vn(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=Wn+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=`${Wn+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){Game.Prompt(a.outerHTML,[["Save",function(){e[`${t}`]=l(`CMConfig${t}Prompt`).value,Tn(),Game.ClosePrompt(),Game.UpdateMenu()}],"Cancel"])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("color"===gn[t].type){o.className="";for(let t=0;tthis.max&&console.log("TEST"),e[t]=this.value,Tn(),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 Vn(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 _n(){M.Beautify=Beautify,Beautify=le,M.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){M.CalculateGains(),Re=1,Jt=Date.now(),Kt=Date.now()},M.tooltip={},M.tooltip.draw=Game.tooltip.draw,M.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){M.tooltip.drawMod(e,t,o)},M.tooltip.update=Game.tooltip.update,M.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){M.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`}}()},M.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){Vn(M.UpdateWrinklers)},M.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){Vn(M.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){Vn(Game.ClickCookie)}),!1),M.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){M.RebuildUpgrades(),T=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(T[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()},M.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e-1].amount>0){const o=Qt[Game.ObjectsById[e].name].name;Qt[o].amount-=1,Ee-=1,t=Qt[o].basePrice*Game.priceIncrease**Math.max(0,Qt[o].amount-1-Qt[o].free),t=Game.modifyBuildingPrice(Qt[o],t),t=Math.ceil(t);break}const o=Fe;return Uo(),Vo(),o!==Fe&&Uo(),[Ie-Game.cookiesPs,t]}(t),n=se(o/(e+Game.cookiesPs)),i=le(e/Game.cookiesPs);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 ${le(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)},M.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){M.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Qe}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},M.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Fn().picker&&void 0!==Fn().picker.owner||(M.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(Rn).forEach((t=>{const n=In(t,Rn[t]);o.appendChild(n),e.Header[t]&&("Notification"===t?Object.keys($n).forEach((t=>{const n=In(t,$n[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(zn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(zn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Mn(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",Hn(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(){An("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
\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))}())},M.sayTime=Game.sayTime,$=function(e,t){return Number.isNaN(e)||e<=0?M.sayTime(e,t):se(e/Game.fps,1)},M.Logic=Game.Logic,Game.Logic=function(){M.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),re=`${Game.OnAscend?"Ascending! ":""}${le(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=re;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=Ht?Ht.wrath?`[W${Math.ceil(Ht.life/Game.fps)}]`:`[G${Math.ceil(Ht.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)}]`,g&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=h?`[R${Math.ceil(Rt.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=re;"["===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;Ht&&(t=!0,Ht.wrath?e+=`[W${Math.ceil(Ht.life/Game.fps)}]`:e+=`[G${Math.ceil(Ht.life/Game.fps)}]`),g&&(t=!0,e+="[F]"),"christmas"===Game.season&&h&&(e+=`[R${Math.ceil(Rt.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 ${le(Game.prestige)}.
(CpS +${le(Game.prestige)}%)`,n+='
'),n+=Se<1?"Ascending now would grant you no prestige.":Se<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${le(Se)} prestige levels (+${le(Se)}% CpS)
and ${le(Se)} heavenly chips to spend.`,n+='
',n+=`You need ${le(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${$t} to reach the next level and you are making ${le(ct,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Xn(){bn(),en(),nn(),a=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.backgroundColor="#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=S+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",N)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",P)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",P)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",P)),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.backgroundColor="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:L},{id:"CMTimerBarGCBar",color:W}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:L},{id:"CMTimerBarRenBar",color:O}]);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.backgroundColor="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(P,"Better than best PP building")),e.appendChild(o(E,"Same as best PP building")),e.appendChild(o(N,"Between best and worst PP buildings closer to best")),e.appendChild(o(O,"Between best and worst PP buildings closer to worst")),e.appendChild(o(F,"Same as worst PP building")),e.appendChild(o(W,"Worse than worst PP building")),e.appendChild(o(L,"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=S+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",P)),e.appendChild(o("CMUpgradeBarGreen",E)),e.appendChild(o("CMUpgradeBarYellow",N)),e.appendChild(o("CMUpgradeBarOrange",O)),e.appendChild(o("CMUpgradeBarRed",F)),e.appendChild(o("CMUpgradeBarPurple",W)),e.appendChild(o("CMUpgradeBarGray",L)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMWhiteScreen",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(D).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),H[e]=n}(D[e][0],D[e][1],D[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Sn()},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!==yt[1]&&(Game.wrinklers[yt[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&&(w[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()&&(r=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),m=Game.LoadMinigames,Game.LoadMinigames=function(){m(),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()}}))),Pn(),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()}}}(),Nn()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){I=1},l("backgroundLeftCanvas").onmouseout=function(){I=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{V[e]=0}))},_n(),Nn(),Game.CalculateGains(),Mn(),R=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&&(Xn(),Game.registerHook("draw",Po),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),Mn(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={};const t=["","","M","G","T","P","E","Z","Y"],n=["","","M","B","Tr","Quadr","Quint","Sext","Sept","Oct","Non","Dec","Undec","Duodec","Tredec","Quattuordec","Quindec","Sexdec","Septendec","Octodec","Novemdec","Vigint","Unvigint","Duovigint","Trevigint","Quattuorvigint"],i=["","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 a,r,s,c,d,p,u,m,h,g,f,C,y,b,k,G,v,w=[],x=[],T=[],M={};const S="CMText",B="CMBack",P="Blue",E="Green",N="Yellow",O="Orange",F="Red",W="Purple",L="Gray",A="Pink",j="Brown",U=[L,P,E,N,O,F,W,A,j],D=[["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"]],H={};let R,$,I=0,z=-1,V=[],_=1,X=1,Q=1;const q=[10,15,30,60,300,600,900,1800],Y=[1,5,10,15,30],K={Frenzy:N,"Dragon Harvest":j,"Elder frenzy":E,Clot:F,"Click frenzy":P,Dragonflight:A};let J,Z,ee,te,oe,ne,ie,ae={},re="";function le(o,a,r){const l=e.ScaleDecimals+1;if(o===1/0)return"Infinity";if(void 0===o)return"0";if(0===e.Scale)return M.Beautify(o,a);if(Number.isFinite(o)){let s="";if(0===o)return o.toString();if(o>.001&&o=.01&&o=.01&&o=.01&&o315576e4)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 ce(t){let o,n;return t<=0?(n=e.TimeFormat?"00:00:00:00:00":"Done!",o=E):(n=se(t),o=t>300?F:t>60?O:N),{text:n,color:o}}let de,pe,ue,me,he,ge,fe,Ce,ye,be,ke,Ge,ve,we,xe,Te,Me,Se,Be,Pe,Ee,Ne,Oe,Fe,We,Le,Ae,je,Ue,De,He,Re,$e,Ie,ze,Ve=0,_e=0,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=1,lt=1,st=1,ct=0,dt=0,pt=0,ut=0,mt={},ht={},gt={},ft=0,Ct=0,yt=[0,null],bt=0,kt=0,Gt={},vt={},wt={},xt={},Tt={},Mt=0,St=0,Bt=[],Pt=0,Et=0,Nt=[],Ot=0,Ft=0,Wt=[],Lt=0,At=0,jt=[],Ut=0,Dt=0,Ht={},Rt={},$t=0,It=0,zt=[],Vt={},_t=0,Xt={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]},Qt=[],qt=[],Yt=[],Kt=Game.startDate,Jt=Game.startDate;function Zt(e){let t=0;return Game.dragonAuras[Ae].name!==e&&Game.dragonAuras[je].name!==e||(t=1),"Reality Bending"!==Game.dragonAuras[Ae].name&&"Reality Bending"!==Game.dragonAuras[je].name||(t+=.1),t}function eo(){let e=.25;return e*=1+Zt("Earth Shatterer"),e}function to(e,t){return void 0===$e[e]?void 0===t?1:t:$e[e]}function oo(e){const t=qt[e];return(1!==Game.ascensionMode||"prestige"!==t.pool&&"fortune"!==t.tier)&&t?t.bought:0}function no(e){if(Game.hasGod){void 0===Qt.Temple.minigame&&(Qt.Temple.minigame=Game.Objects.Temple.minigame);const t=Qt.Temple.minigame.gods[e];if(Ue===t.id)return 1;if(De===t.id)return 2;if(He===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"),Qt.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?X=t:t=X,1===t?t=mt:10===t?t=ht:100===t&&(t=gt),1===Game.buyMode?1===e.BuildColor?Object.keys(t).forEach((o=>{l(`productPrice${Game.Objects[o].id}`).style.color=e.Colors[t[o].color]})):Object.keys(Game.Objects).forEach((e=>{l(`productPrice${Game.Objects[e].id}`).style.removeProperty("color")})):-1===Game.buyMode&&Object.keys(mt).forEach((e=>{const t=Game.Objects[e];l(`productPrice${t.id}`).style.color="",l(`productPrice${t.id}`).innerHTML=le(ao(t,t.basePrice,t.amount,t.free,Game.buyBulk,1))})),1===Game.buyMode&&e.SortBuildings){let o;1===e.SortBuildings?(o=Object.keys(mt).map((e=>{const t=mt[e];return t.name=e,t.id=Game.Objects[e].id,t})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const o=t[e];return o.name=e,o.id=Game.Objects[e].id,o})),o.sort((function(e,t){return U.indexOf(e.color)>U.indexOf(t.color)?1:U.indexOf(e.color){const t=mt[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;eU.indexOf(t.color)?1:U.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?_=i:i=_,1===i&&(i=mt),10===i&&(i=ht),100===i&&(i=gt),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=le(i[o].bonus,2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].className=S+i[o].color,n=e.PPDisplayTime?se(Math.round(i[o].pp)):le(Math.round(i[o].pp),2),l("CMBotBar").firstChild.firstChild.childNodes[2].childNodes[t].textContent=n;const a=ce((Game.Objects[o].bulkPrice-(Game.cookies+co()))/so());l("CMBotBar").firstChild.firstChild.childNodes[3].childNodes[t].className=S+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*Qt.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(Qt).forEach((e=>{"Cursor"!==Qt[e].name&&(n+=Qt[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"!==Qt[e].name&&(i+=Qt[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(Qt).forEach((t=>{Qt[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 vo(){Ne=Game.UpgradesOwned,Oe=Game.pledges,Fe=Game.AchievementsOwned,We=Game.heavenlyPower,Le=Game.prestige,Object.keys(Game.Objects).forEach((e=>{const t=Game.Objects[e];let o=Qt[e];void 0===o&&(Qt[e]=ko(e),o=Qt[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],De=t.minigame.slot[1],He=t.minigame.slot[2]),o.minigameLoaded=t.minigameLoaded,o.minigame=t.minigame),Qt[e]=o})),Object.keys(Game.Upgrades).forEach((e=>{const t=Game.Upgrades[e];let o=qt[e];void 0===o&&(qt[e]=Go(e),o=qt[e]),o.bought=t.bought,qt[e]=o})),Object.keys(Game.Achievements).forEach((e=>{const t=Game.Achievements[e];let o=Yt[e];void 0===o&&(Yt[e]=yo(e),o=Yt[e]),o.won=t.won,Yt[e]=o})),Co(),Ae=Ve,je=_e}function wo(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(wo("Bonus Income"));const t=document.createElement("div");t.style.marginBottom="4px",t.style.color="white",t.id="CMTooltipIncome",e.appendChild(t),e.appendChild(wo("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(wo("Payback Period"));const n=document.createElement("div");n.style.marginBottom="4px",n.id="CMTooltipPP",e.appendChild(n),e.appendChild(wo("Time Left"));const i=document.createElement("div");if(i.id="CMTooltipTime",e.appendChild(i),"b"===ee){e.appendChild(wo("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 Bo(){if(vo(),"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"===ee?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=mt:10===Game.buyBulk?t=ht:100===Game.buyBulk&&(t=gt),J=Game.Objects[te].bulkPrice,Z=t[te].bonus,1===e.TooltipBuildUpgrade&&1===Game.buyMode){l("CMTooltipIncome").textContent=le(Z,2);const o=Math.round(Z/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=S+t[te].color,e.PPDisplayTime?l("CMTooltipPP").textContent=se(t[te].pp):l("CMTooltipPP").textContent=le(t[te].pp,2),l("CMTooltipPP").className=S+t[te].color;const n=ce((J-(Game.cookies+co()))/so());l("CMTooltipTime").textContent=n.text,"Done!"===n.text&&Game.cookiest.plantsById[t.plot[te[1]][te[0]][0]-1].matureBase,o=t.plantsById[t.plot[te[1]][te[0]][0]-1].name;l("CMTooltipBorder").appendChild(wo("Reward (Current / Maximum)"));const n=document.createElement("div");n.id="CMTooltipPlantReward",l("CMTooltipBorder").appendChild(n),"Bakeberry"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*30)):"0"} / ${le(60*Game.cookiesPs*30)}`:"Chocoroot"===o||"White chocoroot"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.03*Game.cookies,60*Game.cookiesPs*3)):"0"} / ${le(60*Game.cookiesPs*3)}`:"Queenbeet"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.04*Game.cookies,60*Game.cookiesPs*60)):"0"} / ${le(60*Game.cookiesPs*60)}`:"Duketater"===o?l("CMTooltipPlantReward").textContent=`${e?le(Math.min(.08*Game.cookies,60*Game.cookiesPs*120)):"0"} / ${le(60*Game.cookiesPs*120)}`:l("CMTooltipArea").style.display="none"}else l("CMTooltipArea").style.display="none"}():"ha"===ee?function(){const{minigame:t}=Game.Objects.Farm;if(e.TooltipLump){l("CMTooltipBorder").appendChild(wo("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!==K[Game.buffs[t].name]?K[Game.buffs[t].name]:W,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"),ie!==n&&(ie=n,go())}}(),mo(),Bo(),function(){if(1===e.TooltipWrink&&1===I){let e=!1;Object.keys(Game.wrinklers).forEach((t=>{const o=Game.wrinklers[t];if(o.phase>0&&o.selected){if(e=!0,0===V[t]||void 0===V[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)),z=t,V[t]=1}}else V[t]=0})),e||Game.tooltip.hide()}}(),function(){if(1===e.TooltipWrink&&null!==l("CMTooltipWrinkler")){let{sucked:e}=Game.wrinklers[z],t=1.1;if(Game.Has("Sacrilegious corruption")&&(t*=1.05),1===Game.wrinklers[z].type&&(t*=3),e*=t,Game.Has("Wrinklerspawn")&&(e*=1.05),Qt.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=le(e)}}(),e.UpStats&&"stats"===Game.onMenu&&(Game.drawT-1)%(5*Game.fps)!=0&&(Game.drawT-1)%Game.fps==0&&Game.UpdateMenu();let t=l("cookies").innerHTML.replace(/.*(?=
)/i,le(Game.cookies));Game.prefs.monospace&&(t=`${t}`),l("cookies").innerHTML=t}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+_t;Game.cpsSucked>0&&(o+=ft),Ut=Math.max(Game.cookiesEarned,o),o*=.05;const n=t-fe,i=Math.max(0,Game.cookies-Ce)/n,a=Math.max(0,ft-ye)/n,r=Math.max(0,yt[0]-be)/n,l=Math.max(0,o-ut)/n,s=(Game.cookieClicks-ke)/n;for(let e=0;ezt[30][0]?F:W,0!==Number(e.PPSecondsLowerLimit)&&o/so()0&&(n=F),n}function Fo(t,o){Object.keys(t).forEach((n=>{if(e.PPRigidelMode&&1===o)t[n].color=L;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||zt.push([t[n].pp,o])}))}function Lo(){!function(){It=1/0,zt=[],void 0===e.PPExcludeTop&&(e.PPExcludeTop=0),Wo(mt,1),Wo(ht,10),Wo(gt,100),zt.sort(((e,t)=>e[0]-t[0]));let t=0;if(e.PPOnlyConsiderBuyable)for(;zt[t][1]>Game.cookies&&(t+=1,zt.length!==t+1););It=zt[e.PPExcludeTop][t],Fo(mt,1),Fo(ht,10),Fo(gt,100)}(),Object.keys(Gt).forEach((e=>{Game.cookiesPs?Gt[e].pp=Math.max(Game.Upgrades[e].getPrice()-(Game.cookies+co()),0)/Game.cookiesPs+Game.Upgrades[e].getPrice()/Gt[e].bonus:Gt[e].pp=Game.Upgrades[e].getPrice()/Gt[e].bonus,Number.isNaN(Gt[e].pp)&&(Gt[e].pp=1/0),Gt[e].color=Oo(Gt[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]}))}})),$e=t,1!==Game.ascensionMode&&(e+=.01*parseFloat(Le)*We*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*qt[o.name].power(qt[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(Jt/1e3/10800*Math.PI*2):2===t?e*=1+.15*Math.sin(Jt/1e3/43200*Math.PI*2):3===t&&(e*=1+.15*Math.sin(Jt/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=Fe/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(Qt).forEach((e=>{const t=Qt[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),Ie+=t.amount*a})),oo('"egg"')&&(Ie+=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((Kt-Game.startDate)/1e3/10)/60/60/24;e=Math.min(e,100),dt=1+.1*(1-(1-e/100)**3),r*=dt}e*=r,oo("Sugar baking")&&(e*=1+.01*Math.min(100,Game.lumps)),e*=1+Zt("Radiant Appetite");const l=Ie*e;Object.keys(Game.CpsAchievements).forEach((e=>{l>=Game.CpsAchievements[e].threshold&&jo(Game.CpsAchievements[e].name)})),ze=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),Ie=Game.runModHookOnValue("cps",Ie),e*=Mo(),Ie*=e}const Do=["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"],Ho=["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 Yt[e]?Yt[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(Qt).forEach((e=>{t+=Qt[e].amount,i=Math.min(Qt[e].amount,i),zo("Mathematician")||Qt[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"),Ne>=20&&jo("Enhancer"),Ne>=50&&jo("Augmenter"),Ne>=100&&jo("Upgrader"),Ne>=200&&jo("Lord of Progress"),Ne>=300&&jo("The full picture"),Ne>=400&&jo("When there's nothing left to add"),t>=4e3&&Ne>=300&&jo("Polymath"),t>=8e3&&Ne>=400&&jo("Renaissance baker"),Qt.Cursor.amount+Qt.Grandma.amount>=777&&jo("The elder scrolls");let a=!0;Object.keys(Ho).forEach((e=>{oo(Ho[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,t){const o=[];return Object.keys(Game.Objects).forEach((t=>{o[t]={},o[t].bonus=function(e,t){vo(),Qt[e].amount+=t;const o=Qt[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=Fe;return Uo(),Vo(),n!==Fe&&Uo(),Ie-Game.cookiesPs}(t,e),1!==e&&(Be=1)})),o}function Xo(){Object.keys(Game.Objects).forEach((e=>{mt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,1),ht[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,10),gt[e].price=Ao(Game.Objects[e],Game.Objects[e].basePrice,Game.Objects[e].amount,Game.Objects[e].free,100)}))}function Qo(){mt=_o(1),ht=_o(10),gt=_o(100),Gt=[],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){vo(),"Shimmering veil [on]"===qt[e].name?qt["Shimmering veil [off]"].bought=0:"Golden switch [on]"===qt[e].name?qt["Golden switch [off]"].bought=0:qt[e].bought=(qt[e].bought+1)%2,qt[e],Game.CountsAsUpgradeOwned(Game.Upgrades[e].pool)&&(Ne+=1),"Elder Pledge"===e?(Oe+=1,Oe>0&&jo("Elder nap"),Oe>=5&&jo("Elder slumber")):"Elder Covenant"===e?jo("Elder calm"):"Prism heart biscuits"===e?jo("Lovely cookies"):"Heavenly key"===e&&jo("Wholesome");const t=Fe;Uo(),Vo(),t!==Fe&&Uo();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(Qt).forEach((e=>{t+=Qt[e].amount})),t-=Qt.Cursor.amount,e*=t,oo("Plastic mouse")&&(e+=.01*Ie),oo("Iron mouse")&&(e+=.01*Ie),oo("Titanium mouse")&&(e+=.01*Ie),oo("Adamantium mouse")&&(e+=.01*Ie),oo("Unobtainium mouse")&&(e+=.01*Ie),oo("Eludium mouse")&&(e+=.01*Ie),oo("Wishalloy mouse")&&(e+=.01*Ie),oo("Fantasteel mouse")&&(e+=.01*Ie),oo("Nevercrack mouse")&&(e+=.01*Ie),oo("Armythril mouse")&&(e+=.01*Ie),oo("Technobsidian mouse")&&(e+=.01*Ie),oo("Plasmarble mouse")&&(e+=.01*Ie),oo("Miraculite mouse")&&(e+=.01*Ie),oo("Fortune #104")&&(e+=.01*Ie);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"),Qt.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?[Ie-Game.cookiesPs,o]:[Ie-Game.cookiesPs]}return[]}(t);"Elder Pledge"===t?(Gt[t]={bonus:Game.cookiesPs-Ge},1===e.CalcWrink?Gt[t].bonus-=ve:2===e.CalcWrink&&(Gt[t].bonus-=we),Number.isFinite(Gt[t].bonus)||(Gt[t].bonus=0)):(Gt[t]={},o[0]&&(Gt[t].bonus=o[0]),o[1]&&(Gt[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,Bt=qo(7,e,lt),Mt=2*Bt[1]/lt,St=Bt[2]/60/60/6/rt,Nt=qo(6,e,st),Pt=2*Nt[1]/st,Et=Nt[2]/60/60/6/rt,Wt=qo(7,7*e,lt),Ot=2*Wt[1]/lt,Ft=Wt[2]/60/60/6/rt,jt=qo(6,7*e,st),Lt=2*jt[1]/st,At=jt[2]/60/60/6/rt}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-Me,i=Math.max(0,o-Se)/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?xt+=e:"cookie"===o.pool?Tt+=e:"toggle"!==o.pool&&"unused"!==o.pool&&"debug"!==o.pool&&(wt+=e)}}))}function Zo(){if("christmas"===Game.season){let e=60*Game.cookiesPs;Game.hasBuff("Elder frenzy")&&(e*=.5),Game.hasBuff("Frenzy")&&(e*=.75),pt=Math.max(25,e),Game.Has("Ho ho ho-flavored frosting")&&(pt*=2)}}function en(){qe=900*at/.15,qe*=rt;const e=Mo();e>0?qe/=e:qe=0,Ye=lt*(.15*qe)+13,Ke=st*(.15*qe)+13,Je=7*qe,Ze=lt*(.15*Je)+13,et=st*(.15*Je)+13,tt=2*qe,ot=.15*tt,nt=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].amountnt&&(nt=2*Game.Objects[e].price,it=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"),lt=o*e,st=o*t,rt=1,0===Game.shimmerTypes.golden.n&&(rt*=1+1.23*Game.auraMult("Dragon's Fortune"))}function on(){ft=0,Ct=0,yt=[0,null];for(let e=0;eyt[0]&&(yt=[t,e]))}}function nn(){Co(),on(),en(),tn(),Yo(),Jo(),Zo(),de=new Eo(q[q.length-1]),pe=new Eo(q[q.length-1]),ue=new Eo(q[q.length-1]),me=new Eo(q[q.length-1]),he=new Eo(Y[Y.length-1]),ge=new Eo(5),Ko(),No(),Qo(),Xo(),Lo()}const an={BotBar:1,TimerBar:1,TimerBarPos:0,TimerBarOverlay:2,BuildColor:1,PPDisplayTime:0,UpBarColor:1,UpgradeBarFixedPos:1,CalcWrink:0,CPSMode:1,AvgCPSHist:3,AvgClicksHist:0,PPExcludeTop:0,PPRigidelMode:0,PPSecondsLowerLimit:0,PPOnlyConsiderBuyable:0,ToolWarnBon:1,Title:1,GeneralSound:1,GCNotification:0,GCFlash:1,GCSound:1,GCVolume:100,GCSoundURL:"https://freesound.org/data/previews/66/66717_931655-lq.mp3",FortuneNotification:0,FortuneFlash:1,FortuneSound:1,FortuneVolume:100,FortuneSoundURL:"https://freesound.org/data/previews/174/174027_3242494-lq.mp3",SeaNotification:0,SeaFlash:1,SeaSound:1,SeaVolume:100,SeaSoundURL:"https://www.freesound.org/data/previews/121/121099_2193266-lq.mp3",GardFlash:1,GardSound:1,GardVolume:100,GardSoundURL:"https://freesound.org/data/previews/103/103046_861714-lq.mp3",MagicNotification:0,MagicFlash:1,MagicSound:1,MagicVolume:100,MagicSoundURL:"https://freesound.org/data/previews/221/221683_1015240-lq.mp3",WrinklerNotification:0,WrinklerFlash:1,WrinklerSound:1,WrinklerVolume:100,WrinklerSoundURL:"https://freesound.org/data/previews/124/124186_8043-lq.mp3",WrinklerMaxNotification:0,WrinklerMaxFlash:1,WrinklerMaxSound:1,WrinklerMaxVolume:100,WrinklerMaxSoundURL:"https://freesound.org/data/previews/152/152743_15663-lq.mp3",TooltipBuildUpgrade:1,TooltipAmor:0,ToolWarnLucky:1,ToolWarnLuckyFrenzy:1,ToolWarnConjure:1,ToolWarnConjureFrenzy:1,ToolWarnEdifice:1,ToolWarnUser:0,ToolWarnPos:1,TooltipGrim:1,TooltipWrink:1,TooltipLump:1,TooltipPlots:1,TooltipPantheon:1,DragonAuraInfo:1,TooltipAscendButton:1,Stats:1,MissingUpgrades:1,UpStats:1,TimeFormat:0,DetailedTime:1,GrimoireBar:1,HeavenlyChipsTarget:1,ShowMissedGC:1,Scale:2,ScaleDecimals:2,ScaleSeparator:0,ScaleCutoff:999999,Colors:{Blue:"#4bb8f0",Green:"#00ff00",Yellow:"#ffff00",Orange:"#ff7f00",Red:"#ff0000",Purple:"#ff00ff",Gray:"#b3b3b3",Pink:"#ff1493",Brown:"#8b4513"},SortBuildings:0,SortUpgrades:0,GCTimer:1,Favicon:1,WrinklerButtons:1,HideSectionsButtons:0,BulkBuyBlock:0,Header:{BarsColors:1,Calculation:1,Notification:1,NotificationGeneral:1,NotificationGC:1,NotificationFC:1,NotificationSea:1,NotificationGard:1,NotificationMagi:1,NotificationWrink:1,NotificationWrinkMax:1,Tooltip:1,Statistics:1,Notation: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(){let t="";for(let o=0;o0?Ht.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 pn{constructor(e,t){this.type=e,this.group=t}}class un extends pn{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 mn extends pn{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 pn{constructor(e,t,o,n,i,a){super(e,t),this.label=o,this.desc=n,this.min=i,this.max=a}}const gn={BotBar:new un("bool","BarsColors",["Bottom Bar OFF","Bottom Bar ON"],"Building Information",!0,(function(){ln()})),TimerBar:new un("bool","BarsColors",["Timer Bar OFF","Timer Bar ON"],"Timers of Golden Cookie, Season Popup, Frenzy (Normal, Clot, Elder), Click Frenzy",!0,(function(){fo()})),TimerBarPos:new un("bool","BarsColors",["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 un("bool","BarsColors",["Timer Bar Overlay OFF","Timer Bar Overlay Only Seconds","Timer Bar Overlay Full"],"Overlay on timers displaying seconds and/or percentage left",!0),SortBuildings:new un("bool","BarsColors",["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 un("bool","BarsColors",["Sort Upgrades: Default","Sort Upgrades: PP"],"Sort the display of upgrades in either default order or by PP",!1,(function(){lo()})),BuildColor:new un("bool","BarsColors",["Building Colors OFF","Building Colors ON"],"Color code buildings",!0,(function(){ro()})),PPDisplayTime:new un("bool","BarsColors",["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),UpBarColor:new un("bool","BarsColors",["Upgrade Colors/Bar OFF","Upgrade Colors with Bar ON","Upgrade Colors without Bar ON"],"Color 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())})),Colors:new class extends pn{constructor(e,t,o,n){super(e,t),this.desc=o,this.func=n}}("color","BarsColors",{Blue:"Color Blue. Used to show upgrades better than best PP building, for Click Frenzy bar, and for various labels",Green:"Color Green. Used to show best PP building, for Blood Frenzy bar, and for various labels",Yellow:"Color Yellow. Used to show buildings within the top 10 of PP, for Frenzy bar, and for various labels",Orange:"Color Orange. Used to show buildings within the top 20 of PP, for Next Reindeer bar, and for various labels",Red:"Color Red. Used to show buildings within the top 30 of PP, for Clot bar, and for various labels",Purple:"Color Purple. Used to show buildings outside of the top 30 of PP, for Next Cookie bar, and for various labels",Gray:"Color Gray. Used to show negative or infinity PP, and for Next Cookie/Next Reindeer bar",Pink:"Color Pink. Used for Dragonflight bar",Brown:"Color Brown. Used for Dragon Harvest bar"},(function(){cn()})),UpgradeBarFixedPos:new un("bool","BarsColors",["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=""})),CalcWrink:new un("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(){Re=!0})),CPSMode:new un("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 un("bool","Calculation",["Average CPS for past 10s","Average CPS for past 15s","Average CPS for past 30s","Average CPS for past 1m","Average CPS for past 5m","Average CPS for past 10m","Average CPS for past 15m","Average CPS for past 30m"],"How much time average Cookies Per Second should consider",!1),AvgClicksHist:new un("bool","Calculation",["Average Cookie Clicks for past 1s","Average Cookie Clicks for past 5s","Average Cookie Clicks for past 10s","Average Cookie Clicks for past 15s","Average Cookie Clicks for past 30s"],"How much time average Cookie Clicks should consider",!1),PPExcludeTop:new un("bool","Calculation",["Don't Ignore Any","Ignore 1st Best","Ignore 1st and 2nd Best","Ignore 1st, 2nd and 3rd Best"],"Makes CookieMonster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values",!0),PPRigidelMode:new un("bool","Calculation",["Rigidel Mode OFF","Rigidel Mode ON"],'Makes CookieMonster 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","Calculation","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),PPOnlyConsiderBuyable:new un("bool","Calculation",["Don't Ignore Non-Buyable","Ignore Non-Buyable"],"Makes CookieMonster 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),ToolWarnBon:new un("bool","Calculation",["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),Title:new un("bool","NotificationGeneral",["Title OFF","Title ON","Title Pinned Tab Highlight"],'Update title with Golden 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 un("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 un("bool","NotificationGC",["Notification OFF","Notification ON"],"Create a notification when Golden Cookie spawns",!0,(function(){rn(e.GCNotification)})),GCFlash:new un("bool","NotificationGC",["Flash OFF","Flash ON"],"Flash screen on Golden Cookie",!0),GCSound:new un("bool","NotificationGC",["Sound OFF","Sound ON"],"Play a sound on Golden Cookie",!0),GCVolume:new mn("vol","NotificationGC",[],"Volume"),GCSoundURL:new un("url","NotificationGC","Sound URL:","URL of the sound to be played when a Golden Cookie spawns"),FortuneNotification:new un("bool","NotificationFC",["Notification OFF","Notification ON"],"Create a notification when Fortune Cookie is on the Ticker",!0,(function(){rn(e.FortuneNotification)})),FortuneFlash:new un("bool","NotificationFC",["Flash OFF","Flash ON"],"Flash screen on Fortune Cookie",!0),FortuneSound:new un("bool","NotificationFC",["Sound OFF","Sound ON"],"Play a sound on Fortune Cookie",!0),FortuneVolume:new mn("vol","NotificationFC",[],"Volume"),FortuneSoundURL:new un("url","NotificationFC","Sound URL:","URL of the sound to be played when the Ticker has a Fortune Cookie"),SeaNotification:new un("bool","NotificationSea",["Notification OFF","Notification ON"],"Create a notification on Season Popup",!0,(function(){rn(e.SeaNotification)})),SeaFlash:new un("bool","NotificationSea",["Flash OFF","Flash ON"],"Flash screen on Season Popup",!0),SeaSound:new un("bool","NotificationSea",["Sound OFF","Sound ON"],"Play a sound on Season Popup",!0),SeaVolume:new mn("vol","NotificationSea",[],"Volume"),SeaSoundURL:new un("url","NotificationSea","Sound URL:","URL of the sound to be played when a Season Special spawns"),GardFlash:new un("bool","NotificationGard",["Garden Tick Flash OFF","Flash ON"],"Flash screen on Garden Tick",!0),GardSound:new un("bool","NotificationGard",["Sound OFF","Sound ON"],"Play a sound on Garden Tick",!0),GardVolume:new mn("vol","NotificationGard",[],"Volume"),GardSoundURL:new un("url","NotificationGard","Garden Tick Sound URL:","URL of the sound to be played when the garden ticks"),MagicNotification:new un("bool","NotificationMagi",["Notification OFF","Notification ON"],"Create a notification when magic reaches maximum",!0,(function(){rn(e.MagicNotification)})),MagicFlash:new un("bool","NotificationMagi",["Flash OFF","Flash ON"],"Flash screen when magic reaches maximum",!0),MagicSound:new un("bool","NotificationMagi",["Sound OFF","Sound ON"],"Play a sound when magic reaches maximum",!0),MagicVolume:new mn("vol","NotificationMagi",[],"Volume"),MagicSoundURL:new un("url","NotificationMagi","Sound URL:","URL of the sound to be played when magic reaches maxium"),WrinklerNotification:new un("bool","NotificationWrink",["Notification OFF","Notification ON"],"Create a notification when a Wrinkler appears",!0,(function(){rn(e.WrinklerNotification)})),WrinklerFlash:new un("bool","NotificationWrink",["Flash OFF","Flash ON"],"Flash screen when a Wrinkler appears",!0),WrinklerSound:new un("bool","NotificationWrink",["Sound OFF","Sound ON"],"Play a sound when a Wrinkler appears",!0),WrinklerVolume:new mn("vol","NotificationWrink",[],"Volume"),WrinklerSoundURL:new un("url","NotificationWrink","Sound URL:","URL of the sound to be played when a Wrinkler appears"),WrinklerMaxNotification:new un("bool","NotificationWrinkMax",["Notification OFF","Notification ON"],"Create a notification when the maximum amount of Wrinklers has appeared",!0,(function(){rn(e.WrinklerMaxNotification)})),WrinklerMaxFlash:new un("bool","NotificationWrinkMax",["Flash OFF","Flash ON"],"Flash screen when the maximum amount of Wrinklers has appeared",!0),WrinklerMaxSound:new un("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 un("url","NotificationWrinkMax","Sound URL:","URL of the sound to be played when the maximum amount of Wrinklers has appeared"),TooltipBuildUpgrade:new un("bool","Tooltip",["Building/Upgrade Tooltip Information OFF","Building/Upgrade Tooltip Information ON"],"Extra information in Building/Upgrade tooltips",!0),TooltipAmor:new un("bool","Tooltip",["Buildings Tooltip Amortization Information OFF","Buildings Tooltip Amortization Information ON"],"Add amortization information to buildings tooltip",!0),ToolWarnLucky:new un("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 un("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 un("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 un("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 un("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),ToolWarnPos:new un("bool","Tooltip",["Tooltip Warning Position (Left)","Tooltip Warning Position (Bottom)"],"Placement of the warning boxes",!1,(function(){So()})),TooltipGrim:new un("bool","Tooltip",["Grimoire Tooltip Information OFF","Grimoire Tooltip Information ON"],"Extra information in tooltip for grimoire",!0),TooltipWrink:new un("bool","Tooltip",["Wrinkler Tooltip OFF","Wrinkler Tooltip ON"],"Shows the amount of cookies a wrinkler will give when popping it",!0),TooltipLump:new un("bool","Tooltip",["Sugar Lump Tooltip OFF","Sugar Lump Tooltip ON"],"Shows the current Sugar Lump type in Sugar lump tooltip.",!0),TooltipPlots:new un("bool","Tooltip",["Garden Plots Tooltip OFF","Garden Plots Tooltip ON"],"Shows a tooltip for plants that have a cookie reward.",!0),TooltipPantheon:new un("bool","Tooltip",["Show Extra Info Pantheon Tooltip OFF","Show Extra Info Pantheon Tooltip ON"],"Shows additional info in the pantheon tooltip",!0),DragonAuraInfo:new un("bool","Tooltip",["Extra Dragon Aura Info OFF","Extra Dragon Aura Info ON"],"Shows information about changes in CPS and costs in the dragon aura interface.",!0),TooltipAscendButton:new un("bool","Tooltip",["Show Extra Info Ascend Tooltip OFF","Show Extra Info Ascend Tooltip ON"],"Shows additional info in the ascend tooltip",!0),Stats:new un("bool","Statistics",["Statistics OFF","Statistics ON"],"Extra Cookie Monster statistics!",!0),MissingUpgrades:new un("bool","Statistics",["Missing Upgrades OFF","Missing Upgrades ON"],"Shows Missing upgrades in Stats Menu. This feature can be laggy for users with a low amount of unlocked achievements.",!0),UpStats:new un("bool","Statistics",["Statistics Update Rate (Default)","Statistics Update Rate (1s)"],"Default Game rate is once every 5 seconds",!1),TimeFormat:new un("bool","Statistics",["Time XXd, XXh, XXm, XXs","Time XX:XX:XX:XX:XX"],"Change the time format",!1),DetailedTime:new un("bool","Statistics",["Detailed Time OFF","Detailed Time ON"],"Change how time is displayed in certain statistics and tooltips",!0,(function(){1===e.DetailedTime?Game.sayTime=$:Game.sayTime=M.sayTime})),GrimoireBar:new un("bool","Statistics",["Grimoire Magic Meter Timer OFF","Grimoire Magic Meter Timer ON"],"A timer on how long before the Grimoire magic meter is full",!0),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 un("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),Scale:new un("bool","Notation",["Game's Setting Scale","Metric","Short Scale","Short Scale (Abbreviated)","Scientific Notation","Engineering Notation"],"Change how long numbers are handled",!1,(function(){sn()})),ScaleDecimals:new un("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 un("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 CookieMonster will start formatting numbers based on chosen scale. Standard is 999,999. Setting this above 999,999,999 might break certain notations",1,999999999),GCTimer:new un("bool","Miscellaneous",["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(ae).forEach((e=>{ae[e].style.display="block",ae[e].style.left=Vt[e].l.style.left,ae[e].style.top=Vt[e].l.style.top})):Object.keys(ae).forEach((e=>ae[e].style.display="none"))})),Favicon:new un("bool","Miscellaneous",["Favicon OFF","Favicon ON"],"Update favicon with Golden/Wrath Cookie",!0,(function(){dn()})),WrinklerButtons:new un("bool","Miscellaneous",["Extra Wrinkler Buttons OFF","Extra Wrinkler Buttons ON"],"Show buttons for popping wrinklers at bottom of cookie section",!0,(function(){e.WrinklerButtons?(l("PopAllNormalWrinklerButton").style.display="",l("PopFattestWrinklerButton").style.display=""):(l("PopAllNormalWrinklerButton").style.display="none",l("PopFattestWrinklerButton").style.display="none")})),HideSectionsButtons:new un("bool","Miscellaneous",["Hide Upgrades/Buildings Button OFF","Hide Upgrades/Buildings Button ON"],"Show buttons for hiding and showing the upgrades and buildings section in the right column",!0,(function(){e.HideSectionsButtons?l("CMSectionHidButtons").style.display="":l("CMSectionHidButtons").style.display="none"})),BulkBuyBlock:new un("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)};function fn(){return JSON.stringify({settings:e,version:"2.031.6"})}function Cn(){if(Xe!==Game.dragonLevel||Re){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{Qt[e]=ko(e)})),qt=[],Object.keys(Game.Upgrades).forEach((e=>{qt[e]=Go(e)})),Yt=[],Object.keys(Game.Achievements).forEach((e=>{Yt[e]=yo(e)})),vo()}let kn=!1;function Gn(t,o){1===e[o]&&3===t&&!1===kn||1===t?(l("CMWhiteScreen").style.opacity="0.5",3===t?(l("CMWhiteScreen").style.display="inline",setTimeout((function(){Gn(2,o)}),1e3/Game.fps)):setTimeout((function(){Gn(0,o)}),1e3/Game.fps)):2===t?(l("CMWhiteScreen").style.opacity="1",setTimeout((function(){Gn(1,o)}),1e3/Game.fps)):0===t&&(l("CMWhiteScreen").style.display="none")}function vn(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 wn(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(ne!==Game.OnAscend&&(ne=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){a!==Object.keys(Game.mods).length&&(bn(),nn(),a=Object.keys(Game.mods).length),Re&&(Qo(),Game.Has("Golden switch [off]")?(vo(),qt["Golden switch [off]"].bought=0,Uo(),at=Ie):at=Game.cookiesPs,tn(),en(),Jo(),Yo(),Cn(),function(){for(let e=0;e<11;e+=1)for(let t=0;t<3;t+=1)Xt[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;vo();let t=2;5!==Ae&&18!==Ae||(t-=1),5!==je&&18!==je||(t-=1),Ae=5,je=18;for(let e=0;e{Qt[t].amount>0&&(e=t)})),Qt[e].amount-=1,Ee-=1}return Object.keys(Qt).forEach((t=>{const o=Qt[t];e+=ao(Game.Objects[o.name],Game.Objects[t].basePrice,o.amount,Game.Objects[t].free,o.amount)})),e}(),_t=e}(),Re=0);const t=Game.auraMult("Fierce Hoarder")>0;!Pe&&t?(Pe=!0,Be=1):Pe&&!t&&(Pe=!1,Be=1),Be&&(Xo(),Be=0),function(){on(),Lo(),function(){bt=0;let e=0;Object.keys(Game.wrinklers).forEach((t=>{2===Game.wrinklers[t].phase&&(e+=1)}));let t=1;if(Qt.Temple.minigameLoaded){const e=Game.hasGod("scorn");1===e?t*=1.15:2===e?t*=1.1:3===e&&(t*=1.05)}kt=e,bt=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);$t=se(e/so())}(),k=0,Vt={},Object.keys(Game.shimmers).forEach((e=>{Vt[Game.shimmers[e].id]=Game.shimmers[e],Game.shimmers[e].spawnLead&&"golden"===Game.shimmers[e].type&&(Ht=Game.shimmers[e],k+=1)})),Object.keys(ae).forEach((e=>{void 0===Vt[e]&&(ae[e].parentNode.removeChild(ae[e]),delete ae[e])})),C!==Game.shimmerTypes.golden.n?(C=Game.shimmerTypes.golden.n,C&&(y{void 0===ae[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=""},ae[t.id]=o,l("shimmers").appendChild(o)}(Game.shimmers[t])}))),dn(),y=k,0===k&&(Ht=0)):1===e.GCTimer&&C&&Object.keys(ae).forEach((e=>{ae[e].style.opacity=Vt[e].l.style.opacity,ae[e].style.transform=Vt[e].l.style.transform,ae[e].textContent=Math.ceil(Vt[e].life/Game.fps)})),g!==(Game.TickerEffect&&"fortune"===Game.TickerEffect.type)&&(g=Game.TickerEffect&&"fortune"===Game.TickerEffect.type,g&&(Gn(3,"FortuneFlash"),vn(e.FortuneSoundURL,"FortuneSound","FortuneVolume",!1),wn("FortuneNotification","Fortune Cookie found","A Fortune Cookie has appeared on the Ticker."))),h!==Game.shimmerTypes.reindeer.spawned&&(h=Game.shimmerTypes.reindeer.spawned,Object.keys(Game.shimmers).forEach((e=>{Game.shimmers[e].spawnLead&&"reindeer"===Game.shimmers[e].type&&(Rt=Game.shimmers[e])})),Gn(3,"SeaFlash"),vn(e.SeaSoundURL,"SeaSound","SeaVolume",!1),wn("SeaNotification","Reindeer sighted!","A Reindeer has spawned. Click it now!")),Game.Objects.Farm.minigameLoaded&&f!==Game.Objects.Farm.minigame.nextStep&&(0!==f&&f0){let t=0;Object.keys(Game.wrinklers).forEach((e=>{2===Game.wrinklers[e].phase&&(t+=1)})),t>G?(G=t,t===Game.getWrinklersMax()&&e.WrinklerMaxFlash?Gn(3,"WrinklerMaxFlash"):Gn(3,"WrinklerFlash"),t===Game.getWrinklersMax()&&e.WrinklerMaxSound?vn(e.WrinklerMaxSoundURL,"WrinklerMaxSound","WrinklerMaxVolume",!1):vn(e.WrinklerSoundURL,"WrinklerSound","WrinklerVolume",!1),t===Game.getWrinklersMax()&&e.WrinklerMaxNotification?wn("WrinklerMaxNotification","Maximum Wrinklers Reached","You have reached your maximum ammount of wrinklers"):wn("WrinklerNotification","A Wrinkler appeared","A new wrinkler has appeared")):G=t}}()}}function Tn(){const e=b64_to_utf8(unescape(localStorage.getItem("CookieClickerGame")).split("!END!")[0]),t=e.match(/CookieMonster.*(;|$)/);if(null!==t){const o=e.replace(t[0],`CookieMonster:${fn()}`);localStorage.setItem("CookieClickerGame",escape(`${utf8_to_b64(o)}!END!`))}}function Mn(t){if(void 0!==localStorage.CMConfig&&delete localStorage.CMConfig,void 0!==t){e=t;let o=!1;Object.keys(an).forEach((t=>{void 0===e[t]?(o=!0,e[t]=an[t]):"Header"!==t&&"Colors"!==t?-1===t.indexOf("SoundURL")?e[t]>-1&&e[t]{void 0!==e[t][n]&&e[t][n]>-1&&e[t][n]<2||(o=!0,e[t][n]=an[t][n])})):Object.keys(an.Colors).forEach((n=>{void 0!==e[t][n]&&"string"==typeof e[t][n]||(o=!0,e[t][n]=an[t][n])}))})),o&&Tn(),xn(),Object.keys(an).forEach((e=>{"Header"!==e&&void 0!==gn[e].func&&gn[e].func()}))}else Mn(an)}function Sn(){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
${le(t)} ${1===Math.floor(t)?"cookie":"cookies"} left to amortize (${ce((e-Game.Objects[o].totalCookies)/(Game.Objects[o].storedTotalCps*Game.globalCpsMult)).text})`))}-1===Game.buyMode&&(l("tooltip").innerHTML=l("tooltip").innerHTML.split(le(Game.Objects[o].bulkPrice)).join(le((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 ee=t,te=o,Bo(),l("tooltip").innerHTML}function Pn(){Game.Objects["Wizard tower"].minigameLoaded&&Object.keys(Game.Objects["Wizard tower"].minigame.spellsById).forEach((e=>{null!==l(`grimoireSpell${e}`).onmouseover&&(x[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 En(){if(!u&&Game.Objects["Wizard tower"].minigameLoaded){const{minigame:t}=Game.Objects["Wizard tower"];d=t.draw,Game.Objects["Wizard tower"].minigame.draw=function(){d(),1===e.GrimoireBar&&t.magic1&&(e.Header[t]=0),Tn()}function jn(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(){An(o),Game.UpdateMenu()},n.appendChild(i),n}function Un(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(H[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 Dn(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 Hn(t){const o=document.createElement("div");if(o.className="subsection",o.appendChild(t),o.appendChild(jn("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()0&&(t.appendChild(Un("basic","Heavenly Chips To Target Set In Settings (CUR)",document.createTextNode(le(e)))),t.appendChild(Un("basic","Time To Target (CUR, Current 5 Second Average)",document.createTextNode(se(e/ct)))))}const l=function(e){let t=Game.cookiesPs;vo(),0===qt["Heavenly key"].bought&&(qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Uo(),t=Ie,vo()),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"),qt["Heavenly chip secret"].bought=1,qt["Heavenly cookie stand"].bought=1,qt["Heavenly bakery"].bought=1,qt["Heavenly confectionery"].bought=1,qt["Heavenly key"].bought=1,Le=e;const o=Fe;Uo(),Vo(),o!==Fe&&Uo();const n=Ie-t;return Le=Game.prestige,n}(o),s=document.createDocumentFragment();s.appendChild(document.createTextNode(le(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(Un("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(Un("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(Un("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(Un("basic",'Next "Lucky Payout" (total / reset)',i))}return t}()),Game.cpsSucked>0&&(o.appendChild(jn("Wrinklers","Wrink")),e.Header.Wrink)){const e=document.createDocumentFragment();e.appendChild(document.createTextNode(`${le(ft)} / ${le(Ct)} `));const t=document.createElement("a");t.textContent="Pop All Normal",t.className="option",t.onclick=function(){Sn()},e.appendChild(t),o.appendChild(Un("basic","Rewards of Popping (All/Normal)",e));const n=document.createDocumentFragment();n.appendChild(document.createTextNode(`${le(yt[0])} `));const i=document.createElement("a");i.textContent="Pop Single Fattest",i.className="option",i.onclick=function(){null!==yt[1]&&(Game.wrinklers[yt[1]].hp=0)},n.appendChild(i),o.appendChild(Un("basic",`Rewards of Popping Single Fattest Non-Shiny Wrinkler (id: ${null!==yt[1]?yt[1]:"None"})`,n))}if(o.appendChild(function(){const t=document.createElement("div");t.className="CMStatsSeasonSection";let o=!1;const n=[];Object.keys(Ho).forEach((e=>{Game.Has(Ho[e])||(n.push(Ho[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=[];Object.keys(Io).forEach((e=>{Game.HasUnlocked(Io[e])||(s.push(Io[e]),o=!0)}));const c=Game.HasUnlocked("Chocolate egg")&&!Game.Has("Chocolate egg"),d=Game.Has("Century egg");if(("christmas"===Game.season||o||c||d)&&(t.appendChild(jn("Season Specials","Sea")),e.Header.Sea)){if(0!==n.length){t.appendChild(Un("basic","Halloween cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from wrinkler/shiny wrinkler",document.createTextNode(`${le(100*(1-e))}% / ${le(100*(1-.9*e))}%`)))}if(0!==i.length){t.appendChild(Un("basic","Christmas cookies left to buy",Dn(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)}t.appendChild(Un("basic","Chance of receiving a cookie from reindeer",document.createTextNode(`${le(100*(1-e))}%`)))}0!==a.length&&t.appendChild(Un("basic","Valentine cookies left to buy",Dn(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(Un("basic","Normal easter eggs left to unlock",Dn(r))),t.appendChild(Un("basic","Chance of receiving an egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[0])}% / ${le(100*e(.9)[0])}%`)))),0!==l.length&&(t.appendChild(Un("basic","Rare easter eggs left to unlock",Dn(l))),t.appendChild(Un("basic","Chance of receiving a rare egg from wrinkler/golden cookie",document.createTextNode(`${le(100*e(.98)[1])}% / ${le(100*e(.9)[1])}%`)))),0!==s.length&&t.appendChild(Un("basic","Rare plant drops left to unlock",Dn(s))),"christmas"===Game.season&&t.appendChild(Un("basic","Reindeer reward",document.createTextNode(le(pt)))),c&&t.appendChild(Un("withTooltip","Chocolate egg cookies",document.createTextNode(le(ut)),"ChoEggTooltipPlaceholder")),d&&t.appendChild(Un("basic","Century egg multiplier",document.createTextNode(Math.round(1e4*(dt-1))/100+"%")))}return t}()),o.appendChild(jn("Miscellaneous","Misc")),e.Header.Misc){if(o.appendChild(Un("basic",`Average Cookies Per Second (Past ${q[e.AvgCPSHist]<60?`${q[e.AvgCPSHist]} seconds`:q[e.AvgCPSHist]/60+(3===e.AvgCPSHist?" minute":" minutes")})`,document.createTextNode(le(so(),3)))),o.appendChild(Un("basic",`Average Cookie Clicks Per Second (Past ${Y[e.AvgClicksHist]}${0===e.AvgClicksHist?" second":" seconds"})`,document.createTextNode(le(vt,1)))),Game.Has("Fortune cookies")){const e=[];Object.keys(Do).forEach((t=>{Game.Has(Do[t])||e.push(Do[t])})),0!==e.length&&o.appendChild(Un("basic","Fortune Upgrades Left to Buy",Dn(e)))}if(e.ShowMissedGC&&o.appendChild(Un("basic","Missed Golden Cookies",document.createTextNode(le(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(Un("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&&xt){const t=xt.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=xt,e.appendChild(i)}else if("Upgrades"===e.children[0].innerHTML){if(wt){const t=wt.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=wt,e.insertBefore(i,document.getElementById("CMMissingUpgradesTitle").nextSibling)}if(Tt){const t=Tt.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=Tt,e.appendChild(i)}}}))}const Rn={BarsColors:"Bars/Colors",Calculation:"Calculation",Notification:"Notification",Tooltip:"Tooltips and additional insights",Statistics:"Statistics",Notation:"Notation",Miscellaneous:"Miscellaneous"},$n={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 In(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(){An(t),Game.UpdateMenu()},n.appendChild(i),n}function zn(t){const o=document.createElement("div");if(o.className="listing","bool"===gn[t].type){const n=document.createElement("a");gn[t].toggle&&0===e[t]?n.className="option off":n.className="option",n.id=Wn+t,n.onclick=function(){!function(t){e[t]+=1,e[t]===gn[t].label.length?(e[t]=0,gn[t].toggle&&(l(Wn+t).className="option off")):l(Wn+t).className="option",void 0!==gn[t].func&&gn[t].func(),l(Wn+t).innerHTML=gn[t].label[e[t]],Tn()}(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(){Ln(t)},r.onchange=function(){Ln(t)},n.appendChild(r),o.appendChild(n);const l=document.createElement("a");return l.className="option",l.onclick=function(){vn(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=Wn+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=`${Wn+t}Prompt`,a.className="option",a.type="text",a.setAttribute("value",e[t]);const r=document.createElement("a");r.className="option",r.onclick=function(){Game.Prompt(a.outerHTML,[["Save",function(){e[`${t}`]=l(`CMConfig${t}Prompt`).value,Tn(),Game.ClosePrompt(),Game.UpdateMenu()}],"Cancel"])},r.textContent="Edit",o.appendChild(r);const s=document.createElement("label");return s.textContent=gn[t].desc,o.appendChild(s),o}if("color"===gn[t].type){o.className="";for(let t=0;tthis.max&&console.log("TEST"),e[t]=this.value,Tn(),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 Vn(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 _n(){M.Beautify=Beautify,Beautify=le,M.CalculateGains=Game.CalculateGains,Game.CalculateGains=function(){M.CalculateGains(),Re=1,Jt=Date.now(),Kt=Date.now()},M.tooltip={},M.tooltip.draw=Game.tooltip.draw,M.tooltip.drawMod=new Function(`return ${Game.tooltip.draw.toString().split("this").join("Game.tooltip")}`)(),Game.tooltip.draw=function(e,t,o){M.tooltip.drawMod(e,t,o)},M.tooltip.update=Game.tooltip.update,M.tooltip.updateMod=new Function(`return ${Game.tooltip.update.toString().split("this.").join("Game.tooltip.")}`)(),Game.tooltip.update=function(){M.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`}}()},M.UpdateWrinklers=Game.UpdateWrinklers,Game.UpdateWrinklers=function(){Vn(M.UpdateWrinklers)},M.UpdateSpecial=Game.UpdateSpecial,Game.UpdateSpecial=function(){Vn(M.UpdateSpecial)},l("bigCookie").removeEventListener("click",Game.ClickCookie,!1),l("bigCookie").addEventListener("click",(function(){Vn(Game.ClickCookie)}),!1),M.RebuildUpgrades=Game.RebuildUpgrades,Game.RebuildUpgrades=function(){M.RebuildUpgrades(),T=[],Object.keys(Game.UpgradesInStore).forEach((e=>{null!==l(`upgrade${e}`).onmouseover&&(T[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()},M.ClickProduct=Game.ClickProduct,Game.ClickProduct=function(t){(!e.BulkBuyBlock||Game.ObjectsById[t].bulkPrice-1;--e)if(Game.ObjectsById[e-1].amount>0){const o=Qt[Game.ObjectsById[e].name].name;Qt[o].amount-=1,Ee-=1,t=Qt[o].basePrice*Game.priceIncrease**Math.max(0,Qt[o].amount-1-Qt[o].free),t=Game.modifyBuildingPrice(Qt[o],t),t=Math.ceil(t);break}const o=Fe;return Uo(),Vo(),o!==Fe&&Uo(),[Ie-Game.cookiesPs,t]}(t),n=se(o/(e+Game.cookiesPs)),i=le(e/Game.cookiesPs);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 ${le(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)},M.ToggleSpecialMenu=Game.ToggleSpecialMenu,Game.ToggleSpecialMenu=function(e){M.ToggleSpecialMenu(e),function(){if(null!==(l("specialPopup").className.match(/onScreen/)&&l("specialPopup").children[0].style.background.match(/dragon/)))for(let e=0;e${Qe}`,"this"),Game.tooltip.wobble()},l("specialPopup").children[e].onmouseout=function(){Game.tooltip.shouldHide=1})}()},M.UpdateMenu=Game.UpdateMenu,Game.UpdateMenu=function(){void 0!==Fn().picker&&void 0!==Fn().picker.owner||(M.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(Rn).forEach((t=>{const n=In(t,Rn[t]);o.appendChild(n),e.Header[t]&&("Notification"===t?Object.keys($n).forEach((t=>{const n=In(t,$n[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(zn(e))}))})):Object.keys(gn).forEach((e=>{gn[e].group===t&&o.appendChild(zn(e))})))}));const n=document.createElement("div");n.className="listing";const i=document.createElement("a");i.className="option",i.onclick=function(){Mn(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",Hn(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(){An("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))}())},M.sayTime=Game.sayTime,$=function(e,t){return Number.isNaN(e)||e<=0?M.sayTime(e,t):se(e/Game.fps,1)},M.Logic=Game.Logic,Game.Logic=function(){M.Logic();let t="Cookie Clicker";"fools"===Game.season&&(t="Cookie Baker"),re=`${Game.OnAscend?"Ascending! ":""}${le(Game.cookies)} ${1===Game.cookies?"cookie":"cookies"} - ${t}`,function(){if(Game.OnAscend||0===e.Title)document.title=re;else if(1===e.Title){let e,t,o,n=!1,i=!1;e=Ht?Ht.wrath?`[W${Math.ceil(Ht.life/Game.fps)}]`:`[G${Math.ceil(Ht.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)}]`,g&&(n=!0,t="[F]"),"christmas"===Game.season&&(i=!0,o=h?`[R${Math.ceil(Rt.life/Game.fps)}]`:`[${Number(l("CMTimerBarRenMinBar").textContent)<0?"!":""}${Math.ceil((Game.shimmerTypes.reindeer.maxTime-Game.shimmerTypes.reindeer.time)/Game.fps)}]`);let a=re;"["===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;Ht&&(t=!0,Ht.wrath?e+=`[W${Math.ceil(Ht.life/Game.fps)}]`:e+=`[G${Math.ceil(Ht.life/Game.fps)}]`),g&&(t=!0,e+="[F]"),"christmas"===Game.season&&h&&(e+=`[R${Math.ceil(Rt.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 ${le(Game.prestige)}.
(CpS +${le(Game.prestige)}%)`,n+='
'),n+=Se<1?"Ascending now would grant you no prestige.":Se<2?"Ascending now would grant you
1 prestige level (+1% CpS)
and 1 heavenly chip to spend.":`Ascending now would grant you
${le(Se)} prestige levels (+${le(Se)}% CpS)
and ${le(Se)} heavenly chips to spend.`,n+='
',n+=`You need ${le(t)} more cookies for the next level.
`,n+=e.TooltipAscendButton?`
It takes ${$t} to reach the next level and you are making ${le(ct,2)} chips on average in the last 5 seconds.
`:"",l("ascendTooltip").innerHTML=n}()}}function Xn(){bn(),en(),nn(),a=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.backgroundColor="#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=S+t,o.textContent=e,o},i=o.appendChild(document.createElement("tr"));i.style.fontWeight="bold",i.appendChild(n("CM 2.031.6",N)),o.appendChild(document.createElement("tr")).appendChild(n("Bonus Income",P)),o.appendChild(document.createElement("tr")).appendChild(n("Payback Period",P)),o.appendChild(document.createElement("tr")).appendChild(n("Time Left",P)),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.backgroundColor="black";const t=po("CMTimerBarGC","Next Cookie",[{id:"CMTimerBarGCMinBar",color:L},{id:"CMTimerBarGCBar",color:W}]);e.appendChild(t);const o=po("CMTimerBarRen","Next Reindeer",[{id:"CMTimerBarRenMinBar",color:L},{id:"CMTimerBarRenBar",color:O}]);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.backgroundColor="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(P,"Better than the best PP of a building option")),e.appendChild(o(E,"Same as the best PP building option")),e.appendChild(o(N,"Within the top 10 of PP for buildings")),e.appendChild(o(O,"Within the top 20 of PP for buildings")),e.appendChild(o(F,"Within the top 30 of PP for buildings")),e.appendChild(o(W,"Outside of the top 30 of PP for buildings")),e.appendChild(o(L,"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=S+t,o.style.width="14.28571428571429%",o.style.display="inline-block",o.textContent="0",o};e.appendChild(o("CMUpgradeBarBlue",P)),e.appendChild(o("CMUpgradeBarGreen",E)),e.appendChild(o("CMUpgradeBarYellow",N)),e.appendChild(o("CMUpgradeBarOrange",O)),e.appendChild(o("CMUpgradeBarRed",F)),e.appendChild(o("CMUpgradeBarPurple",W)),e.appendChild(o("CMUpgradeBarGray",L)),l("upgrades").parentNode.insertBefore(e,l("upgrades").parentNode.childNodes[3])}(),function(){const e=document.createElement("div");e.id="CMWhiteScreen",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(D).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),H[e]=n}(D[e][0],D[e][1],D[e][2])})),function(){const e=document.createElement("a");e.id="PopAllNormalWrinklerButton",e.textContent="Pop All Normal",e.className="option",e.onclick=function(){Sn()},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!==yt[1]&&(Game.wrinklers[yt[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&&(w[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()&&(r=l("lumps").onmouseover,l("lumps").onmouseover=function(){Game.tooltip.dynamic=1,Game.tooltip.draw(this,(function(){return Bn("s","Lump")}),"this"),Game.tooltip.wobble()}),m=Game.LoadMinigames,Game.LoadMinigames=function(){m(),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()}}))),Pn(),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()}}}(),Nn()},Game.LoadMinigames(),l("backgroundLeftCanvas").onmouseover=function(){I=1},l("backgroundLeftCanvas").onmouseout=function(){I=0,Game.tooltip.hide(),Object.keys(Game.wrinklers).forEach((e=>{V[e]=0}))},_n(),Nn(),Game.CalculateGains(),Mn(),R=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&&(Xn(),Game.registerHook("draw",Po),Game.registerHook("logic",xn),kn=!1)},load:function(e){const t=JSON.parse(e);bn(),Mn(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 d310927..65d66fc 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","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColorTextPre","ColorBackPre","ColorBlue","ColorGreen","ColorYellow","ColorOrange","ColorRed","ColorPurple","ColorGray","ColorPink","ColorBrown","Colors","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColors","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","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","GetTimeColor","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","SimDateCentury","Game","startDate","SimDateAges","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","BuildColor","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColor","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColor","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","timeColor","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","elderWrath","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","lumpColor","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColor","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","matureBase","plantName","GardenPlots","totalGain","mortal","tile","immortal","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","classColor","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","CacheColor","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","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","UpgradeBarFixedPos","GeneralSound","GCNotification","GCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","TooltipAmor","DragonAuraInfo","TooltipAscendButton","MissingUpgrades","DetailedTime","GrimoireBar","HeavenlyChipsTarget","ShowMissedGC","Blue","Green","Yellow","Orange","Red","Purple","Gray","Pink","Brown","GCTimer","Favicon","WrinklerButtons","HideSectionsButtons","BulkBuyBlock","Header","BarsColors","Calculation","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Tooltip","Statistics","Notation","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateColors","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingVolume","SettingInputNumber","SettingsData","insertBefore","save","stringify","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","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","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","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","luckyColor","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColorFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColor","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColor","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColorFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColorFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColor","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColor","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColor","bakeberryFrag","chocorootColor","chocorootFrag","queenbeetColor","queenbeetFrag","duketaterColor","duketaterFrag","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","missingPlantDrops","centEgg","failRateHalloween","dropRateMult","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","Prompt","outerHTML","ClosePrompt","innerDiv","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","groupObject","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateWhiteScreen","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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I,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,EAAe,SACfC,EAAe,SAMfC,EAAY,OACZC,EAAa,QACbC,EAAc,SACdC,EAAc,SACdC,EAAW,MACXC,EAAc,SACdC,EAAY,OACZC,EAAY,OACZC,EAAa,QACbC,EAAS,CACbH,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,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,EAAa,CACjBC,OAAQrB,EACRsB,iBAAkBhB,EAClBiB,eAAgBxB,EAChByB,KAAMtB,EACNuB,eAAgB3B,EAChB4B,aAAcrB,GAMhB,IAOIsB,EACAC,EACAC,GACAC,GACAC,GAEAC,GACAC,GAdAC,GAAW,GAKXC,GAAQ,GA2BZ,SAASC,GAA4BC,EAAKC,EAAQC,GAChD,MAAMC,EAAWrE,EAAUsE,cAAgB,EAC3C,GAAIJ,IAAQK,IACV,MAAO,WAET,QAAmB,IAARL,EACT,MAAO,IAET,GAAwB,IAApBlE,EAAUwE,MACZ,OAAOhD,EAAgBiD,SAASP,EAAKC,GAEvC,GAAIO,OAAOC,SAAST,GAAM,CACxB,IAAIU,EAAS,GACb,GAAY,IAARV,EACF,OAAOA,EAAInhB,WAEb,GAAImhB,EAAM,MAASA,EAAMlE,EAAU6E,YAGjC,OAF8BD,EAA1B5E,EAAU8E,eAAyBZ,EAAIa,eAAe,MAC5Cb,EAAIa,eAAe,MAC1BH,EAET,GAAyB,IAApB5E,EAAUwE,QAAgBJ,GAAsB,IAAXA,EAExCQ,EAASV,EAAIc,cAAcX,GAAUthB,WAAW7B,QAAQ,IAAK,SACxD,CACL,MAAM+jB,EAAcf,EAAIc,gBAAgBjiB,WAClCmiB,EAAwBriB,KAAKkE,MACjCke,EAAY5G,MAAM4G,EAAYznB,QAAQ,KAAO,GAAK,GAEpDonB,GAAUV,EAAMQ,OAAO,KAA6B,EAAxBQ,IAA8BC,QACxDd,GAGuB,IAApBrE,EAAUwE,QAAgBJ,GAAsB,IAAXA,EAEpCF,GAAO,KAAQA,EAAMQ,OAAO,KAAqB,EAAhBzE,EAAO1lB,QAC1CqqB,GAAU,IAAI3E,EAAOiF,KAChBN,EAASX,GAA4BC,EAAK,EAAG,GACtB,IAApBlE,EAAUwE,QAAgBJ,GAAsB,IAAXA,EAE3CF,GAAO,KAAQA,EAAMQ,OAAO,KAAyB,EAApBxE,EAAW3lB,QAC9CqqB,GAAU,IAAI1E,EAAWgF,KACpBN,EAASX,GAA4BC,EAAK,EAAG,GACtB,IAApBlE,EAAUwE,QAAgBJ,GAAsB,IAAXA,EAG7CF,GAAO,KACPA,EAAMQ,OAAO,KAAoC,EAA/BvE,EAAsB5lB,QAExCqqB,GAAU,IAAIzE,EAAsB+E,KAC/BN,EAASX,GAA4BC,EAAK,EAAG,IACtB,IAApBlE,EAAUwE,QAAgBJ,GAAsB,IAAXA,KAE/CQ,GAAU,IAA4B,EAAxBM,GAUlB,MAPe,KAAXN,IACFzpB,QAAQiqB,IACN,2DAA2DlB,KAE7DU,EAASpD,EAAgBiD,SAASP,EAAKC,IAErCnE,EAAU8E,iBAAgBF,EAASA,EAAO1jB,QAAQ,IAAK,MACpD0jB,EAGT,OADAzpB,QAAQiqB,IAAI,2DAA2DlB,KAChE1C,EAAgBiD,SAASP,EAAKC,GASvC,SAASkB,GAAWC,EAAMC,GACxB,IAAIC,EAAgBF,EACpB,GAAIA,IAASf,IAAU,OAAOe,EAC9B,GAAIA,EAAO,EAAG,MAAO,uBACrBE,EAAgB3iB,KAAKoL,KAAKqX,GAC1B,MAAM7gB,EAAI5B,KAAKkE,MAAMye,EAAgB,UAC/B7F,EAAI9c,KAAKkE,MAAOye,EAAgB,SAAY,OAC5C7e,EAAI9D,KAAKkE,MAAOye,EAAgB,MAAS,MACzC/qB,EAAIoI,KAAKkE,MAAOye,EAAgB,KAAQ,IACxC3e,EAAIhE,KAAKkE,MAAMye,EAAgB,IACrC,IAAI9pB,EAAM,GACV,GAAIskB,EAAUyF,WAAY,CACxB,GAAID,EAAgB,SAAY,MAAO,iBACvC9pB,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,GAAI2e,EAAgB,OAClB,OAAOD,EAAa,kBAAoB,SAC1C7pB,GACE+I,EAAI,EACGA,GAAK8gB,EAAoB,IAAN9gB,EAAU,QAAU,SAAY,KAAtD,KACA,GACN/I,GACEikB,EAAI,EAAOA,GAAK4F,EAAoB,IAAN5F,EAAU,OAAS,QAAW,KAApD,KAA+D,IACrEjkB,EAAInB,OAAS,GAAKoM,EAAI,KACxBjL,GAAUiL,GAAK4e,EAAoB,IAAN5e,EAAU,QAAU,SAAY,KAAtD,OACLjL,EAAInB,OAAS,GAAKE,EAAI,KACxBiB,GAAUjB,GAAK8qB,EAAoB,IAAN9qB,EAAU,UAAY,WAAc,KAA1D,MACTiB,GAAOmL,GAAK0e,EAAoB,IAAN1e,EAAU,UAAY,WAAc,KAEhE,OAAOnL,EAQT,SAASgqB,GAAaJ,GACpB,IAAIpd,EACAyd,EAWJ,OAVIL,GAAQ,GACgBK,EAAtB3F,EAAUyF,WAAmB,iBACrB,QACZvd,EAAQ0Z,IAER+D,EAAON,GAAWC,GACFpd,EAAZod,EAAO,IAAavD,EACfuD,EAAO,GAAYxD,EACfD,GAER,CAAE8D,OAAMzd,SAMjB,IA0EI0d,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,GAGAC,GACAC,GA1IAC,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,GACVprB,EAAG,CAAC,EAAG,EAAG,GACVqrB,GAAI,CAAC,EAAG,EAAG,IAOTC,GAAa,GACbC,GAAc,GACdC,GAAkB,GAclBC,GAAiBC,KAAKC,UACtBC,GAAcF,KAAKC,UAUvB,SAASE,GAAYC,GACnB,IAAInvB,EAAI,EAWR,OATE+uB,KAAKK,YAAYrF,IAAezoB,OAAS6tB,GACzCJ,KAAKK,YAAYpF,IAAgB1oB,OAAS6tB,IAE1CnvB,EAAI,GAEqC,oBAAzC+uB,KAAKK,YAAYrF,IAAezoB,MACU,oBAA1CytB,KAAKK,YAAYpF,IAAgB1oB,OAEjCtB,GAAK,IACAA,EAWT,SAASqvB,KACP,IAAIC,EAAW,IAEf,OADAA,GAAY,EAAIJ,GAAY,mBACrBI,EAST,SAASC,GAAOjuB,EAAMkuB,GACpB,YAA6B,IAAlBnF,GAAQ/oB,QACK,IAARkuB,EAAsB,EAAIA,EAEnCnF,GAAQ/oB,GASjB,SAASmuB,GAAON,GACd,MAAMO,EAAKd,GAAYO,GACvB,OACyB,IAAvBJ,KAAKY,eACQ,aAAZD,EAAGE,MAAmC,YAAZF,EAAGG,OAGzBH,EAAKA,EAAGI,OADN,EAYX,SAASC,GAAUZ,GACjB,GAAIJ,KAAKiB,OAAQ,MACoB7yB,IAA/BwxB,GAAWsB,OAAOC,WACpBvB,GAAWsB,OAAOC,SAAWnB,KAAKoB,QAAQF,OAAOC,UAEnD,MAAME,EAAMzB,GAAWsB,OAAOC,SAASG,KAAKlB,GAC5C,GAAIlF,KAAYmG,EAAIE,GAClB,OAAO,EAET,GAAIpG,KAAYkG,EAAIE,GAClB,OAAO,EAET,GAAInG,KAAYiG,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,kBAC7BH,KAAK4B,QAAQ,wBAAuBD,GAAiB,KACrD3B,KAAK4B,QAAQ,mBAAkBD,GAAiB,KAChD3B,KAAK4B,QAAQ,mBAAkBD,GAAiB,MAChDF,EAASI,SAAWnB,GAAOe,EAASI,QAAQtvB,QAAOovB,GAAiB,KACxEA,GAAiBnB,GAAO,gBACpBZ,GAAWsB,OAAOY,eAAgB,CACpC,MAAMC,EAASf,GAAU,YACV,IAAXe,EAAcJ,GAAiB,IACf,IAAXI,EAAcJ,GAAiB,IACpB,IAAXI,IAAcJ,GAAiB,KAE1C,OAAOA,EAkBT,SAASK,GACPC,EACAC,EACA1kB,EACA2kB,EACAC,EACAC,GAIA,MAAMC,OAA4B,IAAVD,EAAwB,EAAIA,EACpD,IAAIE,EAAWH,EACXI,EAAiBhlB,EACjBilB,EAAO,GACK,IAAZL,IAAeG,EAAWC,GACzBJ,IAAQG,EAAWvC,KAAK0C,SAC7B,IAAK,IAAI10B,EAAI,EAAGA,EAAIu0B,EAAUv0B,IAAK,CACjC,IAAI0zB,EACFQ,EAAYlC,KAAK2C,eAAiBpsB,KAAK6D,IAAI,EAAGooB,EAAiBL,GACjET,EAAQY,EACJtC,KAAK4C,oBAAoBX,EAAOP,GAChCF,GAAuBS,EAAOP,GAClCA,EAAQnrB,KAAKoL,KAAK+f,GAClB,MAAMnB,EAAW+B,EACbL,EAAMY,oBACNvC,KACJoB,EAAQnrB,KAAKkE,MAAMinB,EAAQnB,GACvBiC,EAAiB,IACnBC,GAAQf,EACRc,GAAkB,GAGtB,OAAOC,EAoBT,SAASK,KACP,IAAIzvB,EAAS2sB,KAAK0C,QA0ClB,GAzCqB,IAAjB1C,KAAK+C,QACPxM,EAAsBljB,EAEtBA,EAASkjB,EAEI,IAAXljB,EAAcA,EAAS0pB,GACP,KAAX1pB,EAAeA,EAAS2pB,GACb,MAAX3pB,IAAgBA,EAAS4pB,IAEb,IAAjB+C,KAAK+C,QACsB,IAAzBrP,EAAUsP,WACZxxB,OAAO6C,KAAKhB,GAAQ4vB,SAASj1B,IAC3BoR,EAAE,eAAe4gB,KAAKoB,QAAQpzB,GAAGuzB,MAAMtrB,MAAM2F,MAC3C8X,EAAUoC,OAAOziB,EAAOrF,GAAG4N,UAG/BpK,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjCoR,EAAE,eAAe4gB,KAAKoB,QAAQpzB,GAAGuzB,MAAMtrB,MAAMitB,eAAe,aAGrC,IAAlBlD,KAAK+C,SACdvxB,OAAO6C,KAAK0oB,IAAekG,SAASj1B,IAClC,MAAMwlB,EAAIwM,KAAKoB,QAAQpzB,GACvBoR,EAAE,eAAeoU,EAAE+N,MAAMtrB,MAAM2F,MAAQ,GASvCwD,EAAE,eAAeoU,EAAE+N,MAAM/V,UAAYmM,GACnCqK,GAAaxO,EAAGA,EAAE0O,UAAW1O,EAAE4O,OAAQ5O,EAAE2O,KAAMnC,KAAK0C,QAAS,OAQ9C,IAAjB1C,KAAK+C,SAAiBrP,EAAUyP,cAAe,CACjD,IAAIC,EAC4B,IAA5B1P,EAAUyP,eACZC,EAAM5xB,OAAO6C,KAAK0oB,IAAe5qB,KAAKkxB,IACpC,MAAM7P,EAAIuJ,GAAcsG,GAGxB,OAFA7P,EAAEjhB,KAAO8wB,EACT7P,EAAE+N,GAAKvB,KAAKoB,QAAQiC,GAAG9B,GAChB/N,KAGT4P,EAAIE,MAAK,SAAUzsB,EAAGP,GACpB,OAAOwf,EAAO5kB,QAAQ2F,EAAE+E,OAASka,EAAO5kB,QAAQoF,EAAEsF,OAC9C,EACAka,EAAO5kB,QAAQ2F,EAAE+E,OAASka,EAAO5kB,QAAQoF,EAAEsF,QAE3C/E,EAAEyI,GAAKhJ,EAAEgJ,IADR,EAGD,MAE+B,IAA5BoU,EAAUyP,gBACnBC,EAAM5xB,OAAO6C,KAAKhB,GAAQlB,KAAKkxB,IAC7B,MAAM7P,EAAIngB,EAAOgwB,GAGjB,OAFA7P,EAAEjhB,KAAO8wB,EACT7P,EAAE+N,GAAKvB,KAAKoB,QAAQiC,GAAG9B,GAChB/N,KAGT4P,EAAIE,MAAK,SAAUzsB,EAAGP,GACpB,OAAOwf,EAAO5kB,QAAQ2F,EAAE+E,OAASka,EAAO5kB,QAAQoF,EAAEsF,OAC9C,EACAka,EAAO5kB,QAAQ2F,EAAE+E,OAASka,EAAO5kB,QAAQoF,EAAEsF,QAE3C/E,EAAEyI,GAAKhJ,EAAEgJ,IADR,EAGD,MAIR,IAAK,IAAIpH,EAAI,EAAGA,EAAIkrB,EAAIn1B,OAAQiK,IAC9B8nB,KAAKoB,QAAQgC,EAAIlrB,GAAG3F,MAAM6M,EAAEnJ,MAAMstB,QAAU,GAAGrrB,EAAI,KAAKA,EAAI,QAEzD,CACL,MAAMkrB,EAAM5xB,OAAO6C,KAAK0oB,IAAe5qB,KAAKkxB,IAC1C,MAAM7P,EAAIuJ,GAAcsG,GAGxB,OAFA7P,EAAEjhB,KAAO8wB,EACT7P,EAAE+N,GAAKvB,KAAKoB,QAAQiC,GAAG9B,GAChB/N,KAET4P,EAAIE,MAAK,CAACzsB,EAAGP,IAAMO,EAAE0qB,GAAKjrB,EAAEirB,KAC5B,IAAK,IAAIrpB,EAAI,EAAGA,EAAIkrB,EAAIn1B,OAAQiK,IAC9B8nB,KAAKoB,QAAQgC,EAAIlrB,GAAG3F,MAAM6M,EAAEnJ,MAAMstB,QAAU,GAAGrrB,EAAI,KAAKA,EAAI,KAiBlE,SAASsrB,KAEP,GAAI9P,EAAU+P,WAAa,EAAG,CAC5B,IAAIC,EAAO,EACPC,EAAQ,EACRC,EAAS,EACTC,EAAS,EACTC,EAAM,EACNC,EAAS,EACTC,EAAO,EAEXxyB,OAAO6C,KAAK2rB,KAAKiE,iBAAiBhB,SAASj1B,IACzC,MAAMk2B,EAAKlE,KAAKiE,gBAAgBj2B,GAChC,IAAIm2B,GAAa,EACjB,IAAK,IAAIC,EAAI,EAAGA,EAAIhlB,EAAE,UAAUpR,KAAKq2B,WAAWp2B,OAAQm2B,GAAK,EAC3D,IACsE,IAApEhlB,EAAE,UAAUpR,KAAKq2B,WAAWD,GAAG31B,UAAUyC,QAAQkkB,GACjD,CACAhW,EAAE,UAAUpR,KAAKq2B,WAAWD,GAAG31B,UAC7B2mB,EAAemI,GAAc2G,EAAG3xB,MAAMqJ,MACxCuoB,GAAa,EACb,MAGJ,IAAKA,EAAY,CACf,MAAMG,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMkG,MAAQ,OAClBmoB,EAAIruB,MAAMmG,OAAS,OACnBkoB,EAAI71B,UAAY2mB,EAAemI,GAAc2G,EAAG3xB,MAAMqJ,MACtDwD,EAAE,UAAUpR,KAAK4b,YAAY0a,GAE3B/G,GAAc2G,EAAG3xB,MAAMqJ,QAAUyZ,EAAWqO,GAAQ,EAC/CnG,GAAc2G,EAAG3xB,MAAMqJ,QAAU0Z,EAAYqO,GAAS,EACtDpG,GAAc2G,EAAG3xB,MAAMqJ,QAAU2Z,EAAaqO,GAAU,EACxDrG,GAAc2G,EAAG3xB,MAAMqJ,QAAU4Z,EAAaqO,GAAU,EACxDtG,GAAc2G,EAAG3xB,MAAMqJ,QAAU6Z,EAAUqO,GAAO,EAClDvG,GAAc2G,EAAG3xB,MAAMqJ,QAAU8Z,EAAaqO,GAAU,EACxDxG,GAAc2G,EAAG3xB,MAAMqJ,QAAU+Z,IAAWqO,GAAQ,MAG/D5kB,EAAE,oBAAoB/N,YAAcqyB,EACpCtkB,EAAE,qBAAqB/N,YAAcsyB,EACrCvkB,EAAE,sBAAsB/N,YAAcuyB,EACtCxkB,EAAE,sBAAsB/N,YAAcwyB,EACtCzkB,EAAE,mBAAmB/N,YAAcyyB,EACnC1kB,EAAE,sBAAsB/N,YAAc0yB,EACtC3kB,EAAE,oBAAoB/N,YAAc2yB,EAGtC,MAAMZ,EAAM,GAGZ,IAAK,IAAIlrB,EAAI,EAAGA,EAAI8nB,KAAKiE,gBAAgBh2B,OAAQiK,GAAK,EAAG,CACvD,MAAMsb,EAAI,GACVA,EAAEjhB,KAAOytB,KAAKiE,gBAAgB/rB,GAAG3F,KACjCihB,EAAEkO,MAAQ1B,KAAKiE,gBAAgB/rB,GAAGgqB,UAClC1O,EAAElU,GAAKie,GAAc/J,EAAEjhB,MAAM+M,GAC7B8jB,EAAItzB,KAAK0jB,GAGPE,EAAU6Q,aACZnB,EAAIE,MAAK,SAAUzsB,EAAGP,GACpB,OAAOwf,EAAO5kB,QAAQ2F,EAAE+E,OAASka,EAAO5kB,QAAQoF,EAAEsF,OAC9C,EACAka,EAAO5kB,QAAQ2F,EAAE+E,OAASka,EAAO5kB,QAAQoF,EAAEsF,QAE3C/E,EAAEyI,GAAKhJ,EAAEgJ,IADR,EAGD,KAGN8jB,EAAIE,MAAK,CAACzsB,EAAGP,IAAMO,EAAE6qB,MAAQprB,EAAEorB,QAGjC,MAAM8C,EAAc,SAAUC,EAAMC,GAClC,OAAOD,EAAKE,WAAWx1B,GAAMA,EAAEoD,OAASmyB,EAAQnyB,QAElD,IAAK,IAAI2F,EAAI,EAAGA,EAAI8nB,KAAKiE,gBAAgBh2B,OAAQiK,GAAK,EACpDkH,EAAE,UAAUlH,KAAKjC,MAAM2uB,MACrBJ,EAAYpB,EAAKpD,KAAKiE,gBAAgB/rB,IAAM,EAYlD,SAAS2sB,KACP,OAAInR,EAAUoR,QACLzK,GAEmB,IAAxB3G,EAAUqR,UACL/E,KAAKgF,WAAa,EAAIhF,KAAKiF,WAER,IAAxBvR,EAAUqR,UAEV/E,KAAKgF,WACJ3H,IAA4B,EAA6B,IAAzBC,KAIX,IAAxB5J,EAAUqR,WACwC,IAAlD/E,KAAKkF,UAAU9H,GAAsB,IAAI/uB,KAGvC2xB,KAAKgF,WACwB,EAA3B3H,GAAgCC,IAC/B,EAA6B,IAAzBA,KAIT0C,KAAKgF,WACJ3H,GAA2BC,IACzB,EAA6B,IAAzBA,KAaX,SAAS6H,KACP,OAA4B,IAAxBzR,EAAUqR,UACL7H,GAEmB,IAAxBxJ,EAAUqR,UACL3H,GAAsB,GAExB,EAcT,SAASgI,GAAY7D,EAAIhvB,EAAM8yB,GAC7B,MAAMC,EAAWh5B,SAAS4D,cAAc,OACxCo1B,EAAS/D,GAAKA,EACd+D,EAASrvB,MAAMmG,OAAS,OACxBkpB,EAASrvB,MAAMsvB,OAAS,WACxBD,EAASrvB,MAAMgI,SAAW,WAE1B,MAAMqmB,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMkG,MAAQ,OAClBmoB,EAAIruB,MAAMmG,OAAS,OACnBkoB,EAAIruB,MAAMsvB,OAAS,OACnBjB,EAAIruB,MAAMgI,SAAW,WACrBqmB,EAAIruB,MAAMqC,KAAO,MACjBgsB,EAAIruB,MAAMsC,IAAM,MAChB+rB,EAAIruB,MAAMkI,MAAQ,MAClBmmB,EAAIruB,MAAMkW,OAAS,MAEnB,MAAM9d,EAAO/B,SAAS4D,cAAc,QACpC7B,EAAK4H,MAAMqV,QAAU,eACrBjd,EAAK4H,MAAMuW,UAAY,QACvBne,EAAK4H,MAAMuvB,SAAW,OACtBn3B,EAAK4H,MAAMkG,MAAQ,QACnB9N,EAAK4H,MAAMwvB,YAAc,MACzBp3B,EAAK4H,MAAMyvB,cAAgB,WAC3Br3B,EAAKgD,YAAckB,EACnB+xB,EAAI1a,YAAYvb,GAEhB,IAAK,IAAIL,EAAI,EAAGA,EAAIq3B,EAAKp3B,OAAQD,IAAK,CACpC,MAAM23B,EAAWr5B,SAAS4D,cAAc,QACxCy1B,EAASpE,GAAK8D,EAAKr3B,GAAGuzB,GACtBoE,EAAS1vB,MAAMqV,QAAU,eACzBqa,EAAS1vB,MAAMmG,OAAS,OACxBupB,EAAS1vB,MAAMyvB,cAAgB,WAC/BC,EAAS1vB,MAAMuW,UAAY,SACvB6Y,EAAKp3B,OAAS,IAAMD,IACtB23B,EAAS1vB,MAAM2vB,qBAAuB,OACtCD,EAAS1vB,MAAM4vB,wBAA0B,aAEd,IAAlBR,EAAKr3B,GAAG4N,QACjB+pB,EAASl3B,UAAY2mB,EAAeiQ,EAAKr3B,GAAG4N,OAE9C0oB,EAAI1a,YAAY+b,GAGlB,MAAMG,EAAQx5B,SAAS4D,cAAc,QAQrC,OAPA41B,EAAMvE,GAAK,GAAGA,QACduE,EAAM7vB,MAAM8vB,WAAa,MACzBD,EAAM7vB,MAAMyvB,cAAgB,WAC5BpB,EAAI1a,YAAYkc,GAEhBR,EAAS1b,YAAY0a,GAEdgB,EAOT,SAASU,GAA2BC,GAClC,GAAsB,OAAlB7mB,EAAE,YAAsB,CAC1B,MAAM/Q,EAAO+Q,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GACtD6B,EAAQ9mB,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GACvD/kB,EAAKF,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GACpDrL,EAAO5Z,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAEtDr2B,EAAIi4B,EACJE,EAAS93B,EAAKub,YAAYtd,SAAS4D,cAAc,OACvDi2B,EAAOvc,YACLtd,SAASqgB,eACP,IAAuB,IAApB3e,EAAEkD,QAAQ,KAAclD,EAAEo4B,UAAU,EAAGp4B,EAAEkD,QAAQ,MAAQlD,QAInDm4B,EAAOvc,YAAYtd,SAAS4D,cAAc,SAClDzB,UAAY0mB,aAEjBgR,EAAOvc,YAAYtd,SAASqgB,eAAe,MAC3Cte,EAAKg4B,UAAUpwB,MAAMqwB,YAAc,MACnCJ,EAAMtc,YAAYtd,SAAS4D,cAAc,OACzCg2B,EAAMG,UAAUpwB,MAAMqwB,YAAc,MACpChnB,EAAGsK,YAAYtd,SAAS4D,cAAc,OACtCoP,EAAG+mB,UAAUpwB,MAAMqwB,YAAc,MACjCtN,EAAKpP,YAAYtd,SAAS4D,cAAc,OACxC8oB,EAAKqN,UAAUpwB,MAAMqwB,YAAc,OAkEvC,SAASC,KACP,GAAyB,IAArB7S,EAAU8S,QAAgBzJ,IAAkC,IAAjBiD,KAAK+C,QAAe,CACjE,IAAI0D,EAAQ,EACZj1B,OAAO6C,KAAK0oB,IAAekG,SAASj1B,IAClC,IAmBI04B,EAnBArzB,EAAS2sB,KAAK0C,QACG,IAAjB1C,KAAK+C,QACPzM,EAAmBjjB,EAEnBA,EAASijB,EAEI,IAAXjjB,IAAcA,EAAS0pB,IACZ,KAAX1pB,IAAeA,EAAS2pB,IACb,MAAX3pB,IAAgBA,EAAS4pB,IAC7BwJ,GAAS,EACTrnB,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACApC,WAAW,GAAGhzB,YAAc2uB,KAAKoB,QAAQpzB,GAAGo0B,OAC9ChjB,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACAp1B,YAAcsmB,GAA4BtkB,EAAOrF,GAAGk4B,MAAO,GAC7D9mB,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACAh4B,UAAY0mB,EAAe9hB,EAAOrF,GAAG4N,MAGrC8qB,EADEhT,EAAUiT,cACD5N,GAAWxiB,KAAKC,MAAMnD,EAAOrF,GAAGsR,KAC7BqY,GAA4BphB,KAAKC,MAAMnD,EAAOrF,GAAGsR,IAAK,GACtEF,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACAp1B,YAAcq1B,EAChB,MAAME,EAAYxN,IACf4G,KAAKoB,QAAQpzB,GAAG64B,WAAa7G,KAAK8G,QAAU3B,OAC3CN,MAEJzlB,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACAh4B,UAAY0mB,EAAeyR,EAAUhrB,MAElB,UAAnBgrB,EAAUvN,MACV2G,KAAK8G,QAAU9G,KAAKoB,QAAQpzB,GAAG64B,UAE/BznB,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACAp1B,YAAc,GAAGu1B,EAAUvN,oBAE7Bja,EAAE,YAAYvO,WAAWA,WAAWwzB,WAAW,GAAGA,WAChDoC,GACAp1B,YAAcu1B,EAAUvN,SAWlC,SAAS0N,KACP/G,KAAKgH,WAAWhrB,OAAOG,MAAQ6jB,KAAKgH,WAAWhrB,OAAOmR,WAAWxU,YACjEqnB,KAAKgH,WAAWhrB,OAAOI,OACrB4jB,KAAKgH,WAAWhrB,OAAOmR,WAAWvU,aACpConB,KAAKiH,eAAejrB,OAAOG,MACzB6jB,KAAKiH,eAAejrB,OAAOmR,WAAWxU,YACxCqnB,KAAKiH,eAAejrB,OAAOI,OACzB4jB,KAAKiH,eAAejrB,OAAOmR,WAAWvU,aAY1C,SAASsuB,KAEgB,IAArBxT,EAAU8S,QACa,IAAvB9S,EAAUyT,UACgB,IAA1BzT,EAAU0T,aAEVhoB,EAAE,YAAYnJ,MAAMkW,OAAS/M,EAAE,cAAcnJ,MAAMmG,OACnDgD,EAAE,QAAQnJ,MAAMkW,OAAS,GACvBiM,OAAOhZ,EAAE,cAAcnJ,MAAMmG,OAAOxH,QAAQ,KAAM,KAAO,QAE7B,IAArB8e,EAAU8S,QACnBpnB,EAAE,YAAYnJ,MAAMkW,OAAS,MAC7B/M,EAAE,QAAQnJ,MAAMkW,OAAS,QACO,IAAvBuH,EAAUyT,UAA4C,IAA1BzT,EAAU0T,YAC/ChoB,EAAE,QAAQnJ,MAAMkW,OAAS/M,EAAE,cAAcnJ,MAAMmG,OAG/CgD,EAAE,QAAQnJ,MAAMkW,OAAS,MAGA,IAAvBuH,EAAUyT,UAA4C,IAA1BzT,EAAU0T,YACxChoB,EAAE,eAAenJ,MAAMsC,IAAM6G,EAAE,cAAcnJ,MAAMmG,OAEnDgD,EAAE,eAAenJ,MAAMsC,IAAM,GAG/BwuB,KAMF,SAASM,KACoB,IAAvB3T,EAAUyT,SAAgB/nB,EAAE,cAAcnJ,MAAMqV,QAAU,GACzDlM,EAAE,cAAcnJ,MAAMqV,QAAU,OACrC4b,KAoPF,SAASI,KACP7L,GAAkBuE,KAAKuH,WACvB7L,GAAmBsE,KAAKwH,YAS1B,SAASC,GAAgBC,GACvB,MAAMxD,EAAKlE,KAAK2H,aAAaD,GACvBE,EAAM,GAEZ,OADAA,EAAIr1B,KAAO2xB,EAAG3xB,KACPq1B,EAUT,SAASC,GAAoB3D,GAC3B,IAAI4D,EAAO,EAoBX,GAnBAt2B,OAAO6C,KAAK6vB,EAAG6D,gBAAgB9E,SAASj1B,KAEnCgyB,KAAKgI,MAAM9D,EAAG6D,eAAe/5B,GAAG8yB,MAAMmH,SACvCvH,GAAOwD,EAAG6D,eAAe/5B,GAAGuE,QAE5Bu1B,GAAQ,MAEZt2B,OAAO6C,KAAK6vB,EAAGgE,WAAWjF,SAASj1B,IACjC,GAAI0yB,GAAOwD,EAAGgE,UAAUl6B,GAAGuE,MAAO,CAChC,MAAM41B,EAAMjE,EAAGgE,UAAUl6B,GACrBm6B,EAAIC,aAAa71B,OAAS2xB,EAAG3xB,KAC/Bu1B,GAAQ,EAAI,IAAOK,EAAIE,aAAajG,OAC7B+F,EAAIE,aAAa91B,OAAS2xB,EAAG3xB,OACpCu1B,GAAQ,EAAI,KAAQK,EAAIC,aAAahG,YAGvC8B,EAAGrC,SAAWnB,GAAOwD,EAAGrC,QAAQtvB,QAAOu1B,GAAQ,MAC/C5D,EAAGoE,SAAW5H,GAAOwD,EAAGoE,QAAQ/1B,QAClCu1B,GAAQ,EAAgC,IAA5BlI,GAAW2I,QAAQnG,QAAiB,GAAK8B,EAAG3C,GAAK,KACnB,iBAAjC2C,EAAG6D,eAAeS,YACR,IAAftE,EAAGuE,SAAiB/H,GAAOwD,EAAG6D,eAAeS,WAAWj2B,MAC1D,OAAQytB,KAAK0I,YACX,QACEZ,GAAQ,EACR,MACF,KAAK,EACHA,GAAQ,KACR,MACF,KAAK,EACHA,GAAQ,KACR,MACF,KAAK,EACHA,GAAQ,KAKhB,OAAOA,EAiBT,SAASa,GAAoB1C,GAC3B,MAAM/B,EAAKlE,KAAKoB,QAAQ6E,GAClB2B,EAAM,GA2FZ,MA1FgB,WAAZ1D,EAAG3xB,KACLq1B,EAAIgB,IAAM,SAAUjI,GAClB,IAAIxrB,EAAM,EACNurB,GAAO,sBAAqBvrB,GAAO,IACnCurB,GAAO,qBAAoBvrB,GAAO,GAClCurB,GAAO,qBAAoBvrB,GAAO,IAClCurB,GAAO,sBAAqBvrB,GAAO,IACnCurB,GAAO,yBAAwBvrB,GAAO,IACtCurB,GAAO,yBAAwBvrB,GAAO,IACtCurB,GAAO,wBAAuBvrB,GAAO,IACrCurB,GAAO,wBAAuBvrB,GAAO,IACrCurB,GAAO,uBAAsBvrB,GAAO,IACpCurB,GAAO,uBAAsBvrB,GAAO,IACxC,IAAI2yB,EAAO,EACPlQ,EAAM,EAQV,OAPApmB,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IACJ,WAAvB4xB,GAAW5xB,GAAGuE,OAAmBqlB,GAAOgI,GAAW5xB,GAAGo0B,WAE5DjtB,GAAOyiB,EACPkQ,GAAQD,GAAoBlH,GAC5BmH,GAAQ9H,KAAK6I,SAAS,UACtBf,GAAQtH,GAAO,aAEbR,KAAK8I,WACH,GACApI,GAAO,2BACLA,GAAO,kCACPA,GAAO,gBACTvrB,GACE2yB,GAGa,YAAZ5D,EAAG3xB,KACZq1B,EAAIgB,IAAM,SAAUjI,GAClB,IAAImH,EAAO,EAYX,GAXAt2B,OAAO6C,KAAK2rB,KAAK+I,kBAAkB9F,SAASj1B,IACtC0yB,GAAOV,KAAK+I,iBAAiB/6B,MAAK85B,GAAQ,MAE5CpH,GAAO,oCAAmCoH,GAAQ,GAClDpH,GAAO,yBAAwBoH,GAAQ,GACvCpH,GAAO,kBAAiBoH,GAAQ,GAEhCpH,GAAO,wBAAuBoH,GAAQ,MAE1CA,GAAQtH,GAAO,cAEXE,GAAO,cACT,IAAK,IAAI1yB,EAAI,EAAGA,EAAIgyB,KAAKgJ,eAAeC,OAAOh7B,OAAQD,IACjD0yB,GAAOV,KAAKgJ,eAAeC,OAAOj7B,GAAGuE,QAAOu1B,GAAQ,MAI5DA,GAAQD,GAAoBlH,GAE5B,IAAIxrB,EAAM,EACNurB,GAAO,cAAavrB,GAAmC,IAA5ByqB,GAAW2I,QAAQnG,QAC9C1B,GAAO,yBACTvrB,GAAmC,IAA5ByqB,GAAW2I,QAAQnG,QACxB1B,GAAO,gBAAevrB,GAAkC,IAA3ByqB,GAAWsJ,OAAO9G,QAEnD,IAAIxK,EAAM,EASV,OARApmB,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IACJ,YAAvB4xB,GAAW5xB,GAAGuE,OAAoBqlB,GAAOgI,GAAW5xB,GAAGo0B,WAG7D0F,GAAQ,EAAqC,IAAjC3H,GAAY,mBAA4BvI,EAEpDkQ,GAAQ9H,KAAK6I,SAAS3E,EAAG3xB,OAEjB2xB,EAAGiF,QAAUh0B,GAAO2yB,GAG9BF,EAAIgB,IAAM,SAAUjI,GAClB,IAAImH,EAAO,EAGX,OAFAA,GAAQD,GAAoBlH,GAC5BmH,GAAQ9H,KAAK6I,SAASlI,EAAGpuB,MAClBouB,EAAGyI,QAAUtB,GAKxBF,EAAIuB,QAAUjF,EAAGiF,QACjBvB,EAAIr1B,KAAO2xB,EAAG3xB,KACdq1B,EAAIG,eAAiB7D,EAAG6D,eACxBH,EAAIM,UAAYhE,EAAGgE,UACnBN,EAAI/F,QAAUqC,EAAGrC,QACjB+F,EAAIU,QAAUpE,EAAGoE,QACjBV,EAAIwB,QAAUlF,EAAGiF,QACjBvB,EAAIrG,GAAK2C,EAAG3C,GACZqG,EAAIa,QAAUvE,EAAGuE,QACVb,EAaT,SAASyB,GAAYC,GACnB,MAAMpF,EAAKlE,KAAKuJ,SAASD,GACnB1B,EAAM,GA4BZ,OA1BAA,EAAI4B,MAAQtF,EAAGsF,MACU,mBAAd5B,EAAI4B,QACG,0BAAZtF,EAAG3xB,KACLq1B,EAAI4B,MAAQ,WACV,IAAIv4B,EAAI,EAIR,OAHAO,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IAC3B4xB,GAAW5xB,GAAGy7B,OAAS,KAAIx4B,GAAK,MAE/BA,GAGT22B,EAAI4B,MAAQ,WACV,IAAIE,EAAM,EAEV,GADIhJ,GAAO,cAAagJ,EAAM,GAC1B1J,KAAKiB,OAAQ,CACf,MAAMc,EAASf,GAAU,WACV,IAAXe,EAAc2H,GAAO,IACL,IAAX3H,EAAc2H,GAAO,IACV,IAAX3H,IAAc2H,GAAO,KAEhC,OAAOA,IAIb9B,EAAI/G,KAAOqD,EAAGrD,KACd+G,EAAIr1B,KAAO2xB,EAAG3xB,KACPq1B,EAiBT,SAAS+B,KAEPhP,GAAmBqF,KAAK4J,cACxBhP,GAAaoF,KAAK6J,QAClBhP,GAAuBmF,KAAK8J,kBAC5BhP,GAAmBkF,KAAK+J,cACxBhP,GAAciF,KAAKgK,SAGnBx4B,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjC,MAAMk2B,EAAKlE,KAAKoB,QAAQpzB,GACxB,IAAI45B,EAAMhI,GAAW5xB,QACTI,IAARw5B,IAEFhI,GAAW5xB,GAAK26B,GAAoB36B,GACpC45B,EAAMhI,GAAW5xB,GACjBg4B,GAA2Bh4B,IAE7B45B,EAAIxF,OAAS8B,EAAG9B,OAChBwF,EAAI6B,MAAQvF,EAAGuF,MACf7B,EAAIqC,aAAe/F,EAAG+F,aACtBrC,EAAI1F,UAAYgC,EAAGhC,UACnB0F,EAAIzF,KAAO+B,EAAG/B,KACV+B,EAAGpC,iBACW,WAAZoC,EAAG3xB,OACL2oB,GAAUgJ,EAAG/C,SAAS+I,KAAK,GAC3B/O,GAAU+I,EAAG/C,SAAS+I,KAAK,GAC3B9O,GAAU8I,EAAG/C,SAAS+I,KAAK,IAE7BtC,EAAI9F,eAAiBoC,EAAGpC,eACxB8F,EAAIzG,SAAW+C,EAAG/C,UAEpBvB,GAAW5xB,GAAK45B,KAIlBp2B,OAAO6C,KAAK2rB,KAAKuJ,UAAUtG,SAASj1B,IAClC,MAAMk2B,EAAKlE,KAAKuJ,SAASv7B,GACzB,IAAI45B,EAAM/H,GAAY7xB,QACVI,IAARw5B,IACF/H,GAAY7xB,GAAKq7B,GAAYr7B,GAC7B45B,EAAM/H,GAAY7xB,IAEpB45B,EAAI7G,OAASmD,EAAGnD,OAChBlB,GAAY7xB,GAAK45B,KAInBp2B,OAAO6C,KAAK2rB,KAAK2H,cAAc1E,SAASj1B,IACtC,MAAMk2B,EAAKlE,KAAK2H,aAAa35B,GAC7B,IAAI45B,EAAM9H,GAAgB9xB,QACdI,IAARw5B,IACF9H,GAAgB9xB,GAAKy5B,GAAgBz5B,GACrC45B,EAAM9H,GAAgB9xB,IAExB45B,EAAIuC,IAAMjG,EAAGiG,IACbrK,GAAgB9xB,GAAK45B,KAIvBN,KACAtM,GAAgBS,GAChBR,GAAiBS,GA8BnB,SAAS0O,GAAoB/Q,GAC3B,MAAMiL,EAAMh4B,SAAS4D,cAAc,OAKnC,OAJAo0B,EAAIruB,MAAMo0B,WAAa,OACvB/F,EAAI/C,GAAK,GAAGlI,SACZiL,EAAI71B,UAAY0mB,aAChBmP,EAAIjzB,YAAcgoB,EACXiL,EAmHT,SAASgG,GAAgCC,GACvCA,EAAQ3gB,YAAYwgB,GAAoB,iBACxC,MAAMI,EAASl+B,SAAS4D,cAAc,OACtCs6B,EAAOv0B,MAAMw0B,aAAe,MAC5BD,EAAOv0B,MAAM2F,MAAQ,QACrB4uB,EAAOjJ,GAAK,kBACZgJ,EAAQ3gB,YAAY4gB,GAEpBD,EAAQ3gB,YAAYwgB,GAAoB,4BACxCG,EAAQlE,UAAUpwB,MAAMqV,QAAU,OAClC,MAAMof,EAAQp+B,SAAS4D,cAAc,OACrCw6B,EAAMz0B,MAAMw0B,aAAe,MAC3BC,EAAMz0B,MAAM2F,MAAQ,QACpB8uB,EAAMz0B,MAAMqV,QAAU,OACtBof,EAAMnJ,GAAK,0BACXgJ,EAAQ3gB,YAAY8gB,GAEpBH,EAAQ3gB,YAAYwgB,GAAoB,mBACxC,MAAM9qB,EAAKhT,SAAS4D,cAAc,OAClCoP,EAAGrJ,MAAMw0B,aAAe,MACxBnrB,EAAGiiB,GAAK,cACRgJ,EAAQ3gB,YAAYtK,GAEpBirB,EAAQ3gB,YAAYwgB,GAAoB,cACxC,MAAMpR,EAAO1sB,SAAS4D,cAAc,OAIpC,GAHA8oB,EAAKuI,GAAK,gBACVgJ,EAAQ3gB,YAAYoP,GAEA,MAAhB5B,GAAqB,CACvBmT,EAAQ3gB,YACNwgB,GAAoB,0CAEtBG,EAAQlE,UAAU9E,GAAK,4BACvB,MAAMoJ,EAAar+B,SAAS4D,cAAc,OAC1Cy6B,EAAWpJ,GAAK,sBAChBgJ,EAAQ3gB,YAAY+gB,IA4JxB,SAASC,GACPC,EACAC,EACAC,GAEA,IAAIC,EAAQH,EACRpE,EAAQ,EACZ,KAAOuE,EAAQD,GACbC,GAAqE,KAA5Dz0B,KAAK6D,IAAI,MAAQ4wB,EAAQz0B,KAAK6D,IAAI0wB,EAAU,OAAS,IAC9DrE,GAAS,EAEX,OAAOA,EAAQzG,KAAKiL,IA0XtB,SAASC,KACP,IAAIpD,EAAO,EAKX,OAJAt2B,OAAO6C,KAAK2rB,KAAKmL,OAAOlI,SAASj1B,SACM,IAA1BgyB,KAAKmL,MAAMn9B,GAAGo9B,UACvBtD,GAAQ9H,KAAKmL,MAAMn9B,GAAGo9B,YAEnBtD,EAWT,SAASuD,KACiC,OAApCjsB,EAAE,gCAC0B,IAA1BsU,EAAU4X,aACZlsB,EAAE,8BAA8BnJ,MAAMsC,IAAM,OAC5C6G,EAAE,8BAA8BnJ,MAAMsvB,OAAS,WAC/CnmB,EAAE,8BAA8BnJ,MAAMwK,QAAU,YAEhDrB,EAAE,8BAA8BnJ,MAAMkI,MAAQ,OAC9CiB,EAAE,8BAA8BnJ,MAAMsvB,OAAS,MAC/CnmB,EAAE,8BAA8BnJ,MAAMwK,QAAU,YAyLtD,SAAS8qB,KAEP,GADA5B,KACyC,SAArCvqB,EAAE,iBAAiBnJ,MAAMqV,SAAsBlM,EAAE,iBAAkB,CACrEA,EAAE,iBAAiBoM,UAAY,GAC/B,MAAMggB,EAp6BV,WACEpsB,EAAE,WAAWvO,WAAWoF,MAAMw1B,cAAgB,MAC9C,MAAMD,EAAal/B,SAAS4D,cAAc,OAM1C,OALAs7B,EAAWv1B,MAAM0U,OAAS,YAC1B6gB,EAAWv1B,MAAMwK,QAAU,MAC3B+qB,EAAWv1B,MAAMsvB,OAAS,WAC1BiG,EAAWjK,GAAK,kBAChBiK,EAAW/8B,UAAY0mB,aAChBqW,EA45BcE,GACnBtsB,EAAE,iBAAiBwK,YAAY4hB,GAEX,MAAhBpU,GAzuBR,WACE,GAAsC,IAAlC1D,EAAUiY,qBAA8C,IAAjB3L,KAAK+C,QAAe,CAI7D,IAAI1vB,EAaJ,GAfAi3B,GADmBlrB,EAAE,oBAIA,IAAjB4gB,KAAK+C,QACPvM,EAA4BnjB,EAE5BA,EAASmjB,EAEU,IAAjBwJ,KAAK0C,QAAervB,EAAS0pB,GACP,KAAjBiD,KAAK0C,QAAgBrvB,EAAS2pB,GACb,MAAjBgD,KAAK0C,UAAiBrvB,EAAS4pB,IAExC/F,EAAe8I,KAAKoB,QAAQ/J,IAAawP,UACzC1P,EAAqB9jB,EAAOgkB,IAAa6O,MAEH,IAAlCxS,EAAUiY,qBAA8C,IAAjB3L,KAAK+C,QAAe,CAC7D3jB,EAAE,mBAAmB/N,YAAcsmB,GAA4BR,EAAoB,GACnF,MAAMyU,EAAWr1B,KAAKC,MACnB2gB,EAAqB6I,KAAKgF,UAAa,KAEtC5M,OAAOC,SAASuT,IAA0B,IAAbA,EAC/BxsB,EAAE,mBAAmB/N,aAAe,KAAKu6B,EAAW,kBAEpDxsB,EAAE,mBAAmB/N,aAAe,OAClCqiB,EAAU8E,eAAiB,IAAM,oBAGrCpZ,EAAE,mBAAmB3Q,UAAY0mB,EAAe9hB,EAAOgkB,IAAazb,MAChE8X,EAAUiT,cACZvnB,EAAE,eAAe/N,YAAc0nB,GAAW1lB,EAAOgkB,IAAa/X,IAC3DF,EAAE,eAAe/N,YAAcsmB,GAA4BtkB,EAAOgkB,IAAa/X,GAAI,GACxFF,EAAE,eAAe3Q,UAAY0mB,EAAe9hB,EAAOgkB,IAAazb,MAChE,MAAMgrB,EAAYxN,IACflC,GAAgB8I,KAAK8G,QAAU3B,OAAyBN,MAE3DzlB,EAAE,iBAAiB/N,YAAcu1B,EAAUvN,KAEtB,UAAnBuN,EAAUvN,MACV2G,KAAK8G,QAAUzzB,EAAOgkB,IAAaqK,MAEnCtiB,EAAE,iBAAiB/N,YAAc,GAAGu1B,EAAUvN,oBACzCja,EAAE,iBAAiB/N,YAAcu1B,EAAUvN,KAClDja,EAAE,iBAAiB3Q,UAAY0mB,EAAeyR,EAAUhrB,MAI1DwD,EAAE,6BAA6BnJ,MAAMqV,QAAU,OAC/ClM,EAAE,iBAAiBnJ,MAAMw0B,aAAe,MACxC,IAAK,MAAMz8B,KAAKwD,OAAO6C,KAAK2rB,KAAKoB,QAAQ/J,IAAawU,mBACpD,IACG7L,KAAK8L,UACJ9L,KAAKoB,QAAQ/J,IAAawU,kBAAkB79B,GAAG+9B,OAAOx5B,MAExD,CACA,MAAMy5B,EACJhM,KAAKoB,QAAQ/J,IAAawU,kBAAkB79B,GAC9CoR,EAAE,iBAAiBnJ,MAAMw0B,aAAe,MACxCrrB,EAAE,6BAA6BnJ,MAAMqV,QAAU,GAC/ClM,EAAE,uBAAuB3Q,UAAY,kBAAkB4oB,KACvDjY,EAAE,uBAAuB/N,YAAcsmB,GACrCqU,EAAqBtC,IAAM9J,GAAWvI,IAAa4S,aACnD,IAEF7qB,EAAE,uBAAuBnJ,MAAM2F,MAAQ,QACvC,YAGCwD,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAoqBtC2gB,GACyB,MAAhB7U,GA3Tf,WAYE,GAVAkT,GADmBlrB,EAAE,oBAGrB+X,EACEoG,GAAcyC,KAAKiE,gBAAgB5M,IAAa9kB,MAAM2zB,MACxDhP,EAAe8I,KAAKuJ,SAClBvJ,KAAKiE,gBAAgB5M,IAAa9kB,MAClC25B,WACF5U,GACEiG,GAAcyC,KAAKiE,gBAAgB5M,IAAa9kB,MAAM45B,WAElB,IAAlCzY,EAAUiY,oBAA2B,CACvCvsB,EAAE,mBAAmB/N,YAAcsmB,GAA4BR,EAAoB,GACnF,MAAMyU,EAAWr1B,KAAKC,MAAO2gB,EAAqB6I,KAAKgF,UAAa,KAG7B,MAArC5lB,EAAE,mBAAmB/N,aACJ,MAAhB+lB,IAAuC,MAAhBA,IAOpBgB,OAAOC,SAASuT,IAA0B,IAAbA,EAC/BxsB,EAAE,mBAAmB/N,aAAe,KAAKu6B,EAAW,kBAEpDxsB,EAAE,mBAAmB/N,aAAe,OAClCqiB,EAAU8E,eAAiB,IAAM,oBAGrCpZ,EAAE,mBAAmB3Q,UACnB0mB,EACAoI,GAAcyC,KAAKiE,gBAAgB5M,IAAa9kB,MAAMqJ,MAEpD0b,KACFlY,EAAE,2BAA2B/N,YAAcsmB,GAA4BL,IACvElY,EAAE,2BAA2BnJ,MAAMqV,QAAU,QAC7ClM,EAAE,2BAA2BgtB,gBAAgBn2B,MAAMqV,QAAU,SAGpC,IAAvB6L,GAA4BG,IAC9BlY,EAAE,eAAe/N,YAAc,GAAGsmB,GAChCT,EAAeI,aAEjBlY,EAAE,eAAenJ,MAAM2F,MAAQ,UAE3B8X,EAAUiT,cACZvnB,EAAE,eAAe/N,YAAc0nB,GAC7BwE,GAAcyC,KAAKiE,gBAAgB5M,IAAa9kB,MAAM+M,IAGxDF,EAAE,eAAe/N,YAAcsmB,GAC7B4F,GAAcyC,KAAKiE,gBAAgB5M,IAAa9kB,MAAM+M,GACtD,GAEJF,EAAE,eAAe3Q,UACf0mB,EACAoI,GAAcyC,KAAKiE,gBAAgB5M,IAAa9kB,MAAMqJ,SAvC1DwD,EAAE,qBAAqBnJ,MAAMqV,QAAU,OACvClM,EAAE,mBAAmBnJ,MAAMqV,QAAU,OACrClM,EAAE,uBAAuBnJ,MAAMqV,QAAU,OACzClM,EAAE,eAAenJ,MAAMqV,QAAU,QAuCnC,MAAMsb,EAAYxN,IACflC,GAAgB8I,KAAK8G,QAAU3B,OAAyBN,MAY3D,GAVAzlB,EAAE,iBAAiB/N,YAAcu1B,EAAUvN,KAEtB,UAAnBuN,EAAUvN,MACV2G,KAAK8G,QAAU9G,KAAKiE,gBAAgB5M,IAAa6U,WAEjD9sB,EAAE,iBAAiB/N,YAAc,GAAGu1B,EAAUvN,oBACzCja,EAAE,iBAAiB/N,YAAcu1B,EAAUvN,KAClDja,EAAE,iBAAiB3Q,UAAY0mB,EAAeyR,EAAUhrB,MAGT,kBAA3CokB,KAAKiE,gBAAgB5M,IAAa9kB,KAA0B,CAC9D6M,EAAE,mBAAmBinB,UAAUpwB,MAAMw0B,aAAe,MACpDrrB,EAAE,mBAAmBwK,YACnBwgB,GAAoB,yCAEtB,MAAMiC,EAAY//B,SAAS4D,cAAc,OACzCm8B,EAAUp2B,MAAM2F,MAAQ,QACxBywB,EAAUh7B,YAAc,GAAGsmB,GAA2C,IAAfqI,KAAK8G,cAAqBnP,GAC/EmF,MAEF1d,EAAE,mBAAmBwK,YAAYyiB,SAE9BjtB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAqOtCghB,GACyB,MAAhBlV,GAxVf,WACE,GAA8B,IAA1B1D,EAAU6Y,YAAmB,CAC/B,MAAMf,EAAapsB,EAAE,mBAErBosB,EAAW5hB,YAAYwgB,GAAoB,uBAE3C,MAAMoC,EAAWlgC,SAAS4D,cAAc,OACxCs8B,EAASjL,GAAK,gBACdiK,EAAW5hB,YAAY4iB,GACvB,MAAMC,EApCK,KADOp+B,EAqCa2xB,KAAK0M,iBAnC7B,CAAErT,KAAM,SAAUzd,MAAO+Z,GAErB,IAATtnB,EACK,CAAEgrB,KAAM,aAAczd,MAAO0Z,GAEzB,IAATjnB,EACK,CAAEgrB,KAAM,SAAUzd,MAAO2Z,GAErB,IAATlnB,EACK,CAAEgrB,KAAM,QAASzd,MAAO4Z,GAEpB,IAATnnB,EACK,CAAEgrB,KAAM,cAAezd,MAAO8Z,GAEhC,CAAE2D,KAAM,qBAAsBzd,MAAO6Z,GAsB1C+W,EAASn7B,YAAco7B,EAAUpT,KACjCmT,EAAS/9B,UAAY0mB,EAAesX,EAAU7wB,WACzCwD,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAxC5C,IAAsBjd,EAqXhBs+B,GACyB,MAAhBvV,GA1kBf,WACE,MAAM+J,SAAEA,GAAanB,KAAKoB,QAAQ,gBAC5BwL,EAAYzL,EAAS0L,aAAa1L,EAAS2L,WAAWzV,KAE5D,GAA8B,IAA1B3D,EAAUqZ,aAAqBH,GAAazL,EAAS6L,OAAQ,CAC/D,MAAMxB,EAAapsB,EAAE,mBAGrBosB,EAAW5hB,YAAYwgB,GAAoB,cAC3C,MAAMpR,EAAO1sB,SAAS4D,cAAc,OACpC8oB,EAAKuI,GAAK,gBACViK,EAAW5hB,YAAYoP,GACvB,MAAM4N,EAAYxN,GAChBwR,GAA4BzJ,EAAS6J,MAAO7J,EAAS6L,OAAQJ,IAM/D,GAJA5T,EAAK3nB,YAAcu1B,EAAUvN,KAC7BL,EAAKvqB,UAAY0mB,EAAeyR,EAAUhrB,MAGtCgxB,GAAazL,EAAS6J,MAAO,CAC/BQ,EAAW5hB,YAAYwgB,GAAoB,iBAC3C,MAAM6C,EAAU3gC,SAAS4D,cAAc,OACvC+8B,EAAQ1L,GAAK,mBACbiK,EAAW5hB,YAAYqjB,GACvB,MAAMC,EAAe9T,GACnBwR,GACEr0B,KAAK6D,IAAI,EAAG+mB,EAAS6J,MAAQ4B,GAC7BzL,EAAS6L,OACT7L,EAAS6J,QAGbiC,EAAQ57B,YAAc67B,EAAa7T,KACnC4T,EAAQx+B,UAAY0mB,EAAe+X,EAAatxB,MAIlD,GAAoB,MAAhByb,GAAqB,CACvBmU,EAAW5hB,YACTwgB,GAAoB,8BAEtB,MAAM+C,EAAU7gC,SAAS4D,cAAc,OACvCi9B,EAAQ5L,GAAK,IACbiK,EAAW5hB,YAAYujB,GACvB,MAAMC,EAAS9gC,SAAS4D,cAAc,QACtCk9B,EAAOn3B,MAAM2F,MAAQ,UACrBwxB,EAAO/7B,YAAcsmB,GACnBphB,KAAK2D,IACqC,KAAvC8lB,KAAK8G,QAAU3B,MACa,GAA7B5I,GAAkC,IAEpC,GAEF4Q,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,YAAcsmB,GAAyD,GAA7B4E,GAAkC,GAAI,GACrF4Q,EAAQvjB,YAAY0jB,GAGtBluB,EAAE,iBAAiBwK,YAAY4hB,QAC1BpsB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OA4gBtCiiB,GACyB,MAAhBnW,GA9pBf,WACE,MAAM+J,SAAEA,GAAanB,KAAKoB,QAAQoM,KAClC,GACE9Z,EAAU+Z,cAC2C,IAArDtM,EAASuM,KAAKrW,GAAY,IAAIA,GAAY,IAAI,GAC9C,CACA,MAAMsW,EACJxM,EAASuM,KAAKrW,GAAY,IAAIA,GAAY,IAAI,GAC9C8J,EAASyM,WAAWzM,EAASuM,KAAKrW,GAAY,IAAIA,GAAY,IAAI,GAAK,GACpEwW,WACCC,EACJ3M,EAASyM,WAAWzM,EAASuM,KAAKrW,GAAY,IAAIA,GAAY,IAAI,GAAK,GACpE9kB,KACL6M,EAAE,mBAAmBwK,YACnBwgB,GAAoB,+BAEtB,MAAMgD,EAAS9gC,SAAS4D,cAAc,OACtCk9B,EAAO7L,GAAK,uBACZniB,EAAE,mBAAmBwK,YAAYwjB,GACf,cAAdU,EACF1uB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACIhW,GAA4BphB,KAAK2D,IAAmB,IAAf8lB,KAAK8G,QAAiC,GAAjB9G,KAAKgF,UAAiB,KAChF,SACArN,GAA6C,GAAjBqI,KAAKgF,UAAiB,MACjC,cAAd8I,GAA2C,oBAAdA,EACtC1uB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACIhW,GAA4BphB,KAAK2D,IAAmB,IAAf8lB,KAAK8G,QAAiC,GAAjB9G,KAAKgF,UAAiB,IAChF,SACArN,GAA6C,GAAjBqI,KAAKgF,UAAiB,KACjC,cAAd8I,EACT1uB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACIhW,GAA4BphB,KAAK2D,IAAmB,IAAf8lB,KAAK8G,QAAiC,GAAjB9G,KAAKgF,UAAiB,KAChF,SACArN,GAA6C,GAAjBqI,KAAKgF,UAAiB,MACjC,cAAd8I,EACT1uB,EAAE,wBAAwB/N,YAAc,GACtCs8B,EACIhW,GAA4BphB,KAAK2D,IAAmB,IAAf8lB,KAAK8G,QAAiC,GAAjB9G,KAAKgF,UAAiB,MAChF,SACArN,GAA6C,GAAjBqI,KAAKgF,UAAiB,OACnD5lB,EAAE,iBAAiBnJ,MAAMqV,QAAU,YACrClM,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAmnBtCyiB,GACyB,OAAhB3W,GAlgBf,WACE,MAAM+J,SAAEA,GAAanB,KAAKoB,QAAQoM,KAClC,GAAI9Z,EAAU6Y,YAAa,CACzBntB,EAAE,mBAAmBwK,YACnBwgB,GAAoB,oCAEtB,IAAI4D,EAAY,EACZC,EAAS,EACTjO,KAAK3rB,KAAK,KAAO2rB,KAAK3rB,KAAK,MAAK45B,EAAS,GAC7C,IAAK,IAAI91B,EAAI,EAAGA,EAAI,EAAGA,IACrB,IAAK,IAAID,EAAI,EAAGA,EAAI,EAAGA,IACrB,GAAIipB,EAASuM,KAAKv1B,GAAGD,GAAG,IAAM,EAAG,CAC/B,MAAMg2B,EAAO/M,EAASuM,KAAKv1B,GAAGD,GACxBgsB,EAAK/C,EAASyM,WAAWM,EAAK,GAAK,GACnCJ,EAAY5J,EAAG3xB,KAErB,IAAIk0B,GAAQ,EACRwH,GAAU/J,EAAGiK,WAAU1H,GAAQ,GAC/ByH,EAAK,GAAKhK,EAAG2J,aAAYpH,GAAQ,GACjCA,GAAuB,cAAdqH,EACXE,GAAaz3B,KAAK2D,IACD,IAAf8lB,KAAK8G,QACY,GAAjB9G,KAAKgF,UAAiB,IAGvByB,GAAuB,cAAdqH,GACI,oBAAdA,EAEAE,GAAaz3B,KAAK2D,IAAmB,IAAf8lB,KAAK8G,QAAiC,GAAjB9G,KAAKgF,UAAiB,GACxDyB,GAAuB,cAAdqH,EAClBE,GAAaz3B,KAAK2D,IACD,IAAf8lB,KAAK8G,QACY,GAAjB9G,KAAKgF,UAAiB,IAEfyB,GAAuB,cAAdqH,IAClBE,GAAaz3B,KAAK2D,IACD,IAAf8lB,KAAK8G,QACY,GAAjB9G,KAAKgF,UAAiB,MAMhC5lB,EAAE,mBAAmBwK,YACnBtd,SAASqgB,eAAegL,GAA4BqW,UAEjD5uB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAqdtC8iB,GACyB,OAAhBhX,GAnDf,WACEhY,EAAE,WAAWoM,UAAY,GACzBpM,EAAE,WAAWwK,YAAYwgB,GAAoB,YAE7C,MAAMiE,EAAiB/hC,SAAS4D,cAAc,OAC9Cm+B,EAAe9M,GAAK,mBACA,WAAhBlK,GACFgX,EAAeh9B,YAAc6rB,GACJ,eAAhB7F,KACTgX,EAAeh9B,YAAc+rB,GAAsB,IAGrDhe,EAAE,WAAWwK,YAAYykB,GAwCrBC,IAEgB,QAAhBlX,IACiB,QAAhBA,KAA6C,IAApBC,GAAY,KA3c5C,WACE,GAAkC,IAA9B3D,EAAU6a,gBAAuB,CACnC,MAAM/C,EAAapsB,EAAE,mBACrB,IAAIovB,EACuBA,EAAP,QAAhBpX,GAA+BC,GAAY,GAClCA,GAGbmU,EAAW5hB,YAAYwgB,GAAoB,0BAC3C,MAAMqE,EAAOniC,SAAS4D,cAAc,OAEpC,GADAu+B,EAAKlN,GAAK,6BACkB,IAAxBtC,GAAUuP,GAAO,GAAU,CAC7BC,EAAKp9B,YAAcsmB,GAA4BsH,GAAUuP,GAAO,IAChE,MAAM5C,EAAWr1B,KAAKC,MACnByoB,GAAUuP,GAAO,GAAKxO,KAAKgF,UAAa,KAEvC5M,OAAOC,SAASuT,IAA0B,IAAbA,EAC/B6C,EAAKp9B,aAAe,KAAKu6B,EAAW,kBAEpC6C,EAAKp9B,aAAe,OAClBqiB,EAAU8E,eAAiB,IAAM,yBAGhCiW,EAAKp9B,YAAc,mBAC1Bm6B,EAAW5hB,YAAY6kB,GAEvBjD,EAAW5hB,YAAYwgB,GAAoB,0BAC3C,MAAMsE,EAAOpiC,SAAS4D,cAAc,OAEpC,GADAw+B,EAAKnN,GAAK,6BACkB,IAAxBtC,GAAUuP,GAAO,GAAU,CAC7BE,EAAKr9B,YAAcsmB,GAA4BsH,GAAUuP,GAAO,IAChE,MAAM5C,EAAWr1B,KAAKC,MACnByoB,GAAUuP,GAAO,GAAKxO,KAAKgF,UAAa,KAEvC5M,OAAOC,SAASuT,IAA0B,IAAbA,EAC/B8C,EAAKr9B,aAAe,KAAKu6B,EAAW,kBAEpC8C,EAAKr9B,aAAe,OAClBqiB,EAAU8E,eAAiB,IAAM,yBAGhCkW,EAAKr9B,YAAc,mBAC1Bm6B,EAAW5hB,YAAY8kB,GAEvBlD,EAAW5hB,YAAYwgB,GAAoB,0BAC3C,MAAMuE,EAAOriC,SAAS4D,cAAc,OAEpC,GADAy+B,EAAKpN,GAAK,6BACkB,IAAxBtC,GAAUuP,GAAO,GAAU,CAC7BG,EAAKt9B,YAAcsmB,GAA4BsH,GAAUuP,GAAO,IAChE,MAAM5C,EAAWr1B,KAAKC,MACnByoB,GAAUuP,GAAO,GAAKxO,KAAKgF,UAAa,KAEvC5M,OAAOC,SAASuT,IAA0B,IAAbA,EAC/B+C,EAAKt9B,aAAe,KAAKu6B,EAAW,kBAEpC+C,EAAKt9B,aAAe,OAClBqiB,EAAU8E,eAAiB,IAAM,yBAGhCmW,EAAKt9B,YAAc,mBAC1Bm6B,EAAW5hB,YAAY+kB,GAEvBvvB,EAAE,iBAAiBwK,YAAY4hB,QAC1BpsB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OA8YtCsjB,GA9LN,WACE,GAAoB,MAAhBxX,IAAuC,MAAhBA,GAAqB,CACgB,OAA1D9qB,SAASuiC,eAAe,gCAC1BzvB,EAAE,iBAAiBwK,YAhuBzB,WACE,MAAMklB,EAAcxiC,SAAS4D,cAAc,OAC3C4+B,EAAY74B,MAAMgI,SAAW,WAC7B6wB,EAAY74B,MAAMqV,QAAU,QAC5BwjB,EAAY74B,MAAMqC,KAAO,OACzBw2B,EAAY74B,MAAMkW,OAAS,OAC3B2iB,EAAYvN,GAAK,6BAEjB,MAAMwN,EAAS,SACbC,EACApzB,EACAqzB,EACAC,EACAC,GAEA,MAAMpnB,EAAMzb,SAAS4D,cAAc,OACnC6X,EAAIwZ,GAAKyN,EACTjnB,EAAI9R,MAAMqV,QAAU,OACpBvD,EAAI9R,MAAMm5B,WAAa,wBACvBrnB,EAAItZ,UAltDe,WAktDcmN,EACjCmM,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,UAAY0mB,EAAevZ,EACrC0zB,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,EAAYjO,GAAK4N,EACjBI,EAAW3lB,YAAYtd,SAASqgB,eAAe,cAC/C4iB,EAAW3lB,YAAY4lB,GAChBznB,GA+DT,OA5DA+mB,EAAYllB,YACVmlB,EACE,yBACAtZ,EACA,YACA,uFACA,+BAGJqZ,EAAYj+B,WAAWoF,MAAMw0B,aAAe,MAC5CqE,EAAYllB,YACVmlB,EACE,+BACAxZ,EACA,YACA,gGACA,qCAGJuZ,EAAYzI,UAAUpwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,2BACArZ,EACA,YACA,oGACA,iCAGJoZ,EAAYzI,UAAUpwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,iCACArZ,EACA,YACA,6GACA,uCAGJoZ,EAAYzI,UAAUpwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,2BACArZ,EACA,YACA,qJACA,iCAGJoZ,EAAYzI,UAAUpwB,MAAMw0B,aAAe,MAC3CqE,EAAYllB,YACVmlB,EACE,wBACAtZ,EACA,YACA,2EAA2E/B,EAAU+b,8BACrF,8BAIGX,EA6nB4BY,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,MAAMypB,EAASpC,KAAK8G,QAAU3B,KAAuBjO,EAC/CyY,EAAkBjc,EAAUkc,YAAczY,EAAqB,EACrE,IAAI0Y,EAAahU,GACjB,GAA8B,IAA1BnI,EAAUkc,YAAmB,CAC/B,IAAIE,EAAc3Y,EAClB2Y,GAAe5E,KACf2E,GAA6B,GAAdC,EAAmB,GAAM,IAc1C,GAXgC,IAA5Bpc,EAAUqc,eACR3N,EAASyN,IAA+B,MAAhBzY,IAAwC,IAAjB4I,KAAK+C,UACtD3jB,EAAE,0BAA0BnJ,MAAMqV,QAAU,GAC5ClM,EAAE,8BAA8B/N,YAAc,GAAGsmB,GAC/CkY,EAAazN,OACTrJ,IACH8W,EAAazN,IAAWyC,KAAW8K,QAGnCvwB,EAAE,0BAA0BnJ,MAAMqV,QAAU,OAEb,IAAlCoI,EAAUsc,oBAA2B,CACvC,MAAMC,EAAgC,EAAbJ,EAEvBzN,EAAS6N,IACQ,MAAhB7Y,IAAwC,IAAjB4I,KAAK+C,UAE7B3jB,EAAE,gCAAgCnJ,MAAMqV,QAAU,GAClDlM,EAAE,oCAAoC/N,YAAc,GAAGsmB,GACrDsY,EAAmB7N,OACfrJ,IACHkX,EAAmB7N,IAAWyC,KAAW8K,QAEvCvwB,EAAE,gCAAgCnJ,MAAMqV,QAAU,YACpDlM,EAAE,gCAAgCnJ,MAAMqV,QAAU,OAEzD,GAAkC,IAA9BoI,EAAUwc,gBAAuB,CACnC,MAAMC,EAA4B,EAAbN,EAEnBzN,EAAS+N,IACQ,MAAhB/Y,IAAwC,IAAjB4I,KAAK+C,UAE7B3jB,EAAE,4BAA4BnJ,MAAMqV,QAAU,GAC9ClM,EAAE,gCAAgC/N,YAAc,GAAGsmB,GACjDwY,EAAe/N,OACXrJ,IACHoX,EAAe/N,IAAWyC,KAAW8K,QAEnCvwB,EAAE,4BAA4BnJ,MAAMqV,QAAU,YAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,OAErD,GAAwC,IAApCoI,EAAU0c,sBAA6B,CACzC,MAAMC,EAAkC,EAAbR,EAAiB,EAE1CzN,EAASiO,IACQ,MAAhBjZ,IAAwC,IAAjB4I,KAAK+C,UAE7B3jB,EAAE,kCAAkCnJ,MAAMqV,QAAU,GACpDlM,EAAE,sCAAsC/N,YAAc,GAAGsmB,GACvD0Y,EAAqBjO,OACjBrJ,IACHsX,EAAqBjO,IAAWyC,KAAW8K,QAEzCvwB,EAAE,kCAAkCnJ,MAAMqV,QAAU,YACtDlM,EAAE,kCAAkCnJ,MAAMqV,QAAU,OAG3B,IAA9BoI,EAAU4c,iBACVtQ,KAAKoB,QAAQ,gBAAgBU,gBAG3BzF,IACA+F,EAAS/F,KACQ,MAAhBjF,IAAwC,IAAjB4I,KAAK+C,UAE7B3jB,EAAE,4BAA4BnJ,MAAMqV,QAAU,GAC9ClM,EAAE,gCAAgC/N,YAAc,GAAGsmB,GACjD0E,GAAe+F,OACXrJ,IACHsD,GAAe+F,IAAWyC,KAAW8K,QAGrCvwB,EAAE,4BAA4BnJ,MAAMqV,QAAU,OAEjDoI,EAAU+b,aAAe,GAEzBrN,EAAS1O,EAAU+b,aAAe5K,OACjB,MAAhBzN,IAAwC,IAAjB4I,KAAK+C,UAE7B3jB,EAAE,yBAAyBnJ,MAAMqV,QAAU,GAE3ClM,EACE,yBACAmxB,SAAS,GAAGl/B,YAAc,2EAA2EqiB,EAAU+b,8BACjHrwB,EAAE,6BAA6B/N,YAAc,GAAGsmB,GAC9CjE,EAAU+b,aAAe5K,KAAWzC,OAChCrJ,IACHrF,EAAU+b,aAAe5K,KAAWzC,IAClCyC,KAAW8K,QAGbvwB,EAAE,yBAAyBnJ,MAAMqV,QAAU,YACL,OAApClM,EAAE,+BACXA,EAAE,8BAA8B9J,SAwEhCk7B,QACgC,OAAvBpxB,EAAE,kBAE6B,OAApCA,EAAE,+BACJA,EAAE,8BAA8B9J,SAyFtC,SAASm7B,KAEP,GACEzQ,KAAK0Q,MAAMC,UACX3Q,KAAK4Q,MAAQ,IAAO,GACJ,UAAhB5Q,KAAK6Q,QACLnd,EAAUod,MACV,CACA,MAAMhL,EAAQx5B,SAASuiC,eAAe,wBAClC/I,IACFA,EAAMiL,UAAY/Q,KAAKgR,QACV,GAAXhR,KAAKiL,IAAYjL,KAAKiR,GAAgB,GAAXjR,KAAKiL,KAChC,IAMNnI,KACAU,KAthDF,WACE,GAA2B,IAAvB9P,EAAUyT,SAAgB,CAE5B,MAAM+J,EAAiB9xB,EAAE,cAAczG,YAAc,IAE/Cw4B,EAAiB/xB,EAAE,cAAczG,YAAc,IACrD,IAAIy4B,EAAiB,EAIkB,IAArCpR,KAAKqR,aAAaC,OAAOC,SACxBvR,KAAKwR,IAAI,uBA+CLpyB,EAAE,gBAAgBnJ,MAAMqV,QAAU,QA7CvClM,EAAE,gBAAgBnJ,MAAMqV,QAAU,GAClClM,EAAE,sBAAsBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MAC3CD,KAAK6D,IACJ,EACA4lB,KAAKqR,aAAaC,OAAOG,QAAUzR,KAAKqR,aAAaC,OAAOtY,MAE5DkY,EACAlR,KAAKqR,aAAaC,OAAOI,aAEzBhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,sBAAsB/N,YAAckF,KAAKoL,MACxCqe,KAAKqR,aAAaC,OAAOG,QAAUzR,KAAKqR,aAAaC,OAAOtY,MAC3DgH,KAAKiL,KAEN7rB,EAAE,sBAAsB/N,YAAc,GAEzC2uB,KAAKqR,aAAaC,OAAOG,UAAYzR,KAAKqR,aAAaC,OAAOI,SAE9DtyB,EAAE,sBAAsBnJ,MAAM2vB,qBAAuB,OACrDxmB,EAAE,sBAAsBnJ,MAAM4vB,wBAA0B,SAExDzmB,EAAE,sBAAsBnJ,MAAM2vB,qBAAuB,GACrDxmB,EAAE,sBAAsBnJ,MAAM4vB,wBAA0B,IAE1DzmB,EAAE,mBAAmBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MACxCD,KAAK2D,IACJ8lB,KAAKqR,aAAaC,OAAOI,QAAU1R,KAAKqR,aAAaC,OAAOG,QAC5DzR,KAAKqR,aAAaC,OAAOI,QAAU1R,KAAKqR,aAAaC,OAAOtY,MAE5DkY,EACAlR,KAAKqR,aAAaC,OAAOI,aAEzBhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,mBAAmB/N,YAAckF,KAAKoL,KACtCpL,KAAK2D,IACH8lB,KAAKqR,aAAaC,OAAOI,QAAU1R,KAAKqR,aAAaC,OAAOG,QAC5DzR,KAAKqR,aAAaC,OAAOI,QAAU1R,KAAKqR,aAAaC,OAAOtY,MAC1DgH,KAAKiL,KAER7rB,EAAE,mBAAmB/N,YAAc,GACxC+N,EAAE,oBAAoB/N,YAAckF,KAAKoL,MACtCqe,KAAKqR,aAAaC,OAAOI,QAAU1R,KAAKqR,aAAaC,OAAOtY,MAC3DgH,KAAKiL,KAETmG,GAAkB,GAKF,cAAhBpR,KAAK4R,QACkC,IAAvC5R,KAAKqR,aAAaQ,SAASN,SAE3BnyB,EAAE,iBAAiBnJ,MAAMqV,QAAU,GACnClM,EAAE,uBAAuBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MAC5CD,KAAK6D,IACJ,EACA4lB,KAAKqR,aAAaQ,SAASJ,QAAUzR,KAAKqR,aAAaQ,SAAS7Y,MAEhEkY,EACAlR,KAAKqR,aAAaQ,SAASH,aAE3Bhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,uBAAuB/N,YAAckF,KAAKoL,MACzCqe,KAAKqR,aAAaQ,SAASJ,QAC1BzR,KAAKqR,aAAaQ,SAAS7Y,MAC3BgH,KAAKiL,KAEN7rB,EAAE,uBAAuB/N,YAAc,GAC5C+N,EAAE,oBAAoBnJ,MAAMkG,MAAQ,GAAG5F,KAAKC,MACzCD,KAAK2D,IACJ8lB,KAAKqR,aAAaQ,SAASH,QACzB1R,KAAKqR,aAAaQ,SAASJ,QAC7BzR,KAAKqR,aAAaQ,SAASH,QAAU1R,KAAKqR,aAAaQ,SAAS7Y,MAEhEkY,EACAlR,KAAKqR,aAAaQ,SAASH,aAE3Bhe,EAAUie,iBAAmB,EAC/BvyB,EAAE,oBAAoB/N,YAAckF,KAAKoL,KACvCpL,KAAK2D,IACH8lB,KAAKqR,aAAaQ,SAASH,QACzB1R,KAAKqR,aAAaQ,SAASJ,QAC7BzR,KAAKqR,aAAaQ,SAASH,QACzB1R,KAAKqR,aAAaQ,SAAS7Y,MAC3BgH,KAAKiL,KAER7rB,EAAE,oBAAoB/N,YAAc,GACzC+N,EAAE,qBAAqB/N,YAAckF,KAAKoL,MACvCqe,KAAKqR,aAAaQ,SAASH,QAAU1R,KAAKqR,aAAaQ,SAAS7Y,MAC/DgH,KAAKiL,KAETmG,GAAkB,GAElBhyB,EAAE,iBAAiBnJ,MAAMqV,QAAU,OAIrC,MAAMwmB,EAAgB,GACtB1yB,EAAE,wBAAwBoM,UAAY,GACtCha,OAAO6C,KAAK2rB,KAAKmL,OAAOlI,SAASj1B,IAC/B,GAAIgyB,KAAKmL,MAAMn9B,GAAI,CACjB,MAAM83B,EAAQV,GAAYpF,KAAKmL,MAAMn9B,GAAGuE,KAAMytB,KAAKmL,MAAMn9B,GAAGuE,KAAM,CAChE,CAAEgvB,GAAI,GAAGvB,KAAKmL,MAAMn9B,GAAGuE,aAEzBuzB,EAAM7vB,MAAMqV,QAAU,GACtB,IAAIymB,EAAa,GAGfA,OAD4C,IAAnCpb,EAAWqJ,KAAKmL,MAAMn9B,GAAGuE,MACrBokB,EAAWqJ,KAAKmL,MAAMn9B,GAAGuE,MACpBmjB,EACpBoQ,EAAMO,UAAUkK,SAAS,GAAG9hC,UAAY2mB,EAAe2c,EACvDjM,EAAMO,UAAUkK,SAAS,GAAGt6B,MAAM2F,MAAQ,QACR,IAA9B8X,EAAUie,gBACZ7L,EAAMO,UAAUkK,SAAS,GAAGl/B,YAAc,GAAGkF,KAAKC,MACzCwpB,KAAKmL,MAAMn9B,GAAGgrB,KAAOgH,KAAKmL,MAAMn9B,GAAG0jC,QAA1C,QAEC5L,EAAMO,UAAUkK,SAAS,GAAGl/B,YAAc,GAC/Cy0B,EAAMO,UAAUkK,SAAS,GAAGt6B,MAAMkG,MAAQ,GAAG5F,KAAKC,MAC/CwpB,KAAKmL,MAAMn9B,GAAGgrB,MACZmY,EAC8D,EAA7D56B,KAAKoL,KAAKqe,KAAKmL,MAAMn9B,GAAGgrB,KAAOgH,KAAKiL,KAAKx0B,WAAWxI,QACtD+xB,KAAKmL,MAAMn9B,GAAG0jC,aAElB5L,EAAMO,UAAUkK,SAAS,GAAGl/B,YAAckF,KAAKoL,KAC7Cqe,KAAKmL,MAAMn9B,GAAGgrB,KAAOgH,KAAKiL,KAE5BmG,GAAkB,EAClBU,EAAc9R,KAAKmL,MAAMn9B,GAAGuE,MAAQuzB,MAGxCt0B,OAAO6C,KAAKy9B,GAAe7O,SAASj1B,IAClCoR,EAAE,wBAAwBwK,YAAYkoB,EAAc9jC,OAG/B,IAAnBojC,IACFhyB,EAAE,cAAcnJ,MAAMmG,OAA6B,GAAjBg1B,EAAsB,EAAzB,MAE7B5Z,KAAuB4Z,IACzB5Z,GAAqB4Z,EACrBlK,OAi4CJ8K,GAGAzL,KAGAgF,KArGF,WACE,GAA+B,IAA3B7X,EAAUue,cAA8C,IAAxB9b,EAA2B,CAE7D,IAAI+b,GAAiB,EACrB1gC,OAAO6C,KAAK2rB,KAAKkF,WAAWjC,SAASj1B,IACnC,MAAMk2B,EAAKlE,KAAKkF,UAAUl3B,GAC1B,GAAIk2B,EAAGiO,MAAQ,GAAKjO,EAAGkO,UAErB,GADAF,GAAiB,EAEkB,IAAjC7b,EAA0BroB,SACOI,IAAjCioB,EAA0BroB,GAC1B,CACA,MAAMqkC,EAAc/lC,SAAS4D,cAAc,OACrCoiC,EAAWhmC,SAAS4D,cAAc,OACxCoiC,EAASr8B,MAAMs8B,SAAW,QAC1BD,EAASr8B,MAAMw0B,aAAe,MAC9B,MAAMnG,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMuW,UAAY,SACtB8X,EAAI/C,GAAK,oBACT+Q,EAAS1oB,YAAY0a,GACrB+N,EAAYzoB,YAAY0oB,GACxBtS,KAAKuK,QAAQ/kB,KAAK9Y,KAAM8lC,OAAOH,EAAY7mB,YAC3C4K,EAAkBpoB,EAClBqoB,EAA0BroB,GAAK,QAGjCqoB,EAA0BroB,GAAK,KAG9BkkC,GACHlS,KAAKuK,QAAQvlB,QA0EjBytB,GAhEF,WACE,GAA+B,IAA3B/e,EAAUue,cAAiD,OAA3B7yB,EAAE,qBAA+B,CACnE,IAAIszB,OAAEA,GAAW1S,KAAKkF,UAAU9O,GAC5Buc,EAAS,IAKb,GAJI3S,KAAKwR,IAAI,6BAA4BmB,GAAU,MACN,IAAzC3S,KAAKkF,UAAU9O,GAAiB/nB,OAAYskC,GAAU,GAC1DD,GAAUC,EACN3S,KAAKwR,IAAI,mBAAkBkB,GAAU,MACrC9S,GAAWsB,OAAOY,eAAgB,CACpC,MAAMC,EAAS/B,KAAKiB,OAAO,SACZ,IAAXc,EAAc2Q,GAAU,KACR,IAAX3Q,EAAc2Q,GAAU,IACb,IAAX3Q,IAAc2Q,GAAU,MAEnCtzB,EAAE,qBAAqB/N,YAAcsmB,GAA4B+a,IAmDnEE,GA73CElf,EAAUmf,SACM,UAAhB7S,KAAK6Q,SACJ7Q,KAAK4Q,MAAQ,IAAiB,EAAX5Q,KAAKiL,MAAa,IACrCjL,KAAK4Q,MAAQ,GAAK5Q,KAAKiL,KAAQ,GAEhCjL,KAAK8S,aA83CP,IAAI1jC,EAAMgQ,EAAE,WAAWoM,UAAU5W,QAC/B,cACA+iB,GAA4BqI,KAAK8G,UAE/B9G,KAAK0Q,MAAMqC,YAAW3jC,EAAM,2BAA2BA,YAC3DgQ,EAAE,WAAWoM,UAAYpc,EAgB3B,MAAM4jC,GACJC,YAAYC,GACVxmC,KAAKwmC,UAAYA,EACjBxmC,KAAKymC,MAAQ,GAGfF,UAAUG,GACJ1mC,KAAKymC,MAAMrjC,KAAKsjC,GAAY1mC,KAAKwmC,WACnCxmC,KAAKymC,MAAMxgB,QASfsgB,YAAYI,GACV,IAAIra,EAAOqa,EACPra,EAAOtsB,KAAKwmC,YAAWla,EAAOtsB,KAAKwmC,WACnCla,EAAOtsB,KAAKymC,MAAMllC,SAAQ+qB,EAAOtsB,KAAKymC,MAAMllC,QAChD,IAAI0M,EAAM,EACV,IACE,IAAI3M,EAAItB,KAAKymC,MAAMllC,OAAS,EAC5BD,GAAK,GAAKA,EAAItB,KAAKymC,MAAMllC,OAAS,EAAI+qB,EACtChrB,IAEA2M,GAAOjO,KAAKymC,MAAMnlC,GAEpB,OAAY,IAAR2M,EACK,EAEFA,EAAMqe,GA+BjB,SAASsa,KACP,MAAMC,EAAWh9B,KAAKkE,MAAM+4B,KAAKC,MAAQ,KAEzC,GAAKzT,KAAKiR,EAAIjR,KAAKiL,IAAO,GAAM,EAAG,CACjC,IAAIyI,EAAc1T,KAAK8G,QAAU9H,GAC7BgB,KAAKiF,UAAY,IAAGyO,GAAexW,IACvCsB,GAAyBjoB,KAAK6D,IAAI4lB,KAAK2T,cAAeD,GACtDA,GAAe,IAGf,MAAME,EAAWL,EAAW3Z,GACtBia,EAAct9B,KAAK6D,IAAI,EAAG4lB,KAAK8G,QAAUjN,IAAoB+Z,EAC7DE,EACJv9B,KAAK6D,IAAI,EAAG8iB,GAAsBpD,IAAyB8Z,EACvDG,EACJx9B,KAAK6D,IAAI,EAAGgjB,GAAsB,GAAKrD,IACvC6Z,EACII,EAAgBz9B,KAAK6D,IAAI,EAAGs5B,EAAc5W,IAAmB8W,EAC7DK,GAAiBjU,KAAKkU,aAAela,IAAmB4Z,EAC9D,IAAK,IAAI5lC,EAAI,EAAGA,EAAI4lC,EAAU5lC,IAC5BsrB,GAAY6a,UAAUN,GACtBta,GAAU4a,UAAUL,GACpBta,GAAiB2a,UAAUJ,GAC3Bta,GAAW0a,UAAUH,GACrBta,GAAWya,UAAUF,GAIvBra,GAAoB2Z,EACpB1Z,GAAmBmG,KAAK8G,QACxBhN,GAAwBoD,GACxBnD,GAA+BqD,GAAsB,GACrDN,GAAkB4W,EAClB1Z,GAAkBgG,KAAKkU,aAGvB,MAAME,EAAY3d,EAAY/C,EAAU2gB,YACxCpa,GAAuBX,GAAYgb,YAAYF,GAC/Cla,GAAwBX,GAAU+a,YAAYF,GAC9Cja,GAA+BX,GAAiB8a,YAAYF,GAC5Dha,GAAyBX,GAAW6a,YAAYF,GAChD/Z,GAAkBJ,GACU,IAAxBvG,EAAUqR,YAAiB1K,IAAmBH,IACtB,IAAxBxG,EAAUqR,YACZ1K,IAAmBF,IAErB,MAAMoa,EACJvU,KAAKwU,YAAY,mBAAqBxU,KAAKwR,IAAI,iBAG/C/S,GADE8V,GAAkC,IAAxB7gB,EAAUqR,UAEpB9K,GACAC,IACCqa,EAASna,GAAyB,GACRC,GAE/BmD,GAAqB9D,GAAW4a,YAC9B5d,EAAWhD,EAAU+gB,iBAkB3B,SAASC,GAAWxQ,EAAIxC,GACtB,IAAI9lB,EAAQ,GAmBZ,OAjBsCA,EAAlCsoB,EAAG5kB,IAAM,GAAK4kB,EAAG5kB,KAAO2Y,IAAkBtC,EACrCuO,EAAG5kB,GAAKuf,GAAoBxJ,EAC5B6O,EAAG5kB,KAAOuf,GAAoBvJ,EAC9B4O,EAAG5kB,GAAKwf,GAAa,IAAI,GAAYvJ,EACrC2O,EAAG5kB,GAAKwf,GAAa,IAAI,GAAYtJ,EACrC0O,EAAG5kB,GAAKwf,GAAa,IAAI,GAAYrJ,EACjCC,EAGiC,IAA1C0C,OAAO1E,EAAUihB,sBACfjT,EAAQmD,KAAWzM,OAAO1E,EAAUihB,uBACtC/4B,EAAQyZ,GAGR3B,EAAUkhB,uBACRlT,EAAQ1B,KAAK8G,QAAU,IAAGlrB,EAAQ6Z,GAEjC7Z,EAiBT,SAASi5B,GAAWxhC,EAAQ+uB,GAC1B5wB,OAAO6C,KAAKhB,GAAQ4vB,SAASj1B,IAC3BqF,EAAOrF,GAAG4N,MAAQ84B,GAChBrhC,EAAOrF,GACPgyB,KAAKoB,QAAQpzB,GAAG8mC,YAAY1S,IAG9B,IAAK,IAAIgC,EAAI,EAAGA,EAAI1Q,EAAUqhB,aAAc3Q,IACtC/wB,EAAOrF,GAAGsR,KAAOwf,GAAasF,GAAG,KAAI/wB,EAAOrF,GAAG4N,MAAQ+Z,MAKjE,SAASqf,GAAQ3hC,EAAQ+uB,GACvB5wB,OAAO6C,KAAKhB,GAAQ4vB,SAASj1B,IAC3B,MAAM0zB,EAAQ1B,KAAKoB,QAAQpzB,GAAG8mC,YAAY1S,GACtCpC,KAAKgF,UACP3xB,EAAOrF,GAAGsR,GACR/I,KAAK6D,IAAIsnB,GAAS1B,KAAK8G,QAAU3B,MAAuB,GACtDnF,KAAKgF,UACPtD,EAAQruB,EAAOrF,GAAGk4B,MACf7yB,EAAOrF,GAAGsR,GAAKoiB,EAAQruB,EAAOrF,GAAGk4B,MACxCpH,GAAahvB,KAAK,CAACuD,EAAOrF,GAAGsR,GAAI8iB,OA8ErC,SAAS6S,MAtET,WACEpW,GAAa5G,IACb6G,GAAe,QACuB,IAA3BpL,EAAUqhB,eAA8BrhB,EAAUqhB,aAAe,GAG5EC,GAAQjY,GAAe,GACvBiY,GAAQhY,GAAgB,IACxBgY,GAAQ/X,GAAiB,KAGzB6B,GAAawE,MAAK,CAACzsB,EAAGP,IAAMO,EAAE,GAAKP,EAAE,KACrC,IAAI4+B,EAAa,EACjB,GAAIxhB,EAAUkhB,sBACZ,KAAO9V,GAAaoW,GAAY,GAAKlV,KAAK8G,UACxCoO,GAAc,EACVpW,GAAa7wB,SAAWinC,EAAa,KAK7CrW,GAAaC,GAAapL,EAAUqhB,cAAcG,GAElDL,GAAW9X,GAAe,GAC1B8X,GAAW7X,GAAgB,IAC3B6X,GAAW5X,GAAiB,KA8C5BkY,GAjCA3jC,OAAO6C,KAAKkpB,IAAe0F,SAASj1B,IAC9BgyB,KAAKgF,UACPzH,GAAcvvB,GAAGsR,GACf/I,KAAK6D,IACH4lB,KAAKuJ,SAASv7B,GAAGk+B,YAAclM,KAAK8G,QAAU3B,MAC9C,GAEAnF,KAAKgF,UACPhF,KAAKuJ,SAASv7B,GAAGk+B,WAAa3O,GAAcvvB,GAAGk4B,MAEjD3I,GAAcvvB,GAAGsR,GACf0gB,KAAKuJ,SAASv7B,GAAGk+B,WAAa3O,GAAcvvB,GAAGk4B,MAC/C9N,OAAO9I,MAAMiO,GAAcvvB,GAAGsR,MAAKie,GAAcvvB,GAAGsR,GAAK2Y,KAE7DsF,GAAcvvB,GAAG4N,MAAQ84B,GACvBnX,GAAcvvB,GACdgyB,KAAKuJ,SAASv7B,GAAGk+B,eAiCvB,SAASkJ,GACPnT,EACAC,EACA1kB,EACA2kB,EACAyJ,GAEA,IAAIpJ,EAAiBhlB,EACjBilB,EAAO,EACX,IAAK,IAAIz0B,EAAI,EAAGA,EAAI49B,EAAU59B,GAAK,EAAG,CACpC,IAAI0zB,EACFQ,EAAYlC,KAAK2C,eAAiBpsB,KAAK6D,IAAI,EAAGooB,EAAiBL,GACjET,EAAQ1B,KAAK4C,oBAAoBX,EAAOP,GACxCA,EAAQnrB,KAAKoL,KAAK+f,GAClBe,GAAQf,EACRc,GAAkB,EAEpB,OAAOC,EA0CT,SAAS4S,GAAOjV,GACVN,GAAgBM,IACgB,IAA9BN,GAAgBM,GAAM+J,MACxBrK,GAAgBM,GAAM+J,IAAM,EACS,WAAjCnK,KAAK2H,aAAavH,GAAMS,OAAmBhG,IAAwB,IAuB7E,SAASya,KACP/Z,GAAe,EACf,IAAIuM,EAAO,EAEX,MAAMyN,EAAO,GACb/jC,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjC,GAAIgyB,KAAKoB,QAAQpzB,GAAG8zB,gBAAkB9B,KAAKoB,QAAQpzB,GAAGmzB,SAASoU,KAAM,CACnE,MAAMC,EAASxV,KAAKoB,QAAQpzB,GAAGmzB,SAASoU,KACxC/jC,OAAO6C,KAAKmhC,GAAQvS,SAASwS,IACvBF,EAAKE,GAAKF,EAAKE,IAAOD,EAAOC,GAC5BF,EAAKE,GAAMD,EAAOC,UAI7Bna,GAAUia,EAEiB,IAAvBvV,KAAKY,gBACPkH,GAEE,IADAxsB,WAAWyf,IAEXD,GA9EN,WACE,IAAI4a,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,MACxC1V,KAAKiB,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,IAAvBV,KAAKY,gBAC5BkH,GAAQ,EAAI,IAAO9H,KAAK4V,SAE1BpkC,OAAO6C,KAAK2rB,KAAK6V,gBAAgB5S,SAASj1B,IACxC,MAAMk2B,EAAKlE,KAAK6V,eAAe7nC,GAC3B0yB,GAAOwD,EAAG3xB,QAIY,mBAAb2xB,EAAGsF,MACZ1B,GAAQ,EAAuD,IAAnDjI,GAAYqE,EAAG3xB,MAAMi3B,MAAM3J,GAAYqE,EAAG3xB,OACjDu1B,GAAQ,EAAe,IAAX5D,EAAGsF,UAItB9I,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,IAAOvxB,KAAKw/B,IAAK7V,GAAc,IAAO,MAAiB3pB,KAAKiU,GAAK,GACrD,IAAXuX,EACP+F,GACE,EACA,IAAOvxB,KAAKw/B,IAAK7V,GAAc,IAAO,MAAkB3pB,KAAKiU,GAAK,GAClD,IAAXuX,IACP+F,GACE,EACA,IAAOvxB,KAAKw/B,IAAK7V,GAAc,IAAO,MAAkB3pB,KAAKiU,GAAK,IAEtEuX,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,KAAvB9H,KAAKgW,WAAa,IAE7D,MAAMC,EAAepb,GAAuB,GAC5C,IAAIqb,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,GAEjE1kC,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IAC/B,MAAMk2B,EAAKtE,GAAW5xB,GACtB,IAAIooC,EAAYlS,EAAG0E,IAAI1E,GACI,IAAvBlE,KAAKY,gBACPwV,IAAc,EAAe,IAAXlS,EAAGuF,OAAgBqM,GAEzB,YAAZ5R,EAAG3xB,MACHmuB,GAAO,sDAEP0V,GAAa,EAAI,IAAOH,EAAeC,GACzC3a,IAAgB2I,EAAG9B,OAASgU,KAG1B1V,GAAO,WAAUnF,IAAgB,GAErCuM,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,EAC2D,GAA5D//B,KAAKkE,OAAOslB,GAAiBC,KAAKC,WAAa,IAAO,IACvD,GACA,GACA,GACFqW,EAAM//B,KAAK2D,IAAIo8B,EAAK,KAEpB1Z,GAAe,EAAiC,IAA5B,GAAK,EAAI0Z,EAAM,MAAQ,GAC3CD,GAAWzZ,GAEbkL,GAAQuO,EAEJ3V,GAAO,kBAAiBoH,GAAQ,EAAgC,IAA5BvxB,KAAK2D,IAAI,IAAK8lB,KAAKuW,QAG3DzO,GAAQ,EAAI3H,GAAY,oBAExB,MAAMqW,EAAejb,GAAeuM,EACpCt2B,OAAO6C,KAAK2rB,KAAKyW,iBAAiBxT,SAASj1B,IACrCwoC,GAAgBxW,KAAKyW,gBAAgBzoC,GAAG0oC,WAC1CrB,GAAOrV,KAAKyW,gBAAgBzoC,GAAGuE,SAGnCipB,GAAkBgb,EAElB,MAAMvlC,EAAEA,GAAM+uB,KAAKqR,aAAaC,OAC1BqF,EAAWxW,GAAY,oBAC7B,IAAK,IAAInyB,EAAI,EAAGA,EAAIiD,EAAGjD,IACrB85B,GAAQ,EAAe,KAAX6O,EAGd,MAAMpkC,EAAOytB,KAAK4W,WAAWtoC,cAM7B,GALa,WAATiE,EAAmBu1B,GAAQ,IACb,WAATv1B,IAAmBu1B,GAAQ,KAEhCpH,GAAO,oBAAmBoH,GAAQ,KAElCpH,GAAO,uBAAwB,CACjC,IAAImW,EAAmB,IACvB,GAAInW,GAAO,iBAAkB,CAC3B,MAAMoW,EAAW9W,KAAK+W,qBACtBvlC,OAAO6C,KAAKyiC,GAAU7T,SAASj1B,IACzB0yB,GAAOoW,EAAS9oC,MAAK6oC,GAAoB,OAGjD/O,GAAQ+O,EAEV,GAAInW,GAAO,yBAA0B,CACnC,IAAIsW,EAAW,GACXtW,GAAO,yBAAwBsW,GAAY,IAC/ClP,GAAQ,EAAIkP,EAGVtW,GAAO,uBAAsBoH,GAAQ,KACrCpH,GAAO,wBAAuBoH,GAAQ,GAE1CvM,GAAeyE,KAAKiX,kBAAkB,MAAO1b,IAE7CuM,GAAQoD,KAER3P,IAAgBuM,EASlB,MAAMoP,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,GAAanX,GACpB,OAAON,GAAgBM,GAAQN,GAAgBM,GAAM+J,IAAM,EAe7D,SAASqN,KACP,IAAIC,EAAW,EACfjmC,OAAO6C,KAAK2rB,KAAK+I,kBAAkB9F,SAASj1B,IACtC0yB,GAAOV,KAAK+I,iBAAiB/6B,MAAKypC,GAAY,OAE/CF,GAAa,UAAYE,GAAY,GAAGpC,GAAO,UAC/CkC,GAAa,YAAcE,GAAY,IAAIpC,GAAO,WAEvD,IAAIqC,EAAiB,EACjBC,EAAgB,EAChBC,EAAS,EACTC,EAAY,IAChBrmC,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IAC/B0pC,GAAkB9X,GAAW5xB,GAAGo0B,OAChCyV,EAAYthC,KAAK2D,IAAI0lB,GAAW5xB,GAAGo0B,OAAQyV,GACtCN,GAAa,kBAEd3X,GAAW5xB,GAAGo0B,OACd7rB,KAAK2D,IAAI,IAAK,IAAM8lB,KAAK8X,YAAY7pC,OAAS+xB,KAAKoB,QAAQpzB,GAAGuzB,GAAK,MAEnEoW,EAAgB,GAEfJ,GAAa,YAEd3X,GAAW5xB,GAAGo0B,OACmC,IAAhDpC,KAAK8X,YAAY7pC,OAAS+xB,KAAKoB,QAAQpzB,GAAGuzB,MAE3CqW,EAAS,MAGXC,GAAa,GAAGxC,GAAO,uBACL,IAAlBsC,GAAqBtC,GAAO,iBACjB,IAAXuC,GAAcvC,GAAO,WACrBwC,GAAa,KAAKxC,GAAO,cACzBwC,GAAa,KAAKxC,GAAO,yBACzBwC,GAAa,KAAKxC,GAAO,gBACzBwC,GAAa,KAAKxC,GAAO,2BACzBwC,GAAa,KAAKxC,GAAO,iBACzBwC,GAAa,KAAKxC,GAAO,4BACzBwC,GAAa,KAAKxC,GAAO,oBACzBwC,GAAa,KAAKxC,GAAO,+BACzBwC,GAAa,KAAKxC,GAAO,kBACzBwC,GAAa,KAAKxC,GAAO,6BACzBwC,GAAa,KAAKxC,GAAO,iBAEzBqC,GAAkB,KAAKrC,GAAO,WAC9BqC,GAAkB,KAAKrC,GAAO,aAC9BqC,GAAkB,KAAMrC,GAAO,YAC/BqC,GAAkB,KAAMrC,GAAO,sBAC/BqC,GAAkB,KAAMrC,GAAO,gBAC/BqC,GAAkB,KAAMrC,GAAO,gBAE/B1a,IAAoB,IAAI0a,GAAO,YAC/B1a,IAAoB,IAAI0a,GAAO,aAC/B1a,IAAoB,KAAK0a,GAAO,YAChC1a,IAAoB,KAAK0a,GAAO,oBAChC1a,IAAoB,KAAK0a,GAAO,oBAChC1a,IAAoB,KAAK0a,GAAO,oCAEhCqC,GAAkB,KAAQ/c,IAAoB,KAAK0a,GAAO,YAC1DqC,GAAkB,KAAQ/c,IAAoB,KAChD0a,GAAO,qBAELzV,GAAWmY,OAAO3V,OAASxC,GAAW2I,QAAQnG,QAAU,KAC1DiT,GAAO,qBAET,IAAI2C,GAAkB,EACtBxmC,OAAO6C,KAAK8iC,IAAclU,SAASj1B,IAC5B0yB,GAAOyW,GAAanpC,MAAKgqC,GAAkB,MAE9CA,GAAiB3C,GAAO,kBAE5B,IAAI4C,GAAmB,EAMvB,GALAzmC,OAAO6C,KAAK+iC,IAAenU,SAASj1B,IAC7B0yB,GAAO0W,GAAcppC,MAAKiqC,GAAmB,MAEhDA,GAAkB5C,GAAO,eAEzB3U,GAAO,mBAAoB,CAC7B,MAAMwX,EAAOlY,KAAKgI,MAAMnG,QAAQiV,SAChC,IAAIqB,EAAW,EACf3mC,OAAO6C,KAAK6jC,GAAMjV,SAASj1B,IACrB0yB,GAAOwX,EAAKlqC,GAAGuE,QAAO4lC,GAAY,MAEpCA,GAAYD,EAAKjqC,QAAQonC,GAAO,cA6OxC,SAAS+C,GAAoBhW,EAAQ/uB,GACnC,MAAMglC,EAAS,GAQf,OAPA7mC,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjCqqC,EAAOrqC,GAAK,GACZqqC,EAAOrqC,GAAGk4B,MA/Nd,SAAiCzE,EAAUW,GACzCuH,KACA/J,GAAW6B,GAAUW,QAAUA,EAC/B,MAAM8B,EAAKtE,GAAW6B,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,yBAE7B7jC,OAAO6C,KAAK2rB,KAAKoB,QAAQ8C,EAAG3xB,MAAM+lC,eAAerV,SAASmB,IAEtDF,EAAG9B,QACHpC,KAAKgI,MAAMhI,KAAKoB,QAAQ8C,EAAG3xB,MAAM+lC,cAAclU,GAAGtD,MAAMyX,cAExDlD,GAAOrV,KAAKoB,QAAQ8C,EAAG3xB,MAAM+lC,cAAclU,GAAG7xB,SAKpD,MAAMimC,EAAwB3d,GAU9B,OARAya,KAEAkC,KAEIgB,IAA0B3d,IAC5Bya,KAGK/Z,GAAeyE,KAAKgF,UAyLPyT,CAAwBzqC,EAAGo0B,GAC9B,IAAXA,IACF5H,GAA2B,MAGxB6d,EA6BT,SAASK,KACPlnC,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjC+uB,GAAc/uB,GAAG0zB,MAAQ0T,GACvBpV,KAAKoB,QAAQpzB,GACbgyB,KAAKoB,QAAQpzB,GAAGk0B,UAChBlC,KAAKoB,QAAQpzB,GAAGo0B,OAChBpC,KAAKoB,QAAQpzB,GAAGm0B,KAChB,GAEFnF,GAAehvB,GAAG0zB,MAAQ0T,GACxBpV,KAAKoB,QAAQpzB,GACbgyB,KAAKoB,QAAQpzB,GAAGk0B,UAChBlC,KAAKoB,QAAQpzB,GAAGo0B,OAChBpC,KAAKoB,QAAQpzB,GAAGm0B,KAChB,IAEFlF,GAAgBjvB,GAAG0zB,MAAQ0T,GACzBpV,KAAKoB,QAAQpzB,GACbgyB,KAAKoB,QAAQpzB,GAAGk0B,UAChBlC,KAAKoB,QAAQpzB,GAAGo0B,OAChBpC,KAAKoB,QAAQpzB,GAAGm0B,KAChB,QASN,SAASwW,KAEP5b,GAAgBqb,GAAoB,GACpCpb,GAAiBob,GAAoB,IACrCnb,GAAkBmb,GAAoB,KAvDtC7a,GAAgB,GAChB/rB,OAAO6C,KAAK2rB,KAAKuJ,UAAUtG,SAASj1B,IAClC,MAAM4qC,EAtFV,SAAgClU,GAC9B,GACkC,WAAhC1E,KAAKuJ,SAAS7E,GAAS7D,MACY,IAAlCb,KAAKuJ,SAAS7E,GAAS3D,QACtBf,KAAKuJ,SAAS7E,GAASmU,UACS,aAAhC7Y,KAAKuJ,SAAS7E,GAAS7D,KACzB,CACA8I,KACkC,yBAA9B9J,GAAY6E,GAASnyB,KACvBstB,GAAY,yBAAyBkB,OAAS,EACP,uBAA9BlB,GAAY6E,GAASnyB,KAC9BstB,GAAY,uBAAuBkB,OAAS,EAE5ClB,GAAY6E,GAAS3D,QAAUlB,GAAY6E,GAAS3D,OAAS,GAAK,EAEzDlB,GAAY6E,GACnB1E,KAAK8Y,qBAAqB9Y,KAAKuJ,SAAS7E,GAAS7D,QACnDlG,IAAoB,GAEN,iBAAZ+J,GACF9J,IAAc,EACVA,GAAa,GAAGya,GAAO,aACvBza,IAAc,GAAGya,GAAO,kBACP,mBAAZ3Q,EACT2Q,GAAO,cACc,yBAAZ3Q,EACT2Q,GAAO,kBACc,iBAAZ3Q,GACT2Q,GAAO,aAGT,MAAMmD,EAAwB3d,GAE9Bya,KAEAkC,KAEIgB,IAA0B3d,IAC5Bya,KAGF,MAAMyD,EAvIV,WACE,IAAI5jC,EAAM,EACNurB,GAAO,sBAAqBvrB,GAAO,IACnCurB,GAAO,qBAAoBvrB,GAAO,GAClCurB,GAAO,qBAAoBvrB,GAAO,IAClCurB,GAAO,sBAAqBvrB,GAAO,IACnCurB,GAAO,yBAAwBvrB,GAAO,IACtCurB,GAAO,yBAAwBvrB,GAAO,IACtCurB,GAAO,wBAAuBvrB,GAAO,IACrCurB,GAAO,wBAAuBvrB,GAAO,IACrCurB,GAAO,uBAAsBvrB,GAAO,IACpCurB,GAAO,uBAAsBvrB,GAAO,IACxC,IAAIyiB,EAAM,EACVpmB,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IAC/B4pB,GAAOgI,GAAW5xB,GAAGo0B,UAEvBxK,GAAOgI,GAAWmY,OAAO3V,OACzBjtB,GAAOyiB,EAGH8I,GAAO,mBAAkBvrB,GAAsB,IAAfomB,IAChCmF,GAAO,gBAAevrB,GAAsB,IAAfomB,IAC7BmF,GAAO,oBAAmBvrB,GAAsB,IAAfomB,IACjCmF,GAAO,sBAAqBvrB,GAAsB,IAAfomB,IACnCmF,GAAO,uBAAsBvrB,GAAsB,IAAfomB,IACpCmF,GAAO,mBAAkBvrB,GAAsB,IAAfomB,IAChCmF,GAAO,qBAAoBvrB,GAAsB,IAAfomB,IAClCmF,GAAO,sBAAqBvrB,GAAsB,IAAfomB,IACnCmF,GAAO,sBAAqBvrB,GAAsB,IAAfomB,IACnCmF,GAAO,qBAAoBvrB,GAAsB,IAAfomB,IAClCmF,GAAO,yBAAwBvrB,GAAsB,IAAfomB,IACtCmF,GAAO,sBAAqBvrB,GAAsB,IAAfomB,IACnCmF,GAAO,sBAAqBvrB,GAAsB,IAAfomB,IAEnCmF,GAAO,kBAAiBvrB,GAAsB,IAAfomB,IAEnC,IAAIuM,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,IACEvxB,KAAK2D,IACH8lB,KAAKoB,QAAQ2W,OAAOtO,MACpB/I,GAAO,mBAAqB,GAAK,KAIzCoH,GAAQtH,GAAO,SACXZ,GAAWsB,OAAOY,gBAChBd,GAAW,CACb,MAAMe,EAASf,GAAU,SACV,IAAXe,EAAc+F,GAAQ,KACN,IAAX/F,EAAc+F,GAAQ,IACX,IAAX/F,IAAc+F,GAAQ,MAInCt2B,OAAO6C,KAAK2rB,KAAKmL,OAAOlI,SAASj1B,SACQ,IAA5BgyB,KAAKmL,MAAMn9B,GAAGgrC,YACvBlR,GAAQ9H,KAAKmL,MAAMn9B,GAAGgrC,cAI1BlR,GAAQ,EAAmC,IAA/B3H,GAAY,iBAGxB,IAAI8Y,EACFnR,EACA9H,KAAK8I,WACH,EACApI,GAAO,2BACLA,GAAO,kCACPA,GAAO,gBACTvrB,GAOJ,OAJA8jC,EAAMjZ,KAAKiX,kBAAkB,kBAAmBgC,GAE5CjZ,KAAK4B,QAAQ,mBAAkBqX,EAAMjZ,KAAKmL,MAAM,iBAAiB3B,OAE9DyP,EAkDgBC,GAAalZ,KAAKmZ,iBACvC,OAAIJ,EACK,CAACxd,GAAeyE,KAAKgF,UAAW+T,GAElC,CAACxd,GAAeyE,KAAKgF,WAE9B,MAAO,GAuCeoU,CAAuBprC,GACjC,iBAANA,GACFuvB,GAAcvvB,GAAK,CAAEk4B,MAAOlG,KAAKgF,UAAY/K,IACjB,IAAxBvG,EAAUqR,UACZxH,GAAcvvB,GAAGk4B,OAAShM,GACK,IAAxBxG,EAAUqR,YACjBxH,GAAcvvB,GAAGk4B,OAAS/L,IACvB/B,OAAOC,SAASkF,GAAcvvB,GAAGk4B,SAAQ3I,GAAcvvB,GAAGk4B,MAAQ,KAEvE3I,GAAcvvB,GAAK,GACf4qC,EAAY,KAAIrb,GAAcvvB,GAAGk4B,MAAQ0S,EAAY,IACrDA,EAAY,KAAIrb,GAAcvvB,GAAGm+B,WAAayM,EAAY,QA6DpE,SAASS,GAAqBC,EAAOC,EAAWzR,GAC9C,IAAI0R,EAAiB,EACjB/W,EAAO,EACPgX,EAAW,EACXC,EAAe,EACfC,EACF,EAAIpjC,KAAK6D,IAAI,EAAG7D,KAAKoL,KAAKpL,KAAKuiB,IAAIkH,KAAK8G,SAAWvwB,KAAKqjC,MAAQ,IAClE,KAAOH,EAAWF,GAChB9W,EAAOlsB,KAAK6D,IACVk/B,EACA/iC,KAAK2D,IACH3D,KAAKkE,MAAO,EAAI,EAAK,IAAMk/B,EAAQL,EAAQxR,GAC3CyR,EAAYzR,IAGhB2R,EAAWljC,KAAK6D,IACdk/B,EACA/iC,KAAK2D,IACH3D,KAAKkE,MAAO,EAAI,EAAK,KAAOk/B,EAAQ,GAAKL,EAAQxR,GACjDyR,EAAYzR,IAGhB4R,EAAenjC,KAAKkE,MAAO,EAAI,EAAK,KAAOk/B,EAAQ,GAAKL,EAAQxR,GAChE0R,GAAkB/W,EAClBkX,GAAS,EAEX,MAAO,CAACH,EAAgB/W,EAAMiX,GAmBhC,SAASG,KACP,IAAIN,EAEF,GADAhd,GAEA,GACA,EACAC,GAEF,MAAMsd,EAAc5O,KAChB4O,EAAc,EAAGP,GAAaO,EAC7BP,EAAY,EAEjBzb,GAAsBub,GACpB,EACAE,EACA9c,IAEFmB,GAA+C,EAAzBE,GAAoB,GAAUrB,GACpDoB,GACEC,GAAoB,GAAK,GAAK,GAAK,EAAItB,GAEzCyB,GAA2Bob,GACzB,EACAE,EACA7c,IAEFqB,GACiC,EAA9BE,GAAyB,GAAUvB,GACtCsB,GACEC,GAAyB,GACzB,GACA,GACA,EACAzB,GAEF4B,GAA4Bib,GAC1B,EACY,EAAZE,EACA9c,IAEFyB,GACkC,EAA/BE,GAA0B,GAAU3B,GACvC0B,GACEC,GAA0B,GAC1B,GACA,GACA,EACA5B,GAEF+B,GAAiC8a,GAC/B,EACY,EAAZE,EACA7c,IAEF2B,GACuC,EAApCE,GAA+B,GAAU7B,GAC5C4B,GACEC,GAA+B,GAC/B,GACA,GACA,EACA/B,GAYJ,SAASud,KACP,MAAMxG,EAAWh9B,KAAKkE,MAAM+4B,KAAKC,MAAQ,KAEzC,GAAKzT,KAAKiR,EAAIjR,KAAKiL,IAAO,GAAM,EAAG,CACjC,MAAM+O,EAAaha,KAAKia,gBAAgBja,KAAKka,cAIvCC,EAHiB5jC,KAAKkE,MAC1BulB,KAAKia,gBAAgBja,KAAKka,aAAela,KAAK2T,gBAERp9B,KAAKkE,MAAMu/B,GAG7CpG,EAAWL,EAAWjZ,GACtB8f,EACJ7jC,KAAK6D,IAAI,EAAG+/B,EAAiB5f,IAA0BqZ,EACzD,IAAK,IAAI5lC,EAAI,EAAGA,EAAI4lC,EAAU5lC,IAC5B2rB,GAAkBwa,UAAUiG,GAI9B9f,GAAyBiZ,EACzBhZ,GAAyB4f,EAGzBxd,GAAmBhD,GAAkB2a,YAAY,IA6HrD,SAAS+F,KACP5c,GAAuB,GACvBE,GAA8B,GAC9BD,GAA+B,GAC/B,MAAMwa,EAAO,GAEb1mC,OAAO6C,KAAK2rB,KAAKuJ,UAAUtG,SAASj1B,IAClCkqC,EAAKpoC,KAAKkwB,KAAKuJ,SAASv7B,OAO1BkqC,EAAK5U,MALW,SAAUzsB,EAAGP,GAC3B,OAAIO,EAAE+tB,MAAQtuB,EAAEsuB,MAAc,EAC1B/tB,EAAE+tB,MAAQtuB,EAAEsuB,OAAe,EACxB,KAITpzB,OAAO6C,KAAK6jC,GAAMjV,SAASj1B,IACzB,MAAMk2B,EAAKgU,EAAKlqC,GAEhB,GAAkB,IAAdk2B,EAAGnD,OAAc,CACnB,IAAI3xB,EAAM,GAEVA,GArDN,SAAsB80B,GACpB,IAAIoW,EAAU,wBACE,aAAZpW,EAAGrD,OAAqByZ,GAAW,aAEvC,IAAIC,EAAU,EACTva,KAAK0Q,MAAM8J,SAAQD,EAAU,GAC9BA,IAASD,GAAW,YAExB,IAAIG,KAAEA,GAASvW,EACXA,EAAGwW,eAAcD,EAAOvW,EAAGwW,gBAC/B,MAAMnQ,EAAU,0DAA0DrG,EAAG3C,kBAC7E,MAAO,eAAe+Y,SACrBta,KAAK2a,kBAAkBpQ,EAAS,OAAO,kBAEtCkQ,EAAK,GAAK,yBAAyBA,EAAK,OAAS,yBACjB,IAAVA,EAAK,QAAwB,IAAVA,EAAK,oBAsCrCG,CAAa1W,GACJ,aAAZA,EAAGrD,KAAqBnD,IAAgCtuB,EACvC,WAAZ80B,EAAGrD,KAAmBlD,IAA+BvuB,EAEhD,WAAZ80B,EAAGrD,MACS,WAAZqD,EAAGrD,MACS,UAAZqD,EAAGrD,OAEHpD,IAAwBruB,OAchC,SAASyrC,KACP,GAAoB,cAAhB7a,KAAK4R,OAAwB,CAC/B,IAAIphC,EAAuB,GAAjBwvB,KAAKgF,UACXhF,KAAK4B,QAAQ,kBAAiBpxB,GAAO,IACrCwvB,KAAK4B,QAAQ,YAAWpxB,GAAO,KACnCqsB,GAAetmB,KAAK6D,IAAI,GAAI5J,GACxBwvB,KAAKwR,IAAI,gCAA+B3U,IAAgB,IAehE,SAASie,KACPjf,GAA2C,IAA7BU,GAAoC,IAClDV,IAAcW,GACd,MAAMsd,EAAc5O,KAChB4O,EAAc,EAAGje,IAAcie,EAC9Bje,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,IAAIjiB,EAAM,EACNnJ,EAAI,EACRO,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IAC7BgyB,KAAKoB,QAAQpzB,GAAGo0B,OAAShoB,IAAKA,EAAM4lB,KAAKoB,QAAQpzB,GAAGo0B,QACpDpC,KAAKoB,QAAQpzB,GAAGo0B,OAAS,IAAGnxB,GAAK,MAEvCO,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,KAE9BgyB,KAAKoB,QAAQpzB,GAAGo0B,OAAShoB,GAAa,IAANnJ,IACjC+uB,KAAKoB,QAAQpzB,GAAGo0B,OAAS,KACD,EAAxBpC,KAAKoB,QAAQpzB,GAAG0zB,MAAYrF,KAE5BA,GAAuC,EAAxB2D,KAAKoB,QAAQpzB,GAAG0zB,MAC/BpF,GAAuBtuB,MAQ7B,SAAS+sC,KACP,IAAIC,EAAa,EACbC,EAAY,EACZnT,EAAO,EAGPpH,GAAO,4BAA2BoH,GAAQ,MAC1CpH,GAAO,iBAAgBoH,GAAQ,MAEnCkT,GAAc,EAA+C,GAA3Chb,KAAK2W,SAAS,2BAChCqE,GAAchb,KAAKkb,IAAI,oBACvBD,GAAa,EAAuC,GAAnCjb,KAAK2W,SAAS,mBAC/BsE,GAAajb,KAAKkb,IAAI,mBAGtBze,GAAyBqL,EAAOkT,EAChCte,GAAwBoL,EAAOmT,EAM/Bze,GAAoC,EACD,IAA/BwD,KAAKqR,aAAaC,OAAOrgC,IAC3BurB,IACE,EAAwC,KAApCwD,KAAK2W,SAAS,qBAkBxB,SAASwE,KACPje,GAAsB,EACtBC,GAAuB,EACvBC,GAAwB,CAAC,EAAG,MAC5B,IAAK,IAAIpvB,EAAI,EAAGA,EAAIgyB,KAAKkF,UAAUj3B,OAAQD,IAAK,CAC9C,IAAI0kC,OAAEA,GAAW1S,KAAKkF,UAAUl3B,GAC5B2kC,EAAS,IAKb,GAJI3S,KAAKwR,IAAI,6BAA4BmB,GAAU,MACpB,IAA3B3S,KAAKkF,UAAUl3B,GAAGK,OAAYskC,GAAU,GAC5CD,GAAUC,EACN3S,KAAKwR,IAAI,mBAAkBkB,GAAU,MACrC9S,GAAWsB,OAAOY,eAAgB,CACpC,MAAMC,EAAS/B,KAAKiB,OAAO,SACZ,IAAXc,EAAc2Q,GAAU,KACR,IAAX3Q,EAAc2Q,GAAU,IACb,IAAX3Q,IAAc2Q,GAAU,MAEnCxV,IAAuBwV,EACQ,IAA3B1S,KAAKkF,UAAUl3B,GAAGK,OACpB8uB,IAAwBuV,EACpBA,EAAStV,GAAsB,KACjCA,GAAwB,CAACsV,EAAQ1kC,MAuBzC,SAASotC,KACP9T,KACA6T,KACAL,KACAC,KACAlB,KACAQ,KACAQ,KA5hDAvhB,GAAc,IAAI0Z,GAAWvc,EAAYA,EAAYxoB,OAAS,IAC9DsrB,GAAY,IAAIyZ,GAAWvc,EAAYA,EAAYxoB,OAAS,IAC5DurB,GAAmB,IAAIwZ,GAAWvc,EAAYA,EAAYxoB,OAAS,IACnEwrB,GAAa,IAAIuZ,GAAWvc,EAAYA,EAAYxoB,OAAS,IAC7DyrB,GAAa,IAAIsZ,GAAWtc,EAAWA,EAAWzoB,OAAS,IA0hD3D0rB,GAAoB,IAAIqZ,GAAW,GACnC+G,KACAzG,KACAqF,KACAD,KACAzD,KAKF,MAoImCoG,GApIb,CACpB7U,OAAQ,EACRW,SAAU,EACVC,YAAa,EACbuK,gBAAiB,EACjB3O,WAAY,EACZ2D,cAAe,EACflD,WAAY,EACZ6X,mBAAoB,EACpBvW,UAAW,EACXD,QAAS,EACTuP,WAAY,EACZI,cAAe,EACfM,aAAc,EACdJ,oBAAqB,EACrBC,sBAAuB,EACvBhF,YAAa,EACblY,MAAO,EACP6jB,aAAc,EACdC,eAAgB,EAChBC,QAAS,EACTC,QAAS,EACTC,SAAU,IACVC,WAAY,6DACZC,oBAAqB,EACrBC,aAAc,EACdC,aAAc,EACdC,cAAe,IACfC,gBACE,gEACFC,gBAAiB,EACjBC,SAAU,EACVC,SAAU,EACVC,UAAW,IACXC,YACE,oEACFC,UAAW,EACXC,UAAW,EACXC,WAAY,IACZC,aAAc,+DACdC,kBAAmB,EACnBC,WAAY,EACZC,WAAY,EACZC,YAAa,IACbC,cACE,gEACFC,qBAAsB,EACtBC,cAAe,EACfC,cAAe,EACfC,eAAgB,IAChBC,iBACE,6DACFC,wBAAyB,EACzBC,iBAAkB,EAClBC,iBAAkB,EAClBC,kBAAmB,IACnBC,oBACE,8DACF9R,oBAAqB,EACrB+R,YAAa,EACb3N,cAAe,EACfC,oBAAqB,EACrBE,gBAAiB,EACjBE,sBAAuB,EACvBE,gBAAiB,EACjBb,aAAc,EACdnE,YAAa,EACbyB,YAAa,EACbkF,aAAc,EACd1F,YAAa,EACbkB,aAAc,EACdc,gBAAiB,EACjBoP,eAAgB,EAChBC,oBAAqB,EACrB9M,MAAO,EACP+M,gBAAiB,EACjBhL,QAAS,EACT1Z,WAAY,EACZ2kB,aAAc,EACdC,YAAa,EACbC,oBAAqB,EACrBC,aAAc,EACd/lB,MAAO,EACPF,cAAe,EACfQ,eAAgB,EAChBD,YAAa,OACbzC,OAAQ,CACNooB,KAAM,UACNC,MAAO,UACPC,OAAQ,UACRC,OAAQ,UACRC,IAAK,UACLC,OAAQ,UACRC,KAAM,UACNC,KAAM,UACNC,MAAO,WAETvb,cAAe,EACfoB,aAAc,EACdoa,QAAS,EACTC,QAAS,EACTC,gBAAiB,EACjBC,oBAAqB,EACrBC,aAAc,EACdC,OAAQ,CACNC,WAAY,EACZC,YAAa,EACbC,aAAc,EACdC,oBAAqB,EACrBC,eAAgB,EAChBC,eAAgB,EAChBC,gBAAiB,EACjBC,iBAAkB,EAClBC,iBAAkB,EAClBC,kBAAmB,EACnBC,qBAAsB,EACtBC,QAAS,EACTC,WAAY,EACZC,SAAU,EACVC,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,IACExB,aAAayB,oBAAoBC,OACjC,MAAO1xC,GACP,OAAO,EAET,OAAO,GAIH,iBAAkB1C,OAEbk0C,IACTxB,aAAayB,oBAAoBC,OAEjC1B,aAAayB,oBAJb/xC,QAAQiqB,IAAI,kDAoBlB,SAASgoB,KACkB,IAArBptB,EAAU8S,QACZpnB,EAAE,YAAYnJ,MAAMqV,QAAU,GAC9Bib,MAEAnnB,EAAE,YAAYnJ,MAAMqV,QAAU,OAEhC4b,KA4HF,SAAS6Z,KACPC,cACAhhB,KAAKihB,eACLjhB,KAAKkhB,kBAEL3a,KACAzD,KACAU,KAYF,SAAS2d,KACP,IAAI/xC,EAAM,GACV,IAAK,IAAIpB,EAAI,EAAGA,EAAI8nB,EAAO7nB,OAAQD,IACjCoB,GAAO,UAAmB0mB,EAAO9nB,eAC/B0lB,EAAUoC,OAAOA,EAAO9nB,WAG5B,IAAK,IAAIA,EAAI,EAAGA,EAAI8nB,EAAO7nB,OAAQD,IACjCoB,GAAO,UAAmB0mB,EAAO9nB,0BAC/B0lB,EAAUoC,OAAOA,EAAO9nB,WAG5B,IAAK,IAAIA,EAAI,EAAGA,EAAI8nB,EAAO7nB,OAAQD,IACjCoB,GAAO,YAAqB0mB,EAAO9nB,0BACjC0lB,EAAUoC,OAAOA,EAAO9nB,WAG5BoR,EAAE,SAAS/N,YAAcjC,EACzB0zB,KAuBF,SAASse,KACmB,IAAtB1tB,EAAUkrB,SAAiBnqB,EAAwB,EACjDiK,GAA0B2iB,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,IAclB,MAAM+uC,WAAsBP,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,MAAM+zC,WAA2BR,GAC/BtO,YAAY5kC,EAAMmzC,EAAOE,EAAOC,EAAMznC,EAAKE,GACzCynC,MAAMxzC,EAAMmzC,GACZ90C,KAAKg1C,MAAQA,EACbh1C,KAAKi1C,KAAOA,EACZj1C,KAAKwN,IAAMA,EACXxN,KAAK0N,IAAMA,GA0Bf,MAkuBmC4nC,GAluBpB,CAEbxb,OAAQ,IAAIib,GACV,OACA,aACA,CAAC,iBAAkB,iBACnB,wBACA,GACA,WACEX,QAGJ3Z,SAAU,IAAIsa,GACZ,OACA,aACA,CAAC,gBAAiB,gBAClB,qFACA,GACA,WACEpa,QAGJD,YAAa,IAAIqa,GACf,OACA,aACA,CAAC,gCAAiC,+BAClC,8BACA,GACA,WA5qH4B,IAA1B/tB,EAAU0T,aACZhoB,EAAE,cAAcnJ,MAAMkG,MAAQ,MAC9BiD,EAAE,cAAcnJ,MAAMkW,OAAS,GAC/B/M,EAAE,QAAQ6iC,aAAa7iC,EAAE,cAAeA,EAAE,kBAE1CA,EAAE,cAAcnJ,MAAMkG,MAAQ,OAC9BiD,EAAE,cAAcnJ,MAAMkW,OAAS,MAC/B/M,EAAE,WAAWwK,YAAYxK,EAAE,gBAE7B8nB,QAuqHAyK,gBAAiB,IAAI8P,GACnB,OACA,aACA,CACE,wBACA,iCACA,0BAEF,+DACA,GAEFte,cAAe,IAAIse,GACjB,OACA,aACA,CACE,0BACA,oCACA,4CAEF,kEACA,GACA,WACE3e,QAGJyB,aAAc,IAAIkd,GAChB,OACA,aACA,CAAC,yBAA0B,qBAC3B,iEACA,GACA,WACEje,QAGJR,WAAY,IAAIye,GACd,OACA,aACA,CAAC,sBAAuB,sBACxB,wBACA,GACA,WACE3e,QAGJ6D,cAAe,IAAI8a,GACjB,OACA,aACA,CAAC,yBAA0B,mBAC3B,sKACA,GAEFhe,WAAY,IAAIge,GACd,OACA,aACA,CACE,yBACA,6BACA,iCAEF,wDACA,GACA,WA/S2B,IAAzB/tB,EAAU+P,YAEZrkB,EAAE,gBAAgBnJ,MAAMqV,QAAU,GAClCkY,MACkC,IAAzB9P,EAAU+P,YAEnBrkB,EAAE,gBAAgBnJ,MAAMqV,QAAU,OAClCkY,OAGApkB,EAAE,gBAAgBnJ,MAAMqV,QAAU,OAClC0U,KAAKkhB,sBAwSPprB,OAAQ,IAvJV,cAA6ByrB,GAC3BtO,YAAY5kC,EAAMmzC,EAAOG,EAAM5uC,GAC7B8uC,MAAMxzC,EAAMmzC,GACZ90C,KAAKi1C,KAAOA,EACZj1C,KAAKqG,KAAOA,IAoJZ,QACA,aACA,CACEmrC,KACE,gHACFC,MACE,4FACFC,OACE,wGACFC,OACE,+GACFC,IACE,mGACFC,OACE,iHACFC,KACE,2FACFC,KAAM,yCACNC,MAAO,8CAET,WACEyC,QAGJ7F,mBAAoB,IAAImG,GACtB,OACA,aACA,CAAC,iCAAkC,iCACnC,+FACA,GACA,WA3TmC,IAAjC/tB,EAAU4nB,oBAEZl8B,EAAE,gBAAgBnJ,MAAMgI,SAAW,SACnCmB,EAAE,gBAAgBnJ,MAAMsC,IAAM,OAE9B6G,EAAE,gBAAgBnJ,MAAMgI,SAAW,MA4TrC8mB,UAAW,IAAI0c,GACb,OACA,cACA,CACE,+BACA,8BACA,6CAEF,qGACA,GACA,WACEpmB,IAAY,KAGhByJ,QAAS,IAAI2c,GACX,OACA,cACA,CAAC,6BAA8B,8BAC/B,kFACA,GAEFpN,WAAY,IAAIoN,GACd,OACA,cACA,CACE,2BACA,2BACA,2BACA,0BACA,0BACA,2BACA,2BACA,4BAEF,4DACA,GAEFhN,cAAe,IAAIgN,GACjB,OACA,cACA,CACE,oCACA,oCACA,qCACA,qCACA,sCAEF,uDACA,GAEF1M,aAAc,IAAI0M,GAChB,OACA,cACA,CACE,mBACA,kBACA,0BACA,gCAEF,qGACA,GAEF9M,oBAAqB,IAAIoN,GACvB,WACA,cACA,oCACA,wMACA,EACA9pB,KAEF2c,sBAAuB,IAAI6M,GACzB,OACA,cACA,CAAC,2BAA4B,sBAC7B,yKACA,GAEF7R,YAAa,IAAI6R,GACf,OACA,cACA,CACE,+CACA,+CAEF,2EACA,GAIF/pB,MAAO,IAAI+pB,GACT,OACA,sBACA,CAAC,YAAa,WAAY,8BAC1B,8LACA,GAEFlG,aAAc,IAAIkG,GAChB,OACA,sBACA,CAAC,mCAAoC,mCACrC,kLACA,GAEFjG,eAAgB,IAAIiG,GAClB,OACA,iBACA,CAAC,mBAAoB,mBACrB,mDACA,GACA,WACEhB,GAAoC/sB,EAAU8nB,mBAGlDC,QAAS,IAAIgG,GACX,OACA,iBACA,CAAC,YAAa,YACd,iCACA,GAEF/F,QAAS,IAAI+F,GACX,OACA,iBACA,CAAC,YAAa,YACd,iCACA,GAEF9F,SAAU,IAAImG,GAAc,MAAO,iBAAkB,GAAI,UACzDlG,WAAY,IAAI6F,GACd,MACA,iBACA,aACA,6DAEF5F,oBAAqB,IAAI4F,GACvB,OACA,iBACA,CAAC,mBAAoB,mBACrB,8DACA,GACA,WACEhB,GAAoC/sB,EAAUmoB,wBAGlDC,aAAc,IAAI2F,GAChB,OACA,iBACA,CAAC,YAAa,YACd,kCACA,GAEF1F,aAAc,IAAI0F,GAChB,OACA,iBACA,CAAC,YAAa,YACd,kCACA,GAEFzF,cAAe,IAAI8F,GAAc,MAAO,iBAAkB,GAAI,UAE9D7F,gBAAiB,IAAIwF,GACnB,MACA,iBACA,aACA,sEAEFvF,gBAAiB,IAAIuF,GACnB,OACA,kBACA,CAAC,mBAAoB,mBACrB,yCACA,GACA,WACEhB,GAAoC/sB,EAAUwoB,oBAGlDC,SAAU,IAAIsF,GACZ,OACA,kBACA,CAAC,YAAa,YACd,gCACA,GAEFrF,SAAU,IAAIqF,GACZ,OACA,kBACA,CAAC,YAAa,YACd,gCACA,GAEFpF,UAAW,IAAIyF,GAAc,MAAO,kBAAmB,GAAI,UAC3DxF,YAAa,IAAImF,GACf,MACA,kBACA,aACA,8DAEFlF,UAAW,IAAIkF,GACb,OACA,mBACA,CAAC,wBAAyB,YAC1B,+BACA,GAEFjF,UAAW,IAAIiF,GACb,OACA,mBACA,CAAC,YAAa,YACd,+BACA,GAEFhF,WAAY,IAAIqF,GAAc,MAAO,mBAAoB,GAAI,UAC7DpF,aAAc,IAAI+E,GAChB,MACA,mBACA,yBACA,uDAEF9E,kBAAmB,IAAI8E,GACrB,OACA,mBACA,CAAC,mBAAoB,mBACrB,oDACA,GACA,WACEhB,GAAoC/sB,EAAUipB,sBAGlDC,WAAY,IAAI6E,GACd,OACA,mBACA,CAAC,YAAa,YACd,2CACA,GAEF5E,WAAY,IAAI4E,GACd,OACA,mBACA,CAAC,YAAa,YACd,2CACA,GAEF3E,YAAa,IAAIgF,GAAc,MAAO,mBAAoB,GAAI,UAC9D/E,cAAe,IAAI0E,GACjB,MACA,mBACA,aACA,2DAEFzE,qBAAsB,IAAIyE,GACxB,OACA,oBACA,CAAC,mBAAoB,mBACrB,iDACA,GACA,WACEhB,GAAoC/sB,EAAUspB,yBAGlDC,cAAe,IAAIwE,GACjB,OACA,oBACA,CAAC,YAAa,YACd,wCACA,GAEFvE,cAAe,IAAIuE,GACjB,OACA,oBACA,CAAC,YAAa,YACd,wCACA,GAEFtE,eAAgB,IAAI2E,GAAc,MAAO,oBAAqB,GAAI,UAClE1E,iBAAkB,IAAIqE,GACpB,MACA,oBACA,aACA,yDAEFpE,wBAAyB,IAAIoE,GAC3B,OACA,uBACA,CAAC,mBAAoB,mBACrB,2EACA,GACA,WACEhB,GAAoC/sB,EAAU2pB,4BAGlDC,iBAAkB,IAAImE,GACpB,OACA,uBACA,CAAC,YAAa,YACd,kEACA,GAEFlE,iBAAkB,IAAIkE,GACpB,OACA,uBACA,CAAC,YAAa,YACd,kEACA,GAEFjE,kBAAmB,IAAIsE,GACrB,MACA,uBACA,GACA,UAEFrE,oBAAqB,IAAIgE,GACvB,MACA,uBACA,aACA,mFAIF9V,oBAAqB,IAAI8V,GACvB,OACA,UACA,CACE,2CACA,4CAEF,kDACA,GAEF/D,YAAa,IAAI+D,GACf,OACA,UACA,CACE,iDACA,iDAEF,qDACA,GAEF1R,cAAe,IAAI0R,GACjB,OACA,UACA,CAAC,4BAA6B,4BAC9B,kGACA,GAEFzR,oBAAqB,IAAIyR,GACvB,OACA,UACA,CAAC,mCAAoC,mCACrC,2GACA,GAEFvR,gBAAiB,IAAIuR,GACnB,OACA,UACA,CAAC,8BAA+B,8BAChC,+GACA,GAEFrR,sBAAuB,IAAIqR,GACzB,OACA,UACA,CAAC,qCAAsC,qCACvC,kIACA,GAEFnR,gBAAiB,IAAImR,GACnB,OACA,UACA,CAAC,8BAA+B,8BAChC,qJACA,GAEFhS,aAAc,IAAIsS,GAChB,WACA,UACA,mCACA,gKACA,EACA9pB,KAEFqT,YAAa,IAAImW,GACf,OACA,UACA,CAAC,kCAAmC,qCACpC,kCACA,GACA,WACEpW,QAGJ0B,YAAa,IAAI0U,GACf,OACA,UACA,CAAC,mCAAoC,mCACrC,6CACA,GAEFxP,aAAc,IAAIwP,GAChB,OACA,UACA,CAAC,uBAAwB,uBACzB,oEACA,GAEFlV,YAAa,IAAIkV,GACf,OACA,UACA,CAAC,yBAA0B,yBAC3B,4DACA,GAEFhU,aAAc,IAAIgU,GAChB,OACA,UACA,CAAC,2BAA4B,2BAC7B,yDACA,GAEFlT,gBAAiB,IAAIkT,GACnB,OACA,UACA,CACE,uCACA,uCAEF,iDACA,GAEF9D,eAAgB,IAAI8D,GAClB,OACA,UACA,CAAC,6BAA8B,6BAC/B,kFACA,GAEF7D,oBAAqB,IAAI6D,GACvB,OACA,UACA,CAAC,qCAAsC,qCACvC,+CACA,GAIF3Q,MAAO,IAAI2Q,GACT,OACA,aACA,CAAC,iBAAkB,iBACnB,oCACA,GAEF5D,gBAAiB,IAAI4D,GACnB,OACA,aACA,CAAC,uBAAwB,uBACzB,yHACA,GAEF5O,QAAS,IAAI4O,GACX,OACA,aACA,CAAC,mCAAoC,+BACrC,6CACA,GAEFtoB,WAAY,IAAIsoB,GACd,OACA,aACA,CAAC,0BAA2B,uBAC5B,0BACA,GAEF3D,aAAc,IAAI2D,GAChB,OACA,aACA,CAAC,oBAAqB,oBACtB,mEACA,GACA,WA52B6B,IAA3B/tB,EAAUoqB,aAAoB9d,KAAKgR,QAAU9a,EAC5C8J,KAAKgR,QAAU9b,EAAgB8b,WA+2BpC+M,YAAa,IAAI0D,GACf,OACA,aACA,CAAC,iCAAkC,iCACnC,+DACA,GAEFzD,oBAAqB,IAAI+D,GACvB,WACA,aACA,0BACA,8GACA,EACA9pB,KAEFgmB,aAAc,IAAIwD,GAChB,OACA,aACA,CAAC,gBAAiB,gBAClB,4FACA,GAIFvpB,MAAO,IAAIupB,GACT,OACA,WACA,CACE,uBACA,SACA,cACA,4BACA,sBACA,wBAEF,uCACA,GACA,WACEV,QAGJ/oB,cAAe,IAAIypB,GACjB,OACA,WACA,CAAC,aAAc,aAAc,cAC7B,oIACA,GACA,WACEV,QAGJvoB,eAAgB,IAAIipB,GAClB,OACA,WACA,CAAC,4BAA6B,mBAC9B,qDACA,GACA,WACEV,QAGJxoB,YAAa,IAAIwpB,GACf,WACA,WACA,2BACA,6KACA,EACA,WAIFpD,QAAS,IAAI8C,GACX,OACA,gBACA,CAAC,0BAA2B,0BAC5B,yDACA,GACA,WA96BwB,IAAtB/tB,EAAUirB,QACZntC,OAAO6C,KAAKojB,IAAUwL,SAASj1B,IAC7BypB,GAASzpB,GAAGiI,MAAMqV,QAAU,QAC5BmM,GAASzpB,GAAGiI,MAAMqC,KAAOymB,GAAwB/wB,GAAGoR,EAAEnJ,MAAMqC,KAC5Dmf,GAASzpB,GAAGiI,MAAMsC,IAAMwmB,GAAwB/wB,GAAGoR,EAAEnJ,MAAMsC,OAG7D/G,OAAO6C,KAAKojB,IAAUwL,SAASj1B,GAAOypB,GAASzpB,GAAGiI,MAAMqV,QAAU,YA26BpEszB,QAAS,IAAI6C,GACX,OACA,gBACA,CAAC,cAAe,cAChB,2CACA,GACA,WACEL,QAGJvC,gBAAiB,IAAI4C,GACnB,OACA,gBACA,CAAC,6BAA8B,6BAC/B,kEACA,GACA,WAp3BE/tB,EAAUmrB,iBACZz/B,EAAE,8BAA8BnJ,MAAMqV,QAAU,GAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,KAE9ClM,EAAE,8BAA8BnJ,MAAMqV,QAAU,OAChDlM,EAAE,4BAA4BnJ,MAAMqV,QAAU,WAm3BhDwzB,oBAAqB,IAAI2C,GACvB,OACA,gBACA,CAAC,qCAAsC,qCACvC,8FACA,GACA,WAz7BE/tB,EAAUorB,oBACZ1/B,EAAE,uBAAuBnJ,MAAMqV,QAAU,GAEzClM,EAAE,uBAAuBnJ,MAAMqV,QAAU,UA07B3CyzB,aAAc,IAAI0C,GAChB,OACA,gBACA,CAAC,wBAAyB,wBAC1B,mIACA,IAeJ,SAASS,KACP,OAAO7yC,KAAK8yC,UAAU,CACpBC,SAAU1uB,EACV2uB,QAAS,YAmMb,SAASC,KACP,GAAI3mB,KAAyBqE,KAAKuiB,aAAelnB,GAAW,CAC1D,GACE2E,KAAKuiB,YAAc,IACnBviB,KAAKwiB,aAAaxiB,KAAKuiB,aAAaE,IAAIhsC,WAAWisC,SAAS,aAC5D,CACA,IAAIrvC,EAAS2sB,KAAKwiB,aAAaxiB,KAAKuiB,aAAaE,IAC9ChsC,WACA/H,MAAM,mBAAmB,GAC5B,MAAM0zB,EAASpC,KAAKwiB,aAAaxiB,KAAKuiB,aAAaE,IAChDhsC,WACA/H,MAAM,sBAAsB,GAC/B,GAAe,MAAX2E,EAEF,GADAA,EAASA,EAAOsvC,WAAW,IAAK,IAC5B3iB,KAAKoB,QAAQ/tB,GAAQ+uB,OAASA,EAChCxG,GAAyB,mCACpB,CACL,IAAIgnB,EAAO,EACXjZ,KACA,IAAK,IAAI37B,EAAI,EAAGA,EAAIo0B,EAAQp0B,IAAK,CAC/B,IAAI0zB,EACF9B,GAAWvsB,GAAQ6uB,UACnBlC,KAAK2C,eACHpsB,KAAK6D,IACH,EACAwlB,GAAWvsB,GAAQ+uB,OAAS,EAAIxC,GAAWvsB,GAAQ8uB,MAEzDT,EAAQ1B,KAAK4C,oBAAoBhD,GAAWvsB,GAASquB,GACrDA,EAAQnrB,KAAKoL,KAAK+f,GAClBkhB,GAAQlhB,EACR9B,GAAWvsB,GAAQ+uB,QAAU,EAE/BxG,GAAyB,kBAAkBgnB,QAExC,CACL,IAAIA,EAAO,EACXjZ,KACA,IAAK,MAAMvF,KAAK5yB,OAAO6C,KAAK2rB,KAAKoB,SAAU,CAEzC,GADA/tB,EAAS+wB,EACLpE,KAAKoB,QAAQ/tB,GAAQ+uB,OAASA,EAAQ,CACxCxG,GAAyB,+BACzB,MAEA,IAAK,IAAI5tB,EAAI,EAAGA,EAAIo0B,EAAQp0B,IAAK,CAC/B,IAAI0zB,EACF9B,GAAWvsB,GAAQ6uB,UACnBlC,KAAK2C,eACHpsB,KAAK6D,IACH,EACAwlB,GAAWvsB,GAAQ+uB,OAAS,EAAIxC,GAAWvsB,GAAQ8uB,MAEzDT,EAAQ1B,KAAK4C,oBAAoBhD,GAAWvsB,GAASquB,GACrDA,EAAQnrB,KAAKoL,KAAK+f,GAClBkhB,GAAQlhB,EACR9B,GAAWvsB,GAAQ+uB,QAAU,EAGjCxG,GAAyB,kBAAkBjE,GAA4BirB,OAI7EjnB,GAAuBqE,KAAKuiB,aAkBhC,SAASM,GAAmBxhB,EAAK6I,GAC/BP,KACa,IAATO,EAAYhP,GAAUmG,EACR,IAAT6I,EAAY/O,GAAUkG,EACb,IAAT6I,IAAY9O,GAAUiG,GAE/B,MAAMmX,EAAwB3d,GAO9B,OANAya,KAEAkC,KACIgB,IAA0B3d,IAC5Bya,KAEK/Z,GAAeyE,KAAKgF,UAoD7B,SAAS8d,KAEPljB,GAAa,GACbpuB,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjC4xB,GAAW5xB,GAAK26B,GAAoB36B,MAItC6xB,GAAc,GACdruB,OAAO6C,KAAK2rB,KAAKuJ,UAAUtG,SAASj1B,IAClC6xB,GAAY7xB,GAAKq7B,GAAYr7B,MAI/B8xB,GAAkB,GAClBtuB,OAAO6C,KAAK2rB,KAAK2H,cAAc1E,SAASj1B,IACtC8xB,GAAgB9xB,GAAKy5B,GAAgBz5B,MAEvC27B,KAMF,IAAIoZ,IAAiB,EAcrB,SAASC,GAAM/gC,EAAMghC,GAGM,IAAtBvvB,EAAUuvB,IAA0B,IAAThhC,IAAiC,IAAnB8gC,IACjC,IAAT9gC,GAEA7C,EAAE,iBAAiBnJ,MAAM6U,QAAU,MACtB,IAAT7I,GACF7C,EAAE,iBAAiBnJ,MAAMqV,QAAU,SACnC43B,YAAW,WACTF,GAAM,EAAGC,KACR,IAAOjjB,KAAKiL,MAEfiY,YAAW,WACTF,GAAM,EAAGC,KACR,IAAOjjB,KAAKiL,MAEC,IAAThpB,GACT7C,EAAE,iBAAiBnJ,MAAM6U,QAAU,IACnCo4B,YAAW,WACTF,GAAM,EAAGC,KACR,IAAOjjB,KAAKiL,MACG,IAAThpB,IAAY7C,EAAE,iBAAiBnJ,MAAMqV,QAAU,QAe5D,SAAS63B,GAAUC,EAAKC,EAAWC,EAAWxrB,GAE5C,IAA8B,IAAzBpE,EAAU2vB,IAAoBvrB,KAA8B,IAAnBirB,GAA0B,CAEtE,MAAMQ,EAAQ,IAAIC,MAAMJ,GACpB1vB,EAAU6nB,aACZgI,EAAME,OAAU/vB,EAAU4vB,GAAa,KAAQtjB,KAAKyjB,OAAS,KAC1DF,EAAME,OAAS/vB,EAAU4vB,GAAa,IAC3CC,EAAMG,QAoFV,SAASC,GAAmBC,EAAcC,EAAOC,GAGjB,IAA5BpwB,EAAUkwB,IACmB,WAA7Bt3C,SAASy3C,kBACU,IAAnBhB,IAIA,IAAI5D,aAAa0E,EAAO,CAAE32B,KAAM42B,EAASE,MAFtB,yDAkRvB,SAASC,KAKP,GAJI1sB,KAAoByI,KAAKkkB,WAC3B3sB,GAAkByI,KAAKkkB,SAzdrBlkB,KAAKkkB,UACP9kC,EAAE,QAAQnJ,MAAMkW,OAAS,MACA,IAArBuH,EAAU8S,SAAcpnB,EAAE,YAAYnJ,MAAMqV,QAAU,QAC/B,IAAvBoI,EAAUyT,WAAgB/nB,EAAE,cAAcnJ,MAAMqV,QAAU,UAE9Dw1B,KACAzZ,MAEFN,OAodK/G,KAAKkkB,UAAiC,IAArBlkB,KAAKmkB,YAAmB,CAExCrwB,IAAiBtiB,OAAO6C,KAAK2rB,KAAKokB,MAAMn2C,SAC1C60C,KACA1H,KACAtnB,EAAetiB,OAAO6C,KAAK2rB,KAAKokB,MAAMn2C,QAIpCotB,KACFsd,KAlsBA3Y,KAAKwR,IAAI,wBAjBb7H,KACA9J,GAAY,uBAAuBkB,OAAS,EAC5CuU,KAgBE/Y,GAfKhB,IAgBAgB,GAA6ByD,KAAKgF,UAmsBrC+V,KACAD,KACAT,KACAR,KACAyI,KAhgBN,WACE,IAAK,IAAIjhB,EAAM,EAAGA,EAAM,GAAIA,GAAO,EACjC,IAAK,IAAI6I,EAAO,EAAGA,EAAO,EAAGA,GAAQ,EACnCjL,GAAUoC,GAAK6I,GAAQ2Y,GAAmBxhB,EAAK6I,GA8f/Cma,GAEAxJ,KAvoBN,WACE,IAAIyJ,EAAY,EAEhB,GAAItkB,KAAKoB,QAAQmjB,KAAKziB,eAAgB,CACpC,MAAM0iB,EAAcxkB,KAAKoB,QAAQmjB,KAAKpjB,SAASsjB,MAC/C,IAAIC,EAAW,EACflzC,OAAO6C,KAAKmwC,GAAavhB,SAASj1B,IAChC,MAAM22C,EAAaH,EAAYx2C,GAC/B02C,GAAYC,EAAWC,MAAQD,EAAWn0C,OAE5C8zC,GAAaI,EAAW1kB,KAAK6kB,oBAG/BP,GAlEF,WACE,IAAIA,EAAY,EAEhB3a,KAGA,IAAImb,EAAuB,EACL,IAAlB9pB,IAAyC,KAAlBA,KACzB8pB,GAAwB,GAEH,IAAnB7pB,IAA2C,KAAnBA,KAC1B6pB,GAAwB,GAE1B9pB,GAAgB,EAChBC,GAAiB,GAGjB,IAAK,IAAIjtB,EAAI,EAAGA,EAAI82C,IAAwB92C,EAAG,CAC7C,IAAI+2C,EAAkB,SACtBvzC,OAAO6C,KAAKurB,IAAYqD,SAASmB,IAC3BxE,GAAWwE,GAAGhC,OAAS,IACzB2iB,EAAkB3gB,MAGtBxE,GAAWmlB,GAAiB3iB,QAAU,EACtC1H,IAAqB,EAevB,OAXAlpB,OAAO6C,KAAKurB,IAAYqD,SAASj1B,IAC/B,MAAMk2B,EAAKtE,GAAW5xB,GACtBs2C,GAAatiB,GACXhC,KAAKoB,QAAQ8C,EAAG3xB,MAChBytB,KAAKoB,QAAQpzB,GAAGk0B,UAChBgC,EAAG9B,OACHpC,KAAKoB,QAAQpzB,GAAGm0B,KAChB+B,EAAG9B,WAIAkiB,EA0BMU,GACbhmB,GAAqBslB,EA0nBjBW,GAEA5pB,GAAY,GAId,MAAM6pB,EAAellB,KAAK2W,SAAS,kBAAoB,GAClDlc,IAAqByqB,GACxBzqB,IAAoB,EACpBD,GAA2B,GAClBC,KAAsByqB,IAC/BzqB,IAAoB,EACpBD,GAA2B,GAGzBA,KACFke,KACAle,GAA2B,GA3wBjC,WAEE2gB,KAEAlG,KAzCF,WACE5X,GAA2B,EAC3B,IAAIoJ,EAAQ,EACZj1B,OAAO6C,KAAK2rB,KAAKkF,WAAWjC,SAASj1B,IACH,IAA5BgyB,KAAKkF,UAAUl3B,GAAGmkC,QAAa1L,GAAS,MAE9C,IAAI0e,EAAU,EACd,GAAIvlB,GAAWsB,OAAOY,eAAgB,CACpC,MAAMC,EAAS/B,KAAKiB,OAAO,SACZ,IAAXc,EAAcojB,GAAW,KACT,IAAXpjB,EAAcojB,GAAW,IACd,IAAXpjB,IAAcojB,GAAW,MAEpC7nB,GAAyBmJ,EACzBpJ,GACEoJ,GACS,IAARA,EAAe,MACuB,IAAtCzG,KAAKwR,IAAI,2BAAoC,IACjB,IAA5BxR,KAAKwR,IAAI,iBAA0B,GACpC2T,EAuBFC,GACA9R,KACAyG,KAEA,MAAMsL,EACJrlB,KAAKslB,oBACH/uC,KAAKkE,MAAMulB,KAAKia,gBAAgBja,KAAKka,aAAela,KAAK2T,gBACvD,IAEH3T,KAAK2T,cAAgB3T,KAAKka,cAC7Btb,GAA4B7F,GAAWssB,EAAgBxgB,MA+vBrD0gB,GAxSF3wB,EAA+B,EAC/BmK,GAA0B,GAC1BvtB,OAAO6C,KAAK2rB,KAAKwlB,UAAUviB,SAASj1B,IAClC+wB,GAAwBiB,KAAKwlB,SAASx3C,GAAGuzB,IAAMvB,KAAKwlB,SAASx3C,GACzDgyB,KAAKwlB,SAASx3C,GAAGy3C,WAAuC,WAA1BzlB,KAAKwlB,SAASx3C,GAAGK,OACjDqwB,GAA4BsB,KAAKwlB,SAASx3C,GAC1C4mB,GAAgC,MAWpCpjB,OAAO6C,KAAKojB,IAAUwL,SAASj1B,SACa,IAA/B+wB,GAAwB/wB,KACjCypB,GAASzpB,GAAGmf,WAAWrc,YAAY2mB,GAASzpB,WACrCypB,GAASzpB,OAGhBymB,IAA0BuL,KAAKqR,aAAaC,OAAOrgC,GACrDwjB,EAAwBuL,KAAKqR,aAAaC,OAAOrgC,EAC7CwjB,IACEC,EAA+BE,IACjCouB,GAAM,EAAG,WACTG,GAAUzvB,EAAUkoB,WAAY,UAAW,YAAY,GACvD+H,GACE,iBACA,wBACA,+CAIJnyC,OAAO6C,KAAK2rB,KAAKwlB,UAAUviB,SAASj1B,SACW,IAAlCypB,GAASuI,KAAKwlB,SAASx3C,GAAGuzB,KAnH7C,SAAuBmkB,GACrB,MAAM/G,EAAUryC,SAAS4D,cAAc,OACvCyuC,EAAQpd,GAAK,UAAUmkB,EAAOnkB,KAC9Bod,EAAQ1oC,MAAMkG,MAAQ,OACtBwiC,EAAQ1oC,MAAMmG,OAAS,OACvBuiC,EAAQ1oC,MAAMgI,SAAW,WACzB0gC,EAAQ1oC,MAAMyU,OAAS,cACvBi0B,EAAQ1oC,MAAMuW,UAAY,SAC1BmyB,EAAQ1oC,MAAMyW,WAAa,OAC3BiyB,EAAQ1oC,MAAM0vC,WAAa,2BAC3BhH,EAAQ1oC,MAAMuvB,SAAW,OACzBmZ,EAAQ1oC,MAAM+U,OAAS,UACvB2zB,EAAQ1oC,MAAMqV,QAAU,QACE,IAAtBoI,EAAUirB,UAAeA,EAAQ1oC,MAAMqV,QAAU,QACrDqzB,EAAQ1oC,MAAMqC,KAAOotC,EAAOtmC,EAAEnJ,MAAMqC,KACpCqmC,EAAQ1oC,MAAMsC,IAAMmtC,EAAOtmC,EAAEnJ,MAAMsC,IACnComC,EAAQiH,QAAU,WAChBF,EAAOG,OAETlH,EAAQmH,YAAc,WACpBJ,EAAOtmC,EAAEnJ,MAAM8vC,OACb,gEACFL,EAAOtmC,EAAEnJ,MAAM+vC,aACb,iEAEJrH,EAAQsH,WAAa,WACnBP,EAAOtmC,EAAEnJ,MAAM8vC,OAAS,GACxBL,EAAOtmC,EAAEnJ,MAAM+vC,aAAe,IAGhCvuB,GAASiuB,EAAOnkB,IAAMod,EACtBv/B,EAAE,YAAYwK,YAAY+0B,GAqFlBuH,CAAclmB,KAAKwlB,SAASx3C,QAIlCozC,KACA1sB,EAA+BE,EACM,IAAjCA,IAAoC8J,GAA4B,IACrC,IAAtBhL,EAAUirB,SAAiBlqB,GACpCjjB,OAAO6C,KAAKojB,IAAUwL,SAASj1B,IAC7BypB,GAASzpB,GAAGiI,MAAM6U,QAAUiU,GAAwB/wB,GAAGoR,EAAEnJ,MAAM6U,QAC/D2M,GAASzpB,GAAGiI,MAAMkwC,UAChBpnB,GAAwB/wB,GAAGoR,EAAEnJ,MAAMkwC,UACrC1uB,GAASzpB,GAAGqD,YAAckF,KAAKoL,KAC7Bod,GAAwB/wB,GAAGo4C,KAAOpmB,KAAKiL,QAiF3C1W,KACCyL,KAAKqmB,cAA2C,YAA3BrmB,KAAKqmB,aAAah4C,QAExCkmB,EACEyL,KAAKqmB,cAA2C,YAA3BrmB,KAAKqmB,aAAah4C,KACrCkmB,IACFyuB,GAAM,EAAG,gBACTG,GACEzvB,EAAUuoB,gBACV,eACA,iBACA,GAEF0H,GACE,sBACA,uBACA,kDA9CFrvB,IAAyB0L,KAAKqR,aAAaQ,SAASN,UACtDjd,EAAuB0L,KAAKqR,aAAaQ,SAASN,QAClD//B,OAAO6C,KAAK2rB,KAAKwlB,UAAUviB,SAASj1B,IAC9BgyB,KAAKwlB,SAASx3C,GAAGy3C,WAAuC,aAA1BzlB,KAAKwlB,SAASx3C,GAAGK,OACjDswB,GAAwBqB,KAAKwlB,SAASx3C,OAG1Cg1C,GAAM,EAAG,YACTG,GAAUzvB,EAAU4oB,YAAa,WAAY,aAAa,GAC1DqH,GACE,kBACA,oBACA,0CAtNF3jB,KAAKoB,QAAQoM,KAAK1L,gBAClBtN,IAAuBwL,KAAKoB,QAAQoM,KAAKrM,SAASmlB,WAEvB,IAAvB9xB,GAA4BA,EAAqBgf,KAAKC,QACxDuP,GAAM,EAAG,aACTG,GAAUzvB,EAAUgpB,aAAc,YAAa,cAAc,IAE/DloB,EAAqBwL,KAAKoB,QAAQoM,KAAKrM,SAASmlB,UAiKpD,WACE,GACEtmB,KAAKoB,QAAQ,gBAAgBU,gBACH,IAA1BpO,EAAUqqB,YACV,CACA,MAAM5c,SAAEA,GAAanB,KAAKoB,QAAQ,gBAC9BD,EAAS6J,MAAQ7J,EAAS6L,OAAQrY,GAAmB,EAC/CA,IACRA,GAAmB,EACnBquB,GAAM,EAAG,cACTG,GAAUzvB,EAAUqpB,cAAe,aAAc,eAAe,GAChE4G,GACE,oBACA,mBACA,6CA6NJ4C,GA1IJ,WACE,GAAIvmB,KAAK0I,WAAa,EAAG,CACvB,IAAI8d,EAAmB,EACvBh1C,OAAO6C,KAAK2rB,KAAKkF,WAAWjC,SAASj1B,IACH,IAA5BgyB,KAAKkF,UAAUl3B,GAAGmkC,QAAaqU,GAAoB,MAErDA,EAAmB3xB,GACrBA,EAAoB2xB,EAElBA,IAAqBxmB,KAAKymB,mBAC1B/yB,EAAU4pB,iBAEV0F,GAAM,EAAG,oBAETA,GAAM,EAAG,iBAGTwD,IAAqBxmB,KAAKymB,mBAC1B/yB,EAAU6pB,iBAEV4F,GACEzvB,EAAU+pB,oBACV,mBACA,qBACA,GAGF0F,GACEzvB,EAAU0pB,iBACV,gBACA,kBACA,GAIFoJ,IAAqBxmB,KAAKymB,mBAC1B/yB,EAAU2pB,wBAEVsG,GACE,0BACA,4BACA,sDAGFA,GACE,uBACA,sBACA,gCAIJ9uB,EAAoB2xB,GAwFtBE,IAmBJ,SAASC,KACP,MAAMC,EAAaC,YACjBC,SAASC,aAAaC,QAAQ,sBAAsBnyC,MAAM,SAAS,IAE/DoyC,EAAoBL,EAAWl4C,MAAM,wBAC3C,GAA0B,OAAtBu4C,EAA4B,CAC9B,MAAMC,EAAgBN,EAAWhyC,QAC/BqyC,EAAkB,GAClB,iBAAiB/E,QAEnB6E,aAAaI,QACX,oBACA3U,OAAO,GAAG4U,YAAYF,aAS5B,SAASG,GAAWjF,GAKlB,QAHqC,IAA1B2E,aAAaO,iBACfP,aAAaO,cAELl5C,IAAbg0C,EAAwB,CAC1B1uB,EAAY0uB,EAGZ,IAAImF,GAAM,EACV/1C,OAAO6C,KAAKgnC,IAAiBpY,SAASj1B,SACR,IAAjB0lB,EAAU1lB,IACnBu5C,GAAM,EACN7zB,EAAU1lB,GAAKqtC,GAAgBrtC,IAChB,WAANA,GAAwB,WAANA,GACI,IAA3BA,EAAEkD,QAAQ,YAERwiB,EAAU1lB,IAAM,GAAK0lB,EAAU1lB,GAAKg0C,GAAah0C,GAAG0zC,MAAMzzC,SAE5Ds5C,GAAM,EACN7zB,EAAU1lB,GAAKqtC,GAAgBrtC,IAEA,iBAAjB0lB,EAAU1lB,KAE1Bu5C,GAAM,EACN7zB,EAAU1lB,GAAKqtC,GAAgBrtC,IAElB,WAANA,EACTwD,OAAO6C,KAAKgnC,GAAgB2D,QAAQ/b,SAASmB,SAEd,IAApB1Q,EAAU1lB,GAAGo2B,IAClB1Q,EAAU1lB,GAAGo2B,IAAM,GAAK1Q,EAAU1lB,GAAGo2B,GAAK,IAE5CmjB,GAAM,EACN7zB,EAAU1lB,GAAGo2B,GAAKiX,GAAgBrtC,GAAGo2B,OAKzC5yB,OAAO6C,KAAKgnC,GAAgBvlB,QAAQmN,SAASmB,SAEd,IAApB1Q,EAAU1lB,GAAGo2B,IACO,iBAApB1Q,EAAU1lB,GAAGo2B,KAEpBmjB,GAAM,EACN7zB,EAAU1lB,GAAGo2B,GAAKiX,GAAgBrtC,GAAGo2B,UAKzCmjB,GAAKZ,KACT1C,KACAzyC,OAAO6C,KAAKgnC,IAAiBpY,SAASj1B,IAC1B,WAANA,QAAkD,IAAzBg0C,GAAah0C,GAAG+E,MAC3CivC,GAAah0C,GAAG+E,eAKpBs0C,GAAWhM,IAiJf,SAASmM,KACPh2C,OAAO6C,KAAK2rB,KAAKkF,WAAWjC,SAASj1B,IAC/BgyB,KAAKkF,UAAUl3B,GAAG0kC,OAAS,GAAgC,IAA3B1S,KAAKkF,UAAUl3B,GAAGK,OACpD2xB,KAAKkF,UAAUl3B,GAAGy5C,GAAK,MA6C7B,SAASC,GAAcr5C,EAAMkE,GAC3B,GAAa,MAATlE,EAAc,CAIhB,GAFA+Q,EAAE,WAAWoM,UAAYwU,KAAKoB,QAAQ7uB,GAAMg4B,UAEd,IAA1B7W,EAAUgqB,YAAmB,CAC/B,MAAMiK,EAAavS,GACjBpV,KAAKoB,QAAQ7uB,GACbytB,KAAKoB,QAAQ7uB,GAAM2vB,UACnB,EACAlC,KAAKoB,QAAQ7uB,GAAM4vB,KACnBnC,KAAKoB,QAAQ7uB,GAAM6vB,QAEfwlB,EAAiBD,EAAa3nB,KAAKoB,QAAQ7uB,GAAM03B,aACnD2d,EAAiB,IACnBxoC,EAAE,WAAWoM,UAAYpM,EAAE,WACxBoM,UAAU3W,MAAM,gBAChB6C,KACC,wBAAwBigB,GAA4BiwB,UACnB,IAA/BrxC,KAAKkE,MAAMmtC,GAAwB,SAAW,+BAE9CxuB,IACGuuB,EAAa3nB,KAAKoB,QAAQ7uB,GAAM03B,eAC9BjK,KAAKoB,QAAQ7uB,GAAMs1C,eAAiB7nB,KAAK8nB,gBAC5CzuB,iBAKU,IAAlB2G,KAAK+C,UASP3jB,EAAE,WAAWoM,UAAYpM,EAAE,WACxBoM,UAAU3W,MAAM8iB,GAA4BqI,KAAKoB,QAAQ7uB,GAAMs0B,YAC/DnvB,KACCigB,IACGqI,KAAKoB,QAAQ7uB,GACdytB,KAAKoB,QAAQ7uB,GAAM2vB,UACnBlC,KAAKoB,QAAQ7uB,GAAM6vB,OACnBpC,KAAKoB,QAAQ7uB,GAAM4vB,KACnBnC,KAAK0C,QACL,WAIH,GAAa,MAATr0B,EAAc,CAEvB,IAAK2xB,KAAKiE,gBAAgB1xB,GAAO,MAAO,GACxC6M,EAAE,WAAWoM,UAAYwU,KAAK+nB,aAC5B/nB,KAAKiE,gBAAgB1xB,GACrB,aAEgB,MAATlE,EAAc+Q,EAAE,WAAWoM,UAAYwU,KAAKgoB,cAErC,MAAT35C,EACP+Q,EAAE,WAAWoM,UAAYwU,KAAKoB,QAAQ,gBAAgBD,SAAS8mB,aAC7D11C,EADuBytB,GAIT,MAAT3xB,EACP+Q,EAAE,WAAWoM,UAAYwU,KAAK8X,YAAY,GAAG3W,SAAS+mB,YACpD31C,EAAK,GACLA,EAAK,GAFkBytB,GAKT,OAAT3xB,EACP+Q,EAAE,WAAWoM,UAAYwU,KAAK8X,YAAY,GAAG3W,SAASgnB,YAAY,EAAzCnoB,GACT,OAAT3xB,EAAe+Q,EAAE,WAAWoM,UAAY,GAC/B,QAATnd,EACP+Q,EAAE,WAAWoM,UAAYwU,KAAKoB,QAAQF,OAAOC,SAASinB,WAAW71C,EAAxCytB,GACT,QAAT3xB,IACP+Q,EAAE,WAAWoM,UAAYwU,KAAKoB,QAAQF,OAAOC,SAASknB,YACpD91C,EAAK,GADkBytB,IAK3B,GACY,MAAT3xB,GAAiC,IAAjB2xB,KAAK+C,SACb,MAAT10B,GACS,MAATA,GACS,MAATA,GACU,MAATA,IAAiB2xB,KAAK3rB,KAAK,KACnB,OAAThG,GACS,OAATA,GACS,QAATA,GACU,QAATA,IAA+B,IAAbkE,EAAK,GACxB,CACA,MAAM+1C,EAAOh8C,SAAS4D,cAAc,OACpCo4C,EAAK/mB,GAAK,gBACVniB,EAAE,WAAWwK,YAAY0+B,GAS3B,OALAlxB,GAAc/oB,EACdgpB,GAAc9kB,EAEdg5B,KAEOnsB,EAAE,WAAWoM,UA6GtB,SAAS+8B,KACHvoB,KAAKoB,QAAQ,gBAAgBU,gBAC/BtwB,OAAO6C,KAAK2rB,KAAKoB,QAAQ,gBAAgBD,SAAS2L,YAAY7J,SAC3Dj1B,IAC4C,OAAvCoR,EAAE,gBAAgBpR,KAAK83C,cACzB9wB,EAAsBhnB,GAAKoR,EAAE,gBAAgBpR,KAAK83C,YAClD1mC,EAAE,gBAAgBpR,KAAK83C,YAAc,WACnC9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,IAAK,GAAG15C,OAE/B,QAEFgyB,KAAKuK,QAAQke,cAoBzB,SAASC,KACP,IACGt0B,GACD4L,KAAKoB,QAAQ,gBAAgBU,eAC7B,CACA,MAAMX,SAAEA,GAAanB,KAAKoB,QAAQ,gBAClClN,EAAqBiN,EAAS3b,KAC9Bwa,KAAKoB,QAAQ,gBAAgBD,SAAS3b,KAAO,WAC3C0O,IAC8B,IAA1BR,EAAUqqB,aAAqB5c,EAAS6J,MAAQ7J,EAAS6L,SAC3D7L,EAASwnB,cAAcn9B,WAAa,KAAKuN,GACvC6R,GACEzJ,EAAS6J,MACT7J,EAAS6L,OACT7L,EAAS6L,cAKjB5Y,GAA+B,GAkCnC,SAASw0B,MA3BT,WACE,IACGz0B,GACD6L,KAAKoB,QAAQ,gBAAgBU,eAC7B,CACA,MAAMX,SAAEA,GAAanB,KAAKoB,QAAQ,gBAClCpN,EAAuBmN,EAAS0nB,OAChC50B,EAA0B,IAAIxkB,SAC5B,UAAU0xB,EAAS0nB,OAChBpyC,WACA5B,MAAM,SACN6C,KAAK,8CAEVsoB,KAAKoB,QAAQ,gBAAgBD,SAAS0nB,OAAS,WAC7C50B,IACAs0B,KACAn0B,GAA+B,EAC/Bs0B,KAEAv0B,GAAiC,IASrC20B,GACAJ,KAiJF,IAAI37C,GAAUkmB,EAAoB,KAC9B81B,GAA+B91B,EAAoBhiB,EAAElE,IA+OzD,MAAMi8C,GAA6B,WA8BnC,SAASC,GAAmBhG,GACG,OAAzB7jC,EAAE,SAAS6jC,OACb7jC,EAAE,SAAS6jC,UAAez3B,UAAY,GAAGpM,EAAE,SAAS6jC,KAAU7xC,SAC9DsiB,EAAUuvB,GAAU1sC,KAAKC,MAAM4I,EAAE,SAAS6jC,KAAU7xC,QAEtDu1C,KAQF,SAASuC,GAAajG,GACpBvvB,EAAUsrB,OAAOiE,IAAW,EACxBvvB,EAAUsrB,OAAOiE,GAAU,IAAGvvB,EAAUsrB,OAAOiE,GAAU,GAC7D0D,KAiBF,SAASwC,GAAY9vB,EAAM4pB,GACzB,MAAM3e,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAI71B,UAAY,QAChB61B,EAAIruB,MAAMwK,QAAU,WACpB6jB,EAAIruB,MAAM6U,QAAU,MACpBwZ,EAAIruB,MAAMuvB,SAAW,OACrBlB,EAAIruB,MAAM0vC,WAAa,2BACvBrhB,EAAI1a,YAAYtd,SAASqgB,eAAe,GAAG0M,OAC3C,MAAM+vB,EAAO98C,SAAS4D,cAAc,QAiBpC,OAhBAk5C,EAAKnzC,MAAM+U,OAAS,UACpBo+B,EAAKnzC,MAAMqV,QAAU,eACrB89B,EAAKnzC,MAAMmG,OAAS,OACpBgtC,EAAKnzC,MAAMkG,MAAQ,OACnBitC,EAAKnzC,MAAMsU,aAAe,MAC1B6+B,EAAKnzC,MAAMuW,UAAY,SACvB48B,EAAKnzC,MAAM4U,gBAAkB,UAC7Bu+B,EAAKnzC,MAAM2F,MAAQ,QACnBwtC,EAAKnzC,MAAMuvB,SAAW,OACtB4jB,EAAKnzC,MAAMyvB,cAAgB,SAC3B0jB,EAAK/3C,YAAcqiB,EAAUsrB,OAAOiE,GAAU,IAAM,IACpDmG,EAAKxD,QAAU,WACbsD,GAAajG,GACbjjB,KAAK8S,cAEPxO,EAAI1a,YAAYw/B,GACT9kB,EAYT,SAAS+kB,GAAah7C,EAAMkE,EAAM8mB,EAAMgZ,GACtC,MAAM/N,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAI71B,UAAY,UAEhB,MAAM66C,EAAch9C,SAAS4D,cAAc,KAG3C,GAFAo5C,EAAYj4C,YAAckB,EAC1B+xB,EAAI1a,YAAY0/B,GACH,gBAATj7C,EAAwB,CAC1Bi2B,EAAI71B,UAAY,UAChB61B,EAAI1a,YAAYtd,SAASqgB,eAAe,MAExC,MAAM4d,EAAUj+B,SAAS4D,cAAc,QACvCq6B,EAAQ0b,WAAa,WACnBjmB,KAAKuK,QAAQvlB,QAEfulB,EAAQub,YAAc,WACpB9lB,KAAKuK,QAAQ/kB,KACX9Y,KACA8lC,OAAOxc,EAAsBqc,GAAa7mB,aAG9C+e,EAAQt0B,MAAM+U,OAAS,UACvBuf,EAAQt0B,MAAMqV,QAAU,eACxBif,EAAQt0B,MAAMmG,OAAS,OACvBmuB,EAAQt0B,MAAMkG,MAAQ,OACtBouB,EAAQt0B,MAAMsU,aAAe,MAC7BggB,EAAQt0B,MAAMuW,UAAY,SAC1B+d,EAAQt0B,MAAM4U,gBAAkB,UAChC0f,EAAQt0B,MAAM2F,MAAQ,QACtB2uB,EAAQt0B,MAAMuvB,SAAW,MACzB+E,EAAQt0B,MAAMyvB,cAAgB,SAC9B6E,EAAQl5B,YAAc,IACtBizB,EAAI1a,YAAY2gB,GAIlB,OAFAjG,EAAI1a,YAAYtd,SAASqgB,eAAe,OACxC2X,EAAI1a,YAAYyP,GACTiL,EAQT,SAASilB,GAAcC,GACrB,MAAMC,EAAOn9C,SAASo9C,yBACtBD,EAAK7/B,YAAYtd,SAASqgB,eAAe,GAAG68B,EAAYv7C,YACxD,MAAMm7C,EAAO98C,SAAS4D,cAAc,QACpCk5C,EAAKnD,WAAa,WAChBjmB,KAAKuK,QAAQvlB,QAEf,MAAMqtB,EAAc/lC,SAAS4D,cAAc,OACrCy5C,EAAUr9C,SAAS4D,cAAc,OACvCy5C,EAAQ1zC,MAAMs8B,SAAW,QACzBoX,EAAQ1zC,MAAMw0B,aAAe,MAC7B,MAAMoZ,EAAQv3C,SAAS4D,cAAc,OA4BrC,OA3BA2zC,EAAMp1C,UAAY,OAClBo1C,EAAM5tC,MAAMw0B,aAAe,MAC3BoZ,EAAM5tC,MAAMuW,UAAY,SACxBq3B,EAAMxyC,YAAc,UACpBs4C,EAAQ//B,YAAYi6B,GACpBryC,OAAO6C,KAAKm1C,GAAavmB,SAASj1B,IAChC,MAAMs2B,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMuW,UAAY,SACtB8X,EAAI1a,YAAYtd,SAASqgB,eAAe68B,EAAYx7C,KACpD27C,EAAQ//B,YAAY0a,MAEtB+N,EAAYzoB,YAAY+/B,GACxBP,EAAKtD,YAAc,WACjB9lB,KAAKuK,QAAQ/kB,KAAK9Y,KAAM8lC,OAAOH,EAAY7mB,aAE7C49B,EAAKnzC,MAAM+U,OAAS,UACpBo+B,EAAKnzC,MAAMqV,QAAU,eACrB89B,EAAKnzC,MAAMmG,OAAS,OACpBgtC,EAAKnzC,MAAMkG,MAAQ,OACnBitC,EAAKnzC,MAAMsU,aAAe,MAC1B6+B,EAAKnzC,MAAMuW,UAAY,SACvB48B,EAAKnzC,MAAM4U,gBAAkB,UAC7Bu+B,EAAKnzC,MAAM2F,MAAQ,QACnBwtC,EAAKnzC,MAAMuvB,SAAW,MACtB4jB,EAAKnzC,MAAMyvB,cAAgB,SAC3B0jB,EAAK/3C,YAAc,IACnBo4C,EAAK7/B,YAAYw/B,GACVK,EAi9BT,SAASG,GAAa/F,GACpB,MAAMgG,EAAQv9C,SAAS4D,cAAc,OAiCrC,GAhCA25C,EAAMp7C,UAAY,aAClBo7C,EAAMjgC,YAAYi6B,GAElBgG,EAAMjgC,YAAYu/B,GAAY,gBAAiB,UAC3Cz1B,EAAUsrB,OAAOgB,OACnB6J,EAAMjgC,YAl8BV,WAEE,MAAMkgC,EAAkB9pB,KAAK2W,SAAS,oBAClC,2CACA,6BAEEoT,EAAUz9C,SAAS4D,cAAc,OACvC65C,EAAQt7C,UAAY,sBAEpB,MAAMu7C,EACJhqB,KAAK8G,QAAU3B,KAAuBtJ,GAAapG,EAAWH,EAC1D20B,EACJjqB,KAAK8G,QAAU3B,KAAuBtJ,GAClC9C,IACG8C,IAAcmE,KAAK8G,QAAU3B,OAAyBN,MAEzD,GACAqlB,EAAe59C,SAASo9C,yBACxBS,EAAe79C,SAAS4D,cAAc,QAK5C,GAJAi6C,EAAal0C,MAAMo0B,WAAa,OAChC8f,EAAa17C,UAAY0mB,EAAe60B,EACxCG,EAAa94C,YAAcsmB,GAA4BkE,IACvDquB,EAAatgC,YAAYugC,GACP,KAAdF,EAAkB,CACpB,MAAMG,EAAgB99C,SAAS4D,cAAc,SAC7Ck6C,EAAc/4C,YAAc,KAAK44C,KACjCC,EAAatgC,YAAYwgC,GAE3BL,EAAQngC,YACNy/B,GACE,cACA,4BACAa,EACAJ,IAIJ,MAAMO,EACJrqB,KAAK8G,QAAU3B,KAAuBnJ,GAClCvG,EACAH,EACAg1B,EACJtqB,KAAK8G,QAAU3B,KAAuBnJ,GAClCjD,IACGiD,IAAoBgE,KAAK8G,QAAU3B,OAAyBN,MAE/D,GACA0lB,EAAmBj+C,SAASo9C,yBAC5Bc,EAAmBl+C,SAAS4D,cAAc,QAKhD,GAJAs6C,EAAiBv0C,MAAMo0B,WAAa,OACpCmgB,EAAiB/7C,UAAY0mB,EAAek1B,EAC5CG,EAAiBn5C,YAAcsmB,GAA4BqE,IAC3DuuB,EAAiB3gC,YAAY4gC,GACL,KAApBF,EAAwB,CAC1B,MAAMG,EAAoBn+C,SAAS4D,cAAc,SACjDu6C,EAAkBp5C,YAAc,KAAKi5C,KACrCC,EAAiB3gC,YAAY6gC,GAE/BV,EAAQngC,YACNy/B,GACE,cACA,qCACAkB,EACAT,IAIJ,MAAMY,EAAa5uB,KAAqBC,GAElC4uB,EAAqBr+C,SAAS4D,cAAc,QAClDy6C,EAAmB10C,MAAMo0B,WAAa,OACtCsgB,EAAmBl8C,UAAY0mB,EAAe2G,GAC9C6uB,EAAmBt5C,YACjBsmB,GAA4BmE,KAC3B4uB,EAAa,MAAM/yB,GAA4BoE,MAA2B,IAC7EguB,EAAQngC,YACNy/B,GACE,cACA,yBAAwBqB,EAAa,oBAAsB,IAC3DC,EACAb,IAIJ,MAAMc,EAA2Bt+C,SAAS4D,cAAc,QACxD06C,EAAyB30C,MAAMo0B,WAAa,OAC5CugB,EAAyBn8C,UAAY0mB,EAAey1B,EACpDA,EAAyBv5C,YACvBsmB,GAA4BsE,KAC3ByuB,EAAa,MAAM/yB,GAA4BuE,MAAiC,IACnF6tB,EAAQngC,YACNy/B,GACE,cACA,kCAAiCqB,EAAa,oBAAsB,IACpEE,EACAd,IAIJ,MAAMe,EACJt0C,KAAK2D,IACqC,KAAvC8lB,KAAK8G,QAAU3B,MAChB5I,GAA6BC,GAAoC,GAAK,IACpE,GACAsuB,EAAex+C,SAAS4D,cAAc,QAc5C,OAbA46C,EAAa70C,MAAMo0B,WAAa,OAChCygB,EAAar8C,UAAY0mB,EAAe21B,EACxCA,EAAaz5C,YACXsmB,GAA4B8E,GAAyBouB,IACpDH,EAAa,MAAM/yB,GAA4B+E,GAAwBmuB,KAAkB,IAC5Fd,EAAQngC,YACNy/B,GACE,cACA,yBAAwBqB,EAAa,oBAAsB,IAC3DI,EACAhB,IAGGC,EA40BagB,IAGpBlB,EAAMjgC,YAAYu/B,GAAY,gBAAiB,UAC3Cz1B,EAAUsrB,OAAOiB,OACnB4J,EAAMjgC,YA10BV,WAEE,MAAMkgC,EAAkB9pB,KAAK2W,SAAS,oBAClC,2CACA,6BAEEoT,EAAUz9C,SAAS4D,cAAc,OACvC65C,EAAQt7C,UAAY,sBAEpB,MAAMu8C,EACJhrB,KAAK8G,QAAU3B,KAAuBvH,GAClCnI,EACAH,EACA21B,EACJjrB,KAAK8G,QAAU3B,KAAuBvH,GAClC7E,IACG6E,IAAsBoC,KAAK8G,QAAU3B,OACpCN,MAEJ,GACAqmB,EAAe5+C,SAASo9C,yBACxByB,EAAe7+C,SAAS4D,cAAc,QAK5C,GAJAi7C,EAAal1C,MAAMo0B,WAAa,OAChC8gB,EAAa18C,UAAY0mB,EAAe61B,EACxCG,EAAa95C,YAAcsmB,GAA4BiG,IACvDstB,EAAathC,YAAYuhC,GACP,KAAdF,EAAkB,CACpB,MAAMG,EAAgB9+C,SAAS4D,cAAc,SAC7Ck7C,EAAc/5C,YAAc,KAAK45C,KACjCC,EAAathC,YAAYwhC,GAE3BrB,EAAQngC,YACNy/B,GACE,cACA,2BACA6B,EACApB,IAIJ,MAAMuB,EACJrrB,KAAK8G,QAAU3B,KAAuBpH,GAClCtI,EACAH,EACAg2B,EACJtrB,KAAK8G,QAAU3B,KAAuBpH,GAClChF,IACGgF,IAA2BiC,KAAK8G,QAAU3B,OACzCN,MAEJ,GACA0mB,EAAoBj/C,SAASo9C,yBAC7B8B,EAAoBl/C,SAAS4D,cAAc,QAKjD,GAJAs7C,EAAkBv1C,MAAMo0B,WAAa,OACrCmhB,EAAkB/8C,UAAY0mB,EAAek2B,EAC7CG,EAAkBn6C,YAAcsmB,GAA4BoG,IAC5DwtB,EAAkB3hC,YAAY4hC,GACP,KAAnBF,EAAuB,CACzB,MAAMG,EAAqBn/C,SAAS4D,cAAc,SAClDu7C,EAAmBp6C,YAAc,KAAKi6C,KACtCC,EAAkB3hC,YAAY6hC,GAEhC1B,EAAQngC,YACNy/B,GACE,cACA,mCACAkC,EACAzB,IAIJ,MAAM4B,EACJ1rB,KAAK8G,QAAU3B,KAAuBjH,GAClCzI,EACAH,EACAq2B,EACJ3rB,KAAK8G,QAAU3B,KAAuBjH,GAClCnF,IACGmF,IAA4B8B,KAAK8G,QAAU3B,OAC1CN,MAEJ,GACA+mB,EAAmBt/C,SAASo9C,yBAC5BmC,EAAmBv/C,SAAS4D,cAAc,QAKhD,GAJA27C,EAAiB51C,MAAMo0B,WAAa,OACpCwhB,EAAiBp9C,UAAY0mB,EAAeu2B,EAC5CG,EAAiBx6C,YAAcsmB,GAA4BuG,IAC3D0tB,EAAiBhiC,YAAYiiC,GACL,KAApBF,EAAwB,CAC1B,MAAMG,EAAoBx/C,SAAS4D,cAAc,SACjD47C,EAAkBz6C,YAAc,KAAKs6C,KACrCC,EAAiBhiC,YAAYkiC,GAE/B/B,EAAQngC,YACNy/B,GACE,cACA,oCACAuC,EACA9B,IAIJ,MAAMiC,EACJ/rB,KAAK8G,QAAU3B,KAAuB9G,GAClC5I,EACAH,EACA02B,EACJhsB,KAAK8G,QAAU3B,KAAuB9G,GAClCtF,IACGsF,IACE2B,KAAK8G,QAAU3B,OAChBN,MAEJ,GACAonB,EAAwB3/C,SAASo9C,yBACjCwC,EAAwB5/C,SAAS4D,cAAc,QAKrD,GAJAg8C,EAAsBj2C,MAAMo0B,WAAa,OACzC6hB,EAAsBz9C,UAAY0mB,EAAe42B,EACjDG,EAAsB76C,YAAcsmB,GAA4B0G,IAChE4tB,EAAsBriC,YAAYsiC,GACL,KAAzBF,EAA6B,CAC/B,MAAMG,EAAyB7/C,SAAS4D,cAAc,SACtDi8C,EAAuB96C,YAAc,KAAK26C,KAC1CC,EAAsBriC,YAAYuiC,GAEpCpC,EAAQngC,YACNy/B,GACE,cACA,4CACA4C,EACAnC,IAIJC,EAAQngC,YACNy/B,GACE,cACA,wCACA/8C,SAASqgB,eACP,GAAGgL,GAA4BmG,GAAoB,SAASnG,GAC1DsG,GAAyB,OAG7B6rB,IAIJC,EAAQngC,YACNy/B,GACE,cACA,iDACA/8C,SAASqgB,eACP,GAAGgL,GAA4ByG,GAA0B,SAASzG,GAChEyG,GAA0B,OAG9B0rB,IAIJ,MAAMsC,EAAc71C,KAAK2D,IACN,GAAjB8lB,KAAKgF,UAAiB,GAAK,EAAIxI,GAChB,GAAfwD,KAAK8G,SAEDulB,EAAWhT,GACf,EACA+S,EACA3vB,IACA,GACI6vB,EAAgBjT,GACpB,EACA+S,EACA1vB,IACA,GAoCF,OAnCAqtB,EAAQngC,YACNy/B,GACE,cACA,wCACA/8C,SAASqgB,eACP,GAAGgL,GAA4B00B,QAAe10B,GAA4B20B,MAE5ExC,IAIJC,EAAQngC,YACNy/B,GACE,cACA,oCACA/8C,SAASqgB,eACP,GAAGgL,GAA4BkG,SAA6BlG,GAC1DqG,OAGJ,8BAGJ+rB,EAAQngC,YACNy/B,GACE,cACA,6CACA/8C,SAASqgB,eACP,GAAGgL,GAA4BwG,SAAmCxG,GAChE2G,OAGJ,8BAGGyrB,EAynBawC,IAGhBvsB,KAAKoB,QAAQ,gBAAgBU,iBAC/B+nB,EAAMjgC,YAAYu/B,GAAY,SAAU,WACpCz1B,EAAUsrB,OAAOkB,QACnB2J,EAAMjgC,YAxnBZ,WACE,MAAMmgC,EAAUz9C,SAAS4D,cAAc,OACvC65C,EAAQt7C,UAAY,uBAEpB,MAAM+9C,EACJxsB,KAAK8G,QAAU3B,KAAuBhJ,GAAe1G,EAAWH,EAC5Dm3B,EACJzsB,KAAK8G,QAAU3B,KAAuBhJ,GAClCpD,IACGoD,IAAgB6D,KAAK8G,QAAU3B,OAAyBN,MAE3D,GAEA6nB,EAAiBpgD,SAASo9C,yBAC1BiD,EAAiBrgD,SAAS4D,cAAc,QAK9C,GAJAy8C,EAAe12C,MAAMo0B,WAAa,OAClCsiB,EAAel+C,UAAY0mB,EAAeq3B,EAC1CG,EAAet7C,YAAcsmB,GAA4BwE,IACzDuwB,EAAe9iC,YAAY+iC,GACP,KAAhBF,EAAoB,CACtB,MAAMG,EAAkBtgD,SAAS4D,cAAc,SAC/C08C,EAAgBv7C,YAAc,KAAKo7C,KACnCC,EAAe9iC,YAAYgjC,GAE7B7C,EAAQngC,YACNy/B,GACE,cACA,yCACAqD,EACA,+BAGJ3C,EAAQngC,YACNy/B,GACE,cACA,qCACA/8C,SAASqgB,eAAegL,GAA4ByE,KACpD,+BAIJ,MAAMywB,EACJ7sB,KAAK8G,QAAU3B,KAAsC,EAAfhJ,GAClC1G,EACAH,EACAw3B,EAAmBv2C,KAAK2D,IACY,KAAvC8lB,KAAK8G,QAAU3B,MACa,GAA7B5I,GAAkC,IAE9BwwB,EACJ/sB,KAAK8G,QAAU3B,KAAsC,EAAfhJ,GAClCpD,IACkB,EAAfoD,IAAoB6D,KAAK8G,QAAU3B,OAAyBN,MAE/D,GAEAmoB,EAAuB1gD,SAASo9C,yBAChCuD,EAAuB3gD,SAAS4D,cAAc,QAKpD,GAJA+8C,EAAqBh3C,MAAMo0B,WAAa,OACxC4iB,EAAqBx+C,UAAY0mB,EAAe03B,EAChDI,EAAqB57C,YAAcsmB,GAA2C,EAAfwE,IAC/D6wB,EAAqBpjC,YAAYqjC,GACP,KAAtBF,EAA0B,CAC5B,MAAMG,EAAwB5gD,SAAS4D,cAAc,SACrDg9C,EAAsB77C,YAAc,KAAK07C,KACzCC,EAAqBpjC,YAAYsjC,GAsCnC,OApCAnD,EAAQngC,YACNy/B,GACE,cACA,kDACA2D,EACA,+BAGJjD,EAAQngC,YACNy/B,GACE,cACA,8CACA/8C,SAASqgB,eAAegL,GAAiD,EAArByE,KACpD,+BAGJ2tB,EAAQngC,YACNy/B,GACE,cACA,qCACA/8C,SAASqgB,eAAegL,GAA4Bm1B,IACpD,+BAGAzwB,IACF0tB,EAAQngC,YACNy/B,GACE,cACA,mEACA/8C,SAASqgB,eACP,GAAGgL,GAA4B0E,QAAkBC,OAEnD,+BAICytB,EAihBeoD,KAIlBntB,KAAKoB,QAAQoM,KAAK1L,iBACpB+nB,EAAMjgC,YAAYu/B,GAAY,SAAU,WACpCz1B,EAAUsrB,OAAOmB,QACnB0J,EAAMjgC,YAjhBZ,WACE,MAAMmgC,EAAUz9C,SAAS4D,cAAc,OACvC65C,EAAQt7C,UAAY,uBAEpB,MAAM2+C,EACJptB,KAAK8G,QAA2B,GAAjB9G,KAAKgF,UAAiB,GAAK,IAAMvP,EAAWH,EACvD+3B,EAAgB/gD,SAAS4D,cAAc,QAC7Cm9C,EAAcp3C,MAAMo0B,WAAa,OACjCgjB,EAAc5+C,UAAY0mB,EAAei4B,EACzCC,EAAch8C,YAAcsmB,GAA6C,GAAjBqI,KAAKgF,UAAiB,GAAK,KACnF+kB,EAAQngC,YACNy/B,GACE,QACA,iDACAgE,IAIJ,MAAMC,EACJttB,KAAK8G,QAA2B,GAAjB9G,KAAKgF,UAAiB,IAAMvP,EAAWH,EAClDi4B,EAAgBjhD,SAAS4D,cAAc,QAC7Cq9C,EAAct3C,MAAMo0B,WAAa,OACjCkjB,EAAc9+C,UAAY0mB,EAAem4B,EACzCC,EAAcl8C,YAAcsmB,GAA6C,GAAjBqI,KAAKgF,UAAiB,KAC9E+kB,EAAQngC,YACNy/B,GACE,QACA,iDACAkE,IAIJ,MAAMC,EACJxtB,KAAK8G,QAA2B,GAAjB9G,KAAKgF,UAAiB,GAAK,GAAKvP,EAAWH,EACtDm4B,EAAgBnhD,SAAS4D,cAAc,QAC7Cu9C,EAAcx3C,MAAMo0B,WAAa,OACjCojB,EAAch/C,UAAY0mB,EAAeq4B,EACzCC,EAAcp8C,YAAcsmB,GAA6C,GAAjBqI,KAAKgF,UAAiB,GAAK,IACnF+kB,EAAQngC,YACNy/B,GACE,QACA,iDACAoE,IAIJ,MAAMC,EACJ1tB,KAAK8G,QAA2B,GAAjB9G,KAAKgF,UAAiB,GAAK,IAAMvP,EAAWH,EACvDq4B,EAAgBrhD,SAAS4D,cAAc,QAW7C,OAVAy9C,EAAc13C,MAAMo0B,WAAa,OACjCsjB,EAAcl/C,UAAY0mB,EAAeu4B,EACzCC,EAAct8C,YAAcsmB,GAA6C,GAAjBqI,KAAKgF,UAAiB,GAAK,KACnF+kB,EAAQngC,YACNy/B,GACE,QACA,iDACAsE,IAGG5D,EAsde6D,KAItB/D,EAAMjgC,YAAYu/B,GAAY,WAAY,aACtCz1B,EAAUsrB,OAAOoB,UACnByJ,EAAMjgC,YArdV,WACE,MAAMmgC,EAAUz9C,SAAS4D,cAAc,OACvC65C,EAAQt7C,UAAY,yBAEpB,MAAMo/C,EAAkBt3C,KAAKkE,MAC3BulB,KAAKia,gBACHzb,GACEwB,KAAKka,aACLhd,IACC8C,KAAKwU,YAAY,mBAAqBxU,KAAKwR,IAAI,iBAC5C1U,GACA,KAGVitB,EAAQngC,YACNy/B,GACE,cACA,6BACA/8C,SAASqgB,eACP,GAAGgL,GAA4BqI,KAAKgK,eAAerS,GAA4Bk2B,MAEjF,+BAIJ,MAAMC,EAAav3C,KAAK6D,IACtB,EACA4lB,KAAKslB,oBAAoBuI,EAAkB,IACxCrvB,GACCwB,KAAKka,aACLhd,IAEE8C,KAAKwU,YAAY,mBAAqBxU,KAAKwR,IAAI,kBAC3C1U,GAGFA,GACA,KAEJixB,EAAkBzhD,SAASo9C,yBACjCqE,EAAgBnkC,YAAYtd,SAASqgB,eAAegL,GAA4Bm2B,KAChF,MAAME,EAAmB1hD,SAAS4D,cAAc,SAChD89C,EAAiB38C,YAAc,KAAK0nB,GAClC+0B,EAAarvB,GACb,MAEFsvB,EAAgBnkC,YAAYokC,GAC5BjE,EAAQngC,YACNy/B,GACE,cACA,wBACA0E,EACA,gCAIJhE,EAAQngC,YACNy/B,GACE,cACA,6BACA/8C,SAASqgB,eACP,GAAGgL,GAA4BqI,KAAKiuB,oBAAoBt2B,GACtDk2B,EAAkB7tB,KAAKgK,SAAWhK,KAAKiuB,kBAG3C,oCAIJlE,EAAQngC,YACNy/B,GACE,QACA,6CACA/8C,SAASqgB,eAAegL,GAA4BgF,GAAkB,MAI1E,MAAMuxB,EAAW91B,OAAO1E,EAAUsqB,qBAClC,IAAK5lB,OAAO9I,MAAM4+B,GAAW,CAC3B,MAAMC,EACJD,EACA33C,KAAKkE,MAAMulB,KAAKia,gBAAgBja,KAAKka,aAAela,KAAK2T,gBACvDwa,EAAoB,IACtBpE,EAAQngC,YACNy/B,GACE,QACA,iDACA/8C,SAASqgB,eAAegL,GAA4Bw2B,MAGxDpE,EAAQngC,YACNy/B,GACE,QACA,iDACA/8C,SAASqgB,eACPoM,GAAWo1B,EAAoBxxB,QAOzC,MAAMyxB,EAp5BR,SAAoBC,GAElB,IAAIC,EAAStuB,KAAKgF,UAElB2E,KAE2C,IAAvC9J,GAAY,gBAAgBkB,SAC9BlB,GAAY,wBAAwBkB,OAAS,EAC7ClB,GAAY,yBAAyBkB,OAAS,EAC9ClB,GAAY,mBAAmBkB,OAAS,EACxClB,GAAY,0BAA0BkB,OAAS,EAC/ClB,GAAY,gBAAgBkB,OAAS,EAErCuU,KAEAgZ,EAAS/yB,GAEToO,MAGEnL,IAA0B,KAAS6W,GAAO,aAC1C7W,IAA0B,KAAY6W,GAAO,YAC7C7W,IAA0B,MAAe6W,GAAO,gBAChD7W,IAA0B,MAAkB6W,GAAO,YACnD7W,IAA0B,MAAqB6W,GAAO,iBACtD7W,IAA0B,MAC5B6W,GAAO,kBACL7W,IAA0B,MAC5B6W,GAAO,iBACL7W,IAA0B,MAC5B6W,GAAO,cACL7W,IAA0B,MAC5B6W,GAAO,iBACL7W,IAA0B,MAC5B6W,GAAO,uBACL7W,IAA0B,MAC5B6W,GAAO,mBACL7W,IAA0B,MAC5B6W,GAAO,uBACL7W,IAA0B,MAC5B6W,GAAO,wBACL7W,IAA0B,MAC5B6W,GAAO,mBAEP7W,IAA0B,MAE1B6W,GAAO,WAEP7W,IACA,MAEA6W,GAAO,iBAEP7W,IACA,MAEA6W,GAAO,iCAETxV,GAAY,wBAAwBkB,OAAS,EAC7ClB,GAAY,yBAAyBkB,OAAS,EAC9ClB,GAAY,mBAAmBkB,OAAS,EACxClB,GAAY,0BAA0BkB,OAAS,EAC/ClB,GAAY,gBAAgBkB,OAAS,EAErChG,GAAcszB,EAEd,MAAM7V,EAAwB3d,GAE9Bya,KAEAkC,KAEIgB,IAA0B3d,IAC5Bya,KAGF,MAAMiZ,EAAWhzB,GAAe+yB,EAKhC,OAFAvzB,GAAciF,KAAKgK,SAEZukB,EAm0BYC,CAAWX,GACxBY,EAAYniD,SAASo9C,yBAC3B+E,EAAU7kC,YAAYtd,SAASqgB,eAAegL,GAA4By2B,KAC1E,MAAMxiB,EAAWr1B,KAAKC,MAAO43C,EAAapuB,KAAKgF,UAAa,KAC5D,GAAI5M,OAAOC,SAASuT,IAA0B,IAAbA,EAAgB,CAC/C,MAAM8iB,EAAapiD,SAAS4D,cAAc,SAC1Cw+C,EAAWr9C,YAAc,KAAKu6B,EAAW,kBACzC6iB,EAAU7kC,YAAY8kC,GAExB3E,EAAQngC,YACNy/B,GACE,cACA,qBACAoF,EACA,4BAIJ,MAAME,EAAkBp4C,KAAKkE,MAAMulB,KAAKia,gBAAgBja,KAAKka,eACvD0U,EAAWr4C,KAAKkE,MACpBulB,KAAKia,gBAAgBja,KAAKka,aAAela,KAAK2T,gBAE1Ckb,EAAUD,EAAWD,EAC3B,IAAK3uB,KAAKwR,IAAI,eAAgB,CAC5B,IAAIsd,EAAS,EAAKF,EAAW,GACzBE,EAAS,IAAGA,GAAU,IAC1B,MAAMC,EAAaF,EAAUC,EACvBE,EAAaJ,EAAWE,EACxBG,EAAQ3iD,SAASo9C,yBACvBuF,EAAMrlC,YACJtd,SAASqgB,eACP,GAAGqiC,EAAWv2B,sBAAsBs2B,EAAWt2B,sBAAsBq2B,OAGzE/E,EAAQngC,YACNy/B,GAAa,QAAS,qCAAsC4F,IAIhE,IAAKjvB,KAAKwR,IAAI,gBAAiB,CAC7B,IAAI0d,EAAW,IAAON,EAAW,IAC7BM,EAAW,IAAGA,GAAY,KAC9B,MAAMC,EAAeN,EAAUK,EACzBE,EAAeR,EAAWM,EAC1BG,EAAU/iD,SAASo9C,yBACzB2F,EAAQzlC,YACNtd,SAASqgB,eACP,GAAGyiC,EAAa32B,sBAAsB02B,EAAa12B,sBAAsBy2B,OAG7EnF,EAAQngC,YACNy/B,GAAa,QAAS,sCAAuCgG,IAIjE,IAAKrvB,KAAKwR,IAAI,gBAAiB,CAC7B,IAAI8d,EAAc,OAAUV,EAAW,IACnCU,EAAc,IAAGA,GAAe,KACpC,MAAMC,EAAkBV,EAAUS,EAC5BE,EAAkBZ,EAAWU,EAC7BG,EAAanjD,SAASo9C,yBAC5B+F,EAAW7lC,YACTtd,SAASqgB,eACP,GAAG6iC,EAAgB/2B,sBAAsB82B,EAAgB92B,sBAAsB62B,OAGnFvF,EAAQngC,YACNy/B,GAAa,QAAS,sCAAuCoG,IAIjE,OAAO1F,EAwSa2F,IAGhB1vB,KAAKiF,UAAY,IACnB4kB,EAAMjgC,YAAYu/B,GAAY,YAAa,UACvCz1B,EAAUsrB,OAAOqB,OAAO,CAC1B,MAAMsP,EAAarjD,SAASo9C,yBAC5BiG,EAAW/lC,YACTtd,SAASqgB,eACP,GAAGgL,GAA4BuF,SAA0BvF,GACvDwF,SAIN,MAAMyyB,EAAUtjD,SAAS4D,cAAc,KACvC0/C,EAAQv+C,YAAc,iBACtBu+C,EAAQnhD,UAAY,SACpBmhD,EAAQhK,QAAU,WAChB4B,MAEFmI,EAAW/lC,YAAYgmC,GACvB/F,EAAMjgC,YACJy/B,GACE,QACA,kCACAsG,IAGJ,MAAME,EAAiBvjD,SAASo9C,yBAChCmG,EAAejmC,YACbtd,SAASqgB,eAAe,GAAGgL,GAA4ByF,GAAsB,SAE/E,MAAM0yB,EAAcxjD,SAAS4D,cAAc,KAC3C4/C,EAAYz+C,YAAc,qBAC1By+C,EAAYrhD,UAAY,SACxBqhD,EAAYlK,QAAU,WACa,OAA7BxoB,GAAsB,KACxB4C,KAAKkF,UAAU9H,GAAsB,IAAIqqB,GAAK,IAElDoI,EAAejmC,YAAYkmC,GAC3BjG,EAAMjgC,YACJy/B,GACE,QACA,6DAC+B,OAA7BjsB,GAAsB,GAClBA,GAAsB,GACtB,UAENyyB,IASR,GAHAhG,EAAMjgC,YAvVR,WACE,MAAMmgC,EAAUz9C,SAAS4D,cAAc,OACvC65C,EAAQt7C,UAAY,uBAEpB,IAAIshD,GAAW,EACf,MAAMC,EAA0B,GAChCx+C,OAAO6C,KAAK8iC,IAAclU,SAASj1B,IAC5BgyB,KAAKwR,IAAI2F,GAAanpC,MACzBgiD,EAAwBlgD,KAAKqnC,GAAanpC,IAC1C+hD,GAAW,MAGf,MAAME,EAA0B,GAChCz+C,OAAO6C,KAAK+iC,IAAenU,SAASj1B,IAC7BgyB,KAAKwR,IAAI4F,GAAcppC,MAC1BiiD,EAAwBngD,KAAKsnC,GAAcppC,IAC3C+hD,GAAW,MAGf,MAAMG,EAA0B,GAChC1+C,OAAO6C,KAAKgjC,IAAYpU,SAASj1B,IAC1BgyB,KAAKwR,IAAI6F,GAAWrpC,MACvBkiD,EAAwBpgD,KAAKunC,GAAWrpC,IACxC+hD,GAAW,MAGf,MAAMI,EAAoB,GAC1B3+C,OAAO6C,KAAK2rB,KAAKowB,UAAUntB,SAASj1B,IAC7BgyB,KAAKwU,YAAYxU,KAAKowB,SAASpiD,MAClCmiD,EAAkBrgD,KAAKkwB,KAAKowB,SAASpiD,IACrC+hD,GAAW,MAGf,MAAMM,EAAkB,GACxB7+C,OAAO6C,KAAK2rB,KAAKswB,cAAcrtB,SAASj1B,IACjCgyB,KAAKwU,YAAYxU,KAAKswB,aAAatiD,MACtCqiD,EAAgBvgD,KAAKkwB,KAAKswB,aAAatiD,IACvC+hD,GAAW,MAGf,MAAMQ,EAAoB,GAC1B/+C,OAAO6C,KAAKijC,IAAYrU,SAASj1B,IAC1BgyB,KAAKwU,YAAY8C,GAAWtpC,MAC/BuiD,EAAkBzgD,KAAKwnC,GAAWtpC,IAClC+hD,GAAW,MAGf,MAAMxb,EACJvU,KAAKwU,YAAY,mBAAqBxU,KAAKwR,IAAI,iBAC3Cgf,EAAUxwB,KAAKwR,IAAI,eAEzB,IAAoB,cAAhBxR,KAAK4R,QAA0Bme,GAAYxb,GAAUic,KACvDzG,EAAQngC,YAAYu/B,GAAY,kBAAmB,QAC/Cz1B,EAAUsrB,OAAOsB,KAAK,CACxB,GAAuC,IAAnC0P,EAAwB/hD,OAAc,CACxC87C,EAAQngC,YACNy/B,GACE,QACA,gCACAE,GAAcyG,KAGlB,IAAIS,EAAoB,IAIxB,GAHIzwB,KAAK8L,UAAU,oBAAmB2kB,EAAoB,IACtDzwB,KAAKwR,IAAI,gBAAeif,GAAqB,IACjDA,GAAqB,EAAIzwB,KAAK0wB,eAC1B1wB,KAAKiB,OAAQ,CACf,MAAMc,EAAS/B,KAAKiB,OAAO,WACZ,IAAXc,EAAc0uB,GAAqB,GACnB,IAAX1uB,EAAc0uB,GAAqB,IACxB,IAAX1uB,IAAc0uB,GAAqB,KAE9C1G,EAAQngC,YACNy/B,GACE,QACA,4DACA/8C,SAASqgB,eACP,GAAGgL,GAAsD,KAAzB,EAAI84B,UAAgC94B,GAClC,KAA/B,EAAwB,GAApB84B,UAMf,GAAuC,IAAnCR,EAAwBhiD,OAAc,CACxC87C,EAAQngC,YACNy/B,GACE,QACA,gCACAE,GAAc0G,KAGlB,IAAIU,EAAoB,GAIxB,GAHI3wB,KAAK8L,UAAU,iBAAgB6kB,EAAoB,IACvDA,GAAqB,EAAI3wB,KAAK0wB,eAC1B1wB,KAAKwR,IAAI,cAAamf,GAAqB,KAC3C3wB,KAAKiB,OAAQ,CACf,MAAMc,EAAS/B,KAAKiB,OAAO,WACZ,IAAXc,EAAc4uB,GAAqB,GACnB,IAAX5uB,EAAc4uB,GAAqB,IACxB,IAAX5uB,IAAc4uB,GAAqB,KAE9C5G,EAAQngC,YACNy/B,GACE,QACA,6CACA/8C,SAASqgB,eACP,GAAGgL,GAAsD,KAAzB,EAAIg5B,UAKL,IAAnCT,EAAwBjiD,QAC1B87C,EAAQngC,YACNy/B,GACE,QACA,gCACAE,GAAc2G,KAIpB,MAAMU,EAAc,SAAUC,GAC5B,IAAIC,EAAcD,GAAoB,EAAI7wB,KAAK0wB,gBAI/C,GAHI1wB,KAAK8L,UAAU,0BAAyBglB,GAAe,IACvD9wB,KAAKwR,IAAI,cAAasf,GAAe,IACrC9wB,KAAKwR,IAAI,eAAcsf,GAAe,IACtC9wB,KAAKiB,OAAQ,CACf,MAAMc,EAAS/B,KAAKiB,OAAO,WACZ,IAAXc,EAAc+uB,GAAe,GACb,IAAX/uB,EAAc+uB,GAAe,IAClB,IAAX/uB,IAAc+uB,GAAe,KAGxC,MAAMC,EAAgB,EAAID,EACpBE,EAAehxB,KAAKowB,SAASniD,OAASkiD,EAAkBliD,OACxDgjD,EACJjxB,KAAKswB,aAAariD,OAASoiD,EAAgBpiD,OACvCijD,EACY,GAAhBH,GAAuB,EAAIC,EAAehxB,KAAKowB,SAASniD,QACpDkjD,EAEJ,GADAJ,GAEC,EAAIE,EAAmBjxB,KAAKswB,aAAariD,QAKtCmjD,EAHY,GAAhBL,GAAuBC,EAAehxB,KAAKowB,SAASniD,QAEpC,GAAhB8iD,GAAuBE,EAAmBjxB,KAAKswB,aAAariD,QAM9D,MAAO,CAACijD,EAHI,GAAVE,GAAiB,EAAIJ,EAAehxB,KAAKowB,SAASniD,QAGvBkjD,EADjB,GAAVC,GAAiB,EAAIH,EAAmBjxB,KAAKswB,aAAariD,UAG7B,IAA7BkiD,EAAkBliD,SACpB87C,EAAQngC,YACNy/B,GACE,QACA,oCACAE,GAAc4G,KAGlBpG,EAAQngC,YACNy/B,GACE,QACA,yDACA/8C,SAASqgB,eACP,GAAGgL,GAAmD,IAAvBi5B,EAAY,KAAM,UAAgBj5B,GACzC,IAAtBi5B,EAAY,IAAK,WAMI,IAA3BP,EAAgBpiD,SAClB87C,EAAQngC,YACNy/B,GACE,QACA,kCACAE,GAAc8G,KAGlBtG,EAAQngC,YACNy/B,GACE,QACA,6DACA/8C,SAASqgB,eACP,GAAGgL,GAAmD,IAAvBi5B,EAAY,KAAM,UAAgBj5B,GACzC,IAAtBi5B,EAAY,IAAK,WAMM,IAA7BL,EAAkBtiD,QACpB87C,EAAQngC,YACNy/B,GACE,QACA,kCACAE,GAAcgH,KAKA,cAAhBvwB,KAAK4R,QACPmY,EAAQngC,YACNy/B,GACE,QACA,kBACA/8C,SAASqgB,eAAegL,GAA4BkF,OAGtD0X,GACFwV,EAAQngC,YACNy/B,GACE,cACA,wBACA/8C,SAASqgB,eAAegL,GAA4BmF,KACpD,6BAIF0zB,GACFzG,EAAQngC,YACNy/B,GACE,QACA,yBACA/8C,SAASqgB,eACJpW,KAAKC,MAA2B,KAApBomB,GAAe,IAAc,IAA5C,OAOZ,OAAOmtB,EA4GWsH,IAElBxH,EAAMjgC,YAAYu/B,GAAY,gBAAiB,SAC3Cz1B,EAAUsrB,OAAOuB,KAAM,CAsBzB,GArBAsJ,EAAMjgC,YACJy/B,GACE,QACA,oCACE5yB,EAAY/C,EAAU2gB,YAAc,GAChC,GAAG5d,EAAY/C,EAAU2gB,sBACzB5d,EAAY/C,EAAU2gB,YAAc,IACV,IAAzB3gB,EAAU2gB,WAAmB,UAAY,eAEhD/nC,SAASqgB,eAAegL,GAA4BkN,KAAU,MAGlEglB,EAAMjgC,YACJy/B,GACE,QACA,0CACE3yB,EAAWhD,EAAU+gB,iBACQ,IAA5B/gB,EAAU+gB,cAAsB,UAAY,cAC/CnoC,SAASqgB,eAAegL,GAA4B6F,GAAoB,MAGxEwC,KAAKwR,IAAI,mBAAoB,CAC/B,MAAM2G,EAAW,GACjB3mC,OAAO6C,KAAK6iC,IAAUjU,SAASj1B,IACxBgyB,KAAKwR,IAAI0F,GAASlpC,KACrBmqC,EAASroC,KAAKonC,GAASlpC,OAGH,IAApBmqC,EAASlqC,QACX47C,EAAMjgC,YACJy/B,GACE,QACA,+BACAE,GAAcpR,KAatB,GATIzkB,EAAUuqB,cACZ4L,EAAMjgC,YACJy/B,GACE,QACA,wBACA/8C,SAASqgB,eAAegL,GAA4BqI,KAAKsxB,uBAI3DtxB,KAAK0Q,MAAMC,SAAU,CACvB,MAAM7K,EAAQx5B,SAAS4D,cAAc,QACrC41B,EAAMvE,GAAK,uBACXuE,EAAMiL,UAAY/Q,KAAKgR,QACV,GAAXhR,KAAKiL,KAAYjL,KAAKkkB,SAAW,EAAIlkB,KAAKiR,GAAgB,GAAXjR,KAAKiL,MACpD,GAEF4e,EAAMjgC,YACJy/B,GAAa,QAAS,qBAAsBvjB,KAKlD1mB,EAAE,QAAQ6iC,aAAa4H,EAAOzqC,EAAE,QAAQilB,WAAW,IAE/C3Q,EAAUmqB,iBArjJdz+B,EAAE,QAAQilB,WAAWpB,SAASsuB,IAC5B,GAAIA,EAAYhhB,SAAS,GACvB,GACwC,aAAtCghB,EAAYhhB,SAAS,GAAG/kB,WACxBkS,GACA,CACA,MAAM8zB,EACJ9zB,GAA6BhvB,MAAM,IAAIZ,OAAO,MAAO,MAAQ,GAC1DG,OAAS,EACR41C,EAAQv3C,SAAS4D,cAAc,OACrC2zC,EAAMtiB,GAAK,iCACXsiB,EAAMp1C,UAAY,UAClB,MAAMgjD,EAAYnlD,SAAS4D,cAAc,OACzCuhD,EAAUjmC,UAAY,qCAAqCgmC,KACzDxxB,KAAK0xB,iBAAiBzjD,WACnBsI,KAAKkE,MACP+2C,EAA0BxxB,KAAK0xB,iBAAiBzjD,OAAU,SAE7D41C,EAAMj6B,YAAY6nC,GAClBF,EAAY3nC,YAAYi6B,GACxB,MAAM/M,EAAWxqC,SAAS4D,cAAc,OACxC4mC,EAASroC,UAAY,mBACrBqoC,EAAStrB,UAAYkS,GACrB6zB,EAAY3nC,YAAYktB,QACnB,GAA0C,aAAtCya,EAAYhhB,SAAS,GAAG/kB,UAA0B,CAC3D,GAAIiS,GAAsB,CACxB,MAAMk0B,EACJl0B,GAAqB/uB,MAAM,IAAIZ,OAAO,MAAO,MAAQ,GAAGG,OAAS,EAC7D41C,EAAQv3C,SAAS4D,cAAc,OACrC2zC,EAAMtiB,GAAK,yBACXsiB,EAAMp1C,UAAY,UAClB,MAAMgjD,EAAYnlD,SAAS4D,cAAc,OACzCuhD,EAAUjmC,UAAY,mCAAmCmmC,KACvD3xB,KAAKgJ,eAAe,IAAI/6B,OAAS+xB,KAAKgJ,eAAe4oB,KAAK3jD,WACvDsI,KAAKkE,MACPk3C,GACE3xB,KAAKgJ,eAAe,IAAI/6B,OACvB+xB,KAAKgJ,eAAe4oB,KAAK3jD,QAC3B,SAEJ41C,EAAMj6B,YAAY6nC,GAClBF,EAAYtP,aAAa4B,EAAO0N,EAAYltB,WAAW,IACvD,MAAMyS,EAAWxqC,SAAS4D,cAAc,OACxC4mC,EAASroC,UAAY,mBACrBqoC,EAAStrB,UAAYiS,GACrB8zB,EAAYtP,aACVnL,EACAxqC,SAASuiC,eAAe,0BAA0BgjB,aAGtD,GAAIl0B,GAA6B,CAC/B,MAAMm0B,EACJn0B,GAA4BjvB,MAAM,IAAIZ,OAAO,MAAO,MAAQ,GACzDG,OAAS,EACR41C,EAAQv3C,SAAS4D,cAAc,OACrC2zC,EAAMtiB,GAAK,gCACXsiB,EAAMp1C,UAAY,UAClB,MAAMgjD,EAAYnlD,SAAS4D,cAAc,OACzCuhD,EAAUjmC,UAAY,mCAAmCsmC,KACvD9xB,KAAKgJ,eAAe0c,OAAOz3C,WACxBsI,KAAKkE,MACPq3C,EAAwB9xB,KAAKgJ,eAAe0c,OAAOz3C,OAAU,SAEhE41C,EAAMj6B,YAAY6nC,GAClBF,EAAY3nC,YAAYi6B,GACxB,MAAM/M,EAAWxqC,SAAS4D,cAAc,OACxC4mC,EAASroC,UAAY,mBACrBqoC,EAAStrB,UAAYmS,GACrB4zB,EAAY3nC,YAAYktB,QAyiJlC,MAAMib,GAAe,CACnB9S,WAAY,cACZC,YAAa,cACbC,aAAc,eACdS,QAAS,mCACTC,WAAY,aACZC,SAAU,WACVC,cAAe,iBAIXiS,GAA2B,CAC/B5S,oBAAqB,wBACrBC,eAAgB,gBAChBC,eAAgB,iBAChBC,gBAAiB,iBACjBC,iBAAkB,cAClBC,iBAAkB,iBAClBC,kBAAmB,WACnBC,qBAAsB,qBAwBxB,SAASsS,GAAiBhP,EAAQ5pB,GAChC,MAAMiL,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAI71B,UAAY,QAEhB61B,EAAIruB,MAAM6U,QAAU,MACpBwZ,EAAIruB,MAAMuvB,SAAW,OACrBlB,EAAI1a,YAAYtd,SAASqgB,eAAe,GAAG0M,OAC3C,MAAM+vB,EAAO98C,SAAS4D,cAAc,QAiBpC,OAhBAk5C,EAAKnzC,MAAM+U,OAAS,UACpBo+B,EAAKnzC,MAAMqV,QAAU,eACrB89B,EAAKnzC,MAAMmG,OAAS,OACpBgtC,EAAKnzC,MAAMkG,MAAQ,OACnBitC,EAAKnzC,MAAMsU,aAAe,MAC1B6+B,EAAKnzC,MAAMuW,UAAY,SACvB48B,EAAKnzC,MAAM4U,gBAAkB,UAC7Bu+B,EAAKnzC,MAAM2F,MAAQ,QACnBwtC,EAAKnzC,MAAMuvB,SAAW,OACtB4jB,EAAKnzC,MAAMyvB,cAAgB,SAC3B0jB,EAAK/3C,YAAcqiB,EAAUsrB,OAAOiE,GAAU,IAAM,IACpDmG,EAAKxD,QAAU,WACbsD,GAAajG,GACbjjB,KAAK8S,cAEPxO,EAAI1a,YAAYw/B,GACT9kB,EAQT,SAAS4tB,GAAiBjP,GACxB,MAAM3e,EAAMh4B,SAAS4D,cAAc,OAEnC,GADAo0B,EAAI71B,UAAY,UACkB,SAA9BuzC,GAAaiB,GAAQ50C,KAAiB,CACxC,MAAMwI,EAAIvK,SAAS4D,cAAc,KAC7B8xC,GAAaiB,GAAQrB,QAAgC,IAAtBluB,EAAUuvB,GAC3CpsC,EAAEpI,UAAY,aAEdoI,EAAEpI,UAAY,SAEhBoI,EAAE0qB,GAAKynB,GAA6B/F,EACpCpsC,EAAE+uC,QAAU,YAr6ChB,SAAsB3C,GACpBvvB,EAAUuvB,IAAW,EAEjBvvB,EAAUuvB,KAAYjB,GAAaiB,GAAQvB,MAAMzzC,QACnDylB,EAAUuvB,GAAU,EAChBjB,GAAaiB,GAAQrB,SACvBxiC,EAAE4pC,GAA6B/F,GAAQx0C,UAAY,eAChD2Q,EAAE4pC,GAA6B/F,GAAQx0C,UAAY,cAEjB,IAA9BuzC,GAAaiB,GAAQlwC,MAC9BivC,GAAaiB,GAAQlwC,OAGvBqM,EAAE4pC,GAA6B/F,GAAQz3B,UACrCw2B,GAAaiB,GAAQvB,MAAMhuB,EAAUuvB,IACvC0D,KAu5CIwL,CAAalP,IAEfpsC,EAAExF,YAAc2wC,GAAaiB,GAAQvB,MAAMhuB,EAAUuvB,IACrD3e,EAAI1a,YAAY/S,GAChB,MAAM6qC,EAAQp1C,SAAS4D,cAAc,SAGrC,OAFAwxC,EAAMrwC,YAAc2wC,GAAaiB,GAAQtB,KACzCrd,EAAI1a,YAAY83B,GACTpd,EAET,GAAkC,QAA9B0d,GAAaiB,GAAQ50C,KAAgB,CACvC,MAAMo1C,EAASn3C,SAAS4D,cAAc,OACtCuzC,EAAOh1C,UAAY,YACnB,MAAMo1C,EAAQv3C,SAAS4D,cAAc,OACrC2zC,EAAM5tC,MAAMm8C,MAAQ,OACpBvO,EAAMr4B,UAAYw2B,GAAaiB,GAAQtB,KACvC8B,EAAO75B,YAAYi6B,GACnB,MAAMwO,EAAU/lD,SAAS4D,cAAc,OACvCmiD,EAAQ9wB,GAAK,SAAS0hB,SACtBoP,EAAQp8C,MAAMm8C,MAAQ,QACtBC,EAAQ7mC,UAAY,GAAGkI,EAAUuvB,MACjCQ,EAAO75B,YAAYyoC,GACnB,MAAMC,EAAShmD,SAAS4D,cAAc,SACtCoiD,EAAO7jD,UAAY,SACnB6jD,EAAO/wB,GAAK,SAAS0hB,IACrBqP,EAAOr8C,MAAMwU,MAAQ,OACrB6nC,EAAOjkD,KAAO,QACdikD,EAAOp4C,IAAM,IACbo4C,EAAOl4C,IAAM,MACbk4C,EAAOC,KAAO,IACdD,EAAOlhD,MAAQsiB,EAAUuvB,GACzBqP,EAAOhgC,QAAU,WACf22B,GAAmBhG,IAErBqP,EAAOE,SAAW,WAChBvJ,GAAmBhG,IAErBQ,EAAO75B,YAAY0oC,GACnBhuB,EAAI1a,YAAY65B,GAChB,MAAM5sC,EAAIvK,SAAS4D,cAAc,KAYjC,OAXA2G,EAAEpI,UAAY,SACdoI,EAAE+uC,QAAU,WACVzC,GACEzvB,EAAUuvB,EAAOruC,QAAQ,SAAU,aACnCquC,EAAOruC,QAAQ,SAAU,SACzBquC,GACA,IAGJpsC,EAAExF,YAAc,aAChBizB,EAAI1a,YAAY/S,GACTytB,EAET,GAAkC,QAA9B0d,GAAaiB,GAAQ50C,KAAgB,CACvC,MAAM+6C,EAAO98C,SAAS4D,cAAc,QACpCk5C,EAAK36C,UAAY,SACjB26C,EAAK/3C,YAAc,GAAG2wC,GAAaiB,GAAQvB,SAC3Cpd,EAAI1a,YAAYw/B,GAChB,MAAMqJ,EAAQnmD,SAAS4D,cAAc,SACrCuiD,EAAMlxB,GAAKynB,GAA6B/F,EACxCwP,EAAMhkD,UAAY,SAClBgkD,EAAMpkD,KAAO,OACbokD,EAAMC,UAAW,EACjBD,EAAM7gD,aAAa,QAAS8hB,EAAUuvB,IACtCwP,EAAMx8C,MAAMkG,MAAQ,QACpBmoB,EAAI1a,YAAY6oC,GAChBnuB,EAAI1a,YAAYtd,SAASqgB,eAAe,MACxC,MAAMgmC,EAAcrmD,SAAS4D,cAAc,SAC3CyiD,EAAYpxB,GAAK,GAAGynB,GAA6B/F,UACjD0P,EAAYlkD,UAAY,SACxBkkD,EAAYtkD,KAAO,OACnBskD,EAAY/gD,aAAa,QAAS8hB,EAAUuvB,IAC5C,MAAMpsC,EAAIvK,SAAS4D,cAAc,KACjC2G,EAAEpI,UAAY,SACdoI,EAAE+uC,QAAU,WACV5lB,KAAK4yB,OAAOD,EAAYE,UAAW,CACjC,CACE,OACA,WACEn/B,EAAU,GAAGuvB,KAAY7jC,EAAE,WAAgC6jC,WAAgB7xC,MAC3Eu1C,KACA3mB,KAAK8yB,cACL9yB,KAAK8S,eAGT,YAGJj8B,EAAExF,YAAc,OAChBizB,EAAI1a,YAAY/S,GAChB,MAAM6qC,EAAQp1C,SAAS4D,cAAc,SAGrC,OAFAwxC,EAAMrwC,YAAc2wC,GAAaiB,GAAQtB,KACzCrd,EAAI1a,YAAY83B,GACTpd,EAET,GAAkC,UAA9B0d,GAAaiB,GAAQ50C,KAAkB,CACzCi2B,EAAI71B,UAAY,GAChB,IAAK,IAAIT,EAAI,EAAGA,EAAI8nB,EAAO7nB,OAAQD,IAAK,CACtC,MAAM+kD,EAAWzmD,SAAS4D,cAAc,OACxC6iD,EAAStkD,UAAY,UACrB,MAAMgkD,EAAQnmD,SAAS4D,cAAc,SACrCuiD,EAAMlxB,GAAKzL,EAAO9nB,GAClBykD,EAAMx8C,MAAMkG,MAAQ,OACpBs2C,EAAM7gD,aAAa,QAAS8hB,EAAUoC,OAAOA,EAAO9nB,KACpD+kD,EAASnpC,YAAY6oC,GAQrB,IAAI1lD,GAAQ0lD,EAAO,CAAErkC,MAAM,EAAMnQ,SAAU,QAAS4P,QAPrC,WACb6F,EAAUoC,OAAOppB,KAAKmD,cAAc0xB,IAAM70B,KAAK8gB,cAC/C2zB,KACAwF,KACA3mB,KAAK8S,gBAIP,MAAM4O,EAAQp1C,SAAS4D,cAAc,SACrCwxC,EAAMrwC,YAAc2wC,GAAalsB,OAAO6rB,KAAK7rB,EAAO9nB,IACpD+kD,EAASnpC,YAAY83B,GACrBpd,EAAI1a,YAAYmpC,GAGlB,OADAhK,KAAkBz7C,OACXg3B,EAET,GAAkC,aAA9B0d,GAAaiB,GAAQ50C,KAAqB,CAC5C,MAAM+6C,EAAO98C,SAAS4D,cAAc,QACpCk5C,EAAK36C,UAAY,SACjB26C,EAAK/3C,YAAc,GAAG2wC,GAAaiB,GAAQvB,SAC3Cpd,EAAI1a,YAAYw/B,GAChB,MAAMqJ,EAAQnmD,SAAS4D,cAAc,SACrCuiD,EAAMlxB,GAAKynB,GAA6B/F,EACxCwP,EAAMhkD,UAAY,SAClBgkD,EAAMpkD,KAAO,SACbokD,EAAMrhD,MAAQsiB,EAAUuvB,GACxBwP,EAAMv4C,IAAM8nC,GAAaiB,GAAQ/oC,IACjCu4C,EAAMr4C,IAAM4nC,GAAaiB,GAAQ7oC,IACjCq4C,EAAMngC,QAAU,WACV5lB,KAAK0E,MAAQ1E,KAAK0N,KAAKvL,QAAQiqB,IAAI,QACvCpF,EAAUuvB,GAAUv2C,KAAK0E,MACzBu1C,KACA5F,MAEFzc,EAAI1a,YAAY6oC,GAChBnuB,EAAI1a,YAAYtd,SAASqgB,eAAe,MACxC,MAAM+0B,EAAQp1C,SAAS4D,cAAc,SAGrC,OAFAwxC,EAAMrwC,YAAc2wC,GAAaiB,GAAQtB,KACzCrd,EAAI1a,YAAY83B,GACTpd,EAET,OAAOA,EAyTT,SAAS0uB,GAAU3/C,GACjB,GAA2B,IAAvBqgB,EAAUyT,UAA4C,IAA1BzT,EAAU0T,YAAmB,CAC3D,MAAM6rB,EAAiBn4C,SAASsE,EAAE,cAAcnJ,MAAMmG,OAAQ,IAC9D4jB,KAAKkzB,QAAUD,EACf5/C,IACA2sB,KAAKkzB,QAAUD,OAEf5/C,IAuBJ,SAAS8/C,KAEPj+B,EAAgBiD,SAAWA,SAE3BA,SAAWR,GAEXzC,EAAgBogB,eAAiBtV,KAAKsV,eACtCtV,KAAKsV,eAAiB,WACpBpgB,EAAgBogB,iBAChBja,GAAY,EACZ6E,GAAcsT,KAAKC,MACnB1T,GAAiByT,KAAKC,OAGxBve,EAAgBqV,QAAU,GAC1BrV,EAAgBqV,QAAQ/kB,KAAOwa,KAAKuK,QAAQ/kB,KAC5C0P,EAAgBqV,QAAQ6oB,QAAU,IAAI3jD,SACpC,UAAUuwB,KAAKuK,QAAQ/kB,KAAK/O,WAAW5B,MAAM,QAAQ6C,KAAK,kBAD1B,GAGlCsoB,KAAKuK,QAAQ/kB,KAAO,SAAU6tC,EAAMh6B,EAAMvI,GACxCoE,EAAgBqV,QAAQ6oB,QAAQC,EAAMh6B,EAAMvI,IAG9CoE,EAAgBqV,QAAQ+oB,OAAStzB,KAAKuK,QAAQ+oB,OAC9Cp+B,EAAgBqV,QAAQgpB,UAAY,IAAI9jD,SACtC,UAAUuwB,KAAKuK,QAAQ+oB,OACpB78C,WACA5B,MAAM,SACN6C,KAAK,mBAJ0B,GAMpCsoB,KAAKuK,QAAQ+oB,OAAS,WACpBp+B,EAAgBqV,QAAQgpB,YA9H5B,WACE,GAA4B,UAAxBvzB,KAAKuK,QAAQzZ,OAAoB,CACnC,IAAI0iC,EAAa,EAEa,IAA5B9/B,EAAUqc,eACgB,IAA1Brc,EAAU4X,aAC0B,OAApClsB,EAAE,gCAEFo0C,EAAap0C,EAAE,8BAA8BpF,aAAe,GAE9DgmB,KAAKuK,QAAQkpB,IAAIx9C,MAAMsC,IAAM,GAAGhC,KAAK2D,IACnCY,SAASklB,KAAKuK,QAAQkpB,IAAIx9C,MAAMsC,IAAK,IACrC6G,EAAE,QAAQpF,aACRoF,EAAE,UAAUpF,aACZgmB,KAAKuK,QAAQmpB,GAAG15C,aAChBw5C,EACA,SA+GJG,IAGFz+B,EAAgB0+B,gBAAkB5zB,KAAK4zB,gBACvC5zB,KAAK4zB,gBAAkB,WACrBZ,GAAU99B,EAAgB0+B,kBAG5B1+B,EAAgB2+B,cAAgB7zB,KAAK6zB,cACrC7zB,KAAK6zB,cAAgB,WACnBb,GAAU99B,EAAgB2+B,gBAI5Bz0C,EAAE,aAAazN,oBAAoB,QAASquB,KAAK8zB,aAAa,GAC9D10C,EAAE,aAAahS,iBACb,SACA,WACE4lD,GAAUhzB,KAAK8zB,gBAEjB,GAGF5+B,EAAgBgsB,gBAAkBlhB,KAAKkhB,gBACvClhB,KAAKkhB,gBAAkB,WACrBhsB,EAAgBgsB,kBArHlBjsB,EAAuB,GACvBzjB,OAAO6C,KAAK2rB,KAAKiE,iBAAiBhB,SAASj1B,IACJ,OAAjCoR,EAAE,UAAUpR,KAAK83C,cACnB7wB,EAAqBjnB,GAAKoR,EAAE,UAAUpR,KAAK83C,YAC3C1mC,EAAE,UAAUpR,KAAK83C,YAAc,WACxB9lB,KAAK+zB,YACR/zB,KAAKg0B,WAAWtnD,MAChBszB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,IAAK,GAAG15C,OAE/B,SAEFgyB,KAAKuK,QAAQke,eAwGnBzoB,KAAKsV,kBAGPpgB,EAAgB++B,aAAej0B,KAAKi0B,aAKpCj0B,KAAKi0B,aAAe,SAAU7zB,KAEzB1M,EAAUqrB,cACX/e,KAAK8X,YAAY1X,GAAMyG,UAAY7G,KAAK8G,UACtB,IAAlB9G,KAAK+C,UAEL7N,EAAgB++B,aAAa7zB,IAIjClL,EAAgBg/B,mBAAqBl0B,KAAKk0B,mBAM1Cl0B,KAAKk0B,mBAAqB,SAAUC,GAClCj/B,EAAgBg/B,mBAAmBC,GA7oEvC,SAAqBA,GACnB,GAAiC,IAA7BzgC,EAAUiqB,eAAsB,CAClC,MAAOyW,EAAUC,GA9DrB,SAA6BF,GAC3BxqB,KAGwBvqB,EAAE,iBAAiBmxB,SAAS,GAAG/kB,UAAUk3B,SAC/D,aAEmBznB,GAAiBk5B,EACjCn5B,GAAgBm5B,EAGrB,IAAIzyB,EAAQ,EACZ,GACE1G,KAAkBS,IAClBR,KAAmBS,GAEnB,IAAK,IAAI1tB,EAAIgyB,KAAK8X,YAAY7pC,OAAS,EAAGD,GAAK,IAAKA,EAClD,GAAIgyB,KAAK8X,YAAY9pC,EAAI,GAAGo0B,OAAS,EAAG,CACtC,MAAM2iB,EAAkBnlB,GAAWI,KAAK8X,YAAY9pC,GAAGuE,MAAMA,KAC7DqtB,GAAWmlB,GAAiB3iB,QAAU,EACtC1H,IAAqB,EACrBgH,EACE9B,GAAWmlB,GAAiB7iB,UAC5BlC,KAAK2C,eACHpsB,KAAK6D,IACH,EACAwlB,GAAWmlB,GAAiB3iB,OAC1B,EACAxC,GAAWmlB,GAAiB5iB,MAEpCT,EAAQ1B,KAAK4C,oBAAoBhD,GAAWmlB,GAAkBrjB,GAC9DA,EAAQnrB,KAAKoL,KAAK+f,GAClB,MAKN,MAAM8W,EAAwB3d,GAO9B,OANAya,KAEAkC,KACIgB,IAA0B3d,IAC5Bya,KAEK,CAAC/Z,GAAeyE,KAAKgF,UAAWtD,GAkBH4yB,CAAoBH,GAChDI,EAAgBx7B,GACpBs7B,GAAiBD,EAAWp0B,KAAKgF,YAE7BwvB,EAAqB78B,GAA4By8B,EAAWp0B,KAAKgF,WAEvE5lB,EAAE,kBAAkBnJ,MAAMw+C,UAAY,OACtCr1C,EAAE,kBAAkBnJ,MAAMsvB,OAAS,MACnCnmB,EAAE,kBAAkBwK,YAAYtd,SAAS4D,cAAc,QAAQzB,UAC7D,OACF,MAAM61B,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMs8B,SAAW,QACrBjO,EAAIruB,MAAMuW,UAAY,SACtB8X,EAAIjzB,YAAc,wCAAwCsmB,GACxDy8B,OACII,sBACNp1C,EAAE,kBAAkBwK,YAAY0a,GAChC,MAAMowB,EAAOpoD,SAAS4D,cAAc,OACpCwkD,EAAKz+C,MAAMs8B,SAAW,QACtBmiB,EAAKz+C,MAAMuW,UAAY,SACvBkoC,EAAKrjD,YAAc,gBAAgBkjD,yBACnCn1C,EAAE,kBAAkBwK,YAAY8qC,IAunEhCC,CAAYR,IAGdj/B,EAAgB0/B,kBAAoB50B,KAAK40B,kBAIzC50B,KAAK40B,kBAAoB,SAAUC,GACjC3/B,EAAgB0/B,kBAAkBC,GAvnEtC,WAEE,GAEwE,QADrEz1C,EAAE,gBAAgB3Q,UAAUC,MAAM,aACjC0Q,EAAE,gBAAgBmxB,SAAS,GAAGt6B,MAAMqB,WAAW5I,MAAM,WAEvD,IAAK,IAAIV,EAAI,EAAGA,EAAIoR,EAAE,gBAAgBilB,WAAWp2B,OAAQD,IACL,cAA9CoR,EAAE,gBAAgBilB,WAAWr2B,GAAGS,YAClC2Q,EAAE,gBAAgBmxB,SAASviC,GAAG83C,YAAc,WAC1CxD,KACAtiB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACXpG,EAAE,gBACF,mDAAmDwc,WACnD,QAEFoE,KAAKuK,QAAQke,UAEfrpC,EAAE,gBAAgBmxB,SAASviC,GAAGi4C,WAAa,WACzCjmB,KAAKuK,QAAQuqB,WAAa,IAqmEhCC,IAGF7/B,EAAgB4d,WAAa9S,KAAK8S,WAClC9S,KAAK8S,WAAa,gBAEwB,IAA9BiW,KAAmBzqC,aACiB,IAApCyqC,KAAmBzqC,OAAOC,QAElC2W,EAAgB4d,aAvXtB,WACE,MAAM+Q,EAAQv3C,SAAS4D,cAAc,OACrC2zC,EAAMp1C,UAAY,QAEE,UAAhBuxB,KAAK6Q,QACPgT,EAAMxyC,YAAc,0BApExB,SAAqBwyC,GACnB,MAAM4F,EAAOn9C,SAASo9C,yBACtBD,EAAK7/B,YAAYi6B,GAEjBryC,OAAO6C,KAAK09C,IAAc9uB,SAASue,IACjC,MAAMwT,EAAc/C,GAAiBzQ,EAAOuQ,GAAavQ,IACzDiI,EAAK7/B,YAAYorC,GACbthC,EAAUsrB,OAAOwC,KAGL,iBAAVA,EACFhwC,OAAO6C,KAAK29C,IAA0B/uB,SAASgyB,IAC7C,MAAMC,EAAiBjD,GACrBgD,EACAjD,GAAyBiD,IAE3BC,EAAej/C,MAAMuvB,SAAW,OAChC0vB,EAAej/C,MAAM6U,QAAU,MAC/B2+B,EAAK7/B,YAAYsrC,GACbxhC,EAAUsrB,OAAOiW,IACnBzjD,OAAO6C,KAAK2tC,IAAc/e,SAAS1b,IAC7By6B,GAAaz6B,GAAQi6B,QAAUyT,GACjCxL,EAAK7/B,YAAYsoC,GAAiB3qC,UAK1C/V,OAAO6C,KAAK2tC,IAAc/e,SAAS1b,IAC7By6B,GAAaz6B,GAAQi6B,QAAUA,GACjCiI,EAAK7/B,YAAYsoC,GAAiB3qC,WAM5C,MAAM4tC,EAAS7oD,SAAS4D,cAAc,OACtCilD,EAAO1mD,UAAY,UACnB,MAAM2mD,EAAY9oD,SAAS4D,cAAc,KACzCklD,EAAU3mD,UAAY,SACtB2mD,EAAUxP,QAAU,WAClByB,GAAWhM,KAEb+Z,EAAU/jD,YAAc,kBACxB8jD,EAAOvrC,YAAYwrC,GACnB3L,EAAK7/B,YAAYurC,GAEjB/1C,EAAE,QAAQilB,WAAW,GAAG4d,aACtBwH,EACArqC,EAAE,QAAQilB,WAAW,GAAGA,WACtBjlB,EAAE,QAAQilB,WAAW,GAAGA,WAAWp2B,OAAS,IAoB9ConD,CAAYxR,IACa,UAAhB7jB,KAAK6Q,OACVnd,EAAUod,QACZ+S,EAAMxyC,YAAc,4BACpBu4C,GAAa/F,IAEU,QAAhB7jB,KAAK6Q,SACdgT,EAAMxyC,YAAc,kBApWxB,SAAqBwyC,GACnB,MAAMyR,EAAOhpD,SAAS4D,cAAc,OACpColD,EAAK7mD,UAAY,aAEjB,MAAM26C,EAAO98C,SAAS4D,cAAc,QAmBpC,GAlBAk5C,EAAKnzC,MAAM+U,OAAS,UACpBo+B,EAAKnzC,MAAMqV,QAAU,eACrB89B,EAAKnzC,MAAMmG,OAAS,OACpBgtC,EAAKnzC,MAAMkG,MAAQ,OACnBitC,EAAKnzC,MAAMsU,aAAe,MAC1B6+B,EAAKnzC,MAAMuW,UAAY,SACvB48B,EAAKnzC,MAAM4U,gBAAkB,UAC7Bu+B,EAAKnzC,MAAM2F,MAAQ,QACnBwtC,EAAKnzC,MAAMuvB,SAAW,OACtB4jB,EAAKnzC,MAAMyvB,cAAgB,SAC3B0jB,EAAK/3C,YAAcqiB,EAAUsrB,OAAOwB,QAAU,IAAM,IACpD4I,EAAKxD,QAAU,WACbsD,GAAa,WACblpB,KAAK8S,cAEP+Q,EAAMj6B,YAAYw/B,GAClBkM,EAAK1rC,YAAYi6B,GAEbnwB,EAAUsrB,OAAOwB,QAAS,CAC5B,MAAM+U,EAAcjpD,SAAS4D,cAAc,OAC3CqlD,EAAY/pC,UAh0RO,siBAi0RnB8pC,EAAK1rC,YAAY2rC,GACjB,MAAMC,EAAQlpD,SAAS4D,cAAc,OACrCslD,EAAMhqC,UAzzRiB,gwEA0zRvB8pC,EAAK1rC,YAAY4rC,GAGnB,MAAMC,EAAOr2C,EAAE,QAAQmxB,SAAS,GAChCklB,EAAKxT,aAAaqT,EAAMG,EAAKllB,SAAS,IAoUpCmlB,CAAY7R,IA0WV8R,KAIJzgC,EAAgB8b,QAAUhR,KAAKgR,QAC/B9a,EAAY,SAAU8C,EAAM48B,GAC1B,OAAIx9B,OAAO9I,MAAM0J,IAASA,GAAQ,EACzB9D,EAAgB8b,QAAQhY,EAAM48B,GAChC78B,GAAWC,EAAOgH,KAAKiL,IAAK,IAGrC/V,EAAgB2gC,MAAQ71B,KAAK61B,MAC7B71B,KAAK61B,MAAQ,WACX3gC,EAAgB2gC,QAGhB,IAAIhS,EAAQ,iBACQ,UAAhB7jB,KAAK4R,SAAoBiS,EAAQ,gBACrCnsB,GAAQ,GAAGsI,KAAKkkB,SAAW,cAAgB,KAAKvsB,GAA4BqI,KAAK8G,YAC9D,IAAjB9G,KAAK8G,QAAgB,SAAW,eAC5B+c,IA9WV,WACE,GAAI7jB,KAAKkkB,UAAgC,IAApBxwB,EAAUgE,MAC7BprB,SAASu3C,MAAQnsB,QACZ,GAAwB,IAApBhE,EAAUgE,MAAa,CAChC,IAEIo+B,EACAC,EACAC,EAJAC,GAAQ,EACRC,GAAQ,EAORJ,EAFAp3B,GACEA,GAA0B2iB,MAClB,KAAK9qC,KAAKoL,KAAK+c,GAA0B0nB,KAAOpmB,KAAKiL,QAErD,KAAK10B,KAAKoL,KAAK+c,GAA0B0nB,KAAOpmB,KAAKiL,QACvDjL,KAAKwR,IAAI,uBAOJ,OANL,IACRpZ,OAAOhZ,EAAE,sBAAsB/N,aAAe,EAAI,IAAM,KACvDkF,KAAKoL,MACLqe,KAAKqR,aAAaC,OAAOI,QAAU1R,KAAKqR,aAAaC,OAAOtY,MAC3DgH,KAAKiL,QAIP1W,IACF0hC,GAAQ,EACRF,EAAU,OAGQ,cAAhB/1B,KAAK4R,SACPskB,GAAQ,EAENF,EADE1hC,EACQ,KAAK/d,KAAKoL,KAAKgd,GAAsBynB,KAAOpmB,KAAKiL,QAEjD,IACR7S,OAAOhZ,EAAE,uBAAuB/N,aAAe,EAAI,IAAM,KACxDkF,KAAKoL,MACLqe,KAAKqR,aAAaQ,SAASH,QAC1B1R,KAAKqR,aAAaQ,SAAS7Y,MAC3BgH,KAAKiL,SAMb,IAAI77B,EAAMsoB,GACY,MAAlBtoB,EAAI2L,OAAO,KACb3L,EAAMA,EAAIg3B,UAAUh3B,EAAI+mD,YAAY,KAAO,IAE7C7pD,SAASu3C,MAAQ,GACfiS,GAAWG,EAAQF,EAAU,KAAOG,EAAQF,EAAU,OACpD5mD,SACC,GAAwB,IAApBskB,EAAUgE,MAAa,CAChC,IAAItoB,EAAM,GACNgnD,GAAQ,EACR13B,KACF03B,GAAQ,EACJ13B,GAA0B2iB,MAC5BjyC,GAAO,KAAKmH,KAAKoL,KAAK+c,GAA0B0nB,KAAOpmB,KAAKiL,QACzD77B,GAAO,KAAKmH,KAAKoL,KAAK+c,GAA0B0nB,KAAOpmB,KAAKiL,SAE/D1W,IACF6hC,GAAQ,EACRhnD,GAAO,OAEW,cAAhB4wB,KAAK4R,QAA0Btd,IACjCllB,GAAO,KAAKmH,KAAKoL,KAAKgd,GAAsBynB,KAAOpmB,KAAKiL,QACxDmrB,GAAQ,GAENA,IAAOhnD,GAAO,OAClB,IAAIy0C,EAAQ,iBACQ,UAAhB7jB,KAAK4R,SAAoBiS,EAAQ,gBACrCz0C,GAAOy0C,EACPv3C,SAASu3C,MAAQz0C,GAsSjBinD,GAxRJ,WACE,MAAMhR,EAAgB9uC,KAAK6D,IACzB,EACA4lB,KAAKslB,oBACH/uC,KAAKkE,MAAMulB,KAAKia,gBAAgBja,KAAKka,aAAela,KAAK2T,gBACvD,IAED3T,KAAK2T,cAAgB3T,KAAKka,eAGzBja,EAAYD,KAAKgR,SACnBwC,KAAKC,MAAQzT,KAAKC,WAAa,IAAQD,KAAKiL,KAC7C,GAEH,IAAI77B,EAAM,GACVA,GAAO,kCACS,KAAd6wB,EAAmB,gBAAkBA,aAEvC7wB,GAAO,2BACH4wB,KAAKgK,SAAW,IAClB56B,GAAO,uCAAuCuoB,GAC5CqI,KAAKgK,2BACYrS,GAA4BqI,KAAKgK,cACpD56B,GAAO,4BAGPA,GADEmrB,GAAyB,EACpB,6CACAA,GAAyB,EAE9B,6GAEK,uCAAuC5C,GAC5C4C,6BACyB5C,GACzB4C,uBACmB5C,GACnB4C,mCAEJnrB,GAAO,2BACPA,GAAO,eAAeuoB,GACpB0tB,8CAEFj2C,GACEskB,EAAUkqB,oBACN,oCAAoChf,iDAAwEjH,GAC1GgF,GACA,iDAEF,GAENvd,EAAE,iBAAiBoM,UAAYpc,EAyO7BknD,IAoDJ,SAASC,KACPzT,KACAhI,KACAM,KAGAtnB,EAAetiB,OAAO6C,KAAK2rB,KAAKokB,MAAMn2C,OAplFtC6mB,EAAUxoB,SAAS4D,cAAc,SACjC4kB,EAAQzmB,KAAO,WACfymB,EAAQyM,GAAK,QAEbj1B,SAASkqD,KAAK5sC,YAAYkL,GAl0L5B,WACE,MAAM0R,EAASl6B,SAAS4D,cAAc,OACtCs2B,EAAOjF,GAAK,WACZiF,EAAOvwB,MAAMmG,OAAS,OACtBoqB,EAAOvwB,MAAMkG,MAAQ,OACrBqqB,EAAOvwB,MAAMgI,SAAW,WACxBuoB,EAAOvwB,MAAMqV,QAAU,OACvBkb,EAAOvwB,MAAM4U,gBAAkB,UAC/B2b,EAAOvwB,MAAM8V,gBAAkB,+CAC/Bya,EAAOvwB,MAAMwgD,UAAY,kBACzBjwB,EAAOvwB,MAAMoV,SAAW,OACxBmb,EAAOvwB,MAAMygD,WACX,uDAEF,MAAMC,EAAQnwB,EAAO5c,YAAYtd,SAAS4D,cAAc,UACxDymD,EAAM1gD,MAAMkG,MAAQ,OACpBw6C,EAAM1gD,MAAMuW,UAAY,SACxBmqC,EAAM1gD,MAAMoW,WAAa,SACzB,MAAMuqC,EAAQD,EAAM/sC,YAAYtd,SAAS4D,cAAc,UAEjD2mD,EAAW,SAAUx9B,EAAMzd,GAC/B,MAAMk7C,EAAKxqD,SAAS4D,cAAc,MAIlC,OAHA4mD,EAAG7gD,MAAMuW,UAAY,QACrBsqC,EAAGroD,UAAY0mB,EAAevZ,EAC9Bk7C,EAAGzlD,YAAcgoB,EACVy9B,GAEHzoD,EAAOuoD,EAAMhtC,YAAYtd,SAAS4D,cAAc,OACtD7B,EAAK4H,MAAMo0B,WAAa,OACxBh8B,EAAKub,YAAYitC,EAAS,aAAsCthC,IAClDqhC,EAAMhtC,YAAYtd,SAAS4D,cAAc,OACjD0Z,YAAYitC,EAAS,eAAgBxhC,IAChCuhC,EAAMhtC,YAAYtd,SAAS4D,cAAc,OACjD0Z,YAAYitC,EAAS,iBAAkBxhC,IAC7BuhC,EAAMhtC,YAAYtd,SAAS4D,cAAc,OACjD0Z,YAAYitC,EAAS,YAAaxhC,IAEvCjW,EAAE,WAAWwK,YAAY4c,GAEzBh1B,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjCg4B,GAA2Bh4B,MA82Q7B+oD,GAztQF,WACE,MAAM5vB,EAAW76B,SAAS4D,cAAc,OACxCi3B,EAAS5F,GAAK,aACd4F,EAASlxB,MAAMgI,SAAW,WAC1BkpB,EAASlxB,MAAMqV,QAAU,OACzB6b,EAASlxB,MAAMmG,OAAS,MACxB+qB,EAASlxB,MAAMuvB,SAAW,OAC1B2B,EAASlxB,MAAMo0B,WAAa,OAC5BlD,EAASlxB,MAAM4U,gBAAkB,QAGjC,MAAMmsC,EAAe5xB,GAAY,eAAgB,cAAe,CAC9D,CAAE7D,GAAI,qBAAsB3lB,MAAO+Z,GACnC,CAAE4L,GAAI,kBAAmB3lB,MAAO8Z,KAElCyR,EAASvd,YAAYotC,GAGrB,MAAMC,EAAgB7xB,GAAY,gBAAiB,gBAAiB,CAClE,CAAE7D,GAAI,sBAAuB3lB,MAAO+Z,GACpC,CAAE4L,GAAI,mBAAoB3lB,MAAO4Z,KAEnC2R,EAASvd,YAAYqtC,GACrB,MAAMC,EAAqB5qD,SAAS4D,cAAc,OAClDgnD,EAAmB31B,GAAK,uBACxB4F,EAASvd,YAAYstC,GAErB93C,EAAE,WAAWwK,YAAYud,GA+rQzBgwB,GA34FF,WACE,MAAMC,EAAa9qD,SAAS4D,cAAc,OAC1CknD,EAAW71B,GAAK,eAChB61B,EAAWnhD,MAAMkG,MAAQ,OACzBi7C,EAAWnhD,MAAM4U,gBAAkB,QACnCusC,EAAWnhD,MAAMuW,UAAY,SAC7B4qC,EAAWnhD,MAAMo0B,WAAa,OAC9B+sB,EAAWnhD,MAAMqV,QAAU,OAC3B8rC,EAAWnhD,MAAMyU,OAAS,KAC1B0sC,EAAWnR,WAAa,WACtBjmB,KAAKuK,QAAQvlB,QAGf,MAAMqtB,EAAc/lC,SAAS4D,cAAc,OAC3CmiC,EAAYzoB,YA7Dd,WACE,MAAMytC,EAAS/qD,SAAS4D,cAAc,OACtCmnD,EAAOphD,MAAMs8B,SAAW,QACxB8kB,EAAOphD,MAAMw0B,aAAe,MAC5B,MAAMoZ,EAAQv3C,SAAS4D,cAAc,OACrC2zC,EAAMp1C,UAAY,OAClBo1C,EAAM5tC,MAAMw0B,aAAe,MAC3BoZ,EAAMxyC,YAAc,SACpBgmD,EAAOztC,YAAYi6B,GAEnB,MAAMyT,EAAa,SAAU17C,EAAOyd,GAClC,MAAMiL,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMyvB,cAAgB,SAC1B,MAAM0jB,EAAO98C,SAAS4D,cAAc,QAQpC,OAPAk5C,EAAK36C,UAAY2mB,EAAexZ,EAChCwtC,EAAKnzC,MAAMqV,QAAU,eACrB89B,EAAKnzC,MAAMmG,OAAS,OACpBgtC,EAAKnzC,MAAMkG,MAAQ,OACnBitC,EAAKnzC,MAAMwvB,YAAc,MACzBnB,EAAI1a,YAAYw/B,GAChB9kB,EAAI1a,YAAYtd,SAASqgB,eAAe0M,IACjCiL,GAoBT,OAjBA+yB,EAAOztC,YAAY0tC,EAAWjiC,EAAW,iCACzCgiC,EAAOztC,YAAY0tC,EAAWhiC,EAAY,6BAC1C+hC,EAAOztC,YACL0tC,EACE/hC,EACA,uDAGJ8hC,EAAOztC,YACL0tC,EACE9hC,EACA,wDAGJ6hC,EAAOztC,YAAY0tC,EAAW7hC,EAAU,8BACxC4hC,EAAOztC,YAAY0tC,EAAW5hC,EAAa,iCAC3C2hC,EAAOztC,YAAY0tC,EAAW3hC,EAAW,4BAClC0hC,EAoBiBE,IACxBH,EAAWtR,YAAc,WACvB9lB,KAAKuK,QAAQ/kB,KAAK9Y,KAAM8lC,OAAOH,EAAY7mB,WAAY,UAGzD,MAAMgsC,EAAgB,SAAUj2B,EAAI3lB,GAClC,MAAMwtC,EAAO98C,SAAS4D,cAAc,QAMpC,OALAk5C,EAAK7nB,GAAKA,EACV6nB,EAAK36C,UAAY0mB,EAAevZ,EAChCwtC,EAAKnzC,MAAMkG,MAAQ,qBACnBitC,EAAKnzC,MAAMqV,QAAU,eACrB89B,EAAK/3C,YAAc,IACZ+3C,GAETgO,EAAWxtC,YAAY4tC,EAAc,mBAAoBniC,IACzD+hC,EAAWxtC,YAAY4tC,EAAc,oBAAqBliC,IAC1D8hC,EAAWxtC,YAAY4tC,EAAc,qBAAsBjiC,IAC3D6hC,EAAWxtC,YAAY4tC,EAAc,qBAAsBhiC,IAC3D4hC,EAAWxtC,YAAY4tC,EAAc,kBAAmB/hC,IACxD2hC,EAAWxtC,YAAY4tC,EAAc,qBAAsB9hC,IAC3D0hC,EAAWxtC,YAAY4tC,EAAc,mBAAoB7hC,IAEzDvW,EAAE,YAAY+N,WAAW80B,aACvBmV,EACAh4C,EAAE,YAAY+N,WAAWkX,WAAW,IAs2FtCozB,GAnkFF,WACE,MAAMC,EAAcprD,SAAS4D,cAAc,OAC3CwnD,EAAYn2B,GAAK,gBACjBm2B,EAAYzhD,MAAMkG,MAAQ,OAC1Bu7C,EAAYzhD,MAAMmG,OAAS,OAC3Bs7C,EAAYzhD,MAAM4U,gBAAkB,QACpC6sC,EAAYzhD,MAAMqV,QAAU,OAC5BosC,EAAYzhD,MAAMyU,OAAS,aAC3BgtC,EAAYzhD,MAAMgI,SAAW,WAC7BmB,EAAE,WAAWwK,YAAY8tC,GA2jFzBC,GA/1FF,WACE,MAAMrzB,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAI/C,GAAK,sBACT+C,EAAIruB,MAAMuW,UAAY,SACtB,MAAM3V,EAAIvK,SAAS4D,cAAc,KACjC2G,EAAEpI,UAAY,SACdoI,EAAE+uC,QAAU,WAC0B,SAAhCxmC,EAAE,YAAYnJ,MAAMqV,SACtBlM,EAAE,YAAYnJ,MAAMqV,QAAU,OAC9BlM,EAAE,kBAAkBnJ,MAAMqV,QAAU,OACpClM,EAAE,gBAAgBnJ,MAAMqV,QAAU,OAClClM,EAAE,iBAAiBnJ,MAAMqV,QAAU,SAEnClM,EAAE,YAAYnJ,MAAMqV,QAAU,OACc,IAAxClM,EAAE,kBAAkBmxB,SAAStiC,SAC/BmR,EAAE,kBAAkBnJ,MAAMqV,QAAU,SACI,IAAtClM,EAAE,gBAAgBmxB,SAAStiC,SAC7BmR,EAAE,gBAAgBnJ,MAAMqV,QAAU,SACO,IAAvClM,EAAE,iBAAiBmxB,SAAStiC,SAC9BmR,EAAE,iBAAiBnJ,MAAMqV,QAAU,WAGzCzU,EAAExF,YAAc,qBAChBizB,EAAI1a,YAAY/S,GAChB,MAAMP,EAAIhK,SAAS4D,cAAc,KACjCoG,EAAE7H,UAAY,SACd6H,EAAEsvC,QAAU,WAC0B,SAAhCxmC,EAAE,YAAYnJ,MAAMqV,QACtBlM,EAAE,YAAYnJ,MAAMqV,QAAU,OAC3BlM,EAAE,YAAYnJ,MAAMqV,QAAU,QAErChV,EAAEjF,YAAc,sBAChBizB,EAAI1a,YAAYtT,GAChB8I,EAAE,SAAS6iC,aAAa3d,EAAKllB,EAAE,SAASilB,WAAW,IA+zFnDuzB,GA3sJF,WACE,MAAMhZ,EAAUtyC,SAAS4D,cAAc,QACvC0uC,EAAQrd,GAAK,YACbqd,EAAQ16B,IAAM,gBACd06B,EAAQ0C,KAAO,uDACfh1C,SAASurD,qBAAqB,QAAQ,GAAGjuC,YAAYg1B,GAusJrDkZ,GACAtmD,OAAO6C,KAAK0hB,GAAakN,SAASj1B,KA9xFpC,SAA6BqkC,EAAahZ,EAAMkZ,GAC9C,MAAMqN,EAAUtzC,SAAS4D,cAAc,OACvC0vC,EAAQre,GAAK8Q,EACb,MAAMsP,EAAOr1C,SAAS4D,cAAc,OACpCyxC,EAAK1rC,MAAMs8B,SAAWA,EACtBoP,EAAK1rC,MAAMw0B,aAAe,MAC1B,MAAMnG,EAAMh4B,SAAS4D,cAAc,OACnCo0B,EAAIruB,MAAMuW,UAAY,OACtB8X,EAAIjzB,YAAcgoB,EAClBsoB,EAAK/3B,YAAY0a,GACjBsb,EAAQh2B,YAAY+3B,GACpB3rB,EAAsBqc,GAAeuN,EAoxFnCmY,CACEhiC,EAAY/nB,GAAG,GACf+nB,EAAY/nB,GAAG,GACf+nB,EAAY/nB,GAAG,OA1pFrB,WACE,MAAM4hD,EAAUtjD,SAAS4D,cAAc,KACvC0/C,EAAQruB,GAAK,6BACbquB,EAAQv+C,YAAc,iBACtBu+C,EAAQnhD,UAAY,SACpBmhD,EAAQhK,QAAU,WAChB4B,MAEFoI,EAAQ3J,WAAa,WACnBjmB,KAAKuK,QAAQuqB,WAAa,GAE5BlF,EAAQ9J,YAAc,WACpB9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,KAAM,YAE7B,QAEF1nB,KAAKuK,QAAQke,UAEfrpC,EAAE,oBAAoBmxB,SAAS,GAAGynB,OAAOpI,GACzC,MAAME,EAAcxjD,SAAS4D,cAAc,KAC3C4/C,EAAYvuB,GAAK,2BACjBuuB,EAAYz+C,YAAc,qBAC1By+C,EAAYrhD,UAAY,SACxBqhD,EAAYlK,QAAU,WACa,OAA7BxoB,GAAsB,KACxB4C,KAAKkF,UAAU9H,GAAsB,IAAIqqB,GAAK,IAElDqI,EAAY7J,WAAa,WACvBjmB,KAAKuK,QAAQuqB,WAAa,GAE5BhF,EAAYhK,YAAc,WACxB9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,KAAM,gBAE7B,QAEF1nB,KAAKuK,QAAQke,UAEfrpC,EAAE,oBAAoBmxB,SAAS,GAAGynB,OAAOlI,GAgnFzCmI,GAzlFA74C,EAAE,YAAYnJ,MAAMqV,QAAU,OAC9BlM,EAAE,aAAanJ,MAAMstB,QAAU,MAE/BnkB,EAAE,YAAYnJ,MAAMqV,QAAU,OAC9BlM,EAAE,YAAYnJ,MAAM,aAAe,OAqInCzE,OAAO6C,KAAK2rB,KAAKoB,SAAS6B,SAASj1B,IACjC,MAAMk2B,EAAKlE,KAAKoB,QAAQpzB,GACiB,OAArCoR,EAAE,UAAU8kB,EAAG3C,MAAMukB,cACvB/wB,EAAmB/mB,GAAKoR,EAAE,UAAU8kB,EAAG3C,MAAMukB,YAC7C1mC,EAAE,UAAU8kB,EAAG3C,MAAMukB,YAAc,WACjC9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,IAAK,GAAG15C,OAE/B,SAEFgyB,KAAKuK,QAAQke,cAUfzoB,KAAKk4B,aACPnkC,EAAoB3U,EAAE,SAAS0mC,YAC/B1mC,EAAE,SAAS0mC,YAAc,WACvB9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,IAAK,UAE5B,QAEF1nB,KAAKuK,QAAQke,WAkFjBp0B,EAAgB2L,KAAK3L,cACrB2L,KAAK3L,cAAgB,WACnBA,IA3EE2L,KAAKoB,QAAQoM,KAAK1L,iBACpB1iB,EAAE,gBAAgB0mC,YAAc,WAC9B9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,KAAM,sBAE7B,QAEF1nB,KAAKuK,QAAQke,UAEfjxC,MAAM67C,KAAKj0C,EAAE,cAAcmxB,UAAUtN,SAASk1B,IAC5C,MAAMC,EAASD,EAAM52B,GAAGxP,OAAO,GAC/BomC,EAAMrS,YAAc,WAClB9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,IAAK,CAAC,GAAG0Q,EAAO,KAAM,GAAGA,EAAO,SAEvD,QAEFp4B,KAAKuK,QAAQke,cAsDjBF,KAhDJ,WACE,GAAIvoB,KAAKoB,QAAQF,OAAOY,eAAgB,CACtC,IAAK,IAAI9zB,EAAI,EAAGA,EAAI,GAAIA,GAAK,EAC3BoR,EAAE,YAAYpR,KAAK83C,YAAc,WAC/B9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,MAAO15C,KAE9B,QAEFgyB,KAAKuK,QAAQke,UAGjB,IAAK,IAAIz6C,EAAI,EAAGA,EAAI,EAAGA,GAAK,EAC1BoR,EAAE,aAAapR,KAAK83C,YAAc,WAChC9lB,KAAKuK,QAAQie,QAAU,EACvBxoB,KAAKuK,QAAQ/kB,KACX9Y,MACA,WACE,OAAOg7C,GAAc,MAAO,CAC1B15C,EACAgyB,KAAKoB,QAAQF,OAAOC,SAAS+I,KAAKl8B,OAGtC,QAEFgyB,KAAKuK,QAAQke,WAqBjB4P,GACAzP,MAEF5oB,KAAK3L,gBAsxELjV,EAAE,wBAAwB0mC,YAAc,WACtC3vB,EAAsB,GAExB/W,EAAE,wBAAwB6mC,WAAa,WACrC9vB,EAAsB,EACtB6J,KAAKuK,QAAQvlB,OACbxT,OAAO6C,KAAK2rB,KAAKkF,WAAWjC,SAASj1B,IACnCqoB,EAA0BroB,GAAK,MA8DnCmlD,KACAvK,KACA5oB,KAAKsV,iBAEL+R,KACApxB,EAAoB+J,KAAKkkB,SAErBlkB,KAAK0Q,MAAM4nB,OACbt4B,KAAKu4B,MACH,0CAGFv4B,KAAKw4B,OACH,yCACA,GACA,GACA,EACA,GAGJx4B,KAAKy4B,IAAI,eAoEX,MAAMC,GAAK,CACTprD,KApDF,WACEy1C,IAAiB,EACjB,IAAI4V,GAAU,EACV34B,KAAKqiB,UAAYjqB,OA5oTF,WA6oTjBugC,EAAUC,QACR,8JAGAD,IACFpC,KACAv2B,KAAK64B,aAAa,OAAQpoB,IAC1BzQ,KAAK64B,aAAa,QAAS5U,IAC3BlB,IAAiB,IAyCnB+V,KA5BF,SAAc1pD,GACZ,MAAM8yC,EAAO7yC,KAAKC,MAAMF,GACxB0zC,KACAuE,GAAWnF,EAAKE,UACK,YAAjBF,EAAKG,UACHriB,KAAK0Q,MAAM4nB,OACbt4B,KAAKu4B,MACH,iGAGFv4B,KAAKw4B,OACH,gGACA,GACA,GACA,EACA,KAcNtW,KAAMA,IAGRliB,KAAK+4B,YAAY,gBAAiBL,KAxsTlC,IAxgHS","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","metric","shortScale","shortScaleAbbreviated","LastModCount","TooltipLumpBackup","BackupGrimoireLaunch","BackupGrimoireLaunchMod","BackupGrimoireDraw","HasReplaceNativeGrimoireLaunch","HasReplaceNativeGrimoireDraw","LoadMinigames","LastSeasonPopupState","LastTickerFortuneState","LastGardenNextStep","LastGoldenCookieState","LastSpawnedGoldenCookieState","LastMagicBarFull","CurrSpawnedGoldenCookieState","LastWrinklerCount","DispCSS","TooltipBuildBackup","TooltipGrimoireBackup","TooltipUpgradeBackup","BackupFunctions","ColorTextPre","ColorBackPre","ColorBlue","ColorGreen","ColorYellow","ColorOrange","ColorRed","ColorPurple","ColorGray","ColorPink","ColorBrown","Colors","TooltipText","SimpleTooltipElements","CMLastAscendState","CMSayTime","TooltipWrinklerArea","TooltipWrinkler","TooltipWrinklerBeingShown","LastTargetBotBar","LastTargetBuildings","LastTargetTooltipBuilding","CookieTimes","ClickTimes","BuffColors","Frenzy","Dragon Harvest","Elder frenzy","Clot","Click frenzy","Dragonflight","TooltipPrice","TooltipBonusIncome","TooltipType","TooltipName","TooltipBonusMouse","LastAscendState","LastNumberOfTimers","GCTimers","Title","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","GetTimeColor","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","SimDateCentury","Game","startDate","SimDateAges","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","BuildColor","forEach","removeProperty","SortBuildings","arr","k","sort","gridRow","UpdateUpgrades","UpBarColor","blue","green","yellow","orange","red","purple","gray","UpgradesInStore","me","addedColor","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","timeColor","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","elderWrath","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","lumpColor","lumpCurrentType","SugarLump","spellCost","getSpellCost","spellsById","TooltipGrim","magicM","recover","recoverColor","conjure","reward","seperator","loss","Grimoire","Farm","TooltipPlots","plot","mature","plantsById","matureBase","plantName","GardenPlots","totalGain","mortal","tile","immortal","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","classColor","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","CacheColor","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","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","UpgradeBarFixedPos","GeneralSound","GCNotification","GCFlash","GCSound","GCVolume","GCSoundURL","FortuneNotification","FortuneFlash","FortuneSound","FortuneVolume","FortuneSoundURL","SeaNotification","SeaFlash","SeaSound","SeaVolume","SeaSoundURL","GardFlash","GardSound","GardVolume","GardSoundURL","MagicNotification","MagicFlash","MagicSound","MagicVolume","MagicSoundURL","WrinklerNotification","WrinklerFlash","WrinklerSound","WrinklerVolume","WrinklerSoundURL","WrinklerMaxNotification","WrinklerMaxFlash","WrinklerMaxSound","WrinklerMaxVolume","WrinklerMaxSoundURL","TooltipAmor","DragonAuraInfo","TooltipAscendButton","MissingUpgrades","DetailedTime","GrimoireBar","HeavenlyChipsTarget","ShowMissedGC","Blue","Green","Yellow","Orange","Red","Purple","Gray","Pink","Brown","GCTimer","Favicon","WrinklerButtons","HideSectionsButtons","BulkBuyBlock","Header","BarsColors","Calculation","Notification","NotificationGeneral","NotificationGC","NotificationFC","NotificationSea","NotificationGard","NotificationMagi","NotificationWrink","NotificationWrinkMax","Tooltip","Statistics","Notation","Miscellaneous","Lucky","Chain","Spells","Garden","Prestige","Wrink","Sea","Misc","InfoTab","Config_CheckNotificationPermissions","ToggleOnOff","checkNotificationPromise","requestPermission","then","ToggleBotBar","RefreshScale","BeautifyAll","RefreshStore","RebuildUpgrades","UpdateColors","UpdateFavicon","wrath","href","Setting","group","SettingStandard","label","desc","toggle","super","SettingVolume","SettingInputNumber","SettingsData","insertBefore","save","stringify","settings","version","CacheDragonCost","dragonLevel","dragonLevels","buy","includes","replaceAll","cost","CalculateChangeGod","InitData","isInitializing","Flash","config","setTimeout","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","SaveConfig","saveString","b64_to_utf8","unescape","localStorage","getItem","CookieMonsterSave","newSaveString","setItem","utf8_to_b64","LoadConfig","CMConfig","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","luckyColor","luckyTime","luckyReqFrag","luckyReqSpan","luckyReqSmall","luckyColorFrenzy","luckyTimeFrenzy","luckyReqFrenFrag","luckyReqFrenSpan","luckyReqFrenSmall","luckySplit","luckyRewardMaxSpan","luckyRewardFrenzyMaxSpan","luckyCurBase","luckyCurSpan","LuckySection","chainColor","chainTime","chainReqFrag","chainReqSpan","chainReqSmall","chainWrathColor","chainWrathTime","chainWrathReqFrag","chainWrathReqSpan","chainWrathReqSmall","chainColorFrenzy","chainTimeFrenzy","chainReqFrenFrag","chainReqFrenSpan","chainReqFrenSmall","chainWrathColorFrenzy","chainWrathTimeFrenzy","chainWrathReqFrenFrag","chainWrathReqFrenSpan","chainWrathReqFrenSmall","chainCurMax","chainCur","chainCurWrath","ChainSection","conjureColor","conjureTime","conjureReqFrag","conjureReqSpan","conjureReqSmall","conjureFrenzyColor","conjureFrenzyCur","conjureFrenzyTime","conjureFrenzyReqFrag","conjureFrenzyReqSpan","conjureFrenzyReqSmall","SpellsSection","bakeberryColor","bakeberryFrag","chocorootColor","chocorootFrag","queenbeetColor","queenbeetFrag","duketaterColor","duketaterFrag","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","missingPlantDrops","centEgg","failRateHalloween","dropRateMult","failRateChristmas","dropRateEgg","StartingFailRate","failRateEgg","succesRateEgg","obtainedEggs","obtainedRareEggs","pNormal1","pRare1","pRedrop","SeasonSection","missedGoldenClicks","menuSection","prestigeUpgradesMissing","titlefrag","PrestigeUpgrades","normalUpgradesMissing","tech","nextSibling","cookieUpgradesMissing","ConfigGroups","ConfigGroupsNotification","CreatePrefHeader","CreatePrefOption","ToggleConfig","float","percent","slider","step","onchange","input","readOnly","inputPrompt","Prompt","outerHTML","ClosePrompt","innerDiv","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","groupObject","subGroup","subGroupObject","resDef","resDefBut","AddMenuPref","info","description","notes","menu","AddMenuInfo","AddMenu","detail","Logic","titleGC","titleFC","titleSP","addFC","addSP","lastIndexOf","spawn","UpdateTitle","ReplaceAscendTooltip","InitializeCookieMonster","head","borderTop","textShadow","table","tbody","firstCol","td","CreateBotBar","CMTimerBarGC","CMTimerBarRen","TimerBarBuffTimers","CreateTimerBar","UpgradeBar","legend","legendLine","CreateUpgradeBarLegend","upgradeNumber","CreateUpgradeBar","WhiteScreen","CreateWhiteScreen","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,GAChB,MAMMC,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,EAAe,SACfC,EAAe,SAMfC,EAAY,OACZC,EAAa,QACbC,EAAc,SACdC,EAAc,SACdC,EAAW,MACXC,EAAc,SACdC,EAAY,OACZC,EAAY,OACZC,EAAa,QACbC,EAAS,CACbH,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,gLA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","file":"./CookieMonster.js","sourceRoot":""} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index c4cea10..59d911e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "cookiemonster-mod", - "version": "2.031.5", + "version": "2.031.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "cookiemonster-mod", - "version": "2.031.5", + "version": "2.031.6", "license": "MIT", "dependencies": { "@eastdesire/jscolor": "^2.4.5" @@ -25,24 +25,21 @@ }, "node_modules/@babel/code-frame": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/highlight": "^7.10.4" } }, "node_modules/@babel/helper-validator-identifier": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@babel/highlight": { "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", - "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", @@ -51,9 +48,8 @@ }, "node_modules/@babel/highlight/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^1.9.0" }, @@ -63,9 +59,8 @@ }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -77,33 +72,29 @@ }, "node_modules/@babel/highlight/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "1.1.3" } }, "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/@babel/highlight/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -113,23 +104,20 @@ }, "node_modules/@discoveryjs/json-ext": { "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz", - "integrity": "sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10.0.0" } }, "node_modules/@eastdesire/jscolor": { "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@eastdesire/jscolor/-/jscolor-2.4.5.tgz", - "integrity": "sha512-LDCEGN7qKKO3tq6yYtx6cbz/tQlr9LqKNSFaG2GIIn03y67ot3doucpDGoQjCwXG2xUB4pDXRuH2lobjjxhtJA==" + "license": "GPL-3.0-or-later" }, "node_modules/@eslint/eslintrc": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", - "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", "dev": true, + "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -147,9 +135,8 @@ }, "node_modules/@eslint/eslintrc/node_modules/globals": { "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.8.1" }, @@ -162,18 +149,16 @@ }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } }, "node_modules/@types/eslint": { "version": "7.2.7", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.7.tgz", - "integrity": "sha512-EHXbc1z2GoQRqHaAT7+grxlTJ3WE2YNeD6jlpPoRc83cCoThRY+NUWjCUZaYmk51OICkPXn2hhphcWcWXgNW0Q==", "dev": true, + "license": "MIT", "dependencies": { "@types/estree": "*", "@types/json-schema": "*" @@ -181,9 +166,8 @@ }, "node_modules/@types/eslint-scope": { "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", - "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", "dev": true, + "license": "MIT", "dependencies": { "@types/eslint": "*", "@types/estree": "*" @@ -191,33 +175,28 @@ }, "node_modules/@types/estree": { "version": "0.0.46", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz", - "integrity": "sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/json-schema": { "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", - "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/json5": { "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/node": { "version": "14.14.35", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.35.tgz", - "integrity": "sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@webassemblyjs/ast": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", - "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/helper-numbers": "1.11.0", "@webassemblyjs/helper-wasm-bytecode": "1.11.0" @@ -225,27 +204,23 @@ }, "node_modules/@webassemblyjs/floating-point-hex-parser": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", - "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@webassemblyjs/helper-api-error": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", - "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@webassemblyjs/helper-buffer": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", - "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@webassemblyjs/helper-numbers": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", - "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/floating-point-hex-parser": "1.11.0", "@webassemblyjs/helper-api-error": "1.11.0", @@ -254,15 +229,13 @@ }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", - "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@webassemblyjs/helper-wasm-section": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", - "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-buffer": "1.11.0", @@ -272,33 +245,29 @@ }, "node_modules/@webassemblyjs/ieee754": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", - "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", "dev": true, + "license": "MIT", "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", - "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", - "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@webassemblyjs/wasm-edit": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", - "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-buffer": "1.11.0", @@ -312,9 +281,8 @@ }, "node_modules/@webassemblyjs/wasm-gen": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", - "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-wasm-bytecode": "1.11.0", @@ -325,9 +293,8 @@ }, "node_modules/@webassemblyjs/wasm-opt": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", - "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-buffer": "1.11.0", @@ -337,9 +304,8 @@ }, "node_modules/@webassemblyjs/wasm-parser": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", - "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-api-error": "1.11.0", @@ -351,9 +317,8 @@ }, "node_modules/@webassemblyjs/wast-printer": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", - "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", "dev": true, + "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.0", "@xtuc/long": "4.2.2" @@ -361,9 +326,8 @@ }, "node_modules/@webpack-cli/configtest": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.1.tgz", - "integrity": "sha512-B+4uBUYhpzDXmwuo3V9yBH6cISwxEI4J+NO5ggDaGEEHb0osY/R7MzeKc0bHURXQuZjMM4qD+bSJCKIuI3eNBQ==", "dev": true, + "license": "MIT", "peerDependencies": { "webpack": "4.x.x || 5.x.x", "webpack-cli": "4.x.x" @@ -371,9 +335,8 @@ }, "node_modules/@webpack-cli/info": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.2.tgz", - "integrity": "sha512-5U9kUJHnwU+FhKH4PWGZuBC1hTEPYyxGSL5jjoBI96Gx8qcYJGOikpiIpFoTq8mmgX3im2zAo2wanv/alD74KQ==", "dev": true, + "license": "MIT", "dependencies": { "envinfo": "^7.7.3" }, @@ -383,9 +346,8 @@ }, "node_modules/@webpack-cli/serve": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.0.tgz", - "integrity": "sha512-k2p2VrONcYVX1wRRrf0f3X2VGltLWcv+JzXRBDmvCxGlCeESx4OXw91TsWeKOkp784uNoVQo313vxJFHXPPwfw==", "dev": true, + "license": "MIT", "peerDependencies": { "webpack-cli": "4.x.x" }, @@ -397,21 +359,18 @@ }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/@xtuc/long": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/acorn": { "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -421,18 +380,16 @@ }, "node_modules/acorn-jsx": { "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, + "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/ajv": { "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -446,36 +403,32 @@ }, "node_modules/ajv-keywords": { "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, + "license": "MIT", "peerDependencies": { "ajv": "^6.9.1" } }, "node_modules/ansi-colors": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/ansi-regex": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -488,18 +441,16 @@ }, "node_modules/argparse": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, "node_modules/array-includes": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -516,9 +467,8 @@ }, "node_modules/array.prototype.flat": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -533,24 +483,21 @@ }, "node_modules/astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/balanced-match": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -558,9 +505,8 @@ }, "node_modules/browserslist": { "version": "4.16.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", - "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", "dev": true, + "license": "MIT", "dependencies": { "caniuse-lite": "^1.0.30001181", "colorette": "^1.2.1", @@ -581,15 +527,13 @@ }, "node_modules/buffer-from": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/call-bind": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" @@ -600,24 +544,21 @@ }, "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/caniuse-lite": { "version": "1.0.30001202", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001202.tgz", - "integrity": "sha512-ZcijQNqrcF8JNLjzvEiXqX4JUYxoZa7Pvcsd9UD8Kz4TvhTonOSNRsK+qtvpVL4l6+T1Rh4LFtLfnNWg6BGWCQ==", - "dev": true + "dev": true, + "license": "CC-BY-4.0" }, "node_modules/chalk": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -631,9 +572,8 @@ }, "node_modules/chrome-trace-event": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^1.9.0" }, @@ -643,9 +583,8 @@ }, "node_modules/clone-deep": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, + "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", @@ -657,9 +596,8 @@ }, "node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -669,48 +607,41 @@ }, "node_modules/color-name": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/colorette": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/commander": { "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/confusing-browser-globals": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz", - "integrity": "sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/contains-path": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -722,9 +653,8 @@ }, "node_modules/debug": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.1.2" }, @@ -739,15 +669,13 @@ }, "node_modules/deep-is": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/define-properties": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, + "license": "MIT", "dependencies": { "object-keys": "^1.0.12" }, @@ -757,9 +685,8 @@ }, "node_modules/doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -769,21 +696,18 @@ }, "node_modules/electron-to-chromium": { "version": "1.3.690", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.690.tgz", - "integrity": "sha512-zPbaSv1c8LUKqQ+scNxJKv01RYFkVVF1xli+b+3Ty8ONujHjAMg+t/COmdZqrtnS1gT+g4hbSodHillymt1Lww==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/enhanced-resolve": { "version": "5.7.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz", - "integrity": "sha512-6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -794,9 +718,8 @@ }, "node_modules/enquirer": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-colors": "^4.1.1" }, @@ -806,9 +729,8 @@ }, "node_modules/envinfo": { "version": "7.7.4", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz", - "integrity": "sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ==", "dev": true, + "license": "MIT", "bin": { "envinfo": "dist/cli.js" }, @@ -818,18 +740,16 @@ }, "node_modules/error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, + "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/es-abstract": { "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", @@ -857,15 +777,13 @@ }, "node_modules/es-module-lexer": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", - "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "license": "MIT", "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -880,27 +798,24 @@ }, "node_modules/escalade": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.0" } }, "node_modules/eslint": { "version": "7.22.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.22.0.tgz", - "integrity": "sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.0", @@ -952,9 +867,8 @@ }, "node_modules/eslint-config-airbnb-base": { "version": "14.2.1", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.1.tgz", - "integrity": "sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA==", "dev": true, + "license": "MIT", "dependencies": { "confusing-browser-globals": "^1.0.10", "object.assign": "^4.1.2", @@ -970,9 +884,8 @@ }, "node_modules/eslint-config-prettier": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz", - "integrity": "sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw==", "dev": true, + "license": "MIT", "bin": { "eslint-config-prettier": "bin/cli.js" }, @@ -982,9 +895,8 @@ }, "node_modules/eslint-import-resolver-node": { "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^2.6.9", "resolve": "^1.13.1" @@ -992,24 +904,21 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-import-resolver-node/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eslint-module-utils": { "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^2.6.9", "pkg-dir": "^2.0.0" @@ -1020,24 +929,21 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-module-utils/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eslint-plugin-import": { "version": "2.22.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", - "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", "dev": true, + "license": "MIT", "dependencies": { "array-includes": "^3.1.1", "array.prototype.flat": "^1.2.3", @@ -1062,17 +968,14 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/eslint-plugin-import/node_modules/doctrine": { "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", "dev": true, "dependencies": { "esutils": "^2.0.2", @@ -1084,15 +987,13 @@ }, "node_modules/eslint-plugin-import/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eslint-plugin-prettier": { "version": "3.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.1.tgz", - "integrity": "sha512-Rq3jkcFY8RYeQLgk2cCwuc0P7SEFwDravPhsJZOQ5N4YI4DSg50NyqJ/9gdZHzQlHf8MvafSesbNJCcP/FF6pQ==", "dev": true, + "license": "MIT", "dependencies": { "prettier-linter-helpers": "^1.0.0" }, @@ -1111,9 +1012,8 @@ }, "node_modules/eslint-scope": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -1124,9 +1024,8 @@ }, "node_modules/eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -1139,27 +1038,24 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/eslint-visitor-keys": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=10" } }, "node_modules/espree": { "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", @@ -1171,18 +1067,16 @@ }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=4" } }, "node_modules/esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, + "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -1193,9 +1087,8 @@ }, "node_modules/esquery": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -1205,18 +1098,16 @@ }, "node_modules/esquery/node_modules/estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esrecurse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -1226,45 +1117,40 @@ }, "node_modules/esrecurse/node_modules/estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/estraverse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } }, "node_modules/esutils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/events": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.x" } }, "node_modules/execa": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", "dev": true, + "license": "MIT", "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", @@ -1285,39 +1171,33 @@ }, "node_modules/fast-deep-equal": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-diff": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fastest-levenshtein": { "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", - "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, + "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" }, @@ -1327,9 +1207,8 @@ }, "node_modules/find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -1339,9 +1218,8 @@ }, "node_modules/flat-cache": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, + "license": "MIT", "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -1352,33 +1230,28 @@ }, "node_modules/flatted": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/get-intrinsic": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -1390,9 +1263,8 @@ }, "node_modules/get-stream": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -1402,9 +1274,8 @@ }, "node_modules/glob": { "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -1422,9 +1293,8 @@ }, "node_modules/glob-parent": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -1434,15 +1304,13 @@ }, "node_modules/glob-to-regexp": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, "node_modules/globals": { "version": "13.6.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.6.0.tgz", - "integrity": "sha512-YFKCX0SiPg7l5oKYCJ2zZGxcXprVXHcSnVuvzrT3oSENQonVLqM5pf9fN5dLGZGyCjhw8TN8Btwe/jKnZ0pjvQ==", "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.20.2" }, @@ -1455,15 +1323,13 @@ }, "node_modules/graceful-fs": { "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1" }, @@ -1473,27 +1339,24 @@ }, "node_modules/has-bigints": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/has-symbols": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1503,33 +1366,29 @@ }, "node_modules/hosted-git-info": { "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/human-signals": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=10.17.0" } }, "node_modules/ignore": { "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/import-fresh": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, + "license": "MIT", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -1543,9 +1402,8 @@ }, "node_modules/import-local": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", "dev": true, + "license": "MIT", "dependencies": { "pkg-dir": "^4.2.0", "resolve-cwd": "^3.0.0" @@ -1559,9 +1417,8 @@ }, "node_modules/import-local/node_modules/find-up": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -1572,9 +1429,8 @@ }, "node_modules/import-local/node_modules/locate-path": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -1584,9 +1440,8 @@ }, "node_modules/import-local/node_modules/p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -1599,9 +1454,8 @@ }, "node_modules/import-local/node_modules/p-locate": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -1611,27 +1465,24 @@ }, "node_modules/import-local/node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/import-local/node_modules/path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/import-local/node_modules/pkg-dir": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^4.0.0" }, @@ -1641,18 +1492,16 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } }, "node_modules/inflight": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -1660,39 +1509,34 @@ }, "node_modules/inherits": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/interpret": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.10" } }, "node_modules/is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-bigint": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz", - "integrity": "sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-boolean-object": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz", - "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0" }, @@ -1705,9 +1549,8 @@ }, "node_modules/is-callable": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1717,9 +1560,8 @@ }, "node_modules/is-core-module": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", "dev": true, + "license": "MIT", "dependencies": { "has": "^1.0.3" }, @@ -1729,9 +1571,8 @@ }, "node_modules/is-date-object": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1741,27 +1582,24 @@ }, "node_modules/is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/is-glob": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -1771,9 +1609,8 @@ }, "node_modules/is-negative-zero": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1783,9 +1620,8 @@ }, "node_modules/is-number-object": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", - "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1795,9 +1631,8 @@ }, "node_modules/is-plain-object": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, + "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, @@ -1807,9 +1642,8 @@ }, "node_modules/is-regex": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "has-symbols": "^1.0.1" @@ -1823,18 +1657,16 @@ }, "node_modules/is-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/is-string": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1844,9 +1676,8 @@ }, "node_modules/is-symbol": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.1" }, @@ -1859,30 +1690,26 @@ }, "node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/isobject": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/jest-worker": { "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*", "merge-stream": "^2.0.0", @@ -1894,15 +1721,13 @@ }, "node_modules/js-tokens": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/js-yaml": { "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -1913,27 +1738,23 @@ }, "node_modules/json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-schema-traverse": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json5": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, + "license": "MIT", "dependencies": { "minimist": "^1.2.0" }, @@ -1943,18 +1764,16 @@ }, "node_modules/kind-of": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -1965,9 +1784,8 @@ }, "node_modules/load-json-file": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", @@ -1980,18 +1798,16 @@ }, "node_modules/loader-runner": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", - "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.11.5" } }, "node_modules/locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -2002,15 +1818,13 @@ }, "node_modules/lodash": { "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -2020,8 +1834,6 @@ }, "node_modules/memorystream": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", "dev": true, "engines": { "node": ">= 0.10.0" @@ -2029,24 +1841,21 @@ }, "node_modules/merge-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/mime-db": { "version": "1.46.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz", - "integrity": "sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { "version": "2.1.29", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz", - "integrity": "sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==", "dev": true, + "license": "MIT", "dependencies": { "mime-db": "1.46.0" }, @@ -2056,18 +1865,16 @@ }, "node_modules/mimic-fn": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/minimatch": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -2077,45 +1884,38 @@ }, "node_modules/minimist": { "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ms": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/neo-async": { "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/nice-try": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/node-releases": { "version": "1.1.71", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", - "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/normalize-package-data": { "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -2125,18 +1925,16 @@ }, "node_modules/normalize-package-data/node_modules/semver": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } }, "node_modules/npm-run-all": { "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "chalk": "^2.4.1", @@ -2159,9 +1957,8 @@ }, "node_modules/npm-run-all/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, + "license": "MIT", "dependencies": { "color-convert": "^1.9.0" }, @@ -2171,9 +1968,8 @@ }, "node_modules/npm-run-all/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -2185,24 +1981,21 @@ }, "node_modules/npm-run-all/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, + "license": "MIT", "dependencies": { "color-name": "1.1.3" } }, "node_modules/npm-run-all/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/npm-run-all/node_modules/cross-spawn": { "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, + "license": "MIT", "dependencies": { "nice-try": "^1.0.4", "path-key": "^2.0.1", @@ -2216,36 +2009,32 @@ }, "node_modules/npm-run-all/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/npm-run-all/node_modules/path-key": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/npm-run-all/node_modules/semver": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } }, "node_modules/npm-run-all/node_modules/shebang-command": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^1.0.0" }, @@ -2255,18 +2044,16 @@ }, "node_modules/npm-run-all/node_modules/shebang-regex": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/npm-run-all/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -2276,9 +2063,8 @@ }, "node_modules/npm-run-all/node_modules/which": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -2288,9 +2074,8 @@ }, "node_modules/npm-run-path": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.0.0" }, @@ -2300,27 +2085,24 @@ }, "node_modules/object-inspect": { "version": "1.9.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", - "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -2336,9 +2118,8 @@ }, "node_modules/object.entries": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3", @@ -2351,9 +2132,8 @@ }, "node_modules/object.values": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz", - "integrity": "sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -2369,18 +2149,16 @@ }, "node_modules/once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, + "license": "ISC", "dependencies": { "wrappy": "1" } }, "node_modules/onetime": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, + "license": "MIT", "dependencies": { "mimic-fn": "^2.1.0" }, @@ -2393,9 +2171,8 @@ }, "node_modules/optionator": { "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, + "license": "MIT", "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -2410,9 +2187,8 @@ }, "node_modules/p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -2422,9 +2198,8 @@ }, "node_modules/p-locate": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -2434,18 +2209,16 @@ }, "node_modules/p-try": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/parent-module": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, + "license": "MIT", "dependencies": { "callsites": "^3.0.0" }, @@ -2455,9 +2228,8 @@ }, "node_modules/parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, + "license": "MIT", "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -2468,42 +2240,37 @@ }, "node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/path-parse": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/path-type": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, + "license": "MIT", "dependencies": { "pify": "^3.0.0" }, @@ -2513,9 +2280,8 @@ }, "node_modules/pidtree": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", "dev": true, + "license": "MIT", "bin": { "pidtree": "bin/pidtree.js" }, @@ -2525,18 +2291,16 @@ }, "node_modules/pify": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/pkg-dir": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^2.1.0" }, @@ -2546,18 +2310,16 @@ }, "node_modules/prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8.0" } }, "node_modules/prettier": { "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", "dev": true, + "license": "MIT", "bin": { "prettier": "bin-prettier.js" }, @@ -2567,9 +2329,8 @@ }, "node_modules/prettier-linter-helpers": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, + "license": "MIT", "dependencies": { "fast-diff": "^1.1.2" }, @@ -2579,36 +2340,32 @@ }, "node_modules/progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.4.0" } }, "node_modules/punycode": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/randombytes": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "^5.1.0" } }, "node_modules/read-pkg": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, + "license": "MIT", "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", @@ -2620,9 +2377,8 @@ }, "node_modules/read-pkg-up": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^2.0.0", "read-pkg": "^2.0.0" @@ -2633,9 +2389,8 @@ }, "node_modules/read-pkg-up/node_modules/load-json-file": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", @@ -2648,9 +2403,8 @@ }, "node_modules/read-pkg-up/node_modules/parse-json": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, + "license": "MIT", "dependencies": { "error-ex": "^1.2.0" }, @@ -2660,9 +2414,8 @@ }, "node_modules/read-pkg-up/node_modules/path-type": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "dev": true, + "license": "MIT", "dependencies": { "pify": "^2.0.0" }, @@ -2672,18 +2425,16 @@ }, "node_modules/read-pkg-up/node_modules/pify": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/read-pkg-up/node_modules/read-pkg": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, + "license": "MIT", "dependencies": { "load-json-file": "^2.0.0", "normalize-package-data": "^2.3.2", @@ -2695,9 +2446,8 @@ }, "node_modules/rechoir": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", - "integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==", "dev": true, + "license": "MIT", "dependencies": { "resolve": "^1.9.0" }, @@ -2707,9 +2457,8 @@ }, "node_modules/regexpp": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -2719,18 +2468,16 @@ }, "node_modules/require-from-string": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/resolve": { "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.2.0", "path-parse": "^1.0.6" @@ -2741,9 +2488,8 @@ }, "node_modules/resolve-cwd": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, + "license": "MIT", "dependencies": { "resolve-from": "^5.0.0" }, @@ -2753,27 +2499,24 @@ }, "node_modules/resolve-cwd/node_modules/resolve-from": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/resolve-from": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -2786,8 +2529,6 @@ }, "node_modules/safe-buffer": { "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true, "funding": [ { @@ -2802,13 +2543,13 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/schema-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", "dev": true, + "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.6", "ajv": "^6.12.5", @@ -2824,9 +2565,8 @@ }, "node_modules/semver": { "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -2839,18 +2579,16 @@ }, "node_modules/serialize-javascript": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "randombytes": "^2.1.0" } }, "node_modules/shallow-clone": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^6.0.2" }, @@ -2860,9 +2598,8 @@ }, "node_modules/shebang-command": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -2872,30 +2609,26 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/shell-quote": { "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/signal-exit": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -2910,24 +2643,21 @@ }, "node_modules/source-list-map": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/source-map": { "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } }, "node_modules/source-map-support": { "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -2935,9 +2665,8 @@ }, "node_modules/spdx-correct": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -2945,15 +2674,13 @@ }, "node_modules/spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true + "dev": true, + "license": "CC-BY-3.0" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, + "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -2961,21 +2688,18 @@ }, "node_modules/spdx-license-ids": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", - "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", - "dev": true + "dev": true, + "license": "CC0-1.0" }, "node_modules/sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/string-width": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -2987,9 +2711,8 @@ }, "node_modules/string.prototype.padend": { "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -3004,9 +2727,8 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -3017,9 +2739,8 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" @@ -3030,9 +2751,8 @@ }, "node_modules/strip-ansi": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.0" }, @@ -3042,27 +2762,24 @@ }, "node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/strip-final-newline": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -3072,9 +2789,8 @@ }, "node_modules/supports-color": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -3084,9 +2800,8 @@ }, "node_modules/table": { "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "ajv": "^7.0.2", "lodash": "^4.17.20", @@ -3099,9 +2814,8 @@ }, "node_modules/table/node_modules/ajv": { "version": "7.2.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.1.tgz", - "integrity": "sha512-+nu0HDv7kNSOua9apAVc979qd932rrZeb3WOvoiD31A/p1mIE5/9bN2027pE2rOPYEdS3UHzsvof4hY+lM9/WQ==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -3115,24 +2829,21 @@ }, "node_modules/table/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/tapable": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz", - "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/terser": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz", - "integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "commander": "^2.20.0", "source-map": "~0.7.2", @@ -3147,9 +2858,8 @@ }, "node_modules/terser-webpack-plugin": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.1.tgz", - "integrity": "sha512-5XNNXZiR8YO6X6KhSGXfY0QrGrCRlSwAEjIIrlRQR4W8nP69TaJUlh3bkuac6zzgspiGPfKEHcY295MMVExl5Q==", "dev": true, + "license": "MIT", "dependencies": { "jest-worker": "^26.6.2", "p-limit": "^3.1.0", @@ -3171,9 +2881,8 @@ }, "node_modules/terser-webpack-plugin/node_modules/p-limit": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -3186,24 +2895,21 @@ }, "node_modules/terser/node_modules/source-map": { "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">= 8" } }, "node_modules/text-table": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/tsconfig-paths": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, + "license": "MIT", "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.1", @@ -3213,15 +2919,13 @@ }, "node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "dev": true, + "license": "0BSD" }, "node_modules/type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" }, @@ -3231,9 +2935,8 @@ }, "node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -3243,9 +2946,8 @@ }, "node_modules/unbox-primitive": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.0.tgz", - "integrity": "sha512-P/51NX+JXyxK/aigg1/ZgyccdAxm5K1+n8+tvqSntjOivPt19gvm1VC49RWYetsiub8WViUchdxl/KWHHB0kzA==", "dev": true, + "license": "MIT", "dependencies": { "function-bind": "^1.1.1", "has-bigints": "^1.0.0", @@ -3255,24 +2957,21 @@ }, "node_modules/uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" } }, "node_modules/v8-compile-cache": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -3280,9 +2979,8 @@ }, "node_modules/watchpack": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", - "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==", "dev": true, + "license": "MIT", "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" @@ -3293,9 +2991,8 @@ }, "node_modules/webpack": { "version": "5.26.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.26.2.tgz", - "integrity": "sha512-h07tAPeQceEO3Idrevqv4ECcpMH8Zp0aUUJ+IytujWTVf6TF5PI3rKVw0Z+7rNjU4qJuEx18BykFxgRvR9VgEQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.0", "@types/estree": "^0.0.46", @@ -3339,9 +3036,8 @@ }, "node_modules/webpack-cli": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.5.0.tgz", - "integrity": "sha512-wXg/ef6Ibstl2f50mnkcHblRPN/P9J4Nlod5Hg9HGFgSeF8rsqDGHJeVe4aR26q9l62TUJi6vmvC2Qz96YJw1Q==", "dev": true, + "license": "MIT", "dependencies": { "@discoveryjs/json-ext": "^0.5.0", "@webpack-cli/configtest": "^1.0.1", @@ -3387,18 +3083,16 @@ }, "node_modules/webpack-cli/node_modules/commander": { "version": "7.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", - "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 10" } }, "node_modules/webpack-merge": { "version": "5.7.3", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz", - "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==", "dev": true, + "license": "MIT", "dependencies": { "clone-deep": "^4.0.1", "wildcard": "^2.0.0" @@ -3409,9 +3103,8 @@ }, "node_modules/webpack-sources": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz", - "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==", "dev": true, + "license": "MIT", "dependencies": { "source-list-map": "^2.0.1", "source-map": "^0.6.1" @@ -3422,9 +3115,8 @@ }, "node_modules/webpack/node_modules/acorn": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz", - "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==", "dev": true, + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -3434,9 +3126,8 @@ }, "node_modules/which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -3449,9 +3140,8 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, + "license": "MIT", "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -3465,36 +3155,31 @@ }, "node_modules/wildcard": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/word-wrap": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/yocto-queue": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -3506,8 +3191,6 @@ "dependencies": { "@babel/code-frame": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, "requires": { "@babel/highlight": "^7.10.4" @@ -3515,14 +3198,10 @@ }, "@babel/helper-validator-identifier": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", "dev": true }, "@babel/highlight": { "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", - "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -3532,8 +3211,6 @@ "dependencies": { "ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { "color-convert": "^1.9.0" @@ -3541,8 +3218,6 @@ }, "chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -3552,8 +3227,6 @@ }, "color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { "color-name": "1.1.3" @@ -3561,20 +3234,14 @@ }, "color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -3584,19 +3251,13 @@ }, "@discoveryjs/json-ext": { "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz", - "integrity": "sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==", "dev": true }, "@eastdesire/jscolor": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@eastdesire/jscolor/-/jscolor-2.4.5.tgz", - "integrity": "sha512-LDCEGN7qKKO3tq6yYtx6cbz/tQlr9LqKNSFaG2GIIn03y67ot3doucpDGoQjCwXG2xUB4pDXRuH2lobjjxhtJA==" + "version": "2.4.5" }, "@eslint/eslintrc": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", - "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -3612,8 +3273,6 @@ "dependencies": { "globals": { "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "dev": true, "requires": { "type-fest": "^0.8.1" @@ -3621,16 +3280,12 @@ }, "type-fest": { "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true } } }, "@types/eslint": { "version": "7.2.7", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.7.tgz", - "integrity": "sha512-EHXbc1z2GoQRqHaAT7+grxlTJ3WE2YNeD6jlpPoRc83cCoThRY+NUWjCUZaYmk51OICkPXn2hhphcWcWXgNW0Q==", "dev": true, "requires": { "@types/estree": "*", @@ -3639,8 +3294,6 @@ }, "@types/eslint-scope": { "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", - "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", "dev": true, "requires": { "@types/eslint": "*", @@ -3649,32 +3302,22 @@ }, "@types/estree": { "version": "0.0.46", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz", - "integrity": "sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==", "dev": true }, "@types/json-schema": { "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", - "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, "@types/json5": { "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, "@types/node": { "version": "14.14.35", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.35.tgz", - "integrity": "sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag==", "dev": true }, "@webassemblyjs/ast": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", - "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", "dev": true, "requires": { "@webassemblyjs/helper-numbers": "1.11.0", @@ -3683,26 +3326,18 @@ }, "@webassemblyjs/floating-point-hex-parser": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", - "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==", "dev": true }, "@webassemblyjs/helper-api-error": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", - "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==", "dev": true }, "@webassemblyjs/helper-buffer": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", - "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==", "dev": true }, "@webassemblyjs/helper-numbers": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", - "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", "dev": true, "requires": { "@webassemblyjs/floating-point-hex-parser": "1.11.0", @@ -3712,14 +3347,10 @@ }, "@webassemblyjs/helper-wasm-bytecode": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", - "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==", "dev": true }, "@webassemblyjs/helper-wasm-section": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", - "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", @@ -3730,8 +3361,6 @@ }, "@webassemblyjs/ieee754": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", - "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" @@ -3739,8 +3368,6 @@ }, "@webassemblyjs/leb128": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", - "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", "dev": true, "requires": { "@xtuc/long": "4.2.2" @@ -3748,14 +3375,10 @@ }, "@webassemblyjs/utf8": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", - "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==", "dev": true }, "@webassemblyjs/wasm-edit": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", - "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", @@ -3770,8 +3393,6 @@ }, "@webassemblyjs/wasm-gen": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", - "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", @@ -3783,8 +3404,6 @@ }, "@webassemblyjs/wasm-opt": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", - "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", @@ -3795,8 +3414,6 @@ }, "@webassemblyjs/wasm-parser": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", - "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", @@ -3809,8 +3426,6 @@ }, "@webassemblyjs/wast-printer": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", - "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", @@ -3819,15 +3434,11 @@ }, "@webpack-cli/configtest": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.1.tgz", - "integrity": "sha512-B+4uBUYhpzDXmwuo3V9yBH6cISwxEI4J+NO5ggDaGEEHb0osY/R7MzeKc0bHURXQuZjMM4qD+bSJCKIuI3eNBQ==", "dev": true, "requires": {} }, "@webpack-cli/info": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.2.tgz", - "integrity": "sha512-5U9kUJHnwU+FhKH4PWGZuBC1hTEPYyxGSL5jjoBI96Gx8qcYJGOikpiIpFoTq8mmgX3im2zAo2wanv/alD74KQ==", "dev": true, "requires": { "envinfo": "^7.7.3" @@ -3835,40 +3446,28 @@ }, "@webpack-cli/serve": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.0.tgz", - "integrity": "sha512-k2p2VrONcYVX1wRRrf0f3X2VGltLWcv+JzXRBDmvCxGlCeESx4OXw91TsWeKOkp784uNoVQo313vxJFHXPPwfw==", "dev": true, "requires": {} }, "@xtuc/ieee754": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true }, "@xtuc/long": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, "acorn": { "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, "acorn-jsx": { "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true, "requires": {} }, "ajv": { "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -3879,27 +3478,19 @@ }, "ajv-keywords": { "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, "requires": {} }, "ansi-colors": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "dev": true }, "ansi-regex": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { "color-convert": "^2.0.1" @@ -3907,8 +3498,6 @@ }, "argparse": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { "sprintf-js": "~1.0.2" @@ -3916,8 +3505,6 @@ }, "array-includes": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -3929,8 +3516,6 @@ }, "array.prototype.flat": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -3940,20 +3525,14 @@ }, "astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, "balanced-match": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, "brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { "balanced-match": "^1.0.0", @@ -3962,8 +3541,6 @@ }, "browserslist": { "version": "4.16.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", - "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", "dev": true, "requires": { "caniuse-lite": "^1.0.30001181", @@ -3975,14 +3552,10 @@ }, "buffer-from": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, "call-bind": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -3991,20 +3564,14 @@ }, "callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, "caniuse-lite": { "version": "1.0.30001202", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001202.tgz", - "integrity": "sha512-ZcijQNqrcF8JNLjzvEiXqX4JUYxoZa7Pvcsd9UD8Kz4TvhTonOSNRsK+qtvpVL4l6+T1Rh4LFtLfnNWg6BGWCQ==", "dev": true }, "chalk": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { "ansi-styles": "^4.1.0", @@ -4013,8 +3580,6 @@ }, "chrome-trace-event": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -4022,8 +3587,6 @@ }, "clone-deep": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, "requires": { "is-plain-object": "^2.0.4", @@ -4033,8 +3596,6 @@ }, "color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { "color-name": "~1.1.4" @@ -4042,44 +3603,30 @@ }, "color-name": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "colorette": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", "dev": true }, "commander": { "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, "concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "confusing-browser-globals": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz", - "integrity": "sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==", "dev": true }, "contains-path": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", "dev": true }, "cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -4089,8 +3636,6 @@ }, "debug": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -4098,14 +3643,10 @@ }, "deep-is": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, "define-properties": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "requires": { "object-keys": "^1.0.12" @@ -4113,8 +3654,6 @@ }, "doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -4122,20 +3661,14 @@ }, "electron-to-chromium": { "version": "1.3.690", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.690.tgz", - "integrity": "sha512-zPbaSv1c8LUKqQ+scNxJKv01RYFkVVF1xli+b+3Ty8ONujHjAMg+t/COmdZqrtnS1gT+g4hbSodHillymt1Lww==", "dev": true }, "emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "enhanced-resolve": { "version": "5.7.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz", - "integrity": "sha512-6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==", "dev": true, "requires": { "graceful-fs": "^4.2.4", @@ -4144,8 +3677,6 @@ }, "enquirer": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "requires": { "ansi-colors": "^4.1.1" @@ -4153,14 +3684,10 @@ }, "envinfo": { "version": "7.7.4", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz", - "integrity": "sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ==", "dev": true }, "error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { "is-arrayish": "^0.2.1" @@ -4168,8 +3695,6 @@ }, "es-abstract": { "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4192,14 +3717,10 @@ }, "es-module-lexer": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", - "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==", "dev": true }, "es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { "is-callable": "^1.1.4", @@ -4209,20 +3730,14 @@ }, "escalade": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, "escape-string-regexp": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "eslint": { "version": "7.22.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.22.0.tgz", - "integrity": "sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -4266,8 +3781,6 @@ }, "eslint-config-airbnb-base": { "version": "14.2.1", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.1.tgz", - "integrity": "sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA==", "dev": true, "requires": { "confusing-browser-globals": "^1.0.10", @@ -4277,15 +3790,11 @@ }, "eslint-config-prettier": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz", - "integrity": "sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw==", "dev": true, "requires": {} }, "eslint-import-resolver-node": { "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, "requires": { "debug": "^2.6.9", @@ -4294,8 +3803,6 @@ "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -4303,16 +3810,12 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, "eslint-module-utils": { "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", "dev": true, "requires": { "debug": "^2.6.9", @@ -4321,8 +3824,6 @@ "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -4330,16 +3831,12 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, "eslint-plugin-import": { "version": "2.22.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", - "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", "dev": true, "requires": { "array-includes": "^3.1.1", @@ -4359,8 +3856,6 @@ "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -4368,8 +3863,6 @@ }, "doctrine": { "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", "dev": true, "requires": { "esutils": "^2.0.2", @@ -4378,16 +3871,12 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, "eslint-plugin-prettier": { "version": "3.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.1.tgz", - "integrity": "sha512-Rq3jkcFY8RYeQLgk2cCwuc0P7SEFwDravPhsJZOQ5N4YI4DSg50NyqJ/9gdZHzQlHf8MvafSesbNJCcP/FF6pQ==", "dev": true, "requires": { "prettier-linter-helpers": "^1.0.0" @@ -4395,8 +3884,6 @@ }, "eslint-scope": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -4405,8 +3892,6 @@ }, "eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" @@ -4414,22 +3899,16 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "eslint-visitor-keys": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", "dev": true }, "espree": { "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "requires": { "acorn": "^7.4.0", @@ -4439,22 +3918,16 @@ "dependencies": { "eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true } } }, "esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, "esquery": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -4462,16 +3935,12 @@ "dependencies": { "estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } }, "esrecurse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "requires": { "estraverse": "^5.2.0" @@ -4479,34 +3948,24 @@ "dependencies": { "estraverse": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } }, "estraverse": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true }, "esutils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, "events": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true }, "execa": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", "dev": true, "requires": { "cross-spawn": "^7.0.3", @@ -4522,38 +3981,26 @@ }, "fast-deep-equal": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, "fast-diff": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, "fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, "fastest-levenshtein": { "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", - "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", "dev": true }, "file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "requires": { "flat-cache": "^3.0.4" @@ -4561,8 +4008,6 @@ }, "find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { "locate-path": "^2.0.0" @@ -4570,8 +4015,6 @@ }, "flat-cache": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "requires": { "flatted": "^3.1.0", @@ -4580,32 +4023,22 @@ }, "flatted": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, "fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, "function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, "functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, "get-intrinsic": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -4615,14 +4048,10 @@ }, "get-stream": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", "dev": true }, "glob": { "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "dev": true, "requires": { "fs.realpath": "^1.0.0", @@ -4635,8 +4064,6 @@ }, "glob-parent": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -4644,14 +4071,10 @@ }, "glob-to-regexp": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true }, "globals": { "version": "13.6.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.6.0.tgz", - "integrity": "sha512-YFKCX0SiPg7l5oKYCJ2zZGxcXprVXHcSnVuvzrT3oSENQonVLqM5pf9fN5dLGZGyCjhw8TN8Btwe/jKnZ0pjvQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -4659,14 +4082,10 @@ }, "graceful-fs": { "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, "has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { "function-bind": "^1.1.1" @@ -4674,44 +4093,30 @@ }, "has-bigints": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", "dev": true }, "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, "has-symbols": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true }, "hosted-git-info": { "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true }, "human-signals": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true }, "ignore": { "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, "import-fresh": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -4720,8 +4125,6 @@ }, "import-local": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", "dev": true, "requires": { "pkg-dir": "^4.2.0", @@ -4730,8 +4133,6 @@ "dependencies": { "find-up": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { "locate-path": "^5.0.0", @@ -4740,8 +4141,6 @@ }, "locate-path": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { "p-locate": "^4.1.0" @@ -4749,8 +4148,6 @@ }, "p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -4758,8 +4155,6 @@ }, "p-locate": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { "p-limit": "^2.2.0" @@ -4767,20 +4162,14 @@ }, "p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, "path-exists": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "pkg-dir": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { "find-up": "^4.0.0" @@ -4790,14 +4179,10 @@ }, "imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, "inflight": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { "once": "^1.3.0", @@ -4806,32 +4191,22 @@ }, "inherits": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "interpret": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", "dev": true }, "is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-bigint": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz", - "integrity": "sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==", "dev": true }, "is-boolean-object": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz", - "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==", "dev": true, "requires": { "call-bind": "^1.0.0" @@ -4839,14 +4214,10 @@ }, "is-callable": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true }, "is-core-module": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", "dev": true, "requires": { "has": "^1.0.3" @@ -4854,26 +4225,18 @@ }, "is-date-object": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", "dev": true }, "is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "is-glob": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -4881,20 +4244,14 @@ }, "is-negative-zero": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true }, "is-number-object": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", - "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", "dev": true }, "is-plain-object": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { "isobject": "^3.0.1" @@ -4902,8 +4259,6 @@ }, "is-regex": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -4912,20 +4267,14 @@ }, "is-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, "is-string": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", "dev": true }, "is-symbol": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "dev": true, "requires": { "has-symbols": "^1.0.1" @@ -4933,26 +4282,18 @@ }, "isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, "isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, "isobject": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true }, "jest-worker": { "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", "dev": true, "requires": { "@types/node": "*", @@ -4962,14 +4303,10 @@ }, "js-tokens": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -4978,26 +4315,18 @@ }, "json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "json-schema-traverse": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, "json5": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, "requires": { "minimist": "^1.2.0" @@ -5005,14 +4334,10 @@ }, "kind-of": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, "levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "requires": { "prelude-ls": "^1.2.1", @@ -5021,8 +4346,6 @@ }, "load-json-file": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -5033,14 +4356,10 @@ }, "loader-runner": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", - "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", "dev": true }, "locate-path": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { "p-locate": "^2.0.0", @@ -5049,14 +4368,10 @@ }, "lodash": { "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, "lru-cache": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "requires": { "yallist": "^4.0.0" @@ -5064,26 +4379,18 @@ }, "memorystream": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", "dev": true }, "merge-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, "mime-db": { "version": "1.46.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz", - "integrity": "sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ==", "dev": true }, "mime-types": { "version": "2.1.29", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz", - "integrity": "sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==", "dev": true, "requires": { "mime-db": "1.46.0" @@ -5091,14 +4398,10 @@ }, "mimic-fn": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, "minimatch": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { "brace-expansion": "^1.1.7" @@ -5106,44 +4409,30 @@ }, "minimist": { "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "ms": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, "neo-async": { "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, "nice-try": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, "node-releases": { "version": "1.1.71", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", - "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==", "dev": true }, "normalize-package-data": { "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "requires": { "hosted-git-info": "^2.1.4", @@ -5154,16 +4443,12 @@ "dependencies": { "semver": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } }, "npm-run-all": { "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -5179,8 +4464,6 @@ "dependencies": { "ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { "color-convert": "^1.9.0" @@ -5188,8 +4471,6 @@ }, "chalk": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -5199,8 +4480,6 @@ }, "color-convert": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { "color-name": "1.1.3" @@ -5208,14 +4487,10 @@ }, "color-name": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "cross-spawn": { "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, "requires": { "nice-try": "^1.0.4", @@ -5227,26 +4502,18 @@ }, "has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "path-key": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", "dev": true }, "semver": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "shebang-command": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { "shebang-regex": "^1.0.0" @@ -5254,14 +4521,10 @@ }, "shebang-regex": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, "supports-color": { "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -5269,8 +4532,6 @@ }, "which": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { "isexe": "^2.0.0" @@ -5280,8 +4541,6 @@ }, "npm-run-path": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "requires": { "path-key": "^3.0.0" @@ -5289,20 +4548,14 @@ }, "object-inspect": { "version": "1.9.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", - "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", "dev": true }, "object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, "object.assign": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -5313,8 +4566,6 @@ }, "object.entries": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", "dev": true, "requires": { "call-bind": "^1.0.0", @@ -5325,8 +4576,6 @@ }, "object.values": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz", - "integrity": "sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5337,8 +4586,6 @@ }, "once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { "wrappy": "1" @@ -5346,8 +4593,6 @@ }, "onetime": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "requires": { "mimic-fn": "^2.1.0" @@ -5355,8 +4600,6 @@ }, "optionator": { "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "requires": { "deep-is": "^0.1.3", @@ -5369,8 +4612,6 @@ }, "p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -5378,8 +4619,6 @@ }, "p-locate": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { "p-limit": "^1.1.0" @@ -5387,14 +4626,10 @@ }, "p-try": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, "parent-module": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { "callsites": "^3.0.0" @@ -5402,8 +4637,6 @@ }, "parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { "error-ex": "^1.3.1", @@ -5412,32 +4645,22 @@ }, "path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "dev": true }, "path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, "path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "path-parse": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", "dev": true }, "path-type": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "requires": { "pify": "^3.0.0" @@ -5445,20 +4668,14 @@ }, "pidtree": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", "dev": true }, "pify": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true }, "pkg-dir": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { "find-up": "^2.1.0" @@ -5466,20 +4683,14 @@ }, "prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, "prettier": { "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", "dev": true }, "prettier-linter-helpers": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, "requires": { "fast-diff": "^1.1.2" @@ -5487,20 +4698,14 @@ }, "progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "punycode": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "randombytes": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "requires": { "safe-buffer": "^5.1.0" @@ -5508,8 +4713,6 @@ }, "read-pkg": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, "requires": { "load-json-file": "^4.0.0", @@ -5519,8 +4722,6 @@ }, "read-pkg-up": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "dev": true, "requires": { "find-up": "^2.0.0", @@ -5529,8 +4730,6 @@ "dependencies": { "load-json-file": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { "graceful-fs": "^4.1.2", @@ -5541,8 +4740,6 @@ }, "parse-json": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { "error-ex": "^1.2.0" @@ -5550,8 +4747,6 @@ }, "path-type": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "dev": true, "requires": { "pify": "^2.0.0" @@ -5559,14 +4754,10 @@ }, "pify": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, "read-pkg": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, "requires": { "load-json-file": "^2.0.0", @@ -5578,8 +4769,6 @@ }, "rechoir": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", - "integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==", "dev": true, "requires": { "resolve": "^1.9.0" @@ -5587,20 +4776,14 @@ }, "regexpp": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", "dev": true }, "require-from-string": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "resolve": { "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "requires": { "is-core-module": "^2.2.0", @@ -5609,8 +4792,6 @@ }, "resolve-cwd": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "requires": { "resolve-from": "^5.0.0" @@ -5618,22 +4799,16 @@ "dependencies": { "resolve-from": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true } } }, "resolve-from": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, "rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { "glob": "^7.1.3" @@ -5641,14 +4816,10 @@ }, "safe-buffer": { "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true }, "schema-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", "dev": true, "requires": { "@types/json-schema": "^7.0.6", @@ -5658,8 +4829,6 @@ }, "semver": { "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -5667,8 +4836,6 @@ }, "serialize-javascript": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -5676,8 +4843,6 @@ }, "shallow-clone": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", "dev": true, "requires": { "kind-of": "^6.0.2" @@ -5685,8 +4850,6 @@ }, "shebang-command": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { "shebang-regex": "^3.0.0" @@ -5694,26 +4857,18 @@ }, "shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, "shell-quote": { "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", "dev": true }, "signal-exit": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, "slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -5723,20 +4878,14 @@ }, "source-list-map": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", "dev": true }, "source-map": { "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, "source-map-support": { "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -5745,8 +4894,6 @@ }, "spdx-correct": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -5755,14 +4902,10 @@ }, "spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -5771,20 +4914,14 @@ }, "spdx-license-ids": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", - "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", "dev": true }, "sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "string-width": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -5794,8 +4931,6 @@ }, "string.prototype.padend": { "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5805,8 +4940,6 @@ }, "string.prototype.trimend": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5815,8 +4948,6 @@ }, "string.prototype.trimstart": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -5825,8 +4956,6 @@ }, "strip-ansi": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { "ansi-regex": "^5.0.0" @@ -5834,26 +4963,18 @@ }, "strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, "strip-final-newline": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true }, "strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, "supports-color": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { "has-flag": "^4.0.0" @@ -5861,8 +4982,6 @@ }, "table": { "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", "dev": true, "requires": { "ajv": "^7.0.2", @@ -5873,8 +4992,6 @@ "dependencies": { "ajv": { "version": "7.2.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.1.tgz", - "integrity": "sha512-+nu0HDv7kNSOua9apAVc979qd932rrZeb3WOvoiD31A/p1mIE5/9bN2027pE2rOPYEdS3UHzsvof4hY+lM9/WQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -5885,22 +5002,16 @@ }, "json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true } } }, "tapable": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz", - "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==", "dev": true }, "terser": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz", - "integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==", "dev": true, "requires": { "commander": "^2.20.0", @@ -5910,16 +5021,12 @@ "dependencies": { "source-map": { "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true } } }, "terser-webpack-plugin": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.1.tgz", - "integrity": "sha512-5XNNXZiR8YO6X6KhSGXfY0QrGrCRlSwAEjIIrlRQR4W8nP69TaJUlh3bkuac6zzgspiGPfKEHcY295MMVExl5Q==", "dev": true, "requires": { "jest-worker": "^26.6.2", @@ -5932,8 +5039,6 @@ "dependencies": { "p-limit": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "requires": { "yocto-queue": "^0.1.0" @@ -5943,14 +5048,10 @@ }, "text-table": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, "tsconfig-paths": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, "requires": { "@types/json5": "^0.0.29", @@ -5961,14 +5062,10 @@ }, "tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, "type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { "prelude-ls": "^1.2.1" @@ -5976,14 +5073,10 @@ }, "type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, "unbox-primitive": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.0.tgz", - "integrity": "sha512-P/51NX+JXyxK/aigg1/ZgyccdAxm5K1+n8+tvqSntjOivPt19gvm1VC49RWYetsiub8WViUchdxl/KWHHB0kzA==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -5994,8 +5087,6 @@ }, "uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" @@ -6003,14 +5094,10 @@ }, "v8-compile-cache": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -6019,8 +5106,6 @@ }, "watchpack": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", - "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==", "dev": true, "requires": { "glob-to-regexp": "^0.4.1", @@ -6029,8 +5114,6 @@ }, "webpack": { "version": "5.26.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.26.2.tgz", - "integrity": "sha512-h07tAPeQceEO3Idrevqv4ECcpMH8Zp0aUUJ+IytujWTVf6TF5PI3rKVw0Z+7rNjU4qJuEx18BykFxgRvR9VgEQ==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", @@ -6060,16 +5143,12 @@ "dependencies": { "acorn": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz", - "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==", "dev": true } } }, "webpack-cli": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.5.0.tgz", - "integrity": "sha512-wXg/ef6Ibstl2f50mnkcHblRPN/P9J4Nlod5Hg9HGFgSeF8rsqDGHJeVe4aR26q9l62TUJi6vmvC2Qz96YJw1Q==", "dev": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", @@ -6090,16 +5169,12 @@ "dependencies": { "commander": { "version": "7.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", - "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", "dev": true } } }, "webpack-merge": { "version": "5.7.3", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz", - "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==", "dev": true, "requires": { "clone-deep": "^4.0.1", @@ -6108,8 +5183,6 @@ }, "webpack-sources": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz", - "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==", "dev": true, "requires": { "source-list-map": "^2.0.1", @@ -6118,8 +5191,6 @@ }, "which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { "isexe": "^2.0.0" @@ -6127,8 +5198,6 @@ }, "which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "requires": { "is-bigint": "^1.0.1", @@ -6140,32 +5209,22 @@ }, "wildcard": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "dev": true }, "word-wrap": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, "wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, "yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, "yocto-queue": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true } } diff --git a/src/Cache/Dragon/Dragon.js b/src/Cache/Dragon/Dragon.js index 405dcf9..ccf4e77 100644 --- a/src/Cache/Dragon/Dragon.js +++ b/src/Cache/Dragon/Dragon.js @@ -1,4 +1,3 @@ -/* eslint-disable no-restricted-syntax */ /* eslint-disable no-unused-vars */ /** Functions related to the Dragon */ @@ -52,28 +51,27 @@ export default function CacheDragonCost() { } else { let cost = 0; CopyData(); - for (const j of Object.keys(Game.Objects)) { + Object.keys(Game.Objects).forEach((j) => { target = j; if (Game.Objects[target].amount < amount) { CacheCostDragonUpgrade = 'Not enough buildings to sell'; - break; - } else { - for (let i = 0; i < amount; i++) { - let price = - SimObjects[target].basePrice * - Game.priceIncrease ** - Math.max( - 0, - SimObjects[target].amount - 1 - SimObjects[target].free, - ); - price = Game.modifyBuildingPrice(SimObjects[target], price); - price = Math.ceil(price); - cost += price; - SimObjects[target].amount -= 1; - } + return; + } + for (let i = 0; i < amount; i++) { + let price = + SimObjects[target].basePrice * + Game.priceIncrease ** + Math.max( + 0, + SimObjects[target].amount - 1 - SimObjects[target].free, + ); + price = Game.modifyBuildingPrice(SimObjects[target], price); + price = Math.ceil(price); + cost += price; + SimObjects[target].amount -= 1; } CacheCostDragonUpgrade = `Cost to rebuy: ${Beautify(cost)}`; - } + }); } } CacheLastDragonLevel = Game.dragonLevel; diff --git a/src/Cache/PP/Building.js b/src/Cache/PP/Building.js index 172424d..34d6763 100644 --- a/src/Cache/PP/Building.js +++ b/src/Cache/PP/Building.js @@ -19,6 +19,10 @@ import ColourOfPP from './ColourOfPP'; */ function CacheColor(target, amount) { Object.keys(target).forEach((i) => { + if (CMOptions.PPRigidelMode && amount === 1) { + target[i].color = ColorGray; + return; + } target[i].color = ColourOfPP( target[i], Game.Objects[i].getSumPrice(amount), @@ -39,7 +43,8 @@ function CachePP(target, amount) { Game.cookiesPs + price / target[i].bonus; } else target[i].pp = price / target[i].bonus; - CachePPArray.push([target[i].pp, amount]); + if (!(CMOptions.PPRigidelMode && amount === 1)) + CachePPArray.push([target[i].pp, amount]); }); } diff --git a/src/Data/Moddata.js b/src/Data/Moddata.js index 1badb86..48e8ff1 100644 --- a/src/Data/Moddata.js +++ b/src/Data/Moddata.js @@ -29,6 +29,7 @@ This update also implements the following functions:
- Added option to show buttons that can hide the upgrade and building section
- 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...)
- Statistics page now shows chance for random drops when they have not been achieved
+- In a later hotfix we have added a Rigidel mode that will colour all buy 1 options grey

This update fixes the following bugs:
- Incorrect amount for "required for max plant reward" in statistics page
diff --git a/src/Data/SettingsData.js b/src/Data/SettingsData.js index e370439..53c1a88 100644 --- a/src/Data/SettingsData.js +++ b/src/Data/SettingsData.js @@ -221,6 +221,13 @@ const Config = { 'Makes CookieMonster ignore the 1st, 2nd or 3rd best buildings in labeling and colouring PP values', true, ), + PPRigidelMode: new SettingStandard( + 'bool', + 'Calculation', + ['Rigidel Mode OFF', 'Rigidel Mode ON'], + 'Makes CookieMonster ignore all "buy 1" options when colouring PP in order to stay at a total building count ending in 10 for pantheon god Rigidel', + true, + ), PPSecondsLowerLimit: new SettingInputNumber( 'numscale', 'Calculation', diff --git a/src/Data/SettingsDefault.js b/src/Data/SettingsDefault.js index 2d28d43..e419b16 100644 --- a/src/Data/SettingsDefault.js +++ b/src/Data/SettingsDefault.js @@ -13,6 +13,7 @@ const ConfigDefault = { AvgCPSHist: 3, AvgClicksHist: 0, PPExcludeTop: 0, + PPRigidelMode: 0, PPSecondsLowerLimit: 0, PPOnlyConsiderBuyable: 0, ToolWarnBon: 1, diff --git a/src/Disp/BuildingsUpgrades/UpgradeBar.js b/src/Disp/BuildingsUpgrades/UpgradeBar.js index 80e0eb3..5f98941 100644 --- a/src/Disp/BuildingsUpgrades/UpgradeBar.js +++ b/src/Disp/BuildingsUpgrades/UpgradeBar.js @@ -38,22 +38,24 @@ function CreateUpgradeBarLegend() { return div; }; - legend.appendChild(legendLine(ColorBlue, 'Better than best PP building')); - legend.appendChild(legendLine(ColorGreen, 'Same as best PP building')); legend.appendChild( - legendLine( - ColorYellow, - 'Between best and worst PP buildings closer to best', - ), + legendLine(ColorBlue, 'Better than the best PP of a building option'), ); legend.appendChild( - legendLine( - ColorOrange, - 'Between best and worst PP buildings closer to worst', - ), + legendLine(ColorGreen, 'Same as the best PP building option'), + ); + legend.appendChild( + legendLine(ColorYellow, 'Within the top 10 of PP for buildings'), + ); + legend.appendChild( + legendLine(ColorOrange, 'Within the top 20 of PP for buildings'), + ); + legend.appendChild( + legendLine(ColorRed, 'Within the top 30 of PP for buildings'), + ); + legend.appendChild( + legendLine(ColorPurple, 'Outside of the top 30 of PP for buildings'), ); - legend.appendChild(legendLine(ColorRed, 'Same as worst PP building')); - legend.appendChild(legendLine(ColorPurple, 'Worse than worst PP building')); legend.appendChild(legendLine(ColorGray, 'Negative or infinity PP')); return legend; } diff --git a/src/Disp/Tooltips/TypesOfTooltips/Building.js b/src/Disp/Tooltips/TypesOfTooltips/Building.js index 48e626b..44c9460 100644 --- a/src/Disp/Tooltips/TypesOfTooltips/Building.js +++ b/src/Disp/Tooltips/TypesOfTooltips/Building.js @@ -1,4 +1,3 @@ -/* eslint-disable no-restricted-syntax */ import { CacheObjects1, CacheObjects10, @@ -76,6 +75,9 @@ export default function Building() { // Add "production left till next achievement"-bar l('CMTooltipProductionHeader').style.display = 'none'; l('CMTooltipTime').style.marginBottom = '0px'; + + // Can this ESLint error be solved while retaining the functionality of break? + // eslint-disable-next-line no-restricted-syntax for (const i of Object.keys(Game.Objects[TooltipName].productionAchievs)) { if ( !Game.HasAchiev( diff --git a/src/Disp/Tooltips/TypesOfTooltips/WrinklerButton.js b/src/Disp/Tooltips/TypesOfTooltips/WrinklerButton.js index 4d248cd..0400dcd 100644 --- a/src/Disp/Tooltips/TypesOfTooltips/WrinklerButton.js +++ b/src/Disp/Tooltips/TypesOfTooltips/WrinklerButton.js @@ -2,6 +2,7 @@ import { CacheWrinklersFattest, CacheWrinklersTotal, } from '../../../Cache/VariablesAndData'; +import { Beautify } from '../../BeautifyAndFormatting/BeautifyFormatting'; import { TooltipName } from '../../VariablesAndData'; import * as Create from '../CreateTooltip'; @@ -16,9 +17,9 @@ export default function WrinklerButton() { const WrinklerReward = document.createElement('div'); WrinklerReward.id = 'CMWrinklerReward'; if (TooltipName === 'PopAll') { - WrinklerReward.textContent = CacheWrinklersTotal; + WrinklerReward.textContent = Beautify(CacheWrinklersTotal); } else if (TooltipName === 'PopFattest') { - WrinklerReward.textContent = CacheWrinklersFattest[0]; + WrinklerReward.textContent = Beautify(CacheWrinklersFattest[0]); } l('tooltip').appendChild(WrinklerReward);