@boostxyz/cli 7.0.0 → 7.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,38 @@
1
+ "use strict";const Zs=require("node:fs/promises"),Gs=require("node:path"),L=require("@boostxyz/sdk"),W=require("./utils-BTtae95l.cjs");function Ln(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(t.constructor!==e.constructor)return!1;let n,r;if(Array.isArray(t)&&Array.isArray(e)){if(n=t.length,n!==e.length)return!1;for(r=n;r--!==0;)if(!Ln(t[r],e[r]))return!1;return!0}if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===e.toString();const a=Object.keys(t);if(n=a.length,n!==Object.keys(e).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(e,a[r]))return!1;for(r=n;r--!==0;){const s=a[r];if(s&&!Ln(t[s],e[s]))return!1}return!0}return t!==t&&e!==e}class Us extends W.BaseError$1{constructor({value:e}){super(`Number \`${e}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}function Hs(t,e){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test(t))throw new Us({value:t});let[n,r="0"]=t.split(".");const a=n.startsWith("-");if(a&&(n=n.slice(1)),r=r.replace(/(0+)$/,""),e===0)Math.round(+`.${r}`)===1&&(n=`${BigInt(n)+1n}`),r="";else if(r.length>e){const[s,i,o]=[r.slice(0,e-1),r.slice(e-1,e),r.slice(e)],c=Math.round(+`${i}.${o}`);c>9?r=`${BigInt(s)+BigInt(1)}0`.padStart(s.length+1,"0"):r=`${s}${c}`,r.length>e&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,e)}else r=r.padEnd(e,"0");return BigInt(`${a?"-":""}${n}${r}`)}function aa(t,e="wei"){return Hs(t,W.etherUnits[e])}var O;(function(t){t.assertEqual=a=>a;function e(a){}t.assertIs=e;function n(a){throw new Error}t.assertNever=n,t.arrayToEnum=a=>{const s={};for(const i of a)s[i]=i;return s},t.getValidEnumValues=a=>{const s=t.objectKeys(a).filter(o=>typeof a[a[o]]!="number"),i={};for(const o of s)i[o]=a[o];return t.objectValues(i)},t.objectValues=a=>t.objectKeys(a).map(function(s){return a[s]}),t.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const s=[];for(const i in a)Object.prototype.hasOwnProperty.call(a,i)&&s.push(i);return s},t.find=(a,s)=>{for(const i of a)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&isFinite(a)&&Math.floor(a)===a;function r(a,s=" | "){return a.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=r,t.jsonStringifyReplacer=(a,s)=>typeof s=="bigint"?s.toString():s})(O||(O={}));var Vn;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Vn||(Vn={}));const v=O.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ve=t=>{switch(typeof t){case"undefined":return v.undefined;case"string":return v.string;case"number":return isNaN(t)?v.nan:v.number;case"boolean":return v.boolean;case"function":return v.function;case"bigint":return v.bigint;case"symbol":return v.symbol;case"object":return Array.isArray(t)?v.array:t===null?v.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?v.promise:typeof Map<"u"&&t instanceof Map?v.map:typeof Set<"u"&&t instanceof Set?v.set:typeof Date<"u"&&t instanceof Date?v.date:v.object;default:return v.unknown}},p=O.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"]),qs=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:");class ne extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){const n=e||function(s){return s.message},r={_errors:[]},a=s=>{for(const i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(a);else if(i.code==="invalid_return_type")a(i.returnTypeError);else if(i.code==="invalid_arguments")a(i.argumentsError);else if(i.path.length===0)r._errors.push(n(i));else{let o=r,c=0;for(;c<i.path.length;){const u=i.path[c];c===i.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(n(i))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return a(this),r}static assert(e){if(!(e instanceof ne))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,O.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){const n={},r=[];for(const a of this.issues)a.path.length>0?(n[a.path[0]]=n[a.path[0]]||[],n[a.path[0]].push(e(a))):r.push(e(a));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}}ne.create=t=>new ne(t);const Je=(t,e)=>{let n;switch(t.code){case p.invalid_type:t.received===v.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case p.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,O.jsonStringifyReplacer)}`;break;case p.unrecognized_keys:n=`Unrecognized key(s) in object: ${O.joinValues(t.keys,", ")}`;break;case p.invalid_union:n="Invalid input";break;case p.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${O.joinValues(t.options)}`;break;case p.invalid_enum_value:n=`Invalid enum value. Expected ${O.joinValues(t.options)}, received '${t.received}'`;break;case p.invalid_arguments:n="Invalid function arguments";break;case p.invalid_return_type:n="Invalid function return type";break;case p.invalid_date:n="Invalid date";break;case p.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}"`:O.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case p.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 p.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 p.custom:n="Invalid input";break;case p.invalid_intersection_types:n="Intersection results could not be merged";break;case p.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case p.not_finite:n="Number must be finite";break;default:n=e.defaultError,O.assertNever(t)}return{message:n}};let sa=Je;function Ws(t){sa=t}function on(){return sa}const cn=t=>{const{data:e,path:n,errorMaps:r,issueData:a}=t,s=[...n,...a.path||[]],i={...a,path:s};if(a.message!==void 0)return{...a,path:s,message:a.message};let o="";const c=r.filter(u=>!!u).slice().reverse();for(const u of c)o=u(i,{data:e,defaultError:o}).message;return{...a,path:s,message:o}},Ks=[];function y(t,e){const n=on(),r=cn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===Je?void 0:Je].filter(a=>!!a)});t.common.issues.push(r)}class K{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){const r=[];for(const a of n){if(a.status==="aborted")return E;a.status==="dirty"&&e.dirty(),r.push(a.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){const r=[];for(const a of n){const s=await a.key,i=await a.value;r.push({key:s,value:i})}return K.mergeObjectSync(e,r)}static mergeObjectSync(e,n){const r={};for(const a of n){const{key:s,value:i}=a;if(s.status==="aborted"||i.status==="aborted")return E;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||a.alwaysSet)&&(r[s.value]=i.value)}return{status:e.value,value:r}}}const E=Object.freeze({status:"aborted"}),He=t=>({status:"dirty",value:t}),J=t=>({status:"valid",value:t}),Dn=t=>t.status==="aborted",Zn=t=>t.status==="dirty",Fe=t=>t.status==="valid",lt=t=>typeof Promise<"u"&&t instanceof Promise;function un(t,e,n,r){if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e.get(t)}function ia(t,e,n,r,a){if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(t,n),n}var w;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(w||(w={}));var dt,ft;class pe{constructor(e,n,r,a){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=a}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}}const zr=(t,e)=>{if(Fe(e))return{success:!0,data:e.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;const n=new ne(t.common.issues);return this._error=n,this._error}}};function T(t){if(!t)return{};const{errorMap:e,invalid_type_error:n,required_error:r,description:a}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(i,o)=>{var c,u;const{message:d}=t;return i.code==="invalid_enum_value"?{message:d??o.defaultError}:typeof o.data>"u"?{message:(c=d??r)!==null&&c!==void 0?c:o.defaultError}:i.code!=="invalid_type"?{message:o.defaultError}:{message:(u=d??n)!==null&&u!==void 0?u:o.defaultError}},description:a}}class C{get description(){return this._def.description}_getType(e){return ve(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:ve(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new K,ctx:{common:e.parent.common,data:e.data,parsedType:ve(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const n=this._parse(e);if(lt(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){const n=this._parse(e);return Promise.resolve(n)}parse(e,n){const r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){var r;const a={common:{issues:[],async:(r=n==null?void 0:n.async)!==null&&r!==void 0?r:!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ve(e)},s=this._parseSync({data:e,path:a.path,parent:a});return zr(a,s)}"~validate"(e){var n,r;const a={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ve(e)};if(!this["~standard"].async)try{const s=this._parseSync({data:e,path:[],parent:a});return Fe(s)?{value:s.value}:{issues:a.common.issues}}catch(s){!((r=(n=s==null?void 0:s.message)===null||n===void 0?void 0:n.toLowerCase())===null||r===void 0)&&r.includes("encountered")&&(this["~standard"].async=!0),a.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:a}).then(s=>Fe(s)?{value:s.value}:{issues:a.common.issues})}async parseAsync(e,n){const r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){const r={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:e,parsedType:ve(e)},a=this._parse({data:e,path:r.path,parent:r}),s=await(lt(a)?a:Promise.resolve(a));return zr(r,s)}refine(e,n){const r=a=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(a):n;return this._refinement((a,s)=>{const i=e(a),o=()=>s.addIssue({code:p.custom,...r(a)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(o(),!1)):i?!0:(o(),!1)})}refinement(e,n){return this._refinement((r,a)=>e(r)?!0:(a.addIssue(typeof n=="function"?n(r,a):n),!1))}_refinement(e){return new fe({schema:this,typeName:_.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,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 he.create(this,this._def)}nullable(){return Oe.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return de.create(this)}promise(){return Xe.create(this,this._def)}or(e){return mt.create([this,e],this._def)}and(e){return yt.create(this,e,this._def)}transform(e){return new fe({...T(this._def),schema:this,typeName:_.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const n=typeof e=="function"?e:()=>e;return new _t({...T(this._def),innerType:this,defaultValue:n,typeName:_.ZodDefault})}brand(){return new ur({typeName:_.ZodBranded,type:this,...T(this._def)})}catch(e){const n=typeof e=="function"?e:()=>e;return new Pt({...T(this._def),innerType:this,catchValue:n,typeName:_.ZodCatch})}describe(e){const n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Jt.create(this,e)}readonly(){return Et.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const Ys=/^c[^\s-]{8,}$/i,Js=/^[0-9a-z]+$/,Qs=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Xs=/^[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,ei=/^[a-z0-9_-]{21}$/i,ti=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ni=/^[-+]?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)?)??$/,ri=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ai="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Sn;const si=/^(?:(?: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])$/,ii=/^(?:(?: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])$/,oi=/^(([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]))$/,ci=/^(([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])$/,ui=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,di=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,oa="((\\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])))",fi=new RegExp(`^${oa}$`);function ca(t){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`),e}function li(t){return new RegExp(`^${ca(t)}$`)}function ua(t){let e=`${oa}T${ca(t)}`;const n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function hi(t,e){return!!((e==="v4"||!e)&&si.test(t)||(e==="v6"||!e)&&oi.test(t))}function pi(t,e){if(!ti.test(t))return!1;try{const[n]=t.split("."),r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),a=JSON.parse(atob(r));return!(typeof a!="object"||a===null||!a.typ||!a.alg||e&&a.alg!==e)}catch{return!1}}function bi(t,e){return!!((e==="v4"||!e)&&ii.test(t)||(e==="v6"||!e)&&ci.test(t))}class ue extends C{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==v.string){const s=this._getOrReturnCtx(e);return y(s,{code:p.invalid_type,expected:v.string,received:s.parsedType}),E}const r=new K;let a;for(const s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(a=this._getOrReturnCtx(e,a),y(a,{code:p.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="max")e.data.length>s.value&&(a=this._getOrReturnCtx(e,a),y(a,{code:p.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="length"){const i=e.data.length>s.value,o=e.data.length<s.value;(i||o)&&(a=this._getOrReturnCtx(e,a),i?y(a,{code:p.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):o&&y(a,{code:p.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),r.dirty())}else if(s.kind==="email")ri.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"email",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="emoji")Sn||(Sn=new RegExp(ai,"u")),Sn.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"emoji",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="uuid")Xs.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"uuid",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="nanoid")ei.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"nanoid",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid")Ys.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"cuid",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid2")Js.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"cuid2",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="ulid")Qs.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"ulid",code:p.invalid_string,message:s.message}),r.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),y(a,{validation:"url",code:p.invalid_string,message:s.message}),r.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"regex",code:p.invalid_string,message:s.message}),r.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(a=this._getOrReturnCtx(e,a),y(a,{code:p.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),r.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(a=this._getOrReturnCtx(e,a),y(a,{code:p.invalid_string,validation:{startsWith:s.value},message:s.message}),r.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(a=this._getOrReturnCtx(e,a),y(a,{code:p.invalid_string,validation:{endsWith:s.value},message:s.message}),r.dirty()):s.kind==="datetime"?ua(s).test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{code:p.invalid_string,validation:"datetime",message:s.message}),r.dirty()):s.kind==="date"?fi.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{code:p.invalid_string,validation:"date",message:s.message}),r.dirty()):s.kind==="time"?li(s).test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{code:p.invalid_string,validation:"time",message:s.message}),r.dirty()):s.kind==="duration"?ni.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"duration",code:p.invalid_string,message:s.message}),r.dirty()):s.kind==="ip"?hi(e.data,s.version)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"ip",code:p.invalid_string,message:s.message}),r.dirty()):s.kind==="jwt"?pi(e.data,s.alg)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"jwt",code:p.invalid_string,message:s.message}),r.dirty()):s.kind==="cidr"?bi(e.data,s.version)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"cidr",code:p.invalid_string,message:s.message}),r.dirty()):s.kind==="base64"?ui.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"base64",code:p.invalid_string,message:s.message}),r.dirty()):s.kind==="base64url"?di.test(e.data)||(a=this._getOrReturnCtx(e,a),y(a,{validation:"base64url",code:p.invalid_string,message:s.message}),r.dirty()):O.assertNever(s);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(a=>e.test(a),{validation:n,code:p.invalid_string,...w.errToObj(r)})}_addCheck(e){return new ue({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...w.errToObj(e)})}url(e){return this._addCheck({kind:"url",...w.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...w.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...w.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...w.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...w.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...w.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...w.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...w.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...w.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...w.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...w.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...w.errToObj(e)})}datetime(e){var n,r;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(n=e==null?void 0:e.offset)!==null&&n!==void 0?n:!1,local:(r=e==null?void 0:e.local)!==null&&r!==void 0?r:!1,...w.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...w.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...w.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...w.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n==null?void 0:n.position,...w.errToObj(n==null?void 0:n.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...w.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...w.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...w.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...w.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...w.errToObj(n)})}nonempty(e){return this.min(1,w.errToObj(e))}trim(){return new ue({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ue({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ue({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}}ue.create=t=>{var e;return new ue({checks:[],typeName:_.ZodString,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...T(t)})};function mi(t,e){const n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,a=n>r?n:r,s=parseInt(t.toFixed(a).replace(".","")),i=parseInt(e.toFixed(a).replace(".",""));return s%i/Math.pow(10,a)}class Ie extends C{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==v.number){const s=this._getOrReturnCtx(e);return y(s,{code:p.invalid_type,expected:v.number,received:s.parsedType}),E}let r;const a=new K;for(const s of this._def.checks)s.kind==="int"?O.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),y(r,{code:p.invalid_type,expected:"integer",received:"float",message:s.message}),a.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(r=this._getOrReturnCtx(e,r),y(r,{code:p.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),y(r,{code:p.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="multipleOf"?mi(e.data,s.value)!==0&&(r=this._getOrReturnCtx(e,r),y(r,{code:p.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),y(r,{code:p.not_finite,message:s.message}),a.dirty()):O.assertNever(s);return{status:a.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,w.toString(n))}gt(e,n){return this.setLimit("min",e,!1,w.toString(n))}lte(e,n){return this.setLimit("max",e,!0,w.toString(n))}lt(e,n){return this.setLimit("max",e,!1,w.toString(n))}setLimit(e,n,r,a){return new Ie({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:w.toString(a)}]})}_addCheck(e){return new Ie({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:w.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:w.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:w.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:w.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:w.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:w.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:w.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:w.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:w.toString(e)})}get minValue(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&O.isInteger(e.value))}get isFinite(){let e=null,n=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}}Ie.create=t=>new Ie({checks:[],typeName:_.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...T(t)});class Re extends C{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==v.bigint)return this._getInvalidInput(e);let r;const a=new K;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(r=this._getOrReturnCtx(e,r),y(r,{code:p.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),y(r,{code:p.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),y(r,{code:p.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):O.assertNever(s);return{status:a.value,value:e.data}}_getInvalidInput(e){const n=this._getOrReturnCtx(e);return y(n,{code:p.invalid_type,expected:v.bigint,received:n.parsedType}),E}gte(e,n){return this.setLimit("min",e,!0,w.toString(n))}gt(e,n){return this.setLimit("min",e,!1,w.toString(n))}lte(e,n){return this.setLimit("max",e,!0,w.toString(n))}lt(e,n){return this.setLimit("max",e,!1,w.toString(n))}setLimit(e,n,r,a){return new Re({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:w.toString(a)}]})}_addCheck(e){return new Re({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:w.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:w.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:w.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:w.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:w.toString(n)})}get minValue(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}}Re.create=t=>{var e;return new Re({checks:[],typeName:_.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...T(t)})};class ht extends C{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==v.boolean){const r=this._getOrReturnCtx(e);return y(r,{code:p.invalid_type,expected:v.boolean,received:r.parsedType}),E}return J(e.data)}}ht.create=t=>new ht({typeName:_.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...T(t)});class Ne extends C{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==v.date){const s=this._getOrReturnCtx(e);return y(s,{code:p.invalid_type,expected:v.date,received:s.parsedType}),E}if(isNaN(e.data.getTime())){const s=this._getOrReturnCtx(e);return y(s,{code:p.invalid_date}),E}const r=new K;let a;for(const s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(a=this._getOrReturnCtx(e,a),y(a,{code:p.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),r.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(a=this._getOrReturnCtx(e,a),y(a,{code:p.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),r.dirty()):O.assertNever(s);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Ne({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:w.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:w.toString(n)})}get minDate(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}}Ne.create=t=>new Ne({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:_.ZodDate,...T(t)});class dn extends C{_parse(e){if(this._getType(e)!==v.symbol){const r=this._getOrReturnCtx(e);return y(r,{code:p.invalid_type,expected:v.symbol,received:r.parsedType}),E}return J(e.data)}}dn.create=t=>new dn({typeName:_.ZodSymbol,...T(t)});class pt extends C{_parse(e){if(this._getType(e)!==v.undefined){const r=this._getOrReturnCtx(e);return y(r,{code:p.invalid_type,expected:v.undefined,received:r.parsedType}),E}return J(e.data)}}pt.create=t=>new pt({typeName:_.ZodUndefined,...T(t)});class bt extends C{_parse(e){if(this._getType(e)!==v.null){const r=this._getOrReturnCtx(e);return y(r,{code:p.invalid_type,expected:v.null,received:r.parsedType}),E}return J(e.data)}}bt.create=t=>new bt({typeName:_.ZodNull,...T(t)});class Qe extends C{constructor(){super(...arguments),this._any=!0}_parse(e){return J(e.data)}}Qe.create=t=>new Qe({typeName:_.ZodAny,...T(t)});class je extends C{constructor(){super(...arguments),this._unknown=!0}_parse(e){return J(e.data)}}je.create=t=>new je({typeName:_.ZodUnknown,...T(t)});class _e extends C{_parse(e){const n=this._getOrReturnCtx(e);return y(n,{code:p.invalid_type,expected:v.never,received:n.parsedType}),E}}_e.create=t=>new _e({typeName:_.ZodNever,...T(t)});class fn extends C{_parse(e){if(this._getType(e)!==v.undefined){const r=this._getOrReturnCtx(e);return y(r,{code:p.invalid_type,expected:v.void,received:r.parsedType}),E}return J(e.data)}}fn.create=t=>new fn({typeName:_.ZodVoid,...T(t)});class de extends C{_parse(e){const{ctx:n,status:r}=this._processInputParams(e),a=this._def;if(n.parsedType!==v.array)return y(n,{code:p.invalid_type,expected:v.array,received:n.parsedType}),E;if(a.exactLength!==null){const i=n.data.length>a.exactLength.value,o=n.data.length<a.exactLength.value;(i||o)&&(y(n,{code:i?p.too_big:p.too_small,minimum:o?a.exactLength.value:void 0,maximum:i?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),r.dirty())}if(a.minLength!==null&&n.data.length<a.minLength.value&&(y(n,{code:p.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),r.dirty()),a.maxLength!==null&&n.data.length>a.maxLength.value&&(y(n,{code:p.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((i,o)=>a.type._parseAsync(new pe(n,i,n.path,o)))).then(i=>K.mergeArray(r,i));const s=[...n.data].map((i,o)=>a.type._parseSync(new pe(n,i,n.path,o)));return K.mergeArray(r,s)}get element(){return this._def.type}min(e,n){return new de({...this._def,minLength:{value:e,message:w.toString(n)}})}max(e,n){return new de({...this._def,maxLength:{value:e,message:w.toString(n)}})}length(e,n){return new de({...this._def,exactLength:{value:e,message:w.toString(n)}})}nonempty(e){return this.min(1,e)}}de.create=(t,e)=>new de({type:t,minLength:null,maxLength:null,exactLength:null,typeName:_.ZodArray,...T(e)});function Ue(t){if(t instanceof z){const e={};for(const n in t.shape){const r=t.shape[n];e[n]=he.create(Ue(r))}return new z({...t._def,shape:()=>e})}else return t instanceof de?new de({...t._def,type:Ue(t.element)}):t instanceof he?he.create(Ue(t.unwrap())):t instanceof Oe?Oe.create(Ue(t.unwrap())):t instanceof be?be.create(t.items.map(e=>Ue(e))):t}class z extends C{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),n=O.objectKeys(e);return this._cached={shape:e,keys:n}}_parse(e){if(this._getType(e)!==v.object){const u=this._getOrReturnCtx(e);return y(u,{code:p.invalid_type,expected:v.object,received:u.parsedType}),E}const{status:r,ctx:a}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),o=[];if(!(this._def.catchall instanceof _e&&this._def.unknownKeys==="strip"))for(const u in a.data)i.includes(u)||o.push(u);const c=[];for(const u of i){const d=s[u],h=a.data[u];c.push({key:{status:"valid",value:u},value:d._parse(new pe(a,h,a.path,u)),alwaysSet:u in a.data})}if(this._def.catchall instanceof _e){const u=this._def.unknownKeys;if(u==="passthrough")for(const d of o)c.push({key:{status:"valid",value:d},value:{status:"valid",value:a.data[d]}});else if(u==="strict")o.length>0&&(y(a,{code:p.unrecognized_keys,keys:o}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const u=this._def.catchall;for(const d of o){const h=a.data[d];c.push({key:{status:"valid",value:d},value:u._parse(new pe(a,h,a.path,d)),alwaysSet:d in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const u=[];for(const d of c){const h=await d.key,b=await d.value;u.push({key:h,value:b,alwaysSet:d.alwaysSet})}return u}).then(u=>K.mergeObjectSync(r,u)):K.mergeObjectSync(r,c)}get shape(){return this._def.shape()}strict(e){return w.errToObj,new z({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{var a,s,i,o;const c=(i=(s=(a=this._def).errorMap)===null||s===void 0?void 0:s.call(a,n,r).message)!==null&&i!==void 0?i:r.defaultError;return n.code==="unrecognized_keys"?{message:(o=w.errToObj(e).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new z({...this._def,unknownKeys:"strip"})}passthrough(){return new z({...this._def,unknownKeys:"passthrough"})}extend(e){return new z({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new z({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new z({...this._def,catchall:e})}pick(e){const n={};return O.objectKeys(e).forEach(r=>{e[r]&&this.shape[r]&&(n[r]=this.shape[r])}),new z({...this._def,shape:()=>n})}omit(e){const n={};return O.objectKeys(this.shape).forEach(r=>{e[r]||(n[r]=this.shape[r])}),new z({...this._def,shape:()=>n})}deepPartial(){return Ue(this)}partial(e){const n={};return O.objectKeys(this.shape).forEach(r=>{const a=this.shape[r];e&&!e[r]?n[r]=a:n[r]=a.optional()}),new z({...this._def,shape:()=>n})}required(e){const n={};return O.objectKeys(this.shape).forEach(r=>{if(e&&!e[r])n[r]=this.shape[r];else{let s=this.shape[r];for(;s instanceof he;)s=s._def.innerType;n[r]=s}}),new z({...this._def,shape:()=>n})}keyof(){return da(O.objectKeys(this.shape))}}z.create=(t,e)=>new z({shape:()=>t,unknownKeys:"strip",catchall:_e.create(),typeName:_.ZodObject,...T(e)});z.strictCreate=(t,e)=>new z({shape:()=>t,unknownKeys:"strict",catchall:_e.create(),typeName:_.ZodObject,...T(e)});z.lazycreate=(t,e)=>new z({shape:t,unknownKeys:"strip",catchall:_e.create(),typeName:_.ZodObject,...T(e)});class mt extends C{_parse(e){const{ctx:n}=this._processInputParams(e),r=this._def.options;function a(s){for(const o of s)if(o.result.status==="valid")return o.result;for(const o of s)if(o.result.status==="dirty")return n.common.issues.push(...o.ctx.common.issues),o.result;const i=s.map(o=>new ne(o.ctx.common.issues));return y(n,{code:p.invalid_union,unionErrors:i}),E}if(n.common.async)return Promise.all(r.map(async s=>{const i={...n,common:{...n.common,issues:[]},parent:null};return{result:await s._parseAsync({data:n.data,path:n.path,parent:i}),ctx:i}})).then(a);{let s;const i=[];for(const c of r){const u={...n,common:{...n.common,issues:[]},parent:null},d=c._parseSync({data:n.data,path:n.path,parent:u});if(d.status==="valid")return d;d.status==="dirty"&&!s&&(s={result:d,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return n.common.issues.push(...s.ctx.common.issues),s.result;const o=i.map(c=>new ne(c));return y(n,{code:p.invalid_union,unionErrors:o}),E}}get options(){return this._def.options}}mt.create=(t,e)=>new mt({options:t,typeName:_.ZodUnion,...T(e)});const ge=t=>t instanceof vt?ge(t.schema):t instanceof fe?ge(t.innerType()):t instanceof wt?[t.value]:t instanceof Me?t.options:t instanceof xt?O.objectValues(t.enum):t instanceof _t?ge(t._def.innerType):t instanceof pt?[void 0]:t instanceof bt?[null]:t instanceof he?[void 0,...ge(t.unwrap())]:t instanceof Oe?[null,...ge(t.unwrap())]:t instanceof ur||t instanceof Et?ge(t.unwrap()):t instanceof Pt?ge(t._def.innerType):[];class gn extends C{_parse(e){const{ctx:n}=this._processInputParams(e);if(n.parsedType!==v.object)return y(n,{code:p.invalid_type,expected:v.object,received:n.parsedType}),E;const r=this.discriminator,a=n.data[r],s=this.optionsMap.get(a);return s?n.common.async?s._parseAsync({data:n.data,path:n.path,parent:n}):s._parseSync({data:n.data,path:n.path,parent:n}):(y(n,{code:p.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),E)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){const a=new Map;for(const s of n){const i=ge(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const o of i){if(a.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);a.set(o,s)}}return new gn({typeName:_.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:a,...T(r)})}}function Gn(t,e){const n=ve(t),r=ve(e);if(t===e)return{valid:!0,data:t};if(n===v.object&&r===v.object){const a=O.objectKeys(e),s=O.objectKeys(t).filter(o=>a.indexOf(o)!==-1),i={...t,...e};for(const o of s){const c=Gn(t[o],e[o]);if(!c.valid)return{valid:!1};i[o]=c.data}return{valid:!0,data:i}}else if(n===v.array&&r===v.array){if(t.length!==e.length)return{valid:!1};const a=[];for(let s=0;s<t.length;s++){const i=t[s],o=e[s],c=Gn(i,o);if(!c.valid)return{valid:!1};a.push(c.data)}return{valid:!0,data:a}}else return n===v.date&&r===v.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}class yt extends C{_parse(e){const{status:n,ctx:r}=this._processInputParams(e),a=(s,i)=>{if(Dn(s)||Dn(i))return E;const o=Gn(s.value,i.value);return o.valid?((Zn(s)||Zn(i))&&n.dirty(),{status:n.value,value:o.data}):(y(r,{code:p.invalid_intersection_types}),E)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([s,i])=>a(s,i)):a(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}yt.create=(t,e,n)=>new yt({left:t,right:e,typeName:_.ZodIntersection,...T(n)});class be extends C{_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.array)return y(r,{code:p.invalid_type,expected:v.array,received:r.parsedType}),E;if(r.data.length<this._def.items.length)return y(r,{code:p.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),E;!this._def.rest&&r.data.length>this._def.items.length&&(y(r,{code:p.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());const s=[...r.data].map((i,o)=>{const c=this._def.items[o]||this._def.rest;return c?c._parse(new pe(r,i,r.path,o)):null}).filter(i=>!!i);return r.common.async?Promise.all(s).then(i=>K.mergeArray(n,i)):K.mergeArray(n,s)}get items(){return this._def.items}rest(e){return new be({...this._def,rest:e})}}be.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new be({items:t,typeName:_.ZodTuple,rest:null,...T(e)})};class gt extends C{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.object)return y(r,{code:p.invalid_type,expected:v.object,received:r.parsedType}),E;const a=[],s=this._def.keyType,i=this._def.valueType;for(const o in r.data)a.push({key:s._parse(new pe(r,o,r.path,o)),value:i._parse(new pe(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?K.mergeObjectAsync(n,a):K.mergeObjectSync(n,a)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof C?new gt({keyType:e,valueType:n,typeName:_.ZodRecord,...T(r)}):new gt({keyType:ue.create(),valueType:e,typeName:_.ZodRecord,...T(n)})}}class ln extends C{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.map)return y(r,{code:p.invalid_type,expected:v.map,received:r.parsedType}),E;const a=this._def.keyType,s=this._def.valueType,i=[...r.data.entries()].map(([o,c],u)=>({key:a._parse(new pe(r,o,r.path,[u,"key"])),value:s._parse(new pe(r,c,r.path,[u,"value"]))}));if(r.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of i){const u=await c.key,d=await c.value;if(u.status==="aborted"||d.status==="aborted")return E;(u.status==="dirty"||d.status==="dirty")&&n.dirty(),o.set(u.value,d.value)}return{status:n.value,value:o}})}else{const o=new Map;for(const c of i){const u=c.key,d=c.value;if(u.status==="aborted"||d.status==="aborted")return E;(u.status==="dirty"||d.status==="dirty")&&n.dirty(),o.set(u.value,d.value)}return{status:n.value,value:o}}}}ln.create=(t,e,n)=>new ln({valueType:e,keyType:t,typeName:_.ZodMap,...T(n)});class ze extends C{_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.set)return y(r,{code:p.invalid_type,expected:v.set,received:r.parsedType}),E;const a=this._def;a.minSize!==null&&r.data.size<a.minSize.value&&(y(r,{code:p.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),n.dirty()),a.maxSize!==null&&r.data.size>a.maxSize.value&&(y(r,{code:p.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),n.dirty());const s=this._def.valueType;function i(c){const u=new Set;for(const d of c){if(d.status==="aborted")return E;d.status==="dirty"&&n.dirty(),u.add(d.value)}return{status:n.value,value:u}}const o=[...r.data.values()].map((c,u)=>s._parse(new pe(r,c,r.path,u)));return r.common.async?Promise.all(o).then(c=>i(c)):i(o)}min(e,n){return new ze({...this._def,minSize:{value:e,message:w.toString(n)}})}max(e,n){return new ze({...this._def,maxSize:{value:e,message:w.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}}ze.create=(t,e)=>new ze({valueType:t,minSize:null,maxSize:null,typeName:_.ZodSet,...T(e)});class We extends C{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:n}=this._processInputParams(e);if(n.parsedType!==v.function)return y(n,{code:p.invalid_type,expected:v.function,received:n.parsedType}),E;function r(o,c){return cn({data:o,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,on(),Je].filter(u=>!!u),issueData:{code:p.invalid_arguments,argumentsError:c}})}function a(o,c){return cn({data:o,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,on(),Je].filter(u=>!!u),issueData:{code:p.invalid_return_type,returnTypeError:c}})}const s={errorMap:n.common.contextualErrorMap},i=n.data;if(this._def.returns instanceof Xe){const o=this;return J(async function(...c){const u=new ne([]),d=await o._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(r(c,f)),u}),h=await Reflect.apply(i,this,d);return await o._def.returns._def.type.parseAsync(h,s).catch(f=>{throw u.addIssue(a(h,f)),u})})}else{const o=this;return J(function(...c){const u=o._def.args.safeParse(c,s);if(!u.success)throw new ne([r(c,u.error)]);const d=Reflect.apply(i,this,u.data),h=o._def.returns.safeParse(d,s);if(!h.success)throw new ne([a(d,h.error)]);return h.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new We({...this._def,args:be.create(e).rest(je.create())})}returns(e){return new We({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new We({args:e||be.create([]).rest(je.create()),returns:n||je.create(),typeName:_.ZodFunction,...T(r)})}}class vt extends C{get schema(){return this._def.getter()}_parse(e){const{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}}vt.create=(t,e)=>new vt({getter:t,typeName:_.ZodLazy,...T(e)});class wt extends C{_parse(e){if(e.data!==this._def.value){const n=this._getOrReturnCtx(e);return y(n,{received:n.data,code:p.invalid_literal,expected:this._def.value}),E}return{status:"valid",value:e.data}}get value(){return this._def.value}}wt.create=(t,e)=>new wt({value:t,typeName:_.ZodLiteral,...T(e)});function da(t,e){return new Me({values:t,typeName:_.ZodEnum,...T(e)})}class Me extends C{constructor(){super(...arguments),dt.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const n=this._getOrReturnCtx(e),r=this._def.values;return y(n,{expected:O.joinValues(r),received:n.parsedType,code:p.invalid_type}),E}if(un(this,dt)||ia(this,dt,new Set(this._def.values)),!un(this,dt).has(e.data)){const n=this._getOrReturnCtx(e),r=this._def.values;return y(n,{received:n.data,code:p.invalid_enum_value,options:r}),E}return J(e.data)}get options(){return this._def.values}get enum(){const e={};for(const n of this._def.values)e[n]=n;return e}get Values(){const e={};for(const n of this._def.values)e[n]=n;return e}get Enum(){const e={};for(const n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return Me.create(e,{...this._def,...n})}exclude(e,n=this._def){return Me.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}}dt=new WeakMap;Me.create=da;class xt extends C{constructor(){super(...arguments),ft.set(this,void 0)}_parse(e){const n=O.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==v.string&&r.parsedType!==v.number){const a=O.objectValues(n);return y(r,{expected:O.joinValues(a),received:r.parsedType,code:p.invalid_type}),E}if(un(this,ft)||ia(this,ft,new Set(O.getValidEnumValues(this._def.values))),!un(this,ft).has(e.data)){const a=O.objectValues(n);return y(r,{received:r.data,code:p.invalid_enum_value,options:a}),E}return J(e.data)}get enum(){return this._def.values}}ft=new WeakMap;xt.create=(t,e)=>new xt({values:t,typeName:_.ZodNativeEnum,...T(e)});class Xe extends C{unwrap(){return this._def.type}_parse(e){const{ctx:n}=this._processInputParams(e);if(n.parsedType!==v.promise&&n.common.async===!1)return y(n,{code:p.invalid_type,expected:v.promise,received:n.parsedType}),E;const r=n.parsedType===v.promise?n.data:Promise.resolve(n.data);return J(r.then(a=>this._def.type.parseAsync(a,{path:n.path,errorMap:n.common.contextualErrorMap})))}}Xe.create=(t,e)=>new Xe({type:t,typeName:_.ZodPromise,...T(e)});class fe extends C{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:n,ctx:r}=this._processInputParams(e),a=this._def.effect||null,s={addIssue:i=>{y(r,i),i.fatal?n.abort():n.dirty()},get path(){return r.path}};if(s.addIssue=s.addIssue.bind(s),a.type==="preprocess"){const i=a.transform(r.data,s);if(r.common.async)return Promise.resolve(i).then(async o=>{if(n.value==="aborted")return E;const c=await this._def.schema._parseAsync({data:o,path:r.path,parent:r});return c.status==="aborted"?E:c.status==="dirty"||n.value==="dirty"?He(c.value):c});{if(n.value==="aborted")return E;const o=this._def.schema._parseSync({data:i,path:r.path,parent:r});return o.status==="aborted"?E:o.status==="dirty"||n.value==="dirty"?He(o.value):o}}if(a.type==="refinement"){const i=o=>{const c=a.refinement(o,s);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(r.common.async===!1){const o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?E:(o.status==="dirty"&&n.dirty(),i(o.value),{status:n.value,value:o.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>o.status==="aborted"?E:(o.status==="dirty"&&n.dirty(),i(o.value).then(()=>({status:n.value,value:o.value}))))}if(a.type==="transform")if(r.common.async===!1){const i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Fe(i))return i;const o=a.transform(i.value,s);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:o}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>Fe(i)?Promise.resolve(a.transform(i.value,s)).then(o=>({status:n.value,value:o})):i);O.assertNever(a)}}fe.create=(t,e,n)=>new fe({schema:t,typeName:_.ZodEffects,effect:e,...T(n)});fe.createWithPreprocess=(t,e,n)=>new fe({schema:e,effect:{type:"preprocess",transform:t},typeName:_.ZodEffects,...T(n)});class he extends C{_parse(e){return this._getType(e)===v.undefined?J(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}he.create=(t,e)=>new he({innerType:t,typeName:_.ZodOptional,...T(e)});class Oe extends C{_parse(e){return this._getType(e)===v.null?J(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Oe.create=(t,e)=>new Oe({innerType:t,typeName:_.ZodNullable,...T(e)});class _t extends C{_parse(e){const{ctx:n}=this._processInputParams(e);let r=n.data;return n.parsedType===v.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}}_t.create=(t,e)=>new _t({innerType:t,typeName:_.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...T(e)});class Pt extends C{_parse(e){const{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},a=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return lt(a)?a.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ne(r.common.issues)},input:r.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new ne(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Pt.create=(t,e)=>new Pt({innerType:t,typeName:_.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...T(e)});class hn extends C{_parse(e){if(this._getType(e)!==v.nan){const r=this._getOrReturnCtx(e);return y(r,{code:p.invalid_type,expected:v.nan,received:r.parsedType}),E}return{status:"valid",value:e.data}}}hn.create=t=>new hn({typeName:_.ZodNaN,...T(t)});const yi=Symbol("zod_brand");class ur extends C{_parse(e){const{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}}class Jt extends C{_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?E:s.status==="dirty"?(n.dirty(),He(s.value)):this._def.out._parseAsync({data:s.value,path:r.path,parent:r})})();{const a=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?E:a.status==="dirty"?(n.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:r.path,parent:r})}}static create(e,n){return new Jt({in:e,out:n,typeName:_.ZodPipeline})}}class Et extends C{_parse(e){const n=this._def.innerType._parse(e),r=a=>(Fe(a)&&(a.value=Object.freeze(a.value)),a);return lt(n)?n.then(a=>r(a)):r(n)}unwrap(){return this._def.innerType}}Et.create=(t,e)=>new Et({innerType:t,typeName:_.ZodReadonly,...T(e)});function fa(t,e={},n){return t?Qe.create().superRefine((r,a)=>{var s,i;if(!t(r)){const o=typeof e=="function"?e(r):typeof e=="string"?{message:e}:e,c=(i=(s=o.fatal)!==null&&s!==void 0?s:n)!==null&&i!==void 0?i:!0,u=typeof o=="string"?{message:o}:o;a.addIssue({code:"custom",...u,fatal:c})}}):Qe.create()}const gi={object:z.lazycreate};var _;(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"})(_||(_={}));const vi=(t,e={message:`Input not instance of ${t.name}`})=>fa(n=>n instanceof t,e),la=ue.create,ha=Ie.create,wi=hn.create,xi=Re.create,pa=ht.create,_i=Ne.create,Pi=dn.create,Ei=pt.create,Ai=bt.create,Ti=Qe.create,$i=je.create,Ci=_e.create,ki=fn.create,Si=de.create,Ii=z.create,Ri=z.strictCreate,Mi=mt.create,Oi=gn.create,Bi=yt.create,ji=be.create,Fi=gt.create,Ni=ln.create,zi=ze.create,Li=We.create,Vi=vt.create,Di=wt.create,Zi=Me.create,Gi=xt.create,Ui=Xe.create,Lr=fe.create,Hi=he.create,qi=Oe.create,Wi=fe.createWithPreprocess,Ki=Jt.create,Yi=()=>la().optional(),Ji=()=>ha().optional(),Qi=()=>pa().optional(),Xi={string:t=>ue.create({...t,coerce:!0}),number:t=>Ie.create({...t,coerce:!0}),boolean:t=>ht.create({...t,coerce:!0}),bigint:t=>Re.create({...t,coerce:!0}),date:t=>Ne.create({...t,coerce:!0})},eo=E;var l=Object.freeze({__proto__:null,defaultErrorMap:Je,setErrorMap:Ws,getErrorMap:on,makeIssue:cn,EMPTY_PATH:Ks,addIssueToContext:y,ParseStatus:K,INVALID:E,DIRTY:He,OK:J,isAborted:Dn,isDirty:Zn,isValid:Fe,isAsync:lt,get util(){return O},get objectUtil(){return Vn},ZodParsedType:v,getParsedType:ve,ZodType:C,datetimeRegex:ua,ZodString:ue,ZodNumber:Ie,ZodBigInt:Re,ZodBoolean:ht,ZodDate:Ne,ZodSymbol:dn,ZodUndefined:pt,ZodNull:bt,ZodAny:Qe,ZodUnknown:je,ZodNever:_e,ZodVoid:fn,ZodArray:de,ZodObject:z,ZodUnion:mt,ZodDiscriminatedUnion:gn,ZodIntersection:yt,ZodTuple:be,ZodRecord:gt,ZodMap:ln,ZodSet:ze,ZodFunction:We,ZodLazy:vt,ZodLiteral:wt,ZodEnum:Me,ZodNativeEnum:xt,ZodPromise:Xe,ZodEffects:fe,ZodTransformer:fe,ZodOptional:he,ZodNullable:Oe,ZodDefault:_t,ZodCatch:Pt,ZodNaN:hn,BRAND:yi,ZodBranded:ur,ZodPipeline:Jt,ZodReadonly:Et,custom:fa,Schema:C,ZodSchema:C,late:gi,get ZodFirstPartyTypeKind(){return _},coerce:Xi,any:Ti,array:Si,bigint:xi,boolean:pa,date:_i,discriminatedUnion:Oi,effect:Lr,enum:Zi,function:Li,instanceof:vi,intersection:Bi,lazy:Vi,literal:Di,map:Ni,nan:wi,nativeEnum:Gi,never:Ci,null:Ai,nullable:qi,number:ha,object:Ii,oboolean:Qi,onumber:Ji,optional:Hi,ostring:Yi,pipeline:Ki,preprocess:Wi,promise:Ui,record:Fi,set:zi,strictObject:Ri,string:la,symbol:Pi,transformer:Lr,tuple:ji,undefined:Ei,union:Mi,unknown:$i,void:ki,NEVER:eo,ZodIssueCode:p,quotelessJson:qs,ZodError:ne});const Vr=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],to=[{name:"query",type:"function",stateMutability:"view",inputs:[{type:"tuple[]",name:"queries",components:[{type:"address",name:"sender"},{type:"string[]",name:"urls"},{type:"bytes",name:"data"}]}],outputs:[{type:"bool[]",name:"failures"},{type:"bytes[]",name:"responses"}]},{name:"HttpError",type:"error",inputs:[{type:"uint16",name:"status"},{type:"string",name:"message"}]}];function Le(t,{includeName:e=!1}={}){if(t.type!=="function"&&t.type!=="event"&&t.type!=="error")throw new bo(t.type);return`${t.name}(${dr(t.inputs,{includeName:e})})`}function dr(t,{includeName:e=!1}={}){return t?t.map(n=>no(n,{includeName:e})).join(e?", ":","):""}function no(t,{includeName:e}){return t.type.startsWith("tuple")?`(${dr(t.components,{includeName:e})})${t.type.slice(5)}`:t.type+(e&&t.name?` ${t.name}`:"")}function Pe(t,{strict:e=!0}={}){return!t||typeof t!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(t):t.startsWith("0x")}function G(t){return Pe(t,{strict:!1})?Math.ceil((t.length-2)/2):t.length}const ba="2.41.2";let ot={getDocsUrl:({docsBaseUrl:t,docsPath:e="",docsSlug:n})=>e?`${t??"https://viem.sh"}${e}${n?`#${n}`:""}`:void 0,version:`viem@${ba}`},m=class Un extends Error{constructor(e,n={}){var o;const r=(()=>{var c;return n.cause instanceof Un?n.cause.details:(c=n.cause)!=null&&c.message?n.cause.message:n.details})(),a=n.cause instanceof Un&&n.cause.docsPath||n.docsPath,s=(o=ot.getDocsUrl)==null?void 0:o.call(ot,{...n,docsPath:a}),i=[e||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: ${s}`]:[],...r?[`Details: ${r}`]:[],...ot.version?[`Version: ${ot.version}`]:[]].join(`
2
+ `);super(i,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=r,this.docsPath=a,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=e,this.version=ba}walk(e){return ma(this,e)}};function ma(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause!==void 0?ma(t.cause,e):e?null:t}class ro extends m{constructor({docsPath:e}){super(["A constructor was not found on the ABI.","Make sure you are using the correct ABI and that the constructor exists on it."].join(`
3
+ `),{docsPath:e,name:"AbiConstructorNotFoundError"})}}class Dr extends m{constructor({docsPath:e}){super(["Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.","Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists."].join(`
4
+ `),{docsPath:e,name:"AbiConstructorParamsNotFoundError"})}}class ao extends m{constructor({data:e,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(`
5
+ `),{metaMessages:[`Params: (${dr(n,{includeName:!0})})`,`Data: ${e} (${r} bytes)`],name:"AbiDecodingDataSizeTooSmallError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e,this.params=n,this.size=r}}class fr extends m{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}}class so extends m{constructor({expectedLength:e,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${e}`,`Given length: ${n}`].join(`
6
+ `),{name:"AbiEncodingArrayLengthMismatchError"})}}class io extends m{constructor({expectedSize:e,value:n}){super(`Size of bytes "${n}" (bytes${G(n)}) does not match expected size (bytes${e}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class oo extends m{constructor({expectedLength:e,givenLength:n}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${e}`,`Given length (values): ${n}`].join(`
7
+ `),{name:"AbiEncodingLengthMismatchError"})}}class co extends m{constructor(e,{docsPath:n}){super([`Arguments (\`args\`) were provided to "${e}", but "${e}" on the ABI does not contain any parameters (\`inputs\`).`,"Cannot encode error result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the inputs exist on it."].join(`
8
+ `),{docsPath:n,name:"AbiErrorInputsNotFoundError"})}}class uo extends m{constructor(e,{docsPath:n}={}){super([`Error ${e?`"${e}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(`
9
+ `),{docsPath:n,name:"AbiErrorNotFoundError"})}}class ya extends m{constructor(e,{docsPath:n}){super([`Encoded error signature "${e}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${e}.`].join(`
10
+ `),{docsPath:n,name:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}}class At extends m{constructor(e,{docsPath:n}={}){super([`Function ${e?`"${e}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
11
+ `),{docsPath:n,name:"AbiFunctionNotFoundError"})}}class ga extends m{constructor(e,{docsPath:n}){super([`Function "${e}" does not contain any \`outputs\` on ABI.`,"Cannot decode function result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the function exists on it."].join(`
12
+ `),{docsPath:n,name:"AbiFunctionOutputsNotFoundError"})}}class fo extends m{constructor(e,{docsPath:n}){super([`Encoded function signature "${e}" not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${e}.`].join(`
13
+ `),{docsPath:n,name:"AbiFunctionSignatureNotFoundError"})}}class lo extends m{constructor(e,n){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${e.type}\` in \`${Le(e.abiItem)}\`, and`,`\`${n.type}\` in \`${Le(n.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}class ho extends m{constructor(e,{docsPath:n}){super([`Type "${e}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
14
+ `),{docsPath:n,name:"InvalidAbiEncodingType"})}}class po extends m{constructor(e,{docsPath:n}){super([`Type "${e}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
15
+ `),{docsPath:n,name:"InvalidAbiDecodingType"})}}class va extends m{constructor(e){super([`Value "${e}" is not a valid array.`].join(`
16
+ `),{name:"InvalidArrayError"})}}class bo extends m{constructor(e){super([`"${e}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
17
+ `),{name:"InvalidDefinitionTypeError"})}}class et extends m{constructor({address:e}){super(`Address "${e}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}class wa extends m{constructor({offset:e,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset "${e}" is out-of-bounds (size: ${r}).`,{name:"SliceOffsetOutOfBoundsError"})}}let xa=class extends m{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${e}) exceeds padding size (${n}).`,{name:"SizeExceedsPaddingSizeError"})}};class Zr extends m{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} is expected to be ${n} ${r} long, but is ${e} ${r} long.`,{name:"InvalidBytesLengthError"})}}function at(t,{dir:e,size:n=32}={}){return typeof t=="string"?Se(t,{dir:e,size:n}):mo(t,{dir:e,size:n})}function Se(t,{dir:e,size:n=32}={}){if(n===null)return t;const r=t.replace("0x","");if(r.length>n*2)throw new xa({size:Math.ceil(r.length/2),targetSize:n,type:"hex"});return`0x${r[e==="right"?"padEnd":"padStart"](n*2,"0")}`}function mo(t,{dir:e,size:n=32}={}){if(n===null)return t;if(t.length>n)throw new xa({size:t.length,targetSize:n,type:"bytes"});const r=new Uint8Array(n);for(let a=0;a<n;a++){const s=e==="right";r[s?a:n-a-1]=t[s?a:t.length-a-1]}return r}let _a=class extends m{constructor({max:e,min:n,signed:r,size:a,value:s}){super(`Number "${s}" is not in safe ${a?`${a*8}-bit ${r?"signed":"unsigned"} `:""}integer range ${e?`(${n} to ${e})`:`(above ${n})`}`,{name:"IntegerOutOfRangeError"})}};class yo extends m{constructor(e){super(`Bytes value "${e}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class go extends m{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed ${n} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function lr(t,{dir:e="left"}={}){let n=typeof t=="string"?t.replace("0x",""):t,r=0;for(let a=0;a<n.length-1&&n[e==="left"?a:n.length-a-1].toString()==="0";a++)r++;return n=e==="left"?n.slice(r):n.slice(0,n.length-r),typeof t=="string"?(n.length===1&&e==="right"&&(n=`${n}0`),`0x${n.length%2===1?`0${n}`:n}`):n}function me(t,{size:e}){if(G(t)>e)throw new go({givenSize:G(t),maxSize:e})}function Tt(t,e={}){const{signed:n}=e;e.size&&me(t,{size:e.size});const r=BigInt(t);if(!n)return r;const a=(t.length-2)/2,s=(1n<<BigInt(a)*8n-1n)-1n;return r<=s?r:r-BigInt(`0x${"f".padStart(a*2,"f")}`)-1n}function tt(t,e={}){return Number(Tt(t,e))}const vo=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Hn(t,e={}){return typeof t=="number"||typeof t=="bigint"?F(t,e):typeof t=="string"?hr(t,e):typeof t=="boolean"?Pa(t,e):X(t,e)}function Pa(t,e={}){const n=`0x${Number(t)}`;return typeof e.size=="number"?(me(n,{size:e.size}),at(n,{size:e.size})):n}function X(t,e={}){let n="";for(let a=0;a<t.length;a++)n+=vo[t[a]];const r=`0x${n}`;return typeof e.size=="number"?(me(r,{size:e.size}),at(r,{dir:"right",size:e.size})):r}function F(t,e={}){const{signed:n,size:r}=e,a=BigInt(t);let s;r?n?s=(1n<<BigInt(r)*8n-1n)-1n:s=2n**(BigInt(r)*8n)-1n:typeof t=="number"&&(s=BigInt(Number.MAX_SAFE_INTEGER));const i=typeof s=="bigint"&&n?-s-1n:0;if(s&&a>s||a<i){const c=typeof t=="bigint"?"n":"";throw new _a({max:s?`${s}${c}`:void 0,min:`${i}${c}`,signed:n,size:r,value:`${t}${c}`})}const o=`0x${(n&&a<0?(1n<<BigInt(r*8))+BigInt(a):a).toString(16)}`;return r?at(o,{size:r}):o}const wo=new TextEncoder;function hr(t,e={}){const n=wo.encode(t);return X(n,e)}const xo=new TextEncoder;function pr(t,e={}){return typeof t=="number"||typeof t=="bigint"?Po(t,e):typeof t=="boolean"?_o(t,e):Pe(t)?Ee(t,e):Ea(t,e)}function _o(t,e={}){const n=new Uint8Array(1);return n[0]=Number(t),typeof e.size=="number"?(me(n,{size:e.size}),at(n,{size:e.size})):n}const ye={zero:48,nine:57,A:65,F:70,a:97,f:102};function Gr(t){if(t>=ye.zero&&t<=ye.nine)return t-ye.zero;if(t>=ye.A&&t<=ye.F)return t-(ye.A-10);if(t>=ye.a&&t<=ye.f)return t-(ye.a-10)}function Ee(t,e={}){let n=t;e.size&&(me(n,{size:e.size}),n=at(n,{dir:"right",size:e.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);const a=r.length/2,s=new Uint8Array(a);for(let i=0,o=0;i<a;i++){const c=Gr(r.charCodeAt(o++)),u=Gr(r.charCodeAt(o++));if(c===void 0||u===void 0)throw new m(`Invalid byte sequence ("${r[o-2]}${r[o-1]}" in "${r}").`);s[i]=c*16+u}return s}function Po(t,e){const n=F(t,e);return Ee(n)}function Ea(t,e={}){const n=xo.encode(t);return typeof e.size=="number"?(me(n,{size:e.size}),at(n,{dir:"right",size:e.size})):n}function vn(t,e){const n=e||"hex",r=W.keccak_256(Pe(t,{strict:!1})?pr(t):t);return n==="bytes"?r:Hn(r)}class Qt extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const n=super.get(e);return super.has(e)&&n!==void 0&&(this.delete(e),super.set(e,n)),n}set(e,n){if(super.set(e,n),this.maxSize&&this.size>this.maxSize){const r=this.keys().next().value;r&&this.delete(r)}return this}}const Eo=/^0x[a-fA-F0-9]{40}$/,In=new Qt(8192);function Ae(t,e){const{strict:n=!0}=e??{},r=`${t}.${n}`;if(In.has(r))return In.get(r);const a=Eo.test(t)?t.toLowerCase()===t?!0:n?wn(t)===t:!0:!1;return In.set(r,a),a}const Rn=new Qt(8192);function wn(t,e){if(Rn.has(`${t}.${e}`))return Rn.get(`${t}.${e}`);const n=t.substring(2).toLowerCase(),r=vn(Ea(n),"bytes"),a=n.split("");for(let i=0;i<40;i+=2)r[i>>1]>>4>=8&&a[i]&&(a[i]=a[i].toUpperCase()),(r[i>>1]&15)>=8&&a[i+1]&&(a[i+1]=a[i+1].toUpperCase());const s=`0x${a.join("")}`;return Rn.set(`${t}.${e}`,s),s}function Ao(t,e){if(!Ae(t,{strict:!1}))throw new et({address:t});return wn(t,e)}class Ur extends m{constructor({offset:e}){super(`Offset \`${e}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class To extends m{constructor({length:e,position:n}){super(`Position \`${n}\` is out of bounds (\`0 < position < ${e}\`).`,{name:"PositionOutOfBoundsError"})}}class $o extends m{constructor({count:e,limit:n}){super(`Recursive read limit of \`${n}\` exceeded (recursive read count: \`${e}\`).`,{name:"RecursiveReadLimitExceededError"})}}const Co={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new $o({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(t){if(t<0||t>this.bytes.length-1)throw new To({length:this.bytes.length,position:t})},decrementPosition(t){if(t<0)throw new Ur({offset:t});const e=this.position-t;this.assertPosition(e),this.position=e},getReadCount(t){return this.positionReadCount.get(t||this.position)||0},incrementPosition(t){if(t<0)throw new Ur({offset:t});const e=this.position+t;this.assertPosition(e),this.position=e},inspectByte(t){const e=t??this.position;return this.assertPosition(e),this.bytes[e]},inspectBytes(t,e){const n=e??this.position;return this.assertPosition(n+t-1),this.bytes.subarray(n,n+t)},inspectUint8(t){const e=t??this.position;return this.assertPosition(e),this.bytes[e]},inspectUint16(t){const e=t??this.position;return this.assertPosition(e+1),this.dataView.getUint16(e)},inspectUint24(t){const e=t??this.position;return this.assertPosition(e+2),(this.dataView.getUint16(e)<<8)+this.dataView.getUint8(e+2)},inspectUint32(t){const e=t??this.position;return this.assertPosition(e+3),this.dataView.getUint32(e)},pushByte(t){this.assertPosition(this.position),this.bytes[this.position]=t,this.position++},pushBytes(t){this.assertPosition(this.position+t.length-1),this.bytes.set(t,this.position),this.position+=t.length},pushUint8(t){this.assertPosition(this.position),this.bytes[this.position]=t,this.position++},pushUint16(t){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,t),this.position+=2},pushUint24(t){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,t>>8),this.dataView.setUint8(this.position+2,t&255),this.position+=3},pushUint32(t){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,t),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const t=this.inspectByte();return this.position++,t},readBytes(t,e){this.assertReadLimit(),this._touch();const n=this.inspectBytes(t);return this.position+=e??t,n},readUint8(){this.assertReadLimit(),this._touch();const t=this.inspectUint8();return this.position+=1,t},readUint16(){this.assertReadLimit(),this._touch();const t=this.inspectUint16();return this.position+=2,t},readUint24(){this.assertReadLimit(),this._touch();const t=this.inspectUint24();return this.position+=3,t},readUint32(){this.assertReadLimit(),this._touch();const t=this.inspectUint32();return this.position+=4,t},get remaining(){return this.bytes.length-this.position},setPosition(t){const e=this.position;return this.assertPosition(t),this.position=t,()=>this.position=e},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const t=this.getReadCount();this.positionReadCount.set(this.position,t+1),t>0&&this.recursiveReadCount++}};function br(t,{recursiveReadLimit:e=8192}={}){const n=Object.create(Co);return n.bytes=t,n.dataView=new DataView(t.buffer,t.byteOffset,t.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=e,n}function $t(t,e,n,{strict:r}={}){return Pe(t,{strict:!1})?ko(t,e,n,{strict:r}):$a(t,e,n,{strict:r})}function Aa(t,e){if(typeof e=="number"&&e>0&&e>G(t)-1)throw new wa({offset:e,position:"start",size:G(t)})}function Ta(t,e,n){if(typeof e=="number"&&typeof n=="number"&&G(t)!==n-e)throw new wa({offset:n,position:"end",size:G(t)})}function $a(t,e,n,{strict:r}={}){Aa(t,e);const a=t.slice(e,n);return r&&Ta(a,e,n),a}function ko(t,e,n,{strict:r}={}){Aa(t,e);const a=`0x${t.replace("0x","").slice((e??0)*2,(n??t.length)*2)}`;return r&&Ta(a,e,n),a}function So(t,e={}){typeof e.size<"u"&&me(t,{size:e.size});const n=X(t,e);return Tt(n,e)}function Io(t,e={}){let n=t;if(typeof e.size<"u"&&(me(n,{size:e.size}),n=lr(n)),n.length>1||n[0]>1)throw new yo(n);return!!n[0]}function xe(t,e={}){typeof e.size<"u"&&me(t,{size:e.size});const n=X(t,e);return tt(n,e)}function Ro(t,e={}){let n=t;return typeof e.size<"u"&&(me(n,{size:e.size}),n=lr(n,{dir:"right"})),new TextDecoder().decode(n)}function Ve(t){return typeof t[0]=="string"?Xt(t):Mo(t)}function Mo(t){let e=0;for(const a of t)e+=a.length;const n=new Uint8Array(e);let r=0;for(const a of t)n.set(a,r),r+=a.length;return n}function Xt(t){return`0x${t.reduce((e,n)=>e+n.replace("0x",""),"")}`}const Oo=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;function mr(t,e){if(t.length!==e.length)throw new oo({expectedLength:t.length,givenLength:e.length});const n=Bo({params:t,values:e}),r=gr(n);return r.length===0?"0x":r}function Bo({params:t,values:e}){const n=[];for(let r=0;r<t.length;r++)n.push(yr({param:t[r],value:e[r]}));return n}function yr({param:t,value:e}){const n=vr(t.type);if(n){const[r,a]=n;return Fo(e,{length:r,param:{...t,type:a}})}if(t.type==="tuple")return Do(e,{param:t});if(t.type==="address")return jo(e);if(t.type==="bool")return zo(e);if(t.type.startsWith("uint")||t.type.startsWith("int")){const r=t.type.startsWith("int"),[,,a="256"]=Oo.exec(t.type)??[];return Lo(e,{signed:r,size:Number(a)})}if(t.type.startsWith("bytes"))return No(e,{param:t});if(t.type==="string")return Vo(e);throw new ho(t.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function gr(t){let e=0;for(let s=0;s<t.length;s++){const{dynamic:i,encoded:o}=t[s];i?e+=32:e+=G(o)}const n=[],r=[];let a=0;for(let s=0;s<t.length;s++){const{dynamic:i,encoded:o}=t[s];i?(n.push(F(e+a,{size:32})),r.push(o),a+=G(o)):n.push(o)}return Ve([...n,...r])}function jo(t){if(!Ae(t))throw new et({address:t});return{dynamic:!1,encoded:Se(t.toLowerCase())}}function Fo(t,{length:e,param:n}){const r=e===null;if(!Array.isArray(t))throw new va(t);if(!r&&t.length!==e)throw new so({expectedLength:e,givenLength:t.length,type:`${n.type}[${e}]`});let a=!1;const s=[];for(let i=0;i<t.length;i++){const o=yr({param:n,value:t[i]});o.dynamic&&(a=!0),s.push(o)}if(r||a){const i=gr(s);if(r){const o=F(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?Ve([o,i]):o}}if(a)return{dynamic:!0,encoded:i}}return{dynamic:!1,encoded:Ve(s.map(({encoded:i})=>i))}}function No(t,{param:e}){const[,n]=e.type.split("bytes"),r=G(t);if(!n){let a=t;return r%32!==0&&(a=Se(a,{dir:"right",size:Math.ceil((t.length-2)/2/32)*32})),{dynamic:!0,encoded:Ve([Se(F(r,{size:32})),a])}}if(r!==Number.parseInt(n,10))throw new io({expectedSize:Number.parseInt(n,10),value:t});return{dynamic:!1,encoded:Se(t,{dir:"right"})}}function zo(t){if(typeof t!="boolean")throw new m(`Invalid boolean value: "${t}" (type: ${typeof t}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Se(Pa(t))}}function Lo(t,{signed:e,size:n=256}){if(typeof n=="number"){const r=2n**(BigInt(n)-(e?1n:0n))-1n,a=e?-r-1n:0n;if(t>r||t<a)throw new _a({max:r.toString(),min:a.toString(),signed:e,size:n/8,value:t.toString()})}return{dynamic:!1,encoded:F(t,{size:32,signed:e})}}function Vo(t){const e=hr(t),n=Math.ceil(G(e)/32),r=[];for(let a=0;a<n;a++)r.push(Se($t(e,a*32,(a+1)*32),{dir:"right"}));return{dynamic:!0,encoded:Ve([Se(F(G(e),{size:32})),...r])}}function Do(t,{param:e}){let n=!1;const r=[];for(let a=0;a<e.components.length;a++){const s=e.components[a],i=Array.isArray(t)?a:s.name,o=yr({param:s,value:t[i]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?gr(r):Ve(r.map(({encoded:a})=>a))}}function vr(t){const e=t.match(/^(.*)\[(\d+)?\]$/);return e?[e[2]?Number(e[2]):null,e[1]]:void 0}function wr(t,e){const n=typeof e=="string"?Ee(e):e,r=br(n);if(G(n)===0&&t.length>0)throw new fr;if(G(e)&&G(e)<32)throw new ao({data:typeof e=="string"?e:X(e),params:t,size:G(e)});let a=0;const s=[];for(let i=0;i<t.length;++i){const o=t[i];r.setPosition(a);const[c,u]=Ke(r,o,{staticPosition:0});a+=u,s.push(c)}return s}function Ke(t,e,{staticPosition:n}){const r=vr(e.type);if(r){const[a,s]=r;return Go(t,{...e,type:s},{length:a,staticPosition:n})}if(e.type==="tuple")return Wo(t,e,{staticPosition:n});if(e.type==="address")return Zo(t);if(e.type==="bool")return Uo(t);if(e.type.startsWith("bytes"))return Ho(t,e,{staticPosition:n});if(e.type.startsWith("uint")||e.type.startsWith("int"))return qo(t,e);if(e.type==="string")return Ko(t,{staticPosition:n});throw new po(e.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const Hr=32,qn=32;function Zo(t){const e=t.readBytes(32);return[wn(X($a(e,-20))),32]}function Go(t,e,{length:n,staticPosition:r}){if(!n){const i=xe(t.readBytes(qn)),o=r+i,c=o+Hr;t.setPosition(o);const u=xe(t.readBytes(Hr)),d=Ct(e);let h=0;const b=[];for(let f=0;f<u;++f){t.setPosition(c+(d?f*32:h));const[g,A]=Ke(t,e,{staticPosition:c});h+=A,b.push(g)}return t.setPosition(r+32),[b,32]}if(Ct(e)){const i=xe(t.readBytes(qn)),o=r+i,c=[];for(let u=0;u<n;++u){t.setPosition(o+u*32);const[d]=Ke(t,e,{staticPosition:o});c.push(d)}return t.setPosition(r+32),[c,32]}let a=0;const s=[];for(let i=0;i<n;++i){const[o,c]=Ke(t,e,{staticPosition:r+a});a+=c,s.push(o)}return[s,a]}function Uo(t){return[Io(t.readBytes(32),{size:32}),32]}function Ho(t,e,{staticPosition:n}){const[r,a]=e.type.split("bytes");if(!a){const i=xe(t.readBytes(32));t.setPosition(n+i);const o=xe(t.readBytes(32));if(o===0)return t.setPosition(n+32),["0x",32];const c=t.readBytes(o);return t.setPosition(n+32),[X(c),32]}return[X(t.readBytes(Number.parseInt(a,10),32)),32]}function qo(t,e){const n=e.type.startsWith("int"),r=Number.parseInt(e.type.split("int")[1]||"256",10),a=t.readBytes(32);return[r>48?So(a,{signed:n}):xe(a,{signed:n}),32]}function Wo(t,e,{staticPosition:n}){const r=e.components.length===0||e.components.some(({name:i})=>!i),a=r?[]:{};let s=0;if(Ct(e)){const i=xe(t.readBytes(qn)),o=n+i;for(let c=0;c<e.components.length;++c){const u=e.components[c];t.setPosition(o+s);const[d,h]=Ke(t,u,{staticPosition:o});s+=h,a[r?c:u==null?void 0:u.name]=d}return t.setPosition(n+32),[a,32]}for(let i=0;i<e.components.length;++i){const o=e.components[i],[c,u]=Ke(t,o,{staticPosition:n});a[r?i:o==null?void 0:o.name]=c,s+=u}return[a,s]}function Ko(t,{staticPosition:e}){const n=xe(t.readBytes(32)),r=e+n;t.setPosition(r);const a=xe(t.readBytes(32));if(a===0)return t.setPosition(e+32),["",32];const s=t.readBytes(a,32),i=Ro(lr(s));return t.setPosition(e+32),[i,32]}function Ct(t){var r;const{type:e}=t;if(e==="string"||e==="bytes"||e.endsWith("[]"))return!0;if(e==="tuple")return(r=t.components)==null?void 0:r.some(Ct);const n=vr(t.type);return!!(n&&Ct({...t,type:n[1]}))}const Yo=t=>vn(pr(t));function Jo(t){return Yo(t)}const Qo="1.1.0";let oe=class Wn extends Error{constructor(e,n={}){var i;const r=n.cause instanceof Wn?n.cause.details:(i=n.cause)!=null&&i.message?n.cause.message:n.details,a=n.cause instanceof Wn&&n.cause.docsPath||n.docsPath,s=[e||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...a?[`Docs: https://abitype.dev${a}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Qo}`].join(`
18
+ `);super(s),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiTypeError"}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=a,this.metaMessages=n.metaMessages,this.shortMessage=e}};function Te(t,e){const n=t.exec(e);return n==null?void 0:n.groups}const Ca=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ka=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Sa=/^\(.+?\).*?$/,qr=/^tuple(?<array>(\[(\d*)\])*)$/;function Kn(t){let e=t.type;if(qr.test(t.type)&&"components"in t){e="(";const n=t.components.length;for(let a=0;a<n;a++){const s=t.components[a];e+=Kn(s),a<n-1&&(e+=", ")}const r=Te(qr,t.type);return e+=`)${(r==null?void 0:r.array)??""}`,Kn({...t,type:e})}return"indexed"in t&&t.indexed&&(e=`${e} indexed`),t.name?`${e} ${t.name}`:e}function ct(t){let e="";const n=t.length;for(let r=0;r<n;r++){const a=t[r];e+=Kn(a),r!==n-1&&(e+=", ")}return e}function Xo(t){var e;return t.type==="function"?`function ${t.name}(${ct(t.inputs)})${t.stateMutability&&t.stateMutability!=="nonpayable"?` ${t.stateMutability}`:""}${(e=t.outputs)!=null&&e.length?` returns (${ct(t.outputs)})`:""}`:t.type==="event"?`event ${t.name}(${ct(t.inputs)})`:t.type==="error"?`error ${t.name}(${ct(t.inputs)})`:t.type==="constructor"?`constructor(${ct(t.inputs)})${t.stateMutability==="payable"?" payable":""}`:t.type==="fallback"?`fallback() external${t.stateMutability==="payable"?" payable":""}`:"receive() external payable"}const Ia=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function ec(t){return Ia.test(t)}function tc(t){return Te(Ia,t)}const Ra=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function nc(t){return Ra.test(t)}function rc(t){return Te(Ra,t)}const Ma=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function ac(t){return Ma.test(t)}function sc(t){return Te(Ma,t)}const Oa=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function Ba(t){return Oa.test(t)}function ic(t){return Te(Oa,t)}const ja=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function oc(t){return ja.test(t)}function cc(t){return Te(ja,t)}const Fa=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function uc(t){return Fa.test(t)}function dc(t){return Te(Fa,t)}const fc=/^receive\(\) external payable$/;function lc(t){return fc.test(t)}const hc=new Set(["indexed"]),Yn=new Set(["calldata","memory","storage"]);class pc extends oe{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownTypeError"})}}class bc extends oe{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class mc extends oe{constructor({param:e}){super("Invalid ABI parameter.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class yc extends oe{constructor({param:e,name:n}){super("Invalid ABI parameter.",{details:e,metaMessages:[`"${n}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SolidityProtectedKeywordError"})}}class gc extends oe{constructor({param:e,type:n,modifier:r}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${r}" not allowed${n?` in "${n}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class vc extends oe{constructor({param:e,type:n,modifier:r}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${r}" not allowed${n?` in "${n}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${r}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class wc extends oe{constructor({abiParameter:e}){super("Invalid ABI parameter.",{details:JSON.stringify(e,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class st extends oe{constructor({signature:e,type:n}){super(`Invalid ${n} signature.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class xc extends oe{constructor({signature:e}){super("Unknown signature.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class _c extends oe{constructor({signature:e}){super("Invalid struct signature.",{details:e,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class Pc extends oe{constructor({type:e}){super("Circular reference detected.",{metaMessages:[`Struct "${e}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class Ec extends oe{constructor({current:e,depth:n}){super("Unbalanced parentheses.",{metaMessages:[`"${e.trim()}" has too many ${n>0?"opening":"closing"} parentheses.`],details:`Depth "${n}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}function Ac(t,e,n){let r="";if(n)for(const a of Object.entries(n)){if(!a)continue;let s="";for(const i of a[1])s+=`[${i.type}${i.name?`:${i.name}`:""}]`;r+=`(${a[0]}{${s}})`}return e?`${e}:${t}${r}`:t}const Mn=new Map([["address",{type:"address"}],["bool",{type:"bool"}],["bytes",{type:"bytes"}],["bytes32",{type:"bytes32"}],["int",{type:"int256"}],["int256",{type:"int256"}],["string",{type:"string"}],["uint",{type:"uint256"}],["uint8",{type:"uint8"}],["uint16",{type:"uint16"}],["uint24",{type:"uint24"}],["uint32",{type:"uint32"}],["uint64",{type:"uint64"}],["uint96",{type:"uint96"}],["uint112",{type:"uint112"}],["uint160",{type:"uint160"}],["uint192",{type:"uint192"}],["uint256",{type:"uint256"}],["address owner",{type:"address",name:"owner"}],["address to",{type:"address",name:"to"}],["bool approved",{type:"bool",name:"approved"}],["bytes _data",{type:"bytes",name:"_data"}],["bytes data",{type:"bytes",name:"data"}],["bytes signature",{type:"bytes",name:"signature"}],["bytes32 hash",{type:"bytes32",name:"hash"}],["bytes32 r",{type:"bytes32",name:"r"}],["bytes32 root",{type:"bytes32",name:"root"}],["bytes32 s",{type:"bytes32",name:"s"}],["string name",{type:"string",name:"name"}],["string symbol",{type:"string",name:"symbol"}],["string tokenURI",{type:"string",name:"tokenURI"}],["uint tokenId",{type:"uint256",name:"tokenId"}],["uint8 v",{type:"uint8",name:"v"}],["uint256 balance",{type:"uint256",name:"balance"}],["uint256 tokenId",{type:"uint256",name:"tokenId"}],["uint256 value",{type:"uint256",name:"value"}],["event:address indexed from",{type:"address",name:"from",indexed:!0}],["event:address indexed to",{type:"address",name:"to",indexed:!0}],["event:uint indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}],["event:uint256 indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}]]);function Tc(t,e={}){if(ac(t))return $c(t,e);if(nc(t))return Cc(t,e);if(ec(t))return kc(t,e);if(oc(t))return Sc(t,e);if(uc(t))return Ic(t);if(lc(t))return{type:"receive",stateMutability:"payable"};throw new xc({signature:t})}function $c(t,e={}){const n=sc(t);if(!n)throw new st({signature:t,type:"function"});const r=ce(n.parameters),a=[],s=r.length;for(let o=0;o<s;o++)a.push(De(r[o],{modifiers:Yn,structs:e,type:"function"}));const i=[];if(n.returns){const o=ce(n.returns),c=o.length;for(let u=0;u<c;u++)i.push(De(o[u],{modifiers:Yn,structs:e,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:a,outputs:i}}function Cc(t,e={}){const n=rc(t);if(!n)throw new st({signature:t,type:"event"});const r=ce(n.parameters),a=[],s=r.length;for(let i=0;i<s;i++)a.push(De(r[i],{modifiers:hc,structs:e,type:"event"}));return{name:n.name,type:"event",inputs:a}}function kc(t,e={}){const n=tc(t);if(!n)throw new st({signature:t,type:"error"});const r=ce(n.parameters),a=[],s=r.length;for(let i=0;i<s;i++)a.push(De(r[i],{structs:e,type:"error"}));return{name:n.name,type:"error",inputs:a}}function Sc(t,e={}){const n=cc(t);if(!n)throw new st({signature:t,type:"constructor"});const r=ce(n.parameters),a=[],s=r.length;for(let i=0;i<s;i++)a.push(De(r[i],{structs:e,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:a}}function Ic(t){const e=dc(t);if(!e)throw new st({signature:t,type:"fallback"});return{type:"fallback",stateMutability:e.stateMutability??"nonpayable"}}const Rc=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\spayable)?)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Mc=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Oc=/^u?int$/;function De(t,e){var h,b;const n=Ac(t,e==null?void 0:e.type,e==null?void 0:e.structs);if(Mn.has(n))return Mn.get(n);const r=Sa.test(t),a=Te(r?Mc:Rc,t);if(!a)throw new mc({param:t});if(a.name&&jc(a.name))throw new yc({param:t,name:a.name});const s=a.name?{name:a.name}:{},i=a.modifier==="indexed"?{indexed:!0}:{},o=(e==null?void 0:e.structs)??{};let c,u={};if(r){c="tuple";const f=ce(a.type),g=[],A=f.length;for(let j=0;j<A;j++)g.push(De(f[j],{structs:o}));u={components:g}}else if(a.type in o)c="tuple",u={components:o[a.type]};else if(Oc.test(a.type))c=`${a.type}256`;else if(a.type==="address payable")c="address";else if(c=a.type,(e==null?void 0:e.type)!=="struct"&&!Na(c))throw new bc({type:c});if(a.modifier){if(!((b=(h=e==null?void 0:e.modifiers)==null?void 0:h.has)!=null&&b.call(h,a.modifier)))throw new gc({param:t,type:e==null?void 0:e.type,modifier:a.modifier});if(Yn.has(a.modifier)&&!Fc(c,!!a.array))throw new vc({param:t,type:e==null?void 0:e.type,modifier:a.modifier})}const d={type:`${c}${a.array??""}`,...s,...i,...u};return Mn.set(n,d),d}function ce(t,e=[],n="",r=0){const a=t.trim().length;for(let s=0;s<a;s++){const i=t[s],o=t.slice(s+1);switch(i){case",":return r===0?ce(o,[...e,n.trim()]):ce(o,e,`${n}${i}`,r);case"(":return ce(o,e,`${n}${i}`,r+1);case")":return ce(o,e,`${n}${i}`,r-1);default:return ce(o,e,`${n}${i}`,r)}}if(n==="")return e;if(r!==0)throw new Ec({current:n,depth:r});return e.push(n.trim()),e}function Na(t){return t==="address"||t==="bool"||t==="function"||t==="string"||Ca.test(t)||ka.test(t)}const Bc=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function jc(t){return t==="address"||t==="bool"||t==="function"||t==="string"||t==="tuple"||Ca.test(t)||ka.test(t)||Bc.test(t)}function Fc(t,e){return e||t==="bytes"||t==="string"||t==="tuple"}function Nc(t){const e={},n=t.length;for(let i=0;i<n;i++){const o=t[i];if(!Ba(o))continue;const c=ic(o);if(!c)throw new st({signature:o,type:"struct"});const u=c.properties.split(";"),d=[],h=u.length;for(let b=0;b<h;b++){const g=u[b].trim();if(!g)continue;const A=De(g,{type:"struct"});d.push(A)}if(!d.length)throw new _c({signature:o});e[c.name]=d}const r={},a=Object.entries(e),s=a.length;for(let i=0;i<s;i++){const[o,c]=a[i];r[o]=za(c,e)}return r}const zc=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function za(t,e,n=new Set){const r=[],a=t.length;for(let s=0;s<a;s++){const i=t[s];if(Sa.test(i.type))r.push(i);else{const c=Te(zc,i.type);if(!(c!=null&&c.type))throw new wc({abiParameter:i});const{array:u,type:d}=c;if(d in e){if(n.has(d))throw new Pc({type:d});r.push({...i,type:`tuple${u??""}`,components:za(e[d]??[],e,new Set([...n,d]))})}else if(Na(d))r.push(i);else throw new pc({type:d})}}return r}function La(t){const e=Nc(t),n=[],r=t.length;for(let a=0;a<r;a++){const s=t[a];Ba(s)||n.push(Tc(s,e))}return n}function Lc(t){let e=!0,n="",r=0,a="",s=!1;for(let i=0;i<t.length;i++){const o=t[i];if(["(",")",","].includes(o)&&(e=!0),o==="("&&r++,o===")"&&r--,!!e){if(r===0){if(o===" "&&["event","function",""].includes(a))a="";else if(a+=o,o===")"){s=!0;break}continue}if(o===" "){t[i-1]!==","&&n!==","&&n!==",("&&(n="",e=!1);continue}a+=o,n+=o}}if(!s)throw new m("Unable to normalize signature.");return a}const Vc=t=>{const e=typeof t=="string"?t:Xo(t);return Lc(e)};function Va(t){return Jo(Vc(t))}const Dc=Va,xn=t=>$t(Va(t),0,4);function _n(t){const{abi:e,args:n=[],name:r}=t,a=Pe(r,{strict:!1}),s=e.filter(o=>a?o.type==="function"?xn(o)===r:o.type==="event"?Dc(o)===r:!1:"name"in o&&o.name===r);if(s.length===0)return;if(s.length===1)return s[0];let i;for(const o of s){if(!("inputs"in o))continue;if(!n||n.length===0){if(!o.inputs||o.inputs.length===0)return o;continue}if(!o.inputs||o.inputs.length===0||o.inputs.length!==n.length)continue;if(n.every((u,d)=>{const h="inputs"in o&&o.inputs[d];return h?Jn(u,h):!1})){if(i&&"inputs"in i&&i.inputs){const u=Da(o.inputs,i.inputs,n);if(u)throw new lo({abiItem:o,type:u[0]},{abiItem:i,type:u[1]})}i=o}}return i||s[0]}function Jn(t,e){const n=typeof t,r=e.type;switch(r){case"address":return Ae(t,{strict:!1});case"bool":return n==="boolean";case"function":return n==="string";case"string":return n==="string";default:return r==="tuple"&&"components"in e?Object.values(e.components).every((a,s)=>Jn(Object.values(t)[s],a)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n==="number"||n==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n==="string"||t instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)?Array.isArray(t)&&t.every(a=>Jn(a,{...e,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function Da(t,e,n){for(const r in t){const a=t[r],s=e[r];if(a.type==="tuple"&&s.type==="tuple"&&"components"in a&&"components"in s)return Da(a.components,s.components,n[r]);const i=[a.type,s.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?Ae(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?Ae(n[r],{strict:!1}):!1)return i}}const On="/docs/contract/decodeFunctionResult";function xr(t){const{abi:e,args:n,functionName:r,data:a}=t;let s=e[0];if(r){const o=_n({abi:e,args:n,name:r});if(!o)throw new At(r,{docsPath:On});s=o}if(s.type!=="function")throw new At(void 0,{docsPath:On});if(!s.outputs)throw new ga(s.name,{docsPath:On});const i=wr(s.outputs,a);if(i&&i.length>1)return i;if(i&&i.length===1)return i[0]}const Wr="/docs/contract/encodeFunctionData";function Zc(t){const{abi:e,args:n,functionName:r}=t;let a=e[0];if(r){const s=_n({abi:e,args:n,name:r});if(!s)throw new At(r,{docsPath:Wr});a=s}if(a.type!=="function")throw new At(void 0,{docsPath:Wr});return{abi:[a],functionName:xn(Le(a))}}function Pn(t){const{args:e}=t,{abi:n,functionName:r}=(()=>{var o;return t.abi.length===1&&((o=t.functionName)!=null&&o.startsWith("0x"))?t:Zc(t)})(),a=n[0],s=r,i="inputs"in a&&a.inputs?mr(a.inputs,e??[]):void 0;return Xt([s,i??"0x"])}class Qn extends m{constructor({blockNumber:e,chain:n,contract:r}){super(`Chain "${n.name}" does not support contract "${r.name}".`,{metaMessages:["This could be due to any of the following:",...e&&r.blockCreated&&r.blockCreated>e?[`- The contract "${r.name}" was not deployed until block ${r.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract "${r.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class Gc extends m{constructor({chain:e,currentChainId:n}){super(`The current chain of the wallet (id: ${n}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${n}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:"ChainMismatchError"})}}class Uc extends m{constructor(){super(["No chain was provided to the request.","Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient."].join(`
19
+ `),{name:"ChainNotFoundError"})}}class Za extends m{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}function Hc({blockNumber:t,chain:e,contract:n}){var a;const r=(a=e==null?void 0:e.contracts)==null?void 0:a[n];if(!r)throw new Qn({chain:e,contract:{name:n}});if(t&&r.blockCreated&&r.blockCreated>t)throw new Qn({blockNumber:t,chain:e,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function ie(t){return typeof t=="string"?{address:t,type:"json-rpc"}:t}const qc={1:"An `assert` condition failed.",17:"Arithmetic operation resulted in underflow or overflow.",18:"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).",33:"Attempted to convert to an invalid type.",34:"Attempted to access a storage byte array that is incorrectly encoded.",49:"Performed `.pop()` on an empty array",50:"Array index is out of bounds.",65:"Allocated too much memory or created an array which is too large.",81:"Attempted to call a zero-initialized variable of internal function type."},Ga={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},Wc={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};function Ua(t){const{abi:e,data:n}=t,r=$t(n,0,4);if(r==="0x")throw new fr;const s=[...e||[],Ga,Wc].find(i=>i.type==="error"&&r===xn(Le(i)));if(!s)throw new ya(r,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:s,args:"inputs"in s&&s.inputs&&s.inputs.length>0?wr(s.inputs,$t(n,4)):void 0,errorName:s.name}}const en=(t,e,n)=>JSON.stringify(t,(r,a)=>typeof a=="bigint"?a.toString():a,n);function Ha({abiItem:t,args:e,includeFunctionName:n=!0,includeName:r=!1}){if("name"in t&&"inputs"in t&&t.inputs)return`${n?t.name:""}(${t.inputs.map((a,s)=>`${r&&a.name?`${a.name}: `:""}${typeof e[s]=="object"?en(e[s]):e[s]}`).join(", ")})`}const Kc={gwei:9,wei:18},Yc={ether:-9,wei:9};function qa(t,e){let n=t.toString();const r=n.startsWith("-");r&&(n=n.slice(1)),n=n.padStart(e,"0");let[a,s]=[n.slice(0,n.length-e),n.slice(n.length-e)];return s=s.replace(/(0+)$/,""),`${r?"-":""}${a||"0"}${s?`.${s}`:""}`}function _r(t,e="wei"){return qa(t,Kc[e])}function Q(t,e="wei"){return qa(t,Yc[e])}class Jc extends m{constructor({address:e}){super(`State for account "${e}" is set multiple times.`,{name:"AccountStateConflictError"})}}class Qc extends m{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function Kr(t){return t.reduce((e,{slot:n,value:r})=>`${e} ${n}: ${r}
20
+ `,"")}function Xc(t){return t.reduce((e,{address:n,...r})=>{let a=`${e} ${n}:
21
+ `;return r.nonce&&(a+=` nonce: ${r.nonce}
22
+ `),r.balance&&(a+=` balance: ${r.balance}
23
+ `),r.code&&(a+=` code: ${r.code}
24
+ `),r.state&&(a+=` state:
25
+ `,a+=Kr(r.state)),r.stateDiff&&(a+=` stateDiff:
26
+ `,a+=Kr(r.stateDiff)),a},` State Override:
27
+ `).slice(0,-1)}function tn(t){const e=Object.entries(t).map(([r,a])=>a===void 0||a===!1?null:[r,a]).filter(Boolean),n=e.reduce((r,[a])=>Math.max(r,a.length),0);return e.map(([r,a])=>` ${`${r}:`.padEnd(n+1)} ${a}`).join(`
28
+ `)}class e0 extends m{constructor({transaction:e}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",tn(e),"}","","To infer the type, either provide:","- a `type` to the Transaction, or","- an EIP-1559 Transaction with `maxFeePerGas`, or","- an EIP-2930 Transaction with `gasPrice` & `accessList`, or","- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or","- an EIP-7702 Transaction with `authorizationList`, or","- a Legacy Transaction with `gasPrice`"],name:"InvalidSerializableTransactionError"})}}class t0 extends m{constructor(e,{account:n,docsPath:r,chain:a,data:s,gas:i,gasPrice:o,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:d,to:h,value:b}){var g;const f=tn({chain:a&&`${a==null?void 0:a.name} (id: ${a==null?void 0:a.id})`,from:n==null?void 0:n.address,to:h,value:typeof b<"u"&&`${_r(b)} ${((g=a==null?void 0:a.nativeCurrency)==null?void 0:g.symbol)||"ETH"}`,data:s,gas:i,gasPrice:typeof o<"u"&&`${Q(o)} gwei`,maxFeePerGas:typeof c<"u"&&`${Q(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${Q(u)} gwei`,nonce:d});super(e.shortMessage,{cause:e,docsPath:r,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],"Request Arguments:",f].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}const n0=t=>t,Pr=t=>t;class r0 extends m{constructor(e,{account:n,docsPath:r,chain:a,data:s,gas:i,gasPrice:o,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:d,to:h,value:b,stateOverride:f}){var j;const g=n?ie(n):void 0;let A=tn({from:g==null?void 0:g.address,to:h,value:typeof b<"u"&&`${_r(b)} ${((j=a==null?void 0:a.nativeCurrency)==null?void 0:j.symbol)||"ETH"}`,data:s,gas:i,gasPrice:typeof o<"u"&&`${Q(o)} gwei`,maxFeePerGas:typeof c<"u"&&`${Q(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${Q(u)} gwei`,nonce:d});f&&(A+=`
29
+ ${Xc(f)}`),super(e.shortMessage,{cause:e,docsPath:r,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],"Raw Call Arguments:",A].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}class a0 extends m{constructor(e,{abi:n,args:r,contractAddress:a,docsPath:s,functionName:i,sender:o}){const c=_n({abi:n,args:r,name:i}),u=c?Ha({abiItem:c,args:r,includeFunctionName:!1,includeName:!1}):void 0,d=c?Le(c,{includeName:!0}):void 0,h=tn({address:a&&n0(a),function:d,args:u&&u!=="()"&&`${[...Array((i==null?void 0:i.length)??0).keys()].map(()=>" ").join("")}${u}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function "${i}".`,{cause:e,docsPath:s,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],h&&"Contract Call:",h].filter(Boolean),name:"ContractFunctionExecutionError"}),Object.defineProperty(this,"abi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contractAddress",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"formattedArgs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"functionName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sender",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=n,this.args=r,this.cause=e,this.contractAddress=a,this.functionName=i,this.sender=o}}class s0 extends m{constructor({abi:e,data:n,functionName:r,message:a}){let s,i,o,c;if(n&&n!=="0x")try{i=Ua({abi:e,data:n});const{abiItem:d,errorName:h,args:b}=i;if(h==="Error")c=b[0];else if(h==="Panic"){const[f]=b;c=qc[f]}else{const f=d?Le(d,{includeName:!0}):void 0,g=d&&b?Ha({abiItem:d,args:b,includeFunctionName:!1,includeName:!1}):void 0;o=[f?`Error: ${f}`:"",g&&g!=="()"?` ${[...Array((h==null?void 0:h.length)??0).keys()].map(()=>" ").join("")}${g}`:""]}}catch(d){s=d}else a&&(c=a);let u;s instanceof ya&&(u=s.signature,o=[`Unable to decode signature "${u}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${u}.`]),super(c&&c!=="execution reverted"||u?[`The contract function "${r}" reverted with the following ${u?"signature":"reason"}:`,c||u].join(`
30
+ `):`The contract function "${r}" reverted.`,{cause:s,metaMessages:o,name:"ContractFunctionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"raw",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"reason",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=i,this.raw=n,this.reason=c,this.signature=u}}class i0 extends m{constructor({functionName:e}){super(`The contract function "${e}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${e}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}}class o0 extends m{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory "${e}".`:""}`,{metaMessages:["Please ensure:","- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).","- The `factoryData` is a valid encoded function call for contract deployment function on the factory."],name:"CounterfactualDeploymentFailedError"})}}class Wa extends m{constructor({data:e,message:n}){super(n||"",{name:"RawContractError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}function Z(t,e,n){const r=t[e.name];if(typeof r=="function")return r;const a=t[n];return typeof a=="function"?a:s=>e(t,s)}class Er extends m{constructor({body:e,cause:n,details:r,headers:a,status:s,url:i}){super("HTTP request failed.",{cause:n,details:r,metaMessages:[s&&`Status: ${s}`,`URL: ${Pr(i)}`,e&&`Request body: ${en(e)}`].filter(Boolean),name:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=a,this.status=s,this.url=i}}class Ka extends m{constructor({body:e,error:n,url:r}){super("RPC Request failed.",{cause:n,details:n.message,metaMessages:[`URL: ${Pr(r)}`,`Request body: ${en(e)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n.code,this.data=n.data,this.url=r}}const c0=-1;class ee extends m{constructor(e,{code:n,docsPath:r,metaMessages:a,name:s,shortMessage:i}){super(i,{cause:e,docsPath:r,metaMessages:a||(e==null?void 0:e.metaMessages),name:s||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=s||e.name,this.code=e instanceof Ka?e.code:n??c0}}class re extends ee{constructor(e,n){super(e,n),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n.data}}class kt extends ee{constructor(e){super(e,{code:kt.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(kt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class St extends ee{constructor(e){super(e,{code:St.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(St,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class It extends ee{constructor(e,{method:n}={}){super(e,{code:It.code,name:"MethodNotFoundRpcError",shortMessage:`The method${n?` "${n}"`:""} does not exist / is not available.`})}}Object.defineProperty(It,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class Rt extends ee{constructor(e){super(e,{code:Rt.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
31
+ `)})}}Object.defineProperty(Rt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class Ze extends ee{constructor(e){super(e,{code:Ze.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(Ze,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class nt extends ee{constructor(e){super(e,{code:nt.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
32
+ `)})}}Object.defineProperty(nt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class Mt extends ee{constructor(e){super(e,{code:Mt.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(Mt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class Ot extends ee{constructor(e){super(e,{code:Ot.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(Ot,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class Bt extends ee{constructor(e){super(e,{code:Bt.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(Bt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class Be extends ee{constructor(e,{method:n}={}){super(e,{code:Be.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${n?` "${n}"`:""} is not supported.`})}}Object.defineProperty(Be,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class rt extends ee{constructor(e){super(e,{code:rt.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(rt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class jt extends ee{constructor(e){super(e,{code:jt.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(jt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class Ye extends re{constructor(e){super(e,{code:Ye.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(Ye,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class Ft extends re{constructor(e){super(e,{code:Ft.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(Ft,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class Nt extends re{constructor(e,{method:n}={}){super(e,{code:Nt.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${n?` " ${n}"`:""}.`})}}Object.defineProperty(Nt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class zt extends re{constructor(e){super(e,{code:zt.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(zt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class Lt extends re{constructor(e){super(e,{code:Lt.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(Lt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class Vt extends re{constructor(e){super(e,{code:Vt.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(Vt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Dt extends re{constructor(e){super(e,{code:Dt.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(Dt,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class Zt extends re{constructor(e){super(e,{code:Zt.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}}Object.defineProperty(Zt,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});class Gt extends re{constructor(e){super(e,{code:Gt.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(Gt,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class Ut extends re{constructor(e){super(e,{code:Ut.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(Ut,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class Ht extends re{constructor(e){super(e,{code:Ht.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty(Ht,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class qt extends re{constructor(e){super(e,{code:qt.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(qt,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class Wt extends re{constructor(e){super(e,{code:Wt.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(Wt,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class u0 extends ee{constructor(e){super(e,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}const d0=3;function Ar(t,{abi:e,address:n,args:r,docsPath:a,functionName:s,sender:i}){const o=t instanceof Wa?t:t instanceof m?t.walk(g=>"data"in g)||t.walk():{},{code:c,data:u,details:d,message:h,shortMessage:b}=o,f=t instanceof fr?new i0({functionName:s}):[d0,Ze.code].includes(c)&&(u||d||h||b)||c===nt.code&&d==="execution reverted"&&u?new s0({abi:e,data:typeof u=="object"?u.data:u,functionName:s,message:o instanceof Ka?d:b??h}):t;return new a0(f,{abi:e,args:r,contractAddress:n,docsPath:a,functionName:s,sender:i})}const f0="0.1.1";function l0(){return f0}class Kt extends Error{constructor(e,n={}){const r=(()=>{var c;if(n.cause instanceof Kt){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&"details"in n.cause&&typeof n.cause.details=="string"?n.cause.details:(c=n.cause)!=null&&c.message?n.cause.message:n.details})(),a=n.cause instanceof Kt&&n.cause.docsPath||n.docsPath,i=`https://oxlib.sh${a??""}`,o=[e||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...r||a?["",r?`Details: ${r}`:void 0,a?`See: ${i}`:void 0]:[]].filter(c=>typeof c=="string").join(`
33
+ `);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${l0()}`}),this.cause=n.cause,this.details=r,this.docs=i,this.docsPath=a,this.shortMessage=e}walk(e){return Ya(this,e)}}function Ya(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause?Ya(t.cause,e):e?null:t}function h0(t,e={}){const{dir:n,size:r=32}=e;if(r===0)return t;const a=t.replace("0x","");if(a.length>r*2)throw new m0({size:Math.ceil(a.length/2),targetSize:r,type:"Hex"});return`0x${a[n==="right"?"padEnd":"padStart"](r*2,"0")}`}function we(t,e={}){const{signed:n,size:r}=e,a=BigInt(t);let s;r?n?s=(1n<<BigInt(r)*8n-1n)-1n:s=2n**(BigInt(r)*8n)-1n:typeof t=="number"&&(s=BigInt(Number.MAX_SAFE_INTEGER));const i=typeof s=="bigint"&&n?-s-1n:0;if(s&&a>s||a<i){const u=typeof t=="bigint"?"n":"";throw new b0({max:s?`${s}${u}`:void 0,min:`${i}${u}`,signed:n,size:r,value:`${t}${u}`})}const c=`0x${(n&&a<0?(1n<<BigInt(r*8))+BigInt(a):a).toString(16)}`;return r?p0(c,r):c}function p0(t,e){return h0(t,{dir:"left",size:e})}class b0 extends Kt{constructor({max:e,min:n,signed:r,size:a,value:s}){super(`Number \`${s}\` is not in safe${a?` ${a*8}-bit`:""}${r?" signed":" unsigned"} integer range ${e?`(\`${n}\` to \`${e}\`)`:`(above \`${n}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class m0 extends Kt{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function y0(t){return{address:t.address,amount:we(t.amount),index:we(t.index),validatorIndex:we(t.validatorIndex)}}function g0(t){return{...typeof t.baseFeePerGas=="bigint"&&{baseFeePerGas:we(t.baseFeePerGas)},...typeof t.blobBaseFee=="bigint"&&{blobBaseFee:we(t.blobBaseFee)},...typeof t.feeRecipient=="string"&&{feeRecipient:t.feeRecipient},...typeof t.gasLimit=="bigint"&&{gasLimit:we(t.gasLimit)},...typeof t.number=="bigint"&&{number:we(t.number)},...typeof t.prevRandao=="bigint"&&{prevRandao:we(t.prevRandao)},...typeof t.time=="bigint"&&{time:we(t.time)},...t.withdrawals&&{withdrawals:t.withdrawals.map(y0)}}}const v0="0x82ad56cb",w0="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",x0="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",_0="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033",Bn="/docs/contract/encodeDeployData";function Ja(t){const{abi:e,args:n,bytecode:r}=t;if(!n||n.length===0)return r;const a=e.find(i=>"type"in i&&i.type==="constructor");if(!a)throw new ro({docsPath:Bn});if(!("inputs"in a))throw new Dr({docsPath:Bn});if(!a.inputs||a.inputs.length===0)throw new Dr({docsPath:Bn});const s=mr(a.inputs,n);return Xt([r,s])}class qe extends m{constructor({cause:e,message:n}={}){var a;const r=(a=n==null?void 0:n.replace("execution reverted: ",""))==null?void 0:a.replace("execution reverted","");super(`Execution reverted ${r?`with reason: ${r}`:"for an unknown reason"}.`,{cause:e,name:"ExecutionRevertedError"})}}Object.defineProperty(qe,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(qe,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class pn extends m{constructor({cause:e,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${Q(n)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:"FeeCapTooHighError"})}}Object.defineProperty(pn,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class Xn extends m{constructor({cause:e,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${Q(n)}`:""} gwei) cannot be lower than the block base fee.`,{cause:e,name:"FeeCapTooLowError"})}}Object.defineProperty(Xn,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});class er extends m{constructor({cause:e,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}is higher than the next one expected.`,{cause:e,name:"NonceTooHighError"})}}Object.defineProperty(er,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class tr extends m{constructor({cause:e,nonce:n}={}){super([`Nonce provided for the transaction ${n?`(${n}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
34
+ `),{cause:e,name:"NonceTooLowError"})}}Object.defineProperty(tr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class nr extends m{constructor({cause:e,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}exceeds the maximum allowed nonce.`,{cause:e,name:"NonceMaxValueError"})}}Object.defineProperty(nr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class rr extends m{constructor({cause:e}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
35
+ `),{cause:e,metaMessages:["This error could arise when the account does not have enough funds to:"," - pay for the total gas fee,"," - pay for the value to send."," ","The cost of the transaction is calculated as `gas * gas fee + value`, where:"," - `gas` is the amount of gas needed for transaction to execute,"," - `gas fee` is the gas fee,"," - `value` is the amount of ether to send to the recipient."],name:"InsufficientFundsError"})}}Object.defineProperty(rr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class ar extends m{constructor({cause:e,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(ar,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class sr extends m{constructor({cause:e,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:""}provided for the transaction is too low.`,{cause:e,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(sr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class ir extends m{constructor({cause:e}){super("The transaction type is not supported for this chain.",{cause:e,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(ir,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class bn extends m{constructor({cause:e,maxPriorityFeePerGas:n,maxFeePerGas:r}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${n?` = ${Q(n)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${r?` = ${Q(r)} gwei`:""}).`].join(`
36
+ `),{cause:e,name:"TipAboveFeeCapError"})}}Object.defineProperty(bn,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class En extends m{constructor({cause:e}){super(`An error occurred while executing: ${e==null?void 0:e.shortMessage}`,{cause:e,name:"UnknownNodeError"})}}function Tr(t,e){const n=(t.details||"").toLowerCase(),r=t instanceof m?t.walk(a=>(a==null?void 0:a.code)===qe.code):t;return r instanceof m?new qe({cause:t,message:r.details}):qe.nodeMessage.test(n)?new qe({cause:t,message:t.details}):pn.nodeMessage.test(n)?new pn({cause:t,maxFeePerGas:e==null?void 0:e.maxFeePerGas}):Xn.nodeMessage.test(n)?new Xn({cause:t,maxFeePerGas:e==null?void 0:e.maxFeePerGas}):er.nodeMessage.test(n)?new er({cause:t,nonce:e==null?void 0:e.nonce}):tr.nodeMessage.test(n)?new tr({cause:t,nonce:e==null?void 0:e.nonce}):nr.nodeMessage.test(n)?new nr({cause:t,nonce:e==null?void 0:e.nonce}):rr.nodeMessage.test(n)?new rr({cause:t}):ar.nodeMessage.test(n)?new ar({cause:t,gas:e==null?void 0:e.gas}):sr.nodeMessage.test(n)?new sr({cause:t,gas:e==null?void 0:e.gas}):ir.nodeMessage.test(n)?new ir({cause:t}):bn.nodeMessage.test(n)?new bn({cause:t,maxFeePerGas:e==null?void 0:e.maxFeePerGas,maxPriorityFeePerGas:e==null?void 0:e.maxPriorityFeePerGas}):new En({cause:t})}function P0(t,{docsPath:e,...n}){const r=(()=>{const a=Tr(t,n);return a instanceof En?t:a})();return new r0(r,{docsPath:e,...n})}function An(t,{format:e}){if(!e)return{};const n={};function r(s){const i=Object.keys(s);for(const o of i)o in t&&(n[o]=t[o]),s[o]&&typeof s[o]=="object"&&!Array.isArray(s[o])&&r(s[o])}const a=e(t||{});return r(a),n}const E0={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function Tn(t,e){const n={};return typeof t.authorizationList<"u"&&(n.authorizationList=A0(t.authorizationList)),typeof t.accessList<"u"&&(n.accessList=t.accessList),typeof t.blobVersionedHashes<"u"&&(n.blobVersionedHashes=t.blobVersionedHashes),typeof t.blobs<"u"&&(typeof t.blobs[0]!="string"?n.blobs=t.blobs.map(r=>X(r)):n.blobs=t.blobs),typeof t.data<"u"&&(n.data=t.data),t.account&&(n.from=t.account.address),typeof t.from<"u"&&(n.from=t.from),typeof t.gas<"u"&&(n.gas=F(t.gas)),typeof t.gasPrice<"u"&&(n.gasPrice=F(t.gasPrice)),typeof t.maxFeePerBlobGas<"u"&&(n.maxFeePerBlobGas=F(t.maxFeePerBlobGas)),typeof t.maxFeePerGas<"u"&&(n.maxFeePerGas=F(t.maxFeePerGas)),typeof t.maxPriorityFeePerGas<"u"&&(n.maxPriorityFeePerGas=F(t.maxPriorityFeePerGas)),typeof t.nonce<"u"&&(n.nonce=F(t.nonce)),typeof t.to<"u"&&(n.to=t.to),typeof t.type<"u"&&(n.type=E0[t.type]),typeof t.value<"u"&&(n.value=F(t.value)),n}function A0(t){return t.map(e=>({address:e.address,r:e.r?F(BigInt(e.r)):e.r,s:e.s?F(BigInt(e.s)):e.s,chainId:F(e.chainId),nonce:F(e.nonce),...typeof e.yParity<"u"?{yParity:F(e.yParity)}:{},...typeof e.v<"u"&&typeof e.yParity>"u"?{v:F(e.v)}:{}}))}function T0(){let t=()=>{},e=()=>{};return{promise:new Promise((r,a)=>{t=r,e=a}),resolve:t,reject:e}}const jn=new Map;function $0({fn:t,id:e,shouldSplitBatch:n,wait:r=0,sort:a}){const s=async()=>{const d=c();i();const h=d.map(({args:b})=>b);h.length!==0&&t(h).then(b=>{a&&Array.isArray(b)&&b.sort(a);for(let f=0;f<d.length;f++){const{resolve:g}=d[f];g==null||g([b[f],b])}}).catch(b=>{for(let f=0;f<d.length;f++){const{reject:g}=d[f];g==null||g(b)}})},i=()=>jn.delete(e),o=()=>c().map(({args:d})=>d),c=()=>jn.get(e)||[],u=d=>jn.set(e,[...c(),d]);return{flush:i,async schedule(d){const{promise:h,resolve:b,reject:f}=T0();return(n==null?void 0:n([...o(),d]))&&s(),c().length>0?(u({args:d,resolve:b,reject:f}),h):(u({args:d,resolve:b,reject:f}),setTimeout(s,r),h)}}}function Yr(t){if(!(!t||t.length===0))return t.reduce((e,{slot:n,value:r})=>{if(n.length!==66)throw new Zr({size:n.length,targetSize:66,type:"hex"});if(r.length!==66)throw new Zr({size:r.length,targetSize:66,type:"hex"});return e[n]=r,e},{})}function C0(t){const{balance:e,nonce:n,state:r,stateDiff:a,code:s}=t,i={};if(s!==void 0&&(i.code=s),e!==void 0&&(i.balance=F(e)),n!==void 0&&(i.nonce=F(n)),r!==void 0&&(i.state=Yr(r)),a!==void 0){if(i.state)throw new Qc;i.stateDiff=Yr(a)}return i}function Qa(t){if(!t)return;const e={};for(const{address:n,...r}of t){if(!Ae(n,{strict:!1}))throw new et({address:n});if(e[n])throw new Jc({address:n});e[n]=C0(r)}return e}const k0=2n**256n-1n;function nn(t){const{account:e,maxFeePerGas:n,maxPriorityFeePerGas:r,to:a}=t,s=e?ie(e):void 0;if(s&&!Ae(s.address))throw new et({address:s.address});if(a&&!Ae(a))throw new et({address:a});if(n&&n>k0)throw new pn({maxFeePerGas:n});if(r&&n&&r>n)throw new bn({maxFeePerGas:n,maxPriorityFeePerGas:r})}async function $r(t,e){var D,q,P,te;const{account:n=t.account,authorizationList:r,batch:a=!!((D=t.batch)!=null&&D.multicall),blockNumber:s,blockTag:i=t.experimental_blockTag??"latest",accessList:o,blobs:c,blockOverrides:u,code:d,data:h,factory:b,factoryData:f,gas:g,gasPrice:A,maxFeePerBlobGas:j,maxFeePerGas:k,maxPriorityFeePerGas:N,nonce:$,to:M,value:U,stateOverride:V,...S}=e,R=n?ie(n):void 0;if(d&&(b||f))throw new m("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(d&&M)throw new m("Cannot provide both `code` & `to` as parameters.");const x=d&&h,B=b&&f&&M&&h,H=x||B,Y=x?Xa({code:d,data:h}):B?R0({data:h,factory:b,factoryData:f,to:M}):h;try{nn(e);const ae=(typeof s=="bigint"?F(s):void 0)||i,le=u?g0(u):void 0,se=Qa(V),it=(te=(P=(q=t.chain)==null?void 0:q.formatters)==null?void 0:P.transactionRequest)==null?void 0:te.format,kn=(it||Tn)({...An(S,{format:it}),accessList:o,account:R,authorizationList:r,blobs:c,data:Y,gas:g,gasPrice:A,maxFeePerBlobGas:j,maxFeePerGas:k,maxPriorityFeePerGas:N,nonce:$,to:H?void 0:M,value:U},"call");if(a&&S0({request:kn})&&!se&&!le)try{return await I0(t,{...kn,blockNumber:s,blockTag:i})}catch(ke){if(!(ke instanceof Za)&&!(ke instanceof Qn))throw ke}const Ds=(()=>{const ke=[kn,ae];return se&&le?[...ke,se,le]:se?[...ke,se]:le?[...ke,{},le]:ke})(),Nr=await t.request({method:"eth_call",params:Ds});return Nr==="0x"?{data:void 0}:{data:Nr}}catch(Ce){const ae=M0(Ce),{offchainLookup:le,offchainLookupSignature:se}=await Promise.resolve().then(()=>require("./ccip-Cg-IYyJw.cjs"));if(t.ccipRead!==!1&&(ae==null?void 0:ae.slice(0,10))===se&&M)return{data:await le(t,{data:ae,to:M})};throw H&&(ae==null?void 0:ae.slice(0,10))==="0x101bb98d"?new o0({factory:b}):P0(Ce,{...e,account:R,chain:t.chain})}}function S0({request:t}){const{data:e,to:n,...r}=t;return!(!e||e.startsWith(v0)||!n||Object.values(r).filter(a=>typeof a<"u").length>0)}async function I0(t,e){var A;const{batchSize:n=1024,deployless:r=!1,wait:a=0}=typeof((A=t.batch)==null?void 0:A.multicall)=="object"?t.batch.multicall:{},{blockNumber:s,blockTag:i=t.experimental_blockTag??"latest",data:o,to:c}=e,u=(()=>{if(r)return null;if(e.multicallAddress)return e.multicallAddress;if(t.chain)return Hc({blockNumber:s,chain:t.chain,contract:"multicall3"});throw new Za})(),h=(typeof s=="bigint"?F(s):void 0)||i,{schedule:b}=$0({id:`${t.uid}.${h}`,wait:a,shouldSplitBatch(j){return j.reduce((N,{data:$})=>N+($.length-2),0)>n*2},fn:async j=>{const k=j.map(M=>({allowFailure:!0,callData:M.data,target:M.to})),N=Pn({abi:Vr,args:[k],functionName:"aggregate3"}),$=await t.request({method:"eth_call",params:[{...u===null?{data:Xa({code:_0,data:N})}:{to:u,data:N}},h]});return xr({abi:Vr,args:[k],functionName:"aggregate3",data:$||"0x"})}}),[{returnData:f,success:g}]=await b({data:o,to:c});if(!g)throw new Wa({data:f});return f==="0x"?{data:void 0}:{data:f}}function Xa(t){const{code:e,data:n}=t;return Ja({abi:La(["constructor(bytes, bytes)"]),bytecode:w0,args:[e,n]})}function R0(t){const{data:e,factory:n,factoryData:r,to:a}=t;return Ja({abi:La(["constructor(address, bytes, address, bytes)"]),bytecode:x0,args:[a,e,n,r]})}function M0(t){var n;if(!(t instanceof m))return;const e=t.walk();return typeof(e==null?void 0:e.data)=="object"?(n=e.data)==null?void 0:n.data:e.data}async function O0(t,e){const{abi:n,address:r,args:a,functionName:s,...i}=e,o=Pn({abi:n,args:a,functionName:s});try{const{data:c}=await Z(t,$r,"call")({...i,data:o,to:r});return xr({abi:n,args:a,functionName:s,data:c||"0x"})}catch(c){throw Ar(c,{abi:n,address:r,args:a,docsPath:"/docs/contract/readContract",functionName:s})}}function B0(t){const e=vn(`0x${t.substring(4)}`).substring(26);return wn(`0x${e}`)}async function j0({hash:t,signature:e}){const n=Pe(t)?t:Hn(t),{secp256k1:r}=await Promise.resolve().then(()=>require("./utils-BTtae95l.cjs")).then(i=>i.secp256k1);return`0x${(()=>{if(typeof e=="object"&&"r"in e&&"s"in e){const{r:u,s:d,v:h,yParity:b}=e,f=Number(b??h),g=Jr(f);return new r.Signature(Tt(u),Tt(d)).addRecoveryBit(g)}const i=Pe(e)?e:Hn(e);if(G(i)!==65)throw new Error("invalid signature length");const o=tt(`0x${i.slice(130)}`),c=Jr(o);return r.Signature.fromCompact(i.substring(2,130)).addRecoveryBit(c)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Jr(t){if(t===0||t===1)return t;if(t===27)return 0;if(t===28)return 1;throw new Error("Invalid yParityOrV value")}async function F0({hash:t,signature:e}){return B0(await j0({hash:t,signature:e}))}function N0(t,e="hex"){const n=es(t),r=br(new Uint8Array(n.length));return n.encode(r),e==="hex"?X(r.bytes):r.bytes}function es(t){return Array.isArray(t)?z0(t.map(e=>es(e))):L0(t)}function z0(t){const e=t.reduce((a,s)=>a+s.length,0),n=ts(e);return{length:e<=55?1+e:1+n+e,encode(a){e<=55?a.pushByte(192+e):(a.pushByte(247+n),n===1?a.pushUint8(e):n===2?a.pushUint16(e):n===3?a.pushUint24(e):a.pushUint32(e));for(const{encode:s}of t)s(a)}}}function L0(t){const e=typeof t=="string"?Ee(t):t,n=ts(e.length);return{length:e.length===1&&e[0]<128?1:e.length<=55?1+e.length:1+n+e.length,encode(a){e.length===1&&e[0]<128?a.pushBytes(e):e.length<=55?(a.pushByte(128+e.length),a.pushBytes(e)):(a.pushByte(183+n),n===1?a.pushUint8(e.length):n===2?a.pushUint16(e.length):n===3?a.pushUint24(e.length):a.pushUint32(e.length),a.pushBytes(e))}}}function ts(t){if(t<2**8)return 1;if(t<2**16)return 2;if(t<2**24)return 3;if(t<2**32)return 4;throw new m("Length is too large.")}function V0(t){const{chainId:e,nonce:n,to:r}=t,a=t.contractAddress??t.address,s=vn(Xt(["0x05",N0([e?F(e):"0x",a,n?F(n):"0x"])]));return r==="bytes"?Ee(s):s}async function ns(t){const{authorization:e,signature:n}=t;return F0({hash:V0(e),signature:n??e})}class D0 extends m{constructor(e,{account:n,docsPath:r,chain:a,data:s,gas:i,gasPrice:o,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:d,to:h,value:b}){var g;const f=tn({from:n==null?void 0:n.address,to:h,value:typeof b<"u"&&`${_r(b)} ${((g=a==null?void 0:a.nativeCurrency)==null?void 0:g.symbol)||"ETH"}`,data:s,gas:i,gasPrice:typeof o<"u"&&`${Q(o)} gwei`,maxFeePerGas:typeof c<"u"&&`${Q(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${Q(u)} gwei`,nonce:d});super(e.shortMessage,{cause:e,docsPath:r,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],"Estimate Gas Arguments:",f].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}function Z0(t,{docsPath:e,...n}){const r=(()=>{const a=Tr(t,n);return a instanceof En?t:a})();return new D0(r,{docsPath:e,...n})}class rs extends m{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class Cr extends m{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class G0 extends m{constructor({maxPriorityFeePerGas:e}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${Q(e)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class U0 extends m{constructor({blockHash:e,blockNumber:n}){let r="Block";e&&(r=`Block at hash "${e}"`),n&&(r=`Block at number "${n}"`),super(`${r} could not be found.`,{name:"BlockNotFoundError"})}}const H0={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function as(t,e){const n={...t,blockHash:t.blockHash?t.blockHash:null,blockNumber:t.blockNumber?BigInt(t.blockNumber):null,chainId:t.chainId?tt(t.chainId):void 0,gas:t.gas?BigInt(t.gas):void 0,gasPrice:t.gasPrice?BigInt(t.gasPrice):void 0,maxFeePerBlobGas:t.maxFeePerBlobGas?BigInt(t.maxFeePerBlobGas):void 0,maxFeePerGas:t.maxFeePerGas?BigInt(t.maxFeePerGas):void 0,maxPriorityFeePerGas:t.maxPriorityFeePerGas?BigInt(t.maxPriorityFeePerGas):void 0,nonce:t.nonce?tt(t.nonce):void 0,to:t.to?t.to:null,transactionIndex:t.transactionIndex?Number(t.transactionIndex):null,type:t.type?H0[t.type]:void 0,typeHex:t.type?t.type:void 0,value:t.value?BigInt(t.value):void 0,v:t.v?BigInt(t.v):void 0};return t.authorizationList&&(n.authorizationList=q0(t.authorizationList)),n.yParity=(()=>{if(t.yParity)return Number(t.yParity);if(typeof n.v=="bigint"){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return n.v%2n===0n?1:0}})(),n.type==="legacy"&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type==="eip2930"&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type==="eip1559"&&delete n.maxFeePerBlobGas,n}function q0(t){return t.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function W0(t,e){const n=(t.transactions??[]).map(r=>typeof r=="string"?r:as(r));return{...t,baseFeePerGas:t.baseFeePerGas?BigInt(t.baseFeePerGas):null,blobGasUsed:t.blobGasUsed?BigInt(t.blobGasUsed):void 0,difficulty:t.difficulty?BigInt(t.difficulty):void 0,excessBlobGas:t.excessBlobGas?BigInt(t.excessBlobGas):void 0,gasLimit:t.gasLimit?BigInt(t.gasLimit):void 0,gasUsed:t.gasUsed?BigInt(t.gasUsed):void 0,hash:t.hash?t.hash:null,logsBloom:t.logsBloom?t.logsBloom:null,nonce:t.nonce?t.nonce:null,number:t.number?BigInt(t.number):null,size:t.size?BigInt(t.size):void 0,timestamp:t.timestamp?BigInt(t.timestamp):void 0,transactions:n,totalDifficulty:t.totalDifficulty?BigInt(t.totalDifficulty):null}}async function Yt(t,{blockHash:e,blockNumber:n,blockTag:r=t.experimental_blockTag??"latest",includeTransactions:a}={}){var u,d,h;const s=a??!1,i=n!==void 0?F(n):void 0;let o=null;if(e?o=await t.request({method:"eth_getBlockByHash",params:[e,s]},{dedupe:!0}):o=await t.request({method:"eth_getBlockByNumber",params:[i||r,s]},{dedupe:!!i}),!o)throw new U0({blockHash:e,blockNumber:n});return(((h=(d=(u=t.chain)==null?void 0:u.formatters)==null?void 0:d.block)==null?void 0:h.format)||W0)(o,"getBlock")}async function ss(t){const e=await t.request({method:"eth_gasPrice"});return BigInt(e)}async function K0(t,e){var s,i;const{block:n,chain:r=t.chain,request:a}=e||{};try{const o=((s=r==null?void 0:r.fees)==null?void 0:s.maxPriorityFeePerGas)??((i=r==null?void 0:r.fees)==null?void 0:i.defaultPriorityFee);if(typeof o=="function"){const u=n||await Z(t,Yt,"getBlock")({}),d=await o({block:u,client:t,request:a});if(d===null)throw new Error;return d}if(typeof o<"u")return o;const c=await t.request({method:"eth_maxPriorityFeePerGas"});return Tt(c)}catch{const[o,c]=await Promise.all([n?Promise.resolve(n):Z(t,Yt,"getBlock")({}),Z(t,ss,"getGasPrice")({})]);if(typeof o.baseFeePerGas!="bigint")throw new Cr;const u=c-o.baseFeePerGas;return u<0n?0n:u}}async function Qr(t,e){var b,f;const{block:n,chain:r=t.chain,request:a,type:s="eip1559"}=e||{},i=await(async()=>{var g,A;return typeof((g=r==null?void 0:r.fees)==null?void 0:g.baseFeeMultiplier)=="function"?r.fees.baseFeeMultiplier({block:n,client:t,request:a}):((A=r==null?void 0:r.fees)==null?void 0:A.baseFeeMultiplier)??1.2})();if(i<1)throw new rs;const c=10**(((b=i.toString().split(".")[1])==null?void 0:b.length)??0),u=g=>g*BigInt(Math.ceil(i*c))/BigInt(c),d=n||await Z(t,Yt,"getBlock")({});if(typeof((f=r==null?void 0:r.fees)==null?void 0:f.estimateFeesPerGas)=="function"){const g=await r.fees.estimateFeesPerGas({block:n,client:t,multiply:u,request:a,type:s});if(g!==null)return g}if(s==="eip1559"){if(typeof d.baseFeePerGas!="bigint")throw new Cr;const g=typeof(a==null?void 0:a.maxPriorityFeePerGas)=="bigint"?a.maxPriorityFeePerGas:await K0(t,{block:d,chain:r,request:a}),A=u(d.baseFeePerGas);return{maxFeePerGas:(a==null?void 0:a.maxFeePerGas)??A+g,maxPriorityFeePerGas:g}}return{gasPrice:(a==null?void 0:a.gasPrice)??u(await Z(t,ss,"getGasPrice")({}))}}async function Y0(t,{address:e,blockTag:n="latest",blockNumber:r}){const a=await t.request({method:"eth_getTransactionCount",params:[e,typeof r=="bigint"?F(r):n]},{dedupe:!!r});return tt(a)}function is(t){const{kzg:e}=t,n=t.to??(typeof t.blobs[0]=="string"?"hex":"bytes"),r=typeof t.blobs[0]=="string"?t.blobs.map(s=>Ee(s)):t.blobs,a=[];for(const s of r)a.push(Uint8Array.from(e.blobToKzgCommitment(s)));return n==="bytes"?a:a.map(s=>X(s))}function os(t){const{kzg:e}=t,n=t.to??(typeof t.blobs[0]=="string"?"hex":"bytes"),r=typeof t.blobs[0]=="string"?t.blobs.map(i=>Ee(i)):t.blobs,a=typeof t.commitments[0]=="string"?t.commitments.map(i=>Ee(i)):t.commitments,s=[];for(let i=0;i<r.length;i++){const o=r[i],c=a[i];s.push(Uint8Array.from(e.computeBlobKzgProof(o,c)))}return n==="bytes"?s:s.map(i=>X(i))}function J0(t,e){return W.sha256(Pe(t,{strict:!1})?pr(t):t)}function Q0(t){const{commitment:e,version:n=1}=t,r=t.to??(typeof e=="string"?"hex":"bytes"),a=J0(e);return a.set([n],0),r==="bytes"?a:X(a)}function X0(t){const{commitments:e,version:n}=t,r=t.to??(typeof e[0]=="string"?"hex":"bytes"),a=[];for(const s of e)a.push(Q0({commitment:s,to:r,version:n}));return a}const Xr=6,cs=32,kr=4096,us=cs*kr,ea=us*Xr-1-1*kr*Xr;class eu extends m{constructor({maxSize:e,size:n}){super("Blob size is too large.",{metaMessages:[`Max: ${e} bytes`,`Given: ${n} bytes`],name:"BlobSizeTooLargeError"})}}class tu extends m{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}function nu(t){const e=t.to??(typeof t.data=="string"?"hex":"bytes"),n=typeof t.data=="string"?Ee(t.data):t.data,r=G(n);if(!r)throw new tu;if(r>ea)throw new eu({maxSize:ea,size:r});const a=[];let s=!0,i=0;for(;s;){const o=br(new Uint8Array(us));let c=0;for(;c<kr;){const u=n.slice(i,i+(cs-1));if(o.pushByte(0),o.pushBytes(u),u.length<31){o.pushByte(128),s=!1;break}c++,i+=31}a.push(o)}return e==="bytes"?a.map(o=>o.bytes):a.map(o=>X(o.bytes))}function ru(t){const{data:e,kzg:n,to:r}=t,a=t.blobs??nu({data:e,to:r}),s=t.commitments??is({blobs:a,kzg:n,to:r}),i=t.proofs??os({blobs:a,commitments:s,kzg:n,to:r}),o=[];for(let c=0;c<a.length;c++)o.push({blob:a[c],commitment:s[c],proof:i[c]});return o}function au(t){if(t.type)return t.type;if(typeof t.authorizationList<"u")return"eip7702";if(typeof t.blobs<"u"||typeof t.blobVersionedHashes<"u"||typeof t.maxFeePerBlobGas<"u"||typeof t.sidecars<"u")return"eip4844";if(typeof t.maxFeePerGas<"u"||typeof t.maxPriorityFeePerGas<"u")return"eip1559";if(typeof t.gasPrice<"u")return typeof t.accessList<"u"?"eip2930":"legacy";throw new e0({transaction:t})}function ds(t,{docsPath:e,...n}){const r=(()=>{const a=Tr(t,n);return a instanceof En?t:a})();return new t0(r,{docsPath:e,...n})}async function Sr(t){const e=await t.request({method:"eth_chainId"},{dedupe:!0});return tt(e)}async function su(t,e){var R,x,B,H,Y;const{account:n=t.account,accessList:r,authorizationList:a,chain:s=t.chain,blobVersionedHashes:i,blobs:o,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:h,maxFeePerGas:b,maxPriorityFeePerGas:f,nonce:g,nonceManager:A,to:j,type:k,value:N,...$}=e,M=await(async()=>{if(!n||!A||typeof g<"u")return g;const D=ie(n),q=s?s.id:await Z(t,Sr,"getChainId")({});return await A.consume({address:D.address,chainId:q,client:t})})();nn(e);const U=(x=(R=s==null?void 0:s.formatters)==null?void 0:R.transactionRequest)==null?void 0:x.format,S=(U||Tn)({...An($,{format:U}),account:n?ie(n):void 0,accessList:r,authorizationList:a,blobs:o,blobVersionedHashes:i,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:h,maxFeePerGas:b,maxPriorityFeePerGas:f,nonce:M,to:j,type:k,value:N},"fillTransaction");try{const D=await t.request({method:"eth_fillTransaction",params:[S]}),P=(((H=(B=s==null?void 0:s.formatters)==null?void 0:B.transaction)==null?void 0:H.format)||as)(D.tx);delete P.blockHash,delete P.blockNumber,delete P.r,delete P.s,delete P.transactionIndex,delete P.v,delete P.yParity,P.data=P.input,P.gas&&(P.gas=e.gas??P.gas),P.gasPrice&&(P.gasPrice=e.gasPrice??P.gasPrice),P.maxFeePerBlobGas&&(P.maxFeePerBlobGas=e.maxFeePerBlobGas??P.maxFeePerBlobGas),P.maxFeePerGas&&(P.maxFeePerGas=e.maxFeePerGas??P.maxFeePerGas),P.maxPriorityFeePerGas&&(P.maxPriorityFeePerGas=e.maxPriorityFeePerGas??P.maxPriorityFeePerGas),P.nonce&&(P.nonce=e.nonce??P.nonce);const te=await(async()=>{var se,it;if(typeof((se=s==null?void 0:s.fees)==null?void 0:se.baseFeeMultiplier)=="function"){const Fr=await Z(t,Yt,"getBlock")({});return s.fees.baseFeeMultiplier({block:Fr,client:t,request:e})}return((it=s==null?void 0:s.fees)==null?void 0:it.baseFeeMultiplier)??1.2})();if(te<1)throw new rs;const ae=10**(((Y=te.toString().split(".")[1])==null?void 0:Y.length)??0),le=se=>se*BigInt(Math.ceil(te*ae))/BigInt(ae);return P.maxFeePerGas&&!e.maxFeePerGas&&(P.maxFeePerGas=le(P.maxFeePerGas)),P.gasPrice&&!e.gasPrice&&(P.gasPrice=le(P.gasPrice)),{raw:D.raw,transaction:{from:S.from,...P}}}catch(D){throw ds(D,{...e,chain:t.chain})}}const fs=["blobVersionedHashes","chainId","fees","gas","nonce","type"],ta=new Map,Fn=new Qt(128);async function ls(t,e){var M,U,V;let n=e;const{account:r=t.account,chain:a=t.chain,nonceManager:s,parameters:i=fs}=n,o=(()=>{if(typeof(a==null?void 0:a.prepareTransactionRequest)=="function")return{fn:a.prepareTransactionRequest,runAt:["beforeFillTransaction"]};if(Array.isArray(a==null?void 0:a.prepareTransactionRequest))return{fn:a.prepareTransactionRequest[0],runAt:a.prepareTransactionRequest[1].runAt}})();let c;async function u(){return c||(typeof n.chainId<"u"?n.chainId:a?a.id:(c=await Z(t,Sr,"getChainId")({}),c))}const d=r&&ie(r);let h=n.nonce;if(i.includes("nonce")&&typeof h>"u"&&d&&s){const S=await u();h=await s.consume({address:d.address,chainId:S,client:t})}o!=null&&o.fn&&((M=o.runAt)!=null&&M.includes("beforeFillTransaction"))&&(n=await o.fn(n,{phase:"beforeFillTransaction"}),h??(h=n.nonce));const f=((i.includes("blobVersionedHashes")||i.includes("sidecars"))&&n.kzg&&n.blobs||Fn.get(t.uid)===!1||!["fees","gas"].some(R=>i.includes(R))?!1:!!(i.includes("chainId")&&typeof n.chainId!="number"||i.includes("nonce")&&typeof h!="number"||i.includes("fees")&&typeof n.gasPrice!="bigint"&&(typeof n.maxFeePerGas!="bigint"||typeof n.maxPriorityFeePerGas!="bigint")||i.includes("gas")&&typeof n.gas!="bigint"))?await Z(t,su,"fillTransaction")({...n,nonce:h}).then(S=>{const{chainId:R,from:x,gas:B,gasPrice:H,nonce:Y,maxFeePerBlobGas:D,maxFeePerGas:q,maxPriorityFeePerGas:P,type:te,...Ce}=S.transaction;return Fn.set(t.uid,!0),{...n,...x?{from:x}:{},...te?{type:te}:{},...typeof R<"u"?{chainId:R}:{},...typeof B<"u"?{gas:B}:{},...typeof H<"u"?{gasPrice:H}:{},...typeof Y<"u"?{nonce:Y}:{},...typeof D<"u"?{maxFeePerBlobGas:D}:{},...typeof q<"u"?{maxFeePerGas:q}:{},...typeof P<"u"?{maxPriorityFeePerGas:P}:{},..."nonceKey"in Ce&&typeof Ce.nonceKey<"u"?{nonceKey:Ce.nonceKey}:{}}}).catch(S=>{var B;const R=S;return((B=R.walk)==null?void 0:B.call(R,H=>{const Y=H;return Y.name==="MethodNotFoundRpcError"||Y.name==="MethodNotSupportedRpcError"}))&&Fn.set(t.uid,!1),n}):n;h??(h=f.nonce),n={...f,...d?{from:d==null?void 0:d.address}:{},...h?{nonce:h}:{}};const{blobs:g,gas:A,kzg:j,type:k}=n;o!=null&&o.fn&&((U=o.runAt)!=null&&U.includes("beforeFillParameters"))&&(n=await o.fn(n,{phase:"beforeFillParameters"}));let N;async function $(){return N||(N=await Z(t,Yt,"getBlock")({blockTag:"latest"}),N)}if(i.includes("nonce")&&typeof h>"u"&&d&&!s&&(n.nonce=await Z(t,Y0,"getTransactionCount")({address:d.address,blockTag:"pending"})),(i.includes("blobVersionedHashes")||i.includes("sidecars"))&&g&&j){const S=is({blobs:g,kzg:j});if(i.includes("blobVersionedHashes")){const R=X0({commitments:S,to:"hex"});n.blobVersionedHashes=R}if(i.includes("sidecars")){const R=os({blobs:g,commitments:S,kzg:j}),x=ru({blobs:g,commitments:S,proofs:R,to:"hex"});n.sidecars=x}}if(i.includes("chainId")&&(n.chainId=await u()),(i.includes("fees")||i.includes("type"))&&typeof k>"u")try{n.type=au(n)}catch{let S=ta.get(t.uid);if(typeof S>"u"){const R=await $();S=typeof(R==null?void 0:R.baseFeePerGas)=="bigint",ta.set(t.uid,S)}n.type=S?"eip1559":"legacy"}if(i.includes("fees"))if(n.type!=="legacy"&&n.type!=="eip2930"){if(typeof n.maxFeePerGas>"u"||typeof n.maxPriorityFeePerGas>"u"){const S=await $(),{maxFeePerGas:R,maxPriorityFeePerGas:x}=await Qr(t,{block:S,chain:a,request:n});if(typeof n.maxPriorityFeePerGas>"u"&&n.maxFeePerGas&&n.maxFeePerGas<x)throw new G0({maxPriorityFeePerGas:x});n.maxPriorityFeePerGas=x,n.maxFeePerGas=R}}else{if(typeof n.maxFeePerGas<"u"||typeof n.maxPriorityFeePerGas<"u")throw new Cr;if(typeof n.gasPrice>"u"){const S=await $(),{gasPrice:R}=await Qr(t,{block:S,chain:a,request:n,type:"legacy"});n.gasPrice=R}}return i.includes("gas")&&typeof A>"u"&&(n.gas=await Z(t,iu,"estimateGas")({...n,account:d,prepare:(d==null?void 0:d.type)==="local"?[]:["blobVersionedHashes"]})),o!=null&&o.fn&&((V=o.runAt)!=null&&V.includes("afterFillParameters"))&&(n=await o.fn(n,{phase:"afterFillParameters"})),nn(n),delete n.parameters,n}async function iu(t,e){var i,o,c;const{account:n=t.account,prepare:r=!0}=e,a=n?ie(n):void 0,s=(()=>{if(Array.isArray(r))return r;if((a==null?void 0:a.type)!=="local")return["blobVersionedHashes"]})();try{const u=await(async()=>{if(e.to)return e.to;if(e.authorizationList&&e.authorizationList.length>0)return await ns({authorization:e.authorizationList[0]}).catch(()=>{throw new m("`to` is required. Could not infer from `authorizationList`")})})(),{accessList:d,authorizationList:h,blobs:b,blobVersionedHashes:f,blockNumber:g,blockTag:A,data:j,gas:k,gasPrice:N,maxFeePerBlobGas:$,maxFeePerGas:M,maxPriorityFeePerGas:U,nonce:V,value:S,stateOverride:R,...x}=r?await ls(t,{...e,parameters:s,to:u}):e;if(k&&e.gas!==k)return k;const H=(typeof g=="bigint"?F(g):void 0)||A,Y=Qa(R);nn(e);const D=(c=(o=(i=t.chain)==null?void 0:i.formatters)==null?void 0:o.transactionRequest)==null?void 0:c.format,P=(D||Tn)({...An(x,{format:D}),account:a,accessList:d,authorizationList:h,blobs:b,blobVersionedHashes:f,data:j,gasPrice:N,maxFeePerBlobGas:$,maxFeePerGas:M,maxPriorityFeePerGas:U,nonce:V,to:u,value:S},"estimateGas");return BigInt(await t.request({method:"eth_estimateGas",params:Y?[P,H??t.experimental_blockTag??"latest",Y]:H?[P,H]:[P]}))}catch(u){throw Z0(u,{...e,account:a,chain:t.chain})}}const rn=new Qt(8192);function ou(t,{enabled:e=!0,id:n}){if(!e||!n)return t();if(rn.get(n))return rn.get(n);const r=t().finally(()=>rn.delete(n));return rn.set(n,r),r}async function cu(t){return new Promise(e=>setTimeout(e,t))}function uu(t,{delay:e=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((a,s)=>{const i=async({count:o=0}={})=>{const c=async({error:u})=>{const d=typeof e=="function"?e({count:o,error:u}):e;d&&await cu(d),i({count:o+1})};try{const u=await t();a(u)}catch(u){if(o<n&&await r({count:o,error:u}))return c({error:u});s(u)}};i()})}function du(t,e={}){return async(n,r={})=>{var h;const{dedupe:a=!1,methods:s,retryDelay:i=150,retryCount:o=3,uid:c}={...e,...r},{method:u}=n;if((h=s==null?void 0:s.exclude)!=null&&h.includes(u))throw new Be(new Error("method not supported"),{method:u});if(s!=null&&s.include&&!s.include.includes(u))throw new Be(new Error("method not supported"),{method:u});const d=a?hr(`${c}.${en(n)}`):void 0;return ou(()=>uu(async()=>{try{return await t(n)}catch(b){const f=b;switch(f.code){case kt.code:throw new kt(f);case St.code:throw new St(f);case It.code:throw new It(f,{method:n.method});case Rt.code:throw new Rt(f);case Ze.code:throw new Ze(f);case nt.code:throw new nt(f);case Mt.code:throw new Mt(f);case Ot.code:throw new Ot(f);case Bt.code:throw new Bt(f);case Be.code:throw new Be(f,{method:n.method});case rt.code:throw new rt(f);case jt.code:throw new jt(f);case Ye.code:throw new Ye(f);case Ft.code:throw new Ft(f);case Nt.code:throw new Nt(f);case zt.code:throw new zt(f);case Lt.code:throw new Lt(f);case Vt.code:throw new Vt(f);case Dt.code:throw new Dt(f);case Zt.code:throw new Zt(f);case Gt.code:throw new Gt(f);case Ut.code:throw new Ut(f);case Ht.code:throw new Ht(f);case qt.code:throw new qt(f);case Wt.code:throw new Wt(f);case 5e3:throw new Ye(f);default:throw b instanceof m?b:new u0(f)}}},{delay:({count:b,error:f})=>{var g;if(f&&f instanceof Er){const A=(g=f==null?void 0:f.headers)==null?void 0:g.get("Retry-After");if(A!=null&&A.match(/\d/))return Number.parseInt(A,10)*1e3}return~~(1<<b)*i},retryCount:o,shouldRetry:({error:b})=>fu(b)}),{enabled:a,id:d})}}function fu(t){return"code"in t&&typeof t.code=="number"?t.code===-1||t.code===rt.code||t.code===Ze.code:t instanceof Er&&t.status?t.status===403||t.status===408||t.status===413||t.status===429||t.status===500||t.status===502||t.status===503||t.status===504:!0}function lu({chain:t,currentChainId:e}){if(!t)throw new Uc;if(e!==t.id)throw new Gc({chain:t,currentChainId:e})}async function hu(t,e){const{abi:n,address:r,args:a,dataSuffix:s,functionName:i,...o}=e,c=o.account?ie(o.account):t.account,u=Pn({abi:n,args:a,functionName:i});try{const{data:d}=await Z(t,$r,"call")({batch:!1,data:`${u}${s?s.replace("0x",""):""}`,to:r,...o,account:c}),h=xr({abi:n,args:a,functionName:i,data:d||"0x"}),b=n.filter(f=>"name"in f&&f.name===e.functionName);return{result:h,request:{abi:b,address:r,args:a,dataSuffix:s,functionName:i,...o,account:c}}}catch(d){throw Ar(d,{abi:n,address:r,args:a,docsPath:"/docs/contract/simulateContract",functionName:i,sender:c==null?void 0:c.address})}}class hs extends m{constructor({docsPath:e}={}){super(["Could not find an Account to execute with this Action.","Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join(`
37
+ `),{docsPath:e,docsSlug:"account",name:"AccountNotFoundError"})}}class Nn extends m{constructor({docsPath:e,metaMessages:n,type:r}){super(`Account type "${r}" is not supported.`,{docsPath:e,metaMessages:n,name:"AccountTypeNotSupportedError"})}}async function pu(t,{serializedTransaction:e}){return t.request({method:"eth_sendRawTransaction",params:[e]},{retryCount:0})}const zn=new Qt(128);async function bu(t,e){var N,$,M,U;const{account:n=t.account,chain:r=t.chain,accessList:a,authorizationList:s,blobs:i,data:o,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:h,maxPriorityFeePerGas:b,nonce:f,type:g,value:A,...j}=e;if(typeof n>"u")throw new hs({docsPath:"/docs/actions/wallet/sendTransaction"});const k=n?ie(n):null;try{nn(e);const V=await(async()=>{if(e.to)return e.to;if(e.to!==null&&s&&s.length>0)return await ns({authorization:s[0]}).catch(()=>{throw new m("`to` is required. Could not infer from `authorizationList`.")})})();if((k==null?void 0:k.type)==="json-rpc"||k===null){let S;r!==null&&(S=await Z(t,Sr,"getChainId")({}),lu({currentChainId:S,chain:r}));const R=(M=($=(N=t.chain)==null?void 0:N.formatters)==null?void 0:$.transactionRequest)==null?void 0:M.format,B=(R||Tn)({...An(j,{format:R}),accessList:a,account:k,authorizationList:s,blobs:i,chainId:S,data:o,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:h,maxPriorityFeePerGas:b,nonce:f,to:V,type:g,value:A},"sendTransaction"),H=zn.get(t.uid),Y=H?"wallet_sendTransaction":"eth_sendTransaction";try{return await t.request({method:Y,params:[B]},{retryCount:0})}catch(D){if(H===!1)throw D;const q=D;if(q.name==="InvalidInputRpcError"||q.name==="InvalidParamsRpcError"||q.name==="MethodNotFoundRpcError"||q.name==="MethodNotSupportedRpcError")return await t.request({method:"wallet_sendTransaction",params:[B]},{retryCount:0}).then(P=>(zn.set(t.uid,!0),P)).catch(P=>{const te=P;throw te.name==="MethodNotFoundRpcError"||te.name==="MethodNotSupportedRpcError"?(zn.set(t.uid,!1),q):te});throw q}}if((k==null?void 0:k.type)==="local"){const S=await Z(t,ls,"prepareTransactionRequest")({account:k,accessList:a,authorizationList:s,blobs:i,chain:r,data:o,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:h,maxPriorityFeePerGas:b,nonce:f,nonceManager:k.nonceManager,parameters:[...fs,"sidecars"],type:g,value:A,...j,to:V}),R=(U=r==null?void 0:r.serializers)==null?void 0:U.transaction,x=await k.signTransaction(S,{serializer:R});return await Z(t,pu,"sendRawTransaction")({serializedTransaction:x})}throw(k==null?void 0:k.type)==="smart"?new Nn({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new Nn({docsPath:"/docs/actions/wallet/sendTransaction",type:k==null?void 0:k.type})}catch(V){throw V instanceof Nn?V:ds(V,{...e,account:k,chain:e.chain||void 0})}}async function mn(t,e){return mn.internal(t,bu,"sendTransaction",e)}(function(t){async function e(n,r,a,s){const{abi:i,account:o=n.account,address:c,args:u,dataSuffix:d,functionName:h,...b}=s;if(typeof o>"u")throw new hs({docsPath:"/docs/contract/writeContract"});const f=o?ie(o):null,g=Pn({abi:i,args:u,functionName:h});try{return await Z(n,r,a)({data:`${g}${d?d.replace("0x",""):""}`,to:c,account:f,...b})}catch(A){throw Ar(A,{abi:i,address:c,args:u,docsPath:"/docs/contract/writeContract",functionName:h,sender:f==null?void 0:f.address})}}t.internal=e})(mn||(mn={}));const or=256;let an=or,sn;function ps(t=11){if(!sn||an+t>or*2){sn="",an=0;for(let e=0;e<or;e++)sn+=(256+Math.random()*256|0).toString(16).substring(1)}return sn.substring(an,an+++t)}function mu(t){const{batch:e,chain:n,ccipRead:r,key:a="base",name:s="Base Client",type:i="base"}=t,o=t.experimental_blockTag??(typeof(n==null?void 0:n.experimental_preconfirmationTime)=="number"?"pending":void 0),c=(n==null?void 0:n.blockTime)??12e3,u=Math.min(Math.max(Math.floor(c/2),500),4e3),d=t.pollingInterval??u,h=t.cacheTime??d,b=t.account?ie(t.account):void 0,{config:f,request:g,value:A}=t.transport({account:b,chain:n,pollingInterval:d}),j={...f,...A},k={account:b,batch:e,cacheTime:h,ccipRead:r,chain:n,key:a,name:s,pollingInterval:d,request:g,transport:j,type:i,uid:ps(),...o?{experimental_blockTag:o}:{}};function N($){return M=>{const U=M($);for(const S in k)delete U[S];const V={...$,...U};return Object.assign(V,{extend:N(V)})}}return Object.assign(k,{extend:N(k)})}function yu({key:t,methods:e,name:n,request:r,retryCount:a=3,retryDelay:s=150,timeout:i,type:o},c){const u=ps();return{config:{key:t,methods:e,name:n,request:r,retryCount:a,retryDelay:s,timeout:i,type:o},request:du(r,{methods:e,retryCount:a,retryDelay:s,uid:u}),value:c}}function gu(t,e={}){const{key:n="custom",methods:r,name:a="Custom Provider",retryDelay:s}=e;return({retryCount:i})=>yu({key:n,methods:r,name:a,request:t.request.bind(t),retryCount:e.retryCount??i,retryDelay:s,type:"custom"})}function $n(t){const e=t.state.current,n=t.state.connections.get(e),r=n==null?void 0:n.accounts,a=r==null?void 0:r[0],s=t.chains.find(o=>o.id===(n==null?void 0:n.chainId)),i=t.state.status;switch(i){case"connected":return{address:a,addresses:r,chain:s,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!0,isConnecting:!1,isDisconnected:!1,isReconnecting:!1,status:i};case"reconnecting":return{address:a,addresses:r,chain:s,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!!a,isConnecting:!1,isDisconnected:!1,isReconnecting:!0,status:i};case"connecting":return{address:a,addresses:r,chain:s,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!1,isConnecting:!0,isDisconnected:!1,isReconnecting:!1,status:i};case"disconnected":return{address:void 0,addresses:void 0,chain:void 0,chainId:void 0,connector:void 0,isConnected:!1,isConnecting:!1,isDisconnected:!0,isReconnecting:!1,status:i}}}function Ir(t){return t.state.chainId}function Rr(t,e,n){const r=t[e.name];if(typeof r=="function")return r;const a=t[n];return typeof a=="function"?a:s=>e(t,s)}const vu="2.13.8",wu=()=>`@wagmi/core@${vu}`;var bs=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},yn,ms;class Ge extends Error{get docsBaseUrl(){return"https://wagmi.sh/core"}get version(){return wu()}constructor(e,n={}){var r;super(),yn.add(this),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WagmiCoreError"});const a=n.cause instanceof Ge?n.cause.details:(r=n.cause)!=null&&r.message?n.cause.message:n.details,s=n.cause instanceof Ge&&n.cause.docsPath||n.docsPath;this.message=[e||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: ${this.docsBaseUrl}${s}.html${n.docsSlug?`#${n.docsSlug}`:""}`]:[],...a?[`Details: ${a}`]:[],`Version: ${this.version}`].join(`
38
+ `),n.cause&&(this.cause=n.cause),this.details=a,this.docsPath=s,this.metaMessages=n.metaMessages,this.shortMessage=e}walk(e){return bs(this,yn,"m",ms).call(this,this,e)}}yn=new WeakSet,ms=function t(e,n){return n!=null&&n(e)?e:e.cause?bs(this,yn,"m",t).call(this,e.cause,n):e};class xu extends Ge{constructor(){super("Connector not connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorNotConnectedError"})}}class _u extends Ge{constructor({address:e,connector:n}){super(`Account "${e}" not found for connector "${n.name}".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAccountNotFoundError"})}}class Pu extends Ge{constructor({connectionChainId:e,connectorChainId:n}){super(`The current chain of the connector (id: ${n}) does not match the connection's chain (id: ${e}).`,{metaMessages:[`Current Chain ID: ${n}`,`Expected Chain ID: ${e}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorChainMismatchError"})}}class Eu extends Ge{constructor({connector:e}){super(`Connector "${e.name}" unavailable while reconnecting.`,{details:["During the reconnection step, the only connector methods guaranteed to be available are: `id`, `name`, `type`, `uuid`.","All other methods are not guaranteed to be available until reconnection completes and connectors are fully restored.","This error commonly occurs for connectors that asynchronously inject after reconnection has already started."].join(" ")}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorUnavailableReconnectingError"})}}async function ys(t,e={}){let n;if(e.connector){const{connector:u}=e;if(t.state.status==="reconnecting"&&!u.getAccounts&&!u.getChainId)throw new Eu({connector:u});const[d,h]=await Promise.all([u.getAccounts(),u.getChainId()]);n={accounts:d,chainId:h,connector:u}}else n=t.state.connections.get(t.state.current);if(!n)throw new xu;const r=e.chainId??n.chainId,a=await n.connector.getChainId();if(a!==n.chainId)throw new Pu({connectionChainId:n.chainId,connectorChainId:a});const s=n.connector;if(s.getClient)return s.getClient({chainId:r});const i=ie(e.account??n.accounts[0]);if(i.address=Ao(i.address),e.account&&!n.accounts.some(u=>u.toLowerCase()===i.address.toLowerCase()))throw new _u({address:i.address,connector:s});const o=t.chains.find(u=>u.id===r),c=await n.connector.getProvider({chainId:r});return mu({account:i,chain:o,name:"Connector Client",transport:u=>gu(c)({...u,retryCount:0})})}async function cr(t,e){const{abi:n,chainId:r,connector:a,...s}=e;let i;e.account?i=e.account:i=(await ys(t,{chainId:r,connector:a})).account;const o=t.getClient({chainId:r}),c=Rr(o,hu,"simulateContract"),{result:u,request:d}=await c({...s,abi:n,account:i});return{chainId:o.chain.id,result:u,request:{__mode:"prepared",...d,chainId:r}}}function Mr(t){return t.address!==void 0&&typeof t.address=="object"?(e,n)=>{var r;const a=Ir(e),s=$n(e),i=(n==null?void 0:n.chainId)??s.chainId??a;return cr(e,{...n,...t.functionName?{functionName:t.functionName}:{},address:(r=t.address)==null?void 0:r[i],abi:t.abi})}:(e,n)=>cr(e,{...n,...t.address?{address:t.address}:{},...t.functionName?{functionName:t.functionName}:{},abi:t.abi})}function na(t,e){const{chainId:n,...r}=e,a=t.getClient({chainId:n});return Rr(a,O0,"readContract")(r)}function gs(t){return t.address!==void 0&&typeof t.address=="object"?(e,n)=>{var r;const a=Ir(e),s=$n(e),i=(n==null?void 0:n.chainId)??s.chainId??a;return na(e,{...n,...t.functionName?{functionName:t.functionName}:{},address:(r=t.address)==null?void 0:r[i],abi:t.abi})}:(e,n)=>na(e,{...n,...t.address?{address:t.address}:{},...t.functionName?{functionName:t.functionName}:{},abi:t.abi})}async function ra(t,e){const{account:n,chainId:r,connector:a,__mode:s,...i}=e;let o;typeof n=="object"&&n.type==="local"?o=t.getClient({chainId:r}):o=await ys(t,{account:n,chainId:r,connector:a});const{connector:c}=$n(t);let u;if(s==="prepared"||c!=null&&c.supportsSimulation)u=i;else{const{request:d}=await cr(t,{...i,account:n,chainId:r});u=d}return await Rr(o,mn,"writeContract")({...u,...n?{account:n}:{},chain:r?{id:r}:null})}function Or(t){return t.address!==void 0&&typeof t.address=="object"?(e,n)=>{var r;const a=Ir(e),s=$n(e);let i;return n.chainId?i=n.chainId:n.account&&n.account===s.address||n.account===void 0?i=s.chainId:i=a,ra(e,{...n,...t.functionName?{functionName:t.functionName}:{},address:i?(r=t.address)==null?void 0:r[i]:void 0,abi:t.abi})}:(e,n)=>ra(e,{...n,...t.address?{address:t.address}:{},...t.functionName?{functionName:t.functionName}:{},abi:t.abi})}const $e=[{type:"error",inputs:[],name:"AllowanceOverflow"},{type:"error",inputs:[],name:"AllowanceUnderflow"},{type:"error",inputs:[],name:"InsufficientAllowance"},{type:"error",inputs:[],name:"InsufficientBalance"},{type:"error",inputs:[],name:"InvalidPermit"},{type:"error",inputs:[],name:"Permit2AllowanceIsFixedAtInfinity"},{type:"error",inputs:[],name:"PermitExpired"},{type:"error",inputs:[],name:"TotalSupplyOverflow"},{type:"event",anonymous:!1,inputs:[{name:"owner",internalType:"address",type:"address",indexed:!0},{name:"spender",internalType:"address",type:"address",indexed:!0},{name:"amount",internalType:"uint256",type:"uint256",indexed:!1}],name:"Approval"},{type:"event",anonymous:!1,inputs:[{name:"from",internalType:"address",type:"address",indexed:!0},{name:"to",internalType:"address",type:"address",indexed:!0},{name:"amount",internalType:"uint256",type:"uint256",indexed:!1}],name:"Transfer"},{type:"function",inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{name:"result",internalType:"bytes32",type:"bytes32"}],stateMutability:"view"},{type:"function",inputs:[{name:"owner",internalType:"address",type:"address"},{name:"spender",internalType:"address",type:"address"}],name:"allowance",outputs:[{name:"result",internalType:"uint256",type:"uint256"}],stateMutability:"view"},{type:"function",inputs:[{name:"spender",internalType:"address",type:"address"},{name:"amount",internalType:"uint256",type:"uint256"}],name:"approve",outputs:[{name:"",internalType:"bool",type:"bool"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"owner",internalType:"address",type:"address"}],name:"balanceOf",outputs:[{name:"result",internalType:"uint256",type:"uint256"}],stateMutability:"view"},{type:"function",inputs:[],name:"decimals",outputs:[{name:"",internalType:"uint8",type:"uint8"}],stateMutability:"view"},{type:"function",inputs:[{name:"to",internalType:"address",type:"address"},{name:"amount",internalType:"uint256",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"to",internalType:"address",type:"address"},{name:"amount",internalType:"uint256",type:"uint256"}],name:"mintPayable",outputs:[],stateMutability:"payable"},{type:"function",inputs:[],name:"name",outputs:[{name:"",internalType:"string",type:"string"}],stateMutability:"pure"},{type:"function",inputs:[{name:"owner",internalType:"address",type:"address"}],name:"nonces",outputs:[{name:"result",internalType:"uint256",type:"uint256"}],stateMutability:"view"},{type:"function",inputs:[{name:"owner",internalType:"address",type:"address"},{name:"spender",internalType:"address",type:"address"},{name:"value",internalType:"uint256",type:"uint256"},{name:"deadline",internalType:"uint256",type:"uint256"},{name:"v",internalType:"uint8",type:"uint8"},{name:"r",internalType:"bytes32",type:"bytes32"},{name:"s",internalType:"bytes32",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable"},{type:"function",inputs:[],name:"symbol",outputs:[{name:"",internalType:"string",type:"string"}],stateMutability:"pure"},{type:"function",inputs:[],name:"totalSupply",outputs:[{name:"result",internalType:"uint256",type:"uint256"}],stateMutability:"view"},{type:"function",inputs:[{name:"to",internalType:"address",type:"address"},{name:"amount",internalType:"uint256",type:"uint256"}],name:"transfer",outputs:[{name:"",internalType:"bool",type:"bool"}],stateMutability:"nonpayable"},{type:"function",inputs:[{name:"from",internalType:"address",type:"address"},{name:"to",internalType:"address",type:"address"},{name:"amount",internalType:"uint256",type:"uint256"}],name:"transferFrom",outputs:[{name:"",internalType:"bool",type:"bool"}],stateMutability:"nonpayable"}],Au=gs({abi:$e,functionName:"allowance"}),Tu=gs({abi:$e,functionName:"balanceOf"}),$u=Or({abi:$e,functionName:"approve"}),Cu=Or({abi:$e,functionName:"mint"}),ku=Or({abi:$e,functionName:"mintPayable"}),Su=Mr({abi:$e,functionName:"approve"}),Iu=Mr({abi:$e,functionName:"mint"}),Ru=Mr({abi:$e,functionName:"mintPayable"}),Mu="0x6080604052348015600e575f80fd5b50610b398061001c5f395ff3fe6080604052600436106100d9575f3560e01c806340c10f191161007c57806395d89b411161005757806395d89b4114610323578063a9059cbb14610368578063d505accf14610387578063dd62ed3e146103a6575f80fd5b806340c10f19146102a257806370a08231146102c15780637ecebe00146102f2575f80fd5b806318160ddd116100b757806318160ddd1461017857806323b872dd1461019e578063313ce567146101bd5780633644e515146101d8575f80fd5b806306fdde03146100dd578063095ea7b31461013457806317d304b014610163575b5f80fd5b3480156100e8575f80fd5b5060408051808201909152600a81527f4d6f636b2045524332300000000000000000000000000000000000000000000060208201525b60405161012b9190610930565b60405180910390f35b34801561013f575f80fd5b5061015361014e3660046109ab565b6103c5565b604051901515815260200161012b565b6101766101713660046109ab565b610452565b005b348015610183575f80fd5b506805345cdf77eb68f44c545b60405190815260200161012b565b3480156101a9575f80fd5b506101536101b83660046109d3565b6104d8565b3480156101c8575f80fd5b506040516012815260200161012b565b3480156101e3575f80fd5b50604080518082018252600a81527f4d6f636b2045524332300000000000000000000000000000000000000000000060209182015281517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81527fa5c9260bf133e670eeaf4d41f5c4289fc23bb146bf11ba8fa70a2ea91ba1a330918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc69181019190915246606082015230608082015260a09020610190565b3480156102ad575f80fd5b506101766102bc3660046109ab565b6104ca565b3480156102cc575f80fd5b506101906102db366004610a0d565b6387a211a2600c9081525f91909152602090205490565b3480156102fd575f80fd5b5061019061030c366004610a0d565b6338377508600c9081525f91909152602090205490565b34801561032e575f80fd5b5060408051808201909152600481527f4d4f434b00000000000000000000000000000000000000000000000000000000602082015261011e565b348015610373575f80fd5b506101536103823660046109ab565b6105a7565b348015610392575f80fd5b506101766103a1366004610a2d565b61061e565b3480156103b1575f80fd5b506101906103c0366004610a9a565b610834565b5f73ffffffffffffffffffffffffffffffffffffffff83166e22d473030f116ddee9f6b43ac78ba3188219151761040357633f68539a5f526004601cfd5b82602052637f5e9f20600c52335f52816034600c2055815f52602c5160601c337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa35060015b92915050565b61045d606482610acb565b3410156104ca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4d6f636b45524332303a2067696d6d65206d6f7265206d6f6e65792100000000604482015260640160405180910390fd5b6104d482826108b4565b5050565b5f8360601b6e22d473030f116ddee9f6b43ac78ba3331461052d5733602052637f5e9f208117600c526034600c20805480191561052a5780851115610524576313be252b5f526004601cfd5b84810382555b50505b6387a211a28117600c526020600c208054808511156105535763f4d678b85f526004601cfd5b84810382555050835f526020600c208381540181555082602052600c5160601c8160601c7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a3505060019392505050565b5f6387a211a2600c52335f526020600c208054808411156105cf5763f4d678b85f526004601cfd5b83810382555050825f526020600c208281540181555081602052600c5160601c337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff86166e22d473030f116ddee9f6b43ac78ba3188519151761065b57633f68539a5f526004601cfd5b60408051808201909152600a81527f4d6f636b204552433230000000000000000000000000000000000000000000006020909101527fa5c9260bf133e670eeaf4d41f5c4289fc23bb146bf11ba8fa70a2ea91ba1a3307fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6428610156106e757631a15a3cc5f526004601cfd5b6040518960601b60601c99508860601b60601c985065383775081901600e52895f526020600c2080547f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835284602084015283604084015246606084015230608084015260a08320602e527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c983528b60208401528a60408401528960608401528060808401528860a084015260c08320604e526042602c205f528760ff16602052866040528560605260208060805f60015afa8c3d51146107cf5763ddafbaef5f526004601cfd5b019055777f5e9f20000000000000000000000000000000000000000089176040526034602c20889055888a7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925602060608501a360405250505f60605250505050505050565b5f7fffffffffffffffffffffffffffffffffffdd2b8cfcf0ee922116094bc538745d73ffffffffffffffffffffffffffffffffffffffff83160161089957507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61044c565b50602052637f5e9f20600c9081525f91909152603490205490565b6805345cdf77eb68f44c54818101818110156108d75763e5cfe9575f526004601cfd5b806805345cdf77eb68f44c5550506387a211a2600c52815f526020600c208181540181555080602052600c5160601c5f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a35050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b803573ffffffffffffffffffffffffffffffffffffffff811681146109a6575f80fd5b919050565b5f80604083850312156109bc575f80fd5b6109c583610983565b946020939093013593505050565b5f805f606084860312156109e5575f80fd5b6109ee84610983565b92506109fc60208501610983565b929592945050506040919091013590565b5f60208284031215610a1d575f80fd5b610a2682610983565b9392505050565b5f805f805f805f60e0888a031215610a43575f80fd5b610a4c88610983565b9650610a5a60208901610983565b95506040880135945060608801359350608088013560ff81168114610a7d575f80fd5b9699959850939692959460a0840135945060c09093013592915050565b5f8060408385031215610aab575f80fd5b610ab483610983565b9150610ac260208401610983565b90509250929050565b5f82610afe577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea2646970667358221220dcec948e703d7841a9bac2a0a714923268527cd72b6ee68975fb52d9176ce95b64736f6c634300081a0033";class vs extends L.Deployable{async balanceOf(e,n){return await Tu(this._config,{address:this.assertValidAddress(),args:[e],...n})}async allowance(e,n,r){return await Au(this._config,{address:this.assertValidAddress(),args:[e,n],...r})}async approve(e,n,r){return await this.awaitResult(this.approveRaw(e,n,r))}async approveRaw(e,n,r){const{request:a,result:s}=await Su(this._config,{address:this.assertValidAddress(),args:[e,n],...this.optionallyAttachAccount(),...r});return{hash:await $u(this._config,a),result:s}}async mint(e,n,r){return await this.awaitResult(this.mintRaw(e,n,r))}async mintRaw(e,n,r){const{request:a,result:s}=await Iu(this._config,{address:this.assertValidAddress(),args:[e,n],...this.optionallyAttachAccount(),...r});return{hash:await Cu(this._config,a),result:s}}async mintPayable(e,n,r){return await this.awaitResult(this.mintPayableRaw(e,n,r))}async mintPayableRaw(e,n,r){const{request:a,result:s}=await Ru(this._config,{address:this.assertValidAddress(),args:[e,n],...this.optionallyAttachAccount(),...r});return{hash:await ku(this._config,a),result:s}}buildParameters(e={},n){const[,r]=this.validateDeploymentConfig(e,n);return{abi:$e,bytecode:Mu,...this.optionallyAttachAccount(r.account)}}}const Ou=[{account:"0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266",key:"0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80"},{account:"0x70997970C51812dc3A010C7d01b50e0d17dc79C8",key:"0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d"},{account:"0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC",key:"0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a"},{account:"0x90F79bf6EB2c4f870365E785982E1f101E93b906",key:"0x7c852118294e51e653712a81e05800f419141751be58f605c371e15141b007a6"},{account:"0x15d34AAf54267DB7D7c367839AAf71A00a2C6A65",key:"0x47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a"},{account:"0x9965507D1a55bcC2695C58ba16FB37d819B0A4dc",key:"0x8b3a350cf5c34c9194ca85829a2df0ec3153be0318b5e2d3348e872092edffba"},{account:"0x70997970C51812dc3A010C7d01b50e0d17dc79C8",key:"0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d"},{account:"0x70997970C51812dc3A010C7d01b50e0d17dc79C8",key:"0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d"},{account:"0x70997970C51812dc3A010C7d01b50e0d17dc79C8",key:"0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d"},{account:"0x70997970C51812dc3A010C7d01b50e0d17dc79C8",key:"0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d"}].map(t=>({...t,privateKey:W.privateKeyToAccount(t.key)})),Bu="test test test test test test test test test test test junk",ju=async function(e,n){const r=n.privateKey,a=n.mnemonic??Bu,s=n.chain||"anvil",[{config:i,account:o},c]=W.getDeployableOptions({chain:s,rpcUrl:n.rpcUrl,privateKey:r,mnemonic:a}),u=c.id;if(e.at(0)==="generate")return Vs({account:o==null?void 0:o.address,chainId:u});if(e.at(0)==="erc20"){let $=new vs({config:i,account:o},{});return await $.deploy(),{erc20:$.assertValidAddress()}}const d=L.BOOST_REGISTRY_ADDRESSES[u];if(!d)throw new Error(`Unable to select a deployed BoostRegistry with chain ID ${u}`);const h=new L.BoostRegistry({config:i,account:o,address:d}),b=L.BOOST_CORE_ADDRESSES[u];if(!b)throw new Error(`Unable to select a deployed BoostCore with chain ID ${u}`);const f=new L.BoostCore({config:i,account:o,address:b});if(!e.length)throw new Error("No seed provided");const g=await Promise.all(e.map(Fu));let A,j;const k=[];let N;for(const $ of g){let M;if(typeof $.budget=="string"&&W.isAddress$1($.budget))M=f.ManagedBudget($.budget);else if(Ln(j,$.budget)&&A)M=A;else{let x=$.budget;switch(x.type){case"ManagedBudget":{const B={...x,authorized:[...$.budget.authorized,b],roles:[...$.budget.roles,L.Roles.MANAGER]};M=await h.initialize(crypto.randomUUID(),f.ManagedBudget(B))}case"ManagedBudgetWithFeesV2":{const B={managementFee:0n,...x,authorized:[...$.budget.authorized,b],roles:[...$.budget.roles,L.Roles.MANAGER]};M=await h.initialize(crypto.randomUUID(),f.ManagedBudgetWithFeesV2(B))}}A=M,j=$.budget,N=M.assertValidAddress()}const U=$.incentives.map(async x=>{let B=0n;switch(x.type){case"AllowListIncentive":return f.AllowListIncentive(x);case"PointsIncentive":return f.PointsIncentive(x);case"ERC20Incentive":return x.strategy===L.StrategyType.RAFFLE&&(B+=x.reward),x.strategy===L.StrategyType.POOL&&(B+=x.reward*x.limit),x.shouldMintAndAllocate&&await ut(M,B,x.asset,{config:i,account:o}),f.ERC20Incentive(x);case"ERC20VariableCriteriaIncentiveV2":return B+=x.limit,x.shouldMintAndAllocate&&await ut(M,B,x.asset,{config:i,account:o}),f.ERC20VariableCriteriaIncentiveV2(x);case"ERC20PeggedVariableCriteriaIncentiveV2":return B+=x.limit,x.shouldMintAndAllocate&&await ut(M,B,x.asset,{config:i,account:o}),f.ERC20PeggedVariableCriteriaIncentiveV2(x);case"ERC20VariableIncentive":return B+=x.limit,x.shouldMintAndAllocate&&await ut(M,B,x.asset,{config:i,account:o}),f.ERC20VariableIncentive(x);case"CGDAIncentive":return B+=x.totalBudget,x.shouldMintAndAllocate&&await ut(M,B,x.asset,{config:i,account:o}),f.CGDAIncentive(x)}}),V=await Promise.all(U),S={protocolFee:$.protocolFee,maxParticipants:$.maxParticipants,budget:M,action:f.EventAction($.action),allowList:await Ls($,{core:f}),incentives:V};$.validator&&(S.validator=f.SignerValidator($.validator));const R=await f.createBoost(S);k.push(R.id.toString())}return{boostIds:k,budget:N}};async function ut(t,e,n,r){if(n&&e){let a=new vs(r,n);await zu(r,a,t,aa(e.toString()))}}async function Fu(t){const e=await Zs.readFile(Gs.normalize(t),{encoding:"utf8"});return jr.parse(JSON.parse(e))}const Nu=l.custom(W.isHex$1,"invalid Hex payload"),I=l.string().transform((t,e)=>(/^0x[a-fA-F0-9]{40}$/.test(t)||e.addIssue({code:l.ZodIssueCode.custom,message:`Invalid Address ${t}`}),t)).pipe(l.custom(W.isAddress$1,"invalid eth address")),ws=l.coerce.number().min(1).max(2).transform(BigInt).pipe(l.custom()),xs=l.object({type:l.literal("ManagedBudgetWithFeesV2"),owner:I,authorized:l.array(I),managementFee:l.coerce.bigint().nonnegative().lt(10000n),roles:l.array(ws)}).refine(t=>t.authorized.length===t.roles.length,"length mismatch authorized and roles"),_s=l.object({type:l.literal("ManagedBudget"),owner:I,authorized:l.array(I),roles:l.array(ws)}).refine(t=>t.authorized.length===t.roles.length,"length mismatch authorized and roles"),Cn=l.custom().pipe(l.string().regex(/^(event|function) .*/,{message:"signature must start with `event` or function`"}).transform(t=>{if(t.startsWith("function"))return W.pad(W.toFunctionSelector(t));if(t.startsWith("event"))return W.toEventSelector(t);throw new Error("unreachable")})),Ps=l.object({signatureType:l.nativeEnum(L.SignatureType),signature:Cn,fieldIndex:l.number().nonnegative(),targetContract:I,chainid:l.number().nonnegative()}),Es=l.object({filterType:l.nativeEnum(L.FilterType),fieldType:l.nativeEnum(L.PrimitiveType),fieldIndex:l.number().nonnegative(),filterData:Nu}),As=l.object({signature:Cn,signatureType:l.nativeEnum(L.SignatureType),actionType:l.number().optional(),targetContract:I,chainid:l.number().nonnegative(),actionParameter:Es}),Ts=l.object({type:l.literal("EventAction"),actionClaimant:Ps,actionSteps:l.array(As).max(4)}),$s=l.object({type:l.literal("LimitedSignerValidator"),signers:l.array(I),validatorCaller:I,maxClaimCount:l.coerce.number()}),Cs=l.object({type:l.literal("PayableLimitedSignerValidator"),signers:l.array(I),validatorCaller:I,maxClaimCount:l.coerce.number(),baseImplementation:I}),ks=l.object({type:l.literal("SignerValidator"),signers:l.array(I),validatorCaller:I}),Ss=l.object({type:l.literal("SimpleDenyList"),owner:I,denied:l.array(I)}),Is=l.object({type:l.literal("SimpleAllowList"),owner:I,allowed:l.array(I)}),Rs=l.object({type:l.literal("OffchainAccessList"),owner:I,allowlistIds:l.array(l.string()),denylistIds:l.array(l.string())}),Ms=l.object({type:l.literal("AllowListIncentive"),allowList:I,limit:l.coerce.bigint()}),Os=l.object({type:l.literal("ERC20Incentive"),asset:I,shouldMintAndAllocate:l.boolean().optional().default(!1),strategy:l.nativeEnum(L.StrategyType),reward:l.coerce.bigint(),limit:l.coerce.bigint(),manager:I.optional()}),Bs=l.object({type:l.literal("ERC20VariableIncentive"),asset:I,shouldMintAndAllocate:l.boolean().optional().default(!1),reward:l.coerce.bigint(),limit:l.coerce.bigint(),manager:I}),Br=l.object({criteriaType:l.nativeEnum(L.SignatureType),signature:Cn,fieldIndex:l.number().nonnegative(),targetContract:I,valueType:l.nativeEnum(L.ValueType)}),js=l.object({type:l.literal("ERC20VariableCriteriaIncentiveV2"),asset:I,shouldMintAndAllocate:l.boolean().optional().default(!1),reward:l.coerce.bigint(),limit:l.coerce.bigint(),manager:I.optional(),criteria:Br}),Fs=l.object({type:l.literal("ERC20PeggedVariableCriteriaIncentiveV2"),asset:I,shouldMintAndAllocate:l.boolean().optional().default(!1),maxReward:l.coerce.bigint(),peg:I,reward:l.coerce.bigint(),limit:l.coerce.bigint(),manager:I.optional(),criteria:Br}),Ns=l.object({type:l.literal("CGDAIncentive"),asset:I,shouldMintAndAllocate:l.boolean().optional().default(!1),initialReward:l.coerce.bigint(),rewardDecay:l.coerce.bigint(),rewardBoost:l.coerce.bigint(),totalBudget:l.coerce.bigint(),manager:I}),zs=l.object({type:l.literal("PointsIncentive"),venue:I,selector:Cn,reward:l.coerce.bigint(),limit:l.coerce.bigint()}),jr=l.object({protocolFee:l.coerce.bigint(),maxParticipants:l.coerce.bigint(),budget:l.union([I,_s,xs]),action:l.union([I,Ts]),validator:l.union([I,ks,$s,Cs]).optional(),allowList:l.union([I,Ss,Is,Rs]).optional(),incentives:l.array(l.union([Ms,Os,js,Fs,Bs,Ns,zs]))});async function Ls({allowList:t},{core:e}){if(!t)return e.OpenAllowList();if(typeof t=="string"&&W.isAddress$1(t))return await L.allowListFromAddress({config:e._config,account:e._account},t);switch(t.type){case"SimpleAllowList":return e.SimpleAllowList(t);case"SimpleDenyList":return e.SimpleDenyList(t);case"OffchainAccessList":return e.OffchainAccessList(t);default:throw new Error("unusupported AllowList: "+t)}}async function zu(t,e,n,r=aa("110")){return await e.mint(t.account.address,r),await e.approve(n.assertValidAddress(),r),"allocate"in n&&await n.allocate({amount:r,asset:e.assertValidAddress(),target:t.account.address}),{budget:n,erc20:e}}function Vs({asset:t="0xf3B2d0E4f2d8F453DBCc278b10e88b20d7f19f8D",account:e=Ou[0].account,chainId:n}){return{protocolFee:0n,maxParticipants:10n,budget:{type:"ManagedBudgetWithFeesV2",owner:e,authorized:[e],roles:[L.Roles.MANAGER],managementFee:500n},action:{type:"EventAction",actionClaimant:{signatureType:L.SignatureType.FUNC,signature:"function mint(address to, uint256 amount)",fieldIndex:0,targetContract:W.zeroAddress,chainid:n},actionSteps:[{signature:"event Minted(address to, uint256 amount)",signatureType:L.SignatureType.FUNC,actionType:0,targetContract:W.zeroAddress,chainid:n,actionParameter:{filterType:L.FilterType.EQUAL,fieldType:L.PrimitiveType.ADDRESS,fieldIndex:0,filterData:e}}]},validator:{type:"SignerValidator",signers:[e],validatorCaller:e},allowList:{type:"SimpleDenyList",owner:e,denied:[]},incentives:[{type:"ERC20Incentive",asset:t,shouldMintAndAllocate:!1,strategy:0,reward:1n,limit:1n,manager:e}]}}async function Lu(t,e){const n=jr.parse(t);let r;if(typeof n.budget=="string"&&W.isAddress$1(n.budget))r=e.ManagedBudgetWithFeesV2(n.budget);else throw new Error("budget missing");const a=n.incentives.map(i=>{switch(i.type){case"AllowListIncentive":return e.AllowListIncentive(i);case"PointsIncentive":return e.PointsIncentive(i);case"ERC20Incentive":return e.ERC20Incentive(i);case"ERC20VariableCriteriaIncentiveV2":return e.ERC20VariableCriteriaIncentiveV2(i);case"ERC20PeggedVariableCriteriaIncentiveV2":return e.ERC20PeggedVariableCriteriaIncentiveV2(i);case"ERC20VariableIncentive":return e.ERC20VariableIncentive(i);case"CGDAIncentive":return e.CGDAIncentive(i)}}),s={protocolFee:n.protocolFee,maxParticipants:n.maxParticipants,budget:r,action:e.EventAction(n.action),allowList:await Ls(n,{core:e}),incentives:a};if(n.validator&&typeof n.validator=="object")switch(n.validator.type){case"SignerValidator":s.validator=e.SignerValidator(n.validator);break;case"LimitedSignerValidator":s.validator=e.LimitedSignerValidator(n.validator);break;case"PayableLimitedSignerValidator":s.validator=e.PayableLimitedSignerValidator(n.validator);break;default:throw new Error("unsupported Validator: "+n.validator)}return s}exports.AbiErrorInputsNotFoundError=co;exports.AbiErrorNotFoundError=uo;exports.AbiFunctionNotFoundError=At;exports.AbiFunctionOutputsNotFoundError=ga;exports.AbiFunctionSignatureNotFoundError=fo;exports.ActionClaimantSchema=Ps;exports.ActionStepCriteriaSchema=Es;exports.ActionStepSchema=As;exports.AllowListIncentiveSchema=Ms;exports.BaseError=m;exports.BoostSeedConfigSchema=jr;exports.CGDAIncentiveSchema=Ns;exports.ERC20IncentiveSchema=Os;exports.ERC20PeggedVariableCriteriaIncentiveV2Schema=Fs;exports.ERC20VariableCriteriaIncentiveV2Schema=js;exports.ERC20VariableIncentiveSchema=Bs;exports.EventActionSchema=Ts;exports.HttpRequestError=Er;exports.IncentiveCriteriaSchema=Br;exports.InvalidAddressError=et;exports.InvalidArrayError=va;exports.LimitedSignerValidatorSchema=$s;exports.ManagedBudgetSchema=_s;exports.ManagedBudgetWithFeesV2Schema=xs;exports.OffchainAccessListSchema=Rs;exports.PayableLimitedSignerValidatorSchema=Cs;exports.PointsIncentiveSchema=zs;exports.SignerValidatorSchema=ks;exports.SimpleAllowListSchema=Is;exports.SimpleDenyListSchema=Ss;exports.batchGatewayAbi=to;exports.call=$r;exports.concat=Ve;exports.concatHex=Xt;exports.decodeAbiParameters=wr;exports.decodeErrorResult=Ua;exports.encodeAbiParameters=mr;exports.formatAbiItem=Le;exports.getAbiItem=_n;exports.getCreateBoostPayloadFromBoostConfig=Lu;exports.getUrl=Pr;exports.isAddress=Ae;exports.isHex=Pe;exports.makeSeed=Vs;exports.seed=ju;exports.slice=$t;exports.solidityError=Ga;exports.stringify=en;exports.toFunctionSelector=xn;