w+B,0));n>0&&(m=Math.min(e.runeshards,n));let h=mo(a,!1,e.runelevels[a],!0),b=e.upgrades[71]/25,C=h[0]-b*e.runelevels[a],v=h.slice(1,h.length).reduce((w,B)=>w*B,1);for(;m>0&&l=ln(a)&&e.runelevels[a]=ln(w)&&e.runelevels[w]{let a=ln(t,r)-e.runeexp[t],s=it(t+1),l=[],c=0,p=e.runeshards,g=0,m=mo(t,!1,r,!0),h=e.upgrades[71]/25,b=m[0]-h*r,C=m.slice(1,m.length).reduce((v,w)=>v*w,1);for(;gs;function r(s){}t.assertIs=r;function n(s){throw new Error}t.assertNever=n,t.arrayToEnum=s=>{let l={};for(let c of s)l[c]=c;return l},t.getValidEnumValues=s=>{let l=t.objectKeys(s).filter(p=>typeof s[s[p]]!="number"),c={};for(let p of l)c[p]=s[p];return t.objectValues(c)},t.objectValues=s=>t.objectKeys(s).map(function(l){return s[l]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let l=[];for(let c in s)Object.prototype.hasOwnProperty.call(s,c)&&l.push(c);return l},t.find=(s,l)=>{for(let c of s)if(l(c))return c},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function a(s,l=" | "){return s.map(c=>typeof c=="string"?`'${c}'`:c).join(l)}t.joinValues=a,t.jsonStringifyReplacer=(s,l)=>typeof l=="bigint"?l.toString():l})(Le||(Le={}));var mu;(function(t){t.mergeShapes=(r,n)=>O(O({},r),n)})(mu||(mu={}));var W=Le.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),un=t=>{switch(typeof t){case"undefined":return W.undefined;case"string":return W.string;case"number":return isNaN(t)?W.nan:W.number;case"boolean":return W.boolean;case"function":return W.function;case"bigint":return W.bigint;case"symbol":return W.symbol;case"object":return Array.isArray(t)?W.array:t===null?W.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?W.promise:typeof Map<"u"&&t instanceof Map?W.map:typeof Set<"u"&&t instanceof Set?W.set:typeof Date<"u"&&t instanceof Date?W.date:W.object;default:return W.unknown}},H=Le.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),my=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Lt=class extends Error{get errors(){return this.issues}constructor(r){super(),this.issues=[],this.addIssue=a=>{this.issues=[...this.issues,a]},this.addIssues=(a=[])=>{this.issues=[...this.issues,...a]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=r}format(r){let n=r||function(l){return l.message},a={_errors:[]},s=l=>{for(let c of l.issues)if(c.code==="invalid_union")c.unionErrors.map(s);else if(c.code==="invalid_return_type")s(c.returnTypeError);else if(c.code==="invalid_arguments")s(c.argumentsError);else if(c.path.length===0)a._errors.push(n(c));else{let p=a,g=0;for(;gn.message){let n={},a=[];for(let s of this.issues)s.path.length>0?(n[s.path[0]]=n[s.path[0]]||[],n[s.path[0]].push(r(s))):a.push(r(s));return{formErrors:a,fieldErrors:n}}get formErrors(){return this.flatten()}};Lt.create=t=>new Lt(t);var ms=(t,r)=>{let n;switch(t.code){case H.invalid_type:t.received===W.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case H.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,Le.jsonStringifyReplacer)}`;break;case H.unrecognized_keys:n=`Unrecognized key(s) in object: ${Le.joinValues(t.keys,", ")}`;break;case H.invalid_union:n="Invalid input";break;case H.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Le.joinValues(t.options)}`;break;case H.invalid_enum_value:n=`Invalid enum value. Expected ${Le.joinValues(t.options)}, received '${t.received}'`;break;case H.invalid_arguments:n="Invalid function arguments";break;case H.invalid_return_type:n="Invalid function return type";break;case H.invalid_date:n="Invalid date";break;case H.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:Le.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case H.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case H.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case H.custom:n="Invalid input";break;case H.invalid_intersection_types:n="Intersection results could not be merged";break;case H.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case H.not_finite:n="Number must be finite";break;default:n=r.defaultError,Le.assertNever(t)}return{message:n}},gm=ms;function fy(t){gm=t}function Ki(){return gm}var zi=t=>{let{data:r,path:n,errorMaps:a,issueData:s}=t,l=[...n,...s.path||[]],c=ee(O({},s),{path:l});if(s.message!==void 0)return ee(O({},s),{path:l,message:s.message});let p="",g=a.filter(m=>!!m).slice().reverse();for(let m of g)p=m(c,{data:r,defaultError:p}).message;return ee(O({},s),{path:l,message:p})},hy=[];function q(t,r){let n=Ki(),a=zi({issueData:r,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===ms?void 0:ms].filter(s=>!!s)});t.common.issues.push(a)}var ut=class{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(r,n){let a=[];for(let s of n){if(s.status==="aborted")return le;s.status==="dirty"&&r.dirty(),a.push(s.value)}return{status:r.value,value:a}}static async mergeObjectAsync(r,n){let a=[];for(let s of n){let l=await s.key,c=await s.value;a.push({key:l,value:c})}return ut.mergeObjectSync(r,a)}static mergeObjectSync(r,n){let a={};for(let s of n){let{key:l,value:c}=s;if(l.status==="aborted"||c.status==="aborted")return le;l.status==="dirty"&&r.dirty(),c.status==="dirty"&&r.dirty(),l.value!=="__proto__"&&(typeof c.value<"u"||s.alwaysSet)&&(a[l.value]=c.value)}return{status:r.value,value:a}}},le=Object.freeze({status:"aborted"}),gs=t=>({status:"dirty",value:t}),Pt=t=>({status:"valid",value:t}),fu=t=>t.status==="aborted",hu=t=>t.status==="dirty",xa=t=>t.status==="valid",bo=t=>typeof Promise<"u"&&t instanceof Promise;function Xi(t,r,n,a){if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof r=="function"?t!==r||!a:!r.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?a:n==="a"?a.call(t):a?a.value:r.get(t)}function mm(t,r,n,a,s){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof r=="function"?t!==r||!s:!r.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?s.call(t,n):s?s.value=n:r.set(t,n),n}var Y;(function(t){t.errToObj=r=>typeof r=="string"?{message:r}:r||{},t.toString=r=>typeof r=="string"?r:r==null?void 0:r.message})(Y||(Y={}));var fo,ho,ir=class{constructor(r,n,a,s){this._cachedPath=[],this.parent=r,this.data=n,this._path=a,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},dm=(t,r)=>{if(xa(r))return{success:!0,data:r.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new Lt(t.common.issues);return this._error=n,this._error}}};function fe(t){if(!t)return{};let{errorMap:r,invalid_type_error:n,required_error:a,description:s}=t;if(r&&(n||a))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return r?{errorMap:r,description:s}:{errorMap:(c,p)=>{var g,m;let{message:h}=t;return c.code==="invalid_enum_value"?{message:h!=null?h:p.defaultError}:typeof p.data>"u"?{message:(g=h!=null?h:a)!==null&&g!==void 0?g:p.defaultError}:c.code!=="invalid_type"?{message:p.defaultError}:{message:(m=h!=null?h:n)!==null&&m!==void 0?m:p.defaultError}},description:s}}var he=class{get description(){return this._def.description}_getType(r){return un(r.data)}_getOrReturnCtx(r,n){return n||{common:r.parent.common,data:r.data,parsedType:un(r.data),schemaErrorMap:this._def.errorMap,path:r.path,parent:r.parent}}_processInputParams(r){return{status:new ut,ctx:{common:r.parent.common,data:r.data,parsedType:un(r.data),schemaErrorMap:this._def.errorMap,path:r.path,parent:r.parent}}}_parseSync(r){let n=this._parse(r);if(bo(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(r){let n=this._parse(r);return Promise.resolve(n)}parse(r,n){let a=this.safeParse(r,n);if(a.success)return a.data;throw a.error}safeParse(r,n){var a;let s={common:{issues:[],async:(a=n==null?void 0:n.async)!==null&&a!==void 0?a:!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:r,parsedType:un(r)},l=this._parseSync({data:r,path:s.path,parent:s});return dm(s,l)}"~validate"(r){var n,a;let s={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:r,parsedType:un(r)};if(!this["~standard"].async)try{let l=this._parseSync({data:r,path:[],parent:s});return xa(l)?{value:l.value}:{issues:s.common.issues}}catch(l){!((a=(n=l==null?void 0:l.message)===null||n===void 0?void 0:n.toLowerCase())===null||a===void 0)&&a.includes("encountered")&&(this["~standard"].async=!0),s.common={issues:[],async:!0}}return this._parseAsync({data:r,path:[],parent:s}).then(l=>xa(l)?{value:l.value}:{issues:s.common.issues})}async parseAsync(r,n){let a=await this.safeParseAsync(r,n);if(a.success)return a.data;throw a.error}async safeParseAsync(r,n){let a={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:r,parsedType:un(r)},s=this._parse({data:r,path:a.path,parent:a}),l=await(bo(s)?s:Promise.resolve(s));return dm(a,l)}refine(r,n){let a=s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n;return this._refinement((s,l)=>{let c=r(s),p=()=>l.addIssue(O({code:H.custom},a(s)));return typeof Promise<"u"&&c instanceof Promise?c.then(g=>g?!0:(p(),!1)):c?!0:(p(),!1)})}refinement(r,n){return this._refinement((a,s)=>r(a)?!0:(s.addIssue(typeof n=="function"?n(a,s):n),!1))}_refinement(r){return new Wt({schema:this,typeName:ie.ZodEffects,effect:{type:"refinement",refinement:r}})}superRefine(r){return this._refinement(r)}constructor(r){this.spa=this.safeParseAsync,this._def=r,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return or.create(this,this._def)}nullable(){return Vr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Vt.create(this)}promise(){return jn.create(this,this._def)}or(r){return Sa.create([this,r],this._def)}and(r){return ka.create(this,r,this._def)}transform(r){return new Wt(ee(O({},fe(this._def)),{schema:this,typeName:ie.ZodEffects,effect:{type:"transform",transform:r}}))}default(r){let n=typeof r=="function"?r:()=>r;return new Oa(ee(O({},fe(this._def)),{innerType:this,defaultValue:n,typeName:ie.ZodDefault}))}brand(){return new yo(O({typeName:ie.ZodBranded,type:this},fe(this._def)))}catch(r){let n=typeof r=="function"?r:()=>r;return new Ua(ee(O({},fe(this._def)),{innerType:this,catchValue:n,typeName:ie.ZodCatch}))}describe(r){let n=this.constructor;return new n(ee(O({},this._def),{description:r}))}pipe(r){return Ba.create(this,r)}readonly(){return Ra.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},by=/^c[^\s-]{8,}$/i,yy=/^[0-9a-z]+$/,vy=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Cy=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,xy=/^[a-z0-9_-]{21}$/i,wy=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,My=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ty=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Sy="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",gu,ky=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ly=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Py=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Ay=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ey=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Oy=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,fm="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Uy=new RegExp(`^${fm}$`);function hm(t){let r="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return t.precision?r=`${r}\\.\\d{${t.precision}}`:t.precision==null&&(r=`${r}(\\.\\d+)?`),r}function By(t){return new RegExp(`^${hm(t)}$`)}function bm(t){let r=`${fm}T${hm(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),r=`${r}(${n.join("|")})`,new RegExp(`^${r}$`)}function Ry(t,r){return!!((r==="v4"||!r)&&ky.test(t)||(r==="v6"||!r)&&Py.test(t))}function Iy(t,r){if(!wy.test(t))return!1;try{let[n]=t.split("."),a=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(a));return!(typeof s!="object"||s===null||!s.typ||!s.alg||r&&s.alg!==r)}catch(n){return!1}}function Ny(t,r){return!!((r==="v4"||!r)&&Ly.test(t)||(r==="v6"||!r)&&Ay.test(t))}var jt=class extends he{_parse(r){if(this._def.coerce&&(r.data=String(r.data)),this._getType(r)!==W.string){let l=this._getOrReturnCtx(r);return q(l,{code:H.invalid_type,expected:W.string,received:l.parsedType}),le}let a=new ut,s;for(let l of this._def.checks)if(l.kind==="min")r.data.lengthl.value&&(s=this._getOrReturnCtx(r,s),q(s,{code:H.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),a.dirty());else if(l.kind==="length"){let c=r.data.length>l.value,p=r.data.lengthr.test(s),O({validation:n,code:H.invalid_string},Y.errToObj(a)))}_addCheck(r){return new jt(ee(O({},this._def),{checks:[...this._def.checks,r]}))}email(r){return this._addCheck(O({kind:"email"},Y.errToObj(r)))}url(r){return this._addCheck(O({kind:"url"},Y.errToObj(r)))}emoji(r){return this._addCheck(O({kind:"emoji"},Y.errToObj(r)))}uuid(r){return this._addCheck(O({kind:"uuid"},Y.errToObj(r)))}nanoid(r){return this._addCheck(O({kind:"nanoid"},Y.errToObj(r)))}cuid(r){return this._addCheck(O({kind:"cuid"},Y.errToObj(r)))}cuid2(r){return this._addCheck(O({kind:"cuid2"},Y.errToObj(r)))}ulid(r){return this._addCheck(O({kind:"ulid"},Y.errToObj(r)))}base64(r){return this._addCheck(O({kind:"base64"},Y.errToObj(r)))}base64url(r){return this._addCheck(O({kind:"base64url"},Y.errToObj(r)))}jwt(r){return this._addCheck(O({kind:"jwt"},Y.errToObj(r)))}ip(r){return this._addCheck(O({kind:"ip"},Y.errToObj(r)))}cidr(r){return this._addCheck(O({kind:"cidr"},Y.errToObj(r)))}datetime(r){var n,a;return typeof r=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:r}):this._addCheck(O({kind:"datetime",precision:typeof(r==null?void 0:r.precision)>"u"?null:r==null?void 0:r.precision,offset:(n=r==null?void 0:r.offset)!==null&&n!==void 0?n:!1,local:(a=r==null?void 0:r.local)!==null&&a!==void 0?a:!1},Y.errToObj(r==null?void 0:r.message)))}date(r){return this._addCheck({kind:"date",message:r})}time(r){return typeof r=="string"?this._addCheck({kind:"time",precision:null,message:r}):this._addCheck(O({kind:"time",precision:typeof(r==null?void 0:r.precision)>"u"?null:r==null?void 0:r.precision},Y.errToObj(r==null?void 0:r.message)))}duration(r){return this._addCheck(O({kind:"duration"},Y.errToObj(r)))}regex(r,n){return this._addCheck(O({kind:"regex",regex:r},Y.errToObj(n)))}includes(r,n){return this._addCheck(O({kind:"includes",value:r,position:n==null?void 0:n.position},Y.errToObj(n==null?void 0:n.message)))}startsWith(r,n){return this._addCheck(O({kind:"startsWith",value:r},Y.errToObj(n)))}endsWith(r,n){return this._addCheck(O({kind:"endsWith",value:r},Y.errToObj(n)))}min(r,n){return this._addCheck(O({kind:"min",value:r},Y.errToObj(n)))}max(r,n){return this._addCheck(O({kind:"max",value:r},Y.errToObj(n)))}length(r,n){return this._addCheck(O({kind:"length",value:r},Y.errToObj(n)))}nonempty(r){return this.min(1,Y.errToObj(r))}trim(){return new jt(ee(O({},this._def),{checks:[...this._def.checks,{kind:"trim"}]}))}toLowerCase(){return new jt(ee(O({},this._def),{checks:[...this._def.checks,{kind:"toLowerCase"}]}))}toUpperCase(){return new jt(ee(O({},this._def),{checks:[...this._def.checks,{kind:"toUpperCase"}]}))}get isDatetime(){return!!this._def.checks.find(r=>r.kind==="datetime")}get isDate(){return!!this._def.checks.find(r=>r.kind==="date")}get isTime(){return!!this._def.checks.find(r=>r.kind==="time")}get isDuration(){return!!this._def.checks.find(r=>r.kind==="duration")}get isEmail(){return!!this._def.checks.find(r=>r.kind==="email")}get isURL(){return!!this._def.checks.find(r=>r.kind==="url")}get isEmoji(){return!!this._def.checks.find(r=>r.kind==="emoji")}get isUUID(){return!!this._def.checks.find(r=>r.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(r=>r.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(r=>r.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(r=>r.kind==="cuid2")}get isULID(){return!!this._def.checks.find(r=>r.kind==="ulid")}get isIP(){return!!this._def.checks.find(r=>r.kind==="ip")}get isCIDR(){return!!this._def.checks.find(r=>r.kind==="cidr")}get isBase64(){return!!this._def.checks.find(r=>r.kind==="base64")}get isBase64url(){return!!this._def.checks.find(r=>r.kind==="base64url")}get minLength(){let r=null;for(let n of this._def.checks)n.kind==="min"&&(r===null||n.value>r)&&(r=n.value);return r}get maxLength(){let r=null;for(let n of this._def.checks)n.kind==="max"&&(r===null||n.value{var r;return new jt(O({checks:[],typeName:ie.ZodString,coerce:(r=t==null?void 0:t.coerce)!==null&&r!==void 0?r:!1},fe(t)))};function $y(t,r){let n=(t.toString().split(".")[1]||"").length,a=(r.toString().split(".")[1]||"").length,s=n>a?n:a,l=parseInt(t.toFixed(s).replace(".","")),c=parseInt(r.toFixed(s).replace(".",""));return l%c/Math.pow(10,s)}var Qr=class extends he{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(r){if(this._def.coerce&&(r.data=Number(r.data)),this._getType(r)!==W.number){let l=this._getOrReturnCtx(r);return q(l,{code:H.invalid_type,expected:W.number,received:l.parsedType}),le}let a,s=new ut;for(let l of this._def.checks)l.kind==="int"?Le.isInteger(r.data)||(a=this._getOrReturnCtx(r,a),q(a,{code:H.invalid_type,expected:"integer",received:"float",message:l.message}),s.dirty()):l.kind==="min"?(l.inclusive?r.datal.value:r.data>=l.value)&&(a=this._getOrReturnCtx(r,a),q(a,{code:H.too_big,maximum:l.value,type:"number",inclusive:l.inclusive,exact:!1,message:l.message}),s.dirty()):l.kind==="multipleOf"?$y(r.data,l.value)!==0&&(a=this._getOrReturnCtx(r,a),q(a,{code:H.not_multiple_of,multipleOf:l.value,message:l.message}),s.dirty()):l.kind==="finite"?Number.isFinite(r.data)||(a=this._getOrReturnCtx(r,a),q(a,{code:H.not_finite,message:l.message}),s.dirty()):Le.assertNever(l);return{status:s.value,value:r.data}}gte(r,n){return this.setLimit("min",r,!0,Y.toString(n))}gt(r,n){return this.setLimit("min",r,!1,Y.toString(n))}lte(r,n){return this.setLimit("max",r,!0,Y.toString(n))}lt(r,n){return this.setLimit("max",r,!1,Y.toString(n))}setLimit(r,n,a,s){return new Qr(ee(O({},this._def),{checks:[...this._def.checks,{kind:r,value:n,inclusive:a,message:Y.toString(s)}]}))}_addCheck(r){return new Qr(ee(O({},this._def),{checks:[...this._def.checks,r]}))}int(r){return this._addCheck({kind:"int",message:Y.toString(r)})}positive(r){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Y.toString(r)})}negative(r){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Y.toString(r)})}nonpositive(r){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Y.toString(r)})}nonnegative(r){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Y.toString(r)})}multipleOf(r,n){return this._addCheck({kind:"multipleOf",value:r,message:Y.toString(n)})}finite(r){return this._addCheck({kind:"finite",message:Y.toString(r)})}safe(r){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Y.toString(r)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Y.toString(r)})}get minValue(){let r=null;for(let n of this._def.checks)n.kind==="min"&&(r===null||n.value>r)&&(r=n.value);return r}get maxValue(){let r=null;for(let n of this._def.checks)n.kind==="max"&&(r===null||n.valuer.kind==="int"||r.kind==="multipleOf"&&Le.isInteger(r.value))}get isFinite(){let r=null,n=null;for(let a of this._def.checks){if(a.kind==="finite"||a.kind==="int"||a.kind==="multipleOf")return!0;a.kind==="min"?(n===null||a.value>n)&&(n=a.value):a.kind==="max"&&(r===null||a.valuenew Qr(O({checks:[],typeName:ie.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1},fe(t)));var qr=class extends he{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(r){if(this._def.coerce)try{r.data=BigInt(r.data)}catch(l){return this._getInvalidInput(r)}if(this._getType(r)!==W.bigint)return this._getInvalidInput(r);let a,s=new ut;for(let l of this._def.checks)l.kind==="min"?(l.inclusive?r.datal.value:r.data>=l.value)&&(a=this._getOrReturnCtx(r,a),q(a,{code:H.too_big,type:"bigint",maximum:l.value,inclusive:l.inclusive,message:l.message}),s.dirty()):l.kind==="multipleOf"?r.data%l.value!==BigInt(0)&&(a=this._getOrReturnCtx(r,a),q(a,{code:H.not_multiple_of,multipleOf:l.value,message:l.message}),s.dirty()):Le.assertNever(l);return{status:s.value,value:r.data}}_getInvalidInput(r){let n=this._getOrReturnCtx(r);return q(n,{code:H.invalid_type,expected:W.bigint,received:n.parsedType}),le}gte(r,n){return this.setLimit("min",r,!0,Y.toString(n))}gt(r,n){return this.setLimit("min",r,!1,Y.toString(n))}lte(r,n){return this.setLimit("max",r,!0,Y.toString(n))}lt(r,n){return this.setLimit("max",r,!1,Y.toString(n))}setLimit(r,n,a,s){return new qr(ee(O({},this._def),{checks:[...this._def.checks,{kind:r,value:n,inclusive:a,message:Y.toString(s)}]}))}_addCheck(r){return new qr(ee(O({},this._def),{checks:[...this._def.checks,r]}))}positive(r){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Y.toString(r)})}negative(r){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Y.toString(r)})}nonpositive(r){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Y.toString(r)})}nonnegative(r){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Y.toString(r)})}multipleOf(r,n){return this._addCheck({kind:"multipleOf",value:r,message:Y.toString(n)})}get minValue(){let r=null;for(let n of this._def.checks)n.kind==="min"&&(r===null||n.value>r)&&(r=n.value);return r}get maxValue(){let r=null;for(let n of this._def.checks)n.kind==="max"&&(r===null||n.value{var r;return new qr(O({checks:[],typeName:ie.ZodBigInt,coerce:(r=t==null?void 0:t.coerce)!==null&&r!==void 0?r:!1},fe(t)))};var wa=class extends he{_parse(r){if(this._def.coerce&&(r.data=!!r.data),this._getType(r)!==W.boolean){let a=this._getOrReturnCtx(r);return q(a,{code:H.invalid_type,expected:W.boolean,received:a.parsedType}),le}return Pt(r.data)}};wa.create=t=>new wa(O({typeName:ie.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1},fe(t)));var pn=class extends he{_parse(r){if(this._def.coerce&&(r.data=new Date(r.data)),this._getType(r)!==W.date){let l=this._getOrReturnCtx(r);return q(l,{code:H.invalid_type,expected:W.date,received:l.parsedType}),le}if(isNaN(r.data.getTime())){let l=this._getOrReturnCtx(r);return q(l,{code:H.invalid_date}),le}let a=new ut,s;for(let l of this._def.checks)l.kind==="min"?r.data.getTime()l.value&&(s=this._getOrReturnCtx(r,s),q(s,{code:H.too_big,message:l.message,inclusive:!0,exact:!1,maximum:l.value,type:"date"}),a.dirty()):Le.assertNever(l);return{status:a.value,value:new Date(r.data.getTime())}}_addCheck(r){return new pn(ee(O({},this._def),{checks:[...this._def.checks,r]}))}min(r,n){return this._addCheck({kind:"min",value:r.getTime(),message:Y.toString(n)})}max(r,n){return this._addCheck({kind:"max",value:r.getTime(),message:Y.toString(n)})}get minDate(){let r=null;for(let n of this._def.checks)n.kind==="min"&&(r===null||n.value>r)&&(r=n.value);return r!=null?new Date(r):null}get maxDate(){let r=null;for(let n of this._def.checks)n.kind==="max"&&(r===null||n.valuenew pn(O({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:ie.ZodDate},fe(t)));var fs=class extends he{_parse(r){if(this._getType(r)!==W.symbol){let a=this._getOrReturnCtx(r);return q(a,{code:H.invalid_type,expected:W.symbol,received:a.parsedType}),le}return Pt(r.data)}};fs.create=t=>new fs(O({typeName:ie.ZodSymbol},fe(t)));var Ma=class extends he{_parse(r){if(this._getType(r)!==W.undefined){let a=this._getOrReturnCtx(r);return q(a,{code:H.invalid_type,expected:W.undefined,received:a.parsedType}),le}return Pt(r.data)}};Ma.create=t=>new Ma(O({typeName:ie.ZodUndefined},fe(t)));var Ta=class extends he{_parse(r){if(this._getType(r)!==W.null){let a=this._getOrReturnCtx(r);return q(a,{code:H.invalid_type,expected:W.null,received:a.parsedType}),le}return Pt(r.data)}};Ta.create=t=>new Ta(O({typeName:ie.ZodNull},fe(t)));var qn=class extends he{constructor(){super(...arguments),this._any=!0}_parse(r){return Pt(r.data)}};qn.create=t=>new qn(O({typeName:ie.ZodAny},fe(t)));var dn=class extends he{constructor(){super(...arguments),this._unknown=!0}_parse(r){return Pt(r.data)}};dn.create=t=>new dn(O({typeName:ie.ZodUnknown},fe(t)));var Ar=class extends he{_parse(r){let n=this._getOrReturnCtx(r);return q(n,{code:H.invalid_type,expected:W.never,received:n.parsedType}),le}};Ar.create=t=>new Ar(O({typeName:ie.ZodNever},fe(t)));var hs=class extends he{_parse(r){if(this._getType(r)!==W.undefined){let a=this._getOrReturnCtx(r);return q(a,{code:H.invalid_type,expected:W.void,received:a.parsedType}),le}return Pt(r.data)}};hs.create=t=>new hs(O({typeName:ie.ZodVoid},fe(t)));var Vt=class extends he{_parse(r){let{ctx:n,status:a}=this._processInputParams(r),s=this._def;if(n.parsedType!==W.array)return q(n,{code:H.invalid_type,expected:W.array,received:n.parsedType}),le;if(s.exactLength!==null){let c=n.data.length>s.exactLength.value,p=n.data.lengths.maxLength.value&&(q(n,{code:H.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),a.dirty()),n.common.async)return Promise.all([...n.data].map((c,p)=>s.type._parseAsync(new ir(n,c,n.path,p)))).then(c=>ut.mergeArray(a,c));let l=[...n.data].map((c,p)=>s.type._parseSync(new ir(n,c,n.path,p)));return ut.mergeArray(a,l)}get element(){return this._def.type}min(r,n){return new Vt(ee(O({},this._def),{minLength:{value:r,message:Y.toString(n)}}))}max(r,n){return new Vt(ee(O({},this._def),{maxLength:{value:r,message:Y.toString(n)}}))}length(r,n){return new Vt(ee(O({},this._def),{exactLength:{value:r,message:Y.toString(n)}}))}nonempty(r){return this.min(1,r)}};Vt.create=(t,r)=>new Vt(O({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ie.ZodArray},fe(r)));function ps(t){if(t instanceof Ve){let r={};for(let n in t.shape){let a=t.shape[n];r[n]=or.create(ps(a))}return new Ve(ee(O({},t._def),{shape:()=>r}))}else return t instanceof Vt?new Vt(ee(O({},t._def),{type:ps(t.element)})):t instanceof or?or.create(ps(t.unwrap())):t instanceof Vr?Vr.create(ps(t.unwrap())):t instanceof lr?lr.create(t.items.map(r=>ps(r))):t}var Ve=class extends he{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let r=this._def.shape(),n=Le.objectKeys(r);return this._cached={shape:r,keys:n}}_parse(r){if(this._getType(r)!==W.object){let m=this._getOrReturnCtx(r);return q(m,{code:H.invalid_type,expected:W.object,received:m.parsedType}),le}let{status:a,ctx:s}=this._processInputParams(r),{shape:l,keys:c}=this._getCached(),p=[];if(!(this._def.catchall instanceof Ar&&this._def.unknownKeys==="strip"))for(let m in s.data)c.includes(m)||p.push(m);let g=[];for(let m of c){let h=l[m],b=s.data[m];g.push({key:{status:"valid",value:m},value:h._parse(new ir(s,b,s.path,m)),alwaysSet:m in s.data})}if(this._def.catchall instanceof Ar){let m=this._def.unknownKeys;if(m==="passthrough")for(let h of p)g.push({key:{status:"valid",value:h},value:{status:"valid",value:s.data[h]}});else if(m==="strict")p.length>0&&(q(s,{code:H.unrecognized_keys,keys:p}),a.dirty());else if(m!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let m=this._def.catchall;for(let h of p){let b=s.data[h];g.push({key:{status:"valid",value:h},value:m._parse(new ir(s,b,s.path,h)),alwaysSet:h in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let m=[];for(let h of g){let b=await h.key,C=await h.value;m.push({key:b,value:C,alwaysSet:h.alwaysSet})}return m}).then(m=>ut.mergeObjectSync(a,m)):ut.mergeObjectSync(a,g)}get shape(){return this._def.shape()}strict(r){return Y.errToObj,new Ve(O(ee(O({},this._def),{unknownKeys:"strict"}),r!==void 0?{errorMap:(n,a)=>{var s,l,c,p;let g=(c=(l=(s=this._def).errorMap)===null||l===void 0?void 0:l.call(s,n,a).message)!==null&&c!==void 0?c:a.defaultError;return n.code==="unrecognized_keys"?{message:(p=Y.errToObj(r).message)!==null&&p!==void 0?p:g}:{message:g}}}:{}))}strip(){return new Ve(ee(O({},this._def),{unknownKeys:"strip"}))}passthrough(){return new Ve(ee(O({},this._def),{unknownKeys:"passthrough"}))}extend(r){return new Ve(ee(O({},this._def),{shape:()=>O(O({},this._def.shape()),r)}))}merge(r){return new Ve({unknownKeys:r._def.unknownKeys,catchall:r._def.catchall,shape:()=>O(O({},this._def.shape()),r._def.shape()),typeName:ie.ZodObject})}setKey(r,n){return this.augment({[r]:n})}catchall(r){return new Ve(ee(O({},this._def),{catchall:r}))}pick(r){let n={};return Le.objectKeys(r).forEach(a=>{r[a]&&this.shape[a]&&(n[a]=this.shape[a])}),new Ve(ee(O({},this._def),{shape:()=>n}))}omit(r){let n={};return Le.objectKeys(this.shape).forEach(a=>{r[a]||(n[a]=this.shape[a])}),new Ve(ee(O({},this._def),{shape:()=>n}))}deepPartial(){return ps(this)}partial(r){let n={};return Le.objectKeys(this.shape).forEach(a=>{let s=this.shape[a];r&&!r[a]?n[a]=s:n[a]=s.optional()}),new Ve(ee(O({},this._def),{shape:()=>n}))}required(r){let n={};return Le.objectKeys(this.shape).forEach(a=>{if(r&&!r[a])n[a]=this.shape[a];else{let l=this.shape[a];for(;l instanceof or;)l=l._def.innerType;n[a]=l}}),new Ve(ee(O({},this._def),{shape:()=>n}))}keyof(){return ym(Le.objectKeys(this.shape))}};Ve.create=(t,r)=>new Ve(O({shape:()=>t,unknownKeys:"strip",catchall:Ar.create(),typeName:ie.ZodObject},fe(r)));Ve.strictCreate=(t,r)=>new Ve(O({shape:()=>t,unknownKeys:"strict",catchall:Ar.create(),typeName:ie.ZodObject},fe(r)));Ve.lazycreate=(t,r)=>new Ve(O({shape:t,unknownKeys:"strip",catchall:Ar.create(),typeName:ie.ZodObject},fe(r)));var Sa=class extends he{_parse(r){let{ctx:n}=this._processInputParams(r),a=this._def.options;function s(l){for(let p of l)if(p.result.status==="valid")return p.result;for(let p of l)if(p.result.status==="dirty")return n.common.issues.push(...p.ctx.common.issues),p.result;let c=l.map(p=>new Lt(p.ctx.common.issues));return q(n,{code:H.invalid_union,unionErrors:c}),le}if(n.common.async)return Promise.all(a.map(async l=>{let c=ee(O({},n),{common:ee(O({},n.common),{issues:[]}),parent:null});return{result:await l._parseAsync({data:n.data,path:n.path,parent:c}),ctx:c}})).then(s);{let l,c=[];for(let g of a){let m=ee(O({},n),{common:ee(O({},n.common),{issues:[]}),parent:null}),h=g._parseSync({data:n.data,path:n.path,parent:m});if(h.status==="valid")return h;h.status==="dirty"&&!l&&(l={result:h,ctx:m}),m.common.issues.length&&c.push(m.common.issues)}if(l)return n.common.issues.push(...l.ctx.common.issues),l.result;let p=c.map(g=>new Lt(g));return q(n,{code:H.invalid_union,unionErrors:p}),le}}get options(){return this._def.options}};Sa.create=(t,r)=>new Sa(O({options:t,typeName:ie.ZodUnion},fe(r)));var cn=t=>t instanceof Pa?cn(t.schema):t instanceof Wt?cn(t.innerType()):t instanceof Aa?[t.value]:t instanceof jr?t.options:t instanceof Ea?Le.objectValues(t.enum):t instanceof Oa?cn(t._def.innerType):t instanceof Ma?[void 0]:t instanceof Ta?[null]:t instanceof or?[void 0,...cn(t.unwrap())]:t instanceof Vr?[null,...cn(t.unwrap())]:t instanceof yo||t instanceof Ra?cn(t.unwrap()):t instanceof Ua?cn(t._def.innerType):[],bs=class extends he{_parse(r){let{ctx:n}=this._processInputParams(r);if(n.parsedType!==W.object)return q(n,{code:H.invalid_type,expected:W.object,received:n.parsedType}),le;let a=this.discriminator,s=n.data[a],l=this.optionsMap.get(s);return l?n.common.async?l._parseAsync({data:n.data,path:n.path,parent:n}):l._parseSync({data:n.data,path:n.path,parent:n}):(q(n,{code:H.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[a]}),le)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(r,n,a){let s=new Map;for(let l of n){let c=cn(l.shape[r]);if(!c.length)throw new Error(`A discriminator value for key \`${r}\` could not be extracted from all schema options`);for(let p of c){if(s.has(p))throw new Error(`Discriminator property ${String(r)} has duplicate value ${String(p)}`);s.set(p,l)}}return new bs(O({typeName:ie.ZodDiscriminatedUnion,discriminator:r,options:n,optionsMap:s},fe(a)))}};function bu(t,r){let n=un(t),a=un(r);if(t===r)return{valid:!0,data:t};if(n===W.object&&a===W.object){let s=Le.objectKeys(r),l=Le.objectKeys(t).filter(p=>s.indexOf(p)!==-1),c=O(O({},t),r);for(let p of l){let g=bu(t[p],r[p]);if(!g.valid)return{valid:!1};c[p]=g.data}return{valid:!0,data:c}}else if(n===W.array&&a===W.array){if(t.length!==r.length)return{valid:!1};let s=[];for(let l=0;l{if(fu(l)||fu(c))return le;let p=bu(l.value,c.value);return p.valid?((hu(l)||hu(c))&&n.dirty(),{status:n.value,value:p.data}):(q(a,{code:H.invalid_intersection_types}),le)};return a.common.async?Promise.all([this._def.left._parseAsync({data:a.data,path:a.path,parent:a}),this._def.right._parseAsync({data:a.data,path:a.path,parent:a})]).then(([l,c])=>s(l,c)):s(this._def.left._parseSync({data:a.data,path:a.path,parent:a}),this._def.right._parseSync({data:a.data,path:a.path,parent:a}))}};ka.create=(t,r,n)=>new ka(O({left:t,right:r,typeName:ie.ZodIntersection},fe(n)));var lr=class extends he{_parse(r){let{status:n,ctx:a}=this._processInputParams(r);if(a.parsedType!==W.array)return q(a,{code:H.invalid_type,expected:W.array,received:a.parsedType}),le;if(a.data.lengththis._def.items.length&&(q(a,{code:H.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let l=[...a.data].map((c,p)=>{let g=this._def.items[p]||this._def.rest;return g?g._parse(new ir(a,c,a.path,p)):null}).filter(c=>!!c);return a.common.async?Promise.all(l).then(c=>ut.mergeArray(n,c)):ut.mergeArray(n,l)}get items(){return this._def.items}rest(r){return new lr(ee(O({},this._def),{rest:r}))}};lr.create=(t,r)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new lr(O({items:t,typeName:ie.ZodTuple,rest:null},fe(r)))};var La=class extends he{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(r){let{status:n,ctx:a}=this._processInputParams(r);if(a.parsedType!==W.object)return q(a,{code:H.invalid_type,expected:W.object,received:a.parsedType}),le;let s=[],l=this._def.keyType,c=this._def.valueType;for(let p in a.data)s.push({key:l._parse(new ir(a,p,a.path,p)),value:c._parse(new ir(a,a.data[p],a.path,p)),alwaysSet:p in a.data});return a.common.async?ut.mergeObjectAsync(n,s):ut.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(r,n,a){return n instanceof he?new La(O({keyType:r,valueType:n,typeName:ie.ZodRecord},fe(a))):new La(O({keyType:jt.create(),valueType:r,typeName:ie.ZodRecord},fe(n)))}},ys=class extends he{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(r){let{status:n,ctx:a}=this._processInputParams(r);if(a.parsedType!==W.map)return q(a,{code:H.invalid_type,expected:W.map,received:a.parsedType}),le;let s=this._def.keyType,l=this._def.valueType,c=[...a.data.entries()].map(([p,g],m)=>({key:s._parse(new ir(a,p,a.path,[m,"key"])),value:l._parse(new ir(a,g,a.path,[m,"value"]))}));if(a.common.async){let p=new Map;return Promise.resolve().then(async()=>{for(let g of c){let m=await g.key,h=await g.value;if(m.status==="aborted"||h.status==="aborted")return le;(m.status==="dirty"||h.status==="dirty")&&n.dirty(),p.set(m.value,h.value)}return{status:n.value,value:p}})}else{let p=new Map;for(let g of c){let m=g.key,h=g.value;if(m.status==="aborted"||h.status==="aborted")return le;(m.status==="dirty"||h.status==="dirty")&&n.dirty(),p.set(m.value,h.value)}return{status:n.value,value:p}}}};ys.create=(t,r,n)=>new ys(O({valueType:r,keyType:t,typeName:ie.ZodMap},fe(n)));var gn=class extends he{_parse(r){let{status:n,ctx:a}=this._processInputParams(r);if(a.parsedType!==W.set)return q(a,{code:H.invalid_type,expected:W.set,received:a.parsedType}),le;let s=this._def;s.minSize!==null&&a.data.sizes.maxSize.value&&(q(a,{code:H.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());let l=this._def.valueType;function c(g){let m=new Set;for(let h of g){if(h.status==="aborted")return le;h.status==="dirty"&&n.dirty(),m.add(h.value)}return{status:n.value,value:m}}let p=[...a.data.values()].map((g,m)=>l._parse(new ir(a,g,a.path,m)));return a.common.async?Promise.all(p).then(g=>c(g)):c(p)}min(r,n){return new gn(ee(O({},this._def),{minSize:{value:r,message:Y.toString(n)}}))}max(r,n){return new gn(ee(O({},this._def),{maxSize:{value:r,message:Y.toString(n)}}))}size(r,n){return this.min(r,n).max(r,n)}nonempty(r){return this.min(1,r)}};gn.create=(t,r)=>new gn(O({valueType:t,minSize:null,maxSize:null,typeName:ie.ZodSet},fe(r)));var Qn=class extends he{constructor(){super(...arguments),this.validate=this.implement}_parse(r){let{ctx:n}=this._processInputParams(r);if(n.parsedType!==W.function)return q(n,{code:H.invalid_type,expected:W.function,received:n.parsedType}),le;function a(p,g){return zi({data:p,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Ki(),ms].filter(m=>!!m),issueData:{code:H.invalid_arguments,argumentsError:g}})}function s(p,g){return zi({data:p,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Ki(),ms].filter(m=>!!m),issueData:{code:H.invalid_return_type,returnTypeError:g}})}let l={errorMap:n.common.contextualErrorMap},c=n.data;if(this._def.returns instanceof jn){let p=this;return Pt(async function(...g){let m=new Lt([]),h=await p._def.args.parseAsync(g,l).catch(v=>{throw m.addIssue(a(g,v)),m}),b=await Reflect.apply(c,this,h);return await p._def.returns._def.type.parseAsync(b,l).catch(v=>{throw m.addIssue(s(b,v)),m})})}else{let p=this;return Pt(function(...g){let m=p._def.args.safeParse(g,l);if(!m.success)throw new Lt([a(g,m.error)]);let h=Reflect.apply(c,this,m.data),b=p._def.returns.safeParse(h,l);if(!b.success)throw new Lt([s(h,b.error)]);return b.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...r){return new Qn(ee(O({},this._def),{args:lr.create(r).rest(dn.create())}))}returns(r){return new Qn(ee(O({},this._def),{returns:r}))}implement(r){return this.parse(r)}strictImplement(r){return this.parse(r)}static create(r,n,a){return new Qn(O({args:r||lr.create([]).rest(dn.create()),returns:n||dn.create(),typeName:ie.ZodFunction},fe(a)))}},Pa=class extends he{get schema(){return this._def.getter()}_parse(r){let{ctx:n}=this._processInputParams(r);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};Pa.create=(t,r)=>new Pa(O({getter:t,typeName:ie.ZodLazy},fe(r)));var Aa=class extends he{_parse(r){if(r.data!==this._def.value){let n=this._getOrReturnCtx(r);return q(n,{received:n.data,code:H.invalid_literal,expected:this._def.value}),le}return{status:"valid",value:r.data}}get value(){return this._def.value}};Aa.create=(t,r)=>new Aa(O({value:t,typeName:ie.ZodLiteral},fe(r)));function ym(t,r){return new jr(O({values:t,typeName:ie.ZodEnum},fe(r)))}var jr=class extends he{constructor(){super(...arguments),fo.set(this,void 0)}_parse(r){if(typeof r.data!="string"){let n=this._getOrReturnCtx(r),a=this._def.values;return q(n,{expected:Le.joinValues(a),received:n.parsedType,code:H.invalid_type}),le}if(Xi(this,fo,"f")||mm(this,fo,new Set(this._def.values),"f"),!Xi(this,fo,"f").has(r.data)){let n=this._getOrReturnCtx(r),a=this._def.values;return q(n,{received:n.data,code:H.invalid_enum_value,options:a}),le}return Pt(r.data)}get options(){return this._def.values}get enum(){let r={};for(let n of this._def.values)r[n]=n;return r}get Values(){let r={};for(let n of this._def.values)r[n]=n;return r}get Enum(){let r={};for(let n of this._def.values)r[n]=n;return r}extract(r,n=this._def){return jr.create(r,O(O({},this._def),n))}exclude(r,n=this._def){return jr.create(this.options.filter(a=>!r.includes(a)),O(O({},this._def),n))}};fo=new WeakMap;jr.create=ym;var Ea=class extends he{constructor(){super(...arguments),ho.set(this,void 0)}_parse(r){let n=Le.getValidEnumValues(this._def.values),a=this._getOrReturnCtx(r);if(a.parsedType!==W.string&&a.parsedType!==W.number){let s=Le.objectValues(n);return q(a,{expected:Le.joinValues(s),received:a.parsedType,code:H.invalid_type}),le}if(Xi(this,ho,"f")||mm(this,ho,new Set(Le.getValidEnumValues(this._def.values)),"f"),!Xi(this,ho,"f").has(r.data)){let s=Le.objectValues(n);return q(a,{received:a.data,code:H.invalid_enum_value,options:s}),le}return Pt(r.data)}get enum(){return this._def.values}};ho=new WeakMap;Ea.create=(t,r)=>new Ea(O({values:t,typeName:ie.ZodNativeEnum},fe(r)));var jn=class extends he{unwrap(){return this._def.type}_parse(r){let{ctx:n}=this._processInputParams(r);if(n.parsedType!==W.promise&&n.common.async===!1)return q(n,{code:H.invalid_type,expected:W.promise,received:n.parsedType}),le;let a=n.parsedType===W.promise?n.data:Promise.resolve(n.data);return Pt(a.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};jn.create=(t,r)=>new jn(O({type:t,typeName:ie.ZodPromise},fe(r)));var Wt=class extends he{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ie.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(r){let{status:n,ctx:a}=this._processInputParams(r),s=this._def.effect||null,l={addIssue:c=>{q(a,c),c.fatal?n.abort():n.dirty()},get path(){return a.path}};if(l.addIssue=l.addIssue.bind(l),s.type==="preprocess"){let c=s.transform(a.data,l);if(a.common.async)return Promise.resolve(c).then(async p=>{if(n.value==="aborted")return le;let g=await this._def.schema._parseAsync({data:p,path:a.path,parent:a});return g.status==="aborted"?le:g.status==="dirty"||n.value==="dirty"?gs(g.value):g});{if(n.value==="aborted")return le;let p=this._def.schema._parseSync({data:c,path:a.path,parent:a});return p.status==="aborted"?le:p.status==="dirty"||n.value==="dirty"?gs(p.value):p}}if(s.type==="refinement"){let c=p=>{let g=s.refinement(p,l);if(a.common.async)return Promise.resolve(g);if(g instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return p};if(a.common.async===!1){let p=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});return p.status==="aborted"?le:(p.status==="dirty"&&n.dirty(),c(p.value),{status:n.value,value:p.value})}else return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(p=>p.status==="aborted"?le:(p.status==="dirty"&&n.dirty(),c(p.value).then(()=>({status:n.value,value:p.value}))))}if(s.type==="transform")if(a.common.async===!1){let c=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});if(!xa(c))return c;let p=s.transform(c.value,l);if(p instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:p}}else return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(c=>xa(c)?Promise.resolve(s.transform(c.value,l)).then(p=>({status:n.value,value:p})):c);Le.assertNever(s)}};Wt.create=(t,r,n)=>new Wt(O({schema:t,typeName:ie.ZodEffects,effect:r},fe(n)));Wt.createWithPreprocess=(t,r,n)=>new Wt(O({schema:r,effect:{type:"preprocess",transform:t},typeName:ie.ZodEffects},fe(n)));var or=class extends he{_parse(r){return this._getType(r)===W.undefined?Pt(void 0):this._def.innerType._parse(r)}unwrap(){return this._def.innerType}};or.create=(t,r)=>new or(O({innerType:t,typeName:ie.ZodOptional},fe(r)));var Vr=class extends he{_parse(r){return this._getType(r)===W.null?Pt(null):this._def.innerType._parse(r)}unwrap(){return this._def.innerType}};Vr.create=(t,r)=>new Vr(O({innerType:t,typeName:ie.ZodNullable},fe(r)));var Oa=class extends he{_parse(r){let{ctx:n}=this._processInputParams(r),a=n.data;return n.parsedType===W.undefined&&(a=this._def.defaultValue()),this._def.innerType._parse({data:a,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};Oa.create=(t,r)=>new Oa(O({innerType:t,typeName:ie.ZodDefault,defaultValue:typeof r.default=="function"?r.default:()=>r.default},fe(r)));var Ua=class extends he{_parse(r){let{ctx:n}=this._processInputParams(r),a=ee(O({},n),{common:ee(O({},n.common),{issues:[]})}),s=this._def.innerType._parse({data:a.data,path:a.path,parent:O({},a)});return bo(s)?s.then(l=>({status:"valid",value:l.status==="valid"?l.value:this._def.catchValue({get error(){return new Lt(a.common.issues)},input:a.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Lt(a.common.issues)},input:a.data})}}removeCatch(){return this._def.innerType}};Ua.create=(t,r)=>new Ua(O({innerType:t,typeName:ie.ZodCatch,catchValue:typeof r.catch=="function"?r.catch:()=>r.catch},fe(r)));var vs=class extends he{_parse(r){if(this._getType(r)!==W.nan){let a=this._getOrReturnCtx(r);return q(a,{code:H.invalid_type,expected:W.nan,received:a.parsedType}),le}return{status:"valid",value:r.data}}};vs.create=t=>new vs(O({typeName:ie.ZodNaN},fe(t)));var _y=Symbol("zod_brand"),yo=class extends he{_parse(r){let{ctx:n}=this._processInputParams(r),a=n.data;return this._def.type._parse({data:a,path:n.path,parent:n})}unwrap(){return this._def.type}},Ba=class extends he{_parse(r){let{status:n,ctx:a}=this._processInputParams(r);if(a.common.async)return(async()=>{let l=await this._def.in._parseAsync({data:a.data,path:a.path,parent:a});return l.status==="aborted"?le:l.status==="dirty"?(n.dirty(),gs(l.value)):this._def.out._parseAsync({data:l.value,path:a.path,parent:a})})();{let s=this._def.in._parseSync({data:a.data,path:a.path,parent:a});return s.status==="aborted"?le:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:a.path,parent:a})}}static create(r,n){return new Ba({in:r,out:n,typeName:ie.ZodPipeline})}},Ra=class extends he{_parse(r){let n=this._def.innerType._parse(r),a=s=>(xa(s)&&(s.value=Object.freeze(s.value)),s);return bo(n)?n.then(s=>a(s)):a(n)}unwrap(){return this._def.innerType}};Ra.create=(t,r)=>new Ra(O({innerType:t,typeName:ie.ZodReadonly},fe(r)));function vm(t,r={},n){return t?qn.create().superRefine((a,s)=>{var l,c;if(!t(a)){let p=typeof r=="function"?r(a):typeof r=="string"?{message:r}:r,g=(c=(l=p.fatal)!==null&&l!==void 0?l:n)!==null&&c!==void 0?c:!0,m=typeof p=="string"?{message:p}:p;s.addIssue(ee(O({code:"custom"},m),{fatal:g}))}}):qn.create()}var Dy={object:Ve.lazycreate},ie;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(ie||(ie={}));var Hy=(t,r={message:`Input not instance of ${t.name}`})=>vm(n=>n instanceof t,r),Cm=jt.create,xm=Qr.create,Gy=vs.create,Fy=qr.create,wm=wa.create,Qy=pn.create,qy=fs.create,jy=Ma.create,Vy=Ta.create,Wy=qn.create,Ky=dn.create,zy=Ar.create,Xy=hs.create,Zy=Vt.create,Yy=Ve.create,Jy=Ve.strictCreate,ev=Sa.create,tv=bs.create,rv=ka.create,nv=lr.create,av=La.create,sv=ys.create,ov=gn.create,iv=Qn.create,lv=Pa.create,cv=Aa.create,uv=jr.create,dv=Ea.create,pv=jn.create,pm=Wt.create,gv=or.create,mv=Vr.create,fv=Wt.createWithPreprocess,hv=Ba.create,bv=()=>Cm().optional(),yv=()=>xm().optional(),vv=()=>wm().optional(),Cv={string:t=>jt.create(ee(O({},t),{coerce:!0})),number:t=>Qr.create(ee(O({},t),{coerce:!0})),boolean:t=>wa.create(ee(O({},t),{coerce:!0})),bigint:t=>qr.create(ee(O({},t),{coerce:!0})),date:t=>pn.create(ee(O({},t),{coerce:!0}))},xv=le,y=Object.freeze({__proto__:null,defaultErrorMap:ms,setErrorMap:fy,getErrorMap:Ki,makeIssue:zi,EMPTY_PATH:hy,addIssueToContext:q,ParseStatus:ut,INVALID:le,DIRTY:gs,OK:Pt,isAborted:fu,isDirty:hu,isValid:xa,isAsync:bo,get util(){return Le},get objectUtil(){return mu},ZodParsedType:W,getParsedType:un,ZodType:he,datetimeRegex:bm,ZodString:jt,ZodNumber:Qr,ZodBigInt:qr,ZodBoolean:wa,ZodDate:pn,ZodSymbol:fs,ZodUndefined:Ma,ZodNull:Ta,ZodAny:qn,ZodUnknown:dn,ZodNever:Ar,ZodVoid:hs,ZodArray:Vt,ZodObject:Ve,ZodUnion:Sa,ZodDiscriminatedUnion:bs,ZodIntersection:ka,ZodTuple:lr,ZodRecord:La,ZodMap:ys,ZodSet:gn,ZodFunction:Qn,ZodLazy:Pa,ZodLiteral:Aa,ZodEnum:jr,ZodNativeEnum:Ea,ZodPromise:jn,ZodEffects:Wt,ZodTransformer:Wt,ZodOptional:or,ZodNullable:Vr,ZodDefault:Oa,ZodCatch:Ua,ZodNaN:vs,BRAND:_y,ZodBranded:yo,ZodPipeline:Ba,ZodReadonly:Ra,custom:vm,Schema:he,ZodSchema:he,late:Dy,get ZodFirstPartyTypeKind(){return ie},coerce:Cv,any:Wy,array:Zy,bigint:Fy,boolean:wm,date:Qy,discriminatedUnion:tv,effect:pm,enum:uv,function:iv,instanceof:Hy,intersection:rv,lazy:lv,literal:cv,map:sv,nan:Gy,nativeEnum:dv,never:zy,null:Vy,nullable:mv,number:xm,object:Yy,oboolean:vv,onumber:yv,optional:gv,ostring:bv,pipeline:hv,preprocess:fv,promise:pv,record:av,set:ov,strictObject:Jy,string:Cm,symbol:qy,transformer:pm,tuple:nv,undefined:jy,union:ev,unknown:Ky,void:Xy,NEVER:xv,ZodIssueCode:H,quotelessJson:my,ZodError:Lt});var be=class extends Bn{constructor(n,a){var c,p,g;let s=u.t(`octeract.data.${a}.name`),l=u.t(`octeract.data.${a}.description`);super(ee(O({},n),{name:s,description:l}));this.octeractsInvested=0;this.costFormula=n.costFormula,this.octeractsInvested=(c=n.octeractsInvested)!=null?c:0,this.qualityOfLife=(p=n.qualityOfLife)!=null?p:!1,this.cacheUpdates=(g=n.cacheUpdates)!=null?g:void 0}getCostTNL(){return this.level===this.maxLevel?0:this.costFormula(this.level,this.costPerLevel)}async buyLevel(n){let a=0,s=1,l=e.wowOcteracts;if(n.shiftKey){s=1e6;let c=Number(await Pe(`${u.t("octeract.buyLevel.buyPrompt",{n:d(e.wowOcteracts,0,!0)})}`));if(isNaN(c)||!isFinite(c)||!Number.isInteger(c))return P(u.t("general.validation.finite"));if(c===-1)l=e.wowOcteracts;else{if(c<=0)return P(u.t("octeract.buyLevel.cancelPurchase"));l=c}l=Math.min(e.wowOcteracts,l)}if(this.maxLevel>0&&(s=Math.min(s,this.maxLevel-this.level)),s===0)return P(u.t("octeract.buyLevel.alreadyMax"));for(;s>0;){let c=this.getCostTNL();if(e.wowOcteracts1)return P(`${u.t("octeract.buyLevel.multiBuy",{n:d(a)})}`);this.updateCaches(),this.updateUpgradeHTML()}toString(){let n=this.getCostTNL(),a=this.maxLevel===-1?"":`/${d(this.maxLevel,0,!0)}`,s=this.maxLevel===this.level,l=s?"plum":"white",c=this.freeLevels>0?` [+${d(this.freeLevels,1,!0)}]`:"";this.freeLevels>this.level&&(c=`${c}${u.t("general.softCapped")}`);let p=n<=e.wowOcteracts,g="";if(!s&&!p){let h=Wr();g=h>0?qt((n-e.wowOcteracts)/h):`${u.t("general.infinity")}`}let m=s?` ${u.t("general.maxed")}`:p?` ${u.t("general.affordable")}`:` ${u.t("octeract.toString.becomeAffordable",{n:g})}`;return`${this.name}
${this.description}
${u.t("general.level")} ${d(this.level,0,!0)}${a}${c}
${this.getEffect().desc}
${u.t("octeract.toString.costNextLevel")} ${d(n,2,!0,!0,!0)} Octeracts${m}
- ${u.t("general.spent")} Octeracts: ${d(this.octeractsInvested,2,!0,!0,!0)}`}updateUpgradeHTML(){o("singularityOcteractsMultiline").innerHTML=this.toString(),o("octeractAmount").innerHTML=u.t("octeract.amount",{octeracts:d(e.wowOcteracts,2,!0,!0,!0)})}computeFreeLevelSoftcap(){let n=1+.003*e.cubeUpgrades[78];return this.freeLevels*n}actualTotalLevels(){if((e.singularityChallenges.noOcteracts.enabled||e.singularityChallenges.sadisticPrequel.enabled)&&!this.qualityOfLife)return 0;let n=this.computeFreeLevelSoftcap();return this.level>=n?n+this.level:2*Math.sqrt(n*this.level)}getEffect(){return this.effect(this.actualTotalLevels())}refund(){e.wowOcteracts+=this.octeractsInvested,this.level=0,this.octeractsInvested=0}updateCaches(){if(this.cacheUpdates!==void 0)for(let n of this.cacheUpdates)n()}},ce={octeractStarter:{costFormula:(t,r)=>r*(t+1),maxLevel:1,costPerLevel:1e-15,effect:t=>({bonus:t>0,get desc(){return u.t("octeract.data.octeractStarter.effect",{n:t>0?"":"not"})}})},octeractGain:{costFormula:(t,r)=>r*(Math.pow(t+1,6)-Math.pow(t,6)),maxLevel:1e8,costPerLevel:1e-8,effect:t=>({bonus:1+.011*t,get desc(){return u.t("octeract.data.octeractGain.effect",{n:d(t,0,!0)})}})},octeractGain2:{costFormula:(t,r)=>r*Math.pow(10,Math.pow(t,.5)/3),maxLevel:-1,costPerLevel:1e10,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractGain2.effect",{n:d(t,0,!0)})}})},octeractQuarkGain:{costFormula:(t,r)=>{if(t<1e3)return r*(Math.pow(t+1,7)-Math.pow(t,7));{let n=t>=1e4?Math.pow(10,(t-1e4)/250):1,a=t>=15e3?Math.pow(10,(t-15e3)/250):1;return r*(Math.pow(1001,7)-Math.pow(1e3,7))*Math.pow(10,t/1e3)*n*a}},maxLevel:2e4,costPerLevel:1e-7,effect:t=>({bonus:1+.011*t,get desc(){return u.t("octeract.data.octeractQuarkGain.effect",{n:d(1.1*t,0,!0)})}})},octeractQuarkGain2:{costFormula:(t,r)=>r*Math.pow(1e20,t),maxLevel:5,costPerLevel:1e22,effect:t=>({bonus:t>0,get desc(){return u.t("octeract.data.octeractQuarkGain2.effect",{n:t>0?"":"NOT"})}})},octeractCorruption:{costFormula:(t,r)=>r*Math.pow(10,t*10),maxLevel:2,costPerLevel:10,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractCorruption.effect",{n:t})}})},octeractGQCostReduce:{costFormula:(t,r)=>r*Math.pow(2,t),maxLevel:50,costPerLevel:1e-9,effect:t=>({bonus:1-t/100,get desc(){return u.t("octeract.data.octeractGQCostReduce.effect",{n:t})}})},octeractExportQuarks:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:100,costPerLevel:1,effect:t=>({bonus:4*t/10+1,get desc(){return u.t("octeract.data.octeractExportQuarks.effect",{n:d(40*t,0,!0)})}})},octeractImprovedDaily:{costFormula:(t,r)=>r*Math.pow(1.6,t),maxLevel:50,costPerLevel:.001,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractImprovedDaily.effect",{n:t})}}),qualityOfLife:!0},octeractImprovedDaily2:{costFormula:(t,r)=>r*Math.pow(2,t),maxLevel:50,costPerLevel:.01,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractImprovedDaily2.effect",{n:t})}}),qualityOfLife:!0},octeractImprovedDaily3:{costFormula:(t,r)=>r*Math.pow(20,t),maxLevel:-1,costPerLevel:1e20,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractImprovedDaily3.effect",{n:`${t} +${.5*t}%`})}}),qualityOfLife:!0},octeractImprovedQuarkHept:{costFormula:(t,r)=>r*Math.pow(1e6,t),maxLevel:3,costPerLevel:1/10,effect:t=>({bonus:t/100,get desc(){return u.t("octeract.data.octeractImprovedQuarkHept.effect",{n:d(t/100,2,!0)})}})},octeractImprovedGlobalSpeed:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1e3,costPerLevel:1e-5,effect:t=>({bonus:t/100,get desc(){return u.t("octeract.data.octeractImprovedGlobalSpeed.effect",{n:d(t,0,!0)})}})},octeractImprovedAscensionSpeed:{costFormula:(t,r)=>r*Math.pow(1e9,t/100),maxLevel:100,costPerLevel:100,effect:t=>({bonus:t/2e3,get desc(){return u.t("octeract.data.octeractImprovedAscensionSpeed.effect",{n:d(t/20,2,!0)})}})},octeractImprovedAscensionSpeed2:{costFormula:(t,r)=>r*Math.pow(1e12,t/250),maxLevel:250,costPerLevel:1e5,effect:t=>({bonus:t/2e3,get desc(){return u.t("octeract.data.octeractImprovedAscensionSpeed2.effect",{n:d(t/50,2,!0)})}})},octeractImprovedFree:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1,costPerLevel:100,effect:t=>({bonus:t>0,get desc(){return u.t("octeract.data.octeractImprovedFree.effect",{n:t>0?"":"NOT"})}})},octeractImprovedFree2:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1,costPerLevel:1e7,effect:t=>({bonus:.05*t,get desc(){return u.t("octeract.data.octeractImprovedFree2.effect",{n:d(t/20,2,!0)})}})},octeractImprovedFree3:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1,costPerLevel:1e17,effect:t=>({bonus:.05*t,get desc(){return u.t("octeract.data.octeractImprovedFree3.effect",{n:d(t/20,2,!0)})}})},octeractImprovedFree4:{costFormula:(t,r)=>r*Math.pow(1e20,t/40),maxLevel:40,costPerLevel:1e20,effect:t=>({bonus:.001*t+(t>0?.01:0),get desc(){return u.t("octeract.data.octeractImprovedFree4.effect",{n:d(.001*t+(t>0?.01:0),3,!0)})}})},octeractSingUpgradeCap:{costFormula:(t,r)=>r*Math.pow(1e3,t),maxLevel:10,costPerLevel:1e10,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractSingUpgradeCap.effect",{n:t})}}),qualityOfLife:!0},octeractOfferings1:{costFormula:(t,r)=>t<25?r*Math.pow(t+1,5):r*1e15*Math.pow(10,t/25-1),maxLevel:-1,costPerLevel:1e-15,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractOfferings1.effect",{n:d(t)})}})},octeractObtainium1:{costFormula:(t,r)=>t<25?r*Math.pow(t+1,5):r*1e15*Math.pow(10,t/25-1),maxLevel:-1,costPerLevel:1e-15,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractObtainium1.effect",{n:d(t)})}})},octeractAscensions:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1e6,costPerLevel:1,effect:t=>({bonus:(1+t/100)*(1+2*Math.floor(t/10)/100),get desc(){return u.t("octeract.data.octeractAscensions.effect",{n:d((100+t)*(1+2*Math.floor(t/10)/100)-100,1,!0)})}})},octeractAscensions2:{costFormula:(t,r)=>r*Math.pow(10,Math.pow(t,.5)/3),maxLevel:-1,costPerLevel:1e12,effect:t=>({bonus:(1+t/100)*(1+2*Math.floor(t/10)/100),get desc(){return u.t("octeract.data.octeractAscensions2.effect",{n:d((100+t)*(1+2*Math.floor(t/10)/100)-100,1,!0)})}})},octeractAscensionsOcteractGain:{costFormula:(t,r)=>r*Math.pow(40,t),maxLevel:-1,costPerLevel:1e3,effect:t=>({bonus:t/100,get desc(){return u.t("octeract.data.octeractAscensionsOcteractGain.effect",{n:d(t,1,!0)})}})},octeractFastForward:{costFormula:(t,r)=>r*Math.pow(1e8,t),maxLevel:2,costPerLevel:1e8,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractFastForward.effect",{n100:100*t,n:t})}})},octeractAutoPotionSpeed:{costFormula:(t,r)=>r*Math.pow(10,t),maxLevel:-1,costPerLevel:1e-10,effect:t=>({bonus:1+4*t/100,get desc(){return u.t("octeract.data.octeractAutoPotionSpeed.effect",{n:4*t})}})},octeractAutoPotionEfficiency:{costFormula:(t,r)=>r*Math.pow(10,t),maxLevel:100,costPerLevel:1e-10*Math.pow(10,.5),effect:t=>({bonus:1+2*t/100,get desc(){return u.t("octeract.data.octeractAutoPotionEfficiency.effect",{n:2*t})}})},octeractOneMindImprover:{costFormula:(t,r)=>{let n=t>=10?Math.pow(1e3,t-10):1;return r*Math.pow(1e5,t)*n},maxLevel:16,costPerLevel:1e25,effect:t=>({bonus:.55+t/150,get desc(){return u.t("octeract.data.octeractOneMindImprover.effect",{n:d(.55+t/150,3,!0)})}}),qualityOfLife:!0},octeractAmbrosiaLuck:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(10,n)-Math.pow(10,n-1))},maxLevel:-1,costPerLevel:1e60/9,effect:t=>({bonus:4*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck.effect",{n:d(4*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaLuck2:{costFormula:(t,r)=>r*(Math.pow(t+1,6)-Math.pow(t,6)),maxLevel:30,costPerLevel:1,effect:t=>({bonus:2*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck2.effect",{n:d(2*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaLuck3:{costFormula:(t,r)=>r*(Math.pow(t+1,8)-Math.pow(t,8)),maxLevel:30,costPerLevel:1e30,effect:t=>({bonus:3*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck3.effect",{n:d(3*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaLuck4:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(3,n)-Math.pow(3,n-1))},maxLevel:50,costPerLevel:1e70/2,effect:t=>({bonus:5*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck4.effect",{n:d(5*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaGeneration:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(10,n)-Math.pow(10,n-1))},maxLevel:-1,costPerLevel:1e60/9,effect:t=>({bonus:1+t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration.effect",{n:d(t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]},octeractAmbrosiaGeneration2:{costFormula:(t,r)=>r*(Math.pow(t+1,6)-Math.pow(t,6)),maxLevel:20,costPerLevel:1,effect:t=>({bonus:1+t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration2.effect",{n:d(t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]},octeractAmbrosiaGeneration3:{costFormula:(t,r)=>r*(Math.pow(t+1,8)-Math.pow(t,8)),maxLevel:35,costPerLevel:1e30,effect:t=>({bonus:1+t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration3.effect",{n:d(t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]},octeractAmbrosiaGeneration4:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(3,n)-Math.pow(3,n-1))},maxLevel:50,costPerLevel:1e70/2,effect:t=>({bonus:1+2*t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration4.effect",{n:d(2*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]}};var cr=class{constructor(r,n){var l,c,p,g,m;let a=u.t(`singularityChallenge.data.${n}.name`),s=u.t(`singularityChallenge.data.${n}.description`);this.name=a,this.description=s,this.baseReq=r.baseReq,this.completions=(l=r.completions)!=null?l:0,this.maxCompletions=r.maxCompletions,this.unlockSingularity=r.unlockSingularity,this.HTMLTag=r.HTMLTag,this.highestSingularityCompleted=(c=r.highestSingularityCompleted)!=null?c:0,this.enabled=(p=r.enabled)!=null?p:!1,this.resetTime=(g=r.resetTime)!=null?g:!1,this.singularityRequirement=r.singularityRequirement,this.effect=r.effect,this.scalingrewardcount=r.scalingrewardcount,this.uniquerewardcount=r.uniquerewardcount,this.updateIconHTML(),this.updateChallengeCompletions(),this.cacheUpdates=(m=r.cacheUpdates)!=null?m:void 0}computeSingularityRquirement(){return this.singularityRequirement(this.baseReq,this.completions)}updateChallengeCompletions(){let r=0;for(;this.singularityRequirement(this.baseReq,r)<=this.highestSingularityCompleted;)r+=1;this.completions=Math.min(this.maxCompletions,r)}challengeEntryHandler(){return this.enabled?this.exitChallenge(e.runelevels[6]>0):this.enableChallenge()}async enableChallenge(){if(e.highestSingularityCount${u.t("general.enabled")}`:"";return`${this.name} ${n}
+ ${u.t("general.spent")} Octeracts: ${d(this.octeractsInvested,2,!0,!0,!0)}`}updateUpgradeHTML(){o("singularityOcteractsMultiline").innerHTML=this.toString(),o("octeractAmount").innerHTML=u.t("octeract.amount",{octeracts:d(e.wowOcteracts,2,!0,!0,!0)})}computeFreeLevelSoftcap(){let n=1+.003*e.cubeUpgrades[78];return this.freeLevels*n}actualTotalLevels(){if((e.singularityChallenges.noOcteracts.enabled||e.singularityChallenges.sadisticPrequel.enabled)&&!this.qualityOfLife)return 0;let n=this.computeFreeLevelSoftcap();return this.level>=n?n+this.level:2*Math.sqrt(n*this.level)}getEffect(){return this.effect(this.actualTotalLevels())}refund(){e.wowOcteracts+=this.octeractsInvested,this.level=0,this.octeractsInvested=0}updateCaches(){if(this.cacheUpdates!==void 0)for(let n of this.cacheUpdates)n()}},ce={octeractStarter:{costFormula:(t,r)=>r*(t+1),maxLevel:1,costPerLevel:1e-15,effect:t=>({bonus:t>0,get desc(){return u.t("octeract.data.octeractStarter.effect",{n:t>0?"":"not"})}})},octeractGain:{costFormula:(t,r)=>r*(Math.pow(t+1,6)-Math.pow(t,6)),maxLevel:1e8,costPerLevel:1e-8,effect:t=>({bonus:1+.011*t,get desc(){return u.t("octeract.data.octeractGain.effect",{n:d(t,0,!0)})}})},octeractGain2:{costFormula:(t,r)=>r*Math.pow(10,Math.pow(t,.5)/3),maxLevel:-1,costPerLevel:1e10,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractGain2.effect",{n:d(t,0,!0)})}})},octeractQuarkGain:{costFormula:(t,r)=>{if(t<1e3)return r*(Math.pow(t+1,7)-Math.pow(t,7));{let n=t>=1e4?Math.pow(10,(t-1e4)/250):1,a=t>=15e3?Math.pow(10,(t-15e3)/250):1;return r*(Math.pow(1001,7)-Math.pow(1e3,7))*Math.pow(10,t/1e3)*n*a}},maxLevel:2e4,costPerLevel:1e-7,effect:t=>({bonus:1+.011*t,get desc(){return u.t("octeract.data.octeractQuarkGain.effect",{n:d(1.1*t,0,!0)})}})},octeractQuarkGain2:{costFormula:(t,r)=>r*Math.pow(1e20,t),maxLevel:5,costPerLevel:1e22,effect:t=>({bonus:t>0,get desc(){return u.t("octeract.data.octeractQuarkGain2.effect",{n:t>0?"":"NOT"})}})},octeractCorruption:{costFormula:(t,r)=>r*Math.pow(10,t*10),maxLevel:2,costPerLevel:10,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractCorruption.effect",{n:t})}})},octeractGQCostReduce:{costFormula:(t,r)=>r*Math.pow(2,t),maxLevel:50,costPerLevel:1e-9,effect:t=>({bonus:1-t/100,get desc(){return u.t("octeract.data.octeractGQCostReduce.effect",{n:t})}})},octeractExportQuarks:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:100,costPerLevel:1,effect:t=>({bonus:4*t/10+1,get desc(){return u.t("octeract.data.octeractExportQuarks.effect",{n:d(40*t,0,!0)})}})},octeractImprovedDaily:{costFormula:(t,r)=>r*Math.pow(1.6,t),maxLevel:50,costPerLevel:.001,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractImprovedDaily.effect",{n:t})}}),qualityOfLife:!0},octeractImprovedDaily2:{costFormula:(t,r)=>r*Math.pow(2,t),maxLevel:50,costPerLevel:.01,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractImprovedDaily2.effect",{n:t})}}),qualityOfLife:!0},octeractImprovedDaily3:{costFormula:(t,r)=>r*Math.pow(20,t),maxLevel:-1,costPerLevel:1e20,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractImprovedDaily3.effect",{n:`${t} +${.5*t}%`})}}),qualityOfLife:!0},octeractImprovedQuarkHept:{costFormula:(t,r)=>r*Math.pow(1e6,t),maxLevel:3,costPerLevel:1/10,effect:t=>({bonus:t/100,get desc(){return u.t("octeract.data.octeractImprovedQuarkHept.effect",{n:d(t/100,2,!0)})}})},octeractImprovedGlobalSpeed:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1e3,costPerLevel:1e-5,effect:t=>({bonus:t/100,get desc(){return u.t("octeract.data.octeractImprovedGlobalSpeed.effect",{n:d(t,0,!0)})}})},octeractImprovedAscensionSpeed:{costFormula:(t,r)=>r*Math.pow(1e9,t/100),maxLevel:100,costPerLevel:100,effect:t=>({bonus:t/2e3,get desc(){return u.t("octeract.data.octeractImprovedAscensionSpeed.effect",{n:d(t/20,2,!0)})}})},octeractImprovedAscensionSpeed2:{costFormula:(t,r)=>r*Math.pow(1e12,t/250),maxLevel:250,costPerLevel:1e5,effect:t=>({bonus:t/2e3,get desc(){return u.t("octeract.data.octeractImprovedAscensionSpeed2.effect",{n:d(t/50,2,!0)})}})},octeractImprovedFree:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1,costPerLevel:100,effect:t=>({bonus:t>0,get desc(){return u.t("octeract.data.octeractImprovedFree.effect",{n:t>0?"":"NOT"})}})},octeractImprovedFree2:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1,costPerLevel:1e7,effect:t=>({bonus:.05*t,get desc(){return u.t("octeract.data.octeractImprovedFree2.effect",{n:d(t/20,2,!0)})}})},octeractImprovedFree3:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1,costPerLevel:1e17,effect:t=>({bonus:.05*t,get desc(){return u.t("octeract.data.octeractImprovedFree3.effect",{n:d(t/20,2,!0)})}})},octeractImprovedFree4:{costFormula:(t,r)=>r*Math.pow(1e20,t/40),maxLevel:40,costPerLevel:1e20,effect:t=>({bonus:.001*t+(t>0?.01:0),get desc(){return u.t("octeract.data.octeractImprovedFree4.effect",{n:d(.001*t+(t>0?.01:0),3,!0)})}})},octeractSingUpgradeCap:{costFormula:(t,r)=>r*Math.pow(1e3,t),maxLevel:10,costPerLevel:1e10,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractSingUpgradeCap.effect",{n:t})}}),qualityOfLife:!0},octeractOfferings1:{costFormula:(t,r)=>t<25?r*Math.pow(t+1,5):r*1e15*Math.pow(10,t/25-1),maxLevel:-1,costPerLevel:1e-15,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractOfferings1.effect",{n:d(t)})}})},octeractObtainium1:{costFormula:(t,r)=>t<25?r*Math.pow(t+1,5):r*1e15*Math.pow(10,t/25-1),maxLevel:-1,costPerLevel:1e-15,effect:t=>({bonus:1+.01*t,get desc(){return u.t("octeract.data.octeractObtainium1.effect",{n:d(t)})}})},octeractAscensions:{costFormula:(t,r)=>r*Math.pow(t+1,3),maxLevel:1e6,costPerLevel:1,effect:t=>({bonus:(1+t/100)*(1+2*Math.floor(t/10)/100),get desc(){return u.t("octeract.data.octeractAscensions.effect",{n:d((100+t)*(1+2*Math.floor(t/10)/100)-100,1,!0)})}})},octeractAscensions2:{costFormula:(t,r)=>r*Math.pow(10,Math.pow(t,.5)/3),maxLevel:-1,costPerLevel:1e12,effect:t=>({bonus:(1+t/100)*(1+2*Math.floor(t/10)/100),get desc(){return u.t("octeract.data.octeractAscensions2.effect",{n:d((100+t)*(1+2*Math.floor(t/10)/100)-100,1,!0)})}})},octeractAscensionsOcteractGain:{costFormula:(t,r)=>r*Math.pow(40,t),maxLevel:-1,costPerLevel:1e3,effect:t=>({bonus:t/100,get desc(){return u.t("octeract.data.octeractAscensionsOcteractGain.effect",{n:d(t,1,!0)})}})},octeractFastForward:{costFormula:(t,r)=>r*Math.pow(1e8,t),maxLevel:2,costPerLevel:1e8,effect:t=>({bonus:t,get desc(){return u.t("octeract.data.octeractFastForward.effect",{n100:100*t,n:t})}})},octeractAutoPotionSpeed:{costFormula:(t,r)=>r*Math.pow(10,t),maxLevel:-1,costPerLevel:1e-10,effect:t=>({bonus:1+4*t/100,get desc(){return u.t("octeract.data.octeractAutoPotionSpeed.effect",{n:4*t})}})},octeractAutoPotionEfficiency:{costFormula:(t,r)=>r*Math.pow(10,t),maxLevel:100,costPerLevel:1e-10*Math.pow(10,.5),effect:t=>({bonus:1+2*t/100,get desc(){return u.t("octeract.data.octeractAutoPotionEfficiency.effect",{n:2*t})}})},octeractOneMindImprover:{costFormula:(t,r)=>{let n=t>=10?Math.pow(1e3,t-10):1;return r*Math.pow(1e5,t)*n},maxLevel:16,costPerLevel:1e25,effect:t=>({bonus:.55+t/150,get desc(){return u.t("octeract.data.octeractOneMindImprover.effect",{n:d(.55+t/150,3,!0)})}}),qualityOfLife:!0},octeractAmbrosiaLuck:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(10,n)-Math.pow(10,n-1))},maxLevel:-1,costPerLevel:1e60/9,effect:t=>({bonus:4*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck.effect",{n:d(4*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaLuck2:{costFormula:(t,r)=>r*(Math.pow(t+1,6)-Math.pow(t,6)),maxLevel:30,costPerLevel:1,effect:t=>({bonus:2*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck2.effect",{n:d(2*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaLuck3:{costFormula:(t,r)=>r*(Math.pow(t+1,8)-Math.pow(t,8)),maxLevel:30,costPerLevel:1e30,effect:t=>({bonus:3*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck3.effect",{n:d(3*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaLuck4:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(3,n)-Math.pow(3,n-1))},maxLevel:50,costPerLevel:1e70/2,effect:t=>({bonus:5*t,get desc(){return u.t("octeract.data.octeractAmbrosiaLuck4.effect",{n:d(5*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaLuck=qe().value}]},octeractAmbrosiaGeneration:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(10,n)-Math.pow(10,n-1))},maxLevel:-1,costPerLevel:1e60/9,effect:t=>({bonus:1+t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration.effect",{n:d(t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]},octeractAmbrosiaGeneration2:{costFormula:(t,r)=>r*(Math.pow(t+1,6)-Math.pow(t,6)),maxLevel:20,costPerLevel:1,effect:t=>({bonus:1+t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration2.effect",{n:d(t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]},octeractAmbrosiaGeneration3:{costFormula:(t,r)=>r*(Math.pow(t+1,8)-Math.pow(t,8)),maxLevel:35,costPerLevel:1e30,effect:t=>({bonus:1+t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration3.effect",{n:d(t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]},octeractAmbrosiaGeneration4:{costFormula:(t,r)=>{let n=t+1;return r*(Math.pow(3,n)-Math.pow(3,n-1))},maxLevel:50,costPerLevel:1e70/2,effect:t=>({bonus:1+2*t/100,get desc(){return u.t("octeract.data.octeractAmbrosiaGeneration4.effect",{n:d(2*t)})}}),qualityOfLife:!0,cacheUpdates:[()=>{i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value}]}};var cr=class{constructor(r,n){var l,c,p,g,m;let a=u.t(`singularityChallenge.data.${n}.name`),s=u.t(`singularityChallenge.data.${n}.description`);this.name=a,this.description=s,this.baseReq=r.baseReq,this.completions=(l=r.completions)!=null?l:0,this.maxCompletions=r.maxCompletions,this.unlockSingularity=r.unlockSingularity,this.HTMLTag=r.HTMLTag,this.highestSingularityCompleted=(c=r.highestSingularityCompleted)!=null?c:0,this.enabled=(p=r.enabled)!=null?p:!1,this.resetTime=(g=r.resetTime)!=null?g:!1,this.singularityRequirement=r.singularityRequirement,this.effect=r.effect,this.scalingrewardcount=r.scalingrewardcount,this.uniquerewardcount=r.uniquerewardcount,this.updateIconHTML(),this.updateChallengeCompletions(),this.cacheUpdates=(m=r.cacheUpdates)!=null?m:void 0}computeSingularityRquirement(){return this.singularityRequirement(this.baseReq,this.completions)}updateChallengeCompletions(){let r=0;for(;this.singularityRequirement(this.baseReq,r)<=this.highestSingularityCompleted;)r+=1;this.completions=Math.min(this.maxCompletions,r)}challengeEntryHandler(){return this.enabled?this.exitChallenge(e.runelevels[6]>0):this.enableChallenge()}async enableChallenge(){if(e.highestSingularityCount${u.t("general.enabled")}`:"";return`${this.name} ${n}
${u.t("singularityChallenge.toString.tiersCompleted")}: ${this.completions}/${this.maxCompletions}
${u.t("singularityChallenge.toString.canEnter",{unlockSing:this.unlockSingularity,highestSing:e.highestSingularityCount})}
${u.t("singularityChallenge.toString.currentTierSingularity")} ${this.singularityRequirement(this.baseReq,this.completions)}
${this.description}`}scaleString(){let r="";for(let n=1;n<=this.scalingrewardcount;n++){let a=u.t(`singularityChallenge.data.${String(this.HTMLTag)}.ScalingReward${n}`);r+=n>1?`
${a}`:a}return r}uniqueString(){let r="";for(let n=1;n<=this.uniquerewardcount;n++){let a=u.t(`singularityChallenge.data.${String(this.HTMLTag)}.UniqueReward${n}`);r+=n>1?`
-${a}`:a}return r}updateChallengeHTML(){o("singularityChallengesInfo").innerHTML=this.toString(),o("singularityChallengesScalingRewards").innerHTML=this.scaleString(),o("singularityChallengesUniqueRewards").innerHTML=this.uniqueString()}updateIconHTML(){let r=this.enabled?"orchid":"";o(`${String(this.HTMLTag)}`).style.backgroundColor=r}get rewards(){return this.effect(this.completions)}},nt={noSingularityUpgrades:{baseReq:1,maxCompletions:30,unlockSingularity:25,HTMLTag:"noSingularityUpgrades",singularityRequirement:(t,r)=>t+8*r,scalingrewardcount:1,uniquerewardcount:5,effect:t=>({cubes:1+.5*t,goldenQuarks:1+.12*+(t>0),blueberries:+(t>0),shopUpgrade:t>=20,luckBonus:t>=30?.04:0,shopUpgrade2:t>=30}),cacheUpdates:[()=>{i.ambrosiaCurrStats={ambrosiaAdditiveLuckMult:Kr().value,ambrosiaLuck:qe().value,ambrosiaBlueberries:fa().value,ambrosiaGenerationSpeed:Qe().value}}]},oneChallengeCap:{baseReq:10,maxCompletions:25,unlockSingularity:40,HTMLTag:"oneChallengeCap",singularityRequirement:(t,r)=>t+11*r,scalingrewardcount:2,uniquerewardcount:4,effect:t=>({corrScoreIncrease:.03*t,blueberrySpeedMult:1+t/100,capIncrease:3*+(t>0),freeCorruptionLevel:t>=20,shopUpgrade:t>=20,reinCapIncrease2:7*+(t>=25),ascCapIncrease2:2*+(t>=25)})},noOcteracts:{baseReq:75,maxCompletions:15,unlockSingularity:100,HTMLTag:"noOcteracts",singularityRequirement:(t,r)=>r<10?t+13*r:t+13*9+10*(r-9),scalingrewardcount:1,uniquerewardcount:3,effect:t=>({octeractPow:t<=10?.02*t:.2+(t-10)/100,offeringBonus:t>0,obtainiumBonus:t>=10,shopUpgrade:t>=10})},limitedAscensions:{baseReq:10,maxCompletions:25,unlockSingularity:50,HTMLTag:"limitedAscensions",singularityRequirement:(t,r)=>t+10*r,scalingrewardcount:1,uniquerewardcount:4,effect:t=>({ultimateProgressBarUnlock:t>0,ascensionSpeedMult:.1*t/100,hepteractCap:t>0,exaltBonus:t>=20,shopUpgrade:t>=25})},noAmbrosiaUpgrades:{baseReq:150,maxCompletions:20,unlockSingularity:166,HTMLTag:"noAmbrosiaUpgrades",singularityRequirement:(t,r)=>t+6*r,scalingrewardcount:2,uniquerewardcount:6,effect:t=>({bonusAmbrosia:+(t>0),blueberries:Math.floor(t/10)+ +(t>0),luckBonus:t/200,additiveLuck:15*t,blueberrySpeedMult:1+t/50,shopUpgrade:t>=15,shopUpgrade2:t>=20})},limitedTime:{baseReq:203,maxCompletions:25,unlockSingularity:216,HTMLTag:"limitedTime",singularityRequirement:(t,r)=>t+3*r,scalingrewardcount:3,uniquerewardcount:3,effect:t=>({preserveQuarks:+(t>0),quarkMult:.01*t,globalSpeed:.06*t,ascensionSpeed:.06*t,tier1Upgrade:t>=15,tier2Upgrade:t>=25})},sadisticPrequel:{baseReq:135,maxCompletions:30,unlockSingularity:273,HTMLTag:"sadisticPrequel",singularityRequirement:(t,r)=>t+3*r,scalingrewardcount:2,uniquerewardcount:4,effect:t=>({extraFree:50*+(t>0),quarkMult:.03*t,freeUpgradeMult:.03*t,shopUpgrade:t>=10,shopUpgrade2:t>=20,shopUpgrade3:t>=30})}};var V=y.custom(t=>{try{return new f(t),!0}catch(r){return!1}}).transform(t=>new f(t)),ur=t=>y.tuple([y.null()]).rest(t),Vn=(t,r)=>(t.lengthy.object(O({level:y.number(),toggleBuy:y.number(),freeLevels:y.number()},t.reduce((r,n)=>(r[n]=y.number(),r),{}))),wv=y.record(y.string(),y.boolean()).transform(t=>Object.fromEntries(Object.entries(t).filter(([r,n])=>/^\d+$/.test(r)))).transform(t=>{let r=Object.entries(M.toggles);for(let n of r)Object.hasOwn(t,n[0])||(t[n[0]]=n[1]);return t}),vu=y.string().regex(/^|-?\d+(\.\d{1,2})?$/),Zi=y.string().regex(/^\d+$/),Wn=t=>y.object({AUTO:y.boolean().default(()=>M.hepteractCrafts[t].AUTO),BAL:y.number().default(()=>M.hepteractCrafts[t].BAL),BASE_CAP:y.number(),CAP:y.number().default(()=>M.hepteractCrafts[t].CAP),DISCOUNT:y.number().default(()=>M.hepteractCrafts[t].DISCOUNT),HEPTERACT_CONVERSION:y.number(),HTML_STRING:y.string().default(()=>M.hepteractCrafts[t].HTML_STRING),OTHER_CONVERSIONS:y.record(y.string(),y.number()),UNLOCKED:y.boolean().default(()=>M.hepteractCrafts[t].UNLOCKED)}),Yi=y.object({firstPlayed:y.string().datetime().optional().default(()=>new Date().toISOString()),worlds:y.number().transform(t=>new In(t)),coins:V,coinsThisPrestige:V,coinsThisTranscension:V,coinsThisReincarnation:V,coinsTotal:V,firstOwnedCoin:y.number(),firstGeneratedCoin:V,firstCostCoin:V,firstProduceCoin:y.number(),secondOwnedCoin:y.number(),secondGeneratedCoin:V,secondCostCoin:V,secondProduceCoin:y.number(),thirdOwnedCoin:y.number(),thirdGeneratedCoin:V,thirdCostCoin:V,thirdProduceCoin:y.number(),fourthOwnedCoin:y.number(),fourthGeneratedCoin:V,fourthCostCoin:V,fourthProduceCoin:y.number(),fifthOwnedCoin:y.number(),fifthGeneratedCoin:V,fifthCostCoin:V,fifthProduceCoin:y.number(),firstOwnedDiamonds:y.number(),firstGeneratedDiamonds:V,firstCostDiamonds:V,firstProduceDiamonds:y.number(),secondOwnedDiamonds:y.number(),secondGeneratedDiamonds:V,secondCostDiamonds:V,secondProduceDiamonds:y.number(),thirdOwnedDiamonds:y.number(),thirdGeneratedDiamonds:V,thirdCostDiamonds:V,thirdProduceDiamonds:y.number(),fourthOwnedDiamonds:y.number(),fourthGeneratedDiamonds:V,fourthCostDiamonds:V,fourthProduceDiamonds:y.number(),fifthOwnedDiamonds:y.number(),fifthGeneratedDiamonds:V,fifthCostDiamonds:V,fifthProduceDiamonds:y.number(),firstOwnedMythos:y.number(),firstGeneratedMythos:V,firstCostMythos:V,firstProduceMythos:y.number(),secondOwnedMythos:y.number(),secondGeneratedMythos:V,secondCostMythos:V,secondProduceMythos:y.number(),thirdOwnedMythos:y.number(),thirdGeneratedMythos:V,thirdCostMythos:V,thirdProduceMythos:y.number(),fourthOwnedMythos:y.number(),fourthGeneratedMythos:V,fourthCostMythos:V,fourthProduceMythos:y.number(),fifthOwnedMythos:y.number(),fifthGeneratedMythos:V,fifthCostMythos:V,fifthProduceMythos:y.number(),firstOwnedParticles:y.number(),firstGeneratedParticles:V,firstCostParticles:V,firstProduceParticles:y.number(),secondOwnedParticles:y.number(),secondGeneratedParticles:V,secondCostParticles:V,secondProduceParticles:y.number(),thirdOwnedParticles:y.number(),thirdGeneratedParticles:V,thirdCostParticles:V,thirdProduceParticles:y.number(),fourthOwnedParticles:y.number(),fourthGeneratedParticles:V,fourthCostParticles:V,fourthProduceParticles:y.number(),fifthOwnedParticles:y.number(),fifthGeneratedParticles:V,fifthCostParticles:V,fifthProduceParticles:y.number(),firstOwnedAnts:y.number().default(()=>M.firstOwnedAnts),firstGeneratedAnts:V,firstCostAnts:V,firstProduceAnts:y.number().default(()=>M.firstProduceAnts),secondOwnedAnts:y.number().default(()=>M.secondOwnedAnts),secondGeneratedAnts:V,secondCostAnts:V,secondProduceAnts:y.number().default(()=>M.secondProduceAnts),thirdOwnedAnts:y.number().default(()=>M.thirdOwnedAnts),thirdGeneratedAnts:V,thirdCostAnts:V,thirdProduceAnts:y.number().default(()=>M.thirdProduceAnts),fourthOwnedAnts:y.number().default(()=>M.fourthOwnedAnts),fourthGeneratedAnts:V,fourthCostAnts:V,fourthProduceAnts:y.number().default(()=>M.fourthProduceAnts),fifthOwnedAnts:y.number().default(()=>M.fifthOwnedAnts),fifthGeneratedAnts:V,fifthCostAnts:V,fifthProduceAnts:y.number().default(()=>M.fifthProduceAnts),sixthOwnedAnts:y.number().default(()=>M.sixthOwnedAnts),sixthGeneratedAnts:V,sixthCostAnts:V,sixthProduceAnts:y.number().default(()=>M.sixthProduceAnts),seventhOwnedAnts:y.number().default(()=>M.seventhOwnedAnts),seventhGeneratedAnts:V,seventhCostAnts:V,seventhProduceAnts:y.number().default(()=>M.seventhProduceAnts),eighthOwnedAnts:y.number().default(()=>M.eighthOwnedAnts),eighthGeneratedAnts:V,eighthCostAnts:V,eighthProduceAnts:y.number().default(()=>M.eighthProduceAnts),ascendBuilding1:vo.default(()=>Hr(M.ascendBuilding1)),ascendBuilding2:vo.default(()=>Hr(M.ascendBuilding2)),ascendBuilding3:vo.default(()=>Hr(M.ascendBuilding3)),ascendBuilding4:vo.default(()=>Hr(M.ascendBuilding4)),ascendBuilding5:vo.default(()=>Hr(M.ascendBuilding5)),multiplierCost:V,multiplierBought:y.number(),acceleratorCost:V,acceleratorBought:y.number(),acceleratorBoostBought:y.number(),acceleratorBoostCost:V,upgrades:y.number().array().transform(t=>(t.length{let r=Object.values(t);return Gc(r,0,M.challengecompletions.length),r})]),highestchallengecompletions:y.union([y.union([y.number(),y.null()]).array(),y.record(y.string(),y.number()).transform(t=>{let r=Object.values(t);return Gc(r,0,M.highestchallengecompletions.length),r})]),challenge15Exponent:y.number().default(()=>M.challenge15Exponent),highestChallenge15Exponent:y.number().default(()=>M.highestChallenge15Exponent),retrychallenges:y.boolean().default(()=>M.retrychallenges),currentChallenge:y.union([y.string().transform(()=>O({},M.currentChallenge)),y.object({transcension:y.number(),reincarnation:y.number(),ascension:y.number()}).default(()=>O({},M.currentChallenge))]),researchPoints:y.number(),obtainiumtimer:y.number(),obtainiumpersecond:y.number().default(()=>M.obtainiumpersecond),maxobtainiumpersecond:y.number().default(()=>M.maxobtainiumpersecond),maxobtainium:y.number().default(()=>M.maxobtainium),researches:y.number().array().transform(t=>Vn(t,"researches")),unlocks:y.record(y.string(),y.boolean()),achievements:y.number().array().transform(t=>Vn(t,"achievements")),achievementPoints:y.number(),prestigenomultiplier:y.boolean(),prestigenoaccelerator:y.boolean(),transcendnomultiplier:y.boolean(),transcendnoaccelerator:y.boolean(),reincarnatenomultiplier:y.boolean(),reincarnatenoaccelerator:y.boolean(),prestigenocoinupgrades:y.boolean(),transcendnocoinupgrades:y.boolean(),transcendnocoinorprestigeupgrades:y.boolean(),reincarnatenocoinupgrades:y.boolean(),reincarnatenocoinorprestigeupgrades:y.boolean(),reincarnatenocoinprestigeortranscendupgrades:y.boolean(),reincarnatenocoinprestigetranscendorgeneratorupgrades:y.boolean(),crystalUpgrades:y.number().array(),crystalUpgradesCost:y.number().array().default(()=>[...M.crystalUpgradesCost]),runelevels:y.number().array().transform(t=>Vn(t,"runelevels")),runeexp:y.union([y.number(),y.null().transform(()=>0)]).array().transform(t=>Vn(t,"runeexp")),runeshards:y.number(),maxofferings:y.number().default(()=>M.maxofferings),offeringpersecond:y.number().default(()=>M.offeringpersecond),prestigecounter:y.number(),transcendcounter:y.number(),reincarnationcounter:y.number(),offlinetick:y.number(),prestigeamount:y.union([y.number(),vu.transform(Number)]),transcendamount:y.union([y.number(),vu.transform(Number)]).default(()=>M.transcendamount),reincarnationamount:y.union([y.number(),vu.transform(Number)]),fastestprestige:y.number(),fastesttranscend:y.number(),fastestreincarnate:y.number(),resettoggle1:y.number().default(()=>M.resettoggle1),resettoggle2:y.number().default(()=>M.resettoggle2),resettoggle3:y.number().default(()=>M.resettoggle3),resettoggle4:y.number().default(()=>M.resettoggle4),tesseractAutoBuyerToggle:y.number().default(()=>M.tesseractAutoBuyerToggle),tesseractAutoBuyerAmount:y.number().default(()=>M.tesseractAutoBuyerAmount),coinbuyamount:y.number(),crystalbuyamount:y.number(),mythosbuyamount:y.number(),particlebuyamount:y.number(),offeringbuyamount:y.number(),tesseractbuyamount:y.number().default(()=>M.tesseractbuyamount),shoptoggles:y.record(y.string(),y.boolean()),tabnumber:y.number(),subtabNumber:y.number().default(()=>M.subtabNumber),codes:y.array(y.tuple([y.number(),y.boolean()])).transform(t=>new Map(t)).default(()=>Hr([...M.codes])),loaded1009:y.boolean().default(()=>M.loaded1009),loaded1009hotfix1:y.boolean().default(()=>M.loaded1009hotfix1),loaded10091:y.boolean().default(()=>M.loaded10091),loaded1010:y.boolean().default(()=>M.loaded1010),loaded10101:y.boolean().default(()=>M.loaded10101),shopUpgrades:y.record(y.string(),y.union([y.number(),y.null(),y.boolean()])).transform(t=>Object.fromEntries(Object.keys(M.shopUpgrades).map(r=>{var a;let n=(a=t[r])!=null?a:M.shopUpgrades[r];return n===null?[r,0]:[r,Number(n)]}))).default(()=>O({},M.shopUpgrades)),shopBuyMaxToggle:y.union([y.boolean(),y.string()]).default(()=>M.shopBuyMaxToggle),shopHideToggle:y.boolean().default(()=>M.shopHideToggle),shopConfirmationToggle:y.boolean().default(()=>M.shopConfirmationToggle),autoPotionTimer:y.number().default(()=>M.autoPotionTimer),autoPotionTimerObtainium:y.number().default(()=>M.autoPotionTimerObtainium),autoSacrificeToggle:y.boolean().default(()=>M.autoSacrificeToggle),autoBuyFragment:y.boolean().default(()=>M.autoBuyFragment),autoFortifyToggle:y.boolean().default(()=>M.autoFortifyToggle),autoEnhanceToggle:y.boolean().default(()=>M.autoEnhanceToggle),autoResearchToggle:y.boolean().default(()=>M.autoResearchToggle),researchBuyMaxToggle:y.boolean().default(()=>M.researchBuyMaxToggle),autoResearchMode:y.string().default(()=>M.autoResearchMode),autoResearch:y.number().default(()=>M.autoResearch),autoSacrifice:y.number().default(()=>M.autoSacrifice),sacrificeTimer:y.number().default(()=>M.sacrificeTimer),quarkstimer:y.number().default(()=>M.quarkstimer),goldenQuarksTimer:y.number().default(()=>M.goldenQuarksTimer),antPoints:V,antUpgrades:y.union([y.number().array(),ur(y.number()).transform(t=>t.slice(1))]).default(()=>[...M.antUpgrades]),antSacrificePoints:y.union([y.number(),y.null().transform(()=>Number.MAX_VALUE)]).default(()=>M.antSacrificePoints),antSacrificeTimer:y.number().default(()=>M.antSacrificeTimer),antSacrificeTimerReal:y.number().default(()=>M.antSacrificeTimerReal),talismanLevels:y.union([y.number().array(),ur(y.number()).transform(t=>t.slice(1))]).default(()=>[...M.talismanLevels]),talismanRarity:y.union([y.number().array(),ur(y.number()).transform(t=>t.slice(1))]).default(()=>[...M.talismanRarity]),talismanOne:ur(y.number()).default(()=>M.talismanOne),talismanTwo:ur(y.number()).default(()=>M.talismanTwo),talismanThree:ur(y.number()).default(()=>M.talismanThree),talismanFour:ur(y.number()).default(()=>M.talismanFour),talismanFive:ur(y.number()).default(()=>M.talismanFive),talismanSix:ur(y.number()).default(()=>M.talismanSix),talismanSeven:ur(y.number()).default(()=>M.talismanSeven),talismanShards:y.number().default(()=>M.talismanShards),commonFragments:y.number().default(()=>M.commonFragments),uncommonFragments:y.number().default(()=>M.uncommonFragments),rareFragments:y.number().default(()=>M.rareFragments),epicFragments:y.number().default(()=>M.epicFragments),legendaryFragments:y.number().default(()=>M.legendaryFragments),mythicalFragments:y.number().default(()=>M.mythicalFragments),buyTalismanShardPercent:y.number().default(()=>M.buyTalismanShardPercent),autoAntSacrifice:y.boolean().default(()=>M.autoAntSacrifice),autoAntSacTimer:y.number().default(()=>M.autoAntSacTimer),autoAntSacrificeMode:y.number().default(()=>M.autoAntSacrificeMode),antMax:y.boolean().default(()=>M.antMax),ascensionCount:y.number().default(()=>M.ascensionCount),ascensionCounter:y.number().default(()=>M.ascensionCounter),ascensionCounterReal:y.number().default(()=>M.ascensionCounterReal),ascensionCounterRealReal:y.number().default(()=>M.ascensionCounterRealReal),cubeUpgrades:ur(y.number()).transform(t=>Vn(t,"cubeUpgrades")).default(()=>[...M.cubeUpgrades]),cubeUpgradesBuyMaxToggle:y.boolean().default(()=>M.cubeUpgradesBuyMaxToggle),autoCubeUpgradesToggle:y.boolean().default(()=>M.autoCubeUpgradesToggle),autoPlatonicUpgradesToggle:y.boolean().default(()=>M.autoPlatonicUpgradesToggle),platonicUpgrades:y.number().array().transform(t=>Vn(t,"platonicUpgrades")).default(()=>[...M.platonicUpgrades]),wowCubes:y.number().default(()=>Number(M.wowCubes)).transform(t=>new nr(t)),wowTesseracts:y.number().default(()=>Number(M.wowTesseracts)).transform(t=>new la(t)),wowHypercubes:y.number().default(()=>Number(M.wowHypercubes)).transform(t=>new ca(t)),wowPlatonicCubes:y.number().default(()=>Number(M.wowPlatonicCubes)).transform(t=>new ua(t)),saveOfferingToggle:y.boolean().default(()=>M.saveOfferingToggle),wowAbyssals:y.number().default(()=>M.wowAbyssals),wowOcteracts:y.number().default(()=>M.wowOcteracts),totalWowOcteracts:y.number().default(()=>M.totalWowOcteracts),cubeBlessings:y.record(y.string(),y.number()).default(()=>O({},M.cubeBlessings)),tesseractBlessings:y.record(y.string(),y.number()).default(()=>O({},M.tesseractBlessings)),hypercubeBlessings:y.record(y.string(),y.number()).default(()=>O({},M.hypercubeBlessings)),platonicBlessings:y.record(y.string(),y.number()).default(()=>O({},M.platonicBlessings)),hepteractCrafts:y.object({chronos:Wn("chronos"),hyperrealism:Wn("hyperrealism"),quark:Wn("quark"),challenge:Wn("challenge"),abyss:Wn("abyss"),accelerator:Wn("accelerator"),acceleratorBoost:Wn("acceleratorBoost"),multiplier:Wn("multiplier")}).transform(t=>Object.fromEntries(Object.entries(M.hepteractCrafts).map(([r,n])=>[r,Fg(O(O({},n),t[r]))]))).default(()=>M.hepteractCrafts),ascendShards:V.default(()=>Hr(M.ascendShards)),autoAscend:y.boolean().default(()=>M.autoAscend),autoAscendMode:y.string().default(()=>M.autoAscendMode),autoAscendThreshold:y.number().default(()=>M.autoAscendThreshold),autoOpenCubes:y.boolean().default(()=>M.autoOpenCubes),openCubes:y.number().default(()=>M.openCubes),autoOpenTesseracts:y.boolean().default(()=>M.autoOpenTesseracts),openTesseracts:y.number().default(()=>M.openTesseracts),autoOpenHypercubes:y.boolean().default(()=>M.autoOpenHypercubes),openHypercubes:y.number().default(()=>M.openHypercubes),autoOpenPlatonicsCubes:y.boolean().default(()=>M.autoOpenPlatonicsCubes),openPlatonicsCubes:y.number().default(()=>M.openPlatonicsCubes),roombaResearchIndex:y.number().default(()=>M.roombaResearchIndex),ascStatToggles:y.record(Zi,y.boolean()).default(()=>O({},M.ascStatToggles)),prototypeCorruptions:y.number().array().default(()=>[...M.prototypeCorruptions]),usedCorruptions:y.number().array().transform(t=>Vn(t,"usedCorruptions")).default(()=>[...M.usedCorruptions]),corruptionLoadouts:y.record(Zi,y.number().array()).default(()=>Hr(M.corruptionLoadouts)),corruptionLoadoutNames:y.string().array().default(()=>M.corruptionLoadoutNames.slice()).default(()=>[...M.corruptionLoadoutNames]),corruptionShowStats:y.boolean().default(()=>M.corruptionShowStats),constantUpgrades:ur(y.number()).default(()=>[...M.constantUpgrades]),history:y.object({ants:y.any().array(),ascend:y.any().array().default(()=>[...M.history.ascend]),reset:y.any().array().default(()=>[...M.history.reset]),singularity:y.any().array().default(()=>[...M.history.singularity])}).default(()=>Hr(M.history)),historyShowPerSecond:y.boolean().default(()=>M.historyShowPerSecond),autoChallengeRunning:y.boolean().default(()=>M.autoChallengeRunning),autoChallengeIndex:y.number().default(()=>M.autoChallengeIndex),autoChallengeToggles:y.boolean().array().default(()=>[...M.autoChallengeToggles]),autoChallengeStartExponent:y.number().default(()=>M.autoChallengeStartExponent),autoChallengeTimer:y.record(y.string(),y.number()).default(()=>O({},M.autoChallengeTimer)),runeBlessingLevels:y.number().array().default(()=>[...M.runeBlessingLevels]),runeSpiritLevels:y.number().array().default(()=>[...M.runeSpiritLevels]),runeBlessingBuyAmount:y.number().default(()=>M.runeBlessingBuyAmount),runeSpiritBuyAmount:y.number().default(()=>M.runeSpiritBuyAmount),autoTesseracts:y.boolean().array().default(()=>[...M.autoTesseracts]),saveString:y.string().default(()=>M.saveString),exporttest:y.union([y.string(),y.boolean()]).transform(t=>typeof t=="string"?t==="YES!":t),dayCheck:y.string().datetime().nullable().default(()=>M.dayCheck).transform(t=>t===null?t:new Date(t)),dayTimer:y.number().default(()=>M.dayTimer),cubeOpenedDaily:y.number().default(()=>M.cubeOpenedDaily),cubeQuarkDaily:y.number().default(()=>M.cubeQuarkDaily),tesseractOpenedDaily:y.number().default(()=>M.tesseractOpenedDaily),tesseractQuarkDaily:y.number().default(()=>M.tesseractQuarkDaily),hypercubeOpenedDaily:y.number().default(()=>M.hypercubeOpenedDaily),hypercubeQuarkDaily:y.number().default(()=>M.hypercubeQuarkDaily),platonicCubeOpenedDaily:y.number().default(()=>M.platonicCubeOpenedDaily),platonicCubeQuarkDaily:y.number().default(()=>M.platonicCubeQuarkDaily),overfluxOrbs:y.number().default(()=>M.overfluxOrbs),overfluxOrbsAutoBuy:y.boolean().default(()=>M.overfluxOrbsAutoBuy),overfluxPowder:y.number().default(()=>M.overfluxPowder),dailyPowderResetUses:y.number().default(()=>M.dailyPowderResetUses),autoWarpCheck:y.boolean().default(()=>M.autoWarpCheck),loadedOct4Hotfix:y.boolean().default(()=>M.loadedOct4Hotfix),loadedNov13Vers:y.boolean().default(()=>M.loadedNov13Vers),loadedDec16Vers:y.boolean().default(()=>M.loadedDec16Vers),loadedV253:y.boolean().default(()=>M.loadedV253),loadedV255:y.boolean().default(()=>M.loadedV255),loadedV297Hotfix1:y.boolean().default(()=>M.loadedV297Hotfix1),loadedV2927Hotfix1:y.boolean().default(()=>M.loadedV2927Hotfix1),loadedV2930Hotfix1:y.boolean().default(()=>M.loadedV2930Hotfix1),loadedV2931Hotfix1:y.boolean().default(()=>M.loadedV2931Hotfix1),loadedV21003Hotfix1:y.boolean().default(()=>M.loadedV21003Hotfix1),loadedV21007Hotfix1:y.boolean().default(()=>M.loadedV21007Hotfix1),version:y.string().default(()=>M.version),rngCode:y.number().default(()=>M.rngCode),promoCodeTiming:y.record(y.string(),y.number()).default(()=>({time:Date.now()-60*1e3*15})),singularityCount:y.number().default(()=>M.singularityCount),highestSingularityCount:y.number().default(()=>M.highestSingularityCount),singularityCounter:y.number().default(()=>M.singularityCount),goldenQuarks:y.number().default(()=>M.goldenQuarks),quarksThisSingularity:y.number().nullable().default(()=>M.quarksThisSingularity),totalQuarksEver:y.number().default(()=>M.totalQuarksEver),hotkeys:y.record(Zi,y.string().array()).default(()=>M.hotkeys),theme:y.string().default(()=>M.theme),iconSet:y.number().default(()=>M.iconSet),notation:y.string().default(()=>M.notation),singularityUpgrades:y.record(y.string(),yu("goldenQuarksInvested")).transform(t=>Object.fromEntries(Object.keys(G).map(r=>{var c;let{level:n,goldenQuarksInvested:a,toggleBuy:s,freeLevels:l}=(c=t[r])!=null?c:G[r];return[r,new j({maxLevel:G[r].maxLevel,costPerLevel:G[r].costPerLevel,level:n,goldenQuarksInvested:a,toggleBuy:s,freeLevels:l,minimumSingularity:G[r].minimumSingularity,effect:G[r].effect,canExceedCap:G[r].canExceedCap,specialCostForm:G[r].specialCostForm,qualityOfLife:G[r].qualityOfLife,cacheUpdates:G[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.singularityUpgrades))),octeractUpgrades:y.record(y.string(),yu("octeractsInvested")).transform(t=>Object.fromEntries(Object.keys(ce).map(r=>{var c;let{level:n,octeractsInvested:a,toggleBuy:s,freeLevels:l}=(c=t[r])!=null?c:ce[r];return[r,new he({maxLevel:ce[r].maxLevel,costPerLevel:ce[r].costPerLevel,level:n,octeractsInvested:a,toggleBuy:s,effect:ce[r].effect,costFormula:ce[r].costFormula,freeLevels:l,qualityOfLife:ce[r].qualityOfLife,cacheUpdates:ce[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.octeractUpgrades))),dailyCodeUsed:y.boolean().default(()=>M.dailyCodeUsed),hepteractAutoCraftPercentage:y.number().default(()=>M.hepteractAutoCraftPercentage),octeractTimer:y.number().default(()=>M.octeractTimer),insideSingularityChallenge:y.boolean().default(()=>M.insideSingularityChallenge),singularityChallenges:y.record(y.string(),y.object({completions:y.number(),highestSingularityCompleted:y.number(),enabled:y.boolean()})).transform(t=>Object.fromEntries(Object.keys(M.singularityChallenges).map(r=>{var l;let{completions:n,highestSingularityCompleted:a,enabled:s}=(l=t[r])!=null?l:M.singularityChallenges[r];return[r,new cr({baseReq:nt[r].baseReq,completions:n,maxCompletions:nt[r].maxCompletions,unlockSingularity:nt[r].unlockSingularity,HTMLTag:nt[r].HTMLTag,highestSingularityCompleted:a,enabled:s,resetTime:nt[r].resetTime,singularityRequirement:nt[r].singularityRequirement,scalingrewardcount:nt[r].scalingrewardcount,uniquerewardcount:nt[r].uniquerewardcount,effect:nt[r].effect,cacheUpdates:nt[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.singularityChallenges))),ambrosia:y.number().default(()=>M.ambrosia),lifetimeAmbrosia:y.number().default(()=>M.lifetimeAmbrosia),ambrosiaRNG:y.number().default(()=>M.ambrosiaRNG),blueberryTime:y.number().default(()=>M.blueberryTime),visitedAmbrosiaSubtab:y.boolean().default(()=>M.visitedAmbrosiaSubtab),spentBlueberries:y.number().default(()=>M.spentBlueberries),blueberryUpgrades:y.record(y.string(),yu("blueberriesInvested","ambrosiaInvested")).transform(t=>Object.fromEntries(Object.keys(M.blueberryUpgrades).map(r=>{var p;let{level:n,ambrosiaInvested:a,blueberriesInvested:s,toggleBuy:l,freeLevels:c}=(p=t[r])!=null?p:M.blueberryUpgrades[r];return[r,new Ye({maxLevel:De[r].maxLevel,costPerLevel:De[r].costPerLevel,level:n,ambrosiaInvested:a,blueberriesInvested:s,toggleBuy:l,blueberryCost:De[r].blueberryCost,rewards:De[r].rewards,costFormula:De[r].costFormula,freeLevels:c,prerequisites:De[r].prerequisites,cacheUpdates:De[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.blueberryUpgrades))),blueberryLoadouts:y.record(Zi,y.any()).default(()=>M.blueberryLoadouts),blueberryLoadoutMode:y.string().default(()=>M.blueberryLoadoutMode),ultimateProgress:y.number().default(()=>M.ultimateProgress),ultimatePixels:y.number().default(()=>M.ultimatePixels),cubeUpgradeRedBarFilled:y.number().default(()=>M.cubeUpgradeRedBarFilled),singChallengeTimer:y.number().default(()=>M.singChallengeTimer),caches:y.record(y.string(),y.any()).transform(()=>(Object.values(M.caches).map(t=>t.reset()),M.caches)).default(()=>(Object.values(M.caches).map(t=>t.reset()),M.caches)),lastExportedSave:y.number().default(()=>M.lastExportedSave),seed:y.number().array().default(()=>M.seed).transform(t=>Vn(t,"seed")).refine(t=>t.every(r=>r>Date.parse("2020-01-01T00:00:00Z")&&rArray.from(t)),worlds:y.any().transform(t=>Number(t)),wowCubes:y.any().transform(t=>Number(t)),wowTesseracts:y.any().transform(t=>Number(t)),wowHypercubes:y.any().transform(t=>Number(t)),wowPlatonicCubes:y.any().transform(t=>Number(t)),singularityUpgrades:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{level:n.level,goldenQuarksInvested:n.goldenQuarksInvested,toggleBuy:n.toggleBuy,freeLevels:n.freeLevels}]))),octeractUpgrades:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{level:n.level,octeractsInvested:n.octeractsInvested,toggleBuy:n.toggleBuy,freeLevels:n.freeLevels}]))),singularityChallenges:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{completions:n.completions,highestSingularityCompleted:n.highestSingularityCompleted,enabled:n.enabled}]))),blueberryUpgrades:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{level:n.level,ambrosiaInvested:n.ambrosiaInvested,blueberriesInvested:n.blueberriesInvested,toggleBuy:n.toggleBuy,freeLevels:n.freeLevels}]))),dayCheck:y.any().transform(t=>{var r;return(r=t==null?void 0:t.toISOString())!=null?r:null})});var ge={offeringPotion:{price:100,priceIncrease:0,maxLevel:999999999,type:"consume",refundable:!1,refundMinimumLevel:0,tier:"Reincarnation"},obtainiumPotion:{tier:"Reincarnation",price:100,priceIncrease:0,maxLevel:999999999,type:"consume",refundable:!1,refundMinimumLevel:0},offeringEX:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},offeringAuto:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:1},obtainiumEX:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},obtainiumAuto:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:1},instantChallenge:{tier:"Reincarnation",price:300,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},antSpeed:{tier:"Reincarnation",price:200,priceIncrease:25,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},cashGrab:{tier:"Reincarnation",price:100,priceIncrease:40,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},shopTalisman:{tier:"Reincarnation",price:1500,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPass:{tier:"Ascension",price:500,priceIncrease:75,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},challengeExtension:{tier:"Ascension",price:500,priceIncrease:250,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},challengeTome:{tier:"Ascension",price:500,priceIncrease:250,maxLevel:15,type:"upgrade",refundable:!1,refundMinimumLevel:0},cubeToQuark:{tier:"Ascension",price:2e3,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},tesseractToQuark:{tier:"Ascension",price:3500,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},hypercubeToQuark:{tier:"Ascension",price:5e3,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPass2:{tier:"Ascension",price:2e3,priceIncrease:200,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},seasonPass3:{tier:"Ascension",price:5e3,priceIncrease:500,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},chronometer:{tier:"Ascension",price:1600,priceIncrease:400,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},infiniteAscent:{tier:"Ascension",price:25e3,priceIncrease:9999999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator:{tier:"Reincarnation",price:500,priceIncrease:300,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:1},calculator2:{tier:"Ascension",price:2500,priceIncrease:800,maxLevel:12,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator3:{tier:"Ascension",price:7500,priceIncrease:1500,maxLevel:10,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator4:{tier:"Singularity",price:1e7,priceIncrease:1e6,maxLevel:10,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator5:{tier:"SingularityVol2",price:1e8,priceIncrease:1e8,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator6:{tier:"SingularityVol3",price:1e11,priceIncrease:2e10,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},constantEX:{tier:"Ascension",price:1e5,priceIncrease:899999,maxLevel:2,type:"upgrade",refundable:!1,refundMinimumLevel:0},powderEX:{tier:"Ascension",price:1e3,priceIncrease:750,maxLevel:50,type:"upgrade",refundable:!1,refundMinimumLevel:0},chronometer2:{tier:"Ascension",price:5e3,priceIncrease:1500,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},chronometer3:{tier:"Singularity",price:250,priceIncrease:250,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPassY:{tier:"Ascension",price:1e4,priceIncrease:1500,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},seasonPassZ:{tier:"Singularity",price:250,priceIncrease:250,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},challengeTome2:{tier:"Singularity",price:1e6,priceIncrease:1e6,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},instantChallenge2:{tier:"Singularity",price:2e7,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},cubeToQuarkAll:{tier:"SingularityVol2",price:2222222,priceIncrease:0,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},cashGrab2:{tier:"SingularityVol2",price:5e3,priceIncrease:5e3,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},chronometerZ:{tier:"SingularityVol2",price:12500,priceIncrease:12500,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},offeringEX2:{tier:"SingularityVol2",price:1e4,priceIncrease:1e4,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},obtainiumEX2:{tier:"SingularityVol2",price:1e4,priceIncrease:1e4,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},powderAuto:{tier:"SingularityVol2",price:5e6,priceIncrease:0,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPassLost:{tier:"SingularityVol2",price:1e6,priceIncrease:25e3,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},challenge15Auto:{tier:"SingularityVol3",price:5e11,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},extraWarp:{tier:"SingularityVol3",price:125e9,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},autoWarp:{tier:"SingularityVol3",price:5e11,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept:{tier:"Ascension",price:2e5-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept2:{tier:"Singularity",price:2e7-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept3:{tier:"SingularityVol2",price:2e9-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept4:{tier:"SingularityVol3",price:2e11-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily:{tier:"Ascension",price:5e3,priceIncrease:2500,maxLevel:20,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily2:{tier:"Singularity",price:5e5,priceIncrease:5e5,maxLevel:10,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily3:{tier:"SingularityVol2",price:5e6,priceIncrease:125e5,maxLevel:15,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily4:{tier:"SingularityVol3",price:5e9,priceIncrease:5e9,maxLevel:25,type:"upgrade",refundable:!1,refundMinimumLevel:0},offeringEX3:{tier:"SingularityVol3",price:1,priceIncrease:125e10,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},obtainiumEX3:{tier:"SingularityVol3",price:1,priceIncrease:125e10,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept5:{tier:"SingularityVol4",price:1,priceIncrease:25e12,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},chronometerInfinity:{tier:"SingularityVol4",price:1,priceIncrease:25e11,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPassInfinity:{tier:"SingularityVol4",price:1,priceIncrease:375e10,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSingularityPenaltyDebuff:{tier:"Exalt1",price:1e17,priceIncrease:999e17,maxLevel:4,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuckMultiplier4:{tier:"Exalt2",price:1e20,priceIncrease:3e20,maxLevel:4,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator7:{tier:"Exalt3",price:1e20,priceIncrease:1e19,maxLevel:50,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopOcteractAmbrosiaLuck:{tier:"Exalt4",price:1e21,priceIncrease:9e21,maxLevel:2,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration1:{tier:"SingularityVol2",price:5e7,priceIncrease:5e7,maxLevel:25,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration2:{tier:"SingularityVol3",price:5e11,priceIncrease:5e11,maxLevel:30,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration3:{tier:"SingularityVol4",price:5e13,priceIncrease:5e13,maxLevel:35,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration4:{tier:"SingularityVol4",price:1e17,priceIncrease:4*1e16,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck1:{tier:"SingularityVol2",price:2e7,priceIncrease:2e7,maxLevel:40,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck2:{tier:"SingularityVol3",price:2e11,priceIncrease:2e11,maxLevel:50,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck3:{tier:"SingularityVol4",price:2e13,priceIncrease:2e13,maxLevel:60,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck4:{tier:"SingularityVol4",price:1e17,priceIncrease:4*1e16,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopCashGrabUltra:{tier:"Exalt1x30",price:1,priceIncrease:1e22,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaAccelerator:{tier:"Exalt5",price:1e21,priceIncrease:2e21,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopEXUltra:{tier:"Exalt5x20",price:5e21,priceIncrease:0,maxLevel:80,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopChronometerS:{tier:"Exalt6x15",price:5e21,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaUltra:{tier:"Exalt6x25",price:8e23,priceIncrease:2e23,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSingularitySpeedup:{tier:"Exalt7x10",price:2e22,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSingularityPotency:{tier:"Exalt7x20",price:2e23,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSadisticRune:{tier:"Exalt7x30",price:444e22,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0}},Na=t=>{if(ge[t].type==="consume"||ge[t].maxLevel===1)return ge[t].price;{let r=e.shopUpgrades[t];return ge[t].price+ge[t].priceIncrease*r}},dr=t=>{let r=o("quarkdescription"),n=o("quarkeffect"),a=o("quarkRefundable");switch(r.innerHTML=u.t(`shop.upgradeDescriptions.${t}`),ge[t].refundable?a.textContent=`This item is refundable! Will be set to level ${ge[t].refundMinimumLevel} when refunded.`:a.textContent=u.t("shop.cannotRefund"),t){case"offeringPotion":n.innerHTML=u.t("shop.upgradeEffects.offeringPotion",{amount:d(7200*e.offeringpersecond*We().mult*+e.singularityUpgrades.potionBuff.getEffect().bonus,0,!0)});break;case"obtainiumPotion":n.innerHTML=u.t("shop.upgradeEffects.obtainiumPotion",{amount:d(7200*e.maxobtainiumpersecond*We().mult*+e.singularityUpgrades.potionBuff.getEffect().bonus,0,!0)});break;case"offeringEX":n.innerHTML=u.t("shop.upgradeEffects.offeringEX",{amount:d(4*e.shopUpgrades.offeringEX,2,!0)});break;case"offeringAuto":n.innerHTML=u.t("shop.upgradeEffects.offeringAuto",{amount1:d(Math.pow(2,e.shopUpgrades.offeringAuto)),amount2:d(2*e.shopUpgrades.offeringAuto,2)});break;case"obtainiumEX":n.innerHTML=u.t("shop.upgradeEffects.obtainiumEX",{amount:d(4*e.shopUpgrades.obtainiumEX,2,!0)});break;case"obtainiumAuto":n.innerHTML=u.t("shop.upgradeEffects.obtainiumAuto",{amount:d(e.shopUpgrades.obtainiumAuto*2,2)});break;case"instantChallenge":n.innerHTML=u.t("shop.upgradeEffects.instantChallenge");break;case"antSpeed":n.innerHTML=u.t("shop.upgradeEffects.antSpeed",{amount:d(Math.pow(1.2,e.shopUpgrades.antSpeed),2)});break;case"cashGrab":n.innerHTML=u.t("shop.upgradeEffects.cashGrab",{amount:d(e.shopUpgrades.cashGrab,2)});break;case"shopTalisman":n.innerHTML=u.t("shop.upgradeEffects.shopTalisman");break;case"seasonPass":n.innerHTML=u.t("shop.upgradeEffects.seasonPass",{amount:d(2.25*e.shopUpgrades.seasonPass)});break;case"challengeExtension":n.innerHTML=u.t("shop.upgradeEffects.challengeExtension",{amount:d(2*e.shopUpgrades.challengeExtension)});break;case"challengeTome":n.innerHTML=u.t("shop.upgradeEffects.challengeTome",{amount1:d(20*e.shopUpgrades.challengeTome),amount2:d(1-(e.shopUpgrades.challengeTome+e.shopUpgrades.challengeTome2)/100,2,!0)});break;case"cubeToQuark":n.innerHTML=u.t("shop.upgradeEffects.cubeToQuark");break;case"tesseractToQuark":n.innerHTML=u.t("shop.upgradeEffects.tesseractToQuark");break;case"hypercubeToQuark":n.innerHTML=u.t("shop.upgradeEffects.hypercubeToQuark");break;case"seasonPass2":n.innerHTML=u.t("shop.upgradeEffects.seasonPass2",{amount:d(1.5*e.shopUpgrades.seasonPass2)});break;case"seasonPass3":n.innerHTML=u.t("shop.upgradeEffects.seasonPass3",{amount:d(1.5*e.shopUpgrades.seasonPass3)});break;case"chronometer":n.innerHTML=u.t("shop.upgradeEffects.chronometer",{amount:d(1.2*e.shopUpgrades.chronometer)});break;case"infiniteAscent":n.innerHTML=u.t("shop.upgradeEffects.infiniteAscent");break;case"calculator":n.innerHTML=u.t("shop.upgradeEffects.calculator",{amount1:d(14*e.shopUpgrades.calculator),bool1:e.shopUpgrades.calculator>0,bool2:e.shopUpgrades.calculator===ge.calculator.maxLevel});break;case"calculator2":n.innerHTML=u.t("shop.upgradeEffects.calculator2",{amount1:d(2*e.shopUpgrades.calculator2),amount2:d(e.shopUpgrades.calculator2===ge.calculator2.maxLevel?25:0)});break;case"calculator3":n.innerHTML=u.t("shop.upgradeEffects.calculator3",{amount1:d(10*e.shopUpgrades.calculator3),amount2:d(60*e.shopUpgrades.calculator3)});break;case"calculator4":n.innerHTML=u.t("shop.upgradeEffects.calculator4",{amount1:d(2*e.shopUpgrades.calculator4),amount2:e.shopUpgrades.calculator4===10?32:0});break;case"calculator5":n.innerHTML=u.t("shop.upgradeEffects.calculator5",{amount1:d(6*e.shopUpgrades.calculator5),amount2:Math.floor(e.shopUpgrades.calculator5/10)+(e.shopUpgrades.calculator4===ge.calculator5.maxLevel?6:0)});break;case"calculator6":n.innerHTML=u.t("shop.upgradeEffects.calculator6",{amount1:d(e.shopUpgrades.calculator6),amount2:e.shopUpgrades.calculator6===ge.calculator6.maxLevel?24:0});break;case"calculator7":n.innerHTML=u.t("shop.upgradeEffects.calculator7",{amount1:d(e.shopUpgrades.calculator7,0,!0),amount2:e.shopUpgrades.calculator7===ge.calculator7.maxLevel?48:0});break;case"constantEX":n.innerHTML=u.t("shop.upgradeEffects.constantEX",{amount:d(e.shopUpgrades.constantEX,0,!0)});break;case"powderEX":n.innerHTML=u.t("shop.upgradeEffects.powderEX",{amount:d(2*e.shopUpgrades.powderEX)});break;case"chronometer2":n.innerHTML=u.t("shop.upgradeEffects.chronometer2",{amount:d(.6*e.shopUpgrades.chronometer2,1)});break;case"chronometer3":n.innerHTML=u.t("shop.upgradeEffects.chronometer3",{amount:d(1.5*e.shopUpgrades.chronometer3,1)});break;case"seasonPassY":n.innerHTML=u.t("shop.upgradeEffects.seasonPassY",{amount:d(.75*e.shopUpgrades.seasonPassY,2)});break;case"seasonPassZ":n.innerHTML=u.t("shop.upgradeEffects.seasonPassZ",{amount:d(1*e.shopUpgrades.seasonPassZ*e.singularityCount,0,!0)});break;case"challengeTome2":n.innerHTML=u.t("shop.upgradeEffects.challengeTome2",{amount1:20*e.shopUpgrades.challengeTome2,amount2:d(1-(e.shopUpgrades.challengeTome+e.shopUpgrades.challengeTome2)/100,2,!0)});break;case"instantChallenge2":n.innerHTML=u.t("shop.upgradeEffects.instantChallenge2",{amount:d(e.shopUpgrades.instantChallenge2*e.singularityCount,0)});break;case"cashGrab2":n.innerHTML=u.t("shop.upgradeEffects.cashGrab2",{amount:d(.5*e.shopUpgrades.cashGrab2,1)});break;case"cubeToQuarkAll":n.innerHTML=u.t("shop.upgradeEffects.cubeToQuarkAll",{amount:d(.2*e.shopUpgrades.cubeToQuarkAll,2)});break;case"chronometerZ":n.innerHTML=u.t("shop.upgradeEffects.chronometerZ",{amount:d(.1*e.singularityCount*e.shopUpgrades.chronometerZ,2)});break;case"offeringEX2":n.innerHTML=u.t("shop.upgradeEffects.offeringEX2",{amount:d(1*e.singularityCount*e.shopUpgrades.offeringEX2,2)});break;case"obtainiumEX2":n.innerHTML=u.t("shop.upgradeEffects.obtainiumEX2",{amount:d(1*e.singularityCount*e.shopUpgrades.obtainiumEX2,2)});break;case"powderAuto":n.innerHTML=u.t("shop.upgradeEffects.powderAuto",{amount:d(100/(Math.max(1,e.shopUpgrades.powderAuto)*Pr().mult),2,!0)});break;case"seasonPassLost":n.innerHTML=u.t("shop.upgradeEffects.seasonPassLost",{amount:d(.1*e.shopUpgrades.seasonPassLost,2)});break;case"challenge15Auto":n.innerHTML=u.t("shop.upgradeEffects.challenge15Auto");break;case"extraWarp":n.innerHTML=u.t("shop.upgradeEffects.extraWarp",{amount:e.shopUpgrades.extraWarp});break;case"autoWarp":n.innerHTML=u.t("shop.upgradeEffects.autoWarp");break;case"improveQuarkHept":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept",{amount:2*e.shopUpgrades.improveQuarkHept});break;case"improveQuarkHept2":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept2",{amount:2*e.shopUpgrades.improveQuarkHept2});break;case"improveQuarkHept3":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept3",{amount:2*e.shopUpgrades.improveQuarkHept3});break;case"improveQuarkHept4":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept4",{amount:2*e.shopUpgrades.improveQuarkHept4});break;case"shopImprovedDaily":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily",{amount:d(5*e.shopUpgrades.shopImprovedDaily)});break;case"shopImprovedDaily2":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily2",{amount1:e.shopUpgrades.shopImprovedDaily2,amount2:e.shopUpgrades.shopImprovedDaily2*20});break;case"shopImprovedDaily3":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily3",{amount1:e.shopUpgrades.shopImprovedDaily3,amount2:e.shopUpgrades.shopImprovedDaily3*15});break;case"shopImprovedDaily4":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily4",{amount1:e.shopUpgrades.shopImprovedDaily4,amount2:e.shopUpgrades.shopImprovedDaily4*100});break;case"offeringEX3":n.innerHTML=u.t("shop.upgradeEffects.offeringEX3",{amount:d(100*(Math.pow(1.02,e.shopUpgrades.offeringEX3)-1),2,!0)});break;case"obtainiumEX3":n.innerHTML=u.t("shop.upgradeEffects.obtainiumEX3",{amount:d(100*(Math.pow(1.02,e.shopUpgrades.obtainiumEX3)-1),2,!0)});break;case"improveQuarkHept5":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept5",{amount:d(e.shopUpgrades.improveQuarkHept5/25,2,!0)});break;case"seasonPassInfinity":n.innerHTML=u.t("shop.upgradeEffects.seasonPassInfinity",{amount:d(100*(Math.pow(1.02,e.shopUpgrades.seasonPassInfinity)-1),2,!0)});break;case"chronometerInfinity":n.innerHTML=u.t("shop.upgradeEffects.chronometerInfinity",{amount:d(100*(Math.pow(1.01,e.shopUpgrades.chronometerInfinity)-1),2,!0)});break;case"shopSingularityPenaltyDebuff":n.innerHTML=u.t("shop.upgradeEffects.shopSingularityPenaltyDebuff",{amount1:d(e.singularityCount),amount2:d(e.singularityCount-e.shopUpgrades.shopSingularityPenaltyDebuff)});break;case"shopAmbrosiaLuckMultiplier4":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuckMultiplier4",{amount:d(e.shopUpgrades.shopAmbrosiaLuckMultiplier4)});break;case"shopOcteractAmbrosiaLuck":n.innerHTML=u.t("shop.upgradeEffects.shopOcteractAmbrosiaLuck",{amount:d(e.shopUpgrades.shopOcteractAmbrosiaLuck*(1+Math.floor(Math.log10(e.totalWowOcteracts+1))))});break;case"shopAmbrosiaGeneration1":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration1",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration1)});break;case"shopAmbrosiaGeneration2":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration2",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration2)});break;case"shopAmbrosiaGeneration3":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration3",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration3)});break;case"shopAmbrosiaGeneration4":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration4",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration4/10,1,!0)});break;case"shopAmbrosiaLuck1":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck1",{amount:d(2*e.shopUpgrades.shopAmbrosiaLuck1)});break;case"shopAmbrosiaLuck2":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck2",{amount:d(2*e.shopUpgrades.shopAmbrosiaLuck2)});break;case"shopAmbrosiaLuck3":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck3",{amount:d(2*e.shopUpgrades.shopAmbrosiaLuck3)});break;case"shopAmbrosiaLuck4":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck4",{amount:d(6*e.shopUpgrades.shopAmbrosiaLuck4/10,1,!0)});break;case"shopCashGrabUltra":n.innerHTML=u.t("shop.upgradeEffects.shopCashGrabUltra",{amount:d(100*(Co()-1),2,!0),amount2:d(100*(tl()-1),2,!0),amount3:d(100*(xo()-1),2,!0)});break;case"shopAmbrosiaAccelerator":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaAccelerator",{amount:d(.2*e.shopUpgrades.shopAmbrosiaAccelerator,1,!0),amount2:d(e.shopUpgrades.shopAmbrosiaAccelerator*.2*i.ambrosiaCurrStats.ambrosiaGenerationSpeed,0,!0)});break;case"shopEXUltra":{let s=125e3*e.shopUpgrades.shopEXUltra;n.innerHTML=u.t("shop.upgradeEffects.shopEXUltra",{amount:d(.1*Math.floor(Math.min(s,e.lifetimeAmbrosia)/1e3),1,!0)})}break;case"shopChronometerS":{let s=e.singularityCount,l=e.shopUpgrades.shopChronometerS>0;n.innerHTML=u.t("shop.upgradeEffects.shopChronometerS",{amount:d(Math.max(0,100*(Math.pow(1.01,(s-200)*+l)-1)),2,!0)})}break;case"shopAmbrosiaUltra":{let s=Cu();n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaUltra",{amount:d(e.shopUpgrades.shopAmbrosiaUltra*s,0,!0)})}break;case"shopSingularitySpeedup":{let s=e.shopUpgrades.shopSingularitySpeedup>0;n.innerHTML=u.t("shop.upgradeEffects.shopSingularitySpeedup",{amount:s?50:1});break}case"shopSingularityPotency":{let s=e.shopUpgrades.shopSingularityPotency>0;n.innerHTML=u.t("shop.upgradeEffects.shopSingularityPotency",{amount:s?3.66:1})}break;case"shopSadisticRune":n.innerHTML=u.t("shop.upgradeEffects.shopSadisticRune")}},Ia=t=>({offeringPotion:"Offering Potion",obtainiumPotion:"Obtainium Potion",offeringEX:"Offering EX",offeringAuto:"Offering Auto",obtainiumEX:"Obtainium EX",obtainiumAuto:"Obtainium Auto",instantChallenge:"Instant Challenge Completions",antSpeed:"Ant Speed",cashGrab:"Cash Grab",shopTalisman:"the Plastic talisman",seasonPass:"Season Pass",challengeExtension:"Reincarnation Challenge EX",challengeTome:"Challenge 10 Requirement Reduce",cubeToQuark:"Cube Quarks +50%",tesseractToQuark:"Tesseract Quarks +50%",hypercubeToQuark:"Hypercube Quarks +50%",seasonPass2:"Season Pass 2",seasonPass3:"Season Pass 3",chronometer:"Chronometer 1",infiniteAscent:"Infinite Ascent",calculator:"PL-AT calculator",calculator2:"PL-AT X calculator",calculator3:"PL-AT \u03A9 calculator",calculator4:"PL-AT \u03B4 calculator",calculator5:"PL-AT \u0393 calculator",calculator6:"QUAAA-T calculator",calculator7:"PL-AT \u03A9\u03A9 calculator",constantEX:"Constant EX",powderEX:"Powder EX",chronometer2:"Chronometer 2",chronometer3:"Chronometer 3",seasonPassY:"Season Pass Y",seasonPassZ:"Season Pass Z",challengeTome2:"Challenge 10 Requirement Reduction 2",instantChallenge2:"Instant Challenge Completions 2",cubeToQuarkAll:"Quark Gain Cube Improvement 2",cashGrab2:"Cash Grab 2",chronometerZ:"Chronometer Z",obtainiumEX2:"Obtainium EX 2",offeringEX2:"Offering EX 2",powderAuto:"Automated Powder",seasonPassLost:"Season Pass LOST",challenge15Auto:"Challenge 15 Automation",extraWarp:"Extra Warp",autoWarp:"a quack powered Warps?",improveQuarkHept:"Quark Hepteract 1",improveQuarkHept2:"Quark Hepteract 2",improveQuarkHept3:"Quark Hepteract 3",improveQuarkHept4:"Quack Hepteract 4",shopImprovedDaily:"Improved Daily Code 1",shopImprovedDaily2:"Improved Daily Code 2",shopImprovedDaily3:"Improved Daily Code 3",shopImprovedDaily4:"Improved Daily Code 4",offeringEX3:"The final Offering Upgrade",obtainiumEX3:"The final Obtainium Upgrade",improveQuarkHept5:"The final Quark Hepteract Improver",chronometerInfinity:"The final Chronometer",seasonPassInfinity:"The final Season pass",shopSingularityPenaltyDebuff:"A Singularity Tenderizer",shopAmbrosiaLuckMultiplier4:"The Fourth Multiplicative Ambrosia Luck Multiplier",shopOcteractAmbrosiaLuck:"Octeract-Based Ambrosia Luck Amplifier",shopAmbrosiaGeneration1:"Ambrosia Generation Speedup",shopAmbrosiaGeneration2:"Another Ambrosia Generation Speedup",shopAmbrosiaGeneration3:"A better Ambrosia Generation Speedup",shopAmbrosiaGeneration4:"A FINAL Ambrosia Generation Speedup",shopAmbrosiaLuck1:"Ambrosia Luck Increaser",shopAmbrosiaLuck2:"Another Ambrosia Luck Increaser",shopAmbrosiaLuck3:"A better Ambrosia Generation Speedup",shopAmbrosiaLuck4:"A FINAL Ambrosia Generation Speedup",shopCashGrabUltra:"It's the FINAL CASHGRAB!",shopAmbrosiaAccelerator:"An Ambrosial Accelerator!",shopEXUltra:"It's the FINAL E X!",shopChronometerS:"The FINAL Chronometer",shopAmbrosiaUltra:"The FINAL Ambrosia Exaltation... I don't flippin know!",shopSingularitySpeedup:"Singularity Timed-Perks Speedup",shopSingularityPotency:"Singularity Passives Potency",shopSadisticRune:"Sadistic Rune Unlock! Or does it?"})[t],Ji=async t=>{let r=ge[t];if(e.shopUpgrades[t]>=r.maxLevel)return e.shopConfirmationToggle?P(`You can't purchase ${Ia(t)} because you are already at the maximum ${r.type==="upgrade"?"level":"capacity"}!`):null;if(Number(e.worlds)t+8*r,scalingrewardcount:1,uniquerewardcount:5,effect:t=>({cubes:1+.5*t,goldenQuarks:1+.12*+(t>0),blueberries:+(t>0),shopUpgrade:t>=20,luckBonus:t>=30?.04:0,shopUpgrade2:t>=30}),cacheUpdates:[()=>{i.ambrosiaCurrStats={ambrosiaAdditiveLuckMult:Kr().value,ambrosiaLuck:qe().value,ambrosiaBlueberries:fa().value,ambrosiaGenerationSpeed:Qe().value}}]},oneChallengeCap:{baseReq:10,maxCompletions:25,unlockSingularity:40,HTMLTag:"oneChallengeCap",singularityRequirement:(t,r)=>t+11*r,scalingrewardcount:2,uniquerewardcount:4,effect:t=>({corrScoreIncrease:.03*t,blueberrySpeedMult:1+t/100,capIncrease:3*+(t>0),freeCorruptionLevel:t>=20,shopUpgrade:t>=20,reinCapIncrease2:7*+(t>=25),ascCapIncrease2:2*+(t>=25)})},noOcteracts:{baseReq:75,maxCompletions:15,unlockSingularity:100,HTMLTag:"noOcteracts",singularityRequirement:(t,r)=>r<10?t+13*r:t+13*9+10*(r-9),scalingrewardcount:1,uniquerewardcount:3,effect:t=>({octeractPow:t<=10?.02*t:.2+(t-10)/100,offeringBonus:t>0,obtainiumBonus:t>=10,shopUpgrade:t>=10})},limitedAscensions:{baseReq:10,maxCompletions:25,unlockSingularity:50,HTMLTag:"limitedAscensions",singularityRequirement:(t,r)=>t+10*r,scalingrewardcount:1,uniquerewardcount:4,effect:t=>({ultimateProgressBarUnlock:t>0,ascensionSpeedMult:.1*t/100,hepteractCap:t>0,exaltBonus:t>=20,shopUpgrade:t>=25})},noAmbrosiaUpgrades:{baseReq:150,maxCompletions:20,unlockSingularity:166,HTMLTag:"noAmbrosiaUpgrades",singularityRequirement:(t,r)=>t+6*r,scalingrewardcount:2,uniquerewardcount:6,effect:t=>({bonusAmbrosia:+(t>0),blueberries:Math.floor(t/10)+ +(t>0),luckBonus:t/200,additiveLuck:15*t,blueberrySpeedMult:1+t/50,shopUpgrade:t>=15,shopUpgrade2:t>=20})},limitedTime:{baseReq:203,maxCompletions:25,unlockSingularity:216,HTMLTag:"limitedTime",singularityRequirement:(t,r)=>t+3*r,scalingrewardcount:3,uniquerewardcount:3,effect:t=>({preserveQuarks:+(t>0),quarkMult:.01*t,globalSpeed:.06*t,ascensionSpeed:.06*t,tier1Upgrade:t>=15,tier2Upgrade:t>=25})},sadisticPrequel:{baseReq:135,maxCompletions:30,unlockSingularity:273,HTMLTag:"sadisticPrequel",singularityRequirement:(t,r)=>t+3*r,scalingrewardcount:2,uniquerewardcount:4,effect:t=>({extraFree:50*+(t>0),quarkMult:.03*t,freeUpgradeMult:.03*t,shopUpgrade:t>=10,shopUpgrade2:t>=20,shopUpgrade3:t>=30})}};var V=y.custom(t=>{try{return new f(t),!0}catch(r){return!1}}).transform(t=>new f(t)),ur=t=>y.tuple([y.null()]).rest(t),Vn=(t,r)=>(t.lengthy.object(O({level:y.number(),toggleBuy:y.number(),freeLevels:y.number()},t.reduce((r,n)=>(r[n]=y.number(),r),{}))),wv=y.record(y.string(),y.boolean()).transform(t=>Object.fromEntries(Object.entries(t).filter(([r,n])=>/^\d+$/.test(r)))).transform(t=>{let r=Object.entries(M.toggles);for(let n of r)Object.hasOwn(t,n[0])||(t[n[0]]=n[1]);return t}),vu=y.string().regex(/^|-?\d+(\.\d{1,2})?$/),Zi=y.string().regex(/^\d+$/),Wn=t=>y.object({AUTO:y.boolean().default(()=>M.hepteractCrafts[t].AUTO),BAL:y.number().default(()=>M.hepteractCrafts[t].BAL),BASE_CAP:y.number(),CAP:y.number().default(()=>M.hepteractCrafts[t].CAP),DISCOUNT:y.number().default(()=>M.hepteractCrafts[t].DISCOUNT),HEPTERACT_CONVERSION:y.number(),HTML_STRING:y.string().default(()=>M.hepteractCrafts[t].HTML_STRING),OTHER_CONVERSIONS:y.record(y.string(),y.number()),UNLOCKED:y.boolean().default(()=>M.hepteractCrafts[t].UNLOCKED)}),Yi=y.object({firstPlayed:y.string().datetime().optional().default(()=>new Date().toISOString()),worlds:y.number().transform(t=>new In(t)),coins:V,coinsThisPrestige:V,coinsThisTranscension:V,coinsThisReincarnation:V,coinsTotal:V,firstOwnedCoin:y.number(),firstGeneratedCoin:V,firstCostCoin:V,firstProduceCoin:y.number(),secondOwnedCoin:y.number(),secondGeneratedCoin:V,secondCostCoin:V,secondProduceCoin:y.number(),thirdOwnedCoin:y.number(),thirdGeneratedCoin:V,thirdCostCoin:V,thirdProduceCoin:y.number(),fourthOwnedCoin:y.number(),fourthGeneratedCoin:V,fourthCostCoin:V,fourthProduceCoin:y.number(),fifthOwnedCoin:y.number(),fifthGeneratedCoin:V,fifthCostCoin:V,fifthProduceCoin:y.number(),firstOwnedDiamonds:y.number(),firstGeneratedDiamonds:V,firstCostDiamonds:V,firstProduceDiamonds:y.number(),secondOwnedDiamonds:y.number(),secondGeneratedDiamonds:V,secondCostDiamonds:V,secondProduceDiamonds:y.number(),thirdOwnedDiamonds:y.number(),thirdGeneratedDiamonds:V,thirdCostDiamonds:V,thirdProduceDiamonds:y.number(),fourthOwnedDiamonds:y.number(),fourthGeneratedDiamonds:V,fourthCostDiamonds:V,fourthProduceDiamonds:y.number(),fifthOwnedDiamonds:y.number(),fifthGeneratedDiamonds:V,fifthCostDiamonds:V,fifthProduceDiamonds:y.number(),firstOwnedMythos:y.number(),firstGeneratedMythos:V,firstCostMythos:V,firstProduceMythos:y.number(),secondOwnedMythos:y.number(),secondGeneratedMythos:V,secondCostMythos:V,secondProduceMythos:y.number(),thirdOwnedMythos:y.number(),thirdGeneratedMythos:V,thirdCostMythos:V,thirdProduceMythos:y.number(),fourthOwnedMythos:y.number(),fourthGeneratedMythos:V,fourthCostMythos:V,fourthProduceMythos:y.number(),fifthOwnedMythos:y.number(),fifthGeneratedMythos:V,fifthCostMythos:V,fifthProduceMythos:y.number(),firstOwnedParticles:y.number(),firstGeneratedParticles:V,firstCostParticles:V,firstProduceParticles:y.number(),secondOwnedParticles:y.number(),secondGeneratedParticles:V,secondCostParticles:V,secondProduceParticles:y.number(),thirdOwnedParticles:y.number(),thirdGeneratedParticles:V,thirdCostParticles:V,thirdProduceParticles:y.number(),fourthOwnedParticles:y.number(),fourthGeneratedParticles:V,fourthCostParticles:V,fourthProduceParticles:y.number(),fifthOwnedParticles:y.number(),fifthGeneratedParticles:V,fifthCostParticles:V,fifthProduceParticles:y.number(),firstOwnedAnts:y.number().default(()=>M.firstOwnedAnts),firstGeneratedAnts:V,firstCostAnts:V,firstProduceAnts:y.number().default(()=>M.firstProduceAnts),secondOwnedAnts:y.number().default(()=>M.secondOwnedAnts),secondGeneratedAnts:V,secondCostAnts:V,secondProduceAnts:y.number().default(()=>M.secondProduceAnts),thirdOwnedAnts:y.number().default(()=>M.thirdOwnedAnts),thirdGeneratedAnts:V,thirdCostAnts:V,thirdProduceAnts:y.number().default(()=>M.thirdProduceAnts),fourthOwnedAnts:y.number().default(()=>M.fourthOwnedAnts),fourthGeneratedAnts:V,fourthCostAnts:V,fourthProduceAnts:y.number().default(()=>M.fourthProduceAnts),fifthOwnedAnts:y.number().default(()=>M.fifthOwnedAnts),fifthGeneratedAnts:V,fifthCostAnts:V,fifthProduceAnts:y.number().default(()=>M.fifthProduceAnts),sixthOwnedAnts:y.number().default(()=>M.sixthOwnedAnts),sixthGeneratedAnts:V,sixthCostAnts:V,sixthProduceAnts:y.number().default(()=>M.sixthProduceAnts),seventhOwnedAnts:y.number().default(()=>M.seventhOwnedAnts),seventhGeneratedAnts:V,seventhCostAnts:V,seventhProduceAnts:y.number().default(()=>M.seventhProduceAnts),eighthOwnedAnts:y.number().default(()=>M.eighthOwnedAnts),eighthGeneratedAnts:V,eighthCostAnts:V,eighthProduceAnts:y.number().default(()=>M.eighthProduceAnts),ascendBuilding1:vo.default(()=>Hr(M.ascendBuilding1)),ascendBuilding2:vo.default(()=>Hr(M.ascendBuilding2)),ascendBuilding3:vo.default(()=>Hr(M.ascendBuilding3)),ascendBuilding4:vo.default(()=>Hr(M.ascendBuilding4)),ascendBuilding5:vo.default(()=>Hr(M.ascendBuilding5)),multiplierCost:V,multiplierBought:y.number(),acceleratorCost:V,acceleratorBought:y.number(),acceleratorBoostBought:y.number(),acceleratorBoostCost:V,upgrades:y.number().array().transform(t=>(t.length{let r=Object.values(t);return Gc(r,0,M.challengecompletions.length),r})]),highestchallengecompletions:y.union([y.union([y.number(),y.null()]).array(),y.record(y.string(),y.number()).transform(t=>{let r=Object.values(t);return Gc(r,0,M.highestchallengecompletions.length),r})]),challenge15Exponent:y.number().default(()=>M.challenge15Exponent),highestChallenge15Exponent:y.number().default(()=>M.highestChallenge15Exponent),retrychallenges:y.boolean().default(()=>M.retrychallenges),currentChallenge:y.union([y.string().transform(()=>O({},M.currentChallenge)),y.object({transcension:y.number(),reincarnation:y.number(),ascension:y.number()}).default(()=>O({},M.currentChallenge))]),researchPoints:y.number(),obtainiumtimer:y.number(),obtainiumpersecond:y.number().default(()=>M.obtainiumpersecond),maxobtainiumpersecond:y.number().default(()=>M.maxobtainiumpersecond),maxobtainium:y.number().default(()=>M.maxobtainium),researches:y.number().array().transform(t=>Vn(t,"researches")),unlocks:y.record(y.string(),y.boolean()),achievements:y.number().array().transform(t=>Vn(t,"achievements")),achievementPoints:y.number(),prestigenomultiplier:y.boolean(),prestigenoaccelerator:y.boolean(),transcendnomultiplier:y.boolean(),transcendnoaccelerator:y.boolean(),reincarnatenomultiplier:y.boolean(),reincarnatenoaccelerator:y.boolean(),prestigenocoinupgrades:y.boolean(),transcendnocoinupgrades:y.boolean(),transcendnocoinorprestigeupgrades:y.boolean(),reincarnatenocoinupgrades:y.boolean(),reincarnatenocoinorprestigeupgrades:y.boolean(),reincarnatenocoinprestigeortranscendupgrades:y.boolean(),reincarnatenocoinprestigetranscendorgeneratorupgrades:y.boolean(),crystalUpgrades:y.number().array(),crystalUpgradesCost:y.number().array().default(()=>[...M.crystalUpgradesCost]),runelevels:y.number().array().transform(t=>Vn(t,"runelevels")),runeexp:y.union([y.number(),y.null().transform(()=>0)]).array().transform(t=>Vn(t,"runeexp")),runeshards:y.number(),maxofferings:y.number().default(()=>M.maxofferings),offeringpersecond:y.number().default(()=>M.offeringpersecond),prestigecounter:y.number(),transcendcounter:y.number(),reincarnationcounter:y.number(),offlinetick:y.number(),prestigeamount:y.union([y.number(),vu.transform(Number)]),transcendamount:y.union([y.number(),vu.transform(Number)]).default(()=>M.transcendamount),reincarnationamount:y.union([y.number(),vu.transform(Number)]),fastestprestige:y.number(),fastesttranscend:y.number(),fastestreincarnate:y.number(),resettoggle1:y.number().default(()=>M.resettoggle1),resettoggle2:y.number().default(()=>M.resettoggle2),resettoggle3:y.number().default(()=>M.resettoggle3),resettoggle4:y.number().default(()=>M.resettoggle4),tesseractAutoBuyerToggle:y.number().default(()=>M.tesseractAutoBuyerToggle),tesseractAutoBuyerAmount:y.number().default(()=>M.tesseractAutoBuyerAmount),coinbuyamount:y.number(),crystalbuyamount:y.number(),mythosbuyamount:y.number(),particlebuyamount:y.number(),offeringbuyamount:y.number(),tesseractbuyamount:y.number().default(()=>M.tesseractbuyamount),shoptoggles:y.record(y.string(),y.boolean()),tabnumber:y.number(),subtabNumber:y.number().default(()=>M.subtabNumber),codes:y.array(y.tuple([y.number(),y.boolean()])).transform(t=>new Map(t)).default(()=>Hr([...M.codes])),loaded1009:y.boolean().default(()=>M.loaded1009),loaded1009hotfix1:y.boolean().default(()=>M.loaded1009hotfix1),loaded10091:y.boolean().default(()=>M.loaded10091),loaded1010:y.boolean().default(()=>M.loaded1010),loaded10101:y.boolean().default(()=>M.loaded10101),shopUpgrades:y.record(y.string(),y.union([y.number(),y.null(),y.boolean()])).transform(t=>Object.fromEntries(Object.keys(M.shopUpgrades).map(r=>{var a;let n=(a=t[r])!=null?a:M.shopUpgrades[r];return n===null?[r,0]:[r,Number(n)]}))).default(()=>O({},M.shopUpgrades)),shopBuyMaxToggle:y.union([y.boolean(),y.string()]).default(()=>M.shopBuyMaxToggle),shopHideToggle:y.boolean().default(()=>M.shopHideToggle),shopConfirmationToggle:y.boolean().default(()=>M.shopConfirmationToggle),autoPotionTimer:y.number().default(()=>M.autoPotionTimer),autoPotionTimerObtainium:y.number().default(()=>M.autoPotionTimerObtainium),autoSacrificeToggle:y.boolean().default(()=>M.autoSacrificeToggle),autoBuyFragment:y.boolean().default(()=>M.autoBuyFragment),autoFortifyToggle:y.boolean().default(()=>M.autoFortifyToggle),autoEnhanceToggle:y.boolean().default(()=>M.autoEnhanceToggle),autoResearchToggle:y.boolean().default(()=>M.autoResearchToggle),researchBuyMaxToggle:y.boolean().default(()=>M.researchBuyMaxToggle),autoResearchMode:y.string().default(()=>M.autoResearchMode),autoResearch:y.number().default(()=>M.autoResearch),autoSacrifice:y.number().default(()=>M.autoSacrifice),sacrificeTimer:y.number().default(()=>M.sacrificeTimer),quarkstimer:y.number().default(()=>M.quarkstimer),goldenQuarksTimer:y.number().default(()=>M.goldenQuarksTimer),antPoints:V,antUpgrades:y.union([y.number().array(),ur(y.number()).transform(t=>t.slice(1))]).default(()=>[...M.antUpgrades]),antSacrificePoints:y.union([y.number(),y.null().transform(()=>Number.MAX_VALUE)]).default(()=>M.antSacrificePoints),antSacrificeTimer:y.number().default(()=>M.antSacrificeTimer),antSacrificeTimerReal:y.number().default(()=>M.antSacrificeTimerReal),talismanLevels:y.union([y.number().array(),ur(y.number()).transform(t=>t.slice(1))]).default(()=>[...M.talismanLevels]),talismanRarity:y.union([y.number().array(),ur(y.number()).transform(t=>t.slice(1))]).default(()=>[...M.talismanRarity]),talismanOne:ur(y.number()).default(()=>M.talismanOne),talismanTwo:ur(y.number()).default(()=>M.talismanTwo),talismanThree:ur(y.number()).default(()=>M.talismanThree),talismanFour:ur(y.number()).default(()=>M.talismanFour),talismanFive:ur(y.number()).default(()=>M.talismanFive),talismanSix:ur(y.number()).default(()=>M.talismanSix),talismanSeven:ur(y.number()).default(()=>M.talismanSeven),talismanShards:y.number().default(()=>M.talismanShards),commonFragments:y.number().default(()=>M.commonFragments),uncommonFragments:y.number().default(()=>M.uncommonFragments),rareFragments:y.number().default(()=>M.rareFragments),epicFragments:y.number().default(()=>M.epicFragments),legendaryFragments:y.number().default(()=>M.legendaryFragments),mythicalFragments:y.number().default(()=>M.mythicalFragments),buyTalismanShardPercent:y.number().default(()=>M.buyTalismanShardPercent),autoAntSacrifice:y.boolean().default(()=>M.autoAntSacrifice),autoAntSacTimer:y.number().default(()=>M.autoAntSacTimer),autoAntSacrificeMode:y.number().default(()=>M.autoAntSacrificeMode),antMax:y.boolean().default(()=>M.antMax),ascensionCount:y.number().default(()=>M.ascensionCount),ascensionCounter:y.number().default(()=>M.ascensionCounter),ascensionCounterReal:y.number().default(()=>M.ascensionCounterReal),ascensionCounterRealReal:y.number().default(()=>M.ascensionCounterRealReal),cubeUpgrades:ur(y.number()).transform(t=>Vn(t,"cubeUpgrades")).default(()=>[...M.cubeUpgrades]),cubeUpgradesBuyMaxToggle:y.boolean().default(()=>M.cubeUpgradesBuyMaxToggle),autoCubeUpgradesToggle:y.boolean().default(()=>M.autoCubeUpgradesToggle),autoPlatonicUpgradesToggle:y.boolean().default(()=>M.autoPlatonicUpgradesToggle),platonicUpgrades:y.number().array().transform(t=>Vn(t,"platonicUpgrades")).default(()=>[...M.platonicUpgrades]),wowCubes:y.number().default(()=>Number(M.wowCubes)).transform(t=>new nr(t)),wowTesseracts:y.number().default(()=>Number(M.wowTesseracts)).transform(t=>new la(t)),wowHypercubes:y.number().default(()=>Number(M.wowHypercubes)).transform(t=>new ca(t)),wowPlatonicCubes:y.number().default(()=>Number(M.wowPlatonicCubes)).transform(t=>new ua(t)),saveOfferingToggle:y.boolean().default(()=>M.saveOfferingToggle),wowAbyssals:y.number().default(()=>M.wowAbyssals),wowOcteracts:y.number().default(()=>M.wowOcteracts),totalWowOcteracts:y.number().default(()=>M.totalWowOcteracts),cubeBlessings:y.record(y.string(),y.number()).default(()=>O({},M.cubeBlessings)),tesseractBlessings:y.record(y.string(),y.number()).default(()=>O({},M.tesseractBlessings)),hypercubeBlessings:y.record(y.string(),y.number()).default(()=>O({},M.hypercubeBlessings)),platonicBlessings:y.record(y.string(),y.number()).default(()=>O({},M.platonicBlessings)),hepteractCrafts:y.object({chronos:Wn("chronos"),hyperrealism:Wn("hyperrealism"),quark:Wn("quark"),challenge:Wn("challenge"),abyss:Wn("abyss"),accelerator:Wn("accelerator"),acceleratorBoost:Wn("acceleratorBoost"),multiplier:Wn("multiplier")}).transform(t=>Object.fromEntries(Object.entries(M.hepteractCrafts).map(([r,n])=>[r,Fg(O(O({},n),t[r]))]))).default(()=>M.hepteractCrafts),ascendShards:V.default(()=>Hr(M.ascendShards)),autoAscend:y.boolean().default(()=>M.autoAscend),autoAscendMode:y.string().default(()=>M.autoAscendMode),autoAscendThreshold:y.number().default(()=>M.autoAscendThreshold),autoOpenCubes:y.boolean().default(()=>M.autoOpenCubes),openCubes:y.number().default(()=>M.openCubes),autoOpenTesseracts:y.boolean().default(()=>M.autoOpenTesseracts),openTesseracts:y.number().default(()=>M.openTesseracts),autoOpenHypercubes:y.boolean().default(()=>M.autoOpenHypercubes),openHypercubes:y.number().default(()=>M.openHypercubes),autoOpenPlatonicsCubes:y.boolean().default(()=>M.autoOpenPlatonicsCubes),openPlatonicsCubes:y.number().default(()=>M.openPlatonicsCubes),roombaResearchIndex:y.number().default(()=>M.roombaResearchIndex),ascStatToggles:y.record(Zi,y.boolean()).default(()=>O({},M.ascStatToggles)),prototypeCorruptions:y.number().array().default(()=>[...M.prototypeCorruptions]),usedCorruptions:y.number().array().transform(t=>Vn(t,"usedCorruptions")).default(()=>[...M.usedCorruptions]),corruptionLoadouts:y.record(Zi,y.number().array()).default(()=>Hr(M.corruptionLoadouts)),corruptionLoadoutNames:y.string().array().default(()=>M.corruptionLoadoutNames.slice()).default(()=>[...M.corruptionLoadoutNames]),corruptionShowStats:y.boolean().default(()=>M.corruptionShowStats),constantUpgrades:ur(y.number()).default(()=>[...M.constantUpgrades]),history:y.object({ants:y.any().array(),ascend:y.any().array().default(()=>[...M.history.ascend]),reset:y.any().array().default(()=>[...M.history.reset]),singularity:y.any().array().default(()=>[...M.history.singularity])}).default(()=>Hr(M.history)),historyShowPerSecond:y.boolean().default(()=>M.historyShowPerSecond),autoChallengeRunning:y.boolean().default(()=>M.autoChallengeRunning),autoChallengeIndex:y.number().default(()=>M.autoChallengeIndex),autoChallengeToggles:y.boolean().array().default(()=>[...M.autoChallengeToggles]),autoChallengeStartExponent:y.number().default(()=>M.autoChallengeStartExponent),autoChallengeTimer:y.record(y.string(),y.number()).default(()=>O({},M.autoChallengeTimer)),runeBlessingLevels:y.number().array().default(()=>[...M.runeBlessingLevels]),runeSpiritLevels:y.number().array().default(()=>[...M.runeSpiritLevels]),runeBlessingBuyAmount:y.number().default(()=>M.runeBlessingBuyAmount),runeSpiritBuyAmount:y.number().default(()=>M.runeSpiritBuyAmount),autoTesseracts:y.boolean().array().default(()=>[...M.autoTesseracts]),saveString:y.string().default(()=>M.saveString),exporttest:y.union([y.string(),y.boolean()]).transform(t=>typeof t=="string"?t==="YES!":t),dayCheck:y.string().datetime().nullable().default(()=>M.dayCheck).transform(t=>t===null?t:new Date(t)),dayTimer:y.number().default(()=>M.dayTimer),cubeOpenedDaily:y.number().default(()=>M.cubeOpenedDaily),cubeQuarkDaily:y.number().default(()=>M.cubeQuarkDaily),tesseractOpenedDaily:y.number().default(()=>M.tesseractOpenedDaily),tesseractQuarkDaily:y.number().default(()=>M.tesseractQuarkDaily),hypercubeOpenedDaily:y.number().default(()=>M.hypercubeOpenedDaily),hypercubeQuarkDaily:y.number().default(()=>M.hypercubeQuarkDaily),platonicCubeOpenedDaily:y.number().default(()=>M.platonicCubeOpenedDaily),platonicCubeQuarkDaily:y.number().default(()=>M.platonicCubeQuarkDaily),overfluxOrbs:y.number().default(()=>M.overfluxOrbs),overfluxOrbsAutoBuy:y.boolean().default(()=>M.overfluxOrbsAutoBuy),overfluxPowder:y.number().default(()=>M.overfluxPowder),dailyPowderResetUses:y.number().default(()=>M.dailyPowderResetUses),autoWarpCheck:y.boolean().default(()=>M.autoWarpCheck),loadedOct4Hotfix:y.boolean().default(()=>M.loadedOct4Hotfix),loadedNov13Vers:y.boolean().default(()=>M.loadedNov13Vers),loadedDec16Vers:y.boolean().default(()=>M.loadedDec16Vers),loadedV253:y.boolean().default(()=>M.loadedV253),loadedV255:y.boolean().default(()=>M.loadedV255),loadedV297Hotfix1:y.boolean().default(()=>M.loadedV297Hotfix1),loadedV2927Hotfix1:y.boolean().default(()=>M.loadedV2927Hotfix1),loadedV2930Hotfix1:y.boolean().default(()=>M.loadedV2930Hotfix1),loadedV2931Hotfix1:y.boolean().default(()=>M.loadedV2931Hotfix1),loadedV21003Hotfix1:y.boolean().default(()=>M.loadedV21003Hotfix1),loadedV21007Hotfix1:y.boolean().default(()=>M.loadedV21007Hotfix1),version:y.string().default(()=>M.version),rngCode:y.number().default(()=>M.rngCode),promoCodeTiming:y.record(y.string(),y.number()).default(()=>({time:Date.now()-60*1e3*15})),singularityCount:y.number().default(()=>M.singularityCount),highestSingularityCount:y.number().default(()=>M.highestSingularityCount),singularityCounter:y.number().default(()=>M.singularityCount),goldenQuarks:y.number().default(()=>M.goldenQuarks),quarksThisSingularity:y.number().nullable().default(()=>M.quarksThisSingularity),totalQuarksEver:y.number().default(()=>M.totalQuarksEver),hotkeys:y.record(Zi,y.string().array()).default(()=>M.hotkeys),theme:y.string().default(()=>M.theme),iconSet:y.number().default(()=>M.iconSet),notation:y.string().default(()=>M.notation),singularityUpgrades:y.record(y.string(),yu("goldenQuarksInvested")).transform(t=>Object.fromEntries(Object.keys(G).map(r=>{var c;let{level:n,goldenQuarksInvested:a,toggleBuy:s,freeLevels:l}=(c=t[r])!=null?c:G[r];return[r,new j({maxLevel:G[r].maxLevel,costPerLevel:G[r].costPerLevel,level:n,goldenQuarksInvested:a,toggleBuy:s,freeLevels:l,minimumSingularity:G[r].minimumSingularity,effect:G[r].effect,canExceedCap:G[r].canExceedCap,specialCostForm:G[r].specialCostForm,qualityOfLife:G[r].qualityOfLife,cacheUpdates:G[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.singularityUpgrades))),octeractUpgrades:y.record(y.string(),yu("octeractsInvested")).transform(t=>Object.fromEntries(Object.keys(ce).map(r=>{var c;let{level:n,octeractsInvested:a,toggleBuy:s,freeLevels:l}=(c=t[r])!=null?c:ce[r];return[r,new be({maxLevel:ce[r].maxLevel,costPerLevel:ce[r].costPerLevel,level:n,octeractsInvested:a,toggleBuy:s,effect:ce[r].effect,costFormula:ce[r].costFormula,freeLevels:l,qualityOfLife:ce[r].qualityOfLife,cacheUpdates:ce[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.octeractUpgrades))),dailyCodeUsed:y.boolean().default(()=>M.dailyCodeUsed),hepteractAutoCraftPercentage:y.number().default(()=>M.hepteractAutoCraftPercentage),octeractTimer:y.number().default(()=>M.octeractTimer),insideSingularityChallenge:y.boolean().default(()=>M.insideSingularityChallenge),singularityChallenges:y.record(y.string(),y.object({completions:y.number(),highestSingularityCompleted:y.number(),enabled:y.boolean()})).transform(t=>Object.fromEntries(Object.keys(M.singularityChallenges).map(r=>{var l;let{completions:n,highestSingularityCompleted:a,enabled:s}=(l=t[r])!=null?l:M.singularityChallenges[r];return[r,new cr({baseReq:nt[r].baseReq,completions:n,maxCompletions:nt[r].maxCompletions,unlockSingularity:nt[r].unlockSingularity,HTMLTag:nt[r].HTMLTag,highestSingularityCompleted:a,enabled:s,resetTime:nt[r].resetTime,singularityRequirement:nt[r].singularityRequirement,scalingrewardcount:nt[r].scalingrewardcount,uniquerewardcount:nt[r].uniquerewardcount,effect:nt[r].effect,cacheUpdates:nt[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.singularityChallenges))),ambrosia:y.number().default(()=>M.ambrosia),lifetimeAmbrosia:y.number().default(()=>M.lifetimeAmbrosia),ambrosiaRNG:y.number().default(()=>M.ambrosiaRNG),blueberryTime:y.number().default(()=>M.blueberryTime),visitedAmbrosiaSubtab:y.boolean().default(()=>M.visitedAmbrosiaSubtab),spentBlueberries:y.number().default(()=>M.spentBlueberries),blueberryUpgrades:y.record(y.string(),yu("blueberriesInvested","ambrosiaInvested")).transform(t=>Object.fromEntries(Object.keys(M.blueberryUpgrades).map(r=>{var p;let{level:n,ambrosiaInvested:a,blueberriesInvested:s,toggleBuy:l,freeLevels:c}=(p=t[r])!=null?p:M.blueberryUpgrades[r];return[r,new Ye({maxLevel:De[r].maxLevel,costPerLevel:De[r].costPerLevel,level:n,ambrosiaInvested:a,blueberriesInvested:s,toggleBuy:l,blueberryCost:De[r].blueberryCost,rewards:De[r].rewards,costFormula:De[r].costFormula,freeLevels:c,prerequisites:De[r].prerequisites,cacheUpdates:De[r].cacheUpdates},r)]}))).default(()=>JSON.parse(JSON.stringify(M.blueberryUpgrades))),blueberryLoadouts:y.record(Zi,y.any()).default(()=>M.blueberryLoadouts),blueberryLoadoutMode:y.string().default(()=>M.blueberryLoadoutMode),ultimateProgress:y.number().default(()=>M.ultimateProgress),ultimatePixels:y.number().default(()=>M.ultimatePixels),cubeUpgradeRedBarFilled:y.number().default(()=>M.cubeUpgradeRedBarFilled),singChallengeTimer:y.number().default(()=>M.singChallengeTimer),caches:y.record(y.string(),y.any()).transform(()=>(Object.values(M.caches).map(t=>t.reset()),M.caches)).default(()=>(Object.values(M.caches).map(t=>t.reset()),M.caches)),lastExportedSave:y.number().default(()=>M.lastExportedSave),seed:y.number().array().default(()=>M.seed).transform(t=>Vn(t,"seed")).refine(t=>t.every(r=>r>Date.parse("2020-01-01T00:00:00Z")&&rArray.from(t)),worlds:y.any().transform(t=>Number(t)),wowCubes:y.any().transform(t=>Number(t)),wowTesseracts:y.any().transform(t=>Number(t)),wowHypercubes:y.any().transform(t=>Number(t)),wowPlatonicCubes:y.any().transform(t=>Number(t)),singularityUpgrades:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{level:n.level,goldenQuarksInvested:n.goldenQuarksInvested,toggleBuy:n.toggleBuy,freeLevels:n.freeLevels}]))),octeractUpgrades:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{level:n.level,octeractsInvested:n.octeractsInvested,toggleBuy:n.toggleBuy,freeLevels:n.freeLevels}]))),singularityChallenges:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{completions:n.completions,highestSingularityCompleted:n.highestSingularityCompleted,enabled:n.enabled}]))),blueberryUpgrades:y.any().transform(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,{level:n.level,ambrosiaInvested:n.ambrosiaInvested,blueberriesInvested:n.blueberriesInvested,toggleBuy:n.toggleBuy,freeLevels:n.freeLevels}]))),dayCheck:y.any().transform(t=>{var r;return(r=t==null?void 0:t.toISOString())!=null?r:null})});var ge={offeringPotion:{price:100,priceIncrease:0,maxLevel:999999999,type:"consume",refundable:!1,refundMinimumLevel:0,tier:"Reincarnation"},obtainiumPotion:{tier:"Reincarnation",price:100,priceIncrease:0,maxLevel:999999999,type:"consume",refundable:!1,refundMinimumLevel:0},offeringEX:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},offeringAuto:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:1},obtainiumEX:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},obtainiumAuto:{tier:"Reincarnation",price:150,priceIncrease:10,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:1},instantChallenge:{tier:"Reincarnation",price:300,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},antSpeed:{tier:"Reincarnation",price:200,priceIncrease:25,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},cashGrab:{tier:"Reincarnation",price:100,priceIncrease:40,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},shopTalisman:{tier:"Reincarnation",price:1500,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPass:{tier:"Ascension",price:500,priceIncrease:75,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},challengeExtension:{tier:"Ascension",price:500,priceIncrease:250,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},challengeTome:{tier:"Ascension",price:500,priceIncrease:250,maxLevel:15,type:"upgrade",refundable:!1,refundMinimumLevel:0},cubeToQuark:{tier:"Ascension",price:2e3,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},tesseractToQuark:{tier:"Ascension",price:3500,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},hypercubeToQuark:{tier:"Ascension",price:5e3,priceIncrease:99999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPass2:{tier:"Ascension",price:2e3,priceIncrease:200,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},seasonPass3:{tier:"Ascension",price:5e3,priceIncrease:500,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},chronometer:{tier:"Ascension",price:1600,priceIncrease:400,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},infiniteAscent:{tier:"Ascension",price:25e3,priceIncrease:9999999,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator:{tier:"Reincarnation",price:500,priceIncrease:300,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:1},calculator2:{tier:"Ascension",price:2500,priceIncrease:800,maxLevel:12,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator3:{tier:"Ascension",price:7500,priceIncrease:1500,maxLevel:10,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator4:{tier:"Singularity",price:1e7,priceIncrease:1e6,maxLevel:10,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator5:{tier:"SingularityVol2",price:1e8,priceIncrease:1e8,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator6:{tier:"SingularityVol3",price:1e11,priceIncrease:2e10,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},constantEX:{tier:"Ascension",price:1e5,priceIncrease:899999,maxLevel:2,type:"upgrade",refundable:!1,refundMinimumLevel:0},powderEX:{tier:"Ascension",price:1e3,priceIncrease:750,maxLevel:50,type:"upgrade",refundable:!1,refundMinimumLevel:0},chronometer2:{tier:"Ascension",price:5e3,priceIncrease:1500,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},chronometer3:{tier:"Singularity",price:250,priceIncrease:250,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPassY:{tier:"Ascension",price:1e4,priceIncrease:1500,maxLevel:100,type:"upgrade",refundable:!0,refundMinimumLevel:0},seasonPassZ:{tier:"Singularity",price:250,priceIncrease:250,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},challengeTome2:{tier:"Singularity",price:1e6,priceIncrease:1e6,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},instantChallenge2:{tier:"Singularity",price:2e7,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},cubeToQuarkAll:{tier:"SingularityVol2",price:2222222,priceIncrease:0,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},cashGrab2:{tier:"SingularityVol2",price:5e3,priceIncrease:5e3,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},chronometerZ:{tier:"SingularityVol2",price:12500,priceIncrease:12500,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},offeringEX2:{tier:"SingularityVol2",price:1e4,priceIncrease:1e4,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},obtainiumEX2:{tier:"SingularityVol2",price:1e4,priceIncrease:1e4,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},powderAuto:{tier:"SingularityVol2",price:5e6,priceIncrease:0,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPassLost:{tier:"SingularityVol2",price:1e6,priceIncrease:25e3,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},challenge15Auto:{tier:"SingularityVol3",price:5e11,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},extraWarp:{tier:"SingularityVol3",price:125e9,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},autoWarp:{tier:"SingularityVol3",price:5e11,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept:{tier:"Ascension",price:2e5-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept2:{tier:"Singularity",price:2e7-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept3:{tier:"SingularityVol2",price:2e9-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept4:{tier:"SingularityVol3",price:2e11-1,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily:{tier:"Ascension",price:5e3,priceIncrease:2500,maxLevel:20,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily2:{tier:"Singularity",price:5e5,priceIncrease:5e5,maxLevel:10,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily3:{tier:"SingularityVol2",price:5e6,priceIncrease:125e5,maxLevel:15,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopImprovedDaily4:{tier:"SingularityVol3",price:5e9,priceIncrease:5e9,maxLevel:25,type:"upgrade",refundable:!1,refundMinimumLevel:0},offeringEX3:{tier:"SingularityVol3",price:1,priceIncrease:125e10,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},obtainiumEX3:{tier:"SingularityVol3",price:1,priceIncrease:125e10,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},improveQuarkHept5:{tier:"SingularityVol4",price:1,priceIncrease:25e12,maxLevel:100,type:"upgrade",refundable:!1,refundMinimumLevel:0},chronometerInfinity:{tier:"SingularityVol4",price:1,priceIncrease:25e11,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},seasonPassInfinity:{tier:"SingularityVol4",price:1,priceIncrease:375e10,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSingularityPenaltyDebuff:{tier:"Exalt1",price:1e17,priceIncrease:999e17,maxLevel:4,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuckMultiplier4:{tier:"Exalt2",price:1e20,priceIncrease:3e20,maxLevel:4,type:"upgrade",refundable:!1,refundMinimumLevel:0},calculator7:{tier:"Exalt3",price:1e20,priceIncrease:1e19,maxLevel:50,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopOcteractAmbrosiaLuck:{tier:"Exalt4",price:1e21,priceIncrease:9e21,maxLevel:2,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration1:{tier:"SingularityVol2",price:5e7,priceIncrease:5e7,maxLevel:25,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration2:{tier:"SingularityVol3",price:5e11,priceIncrease:5e11,maxLevel:30,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration3:{tier:"SingularityVol4",price:5e13,priceIncrease:5e13,maxLevel:35,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaGeneration4:{tier:"SingularityVol4",price:1e17,priceIncrease:4*1e16,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck1:{tier:"SingularityVol2",price:2e7,priceIncrease:2e7,maxLevel:40,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck2:{tier:"SingularityVol3",price:2e11,priceIncrease:2e11,maxLevel:50,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck3:{tier:"SingularityVol4",price:2e13,priceIncrease:2e13,maxLevel:60,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaLuck4:{tier:"SingularityVol4",price:1e17,priceIncrease:4*1e16,maxLevel:1e3,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopCashGrabUltra:{tier:"Exalt1x30",price:1,priceIncrease:1e22,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaAccelerator:{tier:"Exalt5",price:1e21,priceIncrease:2e21,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopEXUltra:{tier:"Exalt5x20",price:5e21,priceIncrease:0,maxLevel:80,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopChronometerS:{tier:"Exalt6x15",price:5e21,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopAmbrosiaUltra:{tier:"Exalt6x25",price:8e23,priceIncrease:2e23,maxLevel:5,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSingularitySpeedup:{tier:"Exalt7x10",price:2e22,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSingularityPotency:{tier:"Exalt7x20",price:2e23,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0},shopSadisticRune:{tier:"Exalt7x30",price:444e22,priceIncrease:0,maxLevel:1,type:"upgrade",refundable:!1,refundMinimumLevel:0}},Na=t=>{if(ge[t].type==="consume"||ge[t].maxLevel===1)return ge[t].price;{let r=e.shopUpgrades[t];return ge[t].price+ge[t].priceIncrease*r}},dr=t=>{let r=o("quarkdescription"),n=o("quarkeffect"),a=o("quarkRefundable");switch(r.innerHTML=u.t(`shop.upgradeDescriptions.${t}`),ge[t].refundable?a.textContent=`This item is refundable! Will be set to level ${ge[t].refundMinimumLevel} when refunded.`:a.textContent=u.t("shop.cannotRefund"),t){case"offeringPotion":n.innerHTML=u.t("shop.upgradeEffects.offeringPotion",{amount:d(7200*e.offeringpersecond*We().mult*+e.singularityUpgrades.potionBuff.getEffect().bonus,0,!0)});break;case"obtainiumPotion":n.innerHTML=u.t("shop.upgradeEffects.obtainiumPotion",{amount:d(7200*e.maxobtainiumpersecond*We().mult*+e.singularityUpgrades.potionBuff.getEffect().bonus,0,!0)});break;case"offeringEX":n.innerHTML=u.t("shop.upgradeEffects.offeringEX",{amount:d(4*e.shopUpgrades.offeringEX,2,!0)});break;case"offeringAuto":n.innerHTML=u.t("shop.upgradeEffects.offeringAuto",{amount1:d(Math.pow(2,e.shopUpgrades.offeringAuto)),amount2:d(2*e.shopUpgrades.offeringAuto,2)});break;case"obtainiumEX":n.innerHTML=u.t("shop.upgradeEffects.obtainiumEX",{amount:d(4*e.shopUpgrades.obtainiumEX,2,!0)});break;case"obtainiumAuto":n.innerHTML=u.t("shop.upgradeEffects.obtainiumAuto",{amount:d(e.shopUpgrades.obtainiumAuto*2,2)});break;case"instantChallenge":n.innerHTML=u.t("shop.upgradeEffects.instantChallenge");break;case"antSpeed":n.innerHTML=u.t("shop.upgradeEffects.antSpeed",{amount:d(Math.pow(1.2,e.shopUpgrades.antSpeed),2)});break;case"cashGrab":n.innerHTML=u.t("shop.upgradeEffects.cashGrab",{amount:d(e.shopUpgrades.cashGrab,2)});break;case"shopTalisman":n.innerHTML=u.t("shop.upgradeEffects.shopTalisman");break;case"seasonPass":n.innerHTML=u.t("shop.upgradeEffects.seasonPass",{amount:d(2.25*e.shopUpgrades.seasonPass)});break;case"challengeExtension":n.innerHTML=u.t("shop.upgradeEffects.challengeExtension",{amount:d(2*e.shopUpgrades.challengeExtension)});break;case"challengeTome":n.innerHTML=u.t("shop.upgradeEffects.challengeTome",{amount1:d(20*e.shopUpgrades.challengeTome),amount2:d(1-(e.shopUpgrades.challengeTome+e.shopUpgrades.challengeTome2)/100,2,!0)});break;case"cubeToQuark":n.innerHTML=u.t("shop.upgradeEffects.cubeToQuark");break;case"tesseractToQuark":n.innerHTML=u.t("shop.upgradeEffects.tesseractToQuark");break;case"hypercubeToQuark":n.innerHTML=u.t("shop.upgradeEffects.hypercubeToQuark");break;case"seasonPass2":n.innerHTML=u.t("shop.upgradeEffects.seasonPass2",{amount:d(1.5*e.shopUpgrades.seasonPass2)});break;case"seasonPass3":n.innerHTML=u.t("shop.upgradeEffects.seasonPass3",{amount:d(1.5*e.shopUpgrades.seasonPass3)});break;case"chronometer":n.innerHTML=u.t("shop.upgradeEffects.chronometer",{amount:d(1.2*e.shopUpgrades.chronometer)});break;case"infiniteAscent":n.innerHTML=u.t("shop.upgradeEffects.infiniteAscent");break;case"calculator":n.innerHTML=u.t("shop.upgradeEffects.calculator",{amount1:d(14*e.shopUpgrades.calculator),bool1:e.shopUpgrades.calculator>0,bool2:e.shopUpgrades.calculator===ge.calculator.maxLevel});break;case"calculator2":n.innerHTML=u.t("shop.upgradeEffects.calculator2",{amount1:d(2*e.shopUpgrades.calculator2),amount2:d(e.shopUpgrades.calculator2===ge.calculator2.maxLevel?25:0)});break;case"calculator3":n.innerHTML=u.t("shop.upgradeEffects.calculator3",{amount1:d(10*e.shopUpgrades.calculator3),amount2:d(60*e.shopUpgrades.calculator3)});break;case"calculator4":n.innerHTML=u.t("shop.upgradeEffects.calculator4",{amount1:d(2*e.shopUpgrades.calculator4),amount2:e.shopUpgrades.calculator4===10?32:0});break;case"calculator5":n.innerHTML=u.t("shop.upgradeEffects.calculator5",{amount1:d(6*e.shopUpgrades.calculator5),amount2:Math.floor(e.shopUpgrades.calculator5/10)+(e.shopUpgrades.calculator4===ge.calculator5.maxLevel?6:0)});break;case"calculator6":n.innerHTML=u.t("shop.upgradeEffects.calculator6",{amount1:d(e.shopUpgrades.calculator6),amount2:e.shopUpgrades.calculator6===ge.calculator6.maxLevel?24:0});break;case"calculator7":n.innerHTML=u.t("shop.upgradeEffects.calculator7",{amount1:d(e.shopUpgrades.calculator7,0,!0),amount2:e.shopUpgrades.calculator7===ge.calculator7.maxLevel?48:0});break;case"constantEX":n.innerHTML=u.t("shop.upgradeEffects.constantEX",{amount:d(e.shopUpgrades.constantEX,0,!0)});break;case"powderEX":n.innerHTML=u.t("shop.upgradeEffects.powderEX",{amount:d(2*e.shopUpgrades.powderEX)});break;case"chronometer2":n.innerHTML=u.t("shop.upgradeEffects.chronometer2",{amount:d(.6*e.shopUpgrades.chronometer2,1)});break;case"chronometer3":n.innerHTML=u.t("shop.upgradeEffects.chronometer3",{amount:d(1.5*e.shopUpgrades.chronometer3,1)});break;case"seasonPassY":n.innerHTML=u.t("shop.upgradeEffects.seasonPassY",{amount:d(.75*e.shopUpgrades.seasonPassY,2)});break;case"seasonPassZ":n.innerHTML=u.t("shop.upgradeEffects.seasonPassZ",{amount:d(1*e.shopUpgrades.seasonPassZ*e.singularityCount,0,!0)});break;case"challengeTome2":n.innerHTML=u.t("shop.upgradeEffects.challengeTome2",{amount1:20*e.shopUpgrades.challengeTome2,amount2:d(1-(e.shopUpgrades.challengeTome+e.shopUpgrades.challengeTome2)/100,2,!0)});break;case"instantChallenge2":n.innerHTML=u.t("shop.upgradeEffects.instantChallenge2",{amount:d(e.shopUpgrades.instantChallenge2*e.singularityCount,0)});break;case"cashGrab2":n.innerHTML=u.t("shop.upgradeEffects.cashGrab2",{amount:d(.5*e.shopUpgrades.cashGrab2,1)});break;case"cubeToQuarkAll":n.innerHTML=u.t("shop.upgradeEffects.cubeToQuarkAll",{amount:d(.2*e.shopUpgrades.cubeToQuarkAll,2)});break;case"chronometerZ":n.innerHTML=u.t("shop.upgradeEffects.chronometerZ",{amount:d(.1*e.singularityCount*e.shopUpgrades.chronometerZ,2)});break;case"offeringEX2":n.innerHTML=u.t("shop.upgradeEffects.offeringEX2",{amount:d(1*e.singularityCount*e.shopUpgrades.offeringEX2,2)});break;case"obtainiumEX2":n.innerHTML=u.t("shop.upgradeEffects.obtainiumEX2",{amount:d(1*e.singularityCount*e.shopUpgrades.obtainiumEX2,2)});break;case"powderAuto":n.innerHTML=u.t("shop.upgradeEffects.powderAuto",{amount:d(100/(Math.max(1,e.shopUpgrades.powderAuto)*Pr().mult),2,!0)});break;case"seasonPassLost":n.innerHTML=u.t("shop.upgradeEffects.seasonPassLost",{amount:d(.1*e.shopUpgrades.seasonPassLost,2)});break;case"challenge15Auto":n.innerHTML=u.t("shop.upgradeEffects.challenge15Auto");break;case"extraWarp":n.innerHTML=u.t("shop.upgradeEffects.extraWarp",{amount:e.shopUpgrades.extraWarp});break;case"autoWarp":n.innerHTML=u.t("shop.upgradeEffects.autoWarp");break;case"improveQuarkHept":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept",{amount:2*e.shopUpgrades.improveQuarkHept});break;case"improveQuarkHept2":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept2",{amount:2*e.shopUpgrades.improveQuarkHept2});break;case"improveQuarkHept3":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept3",{amount:2*e.shopUpgrades.improveQuarkHept3});break;case"improveQuarkHept4":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept4",{amount:2*e.shopUpgrades.improveQuarkHept4});break;case"shopImprovedDaily":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily",{amount:d(5*e.shopUpgrades.shopImprovedDaily)});break;case"shopImprovedDaily2":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily2",{amount1:e.shopUpgrades.shopImprovedDaily2,amount2:e.shopUpgrades.shopImprovedDaily2*20});break;case"shopImprovedDaily3":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily3",{amount1:e.shopUpgrades.shopImprovedDaily3,amount2:e.shopUpgrades.shopImprovedDaily3*15});break;case"shopImprovedDaily4":n.innerHTML=u.t("shop.upgradeEffects.shopImprovedDaily4",{amount1:e.shopUpgrades.shopImprovedDaily4,amount2:e.shopUpgrades.shopImprovedDaily4*100});break;case"offeringEX3":n.innerHTML=u.t("shop.upgradeEffects.offeringEX3",{amount:d(100*(Math.pow(1.02,e.shopUpgrades.offeringEX3)-1),2,!0)});break;case"obtainiumEX3":n.innerHTML=u.t("shop.upgradeEffects.obtainiumEX3",{amount:d(100*(Math.pow(1.02,e.shopUpgrades.obtainiumEX3)-1),2,!0)});break;case"improveQuarkHept5":n.innerHTML=u.t("shop.upgradeEffects.improveQuarkHept5",{amount:d(e.shopUpgrades.improveQuarkHept5/25,2,!0)});break;case"seasonPassInfinity":n.innerHTML=u.t("shop.upgradeEffects.seasonPassInfinity",{amount:d(100*(Math.pow(1.02,e.shopUpgrades.seasonPassInfinity)-1),2,!0)});break;case"chronometerInfinity":n.innerHTML=u.t("shop.upgradeEffects.chronometerInfinity",{amount:d(100*(Math.pow(1.01,e.shopUpgrades.chronometerInfinity)-1),2,!0)});break;case"shopSingularityPenaltyDebuff":n.innerHTML=u.t("shop.upgradeEffects.shopSingularityPenaltyDebuff",{amount1:d(e.singularityCount),amount2:d(e.singularityCount-e.shopUpgrades.shopSingularityPenaltyDebuff)});break;case"shopAmbrosiaLuckMultiplier4":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuckMultiplier4",{amount:d(e.shopUpgrades.shopAmbrosiaLuckMultiplier4)});break;case"shopOcteractAmbrosiaLuck":n.innerHTML=u.t("shop.upgradeEffects.shopOcteractAmbrosiaLuck",{amount:d(e.shopUpgrades.shopOcteractAmbrosiaLuck*(1+Math.floor(Math.log10(e.totalWowOcteracts+1))))});break;case"shopAmbrosiaGeneration1":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration1",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration1)});break;case"shopAmbrosiaGeneration2":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration2",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration2)});break;case"shopAmbrosiaGeneration3":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration3",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration3)});break;case"shopAmbrosiaGeneration4":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaGeneration4",{amount:d(e.shopUpgrades.shopAmbrosiaGeneration4/10,1,!0)});break;case"shopAmbrosiaLuck1":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck1",{amount:d(2*e.shopUpgrades.shopAmbrosiaLuck1)});break;case"shopAmbrosiaLuck2":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck2",{amount:d(2*e.shopUpgrades.shopAmbrosiaLuck2)});break;case"shopAmbrosiaLuck3":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck3",{amount:d(2*e.shopUpgrades.shopAmbrosiaLuck3)});break;case"shopAmbrosiaLuck4":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaLuck4",{amount:d(6*e.shopUpgrades.shopAmbrosiaLuck4/10,1,!0)});break;case"shopCashGrabUltra":n.innerHTML=u.t("shop.upgradeEffects.shopCashGrabUltra",{amount:d(100*(Co()-1),2,!0),amount2:d(100*(tl()-1),2,!0),amount3:d(100*(xo()-1),2,!0)});break;case"shopAmbrosiaAccelerator":n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaAccelerator",{amount:d(.2*e.shopUpgrades.shopAmbrosiaAccelerator,1,!0),amount2:d(e.shopUpgrades.shopAmbrosiaAccelerator*.2*i.ambrosiaCurrStats.ambrosiaGenerationSpeed,0,!0)});break;case"shopEXUltra":{let s=125e3*e.shopUpgrades.shopEXUltra;n.innerHTML=u.t("shop.upgradeEffects.shopEXUltra",{amount:d(.1*Math.floor(Math.min(s,e.lifetimeAmbrosia)/1e3),1,!0)})}break;case"shopChronometerS":{let s=e.singularityCount,l=e.shopUpgrades.shopChronometerS>0;n.innerHTML=u.t("shop.upgradeEffects.shopChronometerS",{amount:d(Math.max(0,100*(Math.pow(1.01,(s-200)*+l)-1)),2,!0)})}break;case"shopAmbrosiaUltra":{let s=Cu();n.innerHTML=u.t("shop.upgradeEffects.shopAmbrosiaUltra",{amount:d(e.shopUpgrades.shopAmbrosiaUltra*s,0,!0)})}break;case"shopSingularitySpeedup":{let s=e.shopUpgrades.shopSingularitySpeedup>0;n.innerHTML=u.t("shop.upgradeEffects.shopSingularitySpeedup",{amount:s?50:1});break}case"shopSingularityPotency":{let s=e.shopUpgrades.shopSingularityPotency>0;n.innerHTML=u.t("shop.upgradeEffects.shopSingularityPotency",{amount:s?3.66:1})}break;case"shopSadisticRune":n.innerHTML=u.t("shop.upgradeEffects.shopSadisticRune")}},Ia=t=>({offeringPotion:"Offering Potion",obtainiumPotion:"Obtainium Potion",offeringEX:"Offering EX",offeringAuto:"Offering Auto",obtainiumEX:"Obtainium EX",obtainiumAuto:"Obtainium Auto",instantChallenge:"Instant Challenge Completions",antSpeed:"Ant Speed",cashGrab:"Cash Grab",shopTalisman:"the Plastic talisman",seasonPass:"Season Pass",challengeExtension:"Reincarnation Challenge EX",challengeTome:"Challenge 10 Requirement Reduce",cubeToQuark:"Cube Quarks +50%",tesseractToQuark:"Tesseract Quarks +50%",hypercubeToQuark:"Hypercube Quarks +50%",seasonPass2:"Season Pass 2",seasonPass3:"Season Pass 3",chronometer:"Chronometer 1",infiniteAscent:"Infinite Ascent",calculator:"PL-AT calculator",calculator2:"PL-AT X calculator",calculator3:"PL-AT \u03A9 calculator",calculator4:"PL-AT \u03B4 calculator",calculator5:"PL-AT \u0393 calculator",calculator6:"QUAAA-T calculator",calculator7:"PL-AT \u03A9\u03A9 calculator",constantEX:"Constant EX",powderEX:"Powder EX",chronometer2:"Chronometer 2",chronometer3:"Chronometer 3",seasonPassY:"Season Pass Y",seasonPassZ:"Season Pass Z",challengeTome2:"Challenge 10 Requirement Reduction 2",instantChallenge2:"Instant Challenge Completions 2",cubeToQuarkAll:"Quark Gain Cube Improvement 2",cashGrab2:"Cash Grab 2",chronometerZ:"Chronometer Z",obtainiumEX2:"Obtainium EX 2",offeringEX2:"Offering EX 2",powderAuto:"Automated Powder",seasonPassLost:"Season Pass LOST",challenge15Auto:"Challenge 15 Automation",extraWarp:"Extra Warp",autoWarp:"a quack powered Warps?",improveQuarkHept:"Quark Hepteract 1",improveQuarkHept2:"Quark Hepteract 2",improveQuarkHept3:"Quark Hepteract 3",improveQuarkHept4:"Quack Hepteract 4",shopImprovedDaily:"Improved Daily Code 1",shopImprovedDaily2:"Improved Daily Code 2",shopImprovedDaily3:"Improved Daily Code 3",shopImprovedDaily4:"Improved Daily Code 4",offeringEX3:"The final Offering Upgrade",obtainiumEX3:"The final Obtainium Upgrade",improveQuarkHept5:"The final Quark Hepteract Improver",chronometerInfinity:"The final Chronometer",seasonPassInfinity:"The final Season pass",shopSingularityPenaltyDebuff:"A Singularity Tenderizer",shopAmbrosiaLuckMultiplier4:"The Fourth Multiplicative Ambrosia Luck Multiplier",shopOcteractAmbrosiaLuck:"Octeract-Based Ambrosia Luck Amplifier",shopAmbrosiaGeneration1:"Ambrosia Generation Speedup",shopAmbrosiaGeneration2:"Another Ambrosia Generation Speedup",shopAmbrosiaGeneration3:"A better Ambrosia Generation Speedup",shopAmbrosiaGeneration4:"A FINAL Ambrosia Generation Speedup",shopAmbrosiaLuck1:"Ambrosia Luck Increaser",shopAmbrosiaLuck2:"Another Ambrosia Luck Increaser",shopAmbrosiaLuck3:"A better Ambrosia Generation Speedup",shopAmbrosiaLuck4:"A FINAL Ambrosia Generation Speedup",shopCashGrabUltra:"It's the FINAL CASHGRAB!",shopAmbrosiaAccelerator:"An Ambrosial Accelerator!",shopEXUltra:"It's the FINAL E X!",shopChronometerS:"The FINAL Chronometer",shopAmbrosiaUltra:"The FINAL Ambrosia Exaltation... I don't flippin know!",shopSingularitySpeedup:"Singularity Timed-Perks Speedup",shopSingularityPotency:"Singularity Passives Potency",shopSadisticRune:"Sadistic Rune Unlock! Or does it?"})[t],Ji=async t=>{let r=ge[t];if(e.shopUpgrades[t]>=r.maxLevel)return e.shopConfirmationToggle?P(`You can't purchase ${Ia(t)} because you are already at the maximum ${r.type==="upgrade"?"level":"capacity"}!`):null;if(Number(e.worlds){let s=Me.AUTO_POTION_FREE_POTIONS_QOL;if(e.shopConfirmationToggle&&!r?await ve("Would you like to use some of this potion?"):!0){let c=+e.singularityUpgrades.potionBuff.getEffect().bonus*+e.singularityUpgrades.potionBuff2.getEffect().bonus*+e.singularityUpgrades.potionBuff3.getEffect().bonus*+e.octeractUpgrades.octeractAutoPotionEfficiency.getEffect().bonus*n;t==="offeringPotion"?s&&r?(e.runeshards+=Math.floor(7200*e.offeringpersecond*We().mult*c),e.runeshards=Math.min(1e300,e.runeshards)):(e.shopUpgrades.offeringPotion>=n||!a)&&(e.shopUpgrades.offeringPotion-=a?n:0,e.runeshards+=Math.floor(7200*e.offeringpersecond*We().mult*c),e.runeshards=Math.min(1e300,e.runeshards)):t==="obtainiumPotion"&&(s&&r?(e.researchPoints+=Math.floor(7200*e.maxobtainiumpersecond*We().mult*c),e.researchPoints=Math.min(1e300,e.researchPoints)):(e.shopUpgrades.obtainiumPotion>=n||!a)&&(e.shopUpgrades.obtainiumPotion-=a?n:0,e.researchPoints+=Math.floor(7200*e.maxobtainiumpersecond*We().mult*c),e.researchPoints=Math.min(1e300,e.researchPoints)))}},el=async(t=!1)=>{let r=!1;if(t||(r=e.shopConfirmationToggle?await ve("This will fully refund most of your permanent upgrades for an upfront cost of 15 Quarks. Would you like to do this?"):!0),r||t){let n=e.quarksThisSingularity,a=!1;for(let s in ge){let l=s,c=ge[l];if(c.refundable&&e.shopUpgrades[l]>c.refundMinimumLevel){a=!0;let p=c.price*c.refundMinimumLevel+c.priceIncrease*c.refundMinimumLevel*(c.refundMinimumLevel-1)/2;e.worlds.add(c.price*e.shopUpgrades[l]+c.priceIncrease*e.shopUpgrades[l]*(e.shopUpgrades[l]-1)/2-p,!1),e.shopUpgrades[l]=c.refundMinimumLevel}}a?e.worlds.sub(15):!t&&e.shopConfirmationToggle&&P("Nothing to Refund!"),e.quarksThisSingularity=n}};var ws=t=>{switch(t){case"offeringPotion":return!0;case"obtainiumPotion":return!0;case"offeringEX":return e.reincarnationCount>0||e.highestSingularityCount>0;case"offeringAuto":return e.reincarnationCount>0||e.highestSingularityCount>0;case"obtainiumEX":return e.reincarnationCount>0||e.highestSingularityCount>0;case"obtainiumAuto":return e.reincarnationCount>0||e.highestSingularityCount>0;case"instantChallenge":return e.reincarnationCount>0||e.highestSingularityCount>0;case"antSpeed":return e.highestchallengecompletions[8]>0||e.ascensionCount>0||e.highestSingularityCount>0;case"cashGrab":return e.highestchallengecompletions[8]>0||e.ascensionCount>0||e.highestSingularityCount>0;case"shopTalisman":return e.highestchallengecompletions[9]>0||e.ascensionCount>0||e.highestSingularityCount>0;case"seasonPass":return e.ascensionCount>0||e.highestSingularityCount>0;case"challengeExtension":return e.ascensionCount>0||e.highestSingularityCount>0;case"challengeTome":return e.ascensionCount>0||e.highestSingularityCount>0;case"cubeToQuark":return e.ascensionCount>0||e.highestSingularityCount>0;case"tesseractToQuark":return e.highestchallengecompletions[11]>0||e.highestSingularityCount>0;case"hypercubeToQuark":return e.highestchallengecompletions[13]>0||e.highestSingularityCount>0;case"seasonPass2":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"seasonPass3":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"chronometer":return e.highestchallengecompletions[12]>0||e.highestSingularityCount>0;case"infiniteAscent":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"calculator":return e.ascensionCount>0||e.highestSingularityCount>0;case"calculator2":return e.highestchallengecompletions[11]>0||e.highestSingularityCount>0;case"calculator3":return e.highestchallengecompletions[13]>0||e.highestSingularityCount>0;case"calculator4":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"calculator5":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"calculator6":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"calculator7":return!!e.singularityChallenges.limitedAscensions.rewards.shopUpgrade;case"constantEX":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"powderEX":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"chronometer2":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"chronometer3":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"seasonPassY":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"seasonPassZ":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"challengeTome2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"instantChallenge2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"cashGrab2":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"cubeToQuarkAll":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"chronometerZ":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"offeringEX2":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"obtainiumEX2":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"powderAuto":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"seasonPassLost":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"challenge15Auto":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"extraWarp":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"autoWarp":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"improveQuarkHept":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"improveQuarkHept2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"improveQuarkHept3":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"improveQuarkHept4":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"shopImprovedDaily":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"shopImprovedDaily2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"shopImprovedDaily3":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"shopImprovedDaily4":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"offeringEX3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"obtainiumEX3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"improveQuarkHept5":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"chronometerInfinity":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"seasonPassInfinity":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopSingularityPenaltyDebuff":return!!e.singularityChallenges.noSingularityUpgrades.rewards.shopUpgrade;case"shopAmbrosiaLuckMultiplier4":return!!e.singularityChallenges.oneChallengeCap.rewards.shopUpgrade;case"shopOcteractAmbrosiaLuck":return!!e.singularityChallenges.noOcteracts.rewards.shopUpgrade;case"shopAmbrosiaGeneration1":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"shopAmbrosiaGeneration2":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"shopAmbrosiaGeneration3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopAmbrosiaGeneration4":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopAmbrosiaLuck1":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"shopAmbrosiaLuck2":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"shopAmbrosiaLuck3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopAmbrosiaLuck4":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopCashGrabUltra":return!!e.singularityChallenges.noSingularityUpgrades.rewards.shopUpgrade2;case"shopAmbrosiaAccelerator":return!!e.singularityChallenges.noAmbrosiaUpgrades.rewards.shopUpgrade;case"shopEXUltra":return!!e.singularityChallenges.noAmbrosiaUpgrades.rewards.shopUpgrade2;case"shopChronometerS":return!!e.singularityChallenges.limitedTime.rewards.tier1Upgrade;case"shopAmbrosiaUltra":return!!e.singularityChallenges.limitedTime.rewards.tier2Upgrade;case"shopSingularitySpeedup":return!!e.singularityChallenges.sadisticPrequel.rewards.shopUpgrade;case"shopSingularityPotency":return!!e.singularityChallenges.sadisticPrequel.rewards.shopUpgrade2;case"shopSadisticRune":return!!e.singularityChallenges.sadisticPrequel.rewards.shopUpgrade3}};var Mm={shard:{obtainium:1e13,offerings:100},commonFragment:{obtainium:1e14,offerings:1e4},uncommonFragment:{obtainium:1e16,offerings:1e5},rareFragment:{obtainium:1e18,offerings:1e6},epicFragment:{obtainium:1e20,offerings:1e7},legendaryFragment:{obtainium:1e22,offerings:1e8},mythicalFragment:{obtainium:1e24,offerings:1e9}},xu=["One","Two","Three","Four","Five","Six","Seven"],wo=t=>{let r=30*e.talismanRarity[t];return r+=6*_("ascension",e.challengecompletions[13]),r+=Math.floor(e.researches[200]/400),t===6&&(r+=Me.INSTANT_UNLOCK_1?10:0),e.cubeUpgrades[67]>0&&t===3&&(r+=1337),r},Tm=(t,r=e.buyTalismanShardPercent)=>{let n=Mm[t].obtainium,a=Mm[t].offerings,s=Math.max(1,Math.floor(e.researchPoints/n)),l=Math.max(1,Math.floor(e.runeshards/a)),c=Math.max(1,Math.floor(r/100*Math.min(s,l)));return{canBuy:n<=e.researchPoints&&a<=e.runeshards,buyAmount:c,obtainiumCost:n*c,offeringCost:a*c}},rl=(t,r=e.buyTalismanShardPercent)=>{let n=o("talismanFragmentCost");if(t){let a=Tm(t,r),s=u.t(`runes.talismans.shards.${t}`);n.textContent=u.t("runes.talismans.costToBuy",{name:s,buyAmount:d(a.buyAmount),obtainium:d(a.obtainiumCost),offerings:d(a.offeringCost)})}else n.textContent=u.t("runes.talismans.clickBuyEveryType")},Ms=(t=e.buyTalismanShardPercent)=>{o("talismanTen").style.backgroundColor="",o("talismanTwentyFive").style.backgroundColor="",o("talismanFifty").style.backgroundColor="",o("talismanHundred").style.backgroundColor="",e.buyTalismanShardPercent=t;let r="Ten";t===25&&(r="TwentyFive"),t===50&&(r="Fifty"),t===100&&(r="Hundred"),o(`talisman${r}`).style.backgroundColor="green"},zt=()=>{o("talismanShardInventory").textContent=d(e.talismanShards),o("commonFragmentInventory").textContent=d(e.commonFragments),o("uncommonFragmentInventory").textContent=d(e.uncommonFragments),o("rareFragmentInventory").textContent=d(e.rareFragments),o("epicFragmentInventory").textContent=d(e.epicFragments),o("legendaryFragmentInventory").textContent=d(e.legendaryFragments),o("mythicalFragmentInventory").textContent=d(e.mythicalFragments)},nl=()=>{let t=["shard","commonFragment","uncommonFragment","rareFragment","epicFragment","legendaryFragment","mythicalFragment"];for(let r=t.length-1;r>=0;r--)wu(t[r])},wu=(t,r=e.buyTalismanShardPercent)=>{let n=Tm(t,r);n.canBuy&&(t==="shard"?e.talismanShards+=n.buyAmount:e[`${t}s`]+=n.buyAmount,t==="mythicalFragment"&&e.mythicalFragments>=1e25&&e.achievements[239]<1&&R(239),e.researchPoints-=n.obtainiumCost,e.runeshards-=n.offeringCost,e.researchPoints<0&&(e.researchPoints=0),e.runeshards<0&&(e.runeshards=0)),rl(t,r),zt()},al=t=>{o("talismanlevelup").style.display="none",o("talismanEffect").style.display="block",o("talismanrespec").style.display="none";let r=o("talismanSummary"),n=o("talismanBonus"),a=o("talismanRune1Effect"),s=o("talismanRune2Effect"),l=o("talismanRune3Effect"),c=o("talismanRune4Effect"),p=o("talismanRune5Effect"),g=o("talismanMythicEffect"),m="",h="";switch(t){case 0:m="exemption",h=d(10*(e.talismanRarity[0]-1));break;case 1:m="chronos",h=d(10*(e.talismanRarity[1]-1));break;case 2:m="midas",h=d(10*(e.talismanRarity[2]-1));break;case 3:m="metaphysics",h=d(.02*(e.talismanRarity[3]-1),2);break;case 4:m="polymath",h=d(1*(e.talismanRarity[4]-1));break;case 5:m="mortuus",h=d(2*(e.talismanRarity[5]-1));break;case 6:m="plastic";break}let b=`talisman${t+1}Effect`;r.textContent=u.t(`runes.talismans.summaries.${m}`),n.textContent=u.t(`runes.talismans.effects.${m}`,{x:h}),a.textContent=u.t("runes.talismans.bonusRuneLevels.speed",{x:d(i[b][1],2,!0)}),s.textContent=u.t("runes.talismans.bonusRuneLevels.duplication",{x:d(i[b][2],2,!0)}),l.textContent=u.t("runes.talismans.bonusRuneLevels.prism",{x:d(i[b][3],2,!0)}),c.textContent=u.t("runes.talismans.bonusRuneLevels.thrift",{x:d(i[b][4],2,!0)}),p.textContent=u.t("runes.talismans.bonusRuneLevels.SI",{x:d(i[b][5],2,!0)}),g.textContent=u.t(`runes.talismans.mythicEffects.${m}`),e.talismanRarity[t]!==6&&(g.textContent=u.t("runes.talismans.maxEnhance"))},Mu=t=>{o("talismanEffect").style.display="none",o("talismanlevelup").style.display="block",o("talismanrespec").style.display="none";let r=o("talismanShardCost"),n=o("talismanCommonFragmentCost"),a=o("talismanUncommonFragmentCost"),s=o("talismanRareFragmentCost"),l=o("talismanEpicFragmentCost"),c=o("talismanLegendaryFragmentCost"),p=o("talismanMythicalFragmentCost");o("talismanLevelUpSummary").textContent=u.t("runes.resourcesToLevelup"),o("talismanLevelUpSummary").style.color="silver";let g=i.talismanLevelCostMultiplier[t];e.talismanLevels[t]>=120&&(g*=(e.talismanLevels[t]-90)/30),e.talismanLevels[t]>=150&&(g*=(e.talismanLevels[t]-120)/30),e.talismanLevels[t]>=180&&(g*=(e.talismanLevels[t]-170)/10),r.textContent=d(g*Math.max(0,Math.floor(1+1/8*Math.pow(e.talismanLevels[t],3)))),n.textContent=d(g*Math.max(0,Math.floor(1+1/32*Math.pow(e.talismanLevels[t]-30,3)))),a.textContent=d(g*Math.max(0,Math.floor(1+1/384*Math.pow(e.talismanLevels[t]-60,3)))),s.textContent=d(g*Math.max(0,Math.floor(1+1/500*Math.pow(e.talismanLevels[t]-90,3)))),l.textContent=d(g*Math.max(0,Math.floor(1+1/375*Math.pow(e.talismanLevels[t]-120,3)))),c.textContent=d(g*Math.max(0,Math.floor(1+1/192*Math.pow(e.talismanLevels[t]-150,3)))),p.textContent=d(g*Math.max(0,Math.floor(1+1/1280*Math.pow(e.talismanLevels[t]-150,3))))},Tu=t=>{o("talismanEffect").style.display="none",o("talismanlevelup").style.display="block",o("talismanrespec").style.display="none";let r=o("talismanShardCost"),n=o("talismanCommonFragmentCost"),a=o("talismanUncommonFragmentCost"),s=o("talismanRareFragmentCost"),l=o("talismanEpicFragmentCost"),c=o("talismanLegendaryFragmentCost"),p=o("talismanMythicalFragmentCost");o("talismanLevelUpSummary").textContent=u.t("runes.resourcesToEnhance"),o("talismanLevelUpSummary").style.color="gold";let g=[i.commonTalismanEnhanceCost,i.uncommonTalismanEnchanceCost,i.rareTalismanEnchanceCost,i.epicTalismanEnhanceCost,i.legendaryTalismanEnchanceCost,i.mythicalTalismanEnchanceCost],m=e.talismanRarity[t],h=g[m-1],b=i.talismanLevelCostMultiplier[t];r.textContent=d(b*h[1]),n.textContent=d(b*h[2]),a.textContent=d(b*h[3]),s.textContent=d(b*h[4]),l.textContent=d(b*h[5]),c.textContent=d(b*h[6]),p.textContent=d(b*h[7])},Su=t=>{i.talismanRespec=t,o("talismanEffect").style.display="none",o("talismanlevelup").style.display="none",o("talismanrespec").style.display="block";let r=["speed","duplication","prism","thrift","SI"],n=["positive","positive","positive","positive","positive"];if(t<=6){for(let a=1;a<=5;a++)i.mirrorTalismanStats[a]=e[`talisman${xu[t]}`][a];o("confirmTalismanRespec").textContent=u.t("runes.talismans.respecConfirm")}if(t===7){for(let a=1;a<=5;a++)i.mirrorTalismanStats[a]=1;o("confirmTalismanRespec").textContent=u.t("runes.talismans.respecConfirmAll")}for(let a=1;a<=5;a++){let s=o(`talismanRespecButton${a}`);i.mirrorTalismanStats[a]===1?(s.style.border="2px solid limegreen",n[a-1]="positive"):i.mirrorTalismanStats[a]===-1&&(s.style.border="2px solid crimson",n[a-1]="negative"),s.textContent=u.t(`runes.talismans.modifiers.${n[a-1]}`,{name:u.t(`runes.names.${r[a-1]}`)})}o("confirmTalismanRespec").style.display="none"},Sm=t=>{let r=[null,"speed","duplication","prism","thrift","SI"],n=o(`talismanRespecButton${t}`);i.mirrorTalismanStats[t]===1?(i.mirrorTalismanStats[t]=-1,n.textContent=u.t("runes.talismans.modifiers.negative",{name:u.t(`runes.names.${r[t]}`)}),n.style.border="2px solid crimson"):(i.mirrorTalismanStats[t]=1,n.textContent=u.t("runes.talismans.modifiers.positive",{name:u.t(`runes.names.${r[t]}`)}),n.style.border="2px solid limegreen"),i.mirrorTalismanStats.reduce((s,l)=>s+l,0)===1?o("confirmTalismanRespec").style.display="block":o("confirmTalismanRespec").style.display="none"},km=t=>{if(e.runeshards>=1e5&&t<7){for(let r=1;r<=5;r++)e[`talisman${xu[t]}`][r]=i.mirrorTalismanStats[r];e.runeshards-=1e5,o("confirmTalismanRespec").style.display="none",o("talismanrespec").style.display="none",o("talismanEffect").style.display="block",al(t)}else if(e.runeshards>=4e5&&t===7){e.runeshards-=4e5;for(let r=0;r<7;r++)for(let n=1;n<=5;n++)e[`talisman${xu[r]}`][n]=i.mirrorTalismanStats[n];o("confirmTalismanRespec").style.display="none"}je()},Lm=t=>{o("talismanrespec").style.display="none",t<7&&(o("talismanEffect").style.display="block",al(t))},ft=t=>{let r=o(`talisman${t+1}`),n=o(`talisman${t+1}level`),a=e.talismanRarity[t];a===1&&(r.style.border="4px solid white",n.style.color="white"),a===2&&(r.style.border="4px solid limegreen",n.style.color="limegreen"),a===3&&(r.style.border="4px solid lightblue",n.style.color="lightblue"),a===4&&(r.style.border="4px solid plum",n.style.color="plum"),a===5&&(r.style.border="4px solid orange",n.style.color="orange"),a===6&&(r.style.border="4px solid crimson",n.style.color="var(--crimson-text-color)")},sl=(t,r=!1)=>{let n=1;e.ascensionCount>0&&(n=30),e.highestSingularityCount>0&&(n=180);let a=!1;for(let s=1;s<=n;s++){let l=0,c=i.talismanLevelCostMultiplier[t];if(e.talismanLevels[t]>=120&&(c*=(e.talismanLevels[t]-90)/30),e.talismanLevels[t]>=150&&(c*=(e.talismanLevels[t]-120)/30),e.talismanLevels[t]>=180&&(c*=(e.talismanLevels[t]-170)/10),e.talismanLevels[t]=c*Math.max(0,Math.floor(1+1/8*Math.pow(e.talismanLevels[t],3)))&&l++,e.commonFragments>=c*Math.max(0,Math.floor(1+1/32*Math.pow(e.talismanLevels[t]-30,3)))&&l++,e.uncommonFragments>=c*Math.max(0,Math.floor(1+1/384*Math.pow(e.talismanLevels[t]-60,3)))&&l++,e.rareFragments>=c*Math.max(0,Math.floor(1+1/500*Math.pow(e.talismanLevels[t]-90,3)))&&l++,e.epicFragments>=c*Math.max(0,Math.floor(1+1/375*Math.pow(e.talismanLevels[t]-120,3)))&&l++,e.legendaryFragments>=c*Math.max(0,Math.floor(1+1/192*Math.pow(e.talismanLevels[t]-150,3)))&&l++,e.mythicalFragments>=c*Math.max(0,Math.floor(1+1/1280*Math.pow(e.talismanLevels[t]-150,3)))&&l++),l===7)e.talismanShards-=c*Math.max(0,Math.floor(1+1/8*Math.pow(e.talismanLevels[t],3))),e.commonFragments-=c*Math.max(0,Math.floor(1+1/32*Math.pow(e.talismanLevels[t]-30,3))),e.uncommonFragments-=c*Math.max(0,Math.floor(1+1/384*Math.pow(e.talismanLevels[t]-60,3))),e.rareFragments-=c*Math.max(0,Math.floor(1+1/500*Math.pow(e.talismanLevels[t]-90,3))),e.epicFragments-=c*Math.max(0,Math.floor(1+1/375*Math.pow(e.talismanLevels[t]-120,3))),e.legendaryFragments-=c*Math.max(0,Math.floor(1+1/192*Math.pow(e.talismanLevels[t]-150,3))),e.mythicalFragments-=c*Math.max(0,Math.floor(1+1/1280*Math.pow(e.talismanLevels[t]-150,3))),e.talismanLevels[t]+=1,a=!0;else break}return!r&&a&&(Mu(t),zt(),je()),a},ol=(t,r=!1)=>{let n=0;if(e.talismanRarity[t]<6){let a=i.talismanLevelCostMultiplier[t],s=[i.commonTalismanEnhanceCost,i.uncommonTalismanEnchanceCost,i.rareTalismanEnchanceCost,i.epicTalismanEnhanceCost,i.legendaryTalismanEnchanceCost,i.mythicalTalismanEnchanceCost],l=e.talismanRarity[t]-1,c=s[l];if(e.commonFragments>=a*c[2]&&n++,e.uncommonFragments>=a*c[3]&&n++,e.rareFragments>=a*c[4]&&n++,e.epicFragments>=a*c[5]&&n++,e.legendaryFragments>=a*c[6]&&n++,e.mythicalFragments>=a*c[7]&&n++,n===6)return e.commonFragments-=a*c[2],e.uncommonFragments-=a*c[3],e.rareFragments-=a*c[4],e.epicFragments-=a*c[5],e.legendaryFragments-=a*c[6],e.mythicalFragments-=a*c[7],e.talismanRarity[t]+=1,ft(t),r||(Tu(t),zt(),je()),!0}return!1};var Mo=aa(Am());var Em=t=>t.method!==void 0&&t.method==="call";var Om=t=>t.error===null&&typeof t.id=="number";var Um=t=>{let r=new Map([[0,()=>{}]]),n=new Map([[0,()=>{}]]),a=new Map,s=new Worker(t);return s.addEventListener("message",({data:m})=>{if(Em(m)){let{params:{timerId:h,timerType:b}}=m;if(b==="interval"){let C=r.get(h);if(typeof C=="number"){let v=a.get(C);if(v===void 0||v.timerId!==h||v.timerType!==b)throw new Error("The timer is in an undefined state.")}else if(typeof C<"u")C();else throw new Error("The timer is in an undefined state.")}else if(b==="timeout"){let C=n.get(h);if(typeof C=="number"){let v=a.get(C);if(v===void 0||v.timerId!==h||v.timerType!==b)throw new Error("The timer is in an undefined state.")}else if(typeof C<"u")C(),n.delete(h);else throw new Error("The timer is in an undefined state.")}}else if(Om(m)){let{id:h}=m,b=a.get(h);if(b===void 0)throw new Error("The timer is in an undefined state.");let{timerId:C,timerType:v}=b;a.delete(h),v==="interval"?r.delete(C):n.delete(C)}else{let{error:{message:h}}=m;throw new Error(h)}}),{clearInterval:m=>{let h=(0,Mo.generateUniqueNumber)(a);a.set(h,{timerId:m,timerType:"interval"}),r.set(m,h),s.postMessage({id:h,method:"clear",params:{timerId:m,timerType:"interval"}})},clearTimeout:m=>{let h=(0,Mo.generateUniqueNumber)(a);a.set(h,{timerId:m,timerType:"timeout"}),n.set(m,h),s.postMessage({id:h,method:"clear",params:{timerId:m,timerType:"timeout"}})},setInterval:(m,h=0)=>{let b=(0,Mo.generateUniqueNumber)(r);return r.set(b,()=>{m(),typeof r.get(b)=="function"&&s.postMessage({id:null,method:"set",params:{delay:h,now:performance.now(),timerId:b,timerType:"interval"}})}),s.postMessage({id:null,method:"set",params:{delay:h,now:performance.now(),timerId:b,timerType:"interval"}}),b},setTimeout:(m,h=0)=>{let b=(0,Mo.generateUniqueNumber)(n);return n.set(b,m),s.postMessage({id:null,method:"set",params:{delay:h,now:performance.now(),timerId:b,timerType:"timeout"}}),b}}};var Bm=(t,r)=>{let n=null;return()=>{if(n!==null)return n;let a=new Blob([r],{type:"application/javascript; charset=utf-8"}),s=URL.createObjectURL(a);return n=t(s),setTimeout(()=>URL.revokeObjectURL(s)),n}};var Rm=`(()=>{"use strict";const e=new Map,t=new Map,r=(e,t)=>{let r,o;const i=performance.now();r=i,o=e-Math.max(0,i-t);return{expected:r+o,remainingDelay:o}},o=(e,t,r,i)=>{const s=performance.now();s>r?postMessage({id:null,method:"call",params:{timerId:t,timerType:i}}):e.set(t,setTimeout(o,r-s,e,t,r,i))};addEventListener("message",(i=>{let{data:s}=i;try{if("clear"===s.method){const{id:r,params:{timerId:o,timerType:i}}=s;if("interval"===i)(t=>{const r=e.get(t);if(void 0===r)throw new Error('There is no interval scheduled with the given id "'.concat(t,'".'));clearTimeout(r),e.delete(t)})(o),postMessage({error:null,id:r});else{if("timeout"!==i)throw new Error('The given type "'.concat(i,'" is not supported'));(e=>{const r=t.get(e);if(void 0===r)throw new Error('There is no timeout scheduled with the given id "'.concat(e,'".'));clearTimeout(r),t.delete(e)})(o),postMessage({error:null,id:r})}}else{if("set"!==s.method)throw new Error('The given method "'.concat(s.method,'" is not supported'));{const{params:{delay:i,now:n,timerId:a,timerType:d}}=s;if("interval"===d)((t,i,s)=>{const{expected:n,remainingDelay:a}=r(t,s);e.set(i,setTimeout(o,a,e,i,n,"interval"))})(i,a,n);else{if("timeout"!==d)throw new Error('The given type "'.concat(d,'" is not supported'));((e,i,s)=>{const{expected:n,remainingDelay:a}=r(e,s);t.set(i,setTimeout(o,a,t,i,n,"timeout"))})(i,a,n)}}}}catch(e){postMessage({error:{message:e.message},id:s.id,result:null})}}))})();`;var ll=Bm(Um,Rm),Im=t=>ll().clearInterval(t),Nm=t=>ll().clearTimeout(t),$m=(...t)=>ll().setInterval(...t),_m=(...t)=>ll().setTimeout(...t);var fn=[],$t=(t,r)=>{let n=$m(t,r);return fn.push({id:n,type:"interval"}),n},$a=t=>{for(let r of fn)if(r.type==="interval"&&r.id===t){Im(t),fn.splice(fn.indexOf(r),1);return}},cl=(t,r)=>{let n=_m(t,r);return fn.push({id:n,type:"timeout"}),n},ku=t=>{for(let r of fn)if(r.type==="timeout"&&r.id===t){Nm(t),fn.splice(fn.indexOf(r),1);return}},Lu=()=>{for(let{id:t,type:r}of fn)r==="interval"?$a(t):ku(t)};var _a=(w=>(w[w.Quark=0]="Quark",w[w.GoldenQuark=1]="GoldenQuark",w[w.Cubes=2]="Cubes",w[w.PowderConversion=3]="PowderConversion",w[w.AscensionSpeed=4]="AscensionSpeed",w[w.GlobalSpeed=5]="GlobalSpeed",w[w.AscensionScore=6]="AscensionScore",w[w.AntSacrifice=7]="AntSacrifice",w[w.Offering=8]="Offering",w[w.Obtainium=9]="Obtainium",w[w.Octeract=10]="Octeract",w[w.BlueberryTime=11]="BlueberryTime",w[w.AmbrosiaLuck=12]="AmbrosiaLuck",w[w.OneMind=13]="OneMind",w))(_a||{}),Ts=null,ul=()=>Ts,Pu=async()=>{var l;if(!e.dayCheck)return;let t=await fetch("https://synergism.cc/api/v2/events/get");if(!t.ok)throw new Error("God fucking dammit");let r=await t.json();Ts=null;let n=new Date(dl()).getTime();n>=r.start&&n<=r.end&&r.name.length&&(Ts=r);let a=new Date((l=Ts==null?void 0:Ts.end)!=null?l:0);o("globalEventTimer").textContent=no(a);let s=i.isEvent;Ou(),i.isEvent!==s&&(Be(),i.ambrosiaCurrStats.ambrosiaAdditiveLuckMult=Kr().value,i.ambrosiaCurrStats.ambrosiaLuck=qe().value,i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value)},At=["Quark","GoldenQuark","Cubes","PowderConversion","AscensionSpeed","GlobalSpeed","AscensionScore","AntSacrifice","Offering","Obtainium","Octeract","BlueberryTime","AmbrosiaLuck","OneMind"],Dm=t=>Au(t)+Eu(t),Au=t=>{let r=ul();if(r===null)return 0;switch(t){case 0:return r.quark;case 1:return r.goldenQuark;case 2:return r.cubes;case 3:return r.powderConversion;case 4:return r.ascensionSpeed;case 5:return r.globalSpeed;case 6:return r.ascensionScore;case 7:return r.antSacrifice;case 8:return r.offering;case 9:return r.obtainium;case 10:return r.octeract;case 13:return e.singularityUpgrades.oneMind.level>0?r.oneMind:0;case 11:return r.blueberryTime;case 12:return r.ambrosiaLuck}},Eu=t=>{let{HAPPY_HOUR_BELL:r}=Xt,n=r-1;if(r===0)return 0;switch(t){case 0:return r?.25+.025*n:0;case 1:return 0;case 2:return r?.5+.05*n:0;case 3:return 0;case 4:return 0;case 5:return 0;case 6:return 0;case 7:return 0;case 8:return r?.5+.05*n:0;case 9:return r?.5+.05*n:0;case 10:return 0;case 13:return 0;case 11:return r?.1+.01*n:0;case 12:return r?.1+.01*n:0}},Tv=t=>typeof t=="string"?Xt[t]>0:Xt.HAPPY_HOUR_BELL!==0,Ou=()=>i.isEvent=ul()!==null||Tv();var Sv="756419583941804072",kv="758859750070026241",Lv="758861068188647444",Pv="832099983389097995",Av="677272036820910098",Ev="1177364773986386021",Ov="1311161342987603979",Uv="1178131525049520138",Bv="1311164406209450064",Rv="983484264865730560",Iv="1045560188574380042",Nv="1045560846169935922",$v="1045562390995009606",_v="1178125584061173800",Dv="1311165096378105906",Zt,Bu=!1,Ss=0,Ha=()=>Bu,pl=()=>Ss,Fm=t=>Ss=t,Xt={HAPPY_HOUR_BELL:0},Da={HAPPY_HOUR_BELL:[]},Hv=y.preprocess((t,r)=>{if(typeof t=="string")try{return JSON.parse(t)}catch(n){}r.addIssue({code:"custom",message:"Invalid message received."})},y.union([y.object({type:y.literal("join")}),y.object({type:y.literal("error"),message:y.string()}),y.object({type:y.literal("consumed"),consumable:y.string(),startedAt:y.number().int()}),y.object({type:y.literal("consumable-ended"),consumable:y.string(),endedAt:y.number().int()}),y.object({type:y.literal("info"),active:y.object({name:y.string(),internalName:y.string(),amount:y.number().int(),endsAt:y.number().int()}).array(),tips:y.number().int().nonnegative()}),y.object({type:y.literal("info-all"),active:y.object({name:y.string(),internalName:y.string(),endsAt:y.number().int()}).array(),tips:y.number().int().nonnegative()}),y.object({type:y.literal("thanks")}),y.object({type:y.literal("tips"),tips:y.number().int()}),y.object({type:y.literal("tip-backlog"),tips:y.number().int()}),y.object({type:y.literal("applied-tip"),amount:y.number(),remaining:y.number()})]));async function Qm(){var g,m,h,b,C,v,w,B,U,k,L,E,T;let t=document.querySelector("#accountSubTab > div.scrollbarX"),r=o("currentBonus"),n=document.getElementById("logoutButton");n!==null&&(n.addEventListener("click",Fv,{once:!0}),(g=document.getElementById("accountSubTab"))==null||g.appendChild(n));let a=await fetch("https://synergism.cc/api/v1/users/me").catch(()=>new Response(JSON.stringify({member:null,globalBonus:0,personalBonus:0}),{status:401}));if(!a.ok){r.textContent=`Oh no! I couldn't fetch the bonus... Please send this to Khafra in the Discord: ${await a.text()}.`;return}let{globalBonus:s,member:l,personalBonus:c,accountType:p}=await a.json();if(Hp(100*(1+s/100)*(1+c/100)-100),e.worlds=new In(Number(e.worlds)),Bu=p!=="none"&&a.ok,r.textContent=`Generous patrons give you a bonus of ${s}% more Quarks!`,location.hostname!=="synergism.cc")t.textContent="Login is not available here, go to https://synergism.cc instead!";else if(p==="discord"||p==="patreon"){if(l===null){t.innerHTML="You are logged in, but your profile couldn't be retrieved from Discord or Patreon.";return}r.textContent+=` You also receive an extra ${c}% bonus for being a Patreon member and/or boosting the Discord server! Multiplicative with global bonus!`;let S;p==="discord"?S=(v=(C=(h=l.nick)!=null?h:(m=l.user)==null?void 0:m.username)!=null?C:(b=l.user)==null?void 0:b.global_name)!=null?v:null:S=l.user.username;let I=p==="discord"&&(!!(l!=null&&l.premium_since)||(l==null?void 0:l.roles.includes(Av))),N=(w=l.roles.includes(Sv))!=null?w:!1,X=(B=l.roles.includes(kv))!=null?B:!1,te=(U=l.roles.includes(Lv))!=null?U:!1,Se=(k=l.roles.includes(Pv))!=null?k:!1,ne=He=>`[\u2714] {+${He}%}`,ae='[\u2716] {+0%}';t.innerHTML=`
+Type -1 in Buy: ANY to buy equal amounts of both Potions.`:"";if(e.shopBuyMaxToggle==="ANY"&&!c){let b=await Pe(`You can afford to purchase up to ${p} of ${Ia(t)} for ${l.toLocaleString()} Quarks. How many would you like to buy?${m+g}`),C;if(Number(b)===-1&&r.type==="consume"){let w=t==="offeringPotion"?"obtainiumPotion":"offeringPotion",B=Math.max(+e.worlds/2,+e.worlds-l),U=ar(e.shopUpgrades[w],ge[w].price,B,ge[w].priceIncrease/ge[w].price,ge[w].maxLevel-e.shopUpgrades[w]);e.worlds.sub(U.cost),e.shopUpgrades[w]=U.levelCanBuy,C=s}else{if(C=Math.floor(Number(b)),C===0)return;if(Number.isNaN(C)||!Number.isFinite(C)||C<0)return P("Amount must be a finite, positive integer.")}let v=ar(e.shopUpgrades[t],r.price,+e.worlds,r.priceIncrease/r.price,Math.min(C,s));e.worlds.sub(v.cost),e.shopUpgrades[t]=v.levelCanBuy,Be(),i.ambrosiaCurrStats.ambrosiaLuck=qe().value,i.ambrosiaCurrStats.ambrosiaAdditiveLuckMult=Kr().value,i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value;return}let h=!0;(e.shopConfirmationToggle||!r.refundable&&e.shopBuyMaxToggle!==!1)&&(h=await me(`You are about to ${c?"unlock":`purchase ${p} of`} ${Ia(t)} for ${l.toLocaleString()} Quarks. Press 'OK' to finalize purchase.${m+g}`)),h&&(e.worlds.sub(l),e.shopUpgrades[t]+=s,i.ambrosiaCurrStats.ambrosiaLuck=qe().value,i.ambrosiaCurrStats.ambrosiaAdditiveLuckMult=Kr().value,i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value,Be())};var mn=async(t,r=!1,n=1,a=!0)=>{let s=Me.AUTO_POTION_FREE_POTIONS_QOL;if(e.shopConfirmationToggle&&!r?await me("Would you like to use some of this potion?"):!0){let c=+e.singularityUpgrades.potionBuff.getEffect().bonus*+e.singularityUpgrades.potionBuff2.getEffect().bonus*+e.singularityUpgrades.potionBuff3.getEffect().bonus*+e.octeractUpgrades.octeractAutoPotionEfficiency.getEffect().bonus*n;t==="offeringPotion"?s&&r?(e.runeshards+=Math.floor(7200*e.offeringpersecond*We().mult*c),e.runeshards=Math.min(1e300,e.runeshards)):(e.shopUpgrades.offeringPotion>=n||!a)&&(e.shopUpgrades.offeringPotion-=a?n:0,e.runeshards+=Math.floor(7200*e.offeringpersecond*We().mult*c),e.runeshards=Math.min(1e300,e.runeshards)):t==="obtainiumPotion"&&(s&&r?(e.researchPoints+=Math.floor(7200*e.maxobtainiumpersecond*We().mult*c),e.researchPoints=Math.min(1e300,e.researchPoints)):(e.shopUpgrades.obtainiumPotion>=n||!a)&&(e.shopUpgrades.obtainiumPotion-=a?n:0,e.researchPoints+=Math.floor(7200*e.maxobtainiumpersecond*We().mult*c),e.researchPoints=Math.min(1e300,e.researchPoints)))}},el=async(t=!1)=>{let r=!1;if(t||(r=e.shopConfirmationToggle?await me("This will fully refund most of your permanent upgrades for an upfront cost of 15 Quarks. Would you like to do this?"):!0),r||t){let n=e.quarksThisSingularity,a=!1;for(let s in ge){let l=s,c=ge[l];if(c.refundable&&e.shopUpgrades[l]>c.refundMinimumLevel){a=!0;let p=c.price*c.refundMinimumLevel+c.priceIncrease*c.refundMinimumLevel*(c.refundMinimumLevel-1)/2;e.worlds.add(c.price*e.shopUpgrades[l]+c.priceIncrease*e.shopUpgrades[l]*(e.shopUpgrades[l]-1)/2-p,!1),e.shopUpgrades[l]=c.refundMinimumLevel}}a?e.worlds.sub(15):!t&&e.shopConfirmationToggle&&P("Nothing to Refund!"),e.quarksThisSingularity=n}};var ws=t=>{switch(t){case"offeringPotion":return!0;case"obtainiumPotion":return!0;case"offeringEX":return e.reincarnationCount>0||e.highestSingularityCount>0;case"offeringAuto":return e.reincarnationCount>0||e.highestSingularityCount>0;case"obtainiumEX":return e.reincarnationCount>0||e.highestSingularityCount>0;case"obtainiumAuto":return e.reincarnationCount>0||e.highestSingularityCount>0;case"instantChallenge":return e.reincarnationCount>0||e.highestSingularityCount>0;case"antSpeed":return e.highestchallengecompletions[8]>0||e.ascensionCount>0||e.highestSingularityCount>0;case"cashGrab":return e.highestchallengecompletions[8]>0||e.ascensionCount>0||e.highestSingularityCount>0;case"shopTalisman":return e.highestchallengecompletions[9]>0||e.ascensionCount>0||e.highestSingularityCount>0;case"seasonPass":return e.ascensionCount>0||e.highestSingularityCount>0;case"challengeExtension":return e.ascensionCount>0||e.highestSingularityCount>0;case"challengeTome":return e.ascensionCount>0||e.highestSingularityCount>0;case"cubeToQuark":return e.ascensionCount>0||e.highestSingularityCount>0;case"tesseractToQuark":return e.highestchallengecompletions[11]>0||e.highestSingularityCount>0;case"hypercubeToQuark":return e.highestchallengecompletions[13]>0||e.highestSingularityCount>0;case"seasonPass2":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"seasonPass3":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"chronometer":return e.highestchallengecompletions[12]>0||e.highestSingularityCount>0;case"infiniteAscent":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"calculator":return e.ascensionCount>0||e.highestSingularityCount>0;case"calculator2":return e.highestchallengecompletions[11]>0||e.highestSingularityCount>0;case"calculator3":return e.highestchallengecompletions[13]>0||e.highestSingularityCount>0;case"calculator4":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"calculator5":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"calculator6":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"calculator7":return!!e.singularityChallenges.limitedAscensions.rewards.shopUpgrade;case"constantEX":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"powderEX":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"chronometer2":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"chronometer3":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"seasonPassY":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"seasonPassZ":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"challengeTome2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"instantChallenge2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"cashGrab2":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"cubeToQuarkAll":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"chronometerZ":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"offeringEX2":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"obtainiumEX2":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"powderAuto":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"seasonPassLost":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"challenge15Auto":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"extraWarp":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"autoWarp":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"improveQuarkHept":return e.challenge15Exponent>=1e15||e.highestSingularityCount>0;case"improveQuarkHept2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"improveQuarkHept3":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"improveQuarkHept4":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"shopImprovedDaily":return e.highestchallengecompletions[14]>0||e.highestSingularityCount>0;case"shopImprovedDaily2":return!!e.singularityUpgrades.wowPass.getEffect().bonus;case"shopImprovedDaily3":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"shopImprovedDaily4":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"offeringEX3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"obtainiumEX3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"improveQuarkHept5":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"chronometerInfinity":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"seasonPassInfinity":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopSingularityPenaltyDebuff":return!!e.singularityChallenges.noSingularityUpgrades.rewards.shopUpgrade;case"shopAmbrosiaLuckMultiplier4":return!!e.singularityChallenges.oneChallengeCap.rewards.shopUpgrade;case"shopOcteractAmbrosiaLuck":return!!e.singularityChallenges.noOcteracts.rewards.shopUpgrade;case"shopAmbrosiaGeneration1":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"shopAmbrosiaGeneration2":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"shopAmbrosiaGeneration3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopAmbrosiaGeneration4":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopAmbrosiaLuck1":return!!e.singularityUpgrades.wowPass2.getEffect().bonus;case"shopAmbrosiaLuck2":return!!e.singularityUpgrades.wowPass3.getEffect().bonus;case"shopAmbrosiaLuck3":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopAmbrosiaLuck4":return!!e.singularityUpgrades.wowPass4.getEffect().bonus;case"shopCashGrabUltra":return!!e.singularityChallenges.noSingularityUpgrades.rewards.shopUpgrade2;case"shopAmbrosiaAccelerator":return!!e.singularityChallenges.noAmbrosiaUpgrades.rewards.shopUpgrade;case"shopEXUltra":return!!e.singularityChallenges.noAmbrosiaUpgrades.rewards.shopUpgrade2;case"shopChronometerS":return!!e.singularityChallenges.limitedTime.rewards.tier1Upgrade;case"shopAmbrosiaUltra":return!!e.singularityChallenges.limitedTime.rewards.tier2Upgrade;case"shopSingularitySpeedup":return!!e.singularityChallenges.sadisticPrequel.rewards.shopUpgrade;case"shopSingularityPotency":return!!e.singularityChallenges.sadisticPrequel.rewards.shopUpgrade2;case"shopSadisticRune":return!!e.singularityChallenges.sadisticPrequel.rewards.shopUpgrade3}};var Mm={shard:{obtainium:1e13,offerings:100},commonFragment:{obtainium:1e14,offerings:1e4},uncommonFragment:{obtainium:1e16,offerings:1e5},rareFragment:{obtainium:1e18,offerings:1e6},epicFragment:{obtainium:1e20,offerings:1e7},legendaryFragment:{obtainium:1e22,offerings:1e8},mythicalFragment:{obtainium:1e24,offerings:1e9}},xu=["One","Two","Three","Four","Five","Six","Seven"],wo=t=>{let r=30*e.talismanRarity[t];return r+=6*_("ascension",e.challengecompletions[13]),r+=Math.floor(e.researches[200]/400),t===6&&(r+=Me.INSTANT_UNLOCK_1?10:0),e.cubeUpgrades[67]>0&&t===3&&(r+=1337),r},Tm=(t,r=e.buyTalismanShardPercent)=>{let n=Mm[t].obtainium,a=Mm[t].offerings,s=Math.max(1,Math.floor(e.researchPoints/n)),l=Math.max(1,Math.floor(e.runeshards/a)),c=Math.max(1,Math.floor(r/100*Math.min(s,l)));return{canBuy:n<=e.researchPoints&&a<=e.runeshards,buyAmount:c,obtainiumCost:n*c,offeringCost:a*c}},rl=(t,r=e.buyTalismanShardPercent)=>{let n=o("talismanFragmentCost");if(t){let a=Tm(t,r),s=u.t(`runes.talismans.shards.${t}`);n.textContent=u.t("runes.talismans.costToBuy",{name:s,buyAmount:d(a.buyAmount),obtainium:d(a.obtainiumCost),offerings:d(a.offeringCost)})}else n.textContent=u.t("runes.talismans.clickBuyEveryType")},Ms=(t=e.buyTalismanShardPercent)=>{o("talismanTen").style.backgroundColor="",o("talismanTwentyFive").style.backgroundColor="",o("talismanFifty").style.backgroundColor="",o("talismanHundred").style.backgroundColor="",e.buyTalismanShardPercent=t;let r="Ten";t===25&&(r="TwentyFive"),t===50&&(r="Fifty"),t===100&&(r="Hundred"),o(`talisman${r}`).style.backgroundColor="green"},zt=()=>{o("talismanShardInventory").textContent=d(e.talismanShards),o("commonFragmentInventory").textContent=d(e.commonFragments),o("uncommonFragmentInventory").textContent=d(e.uncommonFragments),o("rareFragmentInventory").textContent=d(e.rareFragments),o("epicFragmentInventory").textContent=d(e.epicFragments),o("legendaryFragmentInventory").textContent=d(e.legendaryFragments),o("mythicalFragmentInventory").textContent=d(e.mythicalFragments)},nl=()=>{let t=["shard","commonFragment","uncommonFragment","rareFragment","epicFragment","legendaryFragment","mythicalFragment"];for(let r=t.length-1;r>=0;r--)wu(t[r])},wu=(t,r=e.buyTalismanShardPercent)=>{let n=Tm(t,r);n.canBuy&&(t==="shard"?e.talismanShards+=n.buyAmount:e[`${t}s`]+=n.buyAmount,t==="mythicalFragment"&&e.mythicalFragments>=1e25&&e.achievements[239]<1&&R(239),e.researchPoints-=n.obtainiumCost,e.runeshards-=n.offeringCost,e.researchPoints<0&&(e.researchPoints=0),e.runeshards<0&&(e.runeshards=0)),rl(t,r),zt()},al=t=>{o("talismanlevelup").style.display="none",o("talismanEffect").style.display="block",o("talismanrespec").style.display="none";let r=o("talismanSummary"),n=o("talismanBonus"),a=o("talismanRune1Effect"),s=o("talismanRune2Effect"),l=o("talismanRune3Effect"),c=o("talismanRune4Effect"),p=o("talismanRune5Effect"),g=o("talismanMythicEffect"),m="",h="";switch(t){case 0:m="exemption",h=d(10*(e.talismanRarity[0]-1));break;case 1:m="chronos",h=d(10*(e.talismanRarity[1]-1));break;case 2:m="midas",h=d(10*(e.talismanRarity[2]-1));break;case 3:m="metaphysics",h=d(.02*(e.talismanRarity[3]-1),2);break;case 4:m="polymath",h=d(1*(e.talismanRarity[4]-1));break;case 5:m="mortuus",h=d(2*(e.talismanRarity[5]-1));break;case 6:m="plastic";break}let b=`talisman${t+1}Effect`;r.textContent=u.t(`runes.talismans.summaries.${m}`),n.textContent=u.t(`runes.talismans.effects.${m}`,{x:h}),a.textContent=u.t("runes.talismans.bonusRuneLevels.speed",{x:d(i[b][1],2,!0)}),s.textContent=u.t("runes.talismans.bonusRuneLevels.duplication",{x:d(i[b][2],2,!0)}),l.textContent=u.t("runes.talismans.bonusRuneLevels.prism",{x:d(i[b][3],2,!0)}),c.textContent=u.t("runes.talismans.bonusRuneLevels.thrift",{x:d(i[b][4],2,!0)}),p.textContent=u.t("runes.talismans.bonusRuneLevels.SI",{x:d(i[b][5],2,!0)}),g.textContent=u.t(`runes.talismans.mythicEffects.${m}`),e.talismanRarity[t]!==6&&(g.textContent=u.t("runes.talismans.maxEnhance"))},Mu=t=>{o("talismanEffect").style.display="none",o("talismanlevelup").style.display="block",o("talismanrespec").style.display="none";let r=o("talismanShardCost"),n=o("talismanCommonFragmentCost"),a=o("talismanUncommonFragmentCost"),s=o("talismanRareFragmentCost"),l=o("talismanEpicFragmentCost"),c=o("talismanLegendaryFragmentCost"),p=o("talismanMythicalFragmentCost");o("talismanLevelUpSummary").textContent=u.t("runes.resourcesToLevelup"),o("talismanLevelUpSummary").style.color="silver";let g=i.talismanLevelCostMultiplier[t];e.talismanLevels[t]>=120&&(g*=(e.talismanLevels[t]-90)/30),e.talismanLevels[t]>=150&&(g*=(e.talismanLevels[t]-120)/30),e.talismanLevels[t]>=180&&(g*=(e.talismanLevels[t]-170)/10),r.textContent=d(g*Math.max(0,Math.floor(1+1/8*Math.pow(e.talismanLevels[t],3)))),n.textContent=d(g*Math.max(0,Math.floor(1+1/32*Math.pow(e.talismanLevels[t]-30,3)))),a.textContent=d(g*Math.max(0,Math.floor(1+1/384*Math.pow(e.talismanLevels[t]-60,3)))),s.textContent=d(g*Math.max(0,Math.floor(1+1/500*Math.pow(e.talismanLevels[t]-90,3)))),l.textContent=d(g*Math.max(0,Math.floor(1+1/375*Math.pow(e.talismanLevels[t]-120,3)))),c.textContent=d(g*Math.max(0,Math.floor(1+1/192*Math.pow(e.talismanLevels[t]-150,3)))),p.textContent=d(g*Math.max(0,Math.floor(1+1/1280*Math.pow(e.talismanLevels[t]-150,3))))},Tu=t=>{o("talismanEffect").style.display="none",o("talismanlevelup").style.display="block",o("talismanrespec").style.display="none";let r=o("talismanShardCost"),n=o("talismanCommonFragmentCost"),a=o("talismanUncommonFragmentCost"),s=o("talismanRareFragmentCost"),l=o("talismanEpicFragmentCost"),c=o("talismanLegendaryFragmentCost"),p=o("talismanMythicalFragmentCost");o("talismanLevelUpSummary").textContent=u.t("runes.resourcesToEnhance"),o("talismanLevelUpSummary").style.color="gold";let g=[i.commonTalismanEnhanceCost,i.uncommonTalismanEnchanceCost,i.rareTalismanEnchanceCost,i.epicTalismanEnhanceCost,i.legendaryTalismanEnchanceCost,i.mythicalTalismanEnchanceCost],m=e.talismanRarity[t],h=g[m-1],b=i.talismanLevelCostMultiplier[t];r.textContent=d(b*h[1]),n.textContent=d(b*h[2]),a.textContent=d(b*h[3]),s.textContent=d(b*h[4]),l.textContent=d(b*h[5]),c.textContent=d(b*h[6]),p.textContent=d(b*h[7])},Su=t=>{i.talismanRespec=t,o("talismanEffect").style.display="none",o("talismanlevelup").style.display="none",o("talismanrespec").style.display="block";let r=["speed","duplication","prism","thrift","SI"],n=["positive","positive","positive","positive","positive"];if(t<=6){for(let a=1;a<=5;a++)i.mirrorTalismanStats[a]=e[`talisman${xu[t]}`][a];o("confirmTalismanRespec").textContent=u.t("runes.talismans.respecConfirm")}if(t===7){for(let a=1;a<=5;a++)i.mirrorTalismanStats[a]=1;o("confirmTalismanRespec").textContent=u.t("runes.talismans.respecConfirmAll")}for(let a=1;a<=5;a++){let s=o(`talismanRespecButton${a}`);i.mirrorTalismanStats[a]===1?(s.style.border="2px solid limegreen",n[a-1]="positive"):i.mirrorTalismanStats[a]===-1&&(s.style.border="2px solid crimson",n[a-1]="negative"),s.textContent=u.t(`runes.talismans.modifiers.${n[a-1]}`,{name:u.t(`runes.names.${r[a-1]}`)})}o("confirmTalismanRespec").style.display="none"},Sm=t=>{let r=[null,"speed","duplication","prism","thrift","SI"],n=o(`talismanRespecButton${t}`);i.mirrorTalismanStats[t]===1?(i.mirrorTalismanStats[t]=-1,n.textContent=u.t("runes.talismans.modifiers.negative",{name:u.t(`runes.names.${r[t]}`)}),n.style.border="2px solid crimson"):(i.mirrorTalismanStats[t]=1,n.textContent=u.t("runes.talismans.modifiers.positive",{name:u.t(`runes.names.${r[t]}`)}),n.style.border="2px solid limegreen"),i.mirrorTalismanStats.reduce((s,l)=>s+l,0)===1?o("confirmTalismanRespec").style.display="block":o("confirmTalismanRespec").style.display="none"},km=t=>{if(e.runeshards>=1e5&&t<7){for(let r=1;r<=5;r++)e[`talisman${xu[t]}`][r]=i.mirrorTalismanStats[r];e.runeshards-=1e5,o("confirmTalismanRespec").style.display="none",o("talismanrespec").style.display="none",o("talismanEffect").style.display="block",al(t)}else if(e.runeshards>=4e5&&t===7){e.runeshards-=4e5;for(let r=0;r<7;r++)for(let n=1;n<=5;n++)e[`talisman${xu[r]}`][n]=i.mirrorTalismanStats[n];o("confirmTalismanRespec").style.display="none"}je()},Lm=t=>{o("talismanrespec").style.display="none",t<7&&(o("talismanEffect").style.display="block",al(t))},ft=t=>{let r=o(`talisman${t+1}`),n=o(`talisman${t+1}level`),a=e.talismanRarity[t];a===1&&(r.style.border="4px solid white",n.style.color="white"),a===2&&(r.style.border="4px solid limegreen",n.style.color="limegreen"),a===3&&(r.style.border="4px solid lightblue",n.style.color="lightblue"),a===4&&(r.style.border="4px solid plum",n.style.color="plum"),a===5&&(r.style.border="4px solid orange",n.style.color="orange"),a===6&&(r.style.border="4px solid crimson",n.style.color="var(--crimson-text-color)")},sl=(t,r=!1)=>{let n=1;e.ascensionCount>0&&(n=30),e.highestSingularityCount>0&&(n=180);let a=!1;for(let s=1;s<=n;s++){let l=0,c=i.talismanLevelCostMultiplier[t];if(e.talismanLevels[t]>=120&&(c*=(e.talismanLevels[t]-90)/30),e.talismanLevels[t]>=150&&(c*=(e.talismanLevels[t]-120)/30),e.talismanLevels[t]>=180&&(c*=(e.talismanLevels[t]-170)/10),e.talismanLevels[t]=c*Math.max(0,Math.floor(1+1/8*Math.pow(e.talismanLevels[t],3)))&&l++,e.commonFragments>=c*Math.max(0,Math.floor(1+1/32*Math.pow(e.talismanLevels[t]-30,3)))&&l++,e.uncommonFragments>=c*Math.max(0,Math.floor(1+1/384*Math.pow(e.talismanLevels[t]-60,3)))&&l++,e.rareFragments>=c*Math.max(0,Math.floor(1+1/500*Math.pow(e.talismanLevels[t]-90,3)))&&l++,e.epicFragments>=c*Math.max(0,Math.floor(1+1/375*Math.pow(e.talismanLevels[t]-120,3)))&&l++,e.legendaryFragments>=c*Math.max(0,Math.floor(1+1/192*Math.pow(e.talismanLevels[t]-150,3)))&&l++,e.mythicalFragments>=c*Math.max(0,Math.floor(1+1/1280*Math.pow(e.talismanLevels[t]-150,3)))&&l++),l===7)e.talismanShards-=c*Math.max(0,Math.floor(1+1/8*Math.pow(e.talismanLevels[t],3))),e.commonFragments-=c*Math.max(0,Math.floor(1+1/32*Math.pow(e.talismanLevels[t]-30,3))),e.uncommonFragments-=c*Math.max(0,Math.floor(1+1/384*Math.pow(e.talismanLevels[t]-60,3))),e.rareFragments-=c*Math.max(0,Math.floor(1+1/500*Math.pow(e.talismanLevels[t]-90,3))),e.epicFragments-=c*Math.max(0,Math.floor(1+1/375*Math.pow(e.talismanLevels[t]-120,3))),e.legendaryFragments-=c*Math.max(0,Math.floor(1+1/192*Math.pow(e.talismanLevels[t]-150,3))),e.mythicalFragments-=c*Math.max(0,Math.floor(1+1/1280*Math.pow(e.talismanLevels[t]-150,3))),e.talismanLevels[t]+=1,a=!0;else break}return!r&&a&&(Mu(t),zt(),je()),a},ol=(t,r=!1)=>{let n=0;if(e.talismanRarity[t]<6){let a=i.talismanLevelCostMultiplier[t],s=[i.commonTalismanEnhanceCost,i.uncommonTalismanEnchanceCost,i.rareTalismanEnchanceCost,i.epicTalismanEnhanceCost,i.legendaryTalismanEnchanceCost,i.mythicalTalismanEnchanceCost],l=e.talismanRarity[t]-1,c=s[l];if(e.commonFragments>=a*c[2]&&n++,e.uncommonFragments>=a*c[3]&&n++,e.rareFragments>=a*c[4]&&n++,e.epicFragments>=a*c[5]&&n++,e.legendaryFragments>=a*c[6]&&n++,e.mythicalFragments>=a*c[7]&&n++,n===6)return e.commonFragments-=a*c[2],e.uncommonFragments-=a*c[3],e.rareFragments-=a*c[4],e.epicFragments-=a*c[5],e.legendaryFragments-=a*c[6],e.mythicalFragments-=a*c[7],e.talismanRarity[t]+=1,ft(t),r||(Tu(t),zt(),je()),!0}return!1};var Mo=aa(Am());var Em=t=>t.method!==void 0&&t.method==="call";var Om=t=>t.error===null&&typeof t.id=="number";var Um=t=>{let r=new Map([[0,()=>{}]]),n=new Map([[0,()=>{}]]),a=new Map,s=new Worker(t);return s.addEventListener("message",({data:m})=>{if(Em(m)){let{params:{timerId:h,timerType:b}}=m;if(b==="interval"){let C=r.get(h);if(typeof C=="number"){let v=a.get(C);if(v===void 0||v.timerId!==h||v.timerType!==b)throw new Error("The timer is in an undefined state.")}else if(typeof C<"u")C();else throw new Error("The timer is in an undefined state.")}else if(b==="timeout"){let C=n.get(h);if(typeof C=="number"){let v=a.get(C);if(v===void 0||v.timerId!==h||v.timerType!==b)throw new Error("The timer is in an undefined state.")}else if(typeof C<"u")C(),n.delete(h);else throw new Error("The timer is in an undefined state.")}}else if(Om(m)){let{id:h}=m,b=a.get(h);if(b===void 0)throw new Error("The timer is in an undefined state.");let{timerId:C,timerType:v}=b;a.delete(h),v==="interval"?r.delete(C):n.delete(C)}else{let{error:{message:h}}=m;throw new Error(h)}}),{clearInterval:m=>{let h=(0,Mo.generateUniqueNumber)(a);a.set(h,{timerId:m,timerType:"interval"}),r.set(m,h),s.postMessage({id:h,method:"clear",params:{timerId:m,timerType:"interval"}})},clearTimeout:m=>{let h=(0,Mo.generateUniqueNumber)(a);a.set(h,{timerId:m,timerType:"timeout"}),n.set(m,h),s.postMessage({id:h,method:"clear",params:{timerId:m,timerType:"timeout"}})},setInterval:(m,h=0)=>{let b=(0,Mo.generateUniqueNumber)(r);return r.set(b,()=>{m(),typeof r.get(b)=="function"&&s.postMessage({id:null,method:"set",params:{delay:h,now:performance.now(),timerId:b,timerType:"interval"}})}),s.postMessage({id:null,method:"set",params:{delay:h,now:performance.now(),timerId:b,timerType:"interval"}}),b},setTimeout:(m,h=0)=>{let b=(0,Mo.generateUniqueNumber)(n);return n.set(b,m),s.postMessage({id:null,method:"set",params:{delay:h,now:performance.now(),timerId:b,timerType:"timeout"}}),b}}};var Bm=(t,r)=>{let n=null;return()=>{if(n!==null)return n;let a=new Blob([r],{type:"application/javascript; charset=utf-8"}),s=URL.createObjectURL(a);return n=t(s),setTimeout(()=>URL.revokeObjectURL(s)),n}};var Rm=`(()=>{"use strict";const e=new Map,t=new Map,r=(e,t)=>{let r,o;const i=performance.now();r=i,o=e-Math.max(0,i-t);return{expected:r+o,remainingDelay:o}},o=(e,t,r,i)=>{const s=performance.now();s>r?postMessage({id:null,method:"call",params:{timerId:t,timerType:i}}):e.set(t,setTimeout(o,r-s,e,t,r,i))};addEventListener("message",(i=>{let{data:s}=i;try{if("clear"===s.method){const{id:r,params:{timerId:o,timerType:i}}=s;if("interval"===i)(t=>{const r=e.get(t);if(void 0===r)throw new Error('There is no interval scheduled with the given id "'.concat(t,'".'));clearTimeout(r),e.delete(t)})(o),postMessage({error:null,id:r});else{if("timeout"!==i)throw new Error('The given type "'.concat(i,'" is not supported'));(e=>{const r=t.get(e);if(void 0===r)throw new Error('There is no timeout scheduled with the given id "'.concat(e,'".'));clearTimeout(r),t.delete(e)})(o),postMessage({error:null,id:r})}}else{if("set"!==s.method)throw new Error('The given method "'.concat(s.method,'" is not supported'));{const{params:{delay:i,now:n,timerId:a,timerType:d}}=s;if("interval"===d)((t,i,s)=>{const{expected:n,remainingDelay:a}=r(t,s);e.set(i,setTimeout(o,a,e,i,n,"interval"))})(i,a,n);else{if("timeout"!==d)throw new Error('The given type "'.concat(d,'" is not supported'));((e,i,s)=>{const{expected:n,remainingDelay:a}=r(e,s);t.set(i,setTimeout(o,a,t,i,n,"timeout"))})(i,a,n)}}}}catch(e){postMessage({error:{message:e.message},id:s.id,result:null})}}))})();`;var ll=Bm(Um,Rm),Im=t=>ll().clearInterval(t),Nm=t=>ll().clearTimeout(t),$m=(...t)=>ll().setInterval(...t),_m=(...t)=>ll().setTimeout(...t);var fn=[],$t=(t,r)=>{let n=$m(t,r);return fn.push({id:n,type:"interval"}),n},$a=t=>{for(let r of fn)if(r.type==="interval"&&r.id===t){Im(t),fn.splice(fn.indexOf(r),1);return}},cl=(t,r)=>{let n=_m(t,r);return fn.push({id:n,type:"timeout"}),n},ku=t=>{for(let r of fn)if(r.type==="timeout"&&r.id===t){Nm(t),fn.splice(fn.indexOf(r),1);return}},Lu=()=>{for(let{id:t,type:r}of fn)r==="interval"?$a(t):ku(t)};var _a=(w=>(w[w.Quark=0]="Quark",w[w.GoldenQuark=1]="GoldenQuark",w[w.Cubes=2]="Cubes",w[w.PowderConversion=3]="PowderConversion",w[w.AscensionSpeed=4]="AscensionSpeed",w[w.GlobalSpeed=5]="GlobalSpeed",w[w.AscensionScore=6]="AscensionScore",w[w.AntSacrifice=7]="AntSacrifice",w[w.Offering=8]="Offering",w[w.Obtainium=9]="Obtainium",w[w.Octeract=10]="Octeract",w[w.BlueberryTime=11]="BlueberryTime",w[w.AmbrosiaLuck=12]="AmbrosiaLuck",w[w.OneMind=13]="OneMind",w))(_a||{}),Ts=null,ul=()=>Ts,Pu=async()=>{var l;if(!e.dayCheck)return;let t=await fetch("https://synergism.cc/api/v2/events/get");if(!t.ok)throw new Error("God fucking dammit");let r=await t.json();Ts=null;let n=new Date(dl()).getTime();n>=r.start&&n<=r.end&&r.name.length&&(Ts=r);let a=new Date((l=Ts==null?void 0:Ts.end)!=null?l:0);o("globalEventTimer").textContent=no(a);let s=i.isEvent;Ou(),i.isEvent!==s&&(Be(),i.ambrosiaCurrStats.ambrosiaAdditiveLuckMult=Kr().value,i.ambrosiaCurrStats.ambrosiaLuck=qe().value,i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value)},At=["Quark","GoldenQuark","Cubes","PowderConversion","AscensionSpeed","GlobalSpeed","AscensionScore","AntSacrifice","Offering","Obtainium","Octeract","BlueberryTime","AmbrosiaLuck","OneMind"],Dm=t=>Au(t)+Eu(t),Au=t=>{let r=ul();if(r===null)return 0;switch(t){case 0:return r.quark;case 1:return r.goldenQuark;case 2:return r.cubes;case 3:return r.powderConversion;case 4:return r.ascensionSpeed;case 5:return r.globalSpeed;case 6:return r.ascensionScore;case 7:return r.antSacrifice;case 8:return r.offering;case 9:return r.obtainium;case 10:return r.octeract;case 13:return e.singularityUpgrades.oneMind.level>0?r.oneMind:0;case 11:return r.blueberryTime;case 12:return r.ambrosiaLuck}},Eu=t=>{let{HAPPY_HOUR_BELL:r}=Xt,n=r-1;if(r===0)return 0;switch(t){case 0:return r?.25+.025*n:0;case 1:return 0;case 2:return r?.5+.05*n:0;case 3:return 0;case 4:return 0;case 5:return 0;case 6:return 0;case 7:return 0;case 8:return r?.5+.05*n:0;case 9:return r?.5+.05*n:0;case 10:return 0;case 13:return 0;case 11:return r?.1+.01*n:0;case 12:return r?.1+.01*n:0}},Tv=t=>typeof t=="string"?Xt[t]>0:Xt.HAPPY_HOUR_BELL!==0,Ou=()=>i.isEvent=ul()!==null||Tv();var Sv="756419583941804072",kv="758859750070026241",Lv="758861068188647444",Pv="832099983389097995",Av="677272036820910098",Ev="1177364773986386021",Ov="1311161342987603979",Uv="1178131525049520138",Bv="1311164406209450064",Rv="983484264865730560",Iv="1045560188574380042",Nv="1045560846169935922",$v="1045562390995009606",_v="1178125584061173800",Dv="1311165096378105906",Zt,Bu=!1,Ss=0,Ha=()=>Bu,pl=()=>Ss,Fm=t=>Ss=t,Xt={HAPPY_HOUR_BELL:0},Da={HAPPY_HOUR_BELL:[]},Hv=y.preprocess((t,r)=>{if(typeof t=="string")try{return JSON.parse(t)}catch(n){}r.addIssue({code:"custom",message:"Invalid message received."})},y.union([y.object({type:y.literal("join")}),y.object({type:y.literal("error"),message:y.string()}),y.object({type:y.literal("consumed"),consumable:y.string(),startedAt:y.number().int()}),y.object({type:y.literal("consumable-ended"),consumable:y.string(),endedAt:y.number().int()}),y.object({type:y.literal("info"),active:y.object({name:y.string(),internalName:y.string(),amount:y.number().int(),endsAt:y.number().int()}).array(),tips:y.number().int().nonnegative()}),y.object({type:y.literal("info-all"),active:y.object({name:y.string(),internalName:y.string(),endsAt:y.number().int()}).array(),tips:y.number().int().nonnegative()}),y.object({type:y.literal("thanks")}),y.object({type:y.literal("tips"),tips:y.number().int()}),y.object({type:y.literal("tip-backlog"),tips:y.number().int()}),y.object({type:y.literal("applied-tip"),amount:y.number(),remaining:y.number()})]));async function Qm(){var g,m,h,b,C,v,w,B,U,k,L,E,T;let t=document.querySelector("#accountSubTab > div.scrollbarX"),r=o("currentBonus"),n=document.getElementById("logoutButton");n!==null&&(n.addEventListener("click",Fv,{once:!0}),(g=document.getElementById("accountSubTab"))==null||g.appendChild(n));let a=await fetch("https://synergism.cc/api/v1/users/me").catch(()=>new Response(JSON.stringify({member:null,globalBonus:0,personalBonus:0}),{status:401}));if(!a.ok){r.textContent=`Oh no! I couldn't fetch the bonus... Please send this to Khafra in the Discord: ${await a.text()}.`;return}let{globalBonus:s,member:l,personalBonus:c,accountType:p}=await a.json();if(Hp(100*(1+s/100)*(1+c/100)-100),e.worlds=new In(Number(e.worlds)),Bu=p!=="none"&&a.ok,r.textContent=`Generous patrons give you a bonus of ${s}% more Quarks!`,location.hostname!=="synergism.cc")t.textContent="Login is not available here, go to https://synergism.cc instead!";else if(p==="discord"||p==="patreon"){if(l===null){t.innerHTML="You are logged in, but your profile couldn't be retrieved from Discord or Patreon.";return}r.textContent+=` You also receive an extra ${c}% bonus for being a Patreon member and/or boosting the Discord server! Multiplicative with global bonus!`;let S;p==="discord"?S=(v=(C=(h=l.nick)!=null?h:(m=l.user)==null?void 0:m.username)!=null?C:(b=l.user)==null?void 0:b.global_name)!=null?v:null:S=l.user.username;let I=p==="discord"&&(!!(l!=null&&l.premium_since)||(l==null?void 0:l.roles.includes(Av))),N=(w=l.roles.includes(Sv))!=null?w:!1,X=(B=l.roles.includes(kv))!=null?B:!1,te=(U=l.roles.includes(Lv))!=null?U:!1,Se=(k=l.roles.includes(Pv))!=null?k:!1,ne=He=>`[\u2714] {+${He}%}`,ae='[\u2716] {+0%}';t.innerHTML=`
${S?`Hello, ${S}`:"Hello"}!
Your personal Quark bonus is ${d(c,2,!0)}%, computed by the following:
@@ -74,7 +74,7 @@ Type -1 in Buy: ANY to buy equal amounts of both Potions.`:"";if(e.shopBuyMaxTog
https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values
You can also prefix your hotkey with [Ctrl,Shift,Alt]+
- `);if(typeof m!="string")return;let h=m.toUpperCase();if(m.length===0)return void P("You didn't enter anything, canceled!");if(!isNaN(Number(m)))return void P("Number keys are currently unavailable!");if(pt.has(h)||p===h)return void P("That key is already binded to an action, use another key instead!");if(pt.has(p)){let w=pt.get(p);pt.set(h,w),pt.delete(p);let B=Object.keys(e.hotkeys);e.hotkeys[B.length]=[p,h],c.textContent=h,qo()}else return void P(`No hotkey is triggered by ${p}!`)});let s=document.createElement("p");return s.id="hotKeyDesc",s.textContent=r,n.appendChild(a),n.appendChild(s),n},Il=()=>td=!1,qo=()=>{TC();let t=document.querySelector(".hotkeys");for(let r of Array.from(t.children))t.removeChild(r);for(let[r,[n]]of[...pt.entries()]){let a=MC(r,n);t.appendChild(a)}td=!0},TC=()=>{pt=new Map(Rl);for(let t in e.hotkeys){let r=e.hotkeys[t][0],n=e.hotkeys[t][1];if(pt.has(r)){let a=pt.get(r);pt.set(n,a),pt.delete(r)}else Reflect.deleteProperty(e.hotkeys,t)}},jf=async()=>{if(qo(),Object.keys(e.hotkeys).length===0)return await P("You haven't changed the hotkey");let r="",n=new Map(Rl);for(let s in e.hotkeys){let l=e.hotkeys[s][0],c=e.hotkeys[s][1];if(n.has(l)){let p=n.get(l);r+=` ${l}[${p[0]}] to ${c}, `,n.set(c,p),n.delete(l)}}await ve(`Are you sure you want to default all the changed hotkeys?
+ `);if(typeof m!="string")return;let h=m.toUpperCase();if(m.length===0)return void P("You didn't enter anything, canceled!");if(!isNaN(Number(m)))return void P("Number keys are currently unavailable!");if(pt.has(h)||p===h)return void P("That key is already binded to an action, use another key instead!");if(pt.has(p)){let w=pt.get(p);pt.set(h,w),pt.delete(p);let B=Object.keys(e.hotkeys);e.hotkeys[B.length]=[p,h],c.textContent=h,qo()}else return void P(`No hotkey is triggered by ${p}!`)});let s=document.createElement("p");return s.id="hotKeyDesc",s.textContent=r,n.appendChild(a),n.appendChild(s),n},Il=()=>td=!1,qo=()=>{TC();let t=document.querySelector(".hotkeys");for(let r of Array.from(t.children))t.removeChild(r);for(let[r,[n]]of[...pt.entries()]){let a=MC(r,n);t.appendChild(a)}td=!0},TC=()=>{pt=new Map(Rl);for(let t in e.hotkeys){let r=e.hotkeys[t][0],n=e.hotkeys[t][1];if(pt.has(r)){let a=pt.get(r);pt.set(n,a),pt.delete(r)}else Reflect.deleteProperty(e.hotkeys,t)}},jf=async()=>{if(qo(),Object.keys(e.hotkeys).length===0)return await P("You haven't changed the hotkey");let r="",n=new Map(Rl);for(let s in e.hotkeys){let l=e.hotkeys[s][0],c=e.hotkeys[s][1];if(n.has(l)){let p=n.get(l);r+=` ${l}[${p[0]}] to ${c}, `,n.set(c,p),n.delete(l)}}await me(`Are you sure you want to default all the changed hotkeys?
Below is a history of hotkeys you have changed
${r}`)&&(pt=new Map(Rl),e.hotkeys={},qo())},jo=new Set;document.addEventListener("keydown",t=>{wC(t),jo.add(t.code)});document.addEventListener("keyup",t=>jo.delete(t.code));var $s=new Map,Nl=0;var Wf=()=>{let t=document.getElementById("notification-count");Nl===0?t.style.display="none":t.style.display="unset",t.textContent=`${Nl}`},Kf=t=>{for(let r of t){let n=r,{id:a,price:s}=n,l=cp(n,["id","price"]);$s.set(a,{quantity:0,price:s,rest:l})}},_s=t=>{let r=$s.get(t);r.quantity++,Nl++,Wf()},zf=t=>{let r=$s.get(t);r.quantity--,Nl--,Wf()},Xf=()=>{let t=0;for(let{price:r,quantity:n}of $s.values())n>0&&(t+=r*n);return t},Vo=t=>$s.get(t).quantity,rd=()=>{let t=[];for(let[r,{quantity:n,price:a,rest:s}]of $s)n>0&&t.push(O({id:r,quantity:n,price:a},s));return t};var od=document.querySelector("#pseudoCoins > #cartContainer"),Xo=od.querySelector("div.cartList"),Wo=Xo.querySelector("button#checkout"),nd=Xo.querySelector("button#closeCart"),Zf=Xo.querySelector('section > input[type="radio"]'),SC=Xo.querySelector("p#totalCost"),zo=Xo.querySelector("#itemList"),Ko=!1,kC=Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),LC=Rt(()=>{nd==null||nd.addEventListener("click",()=>{Ce(13,{page:0})}),Zf.addEventListener("click",()=>{Ko=!Ko,Zf.checked=Ko}),zo.insertAdjacentHTML("afterend",Xa.map(t=>`
@@ -103,10 +103,10 @@ ${r}`)&&(pt=new Map(Rl),e.hotkeys={},qo())},jo=new Set;document.addEventListener
>
${r.name}
- ${r.description}
-
+ ${r.description}
+
- `).join(""),$l.querySelectorAll("div > button").forEach(r=>{let n=r.parentElement.getAttribute("data-key");r.addEventListener("click",()=>{So(JSON.stringify({type:"consume",consumable:n}))})})})}),e0=()=>{PC(),$l.style.display="flex"},t0=()=>{$l.style.display="none"};var cd=document.querySelector("#pseudoCoins > #merchContainer"),AC=Rt(()=>{(async()=>{let r=await(await fetch("https://synergism.cc/api/merch/products")).json();for(let n=0;n1){let c=0,p=a.getElementsByClassName("slide");s.addEventListener("click",()=>{var g,m;(g=p.item(c))==null||g.classList.remove("active"),--c<0&&(c=p.length-1),(m=p.item(c))==null||m.classList.add("active")}),l.addEventListener("click",()=>{var g,m;(g=p.item(c))==null||g.classList.remove("active"),++c>p.length-1&&(c=0),(m=p.item(c))==null||m.classList.add("active")})}a.appendChild(s),a.appendChild(l),a.querySelector(".slide").classList.add("active"),cd.querySelector("#slideshows").appendChild(a)}})()}),r0=()=>{AC(),cd.style.display="flex"},n0=()=>{cd.style.display="none"};var _l=document.querySelector("#pseudoCoins > #productContainer"),EC=Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),OC=t=>{let r=t.target.getAttribute("data-id"),n=t.target.getAttribute("data-name");if(r===null||!Dl.some(a=>a.id===r)){P("Stop fucking touching the html! We do server-side validation!");return}_s(r),Xe(`Added ${n} to the cart!`)},UC=Rt(()=>{_l.innerHTML=Dl.map(t=>`
+ `).join(""),$l.querySelectorAll("div > button").forEach(r=>{let n=r.parentElement.getAttribute("data-key");r.addEventListener("click",async()=>{if(await me(`Please confirm you would like to activate a ${n} for 500 PseudoCoins`))So(JSON.stringify({type:"consume",consumable:n}));else return P("Purchase cancelled")})})})}),e0=()=>{PC(),$l.style.display="flex"},t0=()=>{$l.style.display="none"};var cd=document.querySelector("#pseudoCoins > #merchContainer"),AC=Rt(()=>{(async()=>{let r=await(await fetch("https://synergism.cc/api/merch/products")).json();for(let n=0;n1){let c=0,p=a.getElementsByClassName("slide");s.addEventListener("click",()=>{var g,m;(g=p.item(c))==null||g.classList.remove("active"),--c<0&&(c=p.length-1),(m=p.item(c))==null||m.classList.add("active")}),l.addEventListener("click",()=>{var g,m;(g=p.item(c))==null||g.classList.remove("active"),++c>p.length-1&&(c=0),(m=p.item(c))==null||m.classList.add("active")})}a.appendChild(s),a.appendChild(l),a.querySelector(".slide").classList.add("active"),cd.querySelector("#slideshows").appendChild(a)}})()}),r0=()=>{AC(),cd.style.display="flex"},n0=()=>{cd.style.display="none"};var _l=document.querySelector("#pseudoCoins > #productContainer"),EC=Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),OC=t=>{let r=t.target.getAttribute("data-id"),n=t.target.getAttribute("data-name");if(r===null||!Dl.some(a=>a.id===r)){P("Stop fucking touching the html! We do server-side validation!");return}_s(r),Xe(`Added ${n} to the cart!`)},UC=Rt(()=>{_l.innerHTML=Dl.map(t=>`
![${t.name}](./Pictures/${t.id}.png)
@@ -118,7 +118,7 @@ ${r}`)&&(pt=new Map(Rl),e.hotkeys={},qo())},jo=new Set;document.addEventListener
- `).join(""),_l.style.display="grid",document.querySelectorAll(".pseudoCoinContainer > div > button[data-id]").forEach(t=>{t.addEventListener("click",OC)})}),a0=()=>{_l.style.display="none"},s0=()=>{UC(),_l.style.display="grid"};var Hl=document.querySelector("#pseudoCoins > #subscriptionsContainer"),o0=Hl.querySelector("#sub-section-holder"),Zo=Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),l0=[0,300,600,1e3,2e3];async function i0(t,r){var b;let n=Tn.tier,a=(b=l0[n])!=null?b:0,s=Mn.find(C=>C.id===t),l=s.price,c=s.name;if(!(r==="downgrade"?await ve(`You are downgrading to ${c}, which costs ${Zo.format((a-l)/100)} less per month. New cost: ${Zo.format(l/100)} per month. Downgrading takes effect immediately!`):await ve(`You are upgrading to ${c}, which costs ${Zo.format((l-a)/100)} more per month. New cost: ${Zo.format(l/100)} per month`)))return;let g=lt?`https://synergism.cc/stripe/subscription/${r}`:`https://synergism.cc/stripe/test/subscription/${r}`,m=new URL(g);m.searchParams.set("key",t);let h=await fetch(m,{method:"POST"});return console.log(h,h.text()),P(`You are now subscribed to ${c}!`)}function BC(t){let r=t.target.getAttribute("data-id"),n=t.target.getAttribute("data-name");if(r===null||!Mn.some(a=>a.id===r)){P("Stop fucking touching the html! We do server-side validation!");return}else if(Mn.some(a=>Vo(a.id)!==0)){P("You can only subscribe to 1 subscription tier!");return}if(Tn.tier!==0){if(this.hasAttribute("data-downgrade")){i0(r,"downgrade");return}else if(this.hasAttribute("data-upgrade")){i0(r,"upgrade");return}}_s(r),Xe(`Added ${n} to the cart!`)}var ud=t=>{let[r,n]=t.split(" and "),a=n.charAt(0).toUpperCase()+n.slice(1);return`${r}
+ `).join(""),_l.style.display="grid",document.querySelectorAll(".pseudoCoinContainer > div > button[data-id]").forEach(t=>{t.addEventListener("click",OC)})}),a0=()=>{_l.style.display="none"},s0=()=>{UC(),_l.style.display="grid"};var Hl=document.querySelector("#pseudoCoins > #subscriptionsContainer"),o0=Hl.querySelector("#sub-section-holder"),Zo=Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),l0=[0,300,600,1e3,2e3];async function i0(t,r){var b;let n=Tn.tier,a=(b=l0[n])!=null?b:0,s=Mn.find(C=>C.id===t),l=s.price,c=s.name;if(!(r==="downgrade"?await me(`You are downgrading to ${c}, which costs ${Zo.format((a-l)/100)} less per month. New cost: ${Zo.format(l/100)} per month. Downgrading takes effect immediately!`):await me(`You are upgrading to ${c}, which costs ${Zo.format((l-a)/100)} more per month. New cost: ${Zo.format(l/100)} per month`)))return;let g=lt?`https://synergism.cc/stripe/subscription/${r}`:`https://synergism.cc/stripe/test/subscription/${r}`,m=new URL(g);m.searchParams.set("key",t);let h=await fetch(m,{method:"POST"});return console.log(h,h.text()),P(`You are now subscribed to ${c}!`)}function BC(t){let r=t.target.getAttribute("data-id"),n=t.target.getAttribute("data-name");if(r===null||!Mn.some(a=>a.id===r)){P("Stop fucking touching the html! We do server-side validation!");return}else if(Mn.some(a=>Vo(a.id)!==0)){P("You can only subscribe to 1 subscription tier!");return}if(Tn.tier!==0){if(this.hasAttribute("data-downgrade")){i0(r,"downgrade");return}else if(this.hasAttribute("data-upgrade")){i0(r,"upgrade");return}}_s(r),Xe(`Added ${n} to the cart!`)}var ud=t=>{let[r,n]=t.split(" and "),a=n.charAt(0).toUpperCase()+n.slice(1);return`${r}
${a}`},RC=(t,r)=>t.price
@@ -186,12 +186,12 @@ ${r}`)&&(pt=new Map(Rl),e.hotkeys={},qo())},jo=new Set;document.addEventListener
display: flex;
justify-content: center;
gap: 0 5px;
- `}getSubs(){return J(this,Ne)}appendButton(...n){for(let a of n)J(this,Ne).push(a),this.appendChild(a);St(this,Jt,J(this,Ne)[0]),mi(this,ql,C0).call(this)}getCurrentTab(){return J(this,Jt)}setNextTab(){var a;let n=J(this,Ne).indexOf(J(this,Jt));return St(this,Jt,(a=J(this,Ne)[n+1])!=null?a:J(this,Ne)[0]),J(this,Jt)}setPreviousTab(){var a;let n=J(this,Ne).indexOf(J(this,Jt));return St(this,Jt,(a=J(this,Ne)[n-1])!=null?a:J(this,Ne)[J(this,Ne).length-1]),J(this,Jt)}getNextTab(n=J(this,Jt)){var s;let a=J(this,Ne).indexOf(n);return(s=J(this,Ne)[a+1])!=null?s:J(this,Ne)[0]}getPreviousTab(n=J(this,Jt)){var s;let a=J(this,Ne).indexOf(n);return(s=J(this,Ne)[a-1])!=null?s:J(this,Ne)[J(this,Ne).length-1]}reappend(){this.replaceChildren();for(let n of J(this,Ne))this.appendChild(n);J(this,Ne).forEach(n=>n.resetHidden())}};Ne=new WeakMap,Jt=new WeakMap,ql=new WeakSet,C0=function(){let n=null,a=g=>{sn(g.target instanceof HTMLElement),g.target.style.opacity="0.4",n=g.target,g.dataTransfer.effectAllowed="move"},s=g=>{g.target instanceof HTMLElement&&g.target.classList.add("over")},l=g=>{g.target instanceof HTMLElement&&g.target.classList.remove("over")},c=g=>{if(g.stopPropagation(),n!==g.target&&n!==null){this.insertBefore(n,g.target);let m=J(this,Ne).indexOf(n),h=J(this,Ne).indexOf(g.target);J(this,Ne).splice(h,0,J(this,Ne)[m]),J(this,Ne).splice(J(this,Ne).indexOf(n,m),1)}return!1},p=g=>{sn(g.target instanceof HTMLElement),g.target.style.opacity="1",J(this,Ne).forEach(m=>{m.classList.remove("over")})};J(this,Ne).forEach(g=>{g.addEventListener("dragstart",a,!1),g.addEventListener("dragenter",s,!1),g.addEventListener("dragover",c,!1),g.addEventListener("dragleave",l,!1),g.addEventListener("drop",c,!1),g.addEventListener("dragend",p,!1)})};var Yo,ea,Jo,Ds,yt=class extends HTMLButtonElement{constructor(n){super();Tt(this,Yo,()=>!0);Tt(this,ea,void 0);Tt(this,Jo,!1);Tt(this,Ds,!1);this.id=n.id,n.class&&this.classList.add(n.class),n.i18n&&this.setAttribute("i18n",n.i18n),n.borderColor&&(this.style.borderColor=n.borderColor),this.addEventListener("click",()=>{J(this,Jo)&&jo.has("ControlLeft")&&jo.has("KeyX")?i.currentTab!==J(this,ea)&&(tt.removeChild(this),St(this,Ds,!0)):(hr(J(this,ea)),jl())})}setUnlockedState(n){return St(this,Yo,n),this}isUnlocked(){return J(this,Yo).call(this)&&!J(this,Ds)}setType(n){return St(this,ea,n),this}getType(){return J(this,ea)}getSubTabs(){return v0[J(this,ea)]}makeDraggable(){return this.setAttribute("draggable","true"),this}makeRemoveable(){return St(this,Jo,!0),this}resetHidden(){St(this,Ds,!1)}};Yo=new WeakMap,ea=new WeakMap,Jo=new WeakMap,Ds=new WeakMap;customElements.define("tab-row",Ql,{extends:"div"});customElements.define("sub-tab",yt,{extends:"button"});var tt=new Ql,y0;(y0=document.getElementsByClassName("navbar").item(0))==null||y0.appendChild(tt);tt.appendButton(new yt({id:"buildingstab",i18n:"tabs.main.buildings"}).setType(0).makeDraggable().makeRemoveable(),new yt({id:"upgradestab",i18n:"tabs.main.upgrades"}).setType(1).makeDraggable().makeRemoveable(),new yt({id:"achievementstab",i18n:"tabs.main.achievements",class:"coinunlock4"}).setUnlockedState(()=>e.unlocks.coinfour).setType(2).makeDraggable().makeRemoveable(),new yt({class:"prestigeunlock",id:"runestab",i18n:"tabs.main.runes"}).setUnlockedState(()=>e.unlocks.prestige).setType(3).makeDraggable().makeRemoveable(),new yt({class:"transcendunlock",id:"challengetab",i18n:"tabs.main.challenges"}).setUnlockedState(()=>e.unlocks.transcend).setType(4).makeDraggable().makeRemoveable(),new yt({class:"reincarnationunlock",id:"researchtab",i18n:"tabs.main.research"}).setUnlockedState(()=>e.unlocks.reincarnate).setType(5).makeDraggable().makeRemoveable(),new yt({class:"chal8",id:"anttab",i18n:"tabs.main.antHill"}).setUnlockedState(()=>e.achievements[127]>0).setType(6).makeDraggable().makeRemoveable(),new yt({class:"chal10",id:"cubetab",i18n:"tabs.main.wowCubes"}).setUnlockedState(()=>e.achievements[141]>0).setType(7).makeDraggable().makeRemoveable(),new yt({class:"chal11",id:"traitstab",i18n:"tabs.main.corruption"}).setUnlockedState(()=>e.challengecompletions[11]>0).setType(8).makeDraggable().makeRemoveable(),new yt({class:"singularity",id:"singularitytab",i18n:"tabs.main.singularity"}).setUnlockedState(()=>e.highestSingularityCount>0).setType(9).makeDraggable().makeRemoveable(),new yt({id:"settingstab",i18n:"tabs.main.settings"}).setType(10).makeDraggable(),new yt({class:"reincarnationunlock",id:"shoptab",i18n:"tabs.main.shop"}).setUnlockedState(()=>e.unlocks.reincarnate||e.highestSingularityCount>0).setType(11).makeDraggable().makeRemoveable(),new yt({class:"isEvent",id:"eventtab",i18n:"tabs.main.unsmith"}).setType(12).makeDraggable().makeRemoveable(),new yt({id:"pseudoCoinstab",i18n:"tabs.main.purchase"}).setType(13).makeDraggable());var Qo=(t=1,r=!1)=>{let n=t===1?tt.getNextTab():tt.getPreviousTab();for(;!(n!=null&&n.isUnlocked());)n=t===1?tt.getNextTab(n):tt.getPreviousTab(n);r?Ce(n.getType(),{step:t}):hr(n.getType(),t)},hr=(t,r)=>{var a;if(r===1)tt.setNextTab();else if(r===-1)tt.setPreviousTab();else for(;tt.getCurrentTab().getType()!==t;)tt.setNextTab();for(;!tt.getCurrentTab().isUnlocked();)r===1||r===void 0?tt.setNextTab():tt.setPreviousTab();i.currentTab=tt.getCurrentTab().getType(),e.tabnumber=0,Be(),x0(),(a=document.activeElement)==null||a.blur();let n=v0[i.currentTab].subTabList;for(let s=0;s{var c;let a=tt.getCurrentTab();a.getType()!==t&&(hr(a.getType()),a=tt.getCurrentTab());let s=a.getSubTabs();if(!a.isUnlocked()||s.subTabList.length===0)return;r!==void 0?e.subtabNumber=_i(r,0,s.subTabList.length-1):e.subtabNumber=_i(e.subtabNumber+n,0,s.subTabList.length-1);let l=s.subTabList[e.subtabNumber];for(;!l.unlocked;)e.subtabNumber=_i(e.subtabNumber+(n!=null?n:1),0,s.subTabList.length-1),l=s.subTabList[e.subtabNumber];if(l.unlocked){for(let p of s.subTabList){if(!p.buttonID)continue;let g=o(p.buttonID);p===l?g.classList.add("active-subtab"):g.classList.remove("active-subtab")}(c=s.tabSwitcher)==null||c.call(s)(l.subTabID),a.getType()===9&&r===3&&(e.visitedAmbrosiaSubtab=!0,i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value)}};function Bf(t){let r=tt.getCurrentTab();for(;r.getType()!==t;)r=tt.setNextTab();return r.getSubTabs().subTabList.length}var i={runediv:[1.5,2,3,5,8,1,1],runeexpbase:[1,4,9,16,1e3,1e75,1e256],runeMaxLvl:4e4,upgradeCosts:[0,6,7,8,10,12,20,25,30,35,45,55,75,110,150,200,250,500,750,1e3,1500,2,3,4,5,6,7,10,13,20,30,150,400,800,1600,3200,1e4,2e4,5e4,1e5,2e5,1,2,3,5,6,7,42,65,87,150,300,500,1e3,1500,2e3,3e3,6e3,12e3,25e3,75e3,0,1,2,2,3,5,6,10,15,22,30,37,45,52,60,1900,2500,3e3,7482,21397,3,6,9,12,15,20,30,6,8,8,10,13,60,1,2,4,8,16,25,40,12,16,20,30,50,500,1250,5e3,25e3,125e3,1500,7500,3e4,15e4,1e6,250,1e3,5e3,25e3,125e3,1e3,1e6,1e9,1e12,1e15],crystalUpgradesCost:[6,15,20,40,100,200,500,1e3],crystalUpgradeCostIncrement:[8,15,20,40,100,200,500,1e3],researchBaseCosts:[1e200,1,1,1,1,1,1,100,1e4,1e6,1e8,2,200,2e4,2e6,2e8,4e4,4e8,10,1e5,1e9,100,100,1e4,2e3,2e5,40,200,50,5e3,2e7,777,7777,5e4,5e5,5e6,2e3,2e6,2e9,1e5,1e9,1,1,5,25,125,2,5,320,1280,25e8,10,2e3,4e5,8e7,2e9,5,400,1e4,3e6,9e8,100,2500,100,2e3,2e5,1,20,3e3,4e5,5e7,10,40,160,1e3,1e4,4e9,7e9,1e10,12e9,15e9,1e12,1e13,3e12,2e13,2e13,2e14,6e14,2e15,6e15,2e16,1e16,2e16,2e17,4e17,1e18,1e13,1e14,1e15,7777e15,7777e17,1e16,3e16,1e17,3e17,1e20,1e18,3e18,1e19,3e19,1e20,1e20,2e20,4e20,8e20,1e21,2e21,4e21,8e21,2e22,4e22,32e20,2e23,4e23,1e21,7777e29,5e8,5e12,5e16,5e20,5e24,1e25,2e25,4e25,8e25,1e26,4e26,8e26,1e27,2e27,1e28,5e9,5e15,5e21,5e27,1e28,1e29,2e29,4e29,8e29,1e27,2e30,4e30,8e30,1e31,2e31,5e31,1e32,2e32,4e32,8e32,1e33,2e33,4e33,8e33,1e34,3e34,1e35,3e35,6e35,1e36,3e36,1e37,3e37,1e38,3e38,1e39,3e39,1e40,3e40,1e50,3e41,1e42,3e42,6e42,1e43,3e43,1e44,3e44,1e45,3e45,2e46,6e46,2e47,6e47,1e64,6e48,2e49,1e50,1e51,4e56],researchMaxLevels:[0,1,1,1,1,1,10,10,10,10,10,10,10,10,10,10,10,10,1,1,1,25,25,25,20,20,10,10,10,10,10,12,12,10,10,10,10,10,10,1,1,1,1,1,1,1,1,1,1,1,1,10,10,10,10,10,20,20,20,20,20,1,5,4,5,5,10,10,10,10,10,1,1,1,1,1,10,50,50,50,50,10,1,20,20,20,20,20,20,20,10,20,20,20,20,1,20,5,5,3,2,10,10,10,10,1,10,10,20,25,25,50,50,50,50,100,10,10,10,100,100,25,25,25,1,5,10,10,10,10,1,10,10,10,1,1,25,25,25,15,1,10,10,10,10,1,10,1,6,10,1,25,25,1,15,1,10,10,10,1,1,10,10,10,10,1,25,25,25,15,1,10,10,10,1,1,10,3,6,10,5,25,25,1,15,1,20,20,20,1,1,20,1,50,50,10,25,25,25,15,1e5],ticker:0,costDivisor:1,freeAccelerator:0,totalAccelerator:0,freeAcceleratorBoost:0,totalAcceleratorBoost:0,acceleratorPower:1.1,acceleratorEffect:new f(1),acceleratorEffectDisplay:new f(1),generatorPower:new f(1),freeMultiplier:0,totalMultiplier:0,multiplierPower:2,multiplierEffect:new f(1),challengeOneLog:3,freeMultiplierBoost:0,totalMultiplierBoost:0,globalCoinMultiplier:new f(1),totalCoinOwned:0,prestigeMultiplier:new f(1),buildingPower:1,reincarnationMultiplier:new f(1),coinOneMulti:new f(1),coinTwoMulti:new f(1),coinThreeMulti:new f(1),coinFourMulti:new f(1),coinFiveMulti:new f(1),globalCrystalMultiplier:new f(1),globalMythosMultiplier:new f(.01),grandmasterMultiplier:new f(1),atomsMultiplier:new f(1),mythosBuildingPower:1,challengeThreeMultiplier:new f(1),totalMythosOwned:0,prestigePointGain:new f(0),challengeFivePower:1/3,transcendPointGain:new f(0),reincarnationPointGain:new f(0),produceFirst:new f(0),produceSecond:new f(0),produceThird:new f(0),produceFourth:new f(0),produceFifth:new f(0),produceTotal:new f(0),produceFirstDiamonds:new f(0),produceSecondDiamonds:new f(0),produceThirdDiamonds:new f(0),produceFourthDiamonds:new f(0),produceFifthDiamonds:new f(0),produceDiamonds:new f(0),produceFirstMythos:new f(0),produceSecondMythos:new f(0),produceThirdMythos:new f(0),produceFourthMythos:new f(0),produceFifthMythos:new f(0),produceMythos:new f(0),produceFirstParticles:new f(0),produceSecondParticles:new f(0),produceThirdParticles:new f(0),produceFourthParticles:new f(0),produceFifthParticles:new f(0),produceParticles:new f(0),producePerSecond:new f(0),producePerSecondDiamonds:new f(0),producePerSecondMythos:new f(0),producePerSecondParticles:new f(0),uFourteenMulti:new f(1),uFifteenMulti:new f(1),tuSevenMulti:1,currentTab:0,researchfiller1:"Hover over the grid to get details about researches!",researchfiller2:"Level: ",ordinals:["first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth","eleventh","twelfth","thirteenth","fourteenth","fifteenth","sixteenth","seventeenth","eighteenth","nineteenth","twentieth"],cardinals:["one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen","twenty","twentyone","twentytwo","twentythree","twentyfour","twentyfive","twentysix","twentyseven","twentyeight","twentynine","thirty","thirtyone","thirtytwo","thirtythree","thirtyfour"],challengeBaseRequirements:[10,20,60,100,200,125,500,7500,2e8,35e8],prestigeamount:1,taxdivisor:new f("1"),taxdivisorcheck:new f("1"),runemultiplierincrease:{one:1,two:1,three:1,four:1,five:1},mythosupgrade13:new f("1"),mythosupgrade14:new f("1"),mythosupgrade15:new f("1"),challengefocus:0,maxexponent:1e4,effectiveLevelMult:1,optimalOfferingTimer:600,optimalObtainiumTimer:3600,runeSum:0,globalAntMult:new f("1"),antMultiplier:new f("1"),antOneProduce:new f("1"),antTwoProduce:new f("1"),antThreeProduce:new f("1"),antFourProduce:new f("1"),antFiveProduce:new f("1"),antSixProduce:new f("1"),antSevenProduce:new f("1"),antEightProduce:new f("1"),antCostGrowth:[1e41,3,10,100,1e4,1e8,1e16,1e32],antUpgradeBaseCost:[100,100,1e3,1e3,1e5,1e6,1e8,1e11,1e15,1e20,1e40,1e100],antUpgradeCostIncreases:[10,10,10,10,100,100,100,100,1e3,1e3,1e3,1e100],bonusant1:0,bonusant2:0,bonusant3:0,bonusant4:0,bonusant5:0,bonusant6:0,bonusant7:0,bonusant8:0,bonusant9:0,bonusant10:0,bonusant11:0,bonusant12:0,rune1level:1,rune2level:1,rune3level:1,rune4level:1,rune5level:1,rune1Talisman:0,rune2Talisman:0,rune3Talisman:0,rune4Talisman:0,rune5Talisman:0,talisman1Effect:[null,0,0,0,0,0],talisman2Effect:[null,0,0,0,0,0],talisman3Effect:[null,0,0,0,0,0],talisman4Effect:[null,0,0,0,0,0],talisman5Effect:[null,0,0,0,0,0],talisman6Effect:[null,0,0,0,0,0],talisman7Effect:[null,0,0,0,0,0],talisman6Power:0,talisman7Quarks:0,runescreen:"runes",settingscreen:"settings",talismanResourceObtainiumCosts:[1e13,1e14,1e16,1e18,1e20,1e22,1e24],talismanResourceOfferingCosts:[100,1e4,1e5,1e6,1e7,1e8,1e9],talismanLevelCostMultiplier:[1,4,1e4,1e8,1e13,10,100],talismanPositiveModifier:[null,.75,1.5,2.25,3,3.75,4.5],talismanNegativeModifier:[null,0,0,0,0,0,0],commonTalismanEnhanceCost:[null,0,3e3,1e3,0,0,0,0],uncommonTalismanEnchanceCost:[null,0,1e4,3e3,1e3,0,0,0],rareTalismanEnchanceCost:[null,0,1e5,2e4,2e3,500,0,0],epicTalismanEnhanceCost:[null,0,2e6,2e5,2e4,2e3,1e3,0],legendaryTalismanEnchanceCost:[null,0,4e7,2e6,1e5,2e4,2500,200],mythicalTalismanEnchanceCost:[null,0,0,0,0,0,0,0],talismanRespec:1,obtainiumGain:0,mirrorTalismanStats:[null,1,1,1,1,1],antELO:0,effectiveELO:0,timeWarp:!1,blessingMultiplier:1,spiritMultiplier:1,runeBlessings:[0,0,0,0,0,0],runeSpirits:[0,0,0,0,0,0],effectiveRuneBlessingPower:[0,0,0,0,0,0],effectiveRuneSpiritPower:[0,0,0,0,0,0],blessingBaseCost:1e6,spiritBaseCost:1e20,triggerChallenge:0,prevReductionValue:-1,buildingSubTab:"coin",blessingbase:[null,1/500,1/5e3,1/2e3,1/750,1/200,1/1e4,1/5e3,1/10,1/1e4,1/1e3],blessingDRPower:[null,1/3,1/3,2/3,1/2,2/3,2,1/3,1/3,1/16,1/16],giftbase:[1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3],giftDRPower:[1/6,1/6,1/3,1/4,1/3,1,1/6,1/6,1/32,1/32],benedictionbase:[null,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3],benedictionDRPower:[null,1/12,1/12,1/6,1/8,1/6,1/2,1/12,1/12,1/64,1/64],platonicCubeBase:[2/4e6,1.5/4e6,1/4e6,1/8e4,1/1e4,1/1e5,1/1e4,1/1e4],platonicDRPower:[1/5,1/5,1/5,1/5,1/16,1/16,1/4,1/8],cubeBonusMultiplier:[null,1,1,1,1,1,1,1,1,1,1],tesseractBonusMultiplier:[null,1,1,1,1,1,1,1,1,1,1],hypercubeBonusMultiplier:[null,1,1,1,1,1,1,1,1,1,1],platonicBonusMultiplier:[1,1,1,1,1,1,1,1],autoOfferingCounter:0,researchOrderByCost:[],viscosityPower:[1,.87,.8,.75,.7,.6,.54,.45,.39,.33,.3,.2,.1,.05,0,0,0],lazinessMultiplier:[1,1/3,1/10,1/40,1/200,1/1e5,1/1e7,1/1e10,1/1e13,1/1e16,1/1e20,1/1e25,1/1e35,1/1e50,1/1e65,1/1e80,1/1e100],hyperchallengedMultiplier:[1,1.2,1.5,1.7,3,5,8,13,21,34,55,100,400,1600,7777,18888,88888],illiteracyPower:[1,.8,.7,.6,.5,.3,.2,.15,.1,.06,.04,.02,.01,.005,0,0,0],deflationMultiplier:[1,.3,.1,.03,.01,1/1e6,1/1e8,1/1e10,1/1e12,1/1e15,1/1e18,1/1e25,1/1e35,1/1e50,1/1e77,0,0],extinctionMultiplier:[1,.92,.86,.8,.74,.65,.55,.5,.45,.4,.35,.3,.1,0,0,0,0],droughtMultiplier:[1,5,25,200,1e4,1e7,1e11,1e16,1e22,1e30,1e40,1e55,1e80,1e120,1e177,1e200,1e250],financialcollapsePower:[1,.9,.7,.6,.5,.37,.3,.23,.18,.15,.12,.09,.03,.01,.007,7e-4,7e-5],corruptionPointMultipliers:[1,3,4,5,6,7,7.75,8.5,9.25,10,10.75,11.5,12.25,13,16,20,25,33,35],ascendBuildingProduction:{first:new f("0"),second:new f("0"),third:new f("0"),fourth:new f("0"),fifth:new f("0")},freeUpgradeAccelerator:0,freeUpgradeMultiplier:0,acceleratorMultiplier:1,multiplierMultiplier:1,constUpgradeCosts:[null,1,13,17,237,316,4216,5623,74989,1e10,1e24],globalConstantMult:new f("1"),autoTalismanTimer:0,autoChallengeTimerIncrement:0,corruptionTrigger:1,challenge15Rewards:{cube1:1,ascensions:1,coinExponent:1,taxes:1,obtainium:1,offering:1,accelerator:1,multiplier:1,runeExp:1,runeBonus:1,cube2:1,transcendChallengeReduction:1,reincarnationChallengeReduction:1,antSpeed:1,bonusAntLevel:1,cube3:1,talismanBonus:1,globalSpeed:1,blessingBonus:1,constantBonus:1,cube4:1,spiritBonus:1,score:1,quarks:1,hepteractUnlocked:0,cube5:1,powder:1,exponent:1,freeOrbs:0,ascensionSpeed:1},autoResetTimers:{prestige:0,transcension:0,reincarnation:0,ascension:0},timeMultiplier:1,upgradeMultiplier:1,historyCountMax:20,isEvent:!1,shopEnhanceVision:!1,ambrosiaTimer:0,TIME_PER_AMBROSIA:600,ambrosiaCurrStats:{ambrosiaAdditiveLuckMult:1,ambrosiaLuck:100,ambrosiaBlueberries:0,ambrosiaGenerationSpeed:1},currentSingChallenge:void 0},w0=O({},i);var GC={antspecies1:"Inceptus Formicidae",antspecies2:"Fortunae Formicidae",antspecies3:"Tributum Formicidae",antspecies4:"Celeritas Formicidae",antspecies5:"Multa Formicidae",antspecies6:"Sacrificium Formicidae",antspecies7:"Hic Formicidae",antspecies8:"Experientia Formicidae",antspecies9:"Praemoenio Formicidae",antspecies10:"Scientia Formicidae",antspecies11:"Phylacterium Formicidae",antspecies12:"Mortuus Est Formicidae"},gd=()=>e.currentChallenge.ascension!==15?1e5+_t(499e5,(e.antUpgrades[1]+i.bonusant2)/5e3*500/499):1e-4*(1e5+_t(499e5,(e.antUpgrades[1]+i.bonusant2)/5e3*500/499)),FC=[()=>d(f.pow(1.12+1/1e3*e.researches[101],e.antUpgrades[1-1]+i.bonusant1),2),()=>d(gd()),()=>d(.005+.995*Math.pow(.99,e.antUpgrades[3-1]+i.bonusant3),4),()=>d(100*(_t(20,(e.antUpgrades[4-1]+i.bonusant4)/1e3*20/19)-1),3),()=>d(100*(_t(40,(e.antUpgrades[5-1]+i.bonusant5)/1e3*40/39)-1),3),()=>d(1+Math.pow(e.antUpgrades[6-1]+i.bonusant6,.66),4),()=>d(Math.min(9999999,3*e.antUpgrades[7-1]+3*i.bonusant7),0,!0),()=>d(_t(999,1/1e4*Math.pow(e.antUpgrades[8-1]+i.bonusant8,1.1)),3),()=>d(1*Math.min(1e7,e.antUpgrades[9-1]+i.bonusant9),0,!0),()=>d(1+2*Math.pow((e.antUpgrades[10-1]+i.bonusant10)/50,.75),4),()=>d(1+2*(1-Math.pow(2,-(e.antUpgrades[11-1]+i.bonusant11)/125)),4),()=>d(ht(2,e.antUpgrades[12-1]+i.bonusant12,69),4)],M0,T0=t=>{$a(M0),M0=$t(()=>md(t),50)},md=t=>{if(i.currentTab!==6)return;let r=o("anttierdescription"),n=o("antprice"),a=o("antquantity"),s=o("generateant"),l="ants.costGalacticCrumbs",c="first",p;switch(r.textContent=u.t(`ants.descriptions.${t}`),t){case 1:l="ants.costParticles",c="first",p=d(i.antOneProduce,5);break;case 2:c="second",p=d(i.antTwoProduce,5);break;case 3:c="third",p=d(i.antThreeProduce,5);break;case 4:c="fourth",p=d(i.antFourProduce,5);break;case 5:c="fifth",p=d(i.antFiveProduce,5);break;case 6:c="sixth",p=d(i.antSixProduce,5);break;case 7:c="seventh",p=d(i.antSevenProduce,5);break;case 8:c="eighth",p=d(i.antEightProduce,5);break}s.textContent=u.t(`ants.generates.${t}`,{x:p}),n.textContent=u.t(l,{x:d(e[`${c}CostAnts`])}),a.textContent=u.t("ants.owned",{x:d(e[`${c}OwnedAnts`]),y:d(e[`${c}GeneratedAnts`],2)})},ei=(t,r,n)=>(--r,t.times(f.pow(i.antCostGrowth[n-1],r)).add(1*r)),Hs=(t,r,n)=>(--r,t.times(f.pow(i.antUpgradeCostIncreases[n-1],r))),fd=(t,r,n)=>{let a=Hn(e.antSacrificePoints);r=new f(r);let s=n===1?"reincarnationPoints":"antPoints",l=`${t}OwnedAnts`,c=e[l]+we(e[l]),p=c,g=ei(r,p,n);for(;e[s].gte(g);)p=p*4,g=ei(r,p,n);let m=Math.floor(p/8);for(;m>=we(p);)ei(r,p-m,n).lte(e[s])?m=Math.floor(m/2):p=p-Math.max(we(p),m);e.antMax||cC[v]&&e[`${i.ordinals[v+1]}OwnedAnts`]>0&&R(176+v);e.firstOwnedAnts>69e6&&(e.firstOwnedAnts=69e6)},hd=(t,r,n)=>{if(e.currentChallenge.ascension!==11){t=new f(t);let a=e.antUpgrades[n-1]+we(e.antUpgrades[n-1]),s=a,l=Hs(t,s,n);for(;e.antPoints.gte(l);)s=s*4,l=Hs(t,s,n);let c=Math.floor(s/8);for(;c>=we(s);)Hs(t,s-c,n).lte(e.antPoints)?c=Math.floor(c/2):s=s-Math.max(we(s),c);e.antMax||a{let r=o("antspecies"),n=o("antlevelbonus"),a=o("antupgradedescription"),s=o("antupgradecost"),l=o("antupgradeeffect"),c=GC[`antspecies${t}`],p=u.t(`ants.upgrades.${t}`),g=i[`bonusant${t}`],m=e.currentChallenge.ascension===11?999:0;r.childNodes[0].textContent=`${c} Level ${d(e.antUpgrades[t-1])}`,n.textContent=` [+${d(Math.min(e.antUpgrades[t-1]+m,g))}]`,a.textContent=p,s.textContent=u.t("ants.costGalacticCrumbs",{x:d(f.pow(i.antUpgradeCostIncreases[t-1],e.antUpgrades[t-1]*i.extinctionMultiplier[e.usedCorruptions[10]]).times(i.antUpgradeBaseCost[t-1]))}),l.textContent=u.t(`ants.rewards.${t}`,{x:FC[t-1]()})},Hn=t=>{let r=Math.pow(1+t/5e3,2);return r*=1+.2*Math.log(1+t)/Math.log(10),e.achievements[174]>0&&(r*=1+.4*Math.log(1+t)/Math.log(10)),Math.min(1e300,r)},of=()=>{let t=yd();o("antSacrificeSummary").style.display="block",o("ELO").innerHTML=u.t("ants.yourAntELO",{x:d(i.antELO,2),y:d(i.effectiveELO,2,!1)}),o("SacrificeMultiplier").innerHTML=u.t("ants.antSacMultiplier",{y:d(Hn(e.antSacrificePoints),3,!1),x:d(Hn(e.antSacrificePoints+t.antSacrificePoints),3,!1)}),o("SacrificeUpgradeMultiplier").innerHTML=u.t("ants.upgradeMultiplier",{x:d(i.upgradeMultiplier,3,!0)}),o("SacrificeTimeMultiplier").innerHTML=u.t("ants.timeMultiplier",{x:d(i.timeMultiplier,3,!0)}),o("antSacrificeOffering").textContent=`+${d(t.offerings)}`,o("antSacrificeObtainium").textContent=`+${d(t.obtainium)}`,e.challengecompletions[9]>0&&(o("antSacrificeTalismanShard").textContent=u.t("ants.elo",{x:d(t.talismanShards),y:500}),o("antSacrificeCommonFragment").textContent=u.t("ants.elo",{x:d(t.commonFragments),y:750}),o("antSacrificeUncommonFragment").textContent=u.t("ants.elo",{x:d(t.uncommonFragments),y:1e3}),o("antSacrificeRareFragment").textContent=u.t("ants.elo",{x:d(t.rareFragments),y:1500}),o("antSacrificeEpicFragment").textContent=u.t("ants.elo",{x:d(t.epicFragments),y:2e3}),o("antSacrificeLegendaryFragment").textContent=u.t("ants.elo",{x:d(t.legendaryFragments),y:3e3}),o("antSacrificeMythicalFragment").textContent=u.t("ants.elo",{x:d(t.mythicalFragments),y:5e3}))},Ns=async(t=!1)=>{let r=!0;if(e.antPoints.gte("1e40")&&(!t&&e.toggles[32]&&(r=await ve(u.t("ants.autoReset"))),r)){let n=e.antSacrificePoints,a=yd();e.antSacrificePoints+=a.antSacrificePoints,e.runeshards+=a.offerings,e.currentChallenge.ascension!==14&&(e.researchPoints+=a.obtainium);let s={date:Date.now(),seconds:e.antSacrificeTimer,kind:"antsacrifice",offerings:a.offerings,obtainium:a.obtainium,antSacrificePointsBefore:n,antSacrificePointsAfter:e.antSacrificePoints,baseELO:i.antELO,effectiveELO:i.effectiveELO,crumbs:e.antPoints.toString(),crumbsPerSecond:i.antOneProduce.toString()};if(e.challengecompletions[9]>0&&(e.talismanShards=Math.min(1e300,e.talismanShards+a.talismanShards),e.commonFragments=Math.min(1e300,e.commonFragments+a.commonFragments),e.uncommonFragments=Math.min(1e300,e.uncommonFragments+a.uncommonFragments),e.rareFragments=Math.min(1e300,e.rareFragments+a.rareFragments),e.epicFragments=Math.min(1e300,e.epicFragments+a.epicFragments),e.legendaryFragments=Math.min(1e300,e.legendaryFragments+a.legendaryFragments),e.mythicalFragments=Math.min(1e300,e.mythicalFragments+a.mythicalFragments)),Ku(),e.antSacrificeTimer=0,e.antSacrificeTimerReal=0,zt(),e.autoResearch>0&&e.autoResearchToggle){let l=e.autoResearch===200?.01:0;Gr(e.autoResearch,!0,l)}Jn(),Gn("ants",s)}e.mythicalFragments>=1e11&&e.currentChallenge.ascension===14&&e.achievements[248]<1&&R(248)},S0=()=>{let t=(l,c)=>e.antPoints.gte(Hs(new f(i.antUpgradeBaseCost[l-1]),e.antUpgrades[l-1]+1,l).times(c)),r=[176,176,177,178,178,179,180,180,181,182,182,145],n=["100","100","1000","1000","1e5","1e6","1e8","1e11","1e15","1e20","1e40","1e100"];if(e.currentChallenge.ascension!==11)for(let l=1;l<=r.length;l++)(l===12?e.researches[r[l-1]]:e.achievements[r[l-1]])&&t(l,2)&&hd(n[l-1],!0,l);let a=[173,176,177,178,179,180,181,182],s=["1e700","3","100","10000","1e12","1e36","1e100","1e300"];for(let l=1;l<=a.length;l++){let c=l===1?e.reincarnationPoints:e.antPoints,p=l===1?1:2;e.achievements[a[l-1]]&&c.gte(e[`${i.ordinals[l-1]}CostAnts`].times(p))&&fd(i.ordinals[l-1],s[l-1],l)}};function k0(t){var r;for(let n=0;n<227;n++)r=t[n]&2147483648|t[n+1]&2147483647,t[n]=t[n+397]^r>>>1^(r&1)*2567483615;for(let n=227;n<623;n++)r=t[n]&2147483648|t[n+1]&2147483647,t[n]=t[n-227]^r>>>1^(r&1)*2567483615;return r=t[623]&2147483648|t[0]&2147483647,t[623]=t[396]^r>>>1^(r&1)*2567483615,t}function QC(t){for(var r=L0(19650218),n=t.length,a=1,s=0,l=624>n?624:n;l;l--){let c=r[a-1]^r[a-1]>>>30;r[a]=(r[a]^(((c&4294901760)>>>16)*1664525<<16)+(c&65535)*1664525)+t[s]+s,a++,s++,a>=624&&(r[0]=r[623],a=1),s>=n&&(s=0)}for(l=623;l;l--){let c=r[a-1]^r[a-1]>>>30;r[a]=(r[a]^(((c&4294901760)>>>16)*1566083941<<16)+(c&65535)*1566083941)-a,a++,a>=624&&(r[0]=r[623],a=1)}return r[0]=2147483648,r}function L0(t){var r=new Array(624);r[0]=t;for(let n=1;n<624;n++){let a=r[n-1]^r[n-1]>>>30;r[n]=(((a&4294901760)>>>16)*1812433253<<16)+(a&65535)*1812433253+n}return r}function qC(t=Date.now()){var r;return Array.isArray(t)?r=QC(t):r=L0(t),k0(r)}function P0(t){var r=qC(t),n=0,a=()=>{let l;return n>=624&&(r=k0(r),n=0),l=r[n++],l^=l>>>11,l^=l<<7&2636928640,l^=l<<15&4022730752,l^=l>>>18,l>>>0},s={genrand_int32:()=>a(),genrand_int31:()=>a()>>>1,genrand_real1:()=>a()*(1/4294967295),genrand_real2:()=>a()*(1/4294967296),genrand_real3:()=>(a()+.5)*(1/4294967296),genrand_res53:()=>{let l=a()>>>5,c=a()>>>6;return(l*67108864+c)*(1/9007199254740992)},randomNumber:()=>a(),random31Bit:()=>s.genrand_int31(),randomInclusive:()=>s.genrand_real1(),random:()=>s.genrand_real2(),randomExclusive:()=>s.genrand_real3(),random53Bit:()=>s.genrand_res53()};return s}var Ya=t=>P0(e.seed[t]++).random(),vd=(t,r,n)=>Math.floor(Ya(t)*(n-r+1)+r),ta={PromoCodes:0,Ambrosia:1};var $e=(t,r=0)=>{let n=t==="ascension"||t==="quarks"||t==="goldenQuarks"||t==="singularity"||t==="octeracts"||t==="autoPotion"||t==="ambrosia"?1:We().mult;switch(t){case"prestige":{e.prestigecounter+=r*n;break}case"transcension":{e.transcendcounter+=r*n;break}case"reincarnation":{e.reincarnationcounter+=r*n;break}case"ascension":{let a=e.singularityUpgrades.oneMind.getEffect().bonus?10:Br();e.ascensionCounter+=r*n*a,e.ascensionCounterReal+=r*n;break}case"singularity":{e.ascensionCounterRealReal+=r,e.singularityCounter+=r*n,e.insideSingularityChallenge?e.singChallengeTimer+=r*n:e.singChallengeTimer=0;break}case"quarks":{let a=Bt().maxTime;e.quarkstimer+=r*n,e.quarkstimer=e.quarkstimer>a?a:e.quarkstimer;break}case"goldenQuarks":{if(+e.singularityUpgrades.goldenQuarks3.getEffect().bonus==0)return;e.goldenQuarksTimer+=r*n,e.goldenQuarksTimer=e.goldenQuarksTimer>3600*168?3600*168:e.goldenQuarksTimer;break}case"octeracts":{if(e.singularityUpgrades.octeractUnlock.getEffect().bonus)e.octeractTimer+=r*n;else return;if(e.octeractTimer>=1){let a=e.octeractTimer-e.octeractTimer%1;e.octeractTimer%=1;let s=Wr();if(e.wowOcteracts+=a*s,e.totalWowOcteracts+=a*s,e.highestSingularityCount>=160){let l=[160,173,185,194,204,210,219,229,240,249],c=1e-6,p=0;for(let g of l)e.highestSingularityCount>=g&&(p+=1);for(let g=0;g0,s=e.toggles[43]&&e.shopUpgrades.obtainiumPotion>0;e.autoPotionTimer+=r*n,e.autoPotionTimerObtainium+=r*n;let l=180*Math.pow(1.03,-e.highestSingularityCount)/+e.octeractUpgrades.octeractAutoPotionSpeed.getEffect().bonus,c=a?Math.min(1,l)/20:l,p=s?Math.min(1,l)/20:l;if(e.autoPotionTimer>=c){let g=(e.autoPotionTimer-e.autoPotionTimer%c)/c;e.autoPotionTimer%=c,mn("offeringPotion",!0,g,a)}if(e.autoPotionTimerObtainium>=p){let g=(e.autoPotionTimerObtainium-e.autoPotionTimerObtainium%p)/p;e.autoPotionTimerObtainium%=p,mn("obtainiumPotion",!0,g,s)}}break}case"ambrosia":{if(i.ambrosiaCurrStats.ambrosiaGenerationSpeed===0||(i.ambrosiaTimer+=r*n,i.ambrosiaTimer<.125))break;let s=i.ambrosiaCurrStats.ambrosiaLuck,l=i.ambrosiaCurrStats.ambrosiaGenerationSpeed;e.blueberryTime+=Math.floor(8*i.ambrosiaTimer)/8*l,e.ultimateProgress+=Math.floor(8*i.ambrosiaTimer)/8*Math.min(l,Math.pow(1e3*l,1/2)),i.ambrosiaTimer%=.125;let c=Ls(),p=1/2+(3/5-1/2)*+(e.singularityChallenges.noAmbrosiaUpgrades.completions>=15)+(2/3-3/5)*+(e.singularityChallenges.noAmbrosiaUpgrades.completions>=19)+(3/4-2/3)*+(e.singularityChallenges.noAmbrosiaUpgrades.completions>=20);for(;e.blueberryTime>=c;){let g=Ya(ta.Ambrosia),m=Math.floor(s/100),h=g1e6&&(e.ultimatePixels+=Math.floor(e.ultimateProgress/1e6),e.cubeUpgrades[79]>0&&(e.cubeUpgradeRedBarFilled+=Math.floor(e.ultimateProgress/1e6)),e.ultimateProgress-=1e6*Math.floor(e.ultimateProgress/1e6)),ks()}}},Ur=(t,r)=>{let n=t==="runeSacrifice"||t==="addOfferings"?1:We().mult;switch(t){case"addObtainium":{if(e.currentChallenge.ascension===14)break;Er();let a=Io();e.researchPoints=Math.min(1e300,e.researchPoints+a*r*n),i.currentTab===5&&Cl();break}case"addOfferings":i.autoOfferingCounter+=r,e.runeshards=Math.min(1e300,e.runeshards+Math.floor(i.autoOfferingCounter)),i.autoOfferingCounter%=1;break;case"runeSacrifice":if(e.sacrificeTimer+=r,e.sacrificeTimer>=1&&isFinite(e.runeshards)&&e.runeshards>0){if(e.highestSingularityCount>=15){let a=4;e.toggles[36]&&(Is("Blessings",100/a,!0),a--),e.toggles[37]&&(Is("Spirits",100/a,!0),a--)}if(e.autoBuyFragment&&e.highestSingularityCount>=40&&e.cubeUpgrades[51]>0&&nl(),e.cubeUpgrades[20]===1){let a=e.highestSingularityCount>=50?7:e.highestSingularityCount>=30?6:5,s=a-cm(a);if(s>0){let l=Math.floor(e.runeshards/s/2);for(let c=0;c=it(c+1)||va(c+1,!0,l)}}else{let a=e.autoSacrifice;va(a,!0,0)}e.sacrificeTimer%=1}break;case"antSacrifice":{e.antSacrificeTimer+=r*n,e.antSacrificeTimerReal+=r,(e.autoAntSacrificeMode===2?e.antSacrificeTimerReal:e.antSacrificeTimer)>=e.autoAntSacTimer&&e.antSacrificeTimerReal>.1&&e.researches[124]===1&&e.autoAntSacrifice&&e.antPoints.gte("1e40")&&Ns(!0);break}}};var jC=new Intl.DateTimeFormat("EN-GB",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",hour12:!1,minute:"2-digit",second:"2-digit"}),VC=new Intl.DateTimeFormat("EN-GB",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",hour12:!0,minute:"2-digit",second:"2-digit"}),WC=36e5,at=(t="default",r=!1)=>{let a=(r?VC:jC).formatToParts(new Date).filter(p=>p.type!=="literal").map(p=>({[p.type]:p.value})),s=Object.assign({},...a),l=r?` ${s.dayPeriod.toUpperCase()}`:"",c=["sun","mon","tue","wed","thu","fri","sat"];switch(t){case"default":return`${s.year}-${s.month}-${s.day} ${s.hour}_${s.minute}_${s.second}${l}`;case"short":return`${s.year}${s.month}${s.day}${s.hour}${s.minute}${s.second}`;case"year":return`${s.year}`;case"month":return`${s.month}`;case"day":return`${s.day}`;case"hour":return`${s.hour}`;case"minute":return`${s.minute}`;case"second":return`${s.second}`;case"period":return`${s.dayPeriod.toUpperCase()}`;case"weekday":return`${c[new Date().getUTCDay()]}`;default:return t}},O0=t=>{let r=t.value.slice(0,100);e.saveString=r===""?M.saveString:ao(r),o("saveStringInput").value=e.saveString},KC=()=>{var t,r;return(r=(t=/[\d?=.]+/.exec(tr))==null?void 0:t[0])!=null?r:tr},ti=()=>{let r=e.saveString.replace(/\$(.*?)\$/g,(n,a)=>{switch(a){case"VERSION":return`v${tr}`;case"TIME":return at();case"TIME12":return at(void 0,!0);case"SING":return`Singularity ${e.singularityCount}`;case"SINGS":return`${e.singularityCount}`;case"VER":return KC();case"TIMES":return at("short");case"YEAR":return at("year");case"Y":return at("year");case"MONTH":return at("month");case"M":return at("month");case"DAY":return at("day");case"D":return at("day");case"HOUR":return at("hour");case"H":return at("hour");case"H12":return at("hour",!0);case"MINUTE":return at("minute");case"MI":return at("minute");case"SECOND":return at("second");case"S":return at("second");case"PERIOD":return at("period",!0);case"P":return at("period",!0);case"WEEKDAY":return at("weekday");case"W":return at("weekday");case"DATE":return`${Date.now()}`;case"DATES":return`${Math.floor(Date.now()/1e3)}`;case"QUARK":return`${Math.floor(Number(e.worlds))}`;case"QUARKS":return d(Number(e.worlds));case"GQ":return`${Math.floor(e.goldenQuarks)}`;case"GQS":return d(e.goldenQuarks);case"STAGE":return Iu(0);default:return`${a}`}});return ao(r)},Cd=async(t,r)=>{if(an("saveType").checked)try{await navigator.clipboard.writeText(t),o("exportinfo").textContent=u.t("importexport.copiedSave")}catch(a){let s=document.createElement("textarea");s.setAttribute("style","top: 0; left: 0; position: fixed;"),s.setAttribute("data-clipboard-text",t),document.body.appendChild(s),s.focus(),s.select();let l=new A0.default(s),c=()=>{l.destroy(),document.body.removeChild(s)};l.on("success",()=>{o("exportinfo").textContent=u.t("importexport.copiedSave"),c()}),l.on("error",()=>{o("exportinfo").textContent=u.t("importexport.exportFailed"),P(u.t("importexport.unableCopySave")).finally(c)})}else{let a=document.createElement("a");a.setAttribute("href",`data:text/plain;charset=utf-8,${t}`),a.setAttribute("download",r),a.setAttribute("id","downloadSave"),document.body.appendChild(a),a.click(),document.body.removeChild(a),o("exportinfo").textContent=u.t("importexport.copiedFile")}setTimeout(()=>o("exportinfo").textContent="",15e3)},U0=async(t=!0)=>{if(e.offlinetick=Date.now(),t){e.lastExportedSave=Date.now();let n=Bt(),a=1;a*=1+rr()/100,a*=e.highestSingularityCount>=100?1+e.highestSingularityCount/50:1,+e.singularityUpgrades.goldenQuarks3.getEffect().bonus>0&&(e.goldenQuarks+=Math.floor(e.goldenQuarksTimer/(3600/+e.singularityUpgrades.goldenQuarks3.getEffect().bonus))*a,e.goldenQuarksTimer=e.goldenQuarksTimer%(3600/+e.singularityUpgrades.goldenQuarks3.getEffect().bonus)),n.gain>=1&&(e.worlds.add(n.gain),e.quarkstimer=e.quarkstimer%(3600/n.perHour))}if(!yr())return;let r=localStorage.getItem("Synergysave2");if(!r)return P("How?");await Cd(r,ti()),setTimeout(()=>o("exportinfo").textContent="",15e3)},B0=async()=>{await P(u.t("importexport.reloadDeletePrompt")),await xd(!0)},xd=async(t=!0)=>{if(!t){let n=window.crypto.getRandomValues(new Uint16Array(1))[0]%16,a=window.crypto.getRandomValues(new Uint16Array(1))[0]%16,s=await Pe(u.t("importexport.resetPrompt",{a:n,b:a,sum:n+a}));if(s===null||Number(s)!==n+a)return P(u.t("importexport.wrongAnswer"))}let r=xs.safeParse(M);hr(0),Ce(0,{page:0}),Ce(3,{page:0}),Ce(4,{page:0}),Ce(7,{page:0}),Ce(8,{page:0}),Ce(9,{page:0}),Ce(10,{page:0}),Ga(ls(JSON.stringify(r.data)),!0)},wd=async(t,r)=>{let n=t.target,a=n.files[0],s="";if(typeof Blob.prototype.text=="function")s=await a.text();else{let l=new FileReader;l.readAsText(a),s=await new Promise(p=>{l.addEventListener("load",()=>p(l.result.toString()))})}return n.value="",YC(a.lastModified),r(s)},Ga=(t,r=!1)=>{if(typeof t!="string")return P(u.t("importexport.unableImport"));let n=E0.default.decompressFromBase64(t),a=JSON.parse(n||atob(t));if(a.exporttest==="YES!"||a.exporttest===!0||a.exporttest===!1&&!1||a.exporttest==="NO!"&&!1){let s=ls(JSON.stringify(a));if(s===null)return P(u.t("importexport.unableImport"));localStorage.setItem("Synergysave2",s),Md(r);return}else return P(u.t("importexport.loadTestInLive"))},ri=t=>{let r=o("promocodeinfo"),n=`'${t}': `,a=0;switch(t){case"daily":e.dailyCodeUsed?n+=u.t("importexport.daily0Uses"):n+=u.t("importexport.daily1Uses");break;case"add":a=zn(),a===0?n+=u.t("importexport.add0Uses",{x:0,y:d(vl(),0)}):a!==1?n+=u.t("importexport.addUses",{x:a}):n+=u.t("importexport.add1Uses",{x:a});break;case"time":a=I0(),a===0?n+=u.t("importexport.add0Uses",{x:0,y:d(zC(),0)}):n+=u.t("importexport.timeMultiplier",{x:a,y:d(N0(),2,!0)});break;default:n=""}r.textContent=n},R0=async()=>{let t=await Pe(u.t("importexport.promocodePrompt"));wn(t)},wn=async(t,r)=>{let n=o("promocodeinfo");if(t===null)return P(u.t("importexport.comeBackSoon"));if(t==="23andme"&&!e.codes.get(48)&&i.isEvent)return e.dailyCodeUsed?(e.codes.set(48,!0),e.quarkstimer=Bt().maxTime,e.goldenQuarksTimer=3600*24,$e("ascension",8*3600),e.dailyCodeUsed=!1,(e.challenge15Exponent>=1e15||e.highestSingularityCount>0)&&(e.hepteractCrafts.quark.CAP*=2,e.hepteractCrafts.quark.BAL+=Math.min(1e13,e.hepteractCrafts.quark.CAP/2)),e.highestSingularityCount>0&&(e.singularityUpgrades.goldenQuarks1.freeLevels+=1+Math.floor(e.highestSingularityCount/10),e.singularityUpgrades.goldenQuarks2.freeLevels+=1+Math.floor(e.highestSingularityCount/10),e.singularityUpgrades.goldenQuarks3.freeLevels+=1+Math.floor(e.highestSingularityCount/10),e.singularityUpgrades.octeractUnlock.getEffect().bonus&&(e.octeractUpgrades.octeractImprovedQuarkHept.freeLevels+=.05)),P(`Not sponsored by the company! Your Quark timer(s) have been replenished and you have been given 8 real life hours of Ascension progress! Your daily code has also been reset for you.
+ `}getSubs(){return J(this,Ne)}appendButton(...n){for(let a of n)J(this,Ne).push(a),this.appendChild(a);St(this,Jt,J(this,Ne)[0]),mi(this,ql,C0).call(this)}getCurrentTab(){return J(this,Jt)}setNextTab(){var a;let n=J(this,Ne).indexOf(J(this,Jt));return St(this,Jt,(a=J(this,Ne)[n+1])!=null?a:J(this,Ne)[0]),J(this,Jt)}setPreviousTab(){var a;let n=J(this,Ne).indexOf(J(this,Jt));return St(this,Jt,(a=J(this,Ne)[n-1])!=null?a:J(this,Ne)[J(this,Ne).length-1]),J(this,Jt)}getNextTab(n=J(this,Jt)){var s;let a=J(this,Ne).indexOf(n);return(s=J(this,Ne)[a+1])!=null?s:J(this,Ne)[0]}getPreviousTab(n=J(this,Jt)){var s;let a=J(this,Ne).indexOf(n);return(s=J(this,Ne)[a-1])!=null?s:J(this,Ne)[J(this,Ne).length-1]}reappend(){this.replaceChildren();for(let n of J(this,Ne))this.appendChild(n);J(this,Ne).forEach(n=>n.resetHidden())}};Ne=new WeakMap,Jt=new WeakMap,ql=new WeakSet,C0=function(){let n=null,a=g=>{sn(g.target instanceof HTMLElement),g.target.style.opacity="0.4",n=g.target,g.dataTransfer.effectAllowed="move"},s=g=>{g.target instanceof HTMLElement&&g.target.classList.add("over")},l=g=>{g.target instanceof HTMLElement&&g.target.classList.remove("over")},c=g=>{if(g.stopPropagation(),n!==g.target&&n!==null){this.insertBefore(n,g.target);let m=J(this,Ne).indexOf(n),h=J(this,Ne).indexOf(g.target);J(this,Ne).splice(h,0,J(this,Ne)[m]),J(this,Ne).splice(J(this,Ne).indexOf(n,m),1)}return!1},p=g=>{sn(g.target instanceof HTMLElement),g.target.style.opacity="1",J(this,Ne).forEach(m=>{m.classList.remove("over")})};J(this,Ne).forEach(g=>{g.addEventListener("dragstart",a,!1),g.addEventListener("dragenter",s,!1),g.addEventListener("dragover",c,!1),g.addEventListener("dragleave",l,!1),g.addEventListener("drop",c,!1),g.addEventListener("dragend",p,!1)})};var Yo,ea,Jo,Ds,yt=class extends HTMLButtonElement{constructor(n){super();Tt(this,Yo,()=>!0);Tt(this,ea,void 0);Tt(this,Jo,!1);Tt(this,Ds,!1);this.id=n.id,n.class&&this.classList.add(n.class),n.i18n&&this.setAttribute("i18n",n.i18n),n.borderColor&&(this.style.borderColor=n.borderColor),this.addEventListener("click",()=>{J(this,Jo)&&jo.has("ControlLeft")&&jo.has("KeyX")?i.currentTab!==J(this,ea)&&(tt.removeChild(this),St(this,Ds,!0)):(hr(J(this,ea)),jl())})}setUnlockedState(n){return St(this,Yo,n),this}isUnlocked(){return J(this,Yo).call(this)&&!J(this,Ds)}setType(n){return St(this,ea,n),this}getType(){return J(this,ea)}getSubTabs(){return v0[J(this,ea)]}makeDraggable(){return this.setAttribute("draggable","true"),this}makeRemoveable(){return St(this,Jo,!0),this}resetHidden(){St(this,Ds,!1)}};Yo=new WeakMap,ea=new WeakMap,Jo=new WeakMap,Ds=new WeakMap;customElements.define("tab-row",Ql,{extends:"div"});customElements.define("sub-tab",yt,{extends:"button"});var tt=new Ql,y0;(y0=document.getElementsByClassName("navbar").item(0))==null||y0.appendChild(tt);tt.appendButton(new yt({id:"buildingstab",i18n:"tabs.main.buildings"}).setType(0).makeDraggable().makeRemoveable(),new yt({id:"upgradestab",i18n:"tabs.main.upgrades"}).setType(1).makeDraggable().makeRemoveable(),new yt({id:"achievementstab",i18n:"tabs.main.achievements",class:"coinunlock4"}).setUnlockedState(()=>e.unlocks.coinfour).setType(2).makeDraggable().makeRemoveable(),new yt({class:"prestigeunlock",id:"runestab",i18n:"tabs.main.runes"}).setUnlockedState(()=>e.unlocks.prestige).setType(3).makeDraggable().makeRemoveable(),new yt({class:"transcendunlock",id:"challengetab",i18n:"tabs.main.challenges"}).setUnlockedState(()=>e.unlocks.transcend).setType(4).makeDraggable().makeRemoveable(),new yt({class:"reincarnationunlock",id:"researchtab",i18n:"tabs.main.research"}).setUnlockedState(()=>e.unlocks.reincarnate).setType(5).makeDraggable().makeRemoveable(),new yt({class:"chal8",id:"anttab",i18n:"tabs.main.antHill"}).setUnlockedState(()=>e.achievements[127]>0).setType(6).makeDraggable().makeRemoveable(),new yt({class:"chal10",id:"cubetab",i18n:"tabs.main.wowCubes"}).setUnlockedState(()=>e.achievements[141]>0).setType(7).makeDraggable().makeRemoveable(),new yt({class:"chal11",id:"traitstab",i18n:"tabs.main.corruption"}).setUnlockedState(()=>e.challengecompletions[11]>0).setType(8).makeDraggable().makeRemoveable(),new yt({class:"singularity",id:"singularitytab",i18n:"tabs.main.singularity"}).setUnlockedState(()=>e.highestSingularityCount>0).setType(9).makeDraggable().makeRemoveable(),new yt({id:"settingstab",i18n:"tabs.main.settings"}).setType(10).makeDraggable(),new yt({class:"reincarnationunlock",id:"shoptab",i18n:"tabs.main.shop"}).setUnlockedState(()=>e.unlocks.reincarnate||e.highestSingularityCount>0).setType(11).makeDraggable().makeRemoveable(),new yt({class:"isEvent",id:"eventtab",i18n:"tabs.main.unsmith"}).setType(12).makeDraggable().makeRemoveable(),new yt({id:"pseudoCoinstab",i18n:"tabs.main.purchase"}).setType(13).makeDraggable());var Qo=(t=1,r=!1)=>{let n=t===1?tt.getNextTab():tt.getPreviousTab();for(;!(n!=null&&n.isUnlocked());)n=t===1?tt.getNextTab(n):tt.getPreviousTab(n);r?Ce(n.getType(),{step:t}):hr(n.getType(),t)},hr=(t,r)=>{var a;if(r===1)tt.setNextTab();else if(r===-1)tt.setPreviousTab();else for(;tt.getCurrentTab().getType()!==t;)tt.setNextTab();for(;!tt.getCurrentTab().isUnlocked();)r===1||r===void 0?tt.setNextTab():tt.setPreviousTab();i.currentTab=tt.getCurrentTab().getType(),e.tabnumber=0,Be(),x0(),(a=document.activeElement)==null||a.blur();let n=v0[i.currentTab].subTabList;for(let s=0;s{var c;let a=tt.getCurrentTab();a.getType()!==t&&(hr(a.getType()),a=tt.getCurrentTab());let s=a.getSubTabs();if(!a.isUnlocked()||s.subTabList.length===0)return;r!==void 0?e.subtabNumber=_i(r,0,s.subTabList.length-1):e.subtabNumber=_i(e.subtabNumber+n,0,s.subTabList.length-1);let l=s.subTabList[e.subtabNumber];for(;!l.unlocked;)e.subtabNumber=_i(e.subtabNumber+(n!=null?n:1),0,s.subTabList.length-1),l=s.subTabList[e.subtabNumber];if(l.unlocked){for(let p of s.subTabList){if(!p.buttonID)continue;let g=o(p.buttonID);p===l?g.classList.add("active-subtab"):g.classList.remove("active-subtab")}(c=s.tabSwitcher)==null||c.call(s)(l.subTabID),a.getType()===9&&r===3&&(e.visitedAmbrosiaSubtab=!0,i.ambrosiaCurrStats.ambrosiaGenerationSpeed=Qe().value)}};function Bf(t){let r=tt.getCurrentTab();for(;r.getType()!==t;)r=tt.setNextTab();return r.getSubTabs().subTabList.length}var i={runediv:[1.5,2,3,5,8,1,1],runeexpbase:[1,4,9,16,1e3,1e75,1e256],runeMaxLvl:4e4,upgradeCosts:[0,6,7,8,10,12,20,25,30,35,45,55,75,110,150,200,250,500,750,1e3,1500,2,3,4,5,6,7,10,13,20,30,150,400,800,1600,3200,1e4,2e4,5e4,1e5,2e5,1,2,3,5,6,7,42,65,87,150,300,500,1e3,1500,2e3,3e3,6e3,12e3,25e3,75e3,0,1,2,2,3,5,6,10,15,22,30,37,45,52,60,1900,2500,3e3,7482,21397,3,6,9,12,15,20,30,6,8,8,10,13,60,1,2,4,8,16,25,40,12,16,20,30,50,500,1250,5e3,25e3,125e3,1500,7500,3e4,15e4,1e6,250,1e3,5e3,25e3,125e3,1e3,1e6,1e9,1e12,1e15],crystalUpgradesCost:[6,15,20,40,100,200,500,1e3],crystalUpgradeCostIncrement:[8,15,20,40,100,200,500,1e3],researchBaseCosts:[1e200,1,1,1,1,1,1,100,1e4,1e6,1e8,2,200,2e4,2e6,2e8,4e4,4e8,10,1e5,1e9,100,100,1e4,2e3,2e5,40,200,50,5e3,2e7,777,7777,5e4,5e5,5e6,2e3,2e6,2e9,1e5,1e9,1,1,5,25,125,2,5,320,1280,25e8,10,2e3,4e5,8e7,2e9,5,400,1e4,3e6,9e8,100,2500,100,2e3,2e5,1,20,3e3,4e5,5e7,10,40,160,1e3,1e4,4e9,7e9,1e10,12e9,15e9,1e12,1e13,3e12,2e13,2e13,2e14,6e14,2e15,6e15,2e16,1e16,2e16,2e17,4e17,1e18,1e13,1e14,1e15,7777e15,7777e17,1e16,3e16,1e17,3e17,1e20,1e18,3e18,1e19,3e19,1e20,1e20,2e20,4e20,8e20,1e21,2e21,4e21,8e21,2e22,4e22,32e20,2e23,4e23,1e21,7777e29,5e8,5e12,5e16,5e20,5e24,1e25,2e25,4e25,8e25,1e26,4e26,8e26,1e27,2e27,1e28,5e9,5e15,5e21,5e27,1e28,1e29,2e29,4e29,8e29,1e27,2e30,4e30,8e30,1e31,2e31,5e31,1e32,2e32,4e32,8e32,1e33,2e33,4e33,8e33,1e34,3e34,1e35,3e35,6e35,1e36,3e36,1e37,3e37,1e38,3e38,1e39,3e39,1e40,3e40,1e50,3e41,1e42,3e42,6e42,1e43,3e43,1e44,3e44,1e45,3e45,2e46,6e46,2e47,6e47,1e64,6e48,2e49,1e50,1e51,4e56],researchMaxLevels:[0,1,1,1,1,1,10,10,10,10,10,10,10,10,10,10,10,10,1,1,1,25,25,25,20,20,10,10,10,10,10,12,12,10,10,10,10,10,10,1,1,1,1,1,1,1,1,1,1,1,1,10,10,10,10,10,20,20,20,20,20,1,5,4,5,5,10,10,10,10,10,1,1,1,1,1,10,50,50,50,50,10,1,20,20,20,20,20,20,20,10,20,20,20,20,1,20,5,5,3,2,10,10,10,10,1,10,10,20,25,25,50,50,50,50,100,10,10,10,100,100,25,25,25,1,5,10,10,10,10,1,10,10,10,1,1,25,25,25,15,1,10,10,10,10,1,10,1,6,10,1,25,25,1,15,1,10,10,10,1,1,10,10,10,10,1,25,25,25,15,1,10,10,10,1,1,10,3,6,10,5,25,25,1,15,1,20,20,20,1,1,20,1,50,50,10,25,25,25,15,1e5],ticker:0,costDivisor:1,freeAccelerator:0,totalAccelerator:0,freeAcceleratorBoost:0,totalAcceleratorBoost:0,acceleratorPower:1.1,acceleratorEffect:new f(1),acceleratorEffectDisplay:new f(1),generatorPower:new f(1),freeMultiplier:0,totalMultiplier:0,multiplierPower:2,multiplierEffect:new f(1),challengeOneLog:3,freeMultiplierBoost:0,totalMultiplierBoost:0,globalCoinMultiplier:new f(1),totalCoinOwned:0,prestigeMultiplier:new f(1),buildingPower:1,reincarnationMultiplier:new f(1),coinOneMulti:new f(1),coinTwoMulti:new f(1),coinThreeMulti:new f(1),coinFourMulti:new f(1),coinFiveMulti:new f(1),globalCrystalMultiplier:new f(1),globalMythosMultiplier:new f(.01),grandmasterMultiplier:new f(1),atomsMultiplier:new f(1),mythosBuildingPower:1,challengeThreeMultiplier:new f(1),totalMythosOwned:0,prestigePointGain:new f(0),challengeFivePower:1/3,transcendPointGain:new f(0),reincarnationPointGain:new f(0),produceFirst:new f(0),produceSecond:new f(0),produceThird:new f(0),produceFourth:new f(0),produceFifth:new f(0),produceTotal:new f(0),produceFirstDiamonds:new f(0),produceSecondDiamonds:new f(0),produceThirdDiamonds:new f(0),produceFourthDiamonds:new f(0),produceFifthDiamonds:new f(0),produceDiamonds:new f(0),produceFirstMythos:new f(0),produceSecondMythos:new f(0),produceThirdMythos:new f(0),produceFourthMythos:new f(0),produceFifthMythos:new f(0),produceMythos:new f(0),produceFirstParticles:new f(0),produceSecondParticles:new f(0),produceThirdParticles:new f(0),produceFourthParticles:new f(0),produceFifthParticles:new f(0),produceParticles:new f(0),producePerSecond:new f(0),producePerSecondDiamonds:new f(0),producePerSecondMythos:new f(0),producePerSecondParticles:new f(0),uFourteenMulti:new f(1),uFifteenMulti:new f(1),tuSevenMulti:1,currentTab:0,researchfiller1:"Hover over the grid to get details about researches!",researchfiller2:"Level: ",ordinals:["first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth","eleventh","twelfth","thirteenth","fourteenth","fifteenth","sixteenth","seventeenth","eighteenth","nineteenth","twentieth"],cardinals:["one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen","twenty","twentyone","twentytwo","twentythree","twentyfour","twentyfive","twentysix","twentyseven","twentyeight","twentynine","thirty","thirtyone","thirtytwo","thirtythree","thirtyfour"],challengeBaseRequirements:[10,20,60,100,200,125,500,7500,2e8,35e8],prestigeamount:1,taxdivisor:new f("1"),taxdivisorcheck:new f("1"),runemultiplierincrease:{one:1,two:1,three:1,four:1,five:1},mythosupgrade13:new f("1"),mythosupgrade14:new f("1"),mythosupgrade15:new f("1"),challengefocus:0,maxexponent:1e4,effectiveLevelMult:1,optimalOfferingTimer:600,optimalObtainiumTimer:3600,runeSum:0,globalAntMult:new f("1"),antMultiplier:new f("1"),antOneProduce:new f("1"),antTwoProduce:new f("1"),antThreeProduce:new f("1"),antFourProduce:new f("1"),antFiveProduce:new f("1"),antSixProduce:new f("1"),antSevenProduce:new f("1"),antEightProduce:new f("1"),antCostGrowth:[1e41,3,10,100,1e4,1e8,1e16,1e32],antUpgradeBaseCost:[100,100,1e3,1e3,1e5,1e6,1e8,1e11,1e15,1e20,1e40,1e100],antUpgradeCostIncreases:[10,10,10,10,100,100,100,100,1e3,1e3,1e3,1e100],bonusant1:0,bonusant2:0,bonusant3:0,bonusant4:0,bonusant5:0,bonusant6:0,bonusant7:0,bonusant8:0,bonusant9:0,bonusant10:0,bonusant11:0,bonusant12:0,rune1level:1,rune2level:1,rune3level:1,rune4level:1,rune5level:1,rune1Talisman:0,rune2Talisman:0,rune3Talisman:0,rune4Talisman:0,rune5Talisman:0,talisman1Effect:[null,0,0,0,0,0],talisman2Effect:[null,0,0,0,0,0],talisman3Effect:[null,0,0,0,0,0],talisman4Effect:[null,0,0,0,0,0],talisman5Effect:[null,0,0,0,0,0],talisman6Effect:[null,0,0,0,0,0],talisman7Effect:[null,0,0,0,0,0],talisman6Power:0,talisman7Quarks:0,runescreen:"runes",settingscreen:"settings",talismanResourceObtainiumCosts:[1e13,1e14,1e16,1e18,1e20,1e22,1e24],talismanResourceOfferingCosts:[100,1e4,1e5,1e6,1e7,1e8,1e9],talismanLevelCostMultiplier:[1,4,1e4,1e8,1e13,10,100],talismanPositiveModifier:[null,.75,1.5,2.25,3,3.75,4.5],talismanNegativeModifier:[null,0,0,0,0,0,0],commonTalismanEnhanceCost:[null,0,3e3,1e3,0,0,0,0],uncommonTalismanEnchanceCost:[null,0,1e4,3e3,1e3,0,0,0],rareTalismanEnchanceCost:[null,0,1e5,2e4,2e3,500,0,0],epicTalismanEnhanceCost:[null,0,2e6,2e5,2e4,2e3,1e3,0],legendaryTalismanEnchanceCost:[null,0,4e7,2e6,1e5,2e4,2500,200],mythicalTalismanEnchanceCost:[null,0,0,0,0,0,0,0],talismanRespec:1,obtainiumGain:0,mirrorTalismanStats:[null,1,1,1,1,1],antELO:0,effectiveELO:0,timeWarp:!1,blessingMultiplier:1,spiritMultiplier:1,runeBlessings:[0,0,0,0,0,0],runeSpirits:[0,0,0,0,0,0],effectiveRuneBlessingPower:[0,0,0,0,0,0],effectiveRuneSpiritPower:[0,0,0,0,0,0],blessingBaseCost:1e6,spiritBaseCost:1e20,triggerChallenge:0,prevReductionValue:-1,buildingSubTab:"coin",blessingbase:[null,1/500,1/5e3,1/2e3,1/750,1/200,1/1e4,1/5e3,1/10,1/1e4,1/1e3],blessingDRPower:[null,1/3,1/3,2/3,1/2,2/3,2,1/3,1/3,1/16,1/16],giftbase:[1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3],giftDRPower:[1/6,1/6,1/3,1/4,1/3,1,1/6,1/6,1/32,1/32],benedictionbase:[null,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3,1/1e3],benedictionDRPower:[null,1/12,1/12,1/6,1/8,1/6,1/2,1/12,1/12,1/64,1/64],platonicCubeBase:[2/4e6,1.5/4e6,1/4e6,1/8e4,1/1e4,1/1e5,1/1e4,1/1e4],platonicDRPower:[1/5,1/5,1/5,1/5,1/16,1/16,1/4,1/8],cubeBonusMultiplier:[null,1,1,1,1,1,1,1,1,1,1],tesseractBonusMultiplier:[null,1,1,1,1,1,1,1,1,1,1],hypercubeBonusMultiplier:[null,1,1,1,1,1,1,1,1,1,1],platonicBonusMultiplier:[1,1,1,1,1,1,1,1],autoOfferingCounter:0,researchOrderByCost:[],viscosityPower:[1,.87,.8,.75,.7,.6,.54,.45,.39,.33,.3,.2,.1,.05,0,0,0],lazinessMultiplier:[1,1/3,1/10,1/40,1/200,1/1e5,1/1e7,1/1e10,1/1e13,1/1e16,1/1e20,1/1e25,1/1e35,1/1e50,1/1e65,1/1e80,1/1e100],hyperchallengedMultiplier:[1,1.2,1.5,1.7,3,5,8,13,21,34,55,100,400,1600,7777,18888,88888],illiteracyPower:[1,.8,.7,.6,.5,.3,.2,.15,.1,.06,.04,.02,.01,.005,0,0,0],deflationMultiplier:[1,.3,.1,.03,.01,1/1e6,1/1e8,1/1e10,1/1e12,1/1e15,1/1e18,1/1e25,1/1e35,1/1e50,1/1e77,0,0],extinctionMultiplier:[1,.92,.86,.8,.74,.65,.55,.5,.45,.4,.35,.3,.1,0,0,0,0],droughtMultiplier:[1,5,25,200,1e4,1e7,1e11,1e16,1e22,1e30,1e40,1e55,1e80,1e120,1e177,1e200,1e250],financialcollapsePower:[1,.9,.7,.6,.5,.37,.3,.23,.18,.15,.12,.09,.03,.01,.007,7e-4,7e-5],corruptionPointMultipliers:[1,3,4,5,6,7,7.75,8.5,9.25,10,10.75,11.5,12.25,13,16,20,25,33,35],ascendBuildingProduction:{first:new f("0"),second:new f("0"),third:new f("0"),fourth:new f("0"),fifth:new f("0")},freeUpgradeAccelerator:0,freeUpgradeMultiplier:0,acceleratorMultiplier:1,multiplierMultiplier:1,constUpgradeCosts:[null,1,13,17,237,316,4216,5623,74989,1e10,1e24],globalConstantMult:new f("1"),autoTalismanTimer:0,autoChallengeTimerIncrement:0,corruptionTrigger:1,challenge15Rewards:{cube1:1,ascensions:1,coinExponent:1,taxes:1,obtainium:1,offering:1,accelerator:1,multiplier:1,runeExp:1,runeBonus:1,cube2:1,transcendChallengeReduction:1,reincarnationChallengeReduction:1,antSpeed:1,bonusAntLevel:1,cube3:1,talismanBonus:1,globalSpeed:1,blessingBonus:1,constantBonus:1,cube4:1,spiritBonus:1,score:1,quarks:1,hepteractUnlocked:0,cube5:1,powder:1,exponent:1,freeOrbs:0,ascensionSpeed:1},autoResetTimers:{prestige:0,transcension:0,reincarnation:0,ascension:0},timeMultiplier:1,upgradeMultiplier:1,historyCountMax:20,isEvent:!1,shopEnhanceVision:!1,ambrosiaTimer:0,TIME_PER_AMBROSIA:600,ambrosiaCurrStats:{ambrosiaAdditiveLuckMult:1,ambrosiaLuck:100,ambrosiaBlueberries:0,ambrosiaGenerationSpeed:1},currentSingChallenge:void 0},w0=O({},i);var GC={antspecies1:"Inceptus Formicidae",antspecies2:"Fortunae Formicidae",antspecies3:"Tributum Formicidae",antspecies4:"Celeritas Formicidae",antspecies5:"Multa Formicidae",antspecies6:"Sacrificium Formicidae",antspecies7:"Hic Formicidae",antspecies8:"Experientia Formicidae",antspecies9:"Praemoenio Formicidae",antspecies10:"Scientia Formicidae",antspecies11:"Phylacterium Formicidae",antspecies12:"Mortuus Est Formicidae"},gd=()=>e.currentChallenge.ascension!==15?1e5+_t(499e5,(e.antUpgrades[1]+i.bonusant2)/5e3*500/499):1e-4*(1e5+_t(499e5,(e.antUpgrades[1]+i.bonusant2)/5e3*500/499)),FC=[()=>d(f.pow(1.12+1/1e3*e.researches[101],e.antUpgrades[1-1]+i.bonusant1),2),()=>d(gd()),()=>d(.005+.995*Math.pow(.99,e.antUpgrades[3-1]+i.bonusant3),4),()=>d(100*(_t(20,(e.antUpgrades[4-1]+i.bonusant4)/1e3*20/19)-1),3),()=>d(100*(_t(40,(e.antUpgrades[5-1]+i.bonusant5)/1e3*40/39)-1),3),()=>d(1+Math.pow(e.antUpgrades[6-1]+i.bonusant6,.66),4),()=>d(Math.min(9999999,3*e.antUpgrades[7-1]+3*i.bonusant7),0,!0),()=>d(_t(999,1/1e4*Math.pow(e.antUpgrades[8-1]+i.bonusant8,1.1)),3),()=>d(1*Math.min(1e7,e.antUpgrades[9-1]+i.bonusant9),0,!0),()=>d(1+2*Math.pow((e.antUpgrades[10-1]+i.bonusant10)/50,.75),4),()=>d(1+2*(1-Math.pow(2,-(e.antUpgrades[11-1]+i.bonusant11)/125)),4),()=>d(ht(2,e.antUpgrades[12-1]+i.bonusant12,69),4)],M0,T0=t=>{$a(M0),M0=$t(()=>md(t),50)},md=t=>{if(i.currentTab!==6)return;let r=o("anttierdescription"),n=o("antprice"),a=o("antquantity"),s=o("generateant"),l="ants.costGalacticCrumbs",c="first",p;switch(r.textContent=u.t(`ants.descriptions.${t}`),t){case 1:l="ants.costParticles",c="first",p=d(i.antOneProduce,5);break;case 2:c="second",p=d(i.antTwoProduce,5);break;case 3:c="third",p=d(i.antThreeProduce,5);break;case 4:c="fourth",p=d(i.antFourProduce,5);break;case 5:c="fifth",p=d(i.antFiveProduce,5);break;case 6:c="sixth",p=d(i.antSixProduce,5);break;case 7:c="seventh",p=d(i.antSevenProduce,5);break;case 8:c="eighth",p=d(i.antEightProduce,5);break}s.textContent=u.t(`ants.generates.${t}`,{x:p}),n.textContent=u.t(l,{x:d(e[`${c}CostAnts`])}),a.textContent=u.t("ants.owned",{x:d(e[`${c}OwnedAnts`]),y:d(e[`${c}GeneratedAnts`],2)})},ei=(t,r,n)=>(--r,t.times(f.pow(i.antCostGrowth[n-1],r)).add(1*r)),Hs=(t,r,n)=>(--r,t.times(f.pow(i.antUpgradeCostIncreases[n-1],r))),fd=(t,r,n)=>{let a=Hn(e.antSacrificePoints);r=new f(r);let s=n===1?"reincarnationPoints":"antPoints",l=`${t}OwnedAnts`,c=e[l]+we(e[l]),p=c,g=ei(r,p,n);for(;e[s].gte(g);)p=p*4,g=ei(r,p,n);let m=Math.floor(p/8);for(;m>=we(p);)ei(r,p-m,n).lte(e[s])?m=Math.floor(m/2):p=p-Math.max(we(p),m);e.antMax||cC[v]&&e[`${i.ordinals[v+1]}OwnedAnts`]>0&&R(176+v);e.firstOwnedAnts>69e6&&(e.firstOwnedAnts=69e6)},hd=(t,r,n)=>{if(e.currentChallenge.ascension!==11){t=new f(t);let a=e.antUpgrades[n-1]+we(e.antUpgrades[n-1]),s=a,l=Hs(t,s,n);for(;e.antPoints.gte(l);)s=s*4,l=Hs(t,s,n);let c=Math.floor(s/8);for(;c>=we(s);)Hs(t,s-c,n).lte(e.antPoints)?c=Math.floor(c/2):s=s-Math.max(we(s),c);e.antMax||a{let r=o("antspecies"),n=o("antlevelbonus"),a=o("antupgradedescription"),s=o("antupgradecost"),l=o("antupgradeeffect"),c=GC[`antspecies${t}`],p=u.t(`ants.upgrades.${t}`),g=i[`bonusant${t}`],m=e.currentChallenge.ascension===11?999:0;r.childNodes[0].textContent=`${c} Level ${d(e.antUpgrades[t-1])}`,n.textContent=` [+${d(Math.min(e.antUpgrades[t-1]+m,g))}]`,a.textContent=p,s.textContent=u.t("ants.costGalacticCrumbs",{x:d(f.pow(i.antUpgradeCostIncreases[t-1],e.antUpgrades[t-1]*i.extinctionMultiplier[e.usedCorruptions[10]]).times(i.antUpgradeBaseCost[t-1]))}),l.textContent=u.t(`ants.rewards.${t}`,{x:FC[t-1]()})},Hn=t=>{let r=Math.pow(1+t/5e3,2);return r*=1+.2*Math.log(1+t)/Math.log(10),e.achievements[174]>0&&(r*=1+.4*Math.log(1+t)/Math.log(10)),Math.min(1e300,r)},of=()=>{let t=yd();o("antSacrificeSummary").style.display="block",o("ELO").innerHTML=u.t("ants.yourAntELO",{x:d(i.antELO,2),y:d(i.effectiveELO,2,!1)}),o("SacrificeMultiplier").innerHTML=u.t("ants.antSacMultiplier",{y:d(Hn(e.antSacrificePoints),3,!1),x:d(Hn(e.antSacrificePoints+t.antSacrificePoints),3,!1)}),o("SacrificeUpgradeMultiplier").innerHTML=u.t("ants.upgradeMultiplier",{x:d(i.upgradeMultiplier,3,!0)}),o("SacrificeTimeMultiplier").innerHTML=u.t("ants.timeMultiplier",{x:d(i.timeMultiplier,3,!0)}),o("antSacrificeOffering").textContent=`+${d(t.offerings)}`,o("antSacrificeObtainium").textContent=`+${d(t.obtainium)}`,e.challengecompletions[9]>0&&(o("antSacrificeTalismanShard").textContent=u.t("ants.elo",{x:d(t.talismanShards),y:500}),o("antSacrificeCommonFragment").textContent=u.t("ants.elo",{x:d(t.commonFragments),y:750}),o("antSacrificeUncommonFragment").textContent=u.t("ants.elo",{x:d(t.uncommonFragments),y:1e3}),o("antSacrificeRareFragment").textContent=u.t("ants.elo",{x:d(t.rareFragments),y:1500}),o("antSacrificeEpicFragment").textContent=u.t("ants.elo",{x:d(t.epicFragments),y:2e3}),o("antSacrificeLegendaryFragment").textContent=u.t("ants.elo",{x:d(t.legendaryFragments),y:3e3}),o("antSacrificeMythicalFragment").textContent=u.t("ants.elo",{x:d(t.mythicalFragments),y:5e3}))},Ns=async(t=!1)=>{let r=!0;if(e.antPoints.gte("1e40")&&(!t&&e.toggles[32]&&(r=await me(u.t("ants.autoReset"))),r)){let n=e.antSacrificePoints,a=yd();e.antSacrificePoints+=a.antSacrificePoints,e.runeshards+=a.offerings,e.currentChallenge.ascension!==14&&(e.researchPoints+=a.obtainium);let s={date:Date.now(),seconds:e.antSacrificeTimer,kind:"antsacrifice",offerings:a.offerings,obtainium:a.obtainium,antSacrificePointsBefore:n,antSacrificePointsAfter:e.antSacrificePoints,baseELO:i.antELO,effectiveELO:i.effectiveELO,crumbs:e.antPoints.toString(),crumbsPerSecond:i.antOneProduce.toString()};if(e.challengecompletions[9]>0&&(e.talismanShards=Math.min(1e300,e.talismanShards+a.talismanShards),e.commonFragments=Math.min(1e300,e.commonFragments+a.commonFragments),e.uncommonFragments=Math.min(1e300,e.uncommonFragments+a.uncommonFragments),e.rareFragments=Math.min(1e300,e.rareFragments+a.rareFragments),e.epicFragments=Math.min(1e300,e.epicFragments+a.epicFragments),e.legendaryFragments=Math.min(1e300,e.legendaryFragments+a.legendaryFragments),e.mythicalFragments=Math.min(1e300,e.mythicalFragments+a.mythicalFragments)),Ku(),e.antSacrificeTimer=0,e.antSacrificeTimerReal=0,zt(),e.autoResearch>0&&e.autoResearchToggle){let l=e.autoResearch===200?.01:0;Gr(e.autoResearch,!0,l)}Jn(),Gn("ants",s)}e.mythicalFragments>=1e11&&e.currentChallenge.ascension===14&&e.achievements[248]<1&&R(248)},S0=()=>{let t=(l,c)=>e.antPoints.gte(Hs(new f(i.antUpgradeBaseCost[l-1]),e.antUpgrades[l-1]+1,l).times(c)),r=[176,176,177,178,178,179,180,180,181,182,182,145],n=["100","100","1000","1000","1e5","1e6","1e8","1e11","1e15","1e20","1e40","1e100"];if(e.currentChallenge.ascension!==11)for(let l=1;l<=r.length;l++)(l===12?e.researches[r[l-1]]:e.achievements[r[l-1]])&&t(l,2)&&hd(n[l-1],!0,l);let a=[173,176,177,178,179,180,181,182],s=["1e700","3","100","10000","1e12","1e36","1e100","1e300"];for(let l=1;l<=a.length;l++){let c=l===1?e.reincarnationPoints:e.antPoints,p=l===1?1:2;e.achievements[a[l-1]]&&c.gte(e[`${i.ordinals[l-1]}CostAnts`].times(p))&&fd(i.ordinals[l-1],s[l-1],l)}};function k0(t){var r;for(let n=0;n<227;n++)r=t[n]&2147483648|t[n+1]&2147483647,t[n]=t[n+397]^r>>>1^(r&1)*2567483615;for(let n=227;n<623;n++)r=t[n]&2147483648|t[n+1]&2147483647,t[n]=t[n-227]^r>>>1^(r&1)*2567483615;return r=t[623]&2147483648|t[0]&2147483647,t[623]=t[396]^r>>>1^(r&1)*2567483615,t}function QC(t){for(var r=L0(19650218),n=t.length,a=1,s=0,l=624>n?624:n;l;l--){let c=r[a-1]^r[a-1]>>>30;r[a]=(r[a]^(((c&4294901760)>>>16)*1664525<<16)+(c&65535)*1664525)+t[s]+s,a++,s++,a>=624&&(r[0]=r[623],a=1),s>=n&&(s=0)}for(l=623;l;l--){let c=r[a-1]^r[a-1]>>>30;r[a]=(r[a]^(((c&4294901760)>>>16)*1566083941<<16)+(c&65535)*1566083941)-a,a++,a>=624&&(r[0]=r[623],a=1)}return r[0]=2147483648,r}function L0(t){var r=new Array(624);r[0]=t;for(let n=1;n<624;n++){let a=r[n-1]^r[n-1]>>>30;r[n]=(((a&4294901760)>>>16)*1812433253<<16)+(a&65535)*1812433253+n}return r}function qC(t=Date.now()){var r;return Array.isArray(t)?r=QC(t):r=L0(t),k0(r)}function P0(t){var r=qC(t),n=0,a=()=>{let l;return n>=624&&(r=k0(r),n=0),l=r[n++],l^=l>>>11,l^=l<<7&2636928640,l^=l<<15&4022730752,l^=l>>>18,l>>>0},s={genrand_int32:()=>a(),genrand_int31:()=>a()>>>1,genrand_real1:()=>a()*(1/4294967295),genrand_real2:()=>a()*(1/4294967296),genrand_real3:()=>(a()+.5)*(1/4294967296),genrand_res53:()=>{let l=a()>>>5,c=a()>>>6;return(l*67108864+c)*(1/9007199254740992)},randomNumber:()=>a(),random31Bit:()=>s.genrand_int31(),randomInclusive:()=>s.genrand_real1(),random:()=>s.genrand_real2(),randomExclusive:()=>s.genrand_real3(),random53Bit:()=>s.genrand_res53()};return s}var Ya=t=>P0(e.seed[t]++).random(),vd=(t,r,n)=>Math.floor(Ya(t)*(n-r+1)+r),ta={PromoCodes:0,Ambrosia:1};var $e=(t,r=0)=>{let n=t==="ascension"||t==="quarks"||t==="goldenQuarks"||t==="singularity"||t==="octeracts"||t==="autoPotion"||t==="ambrosia"?1:We().mult;switch(t){case"prestige":{e.prestigecounter+=r*n;break}case"transcension":{e.transcendcounter+=r*n;break}case"reincarnation":{e.reincarnationcounter+=r*n;break}case"ascension":{let a=e.singularityUpgrades.oneMind.getEffect().bonus?10:Br();e.ascensionCounter+=r*n*a,e.ascensionCounterReal+=r*n;break}case"singularity":{e.ascensionCounterRealReal+=r,e.singularityCounter+=r*n,e.insideSingularityChallenge?e.singChallengeTimer+=r*n:e.singChallengeTimer=0;break}case"quarks":{let a=Bt().maxTime;e.quarkstimer+=r*n,e.quarkstimer=e.quarkstimer>a?a:e.quarkstimer;break}case"goldenQuarks":{if(+e.singularityUpgrades.goldenQuarks3.getEffect().bonus==0)return;e.goldenQuarksTimer+=r*n,e.goldenQuarksTimer=e.goldenQuarksTimer>3600*168?3600*168:e.goldenQuarksTimer;break}case"octeracts":{if(e.singularityUpgrades.octeractUnlock.getEffect().bonus)e.octeractTimer+=r*n;else return;if(e.octeractTimer>=1){let a=e.octeractTimer-e.octeractTimer%1;e.octeractTimer%=1;let s=Wr();if(e.wowOcteracts+=a*s,e.totalWowOcteracts+=a*s,e.highestSingularityCount>=160){let l=[160,173,185,194,204,210,219,229,240,249],c=1e-6,p=0;for(let g of l)e.highestSingularityCount>=g&&(p+=1);for(let g=0;g0,s=e.toggles[43]&&e.shopUpgrades.obtainiumPotion>0;e.autoPotionTimer+=r*n,e.autoPotionTimerObtainium+=r*n;let l=180*Math.pow(1.03,-e.highestSingularityCount)/+e.octeractUpgrades.octeractAutoPotionSpeed.getEffect().bonus,c=a?Math.min(1,l)/20:l,p=s?Math.min(1,l)/20:l;if(e.autoPotionTimer>=c){let g=(e.autoPotionTimer-e.autoPotionTimer%c)/c;e.autoPotionTimer%=c,mn("offeringPotion",!0,g,a)}if(e.autoPotionTimerObtainium>=p){let g=(e.autoPotionTimerObtainium-e.autoPotionTimerObtainium%p)/p;e.autoPotionTimerObtainium%=p,mn("obtainiumPotion",!0,g,s)}}break}case"ambrosia":{if(i.ambrosiaCurrStats.ambrosiaGenerationSpeed===0||(i.ambrosiaTimer+=r*n,i.ambrosiaTimer<.125))break;let s=i.ambrosiaCurrStats.ambrosiaLuck,l=i.ambrosiaCurrStats.ambrosiaGenerationSpeed;e.blueberryTime+=Math.floor(8*i.ambrosiaTimer)/8*l,e.ultimateProgress+=Math.floor(8*i.ambrosiaTimer)/8*Math.min(l,Math.pow(1e3*l,1/2)),i.ambrosiaTimer%=.125;let c=Ls(),p=1/2+(3/5-1/2)*+(e.singularityChallenges.noAmbrosiaUpgrades.completions>=15)+(2/3-3/5)*+(e.singularityChallenges.noAmbrosiaUpgrades.completions>=19)+(3/4-2/3)*+(e.singularityChallenges.noAmbrosiaUpgrades.completions>=20);for(;e.blueberryTime>=c;){let g=Ya(ta.Ambrosia),m=Math.floor(s/100),h=g1e6&&(e.ultimatePixels+=Math.floor(e.ultimateProgress/1e6),e.cubeUpgrades[79]>0&&(e.cubeUpgradeRedBarFilled+=Math.floor(e.ultimateProgress/1e6)),e.ultimateProgress-=1e6*Math.floor(e.ultimateProgress/1e6)),ks()}}},Ur=(t,r)=>{let n=t==="runeSacrifice"||t==="addOfferings"?1:We().mult;switch(t){case"addObtainium":{if(e.currentChallenge.ascension===14)break;Er();let a=Io();e.researchPoints=Math.min(1e300,e.researchPoints+a*r*n),i.currentTab===5&&Cl();break}case"addOfferings":i.autoOfferingCounter+=r,e.runeshards=Math.min(1e300,e.runeshards+Math.floor(i.autoOfferingCounter)),i.autoOfferingCounter%=1;break;case"runeSacrifice":if(e.sacrificeTimer+=r,e.sacrificeTimer>=1&&isFinite(e.runeshards)&&e.runeshards>0){if(e.highestSingularityCount>=15){let a=4;e.toggles[36]&&(Is("Blessings",100/a,!0),a--),e.toggles[37]&&(Is("Spirits",100/a,!0),a--)}if(e.autoBuyFragment&&e.highestSingularityCount>=40&&e.cubeUpgrades[51]>0&&nl(),e.cubeUpgrades[20]===1){let a=e.highestSingularityCount>=50?7:e.highestSingularityCount>=30?6:5,s=a-cm(a);if(s>0){let l=Math.floor(e.runeshards/s/2);for(let c=0;c=it(c+1)||va(c+1,!0,l)}}else{let a=e.autoSacrifice;va(a,!0,0)}e.sacrificeTimer%=1}break;case"antSacrifice":{e.antSacrificeTimer+=r*n,e.antSacrificeTimerReal+=r,(e.autoAntSacrificeMode===2?e.antSacrificeTimerReal:e.antSacrificeTimer)>=e.autoAntSacTimer&&e.antSacrificeTimerReal>.1&&e.researches[124]===1&&e.autoAntSacrifice&&e.antPoints.gte("1e40")&&Ns(!0);break}}};var jC=new Intl.DateTimeFormat("EN-GB",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",hour12:!1,minute:"2-digit",second:"2-digit"}),VC=new Intl.DateTimeFormat("EN-GB",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",hour12:!0,minute:"2-digit",second:"2-digit"}),WC=36e5,at=(t="default",r=!1)=>{let a=(r?VC:jC).formatToParts(new Date).filter(p=>p.type!=="literal").map(p=>({[p.type]:p.value})),s=Object.assign({},...a),l=r?` ${s.dayPeriod.toUpperCase()}`:"",c=["sun","mon","tue","wed","thu","fri","sat"];switch(t){case"default":return`${s.year}-${s.month}-${s.day} ${s.hour}_${s.minute}_${s.second}${l}`;case"short":return`${s.year}${s.month}${s.day}${s.hour}${s.minute}${s.second}`;case"year":return`${s.year}`;case"month":return`${s.month}`;case"day":return`${s.day}`;case"hour":return`${s.hour}`;case"minute":return`${s.minute}`;case"second":return`${s.second}`;case"period":return`${s.dayPeriod.toUpperCase()}`;case"weekday":return`${c[new Date().getUTCDay()]}`;default:return t}},O0=t=>{let r=t.value.slice(0,100);e.saveString=r===""?M.saveString:ao(r),o("saveStringInput").value=e.saveString},KC=()=>{var t,r;return(r=(t=/[\d?=.]+/.exec(tr))==null?void 0:t[0])!=null?r:tr},ti=()=>{let r=e.saveString.replace(/\$(.*?)\$/g,(n,a)=>{switch(a){case"VERSION":return`v${tr}`;case"TIME":return at();case"TIME12":return at(void 0,!0);case"SING":return`Singularity ${e.singularityCount}`;case"SINGS":return`${e.singularityCount}`;case"VER":return KC();case"TIMES":return at("short");case"YEAR":return at("year");case"Y":return at("year");case"MONTH":return at("month");case"M":return at("month");case"DAY":return at("day");case"D":return at("day");case"HOUR":return at("hour");case"H":return at("hour");case"H12":return at("hour",!0);case"MINUTE":return at("minute");case"MI":return at("minute");case"SECOND":return at("second");case"S":return at("second");case"PERIOD":return at("period",!0);case"P":return at("period",!0);case"WEEKDAY":return at("weekday");case"W":return at("weekday");case"DATE":return`${Date.now()}`;case"DATES":return`${Math.floor(Date.now()/1e3)}`;case"QUARK":return`${Math.floor(Number(e.worlds))}`;case"QUARKS":return d(Number(e.worlds));case"GQ":return`${Math.floor(e.goldenQuarks)}`;case"GQS":return d(e.goldenQuarks);case"STAGE":return Iu(0);default:return`${a}`}});return ao(r)},Cd=async(t,r)=>{if(an("saveType").checked)try{await navigator.clipboard.writeText(t),o("exportinfo").textContent=u.t("importexport.copiedSave")}catch(a){let s=document.createElement("textarea");s.setAttribute("style","top: 0; left: 0; position: fixed;"),s.setAttribute("data-clipboard-text",t),document.body.appendChild(s),s.focus(),s.select();let l=new A0.default(s),c=()=>{l.destroy(),document.body.removeChild(s)};l.on("success",()=>{o("exportinfo").textContent=u.t("importexport.copiedSave"),c()}),l.on("error",()=>{o("exportinfo").textContent=u.t("importexport.exportFailed"),P(u.t("importexport.unableCopySave")).finally(c)})}else{let a=document.createElement("a");a.setAttribute("href",`data:text/plain;charset=utf-8,${t}`),a.setAttribute("download",r),a.setAttribute("id","downloadSave"),document.body.appendChild(a),a.click(),document.body.removeChild(a),o("exportinfo").textContent=u.t("importexport.copiedFile")}setTimeout(()=>o("exportinfo").textContent="",15e3)},U0=async(t=!0)=>{if(e.offlinetick=Date.now(),t){e.lastExportedSave=Date.now();let n=Bt(),a=1;a*=1+rr()/100,a*=e.highestSingularityCount>=100?1+e.highestSingularityCount/50:1,+e.singularityUpgrades.goldenQuarks3.getEffect().bonus>0&&(e.goldenQuarks+=Math.floor(e.goldenQuarksTimer/(3600/+e.singularityUpgrades.goldenQuarks3.getEffect().bonus))*a,e.goldenQuarksTimer=e.goldenQuarksTimer%(3600/+e.singularityUpgrades.goldenQuarks3.getEffect().bonus)),n.gain>=1&&(e.worlds.add(n.gain),e.quarkstimer=e.quarkstimer%(3600/n.perHour))}if(!yr())return;let r=localStorage.getItem("Synergysave2");if(!r)return P("How?");await Cd(r,ti()),setTimeout(()=>o("exportinfo").textContent="",15e3)},B0=async()=>{await P(u.t("importexport.reloadDeletePrompt")),await xd(!0)},xd=async(t=!0)=>{if(!t){let n=window.crypto.getRandomValues(new Uint16Array(1))[0]%16,a=window.crypto.getRandomValues(new Uint16Array(1))[0]%16,s=await Pe(u.t("importexport.resetPrompt",{a:n,b:a,sum:n+a}));if(s===null||Number(s)!==n+a)return P(u.t("importexport.wrongAnswer"))}let r=xs.safeParse(M);hr(0),Ce(0,{page:0}),Ce(3,{page:0}),Ce(4,{page:0}),Ce(7,{page:0}),Ce(8,{page:0}),Ce(9,{page:0}),Ce(10,{page:0}),Ga(ls(JSON.stringify(r.data)),!0)},wd=async(t,r)=>{let n=t.target,a=n.files[0],s="";if(typeof Blob.prototype.text=="function")s=await a.text();else{let l=new FileReader;l.readAsText(a),s=await new Promise(p=>{l.addEventListener("load",()=>p(l.result.toString()))})}return n.value="",YC(a.lastModified),r(s)},Ga=(t,r=!1)=>{if(typeof t!="string")return P(u.t("importexport.unableImport"));let n=E0.default.decompressFromBase64(t),a=JSON.parse(n||atob(t));if(a.exporttest==="YES!"||a.exporttest===!0||a.exporttest===!1&&!1||a.exporttest==="NO!"&&!1){let s=ls(JSON.stringify(a));if(s===null)return P(u.t("importexport.unableImport"));localStorage.setItem("Synergysave2",s),Md(r);return}else return P(u.t("importexport.loadTestInLive"))},ri=t=>{let r=o("promocodeinfo"),n=`'${t}': `,a=0;switch(t){case"daily":e.dailyCodeUsed?n+=u.t("importexport.daily0Uses"):n+=u.t("importexport.daily1Uses");break;case"add":a=zn(),a===0?n+=u.t("importexport.add0Uses",{x:0,y:d(vl(),0)}):a!==1?n+=u.t("importexport.addUses",{x:a}):n+=u.t("importexport.add1Uses",{x:a});break;case"time":a=I0(),a===0?n+=u.t("importexport.add0Uses",{x:0,y:d(zC(),0)}):n+=u.t("importexport.timeMultiplier",{x:a,y:d(N0(),2,!0)});break;default:n=""}r.textContent=n},R0=async()=>{let t=await Pe(u.t("importexport.promocodePrompt"));wn(t)},wn=async(t,r)=>{let n=o("promocodeinfo");if(t===null)return P(u.t("importexport.comeBackSoon"));if(t==="23andme"&&!e.codes.get(48)&&i.isEvent)return e.dailyCodeUsed?(e.codes.set(48,!0),e.quarkstimer=Bt().maxTime,e.goldenQuarksTimer=3600*24,$e("ascension",8*3600),e.dailyCodeUsed=!1,(e.challenge15Exponent>=1e15||e.highestSingularityCount>0)&&(e.hepteractCrafts.quark.CAP*=2,e.hepteractCrafts.quark.BAL+=Math.min(1e13,e.hepteractCrafts.quark.CAP/2)),e.highestSingularityCount>0&&(e.singularityUpgrades.goldenQuarks1.freeLevels+=1+Math.floor(e.highestSingularityCount/10),e.singularityUpgrades.goldenQuarks2.freeLevels+=1+Math.floor(e.highestSingularityCount/10),e.singularityUpgrades.goldenQuarks3.freeLevels+=1+Math.floor(e.highestSingularityCount/10),e.singularityUpgrades.octeractUnlock.getEffect().bonus&&(e.octeractUpgrades.octeractImprovedQuarkHept.freeLevels+=.05)),P(`Not sponsored by the company! Your Quark timer(s) have been replenished and you have been given 8 real life hours of Ascension progress! Your daily code has also been reset for you.
${e.challenge15Exponent>=1e15||e.highestSingularityCount>0?"Derpsmith also hacked your save to expand Quark Hepteract for free, and (to a limit) automatically filled the extra amount! What a generous, handsome gigachad.":""}
${e.highestSingularityCount>0?"You were also given free levels of GQ1-3!":""}
${e.singularityUpgrades.octeractUnlock.getEffect().bonus?"Finally, you were given a tiny amount of free Octeract Quark Hepteract Improver upgrade!":""}`)):P("This event code gives you another usage of code 'daily'. Please use that code and try this event code again.");if(t==="synergism2021"&&!e.codes.get(1))e.codes.set(1,!0),e.runeshards+=25,e.worlds.add(50),n.textContent=u.t("importexport.promocodes.synergism2021");else if(t===":unsmith:"&&e.achievements[243]<1)R(243),n.textContent=u.t("importexport.promocodes.unsmith");else if(t===":antismith:"&&e.achievements[244]<1)R(244),n.textContent=u.t("importexport.promocodes.antismith");else if(t==="Khafra"&&!e.codes.get(26)){e.codes.set(26,!0);let a=Math.floor(Ya(ta.PromoCodes)*(400-100+1)+100);e.worlds.add(a),n.textContent=u.t("importexport.promocodes.khafra",{x:e.worlds.applyBonus(a)})}else if(t==="alonso bribe"&&!e.codes.get(47)){let a=e.hepteractCrafts.quark;return a.UNLOCKED?a.computeActualCap()>=1e300?P(u.t("importexport.promocodes.bribe.overCapacity")):(e.codes.set(47,!0),a.CAP=Math.min(1e300,a.CAP*2),P(u.t("importexport.promocodes.bribe.thanks"))):P(u.t("importexport.promocodes.bribe.notUnlocked"))}else if(t.toLowerCase()==="daily"&&!e.dailyCodeUsed){e.dailyCodeUsed=!0;let a=u.t("importexport.promocodes.daily.message"),s=ZC(),l=1+Math.min(49,e.highestSingularityCount),c=e.worlds.applyBonus(s.quarks*l);if(c>1e5&&(c=Math.pow(1e5,.75)*Math.pow(c,.25)),e.worlds.add(c,!1),e.goldenQuarks+=s.goldenQuarks,a+=`
${d(c,0,!0)} Quarks`,s.goldenQuarks>0&&(a+=`
-${d(s.goldenQuarks,0,!0)} Golden Quarks`),await P(a),e.highestSingularityCount>0){let p={goldenQuarks3:{value:.2,pdf:b=>0<=b&&b<=1},goldenQuarks2:{value:.2,pdf:b=>1<=b&&b<=3},goldenQuarks1:{value:.2,pdf:b=>3<=b&&b<=10},singCubes3:{value:.25,pdf:b=>1015202580140