mint.club-cli 1.5.0 → 1.5.1

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.
Files changed (44) hide show
  1. package/README.md +21 -8
  2. package/dist/index.js +67 -67
  3. package/package.json +20 -8
  4. package/dist/abi/bond.d.ts +0 -244
  5. package/dist/abi/bond.js +0 -323
  6. package/dist/abi/bond.js.map +0 -1
  7. package/dist/abi/zap-v2.d.ts +0 -93
  8. package/dist/abi/zap-v2.js +0 -121
  9. package/dist/abi/zap-v2.js.map +0 -1
  10. package/dist/client.d.ts +0 -6
  11. package/dist/client.js +0 -38
  12. package/dist/client.js.map +0 -1
  13. package/dist/commands/buy.d.ts +0 -2
  14. package/dist/commands/buy.js +0 -77
  15. package/dist/commands/buy.js.map +0 -1
  16. package/dist/commands/create.d.ts +0 -2
  17. package/dist/commands/create.js +0 -85
  18. package/dist/commands/create.js.map +0 -1
  19. package/dist/commands/info.d.ts +0 -19
  20. package/dist/commands/info.js +0 -139
  21. package/dist/commands/info.js.map +0 -1
  22. package/dist/commands/sell.d.ts +0 -2
  23. package/dist/commands/sell.js +0 -77
  24. package/dist/commands/sell.js.map +0 -1
  25. package/dist/commands/zap-buy.d.ts +0 -2
  26. package/dist/commands/zap-buy.js +0 -93
  27. package/dist/commands/zap-buy.js.map +0 -1
  28. package/dist/commands/zap-sell.d.ts +0 -2
  29. package/dist/commands/zap-sell.js +0 -89
  30. package/dist/commands/zap-sell.js.map +0 -1
  31. package/dist/config/chains.d.ts +0 -782
  32. package/dist/config/chains.js +0 -260
  33. package/dist/config/chains.js.map +0 -1
  34. package/dist/config/contracts.d.ts +0 -44
  35. package/dist/config/contracts.js +0 -59
  36. package/dist/config/contracts.js.map +0 -1
  37. package/dist/index.d.ts +0 -2
  38. package/dist/index.js.map +0 -1
  39. package/dist/utils/format.d.ts +0 -26
  40. package/dist/utils/format.js +0 -54
  41. package/dist/utils/format.js.map +0 -1
  42. package/dist/utils/swap.d.ts +0 -8
  43. package/dist/utils/swap.js +0 -48
  44. package/dist/utils/swap.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,49 +1,50 @@
1
1
  #!/usr/bin/env node
2
- import{createRequire as GM}from"node:module";var QM=Object.create;var{getPrototypeOf:XM,defineProperty:I5,getOwnPropertyNames:YM}=Object;var ZM=Object.prototype.hasOwnProperty;var VW=($,J,Q)=>{Q=$!=null?QM(XM($)):{};let X=J||!$||!$.__esModule?I5(Q,"default",{value:$,enumerable:!0}):Q;for(let Y of YM($))if(!ZM.call(X,Y))I5(X,Y,{get:()=>$[Y],enumerable:!0});return X};var SJ=($,J)=>()=>(J||$((J={exports:{}}).exports,J),J.exports);var Y9=($,J)=>{for(var Q in J)I5($,Q,{get:J[Q],enumerable:!0,configurable:!0,set:(X)=>J[Q]=()=>X})};var T=($,J)=>()=>($&&(J=$($=0)),J);var a0=GM(import.meta.url);var uX=SJ((WM)=>{class _5 extends Error{constructor($,J,Q){super(Q);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=J,this.exitCode=$,this.nestedError=void 0}}class MW extends _5{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}WM.CommanderError=_5;WM.InvalidArgumentError=MW});var Z9=SJ((DM)=>{var{InvalidArgumentError:VM}=uX();class DW{constructor($,J){switch(this.description=J||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,$[0]){case"<":this.required=!0,this._name=$.slice(1,-1);break;case"[":this.required=!1,this._name=$.slice(1,-1);break;default:this.required=!0,this._name=$;break}if(this._name.length>3&&this._name.slice(-3)==="...")this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_concatValue($,J){if(J===this.defaultValue||!Array.isArray(J))return[$];return J.concat($)}default($,J){return this.defaultValue=$,this.defaultValueDescription=J,this}argParser($){return this.parseArg=$,this}choices($){return this.argChoices=$.slice(),this.parseArg=(J,Q)=>{if(!this.argChoices.includes(J))throw new VM(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._concatValue(J,Q);return J},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function MM($){let J=$.name()+($.variadic===!0?"...":"");return $.required?"<"+J+">":"["+J+"]"}DM.Argument=DW;DM.humanReadableArgName=MM});var T5=SJ((zM)=>{var{humanReadableArgName:wM}=Z9();class UW{constructor(){this.helpWidth=void 0,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}visibleCommands($){let J=$.commands.filter((X)=>!X._hidden),Q=$._getHelpCommand();if(Q&&!Q._hidden)J.push(Q);if(this.sortSubcommands)J.sort((X,Y)=>{return X.name().localeCompare(Y.name())});return J}compareOptions($,J){let Q=(X)=>{return X.short?X.short.replace(/^-/,""):X.long.replace(/^--/,"")};return Q($).localeCompare(Q(J))}visibleOptions($){let J=$.options.filter((X)=>!X.hidden),Q=$._getHelpOption();if(Q&&!Q.hidden){let X=Q.short&&$._findOption(Q.short),Y=Q.long&&$._findOption(Q.long);if(!X&&!Y)J.push(Q);else if(Q.long&&!Y)J.push($.createOption(Q.long,Q.description));else if(Q.short&&!X)J.push($.createOption(Q.short,Q.description))}if(this.sortOptions)J.sort(this.compareOptions);return J}visibleGlobalOptions($){if(!this.showGlobalOptions)return[];let J=[];for(let Q=$.parent;Q;Q=Q.parent){let X=Q.options.filter((Y)=>!Y.hidden);J.push(...X)}if(this.sortOptions)J.sort(this.compareOptions);return J}visibleArguments($){if($._argsDescription)$.registeredArguments.forEach((J)=>{J.description=J.description||$._argsDescription[J.name()]||""});if($.registeredArguments.find((J)=>J.description))return $.registeredArguments;return[]}subcommandTerm($){let J=$.registeredArguments.map((Q)=>wM(Q)).join(" ");return $._name+($._aliases[0]?"|"+$._aliases[0]:"")+($.options.length?" [options]":"")+(J?" "+J:"")}optionTerm($){return $.flags}argumentTerm($){return $.name()}longestSubcommandTermLength($,J){return J.visibleCommands($).reduce((Q,X)=>{return Math.max(Q,J.subcommandTerm(X).length)},0)}longestOptionTermLength($,J){return J.visibleOptions($).reduce((Q,X)=>{return Math.max(Q,J.optionTerm(X).length)},0)}longestGlobalOptionTermLength($,J){return J.visibleGlobalOptions($).reduce((Q,X)=>{return Math.max(Q,J.optionTerm(X).length)},0)}longestArgumentTermLength($,J){return J.visibleArguments($).reduce((Q,X)=>{return Math.max(Q,J.argumentTerm(X).length)},0)}commandUsage($){let J=$._name;if($._aliases[0])J=J+"|"+$._aliases[0];let Q="";for(let X=$.parent;X;X=X.parent)Q=X.name()+" "+Q;return Q+J+" "+$.usage()}commandDescription($){return $.description()}subcommandDescription($){return $.summary()||$.description()}optionDescription($){let J=[];if($.argChoices)J.push(`choices: ${$.argChoices.map((Q)=>JSON.stringify(Q)).join(", ")}`);if($.defaultValue!==void 0){if($.required||$.optional||$.isBoolean()&&typeof $.defaultValue==="boolean")J.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`)}if($.presetArg!==void 0&&$.optional)J.push(`preset: ${JSON.stringify($.presetArg)}`);if($.envVar!==void 0)J.push(`env: ${$.envVar}`);if(J.length>0)return`${$.description} (${J.join(", ")})`;return $.description}argumentDescription($){let J=[];if($.argChoices)J.push(`choices: ${$.argChoices.map((Q)=>JSON.stringify(Q)).join(", ")}`);if($.defaultValue!==void 0)J.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`);if(J.length>0){let Q=`(${J.join(", ")})`;if($.description)return`${$.description} ${Q}`;return Q}return $.description}formatHelp($,J){let Q=J.padWidth($,J),X=J.helpWidth||80,Y=2,Z=2;function G(U,z){if(z){let w=`${U.padEnd(Q+2)}${z}`;return J.wrap(w,X-2,Q+2)}return U}function W(U){return U.join(`
3
- `).replace(/^/gm," ".repeat(2))}let K=[`Usage: ${J.commandUsage($)}`,""],q=J.commandDescription($);if(q.length>0)K=K.concat([J.wrap(q,X,0),""]);let V=J.visibleArguments($).map((U)=>{return G(J.argumentTerm(U),J.argumentDescription(U))});if(V.length>0)K=K.concat(["Arguments:",W(V),""]);let M=J.visibleOptions($).map((U)=>{return G(J.optionTerm(U),J.optionDescription(U))});if(M.length>0)K=K.concat(["Options:",W(M),""]);if(this.showGlobalOptions){let U=J.visibleGlobalOptions($).map((z)=>{return G(J.optionTerm(z),J.optionDescription(z))});if(U.length>0)K=K.concat(["Global Options:",W(U),""])}let D=J.visibleCommands($).map((U)=>{return G(J.subcommandTerm(U),J.subcommandDescription(U))});if(D.length>0)K=K.concat(["Commands:",W(D),""]);return K.join(`
4
- `)}padWidth($,J){return Math.max(J.longestOptionTermLength($,J),J.longestGlobalOptionTermLength($,J),J.longestSubcommandTermLength($,J),J.longestArgumentTermLength($,J))}wrap($,J,Q,X=40){let Z=new RegExp(`[\\n][${" \\f\\t\\v   -    \uFEFF"}]+`);if($.match(Z))return $;let G=J-Q;if(G<X)return $;let W=$.slice(0,Q),K=$.slice(Q).replace(`\r
2
+ import{createRequire as MM}from"node:module";var QM=Object.create;var{getPrototypeOf:XM,defineProperty:I5,getOwnPropertyNames:YM}=Object;var ZM=Object.prototype.hasOwnProperty;function WM($){return this[$]}var GM,KM,VG=($,J,Q)=>{var X=$!=null&&typeof $==="object";if(X){var Y=J?GM??=new WeakMap:KM??=new WeakMap,Z=Y.get($);if(Z)return Z}Q=$!=null?QM(XM($)):{};let W=J||!$||!$.__esModule?I5(Q,"default",{value:$,enumerable:!0}):Q;for(let G of YM($))if(!ZM.call(W,G))I5(W,G,{get:WM.bind($,G),enumerable:!0});if(X)Y.set($,W);return W};var SJ=($,J)=>()=>(J||$((J={exports:{}}).exports,J),J.exports);var qM=($)=>$;function VM($,J){this[$]=qM.bind(null,J)}var Y9=($,J)=>{for(var Q in J)I5($,Q,{get:J[Q],enumerable:!0,configurable:!0,set:VM.bind(J,Q)})};var _=($,J)=>()=>($&&(J=$($=0)),J);var a0=MM(import.meta.url);var uX=SJ((DM)=>{class T5 extends Error{constructor($,J,Q){super(Q);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=J,this.exitCode=$,this.nestedError=void 0}}class MG extends T5{constructor($){super(1,"commander.invalidArgument",$);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}DM.CommanderError=T5;DM.InvalidArgumentError=MG});var Z9=SJ((HM)=>{var{InvalidArgumentError:wM}=uX();class DG{constructor($,J){switch(this.description=J||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,$[0]){case"<":this.required=!0,this._name=$.slice(1,-1);break;case"[":this.required=!1,this._name=$.slice(1,-1);break;default:this.required=!0,this._name=$;break}if(this._name.length>3&&this._name.slice(-3)==="...")this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_concatValue($,J){if(J===this.defaultValue||!Array.isArray(J))return[$];return J.concat($)}default($,J){return this.defaultValue=$,this.defaultValueDescription=J,this}argParser($){return this.parseArg=$,this}choices($){return this.argChoices=$.slice(),this.parseArg=(J,Q)=>{if(!this.argChoices.includes(J))throw new wM(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._concatValue(J,Q);return J},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function zM($){let J=$.name()+($.variadic===!0?"...":"");return $.required?"<"+J+">":"["+J+"]"}HM.Argument=DG;HM.humanReadableArgName=zM});var _5=SJ((SM)=>{var{humanReadableArgName:CM}=Z9();class UG{constructor(){this.helpWidth=void 0,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}visibleCommands($){let J=$.commands.filter((X)=>!X._hidden),Q=$._getHelpCommand();if(Q&&!Q._hidden)J.push(Q);if(this.sortSubcommands)J.sort((X,Y)=>{return X.name().localeCompare(Y.name())});return J}compareOptions($,J){let Q=(X)=>{return X.short?X.short.replace(/^-/,""):X.long.replace(/^--/,"")};return Q($).localeCompare(Q(J))}visibleOptions($){let J=$.options.filter((X)=>!X.hidden),Q=$._getHelpOption();if(Q&&!Q.hidden){let X=Q.short&&$._findOption(Q.short),Y=Q.long&&$._findOption(Q.long);if(!X&&!Y)J.push(Q);else if(Q.long&&!Y)J.push($.createOption(Q.long,Q.description));else if(Q.short&&!X)J.push($.createOption(Q.short,Q.description))}if(this.sortOptions)J.sort(this.compareOptions);return J}visibleGlobalOptions($){if(!this.showGlobalOptions)return[];let J=[];for(let Q=$.parent;Q;Q=Q.parent){let X=Q.options.filter((Y)=>!Y.hidden);J.push(...X)}if(this.sortOptions)J.sort(this.compareOptions);return J}visibleArguments($){if($._argsDescription)$.registeredArguments.forEach((J)=>{J.description=J.description||$._argsDescription[J.name()]||""});if($.registeredArguments.find((J)=>J.description))return $.registeredArguments;return[]}subcommandTerm($){let J=$.registeredArguments.map((Q)=>CM(Q)).join(" ");return $._name+($._aliases[0]?"|"+$._aliases[0]:"")+($.options.length?" [options]":"")+(J?" "+J:"")}optionTerm($){return $.flags}argumentTerm($){return $.name()}longestSubcommandTermLength($,J){return J.visibleCommands($).reduce((Q,X)=>{return Math.max(Q,J.subcommandTerm(X).length)},0)}longestOptionTermLength($,J){return J.visibleOptions($).reduce((Q,X)=>{return Math.max(Q,J.optionTerm(X).length)},0)}longestGlobalOptionTermLength($,J){return J.visibleGlobalOptions($).reduce((Q,X)=>{return Math.max(Q,J.optionTerm(X).length)},0)}longestArgumentTermLength($,J){return J.visibleArguments($).reduce((Q,X)=>{return Math.max(Q,J.argumentTerm(X).length)},0)}commandUsage($){let J=$._name;if($._aliases[0])J=J+"|"+$._aliases[0];let Q="";for(let X=$.parent;X;X=X.parent)Q=X.name()+" "+Q;return Q+J+" "+$.usage()}commandDescription($){return $.description()}subcommandDescription($){return $.summary()||$.description()}optionDescription($){let J=[];if($.argChoices)J.push(`choices: ${$.argChoices.map((Q)=>JSON.stringify(Q)).join(", ")}`);if($.defaultValue!==void 0){if($.required||$.optional||$.isBoolean()&&typeof $.defaultValue==="boolean")J.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`)}if($.presetArg!==void 0&&$.optional)J.push(`preset: ${JSON.stringify($.presetArg)}`);if($.envVar!==void 0)J.push(`env: ${$.envVar}`);if(J.length>0)return`${$.description} (${J.join(", ")})`;return $.description}argumentDescription($){let J=[];if($.argChoices)J.push(`choices: ${$.argChoices.map((Q)=>JSON.stringify(Q)).join(", ")}`);if($.defaultValue!==void 0)J.push(`default: ${$.defaultValueDescription||JSON.stringify($.defaultValue)}`);if(J.length>0){let Q=`(${J.join(", ")})`;if($.description)return`${$.description} ${Q}`;return Q}return $.description}formatHelp($,J){let Q=J.padWidth($,J),X=J.helpWidth||80,Y=2,Z=2;function W(U,z){if(z){let w=`${U.padEnd(Q+2)}${z}`;return J.wrap(w,X-2,Q+2)}return U}function G(U){return U.join(`
3
+ `).replace(/^/gm," ".repeat(2))}let K=[`Usage: ${J.commandUsage($)}`,""],q=J.commandDescription($);if(q.length>0)K=K.concat([J.wrap(q,X,0),""]);let V=J.visibleArguments($).map((U)=>{return W(J.argumentTerm(U),J.argumentDescription(U))});if(V.length>0)K=K.concat(["Arguments:",G(V),""]);let M=J.visibleOptions($).map((U)=>{return W(J.optionTerm(U),J.optionDescription(U))});if(M.length>0)K=K.concat(["Options:",G(M),""]);if(this.showGlobalOptions){let U=J.visibleGlobalOptions($).map((z)=>{return W(J.optionTerm(z),J.optionDescription(z))});if(U.length>0)K=K.concat(["Global Options:",G(U),""])}let D=J.visibleCommands($).map((U)=>{return W(J.subcommandTerm(U),J.subcommandDescription(U))});if(D.length>0)K=K.concat(["Commands:",G(D),""]);return K.join(`
4
+ `)}padWidth($,J){return Math.max(J.longestOptionTermLength($,J),J.longestGlobalOptionTermLength($,J),J.longestSubcommandTermLength($,J),J.longestArgumentTermLength($,J))}wrap($,J,Q,X=40){let Z=new RegExp(`[\\n][${" \\f\\t\\v   -    \uFEFF"}]+`);if($.match(Z))return $;let W=J-Q;if(W<X)return $;let G=$.slice(0,Q),K=$.slice(Q).replace(`\r
5
5
  `,`
6
6
  `),q=" ".repeat(Q),M=`\\s${"​"}`,D=new RegExp(`
7
- |.{1,${G-1}}([${M}]|$)|[^${M}]+?([${M}]|$)`,"g"),U=K.match(D)||[];return W+U.map((z,w)=>{if(z===`
7
+ |.{1,${W-1}}([${M}]|$)|[^${M}]+?([${M}]|$)`,"g"),U=K.match(D)||[];return G+U.map((z,w)=>{if(z===`
8
8
  `)return"";return(w>0?q:"")+z.trimEnd()}).join(`
9
- `)}}zM.Help=UW});var A5=SJ((SM)=>{var{InvalidArgumentError:OM}=uX();class NW{constructor($,J){this.flags=$,this.description=J||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let Q=CM($);if(this.short=Q.shortFlag,this.long=Q.longFlag,this.negate=!1,this.long)this.negate=this.long.startsWith("--no-");this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default($,J){return this.defaultValue=$,this.defaultValueDescription=J,this}preset($){return this.presetArg=$,this}conflicts($){return this.conflictsWith=this.conflictsWith.concat($),this}implies($){let J=$;if(typeof $==="string")J={[$]:!0};return this.implied=Object.assign(this.implied||{},J),this}env($){return this.envVar=$,this}argParser($){return this.parseArg=$,this}makeOptionMandatory($=!0){return this.mandatory=!!$,this}hideHelp($=!0){return this.hidden=!!$,this}_concatValue($,J){if(J===this.defaultValue||!Array.isArray(J))return[$];return J.concat($)}choices($){return this.argChoices=$.slice(),this.parseArg=(J,Q)=>{if(!this.argChoices.includes(J))throw new OM(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._concatValue(J,Q);return J},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){return LM(this.name().replace(/^no-/,""))}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class wW{constructor($){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,$.forEach((J)=>{if(J.negate)this.negativeOptions.set(J.attributeName(),J);else this.positiveOptions.set(J.attributeName(),J)}),this.negativeOptions.forEach((J,Q)=>{if(this.positiveOptions.has(Q))this.dualOptions.add(Q)})}valueFromOption($,J){let Q=J.attributeName();if(!this.dualOptions.has(Q))return!0;let X=this.negativeOptions.get(Q).presetArg,Y=X!==void 0?X:!1;return J.negate===(Y===$)}}function LM($){return $.split("-").reduce((J,Q)=>{return J+Q[0].toUpperCase()+Q.slice(1)})}function CM($){let J,Q,X=$.split(/[ |,]+/);if(X.length>1&&!/^[[<]/.test(X[1]))J=X.shift();if(Q=X.shift(),!J&&/^-[^-]$/.test(Q))J=Q,Q=void 0;return{shortFlag:J,longFlag:Q}}SM.Option=NW;SM.DualOptions=wW});var zW=SJ((jM)=>{function FM($,J){if(Math.abs($.length-J.length)>3)return Math.max($.length,J.length);let Q=[];for(let X=0;X<=$.length;X++)Q[X]=[X];for(let X=0;X<=J.length;X++)Q[0][X]=X;for(let X=1;X<=J.length;X++)for(let Y=1;Y<=$.length;Y++){let Z=1;if($[Y-1]===J[X-1])Z=0;else Z=1;if(Q[Y][X]=Math.min(Q[Y-1][X]+1,Q[Y][X-1]+1,Q[Y-1][X-1]+Z),Y>1&&X>1&&$[Y-1]===J[X-2]&&$[Y-2]===J[X-1])Q[Y][X]=Math.min(Q[Y][X],Q[Y-2][X-2]+1)}return Q[$.length][J.length]}function EM($,J){if(!J||J.length===0)return"";J=Array.from(new Set(J));let Q=$.startsWith("--");if(Q)$=$.slice(2),J=J.map((G)=>G.slice(2));let X=[],Y=3,Z=0.4;if(J.forEach((G)=>{if(G.length<=1)return;let W=FM($,G),K=Math.max($.length,G.length);if((K-W)/K>Z){if(W<Y)Y=W,X=[G];else if(W===Y)X.push(G)}}),X.sort((G,W)=>G.localeCompare(W)),Q)X=X.map((G)=>`--${G}`);if(X.length>1)return`
9
+ `)}}SM.Help=UG});var A5=SJ((jM)=>{var{InvalidArgumentError:BM}=uX();class NG{constructor($,J){this.flags=$,this.description=J||"",this.required=$.includes("<"),this.optional=$.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test($),this.mandatory=!1;let Q=EM($);if(this.short=Q.shortFlag,this.long=Q.longFlag,this.negate=!1,this.long)this.negate=this.long.startsWith("--no-");this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default($,J){return this.defaultValue=$,this.defaultValueDescription=J,this}preset($){return this.presetArg=$,this}conflicts($){return this.conflictsWith=this.conflictsWith.concat($),this}implies($){let J=$;if(typeof $==="string")J={[$]:!0};return this.implied=Object.assign(this.implied||{},J),this}env($){return this.envVar=$,this}argParser($){return this.parseArg=$,this}makeOptionMandatory($=!0){return this.mandatory=!!$,this}hideHelp($=!0){return this.hidden=!!$,this}_concatValue($,J){if(J===this.defaultValue||!Array.isArray(J))return[$];return J.concat($)}choices($){return this.argChoices=$.slice(),this.parseArg=(J,Q)=>{if(!this.argChoices.includes(J))throw new BM(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._concatValue(J,Q);return J},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){return FM(this.name().replace(/^no-/,""))}is($){return this.short===$||this.long===$}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class wG{constructor($){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,$.forEach((J)=>{if(J.negate)this.negativeOptions.set(J.attributeName(),J);else this.positiveOptions.set(J.attributeName(),J)}),this.negativeOptions.forEach((J,Q)=>{if(this.positiveOptions.has(Q))this.dualOptions.add(Q)})}valueFromOption($,J){let Q=J.attributeName();if(!this.dualOptions.has(Q))return!0;let X=this.negativeOptions.get(Q).presetArg,Y=X!==void 0?X:!1;return J.negate===(Y===$)}}function FM($){return $.split("-").reduce((J,Q)=>{return J+Q[0].toUpperCase()+Q.slice(1)})}function EM($){let J,Q,X=$.split(/[ |,]+/);if(X.length>1&&!/^[[<]/.test(X[1]))J=X.shift();if(Q=X.shift(),!J&&/^-[^-]$/.test(Q))J=Q,Q=void 0;return{shortFlag:J,longFlag:Q}}jM.Option=NG;jM.DualOptions=wG});var zG=SJ((PM)=>{function _M($,J){if(Math.abs($.length-J.length)>3)return Math.max($.length,J.length);let Q=[];for(let X=0;X<=$.length;X++)Q[X]=[X];for(let X=0;X<=J.length;X++)Q[0][X]=X;for(let X=1;X<=J.length;X++)for(let Y=1;Y<=$.length;Y++){let Z=1;if($[Y-1]===J[X-1])Z=0;else Z=1;if(Q[Y][X]=Math.min(Q[Y-1][X]+1,Q[Y][X-1]+1,Q[Y-1][X-1]+Z),Y>1&&X>1&&$[Y-1]===J[X-2]&&$[Y-2]===J[X-1])Q[Y][X]=Math.min(Q[Y][X],Q[Y-2][X-2]+1)}return Q[$.length][J.length]}function AM($,J){if(!J||J.length===0)return"";J=Array.from(new Set(J));let Q=$.startsWith("--");if(Q)$=$.slice(2),J=J.map((W)=>W.slice(2));let X=[],Y=3,Z=0.4;if(J.forEach((W)=>{if(W.length<=1)return;let G=_M($,W),K=Math.max($.length,W.length);if((K-G)/K>Z){if(G<Y)Y=G,X=[W];else if(G===Y)X.push(W)}}),X.sort((W,G)=>W.localeCompare(G)),Q)X=X.map((W)=>`--${W}`);if(X.length>1)return`
10
10
  (Did you mean one of ${X.join(", ")}?)`;if(X.length===1)return`
11
- (Did you mean ${X[0]}?)`;return""}jM.suggestSimilar=EM});var CW=SJ((kM)=>{var _M=a0("node:events").EventEmitter,P5=a0("node:child_process"),RJ=a0("node:path"),x5=a0("node:fs"),L$=a0("node:process"),{Argument:TM,humanReadableArgName:AM}=Z9(),{CommanderError:k5}=uX(),{Help:PM}=T5(),{Option:HW,DualOptions:xM}=A5(),{suggestSimilar:OW}=zW();class f5 extends _M{constructor($){super();this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!0,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=$||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._outputConfiguration={writeOut:(J)=>L$.stdout.write(J),writeErr:(J)=>L$.stderr.write(J),getOutHelpWidth:()=>L$.stdout.isTTY?L$.stdout.columns:void 0,getErrHelpWidth:()=>L$.stderr.isTTY?L$.stderr.columns:void 0,outputError:(J,Q)=>Q(J)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={}}copyInheritedSettings($){return this._outputConfiguration=$._outputConfiguration,this._helpOption=$._helpOption,this._helpCommand=$._helpCommand,this._helpConfiguration=$._helpConfiguration,this._exitCallback=$._exitCallback,this._storeOptionsAsProperties=$._storeOptionsAsProperties,this._combineFlagAndOptionalValue=$._combineFlagAndOptionalValue,this._allowExcessArguments=$._allowExcessArguments,this._enablePositionalOptions=$._enablePositionalOptions,this._showHelpAfterError=$._showHelpAfterError,this._showSuggestionAfterError=$._showSuggestionAfterError,this}_getCommandAndAncestors(){let $=[];for(let J=this;J;J=J.parent)$.push(J);return $}command($,J,Q){let X=J,Y=Q;if(typeof X==="object"&&X!==null)Y=X,X=null;Y=Y||{};let[,Z,G]=$.match(/([^ ]+) *(.*)/),W=this.createCommand(Z);if(X)W.description(X),W._executableHandler=!0;if(Y.isDefault)this._defaultCommandName=W._name;if(W._hidden=!!(Y.noHelp||Y.hidden),W._executableFile=Y.executableFile||null,G)W.arguments(G);if(this._registerCommand(W),W.parent=this,W.copyInheritedSettings(this),X)return this;return W}createCommand($){return new f5($)}createHelp(){return Object.assign(new PM,this.configureHelp())}configureHelp($){if($===void 0)return this._helpConfiguration;return this._helpConfiguration=$,this}configureOutput($){if($===void 0)return this._outputConfiguration;return Object.assign(this._outputConfiguration,$),this}showHelpAfterError($=!0){if(typeof $!=="string")$=!!$;return this._showHelpAfterError=$,this}showSuggestionAfterError($=!0){return this._showSuggestionAfterError=!!$,this}addCommand($,J){if(!$._name)throw Error(`Command passed to .addCommand() must have a name
12
- - specify the name in Command constructor or using .name()`);if(J=J||{},J.isDefault)this._defaultCommandName=$._name;if(J.noHelp||J.hidden)$._hidden=!0;return this._registerCommand($),$.parent=this,$._checkForBrokenPassThrough(),this}createArgument($,J){return new TM($,J)}argument($,J,Q,X){let Y=this.createArgument($,J);if(typeof Q==="function")Y.default(X).argParser(Q);else Y.default(Q);return this.addArgument(Y),this}arguments($){return $.trim().split(/ +/).forEach((J)=>{this.argument(J)}),this}addArgument($){let J=this.registeredArguments.slice(-1)[0];if(J&&J.variadic)throw Error(`only the last argument can be variadic '${J.name()}'`);if($.required&&$.defaultValue!==void 0&&$.parseArg===void 0)throw Error(`a default value for a required argument is never used: '${$.name()}'`);return this.registeredArguments.push($),this}helpCommand($,J){if(typeof $==="boolean")return this._addImplicitHelpCommand=$,this;$=$??"help [command]";let[,Q,X]=$.match(/([^ ]+) *(.*)/),Y=J??"display help for command",Z=this.createCommand(Q);if(Z.helpOption(!1),X)Z.arguments(X);if(Y)Z.description(Y);return this._addImplicitHelpCommand=!0,this._helpCommand=Z,this}addHelpCommand($,J){if(typeof $!=="object")return this.helpCommand($,J),this;return this._addImplicitHelpCommand=!0,this._helpCommand=$,this}_getHelpCommand(){if(this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))){if(this._helpCommand===void 0)this.helpCommand(void 0,void 0);return this._helpCommand}return null}hook($,J){let Q=["preSubcommand","preAction","postAction"];if(!Q.includes($))throw Error(`Unexpected value for event passed to hook : '${$}'.
13
- Expecting one of '${Q.join("', '")}'`);if(this._lifeCycleHooks[$])this._lifeCycleHooks[$].push(J);else this._lifeCycleHooks[$]=[J];return this}exitOverride($){if($)this._exitCallback=$;else this._exitCallback=(J)=>{if(J.code!=="commander.executeSubCommandAsync")throw J};return this}_exit($,J,Q){if(this._exitCallback)this._exitCallback(new k5($,J,Q));L$.exit($)}action($){let J=(Q)=>{let X=this.registeredArguments.length,Y=Q.slice(0,X);if(this._storeOptionsAsProperties)Y[X]=this;else Y[X]=this.opts();return Y.push(this),$.apply(this,Y)};return this._actionHandler=J,this}createOption($,J){return new HW($,J)}_callParseArg($,J,Q,X){try{return $.parseArg(J,Q)}catch(Y){if(Y.code==="commander.invalidArgument"){let Z=`${X} ${Y.message}`;this.error(Z,{exitCode:Y.exitCode,code:Y.code})}throw Y}}_registerOption($){let J=$.short&&this._findOption($.short)||$.long&&this._findOption($.long);if(J){let Q=$.long&&this._findOption($.long)?$.long:$.short;throw Error(`Cannot add option '${$.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${Q}'
14
- - already used by option '${J.flags}'`)}this.options.push($)}_registerCommand($){let J=(X)=>{return[X.name()].concat(X.aliases())},Q=J($).find((X)=>this._findCommand(X));if(Q){let X=J(this._findCommand(Q)).join("|"),Y=J($).join("|");throw Error(`cannot add command '${Y}' as already have command '${X}'`)}this.commands.push($)}addOption($){this._registerOption($);let J=$.name(),Q=$.attributeName();if($.negate){let Y=$.long.replace(/^--no-/,"--");if(!this._findOption(Y))this.setOptionValueWithSource(Q,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(Q,$.defaultValue,"default");let X=(Y,Z,G)=>{if(Y==null&&$.presetArg!==void 0)Y=$.presetArg;let W=this.getOptionValue(Q);if(Y!==null&&$.parseArg)Y=this._callParseArg($,Y,W,Z);else if(Y!==null&&$.variadic)Y=$._concatValue(Y,W);if(Y==null)if($.negate)Y=!1;else if($.isBoolean()||$.optional)Y=!0;else Y="";this.setOptionValueWithSource(Q,Y,G)};if(this.on("option:"+J,(Y)=>{let Z=`error: option '${$.flags}' argument '${Y}' is invalid.`;X(Y,Z,"cli")}),$.envVar)this.on("optionEnv:"+J,(Y)=>{let Z=`error: option '${$.flags}' value '${Y}' from env '${$.envVar}' is invalid.`;X(Y,Z,"env")});return this}_optionEx($,J,Q,X,Y){if(typeof J==="object"&&J instanceof HW)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let Z=this.createOption(J,Q);if(Z.makeOptionMandatory(!!$.mandatory),typeof X==="function")Z.default(Y).argParser(X);else if(X instanceof RegExp){let G=X;X=(W,K)=>{let q=G.exec(W);return q?q[0]:K},Z.default(Y).argParser(X)}else Z.default(X);return this.addOption(Z)}option($,J,Q,X){return this._optionEx({},$,J,Q,X)}requiredOption($,J,Q,X){return this._optionEx({mandatory:!0},$,J,Q,X)}combineFlagAndOptionalValue($=!0){return this._combineFlagAndOptionalValue=!!$,this}allowUnknownOption($=!0){return this._allowUnknownOption=!!$,this}allowExcessArguments($=!0){return this._allowExcessArguments=!!$,this}enablePositionalOptions($=!0){return this._enablePositionalOptions=!!$,this}passThroughOptions($=!0){return this._passThroughOptions=!!$,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties($=!0){if(this.options.length)throw Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!$,this}getOptionValue($){if(this._storeOptionsAsProperties)return this[$];return this._optionValues[$]}setOptionValue($,J){return this.setOptionValueWithSource($,J,void 0)}setOptionValueWithSource($,J,Q){if(this._storeOptionsAsProperties)this[$]=J;else this._optionValues[$]=J;return this._optionValueSources[$]=Q,this}getOptionValueSource($){return this._optionValueSources[$]}getOptionValueSourceWithGlobals($){let J;return this._getCommandAndAncestors().forEach((Q)=>{if(Q.getOptionValueSource($)!==void 0)J=Q.getOptionValueSource($)}),J}_prepareUserArgs($,J){if($!==void 0&&!Array.isArray($))throw Error("first parameter to parse must be array or undefined");if(J=J||{},$===void 0&&J.from===void 0){if(L$.versions?.electron)J.from="electron";let X=L$.execArgv??[];if(X.includes("-e")||X.includes("--eval")||X.includes("-p")||X.includes("--print"))J.from="eval"}if($===void 0)$=L$.argv;this.rawArgs=$.slice();let Q;switch(J.from){case void 0:case"node":this._scriptPath=$[1],Q=$.slice(2);break;case"electron":if(L$.defaultApp)this._scriptPath=$[1],Q=$.slice(2);else Q=$.slice(1);break;case"user":Q=$.slice(0);break;case"eval":Q=$.slice(1);break;default:throw Error(`unexpected parse option { from: '${J.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",Q}parse($,J){let Q=this._prepareUserArgs($,J);return this._parseCommand([],Q),this}async parseAsync($,J){let Q=this._prepareUserArgs($,J);return await this._parseCommand([],Q),this}_executeSubCommand($,J){J=J.slice();let Q=!1,X=[".js",".ts",".tsx",".mjs",".cjs"];function Y(q,V){let M=RJ.resolve(q,V);if(x5.existsSync(M))return M;if(X.includes(RJ.extname(V)))return;let D=X.find((U)=>x5.existsSync(`${M}${U}`));if(D)return`${M}${D}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let Z=$._executableFile||`${this._name}-${$._name}`,G=this._executableDir||"";if(this._scriptPath){let q;try{q=x5.realpathSync(this._scriptPath)}catch(V){q=this._scriptPath}G=RJ.resolve(RJ.dirname(q),G)}if(G){let q=Y(G,Z);if(!q&&!$._executableFile&&this._scriptPath){let V=RJ.basename(this._scriptPath,RJ.extname(this._scriptPath));if(V!==this._name)q=Y(G,`${V}-${$._name}`)}Z=q||Z}Q=X.includes(RJ.extname(Z));let W;if(L$.platform!=="win32")if(Q)J.unshift(Z),J=LW(L$.execArgv).concat(J),W=P5.spawn(L$.argv[0],J,{stdio:"inherit"});else W=P5.spawn(Z,J,{stdio:"inherit"});else J.unshift(Z),J=LW(L$.execArgv).concat(J),W=P5.spawn(L$.execPath,J,{stdio:"inherit"});if(!W.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((V)=>{L$.on(V,()=>{if(W.killed===!1&&W.exitCode===null)W.kill(V)})});let K=this._exitCallback;W.on("close",(q)=>{if(q=q??1,!K)L$.exit(q);else K(new k5(q,"commander.executeSubCommandAsync","(close)"))}),W.on("error",(q)=>{if(q.code==="ENOENT"){let V=G?`searched for local subcommand relative to directory '${G}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",M=`'${Z}' does not exist
11
+ (Did you mean ${X[0]}?)`;return""}PM.suggestSimilar=AM});var CG=SJ((hM)=>{var kM=a0("node:events").EventEmitter,P5=a0("node:child_process"),RJ=a0("node:path"),x5=a0("node:fs"),L$=a0("node:process"),{Argument:fM,humanReadableArgName:yM}=Z9(),{CommanderError:k5}=uX(),{Help:vM}=_5(),{Option:HG,DualOptions:bM}=A5(),{suggestSimilar:OG}=zG();class f5 extends kM{constructor($){super();this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!0,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=$||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._outputConfiguration={writeOut:(J)=>L$.stdout.write(J),writeErr:(J)=>L$.stderr.write(J),getOutHelpWidth:()=>L$.stdout.isTTY?L$.stdout.columns:void 0,getErrHelpWidth:()=>L$.stderr.isTTY?L$.stderr.columns:void 0,outputError:(J,Q)=>Q(J)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={}}copyInheritedSettings($){return this._outputConfiguration=$._outputConfiguration,this._helpOption=$._helpOption,this._helpCommand=$._helpCommand,this._helpConfiguration=$._helpConfiguration,this._exitCallback=$._exitCallback,this._storeOptionsAsProperties=$._storeOptionsAsProperties,this._combineFlagAndOptionalValue=$._combineFlagAndOptionalValue,this._allowExcessArguments=$._allowExcessArguments,this._enablePositionalOptions=$._enablePositionalOptions,this._showHelpAfterError=$._showHelpAfterError,this._showSuggestionAfterError=$._showSuggestionAfterError,this}_getCommandAndAncestors(){let $=[];for(let J=this;J;J=J.parent)$.push(J);return $}command($,J,Q){let X=J,Y=Q;if(typeof X==="object"&&X!==null)Y=X,X=null;Y=Y||{};let[,Z,W]=$.match(/([^ ]+) *(.*)/),G=this.createCommand(Z);if(X)G.description(X),G._executableHandler=!0;if(Y.isDefault)this._defaultCommandName=G._name;if(G._hidden=!!(Y.noHelp||Y.hidden),G._executableFile=Y.executableFile||null,W)G.arguments(W);if(this._registerCommand(G),G.parent=this,G.copyInheritedSettings(this),X)return this;return G}createCommand($){return new f5($)}createHelp(){return Object.assign(new vM,this.configureHelp())}configureHelp($){if($===void 0)return this._helpConfiguration;return this._helpConfiguration=$,this}configureOutput($){if($===void 0)return this._outputConfiguration;return Object.assign(this._outputConfiguration,$),this}showHelpAfterError($=!0){if(typeof $!=="string")$=!!$;return this._showHelpAfterError=$,this}showSuggestionAfterError($=!0){return this._showSuggestionAfterError=!!$,this}addCommand($,J){if(!$._name)throw Error(`Command passed to .addCommand() must have a name
12
+ - specify the name in Command constructor or using .name()`);if(J=J||{},J.isDefault)this._defaultCommandName=$._name;if(J.noHelp||J.hidden)$._hidden=!0;return this._registerCommand($),$.parent=this,$._checkForBrokenPassThrough(),this}createArgument($,J){return new fM($,J)}argument($,J,Q,X){let Y=this.createArgument($,J);if(typeof Q==="function")Y.default(X).argParser(Q);else Y.default(Q);return this.addArgument(Y),this}arguments($){return $.trim().split(/ +/).forEach((J)=>{this.argument(J)}),this}addArgument($){let J=this.registeredArguments.slice(-1)[0];if(J&&J.variadic)throw Error(`only the last argument can be variadic '${J.name()}'`);if($.required&&$.defaultValue!==void 0&&$.parseArg===void 0)throw Error(`a default value for a required argument is never used: '${$.name()}'`);return this.registeredArguments.push($),this}helpCommand($,J){if(typeof $==="boolean")return this._addImplicitHelpCommand=$,this;$=$??"help [command]";let[,Q,X]=$.match(/([^ ]+) *(.*)/),Y=J??"display help for command",Z=this.createCommand(Q);if(Z.helpOption(!1),X)Z.arguments(X);if(Y)Z.description(Y);return this._addImplicitHelpCommand=!0,this._helpCommand=Z,this}addHelpCommand($,J){if(typeof $!=="object")return this.helpCommand($,J),this;return this._addImplicitHelpCommand=!0,this._helpCommand=$,this}_getHelpCommand(){if(this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))){if(this._helpCommand===void 0)this.helpCommand(void 0,void 0);return this._helpCommand}return null}hook($,J){let Q=["preSubcommand","preAction","postAction"];if(!Q.includes($))throw Error(`Unexpected value for event passed to hook : '${$}'.
13
+ Expecting one of '${Q.join("', '")}'`);if(this._lifeCycleHooks[$])this._lifeCycleHooks[$].push(J);else this._lifeCycleHooks[$]=[J];return this}exitOverride($){if($)this._exitCallback=$;else this._exitCallback=(J)=>{if(J.code!=="commander.executeSubCommandAsync")throw J};return this}_exit($,J,Q){if(this._exitCallback)this._exitCallback(new k5($,J,Q));L$.exit($)}action($){let J=(Q)=>{let X=this.registeredArguments.length,Y=Q.slice(0,X);if(this._storeOptionsAsProperties)Y[X]=this;else Y[X]=this.opts();return Y.push(this),$.apply(this,Y)};return this._actionHandler=J,this}createOption($,J){return new HG($,J)}_callParseArg($,J,Q,X){try{return $.parseArg(J,Q)}catch(Y){if(Y.code==="commander.invalidArgument"){let Z=`${X} ${Y.message}`;this.error(Z,{exitCode:Y.exitCode,code:Y.code})}throw Y}}_registerOption($){let J=$.short&&this._findOption($.short)||$.long&&this._findOption($.long);if(J){let Q=$.long&&this._findOption($.long)?$.long:$.short;throw Error(`Cannot add option '${$.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${Q}'
14
+ - already used by option '${J.flags}'`)}this.options.push($)}_registerCommand($){let J=(X)=>{return[X.name()].concat(X.aliases())},Q=J($).find((X)=>this._findCommand(X));if(Q){let X=J(this._findCommand(Q)).join("|"),Y=J($).join("|");throw Error(`cannot add command '${Y}' as already have command '${X}'`)}this.commands.push($)}addOption($){this._registerOption($);let J=$.name(),Q=$.attributeName();if($.negate){let Y=$.long.replace(/^--no-/,"--");if(!this._findOption(Y))this.setOptionValueWithSource(Q,$.defaultValue===void 0?!0:$.defaultValue,"default")}else if($.defaultValue!==void 0)this.setOptionValueWithSource(Q,$.defaultValue,"default");let X=(Y,Z,W)=>{if(Y==null&&$.presetArg!==void 0)Y=$.presetArg;let G=this.getOptionValue(Q);if(Y!==null&&$.parseArg)Y=this._callParseArg($,Y,G,Z);else if(Y!==null&&$.variadic)Y=$._concatValue(Y,G);if(Y==null)if($.negate)Y=!1;else if($.isBoolean()||$.optional)Y=!0;else Y="";this.setOptionValueWithSource(Q,Y,W)};if(this.on("option:"+J,(Y)=>{let Z=`error: option '${$.flags}' argument '${Y}' is invalid.`;X(Y,Z,"cli")}),$.envVar)this.on("optionEnv:"+J,(Y)=>{let Z=`error: option '${$.flags}' value '${Y}' from env '${$.envVar}' is invalid.`;X(Y,Z,"env")});return this}_optionEx($,J,Q,X,Y){if(typeof J==="object"&&J instanceof HG)throw Error("To add an Option object use addOption() instead of option() or requiredOption()");let Z=this.createOption(J,Q);if(Z.makeOptionMandatory(!!$.mandatory),typeof X==="function")Z.default(Y).argParser(X);else if(X instanceof RegExp){let W=X;X=(G,K)=>{let q=W.exec(G);return q?q[0]:K},Z.default(Y).argParser(X)}else Z.default(X);return this.addOption(Z)}option($,J,Q,X){return this._optionEx({},$,J,Q,X)}requiredOption($,J,Q,X){return this._optionEx({mandatory:!0},$,J,Q,X)}combineFlagAndOptionalValue($=!0){return this._combineFlagAndOptionalValue=!!$,this}allowUnknownOption($=!0){return this._allowUnknownOption=!!$,this}allowExcessArguments($=!0){return this._allowExcessArguments=!!$,this}enablePositionalOptions($=!0){return this._enablePositionalOptions=!!$,this}passThroughOptions($=!0){return this._passThroughOptions=!!$,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties($=!0){if(this.options.length)throw Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!$,this}getOptionValue($){if(this._storeOptionsAsProperties)return this[$];return this._optionValues[$]}setOptionValue($,J){return this.setOptionValueWithSource($,J,void 0)}setOptionValueWithSource($,J,Q){if(this._storeOptionsAsProperties)this[$]=J;else this._optionValues[$]=J;return this._optionValueSources[$]=Q,this}getOptionValueSource($){return this._optionValueSources[$]}getOptionValueSourceWithGlobals($){let J;return this._getCommandAndAncestors().forEach((Q)=>{if(Q.getOptionValueSource($)!==void 0)J=Q.getOptionValueSource($)}),J}_prepareUserArgs($,J){if($!==void 0&&!Array.isArray($))throw Error("first parameter to parse must be array or undefined");if(J=J||{},$===void 0&&J.from===void 0){if(L$.versions?.electron)J.from="electron";let X=L$.execArgv??[];if(X.includes("-e")||X.includes("--eval")||X.includes("-p")||X.includes("--print"))J.from="eval"}if($===void 0)$=L$.argv;this.rawArgs=$.slice();let Q;switch(J.from){case void 0:case"node":this._scriptPath=$[1],Q=$.slice(2);break;case"electron":if(L$.defaultApp)this._scriptPath=$[1],Q=$.slice(2);else Q=$.slice(1);break;case"user":Q=$.slice(0);break;case"eval":Q=$.slice(1);break;default:throw Error(`unexpected parse option { from: '${J.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);return this._name=this._name||"program",Q}parse($,J){let Q=this._prepareUserArgs($,J);return this._parseCommand([],Q),this}async parseAsync($,J){let Q=this._prepareUserArgs($,J);return await this._parseCommand([],Q),this}_executeSubCommand($,J){J=J.slice();let Q=!1,X=[".js",".ts",".tsx",".mjs",".cjs"];function Y(q,V){let M=RJ.resolve(q,V);if(x5.existsSync(M))return M;if(X.includes(RJ.extname(V)))return;let D=X.find((U)=>x5.existsSync(`${M}${U}`));if(D)return`${M}${D}`;return}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let Z=$._executableFile||`${this._name}-${$._name}`,W=this._executableDir||"";if(this._scriptPath){let q;try{q=x5.realpathSync(this._scriptPath)}catch(V){q=this._scriptPath}W=RJ.resolve(RJ.dirname(q),W)}if(W){let q=Y(W,Z);if(!q&&!$._executableFile&&this._scriptPath){let V=RJ.basename(this._scriptPath,RJ.extname(this._scriptPath));if(V!==this._name)q=Y(W,`${V}-${$._name}`)}Z=q||Z}Q=X.includes(RJ.extname(Z));let G;if(L$.platform!=="win32")if(Q)J.unshift(Z),J=LG(L$.execArgv).concat(J),G=P5.spawn(L$.argv[0],J,{stdio:"inherit"});else G=P5.spawn(Z,J,{stdio:"inherit"});else J.unshift(Z),J=LG(L$.execArgv).concat(J),G=P5.spawn(L$.execPath,J,{stdio:"inherit"});if(!G.killed)["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((V)=>{L$.on(V,()=>{if(G.killed===!1&&G.exitCode===null)G.kill(V)})});let K=this._exitCallback;G.on("close",(q)=>{if(q=q??1,!K)L$.exit(q);else K(new k5(q,"commander.executeSubCommandAsync","(close)"))}),G.on("error",(q)=>{if(q.code==="ENOENT"){let V=W?`searched for local subcommand relative to directory '${W}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",M=`'${Z}' does not exist
15
15
  - if '${$._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
16
16
  - if the default executable name is not suitable, use the executableFile option to supply a custom name or path
17
- - ${V}`;throw Error(M)}else if(q.code==="EACCES")throw Error(`'${Z}' not executable`);if(!K)L$.exit(1);else{let V=new k5(1,"commander.executeSubCommandAsync","(error)");V.nestedError=q,K(V)}}),this.runningCommand=W}_dispatchSubcommand($,J,Q){let X=this._findCommand($);if(!X)this.help({error:!0});let Y;return Y=this._chainOrCallSubCommandHook(Y,X,"preSubcommand"),Y=this._chainOrCall(Y,()=>{if(X._executableHandler)this._executeSubCommand(X,J.concat(Q));else return X._parseCommand(J,Q)}),Y}_dispatchHelpCommand($){if(!$)this.help();let J=this._findCommand($);if(J&&!J._executableHandler)J.help();return this._dispatchSubcommand($,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach(($,J)=>{if($.required&&this.args[J]==null)this.missingArgument($.name())}),this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)return;if(this.args.length>this.registeredArguments.length)this._excessArguments(this.args)}_processArguments(){let $=(Q,X,Y)=>{let Z=X;if(X!==null&&Q.parseArg){let G=`error: command-argument value '${X}' is invalid for argument '${Q.name()}'.`;Z=this._callParseArg(Q,X,Y,G)}return Z};this._checkNumberOfArguments();let J=[];this.registeredArguments.forEach((Q,X)=>{let Y=Q.defaultValue;if(Q.variadic){if(X<this.args.length){if(Y=this.args.slice(X),Q.parseArg)Y=Y.reduce((Z,G)=>{return $(Q,G,Z)},Q.defaultValue)}else if(Y===void 0)Y=[]}else if(X<this.args.length){if(Y=this.args[X],Q.parseArg)Y=$(Q,Y,Q.defaultValue)}J[X]=Y}),this.processedArgs=J}_chainOrCall($,J){if($&&$.then&&typeof $.then==="function")return $.then(()=>J());return J()}_chainOrCallHooks($,J){let Q=$,X=[];if(this._getCommandAndAncestors().reverse().filter((Y)=>Y._lifeCycleHooks[J]!==void 0).forEach((Y)=>{Y._lifeCycleHooks[J].forEach((Z)=>{X.push({hookedCommand:Y,callback:Z})})}),J==="postAction")X.reverse();return X.forEach((Y)=>{Q=this._chainOrCall(Q,()=>{return Y.callback(Y.hookedCommand,this)})}),Q}_chainOrCallSubCommandHook($,J,Q){let X=$;if(this._lifeCycleHooks[Q]!==void 0)this._lifeCycleHooks[Q].forEach((Y)=>{X=this._chainOrCall(X,()=>{return Y(this,J)})});return X}_parseCommand($,J){let Q=this.parseOptions(J);if(this._parseOptionsEnv(),this._parseOptionsImplied(),$=$.concat(Q.operands),J=Q.unknown,this.args=$.concat(J),$&&this._findCommand($[0]))return this._dispatchSubcommand($[0],$.slice(1),J);if(this._getHelpCommand()&&$[0]===this._getHelpCommand().name())return this._dispatchHelpCommand($[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(J),this._dispatchSubcommand(this._defaultCommandName,$,J);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(Q.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let X=()=>{if(Q.unknown.length>0)this.unknownOption(Q.unknown[0])},Y=`command:${this.name()}`;if(this._actionHandler){X(),this._processArguments();let Z;if(Z=this._chainOrCallHooks(Z,"preAction"),Z=this._chainOrCall(Z,()=>this._actionHandler(this.processedArgs)),this.parent)Z=this._chainOrCall(Z,()=>{this.parent.emit(Y,$,J)});return Z=this._chainOrCallHooks(Z,"postAction"),Z}if(this.parent&&this.parent.listenerCount(Y))X(),this._processArguments(),this.parent.emit(Y,$,J);else if($.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",$,J);if(this.listenerCount("command:*"))this.emit("command:*",$,J);else if(this.commands.length)this.unknownCommand();else X(),this._processArguments()}else if(this.commands.length)X(),this.help({error:!0});else X(),this._processArguments()}_findCommand($){if(!$)return;return this.commands.find((J)=>J._name===$||J._aliases.includes($))}_findOption($){return this.options.find((J)=>J.is($))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(($)=>{$.options.forEach((J)=>{if(J.mandatory&&$.getOptionValue(J.attributeName())===void 0)$.missingMandatoryOptionValue(J)})})}_checkForConflictingLocalOptions(){let $=this.options.filter((Q)=>{let X=Q.attributeName();if(this.getOptionValue(X)===void 0)return!1;return this.getOptionValueSource(X)!=="default"});$.filter((Q)=>Q.conflictsWith.length>0).forEach((Q)=>{let X=$.find((Y)=>Q.conflictsWith.includes(Y.attributeName()));if(X)this._conflictingOption(Q,X)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(($)=>{$._checkForConflictingLocalOptions()})}parseOptions($){let J=[],Q=[],X=J,Y=$.slice();function Z(W){return W.length>1&&W[0]==="-"}let G=null;while(Y.length){let W=Y.shift();if(W==="--"){if(X===Q)X.push(W);X.push(...Y);break}if(G&&!Z(W)){this.emit(`option:${G.name()}`,W);continue}if(G=null,Z(W)){let K=this._findOption(W);if(K){if(K.required){let q=Y.shift();if(q===void 0)this.optionMissingArgument(K);this.emit(`option:${K.name()}`,q)}else if(K.optional){let q=null;if(Y.length>0&&!Z(Y[0]))q=Y.shift();this.emit(`option:${K.name()}`,q)}else this.emit(`option:${K.name()}`);G=K.variadic?K:null;continue}}if(W.length>2&&W[0]==="-"&&W[1]!=="-"){let K=this._findOption(`-${W[1]}`);if(K){if(K.required||K.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${K.name()}`,W.slice(2));else this.emit(`option:${K.name()}`),Y.unshift(`-${W.slice(2)}`);continue}}if(/^--[^=]+=/.test(W)){let K=W.indexOf("="),q=this._findOption(W.slice(0,K));if(q&&(q.required||q.optional)){this.emit(`option:${q.name()}`,W.slice(K+1));continue}}if(Z(W))X=Q;if((this._enablePositionalOptions||this._passThroughOptions)&&J.length===0&&Q.length===0){if(this._findCommand(W)){if(J.push(W),Y.length>0)Q.push(...Y);break}else if(this._getHelpCommand()&&W===this._getHelpCommand().name()){if(J.push(W),Y.length>0)J.push(...Y);break}else if(this._defaultCommandName){if(Q.push(W),Y.length>0)Q.push(...Y);break}}if(this._passThroughOptions){if(X.push(W),Y.length>0)X.push(...Y);break}X.push(W)}return{operands:J,unknown:Q}}opts(){if(this._storeOptionsAsProperties){let $={},J=this.options.length;for(let Q=0;Q<J;Q++){let X=this.options[Q].attributeName();$[X]=X===this._versionOptionName?this._version:this[X]}return $}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(($,J)=>Object.assign($,J.opts()),{})}error($,J){if(this._outputConfiguration.outputError(`${$}
17
+ - ${V}`;throw Error(M)}else if(q.code==="EACCES")throw Error(`'${Z}' not executable`);if(!K)L$.exit(1);else{let V=new k5(1,"commander.executeSubCommandAsync","(error)");V.nestedError=q,K(V)}}),this.runningCommand=G}_dispatchSubcommand($,J,Q){let X=this._findCommand($);if(!X)this.help({error:!0});let Y;return Y=this._chainOrCallSubCommandHook(Y,X,"preSubcommand"),Y=this._chainOrCall(Y,()=>{if(X._executableHandler)this._executeSubCommand(X,J.concat(Q));else return X._parseCommand(J,Q)}),Y}_dispatchHelpCommand($){if(!$)this.help();let J=this._findCommand($);if(J&&!J._executableHandler)J.help();return this._dispatchSubcommand($,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){if(this.registeredArguments.forEach(($,J)=>{if($.required&&this.args[J]==null)this.missingArgument($.name())}),this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)return;if(this.args.length>this.registeredArguments.length)this._excessArguments(this.args)}_processArguments(){let $=(Q,X,Y)=>{let Z=X;if(X!==null&&Q.parseArg){let W=`error: command-argument value '${X}' is invalid for argument '${Q.name()}'.`;Z=this._callParseArg(Q,X,Y,W)}return Z};this._checkNumberOfArguments();let J=[];this.registeredArguments.forEach((Q,X)=>{let Y=Q.defaultValue;if(Q.variadic){if(X<this.args.length){if(Y=this.args.slice(X),Q.parseArg)Y=Y.reduce((Z,W)=>{return $(Q,W,Z)},Q.defaultValue)}else if(Y===void 0)Y=[]}else if(X<this.args.length){if(Y=this.args[X],Q.parseArg)Y=$(Q,Y,Q.defaultValue)}J[X]=Y}),this.processedArgs=J}_chainOrCall($,J){if($&&$.then&&typeof $.then==="function")return $.then(()=>J());return J()}_chainOrCallHooks($,J){let Q=$,X=[];if(this._getCommandAndAncestors().reverse().filter((Y)=>Y._lifeCycleHooks[J]!==void 0).forEach((Y)=>{Y._lifeCycleHooks[J].forEach((Z)=>{X.push({hookedCommand:Y,callback:Z})})}),J==="postAction")X.reverse();return X.forEach((Y)=>{Q=this._chainOrCall(Q,()=>{return Y.callback(Y.hookedCommand,this)})}),Q}_chainOrCallSubCommandHook($,J,Q){let X=$;if(this._lifeCycleHooks[Q]!==void 0)this._lifeCycleHooks[Q].forEach((Y)=>{X=this._chainOrCall(X,()=>{return Y(this,J)})});return X}_parseCommand($,J){let Q=this.parseOptions(J);if(this._parseOptionsEnv(),this._parseOptionsImplied(),$=$.concat(Q.operands),J=Q.unknown,this.args=$.concat(J),$&&this._findCommand($[0]))return this._dispatchSubcommand($[0],$.slice(1),J);if(this._getHelpCommand()&&$[0]===this._getHelpCommand().name())return this._dispatchHelpCommand($[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(J),this._dispatchSubcommand(this._defaultCommandName,$,J);if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName)this.help({error:!0});this._outputHelpIfRequested(Q.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let X=()=>{if(Q.unknown.length>0)this.unknownOption(Q.unknown[0])},Y=`command:${this.name()}`;if(this._actionHandler){X(),this._processArguments();let Z;if(Z=this._chainOrCallHooks(Z,"preAction"),Z=this._chainOrCall(Z,()=>this._actionHandler(this.processedArgs)),this.parent)Z=this._chainOrCall(Z,()=>{this.parent.emit(Y,$,J)});return Z=this._chainOrCallHooks(Z,"postAction"),Z}if(this.parent&&this.parent.listenerCount(Y))X(),this._processArguments(),this.parent.emit(Y,$,J);else if($.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",$,J);if(this.listenerCount("command:*"))this.emit("command:*",$,J);else if(this.commands.length)this.unknownCommand();else X(),this._processArguments()}else if(this.commands.length)X(),this.help({error:!0});else X(),this._processArguments()}_findCommand($){if(!$)return;return this.commands.find((J)=>J._name===$||J._aliases.includes($))}_findOption($){return this.options.find((J)=>J.is($))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(($)=>{$.options.forEach((J)=>{if(J.mandatory&&$.getOptionValue(J.attributeName())===void 0)$.missingMandatoryOptionValue(J)})})}_checkForConflictingLocalOptions(){let $=this.options.filter((Q)=>{let X=Q.attributeName();if(this.getOptionValue(X)===void 0)return!1;return this.getOptionValueSource(X)!=="default"});$.filter((Q)=>Q.conflictsWith.length>0).forEach((Q)=>{let X=$.find((Y)=>Q.conflictsWith.includes(Y.attributeName()));if(X)this._conflictingOption(Q,X)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(($)=>{$._checkForConflictingLocalOptions()})}parseOptions($){let J=[],Q=[],X=J,Y=$.slice();function Z(G){return G.length>1&&G[0]==="-"}let W=null;while(Y.length){let G=Y.shift();if(G==="--"){if(X===Q)X.push(G);X.push(...Y);break}if(W&&!Z(G)){this.emit(`option:${W.name()}`,G);continue}if(W=null,Z(G)){let K=this._findOption(G);if(K){if(K.required){let q=Y.shift();if(q===void 0)this.optionMissingArgument(K);this.emit(`option:${K.name()}`,q)}else if(K.optional){let q=null;if(Y.length>0&&!Z(Y[0]))q=Y.shift();this.emit(`option:${K.name()}`,q)}else this.emit(`option:${K.name()}`);W=K.variadic?K:null;continue}}if(G.length>2&&G[0]==="-"&&G[1]!=="-"){let K=this._findOption(`-${G[1]}`);if(K){if(K.required||K.optional&&this._combineFlagAndOptionalValue)this.emit(`option:${K.name()}`,G.slice(2));else this.emit(`option:${K.name()}`),Y.unshift(`-${G.slice(2)}`);continue}}if(/^--[^=]+=/.test(G)){let K=G.indexOf("="),q=this._findOption(G.slice(0,K));if(q&&(q.required||q.optional)){this.emit(`option:${q.name()}`,G.slice(K+1));continue}}if(Z(G))X=Q;if((this._enablePositionalOptions||this._passThroughOptions)&&J.length===0&&Q.length===0){if(this._findCommand(G)){if(J.push(G),Y.length>0)Q.push(...Y);break}else if(this._getHelpCommand()&&G===this._getHelpCommand().name()){if(J.push(G),Y.length>0)J.push(...Y);break}else if(this._defaultCommandName){if(Q.push(G),Y.length>0)Q.push(...Y);break}}if(this._passThroughOptions){if(X.push(G),Y.length>0)X.push(...Y);break}X.push(G)}return{operands:J,unknown:Q}}opts(){if(this._storeOptionsAsProperties){let $={},J=this.options.length;for(let Q=0;Q<J;Q++){let X=this.options[Q].attributeName();$[X]=X===this._versionOptionName?this._version:this[X]}return $}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(($,J)=>Object.assign($,J.opts()),{})}error($,J){if(this._outputConfiguration.outputError(`${$}
18
18
  `,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==="string")this._outputConfiguration.writeErr(`${this._showHelpAfterError}
19
19
  `);else if(this._showHelpAfterError)this._outputConfiguration.writeErr(`
20
- `),this.outputHelp({error:!0});let Q=J||{},X=Q.exitCode||1,Y=Q.code||"commander.error";this._exit(X,Y,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in L$.env){let J=$.attributeName();if(this.getOptionValue(J)===void 0||["default","config","env"].includes(this.getOptionValueSource(J)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,L$.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new xM(this.options),J=(Q)=>{return this.getOptionValue(Q)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(Q))};this.options.filter((Q)=>Q.implied!==void 0&&J(Q.attributeName())&&$.valueFromOption(this.getOptionValue(Q.attributeName()),Q)).forEach((Q)=>{Object.keys(Q.implied).filter((X)=>!J(X)).forEach((X)=>{this.setOptionValueWithSource(X,Q.implied[X],"implied")})})}missingArgument($){let J=`error: missing required argument '${$}'`;this.error(J,{code:"commander.missingArgument"})}optionMissingArgument($){let J=`error: option '${$.flags}' argument missing`;this.error(J,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue($){let J=`error: required option '${$.flags}' not specified`;this.error(J,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption($,J){let Q=(Z)=>{let G=Z.attributeName(),W=this.getOptionValue(G),K=this.options.find((V)=>V.negate&&G===V.attributeName()),q=this.options.find((V)=>!V.negate&&G===V.attributeName());if(K&&(K.presetArg===void 0&&W===!1||K.presetArg!==void 0&&W===K.presetArg))return K;return q||Z},X=(Z)=>{let G=Q(Z),W=G.attributeName();if(this.getOptionValueSource(W)==="env")return`environment variable '${G.envVar}'`;return`option '${G.flags}'`},Y=`error: ${X($)} cannot be used with ${X(J)}`;this.error(Y,{code:"commander.conflictingOption"})}unknownOption($){if(this._allowUnknownOption)return;let J="";if($.startsWith("--")&&this._showSuggestionAfterError){let X=[],Y=this;do{let Z=Y.createHelp().visibleOptions(Y).filter((G)=>G.long).map((G)=>G.long);X=X.concat(Z),Y=Y.parent}while(Y&&!Y._enablePositionalOptions);J=OW($,X)}let Q=`error: unknown option '${$}'${J}`;this.error(Q,{code:"commander.unknownOption"})}_excessArguments($){if(this._allowExcessArguments)return;let J=this.registeredArguments.length,Q=J===1?"":"s",Y=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${J} argument${Q} but got ${$.length}.`;this.error(Y,{code:"commander.excessArguments"})}unknownCommand(){let $=this.args[0],J="";if(this._showSuggestionAfterError){let X=[];this.createHelp().visibleCommands(this).forEach((Y)=>{if(X.push(Y.name()),Y.alias())X.push(Y.alias())}),J=OW($,X)}let Q=`error: unknown command '${$}'${J}`;this.error(Q,{code:"commander.unknownCommand"})}version($,J,Q){if($===void 0)return this._version;this._version=$,J=J||"-V, --version",Q=Q||"output the version number";let X=this.createOption(J,Q);return this._versionOptionName=X.attributeName(),this._registerOption(X),this.on("option:"+X.name(),()=>{this._outputConfiguration.writeOut(`${$}
21
- `),this._exit(0,"commander.version",$)}),this}description($,J){if($===void 0&&J===void 0)return this._description;if(this._description=$,J)this._argsDescription=J;return this}summary($){if($===void 0)return this._summary;return this._summary=$,this}alias($){if($===void 0)return this._aliases[0];let J=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)J=this.commands[this.commands.length-1];if($===J._name)throw Error("Command alias can't be the same as its name");let Q=this.parent?._findCommand($);if(Q){let X=[Q.name()].concat(Q.aliases()).join("|");throw Error(`cannot add alias '${$}' to command '${this.name()}' as already have command '${X}'`)}return J._aliases.push($),this}aliases($){if($===void 0)return this._aliases;return $.forEach((J)=>this.alias(J)),this}usage($){if($===void 0){if(this._usage)return this._usage;let J=this.registeredArguments.map((Q)=>{return AM(Q)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?J:[]).join(" ")}return this._usage=$,this}name($){if($===void 0)return this._name;return this._name=$,this}nameFromFilename($){return this._name=RJ.basename($,RJ.extname($)),this}executableDir($){if($===void 0)return this._executableDir;return this._executableDir=$,this}helpInformation($){let J=this.createHelp();if(J.helpWidth===void 0)J.helpWidth=$&&$.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth();return J.formatHelp(this,J)}_getHelpContext($){$=$||{};let J={error:!!$.error},Q;if(J.error)Q=(X)=>this._outputConfiguration.writeErr(X);else Q=(X)=>this._outputConfiguration.writeOut(X);return J.write=$.write||Q,J.command=this,J}outputHelp($){let J;if(typeof $==="function")J=$,$=void 0;let Q=this._getHelpContext($);this._getCommandAndAncestors().reverse().forEach((Y)=>Y.emit("beforeAllHelp",Q)),this.emit("beforeHelp",Q);let X=this.helpInformation(Q);if(J){if(X=J(X),typeof X!=="string"&&!Buffer.isBuffer(X))throw Error("outputHelp callback must return a string or a Buffer")}if(Q.write(X),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",Q),this._getCommandAndAncestors().forEach((Y)=>Y.emit("afterAllHelp",Q))}helpOption($,J){if(typeof $==="boolean"){if($)this._helpOption=this._helpOption??void 0;else this._helpOption=null;return this}return $=$??"-h, --help",J=J??"display help for command",this._helpOption=this.createOption($,J),this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption($){return this._helpOption=$,this}help($){this.outputHelp($);let J=L$.exitCode||0;if(J===0&&$&&typeof $!=="function"&&$.error)J=1;this._exit(J,"commander.help","(outputHelp)")}addHelpText($,J){let Q=["beforeAll","before","after","afterAll"];if(!Q.includes($))throw Error(`Unexpected value for position to addHelpText.
20
+ `),this.outputHelp({error:!0});let Q=J||{},X=Q.exitCode||1,Y=Q.code||"commander.error";this._exit(X,Y,$)}_parseOptionsEnv(){this.options.forEach(($)=>{if($.envVar&&$.envVar in L$.env){let J=$.attributeName();if(this.getOptionValue(J)===void 0||["default","config","env"].includes(this.getOptionValueSource(J)))if($.required||$.optional)this.emit(`optionEnv:${$.name()}`,L$.env[$.envVar]);else this.emit(`optionEnv:${$.name()}`)}})}_parseOptionsImplied(){let $=new bM(this.options),J=(Q)=>{return this.getOptionValue(Q)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(Q))};this.options.filter((Q)=>Q.implied!==void 0&&J(Q.attributeName())&&$.valueFromOption(this.getOptionValue(Q.attributeName()),Q)).forEach((Q)=>{Object.keys(Q.implied).filter((X)=>!J(X)).forEach((X)=>{this.setOptionValueWithSource(X,Q.implied[X],"implied")})})}missingArgument($){let J=`error: missing required argument '${$}'`;this.error(J,{code:"commander.missingArgument"})}optionMissingArgument($){let J=`error: option '${$.flags}' argument missing`;this.error(J,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue($){let J=`error: required option '${$.flags}' not specified`;this.error(J,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption($,J){let Q=(Z)=>{let W=Z.attributeName(),G=this.getOptionValue(W),K=this.options.find((V)=>V.negate&&W===V.attributeName()),q=this.options.find((V)=>!V.negate&&W===V.attributeName());if(K&&(K.presetArg===void 0&&G===!1||K.presetArg!==void 0&&G===K.presetArg))return K;return q||Z},X=(Z)=>{let W=Q(Z),G=W.attributeName();if(this.getOptionValueSource(G)==="env")return`environment variable '${W.envVar}'`;return`option '${W.flags}'`},Y=`error: ${X($)} cannot be used with ${X(J)}`;this.error(Y,{code:"commander.conflictingOption"})}unknownOption($){if(this._allowUnknownOption)return;let J="";if($.startsWith("--")&&this._showSuggestionAfterError){let X=[],Y=this;do{let Z=Y.createHelp().visibleOptions(Y).filter((W)=>W.long).map((W)=>W.long);X=X.concat(Z),Y=Y.parent}while(Y&&!Y._enablePositionalOptions);J=OG($,X)}let Q=`error: unknown option '${$}'${J}`;this.error(Q,{code:"commander.unknownOption"})}_excessArguments($){if(this._allowExcessArguments)return;let J=this.registeredArguments.length,Q=J===1?"":"s",Y=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${J} argument${Q} but got ${$.length}.`;this.error(Y,{code:"commander.excessArguments"})}unknownCommand(){let $=this.args[0],J="";if(this._showSuggestionAfterError){let X=[];this.createHelp().visibleCommands(this).forEach((Y)=>{if(X.push(Y.name()),Y.alias())X.push(Y.alias())}),J=OG($,X)}let Q=`error: unknown command '${$}'${J}`;this.error(Q,{code:"commander.unknownCommand"})}version($,J,Q){if($===void 0)return this._version;this._version=$,J=J||"-V, --version",Q=Q||"output the version number";let X=this.createOption(J,Q);return this._versionOptionName=X.attributeName(),this._registerOption(X),this.on("option:"+X.name(),()=>{this._outputConfiguration.writeOut(`${$}
21
+ `),this._exit(0,"commander.version",$)}),this}description($,J){if($===void 0&&J===void 0)return this._description;if(this._description=$,J)this._argsDescription=J;return this}summary($){if($===void 0)return this._summary;return this._summary=$,this}alias($){if($===void 0)return this._aliases[0];let J=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)J=this.commands[this.commands.length-1];if($===J._name)throw Error("Command alias can't be the same as its name");let Q=this.parent?._findCommand($);if(Q){let X=[Q.name()].concat(Q.aliases()).join("|");throw Error(`cannot add alias '${$}' to command '${this.name()}' as already have command '${X}'`)}return J._aliases.push($),this}aliases($){if($===void 0)return this._aliases;return $.forEach((J)=>this.alias(J)),this}usage($){if($===void 0){if(this._usage)return this._usage;let J=this.registeredArguments.map((Q)=>{return yM(Q)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?J:[]).join(" ")}return this._usage=$,this}name($){if($===void 0)return this._name;return this._name=$,this}nameFromFilename($){return this._name=RJ.basename($,RJ.extname($)),this}executableDir($){if($===void 0)return this._executableDir;return this._executableDir=$,this}helpInformation($){let J=this.createHelp();if(J.helpWidth===void 0)J.helpWidth=$&&$.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth();return J.formatHelp(this,J)}_getHelpContext($){$=$||{};let J={error:!!$.error},Q;if(J.error)Q=(X)=>this._outputConfiguration.writeErr(X);else Q=(X)=>this._outputConfiguration.writeOut(X);return J.write=$.write||Q,J.command=this,J}outputHelp($){let J;if(typeof $==="function")J=$,$=void 0;let Q=this._getHelpContext($);this._getCommandAndAncestors().reverse().forEach((Y)=>Y.emit("beforeAllHelp",Q)),this.emit("beforeHelp",Q);let X=this.helpInformation(Q);if(J){if(X=J(X),typeof X!=="string"&&!Buffer.isBuffer(X))throw Error("outputHelp callback must return a string or a Buffer")}if(Q.write(X),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",Q),this._getCommandAndAncestors().forEach((Y)=>Y.emit("afterAllHelp",Q))}helpOption($,J){if(typeof $==="boolean"){if($)this._helpOption=this._helpOption??void 0;else this._helpOption=null;return this}return $=$??"-h, --help",J=J??"display help for command",this._helpOption=this.createOption($,J),this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption($){return this._helpOption=$,this}help($){this.outputHelp($);let J=L$.exitCode||0;if(J===0&&$&&typeof $!=="function"&&$.error)J=1;this._exit(J,"commander.help","(outputHelp)")}addHelpText($,J){let Q=["beforeAll","before","after","afterAll"];if(!Q.includes($))throw Error(`Unexpected value for position to addHelpText.
22
22
  Expecting one of '${Q.join("', '")}'`);let X=`${$}Help`;return this.on(X,(Y)=>{let Z;if(typeof J==="function")Z=J({error:Y.error,command:Y.command});else Z=J;if(Z)Y.write(`${Z}
23
- `)}),this}_outputHelpIfRequested($){let J=this._getHelpOption();if(J&&$.find((X)=>J.is(X)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function LW($){return $.map((J)=>{if(!J.startsWith("--inspect"))return J;let Q,X="127.0.0.1",Y="9229",Z;if((Z=J.match(/^(--inspect(-brk)?)$/))!==null)Q=Z[1];else if((Z=J.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(Q=Z[1],/^\d+$/.test(Z[3]))Y=Z[3];else X=Z[3];else if((Z=J.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)Q=Z[1],X=Z[3],Y=Z[4];if(Q&&Y!=="0")return`${Q}=${X}:${parseInt(Y)+1}`;return J})}kM.Command=f5});var FW=SJ((bM)=>{var{Argument:SW}=Z9(),{Command:y5}=CW(),{CommanderError:yM,InvalidArgumentError:RW}=uX(),{Help:vM}=T5(),{Option:BW}=A5();bM.program=new y5;bM.createCommand=($)=>new y5($);bM.createOption=($,J)=>new BW($,J);bM.createArgument=($,J)=>new SW($,J);bM.Command=y5;bM.Option=BW;bM.Argument=SW;bM.Help=vM;bM.CommanderError=yM;bM.InvalidArgumentError=RW;bM.InvalidOptionArgumentError=RW});var IW=SJ((AH,sM)=>{sM.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var xW=SJ((PH,BJ)=>{var v5=a0("fs"),G9=a0("path"),rM=a0("os"),tM=a0("crypto"),aM=IW(),b5=aM.version,eM=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function $D($){let J={},Q=$.toString();Q=Q.replace(/\r\n?/mg,`
24
- `);let X;while((X=eM.exec(Q))!=null){let Y=X[1],Z=X[2]||"";Z=Z.trim();let G=Z[0];if(Z=Z.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),G==='"')Z=Z.replace(/\\n/g,`
25
- `),Z=Z.replace(/\\r/g,"\r");J[Y]=Z}return J}function JD($){$=$||{};let J=PW($);$.path=J;let Q=T$.configDotenv($);if(!Q.parsed){let G=Error(`MISSING_DATA: Cannot parse ${J} for an unknown reason`);throw G.code="MISSING_DATA",G}let X=AW($).split(","),Y=X.length,Z;for(let G=0;G<Y;G++)try{let W=X[G].trim(),K=XD(Q,W);Z=T$.decrypt(K.ciphertext,K.key);break}catch(W){if(G+1>=Y)throw W}return T$.parse(Z)}function QD($){console.log(`[dotenv@${b5}][WARN] ${$}`)}function pX($){console.log(`[dotenv@${b5}][DEBUG] ${$}`)}function TW($){console.log(`[dotenv@${b5}] ${$}`)}function AW($){if($&&$.DOTENV_KEY&&$.DOTENV_KEY.length>0)return $.DOTENV_KEY;if(process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0)return process.env.DOTENV_KEY;return""}function XD($,J){let Q;try{Q=new URL(J)}catch(W){if(W.code==="ERR_INVALID_URL"){let K=Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw K.code="INVALID_DOTENV_KEY",K}throw W}let X=Q.password;if(!X){let W=Error("INVALID_DOTENV_KEY: Missing key part");throw W.code="INVALID_DOTENV_KEY",W}let Y=Q.searchParams.get("environment");if(!Y){let W=Error("INVALID_DOTENV_KEY: Missing environment part");throw W.code="INVALID_DOTENV_KEY",W}let Z=`DOTENV_VAULT_${Y.toUpperCase()}`,G=$.parsed[Z];if(!G){let W=Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${Z} in your .env.vault file.`);throw W.code="NOT_FOUND_DOTENV_ENVIRONMENT",W}return{ciphertext:G,key:X}}function PW($){let J=null;if($&&$.path&&$.path.length>0)if(Array.isArray($.path)){for(let Q of $.path)if(v5.existsSync(Q))J=Q.endsWith(".vault")?Q:`${Q}.vault`}else J=$.path.endsWith(".vault")?$.path:`${$.path}.vault`;else J=G9.resolve(process.cwd(),".env.vault");if(v5.existsSync(J))return J;return null}function _W($){return $[0]==="~"?G9.join(rM.homedir(),$.slice(1)):$}function YD($){let J=Boolean($&&$.debug),Q=$&&"quiet"in $?$.quiet:!0;if(J||!Q)TW("Loading env from encrypted .env.vault");let X=T$._parseVault($),Y=process.env;if($&&$.processEnv!=null)Y=$.processEnv;return T$.populate(Y,X,$),{parsed:X}}function ZD($){let J=G9.resolve(process.cwd(),".env"),Q="utf8",X=Boolean($&&$.debug),Y=$&&"quiet"in $?$.quiet:!0;if($&&$.encoding)Q=$.encoding;else if(X)pX("No encoding is specified. UTF-8 is used by default");let Z=[J];if($&&$.path)if(!Array.isArray($.path))Z=[_W($.path)];else{Z=[];for(let q of $.path)Z.push(_W(q))}let G,W={};for(let q of Z)try{let V=T$.parse(v5.readFileSync(q,{encoding:Q}));T$.populate(W,V,$)}catch(V){if(X)pX(`Failed to load ${q} ${V.message}`);G=V}let K=process.env;if($&&$.processEnv!=null)K=$.processEnv;if(T$.populate(K,W,$),X||!Y){let q=Object.keys(W).length,V=[];for(let M of Z)try{let D=G9.relative(process.cwd(),M);V.push(D)}catch(D){if(X)pX(`Failed to load ${M} ${D.message}`);G=D}TW(`injecting env (${q}) from ${V.join(",")}`)}if(G)return{parsed:W,error:G};else return{parsed:W}}function GD($){if(AW($).length===0)return T$.configDotenv($);let J=PW($);if(!J)return QD(`You set DOTENV_KEY but you are missing a .env.vault file at ${J}. Did you forget to build it?`),T$.configDotenv($);return T$._configVault($)}function WD($,J){let Q=Buffer.from(J.slice(-64),"hex"),X=Buffer.from($,"base64"),Y=X.subarray(0,12),Z=X.subarray(-16);X=X.subarray(12,-16);try{let G=tM.createDecipheriv("aes-256-gcm",Q,Y);return G.setAuthTag(Z),`${G.update(X)}${G.final()}`}catch(G){let W=G instanceof RangeError,K=G.message==="Invalid key length",q=G.message==="Unsupported state or unable to authenticate data";if(W||K){let V=Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw V.code="INVALID_DOTENV_KEY",V}else if(q){let V=Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw V.code="DECRYPTION_FAILED",V}else throw G}}function KD($,J,Q={}){let X=Boolean(Q&&Q.debug),Y=Boolean(Q&&Q.override);if(typeof J!=="object"){let Z=Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw Z.code="OBJECT_REQUIRED",Z}for(let Z of Object.keys(J))if(Object.prototype.hasOwnProperty.call($,Z)){if(Y===!0)$[Z]=J[Z];if(X)if(Y===!0)pX(`"${Z}" is already defined and WAS overwritten`);else pX(`"${Z}" is already defined and was NOT overwritten`)}else $[Z]=J[Z]}var T$={configDotenv:ZD,_configVault:YD,_parseVault:JD,config:GD,decrypt:WD,parse:$D,populate:KD};PH.configDotenv=T$.configDotenv;PH._configVault=T$._configVault;PH._parseVault=T$._parseVault;PH.config=T$.config;PH.decrypt=T$.decrypt;PH.parse=T$.parse;PH.populate=T$.populate;BJ.exports=T$});var kW="1.2.3";var C$;var FQ=T(()=>{C$=class C$ extends Error{constructor($,J={}){let Q=J.cause instanceof C$?J.cause.details:J.cause?.message?J.cause.message:J.details,X=J.cause instanceof C$?J.cause.docsPath||J.docsPath:J.docsPath,Y=[$||"An error occurred.","",...J.metaMessages?[...J.metaMessages,""]:[],...X?[`Docs: https://abitype.dev${X}`]:[],...Q?[`Details: ${Q}`]:[],`Version: abitype@${kW}`].join(`
26
- `);super(Y);if(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"}),J.cause)this.cause=J.cause;this.details=Q,this.docsPath=X,this.metaMessages=J.metaMessages,this.shortMessage=$}}});function C0($,J){return $.exec(J)?.groups}var h5,g5,W9;var lX=T(()=>{h5=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,g5=/^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)?$/,W9=/^\(.+?\).*?$/});function K9($){let J=$.type;if(fW.test($.type)&&"components"in $){J="(";let Q=$.components.length;for(let Y=0;Y<Q;Y++){let Z=$.components[Y];if(J+=K9(Z),Y<Q-1)J+=", "}let X=C0(fW,$.type);return J+=`)${X?.array||""}`,K9({...$,type:J})}if("indexed"in $&&$.indexed)J=`${J} indexed`;if($.name)return`${J} ${$.name}`;return J}var fW;var yW=T(()=>{lX();fW=/^tuple(?<array>(\[(\d*)\])*)$/});function FJ($){let J="",Q=$.length;for(let X=0;X<Q;X++){let Y=$[X];if(J+=K9(Y),X!==Q-1)J+=", "}return J}var d5=T(()=>{yW()});function x8($){if($.type==="function")return`function ${$.name}(${FJ($.inputs)})${$.stateMutability&&$.stateMutability!=="nonpayable"?` ${$.stateMutability}`:""}${$.outputs?.length?` returns (${FJ($.outputs)})`:""}`;if($.type==="event")return`event ${$.name}(${FJ($.inputs)})`;if($.type==="error")return`error ${$.name}(${FJ($.inputs)})`;if($.type==="constructor")return`constructor(${FJ($.inputs)})${$.stateMutability==="payable"?" payable":""}`;if($.type==="fallback")return`fallback() external${$.stateMutability==="payable"?" payable":""}`;return"receive() external payable"}var vW=T(()=>{d5()});function hW($){return bW.test($)}function gW($){return C0(bW,$)}function mW($){return dW.test($)}function uW($){return C0(dW,$)}function lW($){return pW.test($)}function cW($){return C0(pW,$)}function eJ($){return nW.test($)}function oW($){return C0(nW,$)}function sW($){return iW.test($)}function rW($){return C0(iW,$)}function aW($){return tW.test($)}function eW($){return C0(tW,$)}function $4($){return zD.test($)}var bW,dW,pW,nW,iW,tW,zD,m5,J4,q9;var EQ=T(()=>{lX();bW=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;dW=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;pW=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;nW=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;iW=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;tW=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;zD=/^receive\(\) external payable$/;m5=new Set(["memory","indexed","storage","calldata"]),J4=new Set(["indexed"]),q9=new Set(["calldata","memory","storage"])});var V9,M9,u5;var D9=T(()=>{FQ();V9=class V9 extends C${constructor({signature:$}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify($,null,2)})`,docsPath:"/api/human#parseabiitem-1"});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}};M9=class M9 extends C${constructor({type:$}){super("Unknown type.",{metaMessages:[`Type "${$}" 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"})}};u5=class u5 extends C${constructor({type:$}){super("Unknown type.",{metaMessages:[`Type "${$}" is not a valid ABI type.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}});var U9,N9,w9,z9,H9,O9;var L9=T(()=>{FQ();U9=class U9 extends C${constructor({params:$}){super("Failed to parse ABI parameters.",{details:`parseAbiParameters(${JSON.stringify($,null,2)})`,docsPath:"/api/human#parseabiparameters-1"});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParametersError"})}};N9=class N9 extends C${constructor({param:$}){super("Invalid ABI parameter.",{details:$});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}};w9=class w9 extends C${constructor({param:$,name:J}){super("Invalid ABI parameter.",{details:$,metaMessages:[`"${J}" 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"})}};z9=class z9 extends C${constructor({param:$,type:J,modifier:Q}){super("Invalid ABI parameter.",{details:$,metaMessages:[`Modifier "${Q}" not allowed${J?` in "${J}" type`:""}.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}};H9=class H9 extends C${constructor({param:$,type:J,modifier:Q}){super("Invalid ABI parameter.",{details:$,metaMessages:[`Modifier "${Q}" not allowed${J?` in "${J}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${Q}" was given.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}};O9=class O9 extends C${constructor({abiParameter:$}){super("Invalid ABI parameter.",{details:JSON.stringify($,null,2),metaMessages:["ABI parameter type is invalid."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}});var e0,C9,S9;var p5=T(()=>{FQ();e0=class e0 extends C${constructor({signature:$,type:J}){super(`Invalid ${J} signature.`,{details:$});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}};C9=class C9 extends C${constructor({signature:$}){super("Unknown signature.",{details:$});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}};S9=class S9 extends C${constructor({signature:$}){super("Invalid struct signature.",{details:$,metaMessages:["No properties exist."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}});var R9;var Q4=T(()=>{FQ();R9=class R9 extends C${constructor({type:$}){super("Circular reference detected.",{metaMessages:[`Struct "${$}" is a circular reference.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}});var B9;var X4=T(()=>{FQ();B9=class B9 extends C${constructor({current:$,depth:J}){super("Unbalanced parentheses.",{metaMessages:[`"${$.trim()}" has too many ${J>0?"opening":"closing"} parentheses.`],details:`Depth "${J}"`});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}});function Y4($,J,Q){let X="";if(Q)for(let Y of Object.entries(Q)){if(!Y)continue;let Z="";for(let G of Y[1])Z+=`[${G.type}${G.name?`:${G.name}`:""}]`;X+=`(${Y[0]}{${Z}})`}if(J)return`${J}:${$}${X}`;return`${$}${X}`}var F9;var Z4=T(()=>{F9=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 cX($,J={}){if(lW($))return HD($,J);if(mW($))return OD($,J);if(hW($))return LD($,J);if(sW($))return CD($,J);if(aW($))return SD($);if($4($))return{type:"receive",stateMutability:"payable"};throw new C9({signature:$})}function HD($,J={}){let Q=cW($);if(!Q)throw new e0({signature:$,type:"function"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let W=0;W<Z;W++)Y.push(b0(X[W],{modifiers:q9,structs:J,type:"function"}));let G=[];if(Q.returns){let W=Z0(Q.returns),K=W.length;for(let q=0;q<K;q++)G.push(b0(W[q],{modifiers:q9,structs:J,type:"function"}))}return{name:Q.name,type:"function",stateMutability:Q.stateMutability??"nonpayable",inputs:Y,outputs:G}}function OD($,J={}){let Q=uW($);if(!Q)throw new e0({signature:$,type:"event"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let G=0;G<Z;G++)Y.push(b0(X[G],{modifiers:J4,structs:J,type:"event"}));return{name:Q.name,type:"event",inputs:Y}}function LD($,J={}){let Q=gW($);if(!Q)throw new e0({signature:$,type:"error"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let G=0;G<Z;G++)Y.push(b0(X[G],{structs:J,type:"error"}));return{name:Q.name,type:"error",inputs:Y}}function CD($,J={}){let Q=rW($);if(!Q)throw new e0({signature:$,type:"constructor"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let G=0;G<Z;G++)Y.push(b0(X[G],{structs:J,type:"constructor"}));return{type:"constructor",stateMutability:Q.stateMutability??"nonpayable",inputs:Y}}function SD($){let J=eW($);if(!J)throw new e0({signature:$,type:"fallback"});return{type:"fallback",stateMutability:J.stateMutability??"nonpayable"}}function b0($,J){let Q=Y4($,J?.type,J?.structs);if(F9.has(Q))return F9.get(Q);let X=W9.test($),Y=C0(X?BD:RD,$);if(!Y)throw new N9({param:$});if(Y.name&&jD(Y.name))throw new w9({param:$,name:Y.name});let Z=Y.name?{name:Y.name}:{},G=Y.modifier==="indexed"?{indexed:!0}:{},W=J?.structs??{},K,q={};if(X){K="tuple";let M=Z0(Y.type),D=[],U=M.length;for(let z=0;z<U;z++)D.push(b0(M[z],{structs:W}));q={components:D}}else if(Y.type in W)K="tuple",q={components:W[Y.type]};else if(FD.test(Y.type))K=`${Y.type}256`;else if(Y.type==="address payable")K="address";else if(K=Y.type,J?.type!=="struct"&&!l5(K))throw new u5({type:K});if(Y.modifier){if(!J?.modifiers?.has?.(Y.modifier))throw new z9({param:$,type:J?.type,modifier:Y.modifier});if(q9.has(Y.modifier)&&!ID(K,!!Y.array))throw new H9({param:$,type:J?.type,modifier:Y.modifier})}let V={type:`${K}${Y.array??""}`,...Z,...G,...q};return F9.set(Q,V),V}function Z0($,J=[],Q="",X=0){let Y=$.trim().length;for(let Z=0;Z<Y;Z++){let G=$[Z],W=$.slice(Z+1);switch(G){case",":return X===0?Z0(W,[...J,Q.trim()]):Z0(W,J,`${Q}${G}`,X);case"(":return Z0(W,J,`${Q}${G}`,X+1);case")":return Z0(W,J,`${Q}${G}`,X-1);default:return Z0(W,J,`${Q}${G}`,X)}}if(Q==="")return J;if(X!==0)throw new B9({current:Q,depth:X});return J.push(Q.trim()),J}function l5($){return $==="address"||$==="bool"||$==="function"||$==="string"||h5.test($)||g5.test($)}function jD($){return $==="address"||$==="bool"||$==="function"||$==="string"||$==="tuple"||h5.test($)||g5.test($)||ED.test($)}function ID($,J){return J||$==="bytes"||$==="string"||$==="tuple"}var RD,BD,FD,ED;var jQ=T(()=>{lX();D9();L9();p5();X4();Z4();EQ();RD=/^(?<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$_]*))?$/,BD=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,FD=/^u?int$/;ED=/^(?: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 IQ($){let J={},Q=$.length;for(let G=0;G<Q;G++){let W=$[G];if(!eJ(W))continue;let K=oW(W);if(!K)throw new e0({signature:W,type:"struct"});let q=K.properties.split(";"),V=[],M=q.length;for(let D=0;D<M;D++){let z=q[D].trim();if(!z)continue;let w=b0(z,{type:"struct"});V.push(w)}if(!V.length)throw new S9({signature:W});J[K.name]=V}let X={},Y=Object.entries(J),Z=Y.length;for(let G=0;G<Z;G++){let[W,K]=Y[G];X[W]=G4(K,J)}return X}function G4($=[],J={},Q=new Set){let X=[],Y=$.length;for(let Z=0;Z<Y;Z++){let G=$[Z];if(W9.test(G.type))X.push(G);else{let K=C0(_D,G.type);if(!K?.type)throw new O9({abiParameter:G});let{array:q,type:V}=K;if(V in J){if(Q.has(V))throw new R9({type:V});X.push({...G,type:`tuple${q??""}`,components:G4(J[V],J,new Set([...Q,V]))})}else if(l5(V))X.push(G);else throw new M9({type:V})}}return X}var _D;var E9=T(()=>{lX();D9();L9();p5();Q4();EQ();jQ();_D=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/});function nX($){let J=IQ($),Q=[],X=$.length;for(let Y=0;Y<X;Y++){let Z=$[Y];if(eJ(Z))continue;Q.push(cX(Z,J))}return Q}var W4=T(()=>{EQ();E9();jQ()});function oX($){let J;if(typeof $==="string")J=cX($);else{let Q=IQ($),X=$.length;for(let Y=0;Y<X;Y++){let Z=$[Y];if(eJ(Z))continue;J=cX(Z,Q);break}}if(!J)throw new V9({signature:$});return J}var K4=T(()=>{D9();EQ();E9();jQ()});function l$($){let J=[];if(typeof $==="string"){let Q=Z0($),X=Q.length;for(let Y=0;Y<X;Y++)J.push(b0(Q[Y],{modifiers:m5}))}else{let Q=IQ($),X=$.length;for(let Y=0;Y<X;Y++){let Z=$[Y];if(eJ(Z))continue;let G=Z0(Z),W=G.length;for(let K=0;K<W;K++)J.push(b0(G[K],{modifiers:m5,structs:Q}))}}if(J.length===0)throw new U9({params:$});return J}var q4=T(()=>{L9();EQ();E9();jQ();jQ()});var _Q=T(()=>{vW();d5();W4();K4();q4()});function A$($,{includeName:J=!1}={}){if($.type!=="function"&&$.type!=="event"&&$.type!=="error")throw new c5($.type);return`${$.name}(${iX($.inputs,{includeName:J})})`}function iX($,{includeName:J=!1}={}){if(!$)return"";return $.map((Q)=>TD(Q,{includeName:J})).join(J?", ":",")}function TD($,{includeName:J}){if($.type.startsWith("tuple"))return`(${iX($.components,{includeName:J})})${$.type.slice(5)}`;return $.type+(J&&$.name?` ${$.name}`:"")}var EJ=T(()=>{S$()});function U$($,{strict:J=!0}={}){if(!$)return!1;if(typeof $!=="string")return!1;return J?/^0x[0-9a-fA-F]*$/.test($):$.startsWith("0x")}function r($){if(U$($,{strict:!1}))return Math.ceil(($.length-2)/2);return $.length}var j0=()=>{};var n5="2.45.3";function M4($,J){if(J?.($))return $;if($&&typeof $==="object"&&"cause"in $&&$.cause!==void 0)return M4($.cause,J);return J?null:$}var o5,R;var l=T(()=>{o5={getDocsUrl:({docsBaseUrl:$,docsPath:J="",docsSlug:Q})=>J?`${$??"https://viem.sh"}${J}${Q?`#${Q}`:""}`:void 0,version:`viem@${n5}`};R=class R extends Error{constructor($,J={}){let Q=(()=>{if(J.cause instanceof R)return J.cause.details;if(J.cause?.message)return J.cause.message;return J.details})(),X=(()=>{if(J.cause instanceof R)return J.cause.docsPath||J.docsPath;return J.docsPath})(),Y=o5.getDocsUrl?.({...J,docsPath:X}),Z=[$||"An error occurred.","",...J.metaMessages?[...J.metaMessages,""]:[],...Y?[`Docs: ${Y}`]:[],...Q?[`Details: ${Q}`]:[],...o5.version?[`Version: ${o5.version}`]:[]].join(`
27
- `);super(Z,J.cause?{cause:J.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=Q,this.docsPath=X,this.metaMessages=J.metaMessages,this.name=J.name??this.name,this.shortMessage=$,this.version=n5}walk($){return M4(this,$)}}});var i5,j9,sX,h0,s5,r5,rX,t5,I9,tX,a5,e5,_9,$J,aX,$Z,JZ,eX,$8,k8,QZ,XZ,$Y,c5,YZ;var S$=T(()=>{EJ();j0();l();i5=class i5 extends R{constructor({docsPath:$}){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(`
28
- `),{docsPath:$,name:"AbiConstructorNotFoundError"})}};j9=class j9 extends R{constructor({docsPath:$}){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(`
23
+ `)}),this}_outputHelpIfRequested($){let J=this._getHelpOption();if(J&&$.find((X)=>J.is(X)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function LG($){return $.map((J)=>{if(!J.startsWith("--inspect"))return J;let Q,X="127.0.0.1",Y="9229",Z;if((Z=J.match(/^(--inspect(-brk)?)$/))!==null)Q=Z[1];else if((Z=J.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(Q=Z[1],/^\d+$/.test(Z[3]))Y=Z[3];else X=Z[3];else if((Z=J.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)Q=Z[1],X=Z[3],Y=Z[4];if(Q&&Y!=="0")return`${Q}=${X}:${parseInt(Y)+1}`;return J})}hM.Command=f5});var FG=SJ((uM)=>{var{Argument:SG}=Z9(),{Command:y5}=CG(),{CommanderError:dM,InvalidArgumentError:RG}=uX(),{Help:mM}=_5(),{Option:BG}=A5();uM.program=new y5;uM.createCommand=($)=>new y5($);uM.createOption=($,J)=>new BG($,J);uM.createArgument=($,J)=>new SG($,J);uM.Command=y5;uM.Option=BG;uM.Argument=SG;uM.Help=mM;uM.CommanderError=dM;uM.InvalidArgumentError=RG;uM.InvalidOptionArgumentError=RG});var IG=SJ((yH,$D)=>{$D.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var xG=SJ((vH,BJ)=>{var v5=a0("fs"),W9=a0("path"),JD=a0("os"),QD=a0("crypto"),XD=IG(),b5=XD.version,YD=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function ZD($){let J={},Q=$.toString();Q=Q.replace(/\r\n?/mg,`
24
+ `);let X;while((X=YD.exec(Q))!=null){let Y=X[1],Z=X[2]||"";Z=Z.trim();let W=Z[0];if(Z=Z.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),W==='"')Z=Z.replace(/\\n/g,`
25
+ `),Z=Z.replace(/\\r/g,"\r");J[Y]=Z}return J}function WD($){$=$||{};let J=PG($);$.path=J;let Q=_$.configDotenv($);if(!Q.parsed){let W=Error(`MISSING_DATA: Cannot parse ${J} for an unknown reason`);throw W.code="MISSING_DATA",W}let X=AG($).split(","),Y=X.length,Z;for(let W=0;W<Y;W++)try{let G=X[W].trim(),K=KD(Q,G);Z=_$.decrypt(K.ciphertext,K.key);break}catch(G){if(W+1>=Y)throw G}return _$.parse(Z)}function GD($){console.log(`[dotenv@${b5}][WARN] ${$}`)}function pX($){console.log(`[dotenv@${b5}][DEBUG] ${$}`)}function _G($){console.log(`[dotenv@${b5}] ${$}`)}function AG($){if($&&$.DOTENV_KEY&&$.DOTENV_KEY.length>0)return $.DOTENV_KEY;if(process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0)return process.env.DOTENV_KEY;return""}function KD($,J){let Q;try{Q=new URL(J)}catch(G){if(G.code==="ERR_INVALID_URL"){let K=Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw K.code="INVALID_DOTENV_KEY",K}throw G}let X=Q.password;if(!X){let G=Error("INVALID_DOTENV_KEY: Missing key part");throw G.code="INVALID_DOTENV_KEY",G}let Y=Q.searchParams.get("environment");if(!Y){let G=Error("INVALID_DOTENV_KEY: Missing environment part");throw G.code="INVALID_DOTENV_KEY",G}let Z=`DOTENV_VAULT_${Y.toUpperCase()}`,W=$.parsed[Z];if(!W){let G=Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${Z} in your .env.vault file.`);throw G.code="NOT_FOUND_DOTENV_ENVIRONMENT",G}return{ciphertext:W,key:X}}function PG($){let J=null;if($&&$.path&&$.path.length>0)if(Array.isArray($.path)){for(let Q of $.path)if(v5.existsSync(Q))J=Q.endsWith(".vault")?Q:`${Q}.vault`}else J=$.path.endsWith(".vault")?$.path:`${$.path}.vault`;else J=W9.resolve(process.cwd(),".env.vault");if(v5.existsSync(J))return J;return null}function TG($){return $[0]==="~"?W9.join(JD.homedir(),$.slice(1)):$}function qD($){let J=Boolean($&&$.debug),Q=$&&"quiet"in $?$.quiet:!0;if(J||!Q)_G("Loading env from encrypted .env.vault");let X=_$._parseVault($),Y=process.env;if($&&$.processEnv!=null)Y=$.processEnv;return _$.populate(Y,X,$),{parsed:X}}function VD($){let J=W9.resolve(process.cwd(),".env"),Q="utf8",X=Boolean($&&$.debug),Y=$&&"quiet"in $?$.quiet:!0;if($&&$.encoding)Q=$.encoding;else if(X)pX("No encoding is specified. UTF-8 is used by default");let Z=[J];if($&&$.path)if(!Array.isArray($.path))Z=[TG($.path)];else{Z=[];for(let q of $.path)Z.push(TG(q))}let W,G={};for(let q of Z)try{let V=_$.parse(v5.readFileSync(q,{encoding:Q}));_$.populate(G,V,$)}catch(V){if(X)pX(`Failed to load ${q} ${V.message}`);W=V}let K=process.env;if($&&$.processEnv!=null)K=$.processEnv;if(_$.populate(K,G,$),X||!Y){let q=Object.keys(G).length,V=[];for(let M of Z)try{let D=W9.relative(process.cwd(),M);V.push(D)}catch(D){if(X)pX(`Failed to load ${M} ${D.message}`);W=D}_G(`injecting env (${q}) from ${V.join(",")}`)}if(W)return{parsed:G,error:W};else return{parsed:G}}function MD($){if(AG($).length===0)return _$.configDotenv($);let J=PG($);if(!J)return GD(`You set DOTENV_KEY but you are missing a .env.vault file at ${J}. Did you forget to build it?`),_$.configDotenv($);return _$._configVault($)}function DD($,J){let Q=Buffer.from(J.slice(-64),"hex"),X=Buffer.from($,"base64"),Y=X.subarray(0,12),Z=X.subarray(-16);X=X.subarray(12,-16);try{let W=QD.createDecipheriv("aes-256-gcm",Q,Y);return W.setAuthTag(Z),`${W.update(X)}${W.final()}`}catch(W){let G=W instanceof RangeError,K=W.message==="Invalid key length",q=W.message==="Unsupported state or unable to authenticate data";if(G||K){let V=Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw V.code="INVALID_DOTENV_KEY",V}else if(q){let V=Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw V.code="DECRYPTION_FAILED",V}else throw W}}function UD($,J,Q={}){let X=Boolean(Q&&Q.debug),Y=Boolean(Q&&Q.override);if(typeof J!=="object"){let Z=Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw Z.code="OBJECT_REQUIRED",Z}for(let Z of Object.keys(J))if(Object.prototype.hasOwnProperty.call($,Z)){if(Y===!0)$[Z]=J[Z];if(X)if(Y===!0)pX(`"${Z}" is already defined and WAS overwritten`);else pX(`"${Z}" is already defined and was NOT overwritten`)}else $[Z]=J[Z]}var _$={configDotenv:VD,_configVault:qD,_parseVault:WD,config:MD,decrypt:DD,parse:ZD,populate:UD};vH.configDotenv=_$.configDotenv;vH._configVault=_$._configVault;vH._parseVault=_$._parseVault;vH.config=_$.config;vH.decrypt=_$.decrypt;vH.parse=_$.parse;vH.populate=_$.populate;BJ.exports=_$});var kG="1.2.3";var C$;var FQ=_(()=>{C$=class C$ extends Error{constructor($,J={}){let Q=J.cause instanceof C$?J.cause.details:J.cause?.message?J.cause.message:J.details,X=J.cause instanceof C$?J.cause.docsPath||J.docsPath:J.docsPath,Y=[$||"An error occurred.","",...J.metaMessages?[...J.metaMessages,""]:[],...X?[`Docs: https://abitype.dev${X}`]:[],...Q?[`Details: ${Q}`]:[],`Version: abitype@${kG}`].join(`
26
+ `);super(Y);if(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"}),J.cause)this.cause=J.cause;this.details=Q,this.docsPath=X,this.metaMessages=J.metaMessages,this.shortMessage=$}}});function C0($,J){return $.exec(J)?.groups}var h5,g5,G9;var lX=_(()=>{h5=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,g5=/^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)?$/,G9=/^\(.+?\).*?$/});function K9($){let J=$.type;if(fG.test($.type)&&"components"in $){J="(";let Q=$.components.length;for(let Y=0;Y<Q;Y++){let Z=$.components[Y];if(J+=K9(Z),Y<Q-1)J+=", "}let X=C0(fG,$.type);return J+=`)${X?.array||""}`,K9({...$,type:J})}if("indexed"in $&&$.indexed)J=`${J} indexed`;if($.name)return`${J} ${$.name}`;return J}var fG;var yG=_(()=>{lX();fG=/^tuple(?<array>(\[(\d*)\])*)$/});function FJ($){let J="",Q=$.length;for(let X=0;X<Q;X++){let Y=$[X];if(J+=K9(Y),X!==Q-1)J+=", "}return J}var d5=_(()=>{yG()});function x8($){if($.type==="function")return`function ${$.name}(${FJ($.inputs)})${$.stateMutability&&$.stateMutability!=="nonpayable"?` ${$.stateMutability}`:""}${$.outputs?.length?` returns (${FJ($.outputs)})`:""}`;if($.type==="event")return`event ${$.name}(${FJ($.inputs)})`;if($.type==="error")return`error ${$.name}(${FJ($.inputs)})`;if($.type==="constructor")return`constructor(${FJ($.inputs)})${$.stateMutability==="payable"?" payable":""}`;if($.type==="fallback")return`fallback() external${$.stateMutability==="payable"?" payable":""}`;return"receive() external payable"}var vG=_(()=>{d5()});function hG($){return bG.test($)}function gG($){return C0(bG,$)}function mG($){return dG.test($)}function uG($){return C0(dG,$)}function lG($){return pG.test($)}function cG($){return C0(pG,$)}function eJ($){return nG.test($)}function oG($){return C0(nG,$)}function sG($){return iG.test($)}function rG($){return C0(iG,$)}function aG($){return tG.test($)}function eG($){return C0(tG,$)}function $4($){return SD.test($)}var bG,dG,pG,nG,iG,tG,SD,m5,J4,q9;var EQ=_(()=>{lX();bG=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;dG=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;pG=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;nG=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;iG=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;tG=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;SD=/^receive\(\) external payable$/;m5=new Set(["memory","indexed","storage","calldata"]),J4=new Set(["indexed"]),q9=new Set(["calldata","memory","storage"])});var V9,M9,u5;var D9=_(()=>{FQ();V9=class V9 extends C${constructor({signature:$}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify($,null,2)})`,docsPath:"/api/human#parseabiitem-1"});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}};M9=class M9 extends C${constructor({type:$}){super("Unknown type.",{metaMessages:[`Type "${$}" 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"})}};u5=class u5 extends C${constructor({type:$}){super("Unknown type.",{metaMessages:[`Type "${$}" is not a valid ABI type.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}});var U9,N9,w9,z9,H9,O9;var L9=_(()=>{FQ();U9=class U9 extends C${constructor({params:$}){super("Failed to parse ABI parameters.",{details:`parseAbiParameters(${JSON.stringify($,null,2)})`,docsPath:"/api/human#parseabiparameters-1"});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParametersError"})}};N9=class N9 extends C${constructor({param:$}){super("Invalid ABI parameter.",{details:$});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}};w9=class w9 extends C${constructor({param:$,name:J}){super("Invalid ABI parameter.",{details:$,metaMessages:[`"${J}" 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"})}};z9=class z9 extends C${constructor({param:$,type:J,modifier:Q}){super("Invalid ABI parameter.",{details:$,metaMessages:[`Modifier "${Q}" not allowed${J?` in "${J}" type`:""}.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}};H9=class H9 extends C${constructor({param:$,type:J,modifier:Q}){super("Invalid ABI parameter.",{details:$,metaMessages:[`Modifier "${Q}" not allowed${J?` in "${J}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${Q}" was given.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}};O9=class O9 extends C${constructor({abiParameter:$}){super("Invalid ABI parameter.",{details:JSON.stringify($,null,2),metaMessages:["ABI parameter type is invalid."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}});var e0,C9,S9;var p5=_(()=>{FQ();e0=class e0 extends C${constructor({signature:$,type:J}){super(`Invalid ${J} signature.`,{details:$});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}};C9=class C9 extends C${constructor({signature:$}){super("Unknown signature.",{details:$});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}};S9=class S9 extends C${constructor({signature:$}){super("Invalid struct signature.",{details:$,metaMessages:["No properties exist."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}});var R9;var Q4=_(()=>{FQ();R9=class R9 extends C${constructor({type:$}){super("Circular reference detected.",{metaMessages:[`Struct "${$}" is a circular reference.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}});var B9;var X4=_(()=>{FQ();B9=class B9 extends C${constructor({current:$,depth:J}){super("Unbalanced parentheses.",{metaMessages:[`"${$.trim()}" has too many ${J>0?"opening":"closing"} parentheses.`],details:`Depth "${J}"`});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}});function Y4($,J,Q){let X="";if(Q)for(let Y of Object.entries(Q)){if(!Y)continue;let Z="";for(let W of Y[1])Z+=`[${W.type}${W.name?`:${W.name}`:""}]`;X+=`(${Y[0]}{${Z}})`}if(J)return`${J}:${$}${X}`;return`${$}${X}`}var F9;var Z4=_(()=>{F9=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 cX($,J={}){if(lG($))return RD($,J);if(mG($))return BD($,J);if(hG($))return FD($,J);if(sG($))return ED($,J);if(aG($))return jD($);if($4($))return{type:"receive",stateMutability:"payable"};throw new C9({signature:$})}function RD($,J={}){let Q=cG($);if(!Q)throw new e0({signature:$,type:"function"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let G=0;G<Z;G++)Y.push(b0(X[G],{modifiers:q9,structs:J,type:"function"}));let W=[];if(Q.returns){let G=Z0(Q.returns),K=G.length;for(let q=0;q<K;q++)W.push(b0(G[q],{modifiers:q9,structs:J,type:"function"}))}return{name:Q.name,type:"function",stateMutability:Q.stateMutability??"nonpayable",inputs:Y,outputs:W}}function BD($,J={}){let Q=uG($);if(!Q)throw new e0({signature:$,type:"event"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let W=0;W<Z;W++)Y.push(b0(X[W],{modifiers:J4,structs:J,type:"event"}));return{name:Q.name,type:"event",inputs:Y}}function FD($,J={}){let Q=gG($);if(!Q)throw new e0({signature:$,type:"error"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let W=0;W<Z;W++)Y.push(b0(X[W],{structs:J,type:"error"}));return{name:Q.name,type:"error",inputs:Y}}function ED($,J={}){let Q=rG($);if(!Q)throw new e0({signature:$,type:"constructor"});let X=Z0(Q.parameters),Y=[],Z=X.length;for(let W=0;W<Z;W++)Y.push(b0(X[W],{structs:J,type:"constructor"}));return{type:"constructor",stateMutability:Q.stateMutability??"nonpayable",inputs:Y}}function jD($){let J=eG($);if(!J)throw new e0({signature:$,type:"fallback"});return{type:"fallback",stateMutability:J.stateMutability??"nonpayable"}}function b0($,J){let Q=Y4($,J?.type,J?.structs);if(F9.has(Q))return F9.get(Q);let X=G9.test($),Y=C0(X?TD:ID,$);if(!Y)throw new N9({param:$});if(Y.name&&PD(Y.name))throw new w9({param:$,name:Y.name});let Z=Y.name?{name:Y.name}:{},W=Y.modifier==="indexed"?{indexed:!0}:{},G=J?.structs??{},K,q={};if(X){K="tuple";let M=Z0(Y.type),D=[],U=M.length;for(let z=0;z<U;z++)D.push(b0(M[z],{structs:G}));q={components:D}}else if(Y.type in G)K="tuple",q={components:G[Y.type]};else if(_D.test(Y.type))K=`${Y.type}256`;else if(Y.type==="address payable")K="address";else if(K=Y.type,J?.type!=="struct"&&!l5(K))throw new u5({type:K});if(Y.modifier){if(!J?.modifiers?.has?.(Y.modifier))throw new z9({param:$,type:J?.type,modifier:Y.modifier});if(q9.has(Y.modifier)&&!xD(K,!!Y.array))throw new H9({param:$,type:J?.type,modifier:Y.modifier})}let V={type:`${K}${Y.array??""}`,...Z,...W,...q};return F9.set(Q,V),V}function Z0($,J=[],Q="",X=0){let Y=$.trim().length;for(let Z=0;Z<Y;Z++){let W=$[Z],G=$.slice(Z+1);switch(W){case",":return X===0?Z0(G,[...J,Q.trim()]):Z0(G,J,`${Q}${W}`,X);case"(":return Z0(G,J,`${Q}${W}`,X+1);case")":return Z0(G,J,`${Q}${W}`,X-1);default:return Z0(G,J,`${Q}${W}`,X)}}if(Q==="")return J;if(X!==0)throw new B9({current:Q,depth:X});return J.push(Q.trim()),J}function l5($){return $==="address"||$==="bool"||$==="function"||$==="string"||h5.test($)||g5.test($)}function PD($){return $==="address"||$==="bool"||$==="function"||$==="string"||$==="tuple"||h5.test($)||g5.test($)||AD.test($)}function xD($,J){return J||$==="bytes"||$==="string"||$==="tuple"}var ID,TD,_D,AD;var jQ=_(()=>{lX();D9();L9();p5();X4();Z4();EQ();ID=/^(?<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$_]*))?$/,TD=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,_D=/^u?int$/;AD=/^(?: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 IQ($){let J={},Q=$.length;for(let W=0;W<Q;W++){let G=$[W];if(!eJ(G))continue;let K=oG(G);if(!K)throw new e0({signature:G,type:"struct"});let q=K.properties.split(";"),V=[],M=q.length;for(let D=0;D<M;D++){let z=q[D].trim();if(!z)continue;let w=b0(z,{type:"struct"});V.push(w)}if(!V.length)throw new S9({signature:G});J[K.name]=V}let X={},Y=Object.entries(J),Z=Y.length;for(let W=0;W<Z;W++){let[G,K]=Y[W];X[G]=W4(K,J)}return X}function W4($=[],J={},Q=new Set){let X=[],Y=$.length;for(let Z=0;Z<Y;Z++){let W=$[Z];if(G9.test(W.type))X.push(W);else{let K=C0(kD,W.type);if(!K?.type)throw new O9({abiParameter:W});let{array:q,type:V}=K;if(V in J){if(Q.has(V))throw new R9({type:V});X.push({...W,type:`tuple${q??""}`,components:W4(J[V],J,new Set([...Q,V]))})}else if(l5(V))X.push(W);else throw new M9({type:V})}}return X}var kD;var E9=_(()=>{lX();D9();L9();p5();Q4();EQ();jQ();kD=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/});function nX($){let J=IQ($),Q=[],X=$.length;for(let Y=0;Y<X;Y++){let Z=$[Y];if(eJ(Z))continue;Q.push(cX(Z,J))}return Q}var G4=_(()=>{EQ();E9();jQ()});function oX($){let J;if(typeof $==="string")J=cX($);else{let Q=IQ($),X=$.length;for(let Y=0;Y<X;Y++){let Z=$[Y];if(eJ(Z))continue;J=cX(Z,Q);break}}if(!J)throw new V9({signature:$});return J}var K4=_(()=>{D9();EQ();E9();jQ()});function c$($){let J=[];if(typeof $==="string"){let Q=Z0($),X=Q.length;for(let Y=0;Y<X;Y++)J.push(b0(Q[Y],{modifiers:m5}))}else{let Q=IQ($),X=$.length;for(let Y=0;Y<X;Y++){let Z=$[Y];if(eJ(Z))continue;let W=Z0(Z),G=W.length;for(let K=0;K<G;K++)J.push(b0(W[K],{modifiers:m5,structs:Q}))}}if(J.length===0)throw new U9({params:$});return J}var q4=_(()=>{L9();EQ();E9();jQ();jQ()});var TQ=_(()=>{vG();d5();G4();K4();q4()});function p($){if(typeof $==="string")return{address:$,type:"json-rpc"};return $}var $J,A9,M4,P9,D4,c5,n5,o5,i5;var EJ=_(()=>{$J=[{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:"addr",type:"address"}],name:"getEthBalance",outputs:[{name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],A9=[{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"}]}],M4=[{inputs:[{name:"dns",type:"bytes"}],name:"DNSDecodingFailed",type:"error"},{inputs:[{name:"ens",type:"string"}],name:"DNSEncodingFailed",type:"error"},{inputs:[],name:"EmptyAddress",type:"error"},{inputs:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"HttpError",type:"error"},{inputs:[],name:"InvalidBatchGatewayResponse",type:"error"},{inputs:[{name:"errorData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{name:"name",type:"bytes"},{name:"resolver",type:"address"}],name:"ResolverNotContract",type:"error"},{inputs:[{name:"name",type:"bytes"}],name:"ResolverNotFound",type:"error"},{inputs:[{name:"primary",type:"string"},{name:"primaryAddress",type:"bytes"}],name:"ReverseAddressMismatch",type:"error"},{inputs:[{internalType:"bytes4",name:"selector",type:"bytes4"}],name:"UnsupportedResolverProfile",type:"error"}],P9=[...M4,{name:"resolveWithGateways",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],D4=[...M4,{name:"reverseWithGateways",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"uint256",name:"coinType"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolver"},{type:"address",name:"reverseResolver"}]}],c5=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],n5=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],o5=[{name:"isValidSignature",type:"function",stateMutability:"view",inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],outputs:[{name:"",type:"bytes4"}]}],i5=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}]});function A$($,{includeName:J=!1}={}){if($.type!=="function"&&$.type!=="event"&&$.type!=="error")throw new s5($.type);return`${$.name}(${iX($.inputs,{includeName:J})})`}function iX($,{includeName:J=!1}={}){if(!$)return"";return $.map((Q)=>fD(Q,{includeName:J})).join(J?", ":",")}function fD($,{includeName:J}){if($.type.startsWith("tuple"))return`(${iX($.components,{includeName:J})})${$.type.slice(5)}`;return $.type+(J&&$.name?` ${$.name}`:"")}var jJ=_(()=>{S$()});function U$($,{strict:J=!0}={}){if(!$)return!1;if(typeof $!=="string")return!1;return J?/^0x[0-9a-fA-F]*$/.test($):$.startsWith("0x")}function r($){if(U$($,{strict:!1}))return Math.ceil(($.length-2)/2);return $.length}var j0=()=>{};var r5="2.45.3";function U4($,J){if(J?.($))return $;if($&&typeof $==="object"&&"cause"in $&&$.cause!==void 0)return U4($.cause,J);return J?null:$}var t5,R;var l=_(()=>{t5={getDocsUrl:({docsBaseUrl:$,docsPath:J="",docsSlug:Q})=>J?`${$??"https://viem.sh"}${J}${Q?`#${Q}`:""}`:void 0,version:`viem@${r5}`};R=class R extends Error{constructor($,J={}){let Q=(()=>{if(J.cause instanceof R)return J.cause.details;if(J.cause?.message)return J.cause.message;return J.details})(),X=(()=>{if(J.cause instanceof R)return J.cause.docsPath||J.docsPath;return J.docsPath})(),Y=t5.getDocsUrl?.({...J,docsPath:X}),Z=[$||"An error occurred.","",...J.metaMessages?[...J.metaMessages,""]:[],...Y?[`Docs: ${Y}`]:[],...Q?[`Details: ${Q}`]:[],...t5.version?[`Version: ${t5.version}`]:[]].join(`
27
+ `);super(Z,J.cause?{cause:J.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=Q,this.docsPath=X,this.metaMessages=J.metaMessages,this.name=J.name??this.name,this.shortMessage=$,this.version=r5}walk($){return U4(this,$)}}});var a5,x9,sX,h0,e5,$Z,rX,JZ,k9,tX,QZ,XZ,f9,JJ,aX,YZ,ZZ,eX,$8,k8,WZ,GZ,$Y,s5,KZ;var S$=_(()=>{jJ();j0();l();a5=class a5 extends R{constructor({docsPath:$}){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(`
28
+ `),{docsPath:$,name:"AbiConstructorNotFoundError"})}};x9=class x9 extends R{constructor({docsPath:$}){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(`
29
29
  `),{docsPath:$,name:"AbiConstructorParamsNotFoundError"})}};sX=class sX extends R{constructor({data:$,params:J,size:Q}){super([`Data size of ${Q} bytes is too small for given parameters.`].join(`
30
- `),{metaMessages:[`Params: (${iX(J,{includeName:!0})})`,`Data: ${$} (${Q} 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=$,this.params=J,this.size=Q}};h0=class h0 extends R{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}};s5=class s5 extends R{constructor({expectedLength:$,givenLength:J,type:Q}){super([`ABI encoding array length mismatch for type ${Q}.`,`Expected length: ${$}`,`Given length: ${J}`].join(`
31
- `),{name:"AbiEncodingArrayLengthMismatchError"})}};r5=class r5 extends R{constructor({expectedSize:$,value:J}){super(`Size of bytes "${J}" (bytes${r(J)}) does not match expected size (bytes${$}).`,{name:"AbiEncodingBytesSizeMismatchError"})}};rX=class rX extends R{constructor({expectedLength:$,givenLength:J}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${$}`,`Given length (values): ${J}`].join(`
32
- `),{name:"AbiEncodingLengthMismatchError"})}};t5=class t5 extends R{constructor($,{docsPath:J}){super([`Arguments (\`args\`) were provided to "${$}", but "${$}" 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(`
33
- `),{docsPath:J,name:"AbiErrorInputsNotFoundError"})}};I9=class I9 extends R{constructor($,{docsPath:J}={}){super([`Error ${$?`"${$}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(`
30
+ `),{metaMessages:[`Params: (${iX(J,{includeName:!0})})`,`Data: ${$} (${Q} 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=$,this.params=J,this.size=Q}};h0=class h0 extends R{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}};e5=class e5 extends R{constructor({expectedLength:$,givenLength:J,type:Q}){super([`ABI encoding array length mismatch for type ${Q}.`,`Expected length: ${$}`,`Given length: ${J}`].join(`
31
+ `),{name:"AbiEncodingArrayLengthMismatchError"})}};$Z=class $Z extends R{constructor({expectedSize:$,value:J}){super(`Size of bytes "${J}" (bytes${r(J)}) does not match expected size (bytes${$}).`,{name:"AbiEncodingBytesSizeMismatchError"})}};rX=class rX extends R{constructor({expectedLength:$,givenLength:J}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${$}`,`Given length (values): ${J}`].join(`
32
+ `),{name:"AbiEncodingLengthMismatchError"})}};JZ=class JZ extends R{constructor($,{docsPath:J}){super([`Arguments (\`args\`) were provided to "${$}", but "${$}" 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(`
33
+ `),{docsPath:J,name:"AbiErrorInputsNotFoundError"})}};k9=class k9 extends R{constructor($,{docsPath:J}={}){super([`Error ${$?`"${$}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(`
34
34
  `),{docsPath:J,name:"AbiErrorNotFoundError"})}};tX=class tX extends R{constructor($,{docsPath:J}){super([`Encoded error signature "${$}" 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://4byte.sourcify.dev/?q=${$}.`].join(`
35
- `),{docsPath:J,name:"AbiErrorSignatureNotFoundError"});Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=$}};a5=class a5 extends R{constructor({docsPath:$}){super("Cannot extract event signature from empty topics.",{docsPath:$,name:"AbiEventSignatureEmptyTopicsError"})}};e5=class e5 extends R{constructor($,{docsPath:J}){super([`Encoded event signature "${$}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://4byte.sourcify.dev/?q=${$}.`].join(`
36
- `),{docsPath:J,name:"AbiEventSignatureNotFoundError"})}};_9=class _9 extends R{constructor($,{docsPath:J}={}){super([`Event ${$?`"${$}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join(`
37
- `),{docsPath:J,name:"AbiEventNotFoundError"})}};$J=class $J extends R{constructor($,{docsPath:J}={}){super([`Function ${$?`"${$}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
35
+ `),{docsPath:J,name:"AbiErrorSignatureNotFoundError"});Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=$}};QZ=class QZ extends R{constructor({docsPath:$}){super("Cannot extract event signature from empty topics.",{docsPath:$,name:"AbiEventSignatureEmptyTopicsError"})}};XZ=class XZ extends R{constructor($,{docsPath:J}){super([`Encoded event signature "${$}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://4byte.sourcify.dev/?q=${$}.`].join(`
36
+ `),{docsPath:J,name:"AbiEventSignatureNotFoundError"})}};f9=class f9 extends R{constructor($,{docsPath:J}={}){super([`Event ${$?`"${$}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join(`
37
+ `),{docsPath:J,name:"AbiEventNotFoundError"})}};JJ=class JJ extends R{constructor($,{docsPath:J}={}){super([`Function ${$?`"${$}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
38
38
  `),{docsPath:J,name:"AbiFunctionNotFoundError"})}};aX=class aX extends R{constructor($,{docsPath:J}){super([`Function "${$}" 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(`
39
- `),{docsPath:J,name:"AbiFunctionOutputsNotFoundError"})}};$Z=class $Z extends R{constructor($,{docsPath:J}){super([`Encoded function signature "${$}" 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://4byte.sourcify.dev/?q=${$}.`].join(`
40
- `),{docsPath:J,name:"AbiFunctionSignatureNotFoundError"})}};JZ=class JZ extends R{constructor($,J){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${$.type}\` in \`${A$($.abiItem)}\`, and`,`\`${J.type}\` in \`${A$(J.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}};eX=class eX extends R{constructor({expectedSize:$,givenSize:J}){super(`Expected bytes${$}, got bytes${J}.`,{name:"BytesSizeMismatchError"})}};$8=class $8 extends R{constructor({abiItem:$,data:J,params:Q,size:X}){super([`Data size of ${X} bytes is too small for non-indexed event parameters.`].join(`
39
+ `),{docsPath:J,name:"AbiFunctionOutputsNotFoundError"})}};YZ=class YZ extends R{constructor($,{docsPath:J}){super([`Encoded function signature "${$}" 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://4byte.sourcify.dev/?q=${$}.`].join(`
40
+ `),{docsPath:J,name:"AbiFunctionSignatureNotFoundError"})}};ZZ=class ZZ extends R{constructor($,J){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${$.type}\` in \`${A$($.abiItem)}\`, and`,`\`${J.type}\` in \`${A$(J.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}};eX=class eX extends R{constructor({expectedSize:$,givenSize:J}){super(`Expected bytes${$}, got bytes${J}.`,{name:"BytesSizeMismatchError"})}};$8=class $8 extends R{constructor({abiItem:$,data:J,params:Q,size:X}){super([`Data size of ${X} bytes is too small for non-indexed event parameters.`].join(`
41
41
  `),{metaMessages:[`Params: (${iX(Q,{includeName:!0})})`,`Data: ${J} (${X} bytes)`],name:"DecodeLogDataMismatch"});Object.defineProperty(this,"abiItem",{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,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=$,this.data=J,this.params=Q,this.size=X}};k8=class k8 extends R{constructor({abiItem:$,param:J}){super([`Expected a topic for indexed event parameter${J.name?` "${J.name}"`:""} on event "${A$($,{includeName:!0})}".`].join(`
42
- `),{name:"DecodeLogTopicsMismatch"});Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=$}};QZ=class QZ extends R{constructor($,{docsPath:J}){super([`Type "${$}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
43
- `),{docsPath:J,name:"InvalidAbiEncodingType"})}};XZ=class XZ extends R{constructor($,{docsPath:J}){super([`Type "${$}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
42
+ `),{name:"DecodeLogTopicsMismatch"});Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=$}};WZ=class WZ extends R{constructor($,{docsPath:J}){super([`Type "${$}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
43
+ `),{docsPath:J,name:"InvalidAbiEncodingType"})}};GZ=class GZ extends R{constructor($,{docsPath:J}){super([`Type "${$}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
44
44
  `),{docsPath:J,name:"InvalidAbiDecodingType"})}};$Y=class $Y extends R{constructor($){super([`Value "${$}" is not a valid array.`].join(`
45
- `),{name:"InvalidArrayError"})}};c5=class c5 extends R{constructor($){super([`"${$}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
46
- `),{name:"InvalidDefinitionTypeError"})}};YZ=class YZ extends R{constructor($){super(`Type "${$}" is not supported for packed encoding.`,{name:"UnsupportedPackedAbiType"})}}});var T9,A9,P9;var x9=T(()=>{l();T9=class T9 extends R{constructor({offset:$,position:J,size:Q}){super(`Slice ${J==="start"?"starting":"ending"} at offset "${$}" is out-of-bounds (size: ${Q}).`,{name:"SliceOffsetOutOfBoundsError"})}};A9=class A9 extends R{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} size (${$}) exceeds padding size (${J}).`,{name:"SizeExceedsPaddingSizeError"})}};P9=class P9 extends R{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} is expected to be ${J} ${Q} long, but is ${$} ${Q} long.`,{name:"InvalidBytesLengthError"})}}});function G0($,{dir:J,size:Q=32}={}){if(typeof $==="string")return jJ($,{dir:J,size:Q});return AD($,{dir:J,size:Q})}function jJ($,{dir:J,size:Q=32}={}){if(Q===null)return $;let X=$.replace("0x","");if(X.length>Q*2)throw new A9({size:Math.ceil(X.length/2),targetSize:Q,type:"hex"});return`0x${X[J==="right"?"padEnd":"padStart"](Q*2,"0")}`}function AD($,{dir:J,size:Q=32}={}){if(Q===null)return $;if($.length>Q)throw new A9({size:$.length,targetSize:Q,type:"bytes"});let X=new Uint8Array(Q);for(let Y=0;Y<Q;Y++){let Z=J==="right";X[Z?Y:Q-Y-1]=$[Z?Y:$.length-Y-1]}return X}var TQ=T(()=>{x9()});var f8,GZ,WZ,KZ;var JY=T(()=>{l();f8=class f8 extends R{constructor({max:$,min:J,signed:Q,size:X,value:Y}){super(`Number "${Y}" is not in safe ${X?`${X*8}-bit ${Q?"signed":"unsigned"} `:""}integer range ${$?`(${J} to ${$})`:`(above ${J})`}`,{name:"IntegerOutOfRangeError"})}};GZ=class GZ extends R{constructor($){super(`Bytes value "${$}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}};WZ=class WZ extends R{constructor($){super(`Hex value "${$}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}};KZ=class KZ extends R{constructor({givenSize:$,maxSize:J}){super(`Size cannot exceed ${J} bytes. Given size: ${$} bytes.`,{name:"SizeOverflowError"})}}});function b$($,{dir:J="left"}={}){let Q=typeof $==="string"?$.replace("0x",""):$,X=0;for(let Y=0;Y<Q.length-1;Y++)if(Q[J==="left"?Y:Q.length-Y-1].toString()==="0")X++;else break;if(Q=J==="left"?Q.slice(X):Q.slice(0,Q.length-X),typeof $==="string"){if(Q.length===1&&J==="right")Q=`${Q}0`;return`0x${Q.length%2===1?`0${Q}`:Q}`}return Q}function W0($,{size:J}){if(r($)>J)throw new KZ({givenSize:r($),maxSize:J})}function Z$($,J={}){let{signed:Q}=J;if(J.size)W0($,{size:J.size});let X=BigInt($);if(!Q)return X;let Y=($.length-2)/2,Z=(1n<<BigInt(Y)*8n-1n)-1n;if(X<=Z)return X;return X-BigInt(`0x${"f".padStart(Y*2,"f")}`)-1n}function qZ($,J={}){let Q=$;if(J.size)W0(Q,{size:J.size}),Q=b$(Q);if(b$(Q)==="0x00")return!1;if(b$(Q)==="0x01")return!0;throw new WZ(Q)}function N$($,J={}){let Q=Z$($,J),X=Number(Q);if(!Number.isSafeInteger(X))throw new f8({max:`${Number.MAX_SAFE_INTEGER}`,min:`${Number.MIN_SAFE_INTEGER}`,signed:J.signed,size:J.size,value:`${Q}n`});return X}var P$=T(()=>{JY();j0()});function t($,J={}){if(typeof $==="number"||typeof $==="bigint")return E($,J);if(typeof $==="string")return K0($,J);if(typeof $==="boolean")return y8($,J);return i($,J)}function y8($,J={}){let Q=`0x${Number($)}`;if(typeof J.size==="number")return W0(Q,{size:J.size}),G0(Q,{size:J.size});return Q}function i($,J={}){let Q="";for(let Y=0;Y<$.length;Y++)Q+=PD[$[Y]];let X=`0x${Q}`;if(typeof J.size==="number")return W0(X,{size:J.size}),G0(X,{dir:"right",size:J.size});return X}function E($,J={}){let{signed:Q,size:X}=J,Y=BigInt($),Z;if(X)if(Q)Z=(1n<<BigInt(X)*8n-1n)-1n;else Z=2n**(BigInt(X)*8n)-1n;else if(typeof $==="number")Z=BigInt(Number.MAX_SAFE_INTEGER);let G=typeof Z==="bigint"&&Q?-Z-1n:0;if(Z&&Y>Z||Y<G){let K=typeof $==="bigint"?"n":"";throw new f8({max:Z?`${Z}${K}`:void 0,min:`${G}${K}`,signed:Q,size:X,value:`${$}${K}`})}let W=`0x${(Q&&Y<0?(1n<<BigInt(X*8))+BigInt(Y):Y).toString(16)}`;if(X)return G0(W,{size:X});return W}function K0($,J={}){let Q=xD.encode($);return i(Q,J)}var PD,xD;var m=T(()=>{JY();TQ();P$();PD=Array.from({length:256},($,J)=>J.toString(16).padStart(2,"0"));xD=new TextEncoder});function m$($,J={}){if(typeof $==="number"||typeof $==="bigint")return yD($,J);if(typeof $==="boolean")return fD($,J);if(U$($))return x$($,J);return g0($,J)}function fD($,J={}){let Q=new Uint8Array(1);if(Q[0]=Number($),typeof J.size==="number")return W0(Q,{size:J.size}),G0(Q,{size:J.size});return Q}function D4($){if($>=IJ.zero&&$<=IJ.nine)return $-IJ.zero;if($>=IJ.A&&$<=IJ.F)return $-(IJ.A-10);if($>=IJ.a&&$<=IJ.f)return $-(IJ.a-10);return}function x$($,J={}){let Q=$;if(J.size)W0(Q,{size:J.size}),Q=G0(Q,{dir:"right",size:J.size});let X=Q.slice(2);if(X.length%2)X=`0${X}`;let Y=X.length/2,Z=new Uint8Array(Y);for(let G=0,W=0;G<Y;G++){let K=D4(X.charCodeAt(W++)),q=D4(X.charCodeAt(W++));if(K===void 0||q===void 0)throw new R(`Invalid byte sequence ("${X[W-2]}${X[W-1]}" in "${X}").`);Z[G]=K*16+q}return Z}function yD($,J){let Q=E($,J);return x$(Q)}function g0($,J={}){let Q=kD.encode($);if(typeof J.size==="number")return W0(Q,{size:J.size}),G0(Q,{dir:"right",size:J.size});return Q}var kD,IJ;var k$=T(()=>{l();TQ();P$();m();kD=new TextEncoder;IJ={zero:48,nine:57,A:65,F:70,a:97,f:102}});function vD($,J=!1){if(J)return{h:Number($&k9),l:Number($>>U4&k9)};return{h:Number($>>U4&k9)|0,l:Number($&k9)|0}}function N4($,J=!1){let Q=$.length,X=new Uint32Array(Q),Y=new Uint32Array(Q);for(let Z=0;Z<Q;Z++){let{h:G,l:W}=vD($[Z],J);[X[Z],Y[Z]]=[G,W]}return[X,Y]}var k9,U4,w4=($,J,Q)=>$<<Q|J>>>32-Q,z4=($,J,Q)=>J<<Q|$>>>32-Q,H4=($,J,Q)=>J<<Q-32|$>>>64-Q,O4=($,J,Q)=>$<<Q-32|J>>>64-Q;var L4=T(()=>{k9=BigInt(4294967295),U4=BigInt(32)});import*as _J from"node:crypto";var v8;var C4=T(()=>{v8=_J&&typeof _J==="object"&&"webcrypto"in _J?_J.webcrypto:_J&&typeof _J==="object"&&("randomBytes"in _J)?_J:void 0});function bD($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function b8($){if(!Number.isSafeInteger($)||$<0)throw Error("positive integer expected, got "+$)}function JJ($,...J){if(!bD($))throw Error("Uint8Array expected");if(J.length>0&&!J.includes($.length))throw Error("Uint8Array expected of length "+J+", got length="+$.length)}function S4($){if(typeof $!=="function"||typeof $.create!=="function")throw Error("Hash should be wrapped by utils.createHasher");b8($.outputLen),b8($.blockLen)}function TJ($,J=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(J&&$.finished)throw Error("Hash#digest() has already been called")}function f9($,J){JJ($);let Q=J.outputLen;if($.length<Q)throw Error("digestInto() expects output buffer of length at least "+Q)}function R4($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function QJ(...$){for(let J=0;J<$.length;J++)$[J].fill(0)}function y9($){return new DataView($.buffer,$.byteOffset,$.byteLength)}function d0($,J){return $<<32-J|$>>>J}function gD($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function dD($){for(let J=0;J<$.length;J++)$[J]=gD($[J]);return $}function mD($){if(typeof $!=="string")throw Error("string expected");return new Uint8Array(new TextEncoder().encode($))}function h8($){if(typeof $==="string")$=mD($);return JJ($),$}function B4(...$){let J=0;for(let X=0;X<$.length;X++){let Y=$[X];JJ(Y),J+=Y.length}let Q=new Uint8Array(J);for(let X=0,Y=0;X<$.length;X++){let Z=$[X];Q.set(Z,Y),Y+=Z.length}return Q}class g8{}function v9($){let J=(X)=>$().update(h8(X)).digest(),Q=$();return J.outputLen=Q.outputLen,J.blockLen=Q.blockLen,J.create=()=>$(),J}function b9($=32){if(v8&&typeof v8.getRandomValues==="function")return v8.getRandomValues(new Uint8Array($));if(v8&&typeof v8.randomBytes==="function")return Uint8Array.from(v8.randomBytes($));throw Error("crypto.getRandomValues must be defined")}var hD,VZ;var J8=T(()=>{C4();/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */hD=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();VZ=hD?($)=>$:dD});function sD($,J=24){let Q=new Uint32Array(10);for(let X=24-J;X<24;X++){for(let G=0;G<10;G++)Q[G]=$[G]^$[G+10]^$[G+20]^$[G+30]^$[G+40];for(let G=0;G<10;G+=2){let W=(G+8)%10,K=(G+2)%10,q=Q[K],V=Q[K+1],M=F4(q,V,1)^Q[W],D=E4(q,V,1)^Q[W+1];for(let U=0;U<50;U+=10)$[G+U]^=M,$[G+U+1]^=D}let Y=$[2],Z=$[3];for(let G=0;G<24;G++){let W=I4[G],K=F4(Y,Z,W),q=E4(Y,Z,W),V=j4[G];Y=$[V],Z=$[V+1],$[V]=K,$[V+1]=q}for(let G=0;G<50;G+=10){for(let W=0;W<10;W++)Q[W]=$[G+W];for(let W=0;W<10;W++)$[G+W]^=~Q[(W+2)%10]&Q[(W+4)%10]}$[0]^=oD[X],$[1]^=iD[X]}QJ(Q)}var uD,QY,pD,lD,cD,nD,j4,I4,_4,T4,oD,iD,F4=($,J,Q)=>Q>32?H4($,J,Q):w4($,J,Q),E4=($,J,Q)=>Q>32?O4($,J,Q):z4($,J,Q),MZ,rD=($,J,Q)=>v9(()=>new MZ(J,$,Q)),h9;var DZ=T(()=>{L4();J8();uD=BigInt(0),QY=BigInt(1),pD=BigInt(2),lD=BigInt(7),cD=BigInt(256),nD=BigInt(113),j4=[],I4=[],_4=[];for(let $=0,J=QY,Q=1,X=0;$<24;$++){[Q,X]=[X,(2*Q+3*X)%5],j4.push(2*(5*X+Q)),I4.push(($+1)*($+2)/2%64);let Y=uD;for(let Z=0;Z<7;Z++)if(J=(J<<QY^(J>>lD)*nD)%cD,J&pD)Y^=QY<<(QY<<BigInt(Z))-QY;_4.push(Y)}T4=N4(_4,!0),oD=T4[0],iD=T4[1];MZ=class MZ extends g8{constructor($,J,Q,X=!1,Y=24){super();if(this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=$,this.suffix=J,this.outputLen=Q,this.enableXOF=X,this.rounds=Y,b8(Q),!(0<$&&$<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=R4(this.state)}clone(){return this._cloneInto()}keccak(){VZ(this.state32),sD(this.state32,this.rounds),VZ(this.state32),this.posOut=0,this.pos=0}update($){TJ(this),$=h8($),JJ($);let{blockLen:J,state:Q}=this,X=$.length;for(let Y=0;Y<X;){let Z=Math.min(J-this.pos,X-Y);for(let G=0;G<Z;G++)Q[this.pos++]^=$[Y++];if(this.pos===J)this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:$,suffix:J,pos:Q,blockLen:X}=this;if($[Q]^=J,(J&128)!==0&&Q===X-1)this.keccak();$[X-1]^=128,this.keccak()}writeInto($){TJ(this,!1),JJ($),this.finish();let J=this.state,{blockLen:Q}=this;for(let X=0,Y=$.length;X<Y;){if(this.posOut>=Q)this.keccak();let Z=Math.min(Q-this.posOut,Y-X);$.set(J.subarray(this.posOut,this.posOut+Z),X),this.posOut+=Z,X+=Z}return $}xofInto($){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto($)}xof($){return b8($),this.xofInto(new Uint8Array($))}digestInto($){if(f9($,this),this.finished)throw Error("digest() was already called");return this.writeInto($),this.destroy(),$}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,QJ(this.state)}_cloneInto($){let{blockLen:J,suffix:Q,outputLen:X,rounds:Y,enableXOF:Z}=this;return $||($=new MZ(J,Q,X,Z,Y)),$.state32.set(this.state32),$.pos=this.pos,$.posOut=this.posOut,$.finished=this.finished,$.rounds=Y,$.suffix=Q,$.outputLen=X,$.enableXOF=Z,$.destroyed=this.destroyed,$}};h9=(()=>rD(1,136,32))()});function n($,J){let Q=J||"hex",X=h9(U$($,{strict:!1})?m$($):$);if(Q==="bytes")return X;return t(X)}var q0=T(()=>{DZ();k$();m()});function A4($){return tD($)}var tD=($)=>n(m$($));var P4=T(()=>{k$();q0()});function x4($){let J=!0,Q="",X=0,Y="",Z=!1;for(let G=0;G<$.length;G++){let W=$[G];if(["(",")",","].includes(W))J=!0;if(W==="(")X++;if(W===")")X--;if(!J)continue;if(X===0){if(W===" "&&["event","function",""].includes(Y))Y="";else if(Y+=W,W===")"){Z=!0;break}continue}if(W===" "){if($[G-1]!==","&&Q!==","&&Q!==",(")Q="",J=!1;continue}Y+=W,Q+=W}if(!Z)throw new R("Unable to normalize signature.");return Y}var k4=T(()=>{l()});var f4=($)=>{let J=(()=>{if(typeof $==="string")return $;return x8($)})();return x4(J)};var y4=T(()=>{_Q();k4()});function g9($){return A4(f4($))}var UZ=T(()=>{P4();y4()});var Q8;var XY=T(()=>{UZ();Q8=g9});var Y$;var I0=T(()=>{l();Y$=class Y$ extends R{constructor({address:$}){super(`Address "${$}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}});var S0;var d8=T(()=>{S0=class S0 extends Map{constructor($){super();Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=$}get($){let J=super.get($);if(super.has($)&&J!==void 0)this.delete($),super.set($,J);return J}set($,J){if(super.set($,J),this.maxSize&&this.size>this.maxSize){let Q=this.keys().next().value;if(Q)this.delete(Q)}return this}}});function XJ($,J){if(NZ.has(`${$}.${J}`))return NZ.get(`${$}.${J}`);let Q=J?`${J}${$.toLowerCase()}`:$.substring(2).toLowerCase(),X=n(g0(Q),"bytes"),Y=(J?Q.substring(`${J}0x`.length):Q).split("");for(let G=0;G<40;G+=2){if(X[G>>1]>>4>=8&&Y[G])Y[G]=Y[G].toUpperCase();if((X[G>>1]&15)>=8&&Y[G+1])Y[G+1]=Y[G+1].toUpperCase()}let Z=`0x${Y.join("")}`;return NZ.set(`${$}.${J}`,Z),Z}function V0($,J){if(!s($,{strict:!1}))throw new Y$({address:$});return XJ($,J)}var NZ;var YJ=T(()=>{I0();k$();q0();d8();M0();NZ=new S0(8192)});function s($,J){let{strict:Q=!0}=J??{},X=`${$}.${Q}`;if(wZ.has(X))return wZ.get(X);let Y=(()=>{if(!aD.test($))return!1;if($.toLowerCase()===$)return!0;if(Q)return XJ($)===$;return!0})();return wZ.set(X,Y),Y}var aD,wZ;var M0=T(()=>{d8();YJ();aD=/^0x[a-fA-F0-9]{40}$/,wZ=new S0(8192)});function Q$($){if(typeof $[0]==="string")return R$($);return v4($)}function v4($){let J=0;for(let Y of $)J+=Y.length;let Q=new Uint8Array(J),X=0;for(let Y of $)Q.set(Y,X),X+=Y.length;return Q}function R$($){return`0x${$.reduce((J,Q)=>J+Q.replace("0x",""),"")}`}function D0($,J,Q,{strict:X}={}){if(U$($,{strict:!1}))return d9($,J,Q,{strict:X});return zZ($,J,Q,{strict:X})}function b4($,J){if(typeof J==="number"&&J>0&&J>r($)-1)throw new T9({offset:J,position:"start",size:r($)})}function h4($,J,Q){if(typeof J==="number"&&typeof Q==="number"&&r($)!==Q-J)throw new T9({offset:Q,position:"end",size:r($)})}function zZ($,J,Q,{strict:X}={}){b4($,J);let Y=$.slice(J,Q);if(X)h4(Y,J,Q);return Y}function d9($,J,Q,{strict:X}={}){b4($,J);let Y=`0x${$.replace("0x","").slice((J??0)*2,(Q??$.length)*2)}`;if(X)h4(Y,J,Q);return Y}var AJ=T(()=>{x9();j0()});var g4,m9,AQ;var u9=T(()=>{g4=/^(.*)\[([0-9]*)\]$/,m9=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,AQ=/^(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 W$($,J){if($.length!==J.length)throw new rX({expectedLength:$.length,givenLength:J.length});let Q=eD({params:$,values:J}),X=OZ(Q);if(X.length===0)return"0x";return X}function eD({params:$,values:J}){let Q=[];for(let X=0;X<$.length;X++)Q.push(HZ({param:$[X],value:J[X]}));return Q}function HZ({param:$,value:J}){let Q=p9($.type);if(Q){let[X,Y]=Q;return JU(J,{length:X,param:{...$,type:Y}})}if($.type==="tuple")return GU(J,{param:$});if($.type==="address")return $U(J);if($.type==="bool")return XU(J);if($.type.startsWith("uint")||$.type.startsWith("int")){let X=$.type.startsWith("int"),[,,Y="256"]=AQ.exec($.type)??[];return YU(J,{signed:X,size:Number(Y)})}if($.type.startsWith("bytes"))return QU(J,{param:$});if($.type==="string")return ZU(J);throw new QZ($.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function OZ($){let J=0;for(let Z=0;Z<$.length;Z++){let{dynamic:G,encoded:W}=$[Z];if(G)J+=32;else J+=r(W)}let Q=[],X=[],Y=0;for(let Z=0;Z<$.length;Z++){let{dynamic:G,encoded:W}=$[Z];if(G)Q.push(E(J+Y,{size:32})),X.push(W),Y+=r(W);else Q.push(W)}return Q$([...Q,...X])}function $U($){if(!s($))throw new Y$({address:$});return{dynamic:!1,encoded:jJ($.toLowerCase())}}function JU($,{length:J,param:Q}){let X=J===null;if(!Array.isArray($))throw new $Y($);if(!X&&$.length!==J)throw new s5({expectedLength:J,givenLength:$.length,type:`${Q.type}[${J}]`});let Y=!1,Z=[];for(let G=0;G<$.length;G++){let W=HZ({param:Q,value:$[G]});if(W.dynamic)Y=!0;Z.push(W)}if(X||Y){let G=OZ(Z);if(X){let W=E(Z.length,{size:32});return{dynamic:!0,encoded:Z.length>0?Q$([W,G]):W}}if(Y)return{dynamic:!0,encoded:G}}return{dynamic:!1,encoded:Q$(Z.map(({encoded:G})=>G))}}function QU($,{param:J}){let[,Q]=J.type.split("bytes"),X=r($);if(!Q){let Y=$;if(X%32!==0)Y=jJ(Y,{dir:"right",size:Math.ceil(($.length-2)/2/32)*32});return{dynamic:!0,encoded:Q$([jJ(E(X,{size:32})),Y])}}if(X!==Number.parseInt(Q,10))throw new r5({expectedSize:Number.parseInt(Q,10),value:$});return{dynamic:!1,encoded:jJ($,{dir:"right"})}}function XU($){if(typeof $!=="boolean")throw new R(`Invalid boolean value: "${$}" (type: ${typeof $}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:jJ(y8($))}}function YU($,{signed:J,size:Q=256}){if(typeof Q==="number"){let X=2n**(BigInt(Q)-(J?1n:0n))-1n,Y=J?-X-1n:0n;if($>X||$<Y)throw new f8({max:X.toString(),min:Y.toString(),signed:J,size:Q/8,value:$.toString()})}return{dynamic:!1,encoded:E($,{size:32,signed:J})}}function ZU($){let J=K0($),Q=Math.ceil(r(J)/32),X=[];for(let Y=0;Y<Q;Y++)X.push(jJ(D0(J,Y*32,(Y+1)*32),{dir:"right"}));return{dynamic:!0,encoded:Q$([jJ(E(r(J),{size:32})),...X])}}function GU($,{param:J}){let Q=!1,X=[];for(let Y=0;Y<J.components.length;Y++){let Z=J.components[Y],G=Array.isArray($)?Y:Z.name,W=HZ({param:Z,value:$[G]});if(X.push(W),W.dynamic)Q=!0}return{dynamic:Q,encoded:Q?OZ(X):Q$(X.map(({encoded:Y})=>Y))}}function p9($){let J=$.match(/^(.*)\[(\d+)?\]$/);return J?[J[2]?Number(J[2]):null,J[1]]:void 0}var ZJ=T(()=>{S$();I0();l();JY();M0();TQ();j0();AJ();m();u9()});var GJ=($)=>D0(g9($),0,4);var PQ=T(()=>{AJ();UZ()});function U0($){let{abi:J,args:Q=[],name:X}=$,Y=U$(X,{strict:!1}),Z=J.filter((W)=>{if(Y){if(W.type==="function")return GJ(W)===X;if(W.type==="event")return Q8(W)===X;return!1}return"name"in W&&W.name===X});if(Z.length===0)return;if(Z.length===1)return Z[0];let G;for(let W of Z){if(!("inputs"in W))continue;if(!Q||Q.length===0){if(!W.inputs||W.inputs.length===0)return W;continue}if(!W.inputs)continue;if(W.inputs.length===0)continue;if(W.inputs.length!==Q.length)continue;if(Q.every((q,V)=>{let M="inputs"in W&&W.inputs[V];if(!M)return!1;return LZ(q,M)})){if(G&&"inputs"in G&&G.inputs){let q=d4(W.inputs,G.inputs,Q);if(q)throw new JZ({abiItem:W,type:q[0]},{abiItem:G,type:q[1]})}G=W}}if(G)return G;return Z[0]}function LZ($,J){let Q=typeof $,X=J.type;switch(X){case"address":return s($,{strict:!1});case"bool":return Q==="boolean";case"function":return Q==="string";case"string":return Q==="string";default:{if(X==="tuple"&&"components"in J)return Object.values(J.components).every((Y,Z)=>{return Q==="object"&&LZ(Object.values($)[Z],Y)});if(/^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(X))return Q==="number"||Q==="bigint";if(/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(X))return Q==="string"||$ instanceof Uint8Array;if(/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(X))return Array.isArray($)&&$.every((Y)=>LZ(Y,{...J,type:X.replace(/(\[[0-9]{0,}\])$/,"")}));return!1}}}function d4($,J,Q){for(let X in $){let Y=$[X],Z=J[X];if(Y.type==="tuple"&&Z.type==="tuple"&&"components"in Y&&"components"in Z)return d4(Y.components,Z.components,Q[X]);let G=[Y.type,Z.type];if((()=>{if(G.includes("address")&&G.includes("bytes20"))return!0;if(G.includes("address")&&G.includes("string"))return s(Q[X],{strict:!1});if(G.includes("address")&&G.includes("bytes"))return s(Q[X],{strict:!1});return!1})())return G}return}var X8=T(()=>{S$();M0();XY();PQ()});function p($){if(typeof $==="string")return{address:$,type:"json-rpc"};return $}function l4($){let{abi:J,args:Q,functionName:X}=$,Y=J[0];if(X){let Z=U0({abi:J,args:Q,name:X});if(!Z)throw new $J(X,{docsPath:p4});Y=Z}if(Y.type!=="function")throw new $J(void 0,{docsPath:p4});return{abi:[Y],functionName:GJ(A$(Y))}}var p4="/docs/contract/encodeFunctionData";var c4=T(()=>{S$();PQ();EJ();X8()});function K$($){let{args:J}=$,{abi:Q,functionName:X}=(()=>{if($.abi.length===1&&$.functionName?.startsWith("0x"))return $;return l4($)})(),Y=Q[0],Z=X,G="inputs"in Y&&Y.inputs?W$(Y.inputs,J??[]):void 0;return R$([Z,G??"0x"])}var N0=T(()=>{ZJ();c4()});var n4,c9,o4;var n9=T(()=>{n4={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."},c9={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},o4={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"}});var o9,YY,CZ;var SZ=T(()=>{l();o9=class o9 extends R{constructor({offset:$}){super(`Offset \`${$}\` cannot be negative.`,{name:"NegativeOffsetError"})}};YY=class YY extends R{constructor({length:$,position:J}){super(`Position \`${J}\` is out of bounds (\`0 < position < ${$}\`).`,{name:"PositionOutOfBoundsError"})}};CZ=class CZ extends R{constructor({count:$,limit:J}){super(`Recursive read limit of \`${J}\` exceeded (recursive read count: \`${$}\`).`,{name:"RecursiveReadLimitExceededError"})}}});function xQ($,{recursiveReadLimit:J=8192}={}){let Q=Object.create(WU);return Q.bytes=$,Q.dataView=new DataView($.buffer??$,$.byteOffset,$.byteLength),Q.positionReadCount=new Map,Q.recursiveReadLimit=J,Q}var WU;var i9=T(()=>{SZ();WU={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 CZ({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition($){if($<0||$>this.bytes.length-1)throw new YY({length:this.bytes.length,position:$})},decrementPosition($){if($<0)throw new o9({offset:$});let J=this.position-$;this.assertPosition(J),this.position=J},getReadCount($){return this.positionReadCount.get($||this.position)||0},incrementPosition($){if($<0)throw new o9({offset:$});let J=this.position+$;this.assertPosition(J),this.position=J},inspectByte($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectBytes($,J){let Q=J??this.position;return this.assertPosition(Q+$-1),this.bytes.subarray(Q,Q+$)},inspectUint8($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectUint16($){let J=$??this.position;return this.assertPosition(J+1),this.dataView.getUint16(J)},inspectUint24($){let J=$??this.position;return this.assertPosition(J+2),(this.dataView.getUint16(J)<<8)+this.dataView.getUint8(J+2)},inspectUint32($){let J=$??this.position;return this.assertPosition(J+3),this.dataView.getUint32(J)},pushByte($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushBytes($){this.assertPosition(this.position+$.length-1),this.bytes.set($,this.position),this.position+=$.length},pushUint8($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushUint16($){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,$),this.position+=2},pushUint24($){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,$>>8),this.dataView.setUint8(this.position+2,$&255),this.position+=3},pushUint32($){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,$),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let $=this.inspectByte();return this.position++,$},readBytes($,J){this.assertReadLimit(),this._touch();let Q=this.inspectBytes($);return this.position+=J??$,Q},readUint8(){this.assertReadLimit(),this._touch();let $=this.inspectUint8();return this.position+=1,$},readUint16(){this.assertReadLimit(),this._touch();let $=this.inspectUint16();return this.position+=2,$},readUint24(){this.assertReadLimit(),this._touch();let $=this.inspectUint24();return this.position+=3,$},readUint32(){this.assertReadLimit(),this._touch();let $=this.inspectUint32();return this.position+=4,$},get remaining(){return this.bytes.length-this.position},setPosition($){let J=this.position;return this.assertPosition($),this.position=$,()=>this.position=J},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;let $=this.getReadCount();if(this.positionReadCount.set(this.position,$+1),$>0)this.recursiveReadCount++}}});function i4($,J={}){if(typeof J.size<"u")W0($,{size:J.size});let Q=i($,J);return Z$(Q,J)}function s4($,J={}){let Q=$;if(typeof J.size<"u")W0(Q,{size:J.size}),Q=b$(Q);if(Q.length>1||Q[0]>1)throw new GZ(Q);return Boolean(Q[0])}function KJ($,J={}){if(typeof J.size<"u")W0($,{size:J.size});let Q=i($,J);return N$(Q,J)}function r4($,J={}){let Q=$;if(typeof J.size<"u")W0(Q,{size:J.size}),Q=b$(Q,{dir:"right"});return new TextDecoder().decode(Q)}var t4=T(()=>{JY();P$();m()});function PJ($,J){let Q=typeof J==="string"?x$(J):J,X=xQ(Q);if(r(Q)===0&&$.length>0)throw new h0;if(r(J)&&r(J)<32)throw new sX({data:typeof J==="string"?J:i(J),params:$,size:r(J)});let Y=0,Z=[];for(let G=0;G<$.length;++G){let W=$[G];X.setPosition(Y);let[K,q]=kQ(X,W,{staticPosition:0});Y+=q,Z.push(K)}return Z}function kQ($,J,{staticPosition:Q}){let X=p9(J.type);if(X){let[Y,Z]=X;return qU($,{...J,type:Z},{length:Y,staticPosition:Q})}if(J.type==="tuple")return UU($,J,{staticPosition:Q});if(J.type==="address")return KU($);if(J.type==="bool")return VU($);if(J.type.startsWith("bytes"))return MU($,J,{staticPosition:Q});if(J.type.startsWith("uint")||J.type.startsWith("int"))return DU($,J);if(J.type==="string")return NU($,{staticPosition:Q});throw new XZ(J.type,{docsPath:"/docs/contract/decodeAbiParameters"})}function KU($){let J=$.readBytes(32);return[XJ(i(zZ(J,-20))),32]}function qU($,J,{length:Q,staticPosition:X}){if(!Q){let G=KJ($.readBytes(RZ)),W=X+G,K=W+a4;$.setPosition(W);let q=KJ($.readBytes(a4)),V=ZY(J),M=0,D=[];for(let U=0;U<q;++U){$.setPosition(K+(V?U*32:M));let[z,w]=kQ($,J,{staticPosition:K});M+=w,D.push(z)}return $.setPosition(X+32),[D,32]}if(ZY(J)){let G=KJ($.readBytes(RZ)),W=X+G,K=[];for(let q=0;q<Q;++q){$.setPosition(W+q*32);let[V]=kQ($,J,{staticPosition:W});K.push(V)}return $.setPosition(X+32),[K,32]}let Y=0,Z=[];for(let G=0;G<Q;++G){let[W,K]=kQ($,J,{staticPosition:X+Y});Y+=K,Z.push(W)}return[Z,Y]}function VU($){return[s4($.readBytes(32),{size:32}),32]}function MU($,J,{staticPosition:Q}){let[X,Y]=J.type.split("bytes");if(!Y){let G=KJ($.readBytes(32));$.setPosition(Q+G);let W=KJ($.readBytes(32));if(W===0)return $.setPosition(Q+32),["0x",32];let K=$.readBytes(W);return $.setPosition(Q+32),[i(K),32]}return[i($.readBytes(Number.parseInt(Y,10),32)),32]}function DU($,J){let Q=J.type.startsWith("int"),X=Number.parseInt(J.type.split("int")[1]||"256",10),Y=$.readBytes(32);return[X>48?i4(Y,{signed:Q}):KJ(Y,{signed:Q}),32]}function UU($,J,{staticPosition:Q}){let X=J.components.length===0||J.components.some(({name:G})=>!G),Y=X?[]:{},Z=0;if(ZY(J)){let G=KJ($.readBytes(RZ)),W=Q+G;for(let K=0;K<J.components.length;++K){let q=J.components[K];$.setPosition(W+Z);let[V,M]=kQ($,q,{staticPosition:W});Z+=M,Y[X?K:q?.name]=V}return $.setPosition(Q+32),[Y,32]}for(let G=0;G<J.components.length;++G){let W=J.components[G],[K,q]=kQ($,W,{staticPosition:Q});Y[X?G:W?.name]=K,Z+=q}return[Y,Z]}function NU($,{staticPosition:J}){let Q=KJ($.readBytes(32)),X=J+Q;$.setPosition(X);let Y=KJ($.readBytes(32));if(Y===0)return $.setPosition(J+32),["",32];let Z=$.readBytes(Y,32),G=r4(b$(Z));return $.setPosition(J+32),[G,32]}function ZY($){let{type:J}=$;if(J==="string")return!0;if(J==="bytes")return!0;if(J.endsWith("[]"))return!0;if(J==="tuple")return $.components?.some(ZY);let Q=p9($.type);if(Q&&ZY({...$,type:Q[1]}))return!0;return!1}var a4=32,RZ=32;var GY=T(()=>{S$();YJ();i9();j0();AJ();t4();k$();m();ZJ()});function s9($){let{abi:J,data:Q}=$,X=D0(Q,0,4);if(X==="0x")throw new h0;let Z=[...J||[],c9,o4].find((G)=>G.type==="error"&&X===GJ(A$(G)));if(!Z)throw new tX(X,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:Z,args:"inputs"in Z&&Z.inputs&&Z.inputs.length>0?PJ(Z.inputs,D0(Q,4)):void 0,errorName:Z.name}}var BZ=T(()=>{n9();S$();AJ();PQ();GY();EJ()});var o=($,J,Q)=>JSON.stringify($,(X,Y)=>{let Z=typeof Y==="bigint"?Y.toString():Y;return typeof J==="function"?J(X,Z):Z},Q);function FZ({abiItem:$,args:J,includeFunctionName:Q=!0,includeName:X=!1}){if(!("name"in $))return;if(!("inputs"in $))return;if(!$.inputs)return;return`${Q?$.name:""}(${$.inputs.map((Y,Z)=>`${X&&Y.name?`${Y.name}: `:""}${typeof J[Z]==="object"?o(J[Z]):J[Z]}`).join(", ")})`}var e4=()=>{};var r9,$6;var t9=T(()=>{r9={gwei:9,wei:18},$6={ether:-9,wei:9}});function w$($,J){let Q=$.toString(),X=Q.startsWith("-");if(X)Q=Q.slice(1);Q=Q.padStart(J,"0");let[Y,Z]=[Q.slice(0,Q.length-J),Q.slice(Q.length-J)];return Z=Z.replace(/(0+)$/,""),`${X?"-":""}${Y||"0"}${Z?`.${Z}`:""}`}function fQ($,J="wei"){return w$($,r9[J])}var a9=T(()=>{t9()});function f$($,J="wei"){return w$($,$6[J])}var yQ=T(()=>{t9()});function J6($){return $.reduce((J,{slot:Q,value:X})=>{return`${J} ${Q}: ${X}
45
+ `),{name:"InvalidArrayError"})}};s5=class s5 extends R{constructor($){super([`"${$}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
46
+ `),{name:"InvalidDefinitionTypeError"})}};KZ=class KZ extends R{constructor($){super(`Type "${$}" is not supported for packed encoding.`,{name:"UnsupportedPackedAbiType"})}}});var Y$;var I0=_(()=>{l();Y$=class Y$ extends R{constructor({address:$}){super(`Address "${$}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}});var y9,v9,b9;var h9=_(()=>{l();y9=class y9 extends R{constructor({offset:$,position:J,size:Q}){super(`Slice ${J==="start"?"starting":"ending"} at offset "${$}" is out-of-bounds (size: ${Q}).`,{name:"SliceOffsetOutOfBoundsError"})}};v9=class v9 extends R{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} size (${$}) exceeds padding size (${J}).`,{name:"SizeExceedsPaddingSizeError"})}};b9=class b9 extends R{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} is expected to be ${J} ${Q} long, but is ${$} ${Q} long.`,{name:"InvalidBytesLengthError"})}}});function W0($,{dir:J,size:Q=32}={}){if(typeof $==="string")return IJ($,{dir:J,size:Q});return yD($,{dir:J,size:Q})}function IJ($,{dir:J,size:Q=32}={}){if(Q===null)return $;let X=$.replace("0x","");if(X.length>Q*2)throw new v9({size:Math.ceil(X.length/2),targetSize:Q,type:"hex"});return`0x${X[J==="right"?"padEnd":"padStart"](Q*2,"0")}`}function yD($,{dir:J,size:Q=32}={}){if(Q===null)return $;if($.length>Q)throw new v9({size:$.length,targetSize:Q,type:"bytes"});let X=new Uint8Array(Q);for(let Y=0;Y<Q;Y++){let Z=J==="right";X[Z?Y:Q-Y-1]=$[Z?Y:$.length-Y-1]}return X}var _Q=_(()=>{h9()});var f8,qZ,VZ,MZ;var JY=_(()=>{l();f8=class f8 extends R{constructor({max:$,min:J,signed:Q,size:X,value:Y}){super(`Number "${Y}" is not in safe ${X?`${X*8}-bit ${Q?"signed":"unsigned"} `:""}integer range ${$?`(${J} to ${$})`:`(above ${J})`}`,{name:"IntegerOutOfRangeError"})}};qZ=class qZ extends R{constructor($){super(`Bytes value "${$}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}};VZ=class VZ extends R{constructor($){super(`Hex value "${$}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}};MZ=class MZ extends R{constructor({givenSize:$,maxSize:J}){super(`Size cannot exceed ${J} bytes. Given size: ${$} bytes.`,{name:"SizeOverflowError"})}}});function b$($,{dir:J="left"}={}){let Q=typeof $==="string"?$.replace("0x",""):$,X=0;for(let Y=0;Y<Q.length-1;Y++)if(Q[J==="left"?Y:Q.length-Y-1].toString()==="0")X++;else break;if(Q=J==="left"?Q.slice(X):Q.slice(0,Q.length-X),typeof $==="string"){if(Q.length===1&&J==="right")Q=`${Q}0`;return`0x${Q.length%2===1?`0${Q}`:Q}`}return Q}function G0($,{size:J}){if(r($)>J)throw new MZ({givenSize:r($),maxSize:J})}function Z$($,J={}){let{signed:Q}=J;if(J.size)G0($,{size:J.size});let X=BigInt($);if(!Q)return X;let Y=($.length-2)/2,Z=(1n<<BigInt(Y)*8n-1n)-1n;if(X<=Z)return X;return X-BigInt(`0x${"f".padStart(Y*2,"f")}`)-1n}function DZ($,J={}){let Q=$;if(J.size)G0(Q,{size:J.size}),Q=b$(Q);if(b$(Q)==="0x00")return!1;if(b$(Q)==="0x01")return!0;throw new VZ(Q)}function N$($,J={}){let Q=Z$($,J),X=Number(Q);if(!Number.isSafeInteger(X))throw new f8({max:`${Number.MAX_SAFE_INTEGER}`,min:`${Number.MIN_SAFE_INTEGER}`,signed:J.signed,size:J.size,value:`${Q}n`});return X}var P$=_(()=>{JY();j0()});function t($,J={}){if(typeof $==="number"||typeof $==="bigint")return E($,J);if(typeof $==="string")return K0($,J);if(typeof $==="boolean")return y8($,J);return i($,J)}function y8($,J={}){let Q=`0x${Number($)}`;if(typeof J.size==="number")return G0(Q,{size:J.size}),W0(Q,{size:J.size});return Q}function i($,J={}){let Q="";for(let Y=0;Y<$.length;Y++)Q+=vD[$[Y]];let X=`0x${Q}`;if(typeof J.size==="number")return G0(X,{size:J.size}),W0(X,{dir:"right",size:J.size});return X}function E($,J={}){let{signed:Q,size:X}=J,Y=BigInt($),Z;if(X)if(Q)Z=(1n<<BigInt(X)*8n-1n)-1n;else Z=2n**(BigInt(X)*8n)-1n;else if(typeof $==="number")Z=BigInt(Number.MAX_SAFE_INTEGER);let W=typeof Z==="bigint"&&Q?-Z-1n:0;if(Z&&Y>Z||Y<W){let K=typeof $==="bigint"?"n":"";throw new f8({max:Z?`${Z}${K}`:void 0,min:`${W}${K}`,signed:Q,size:X,value:`${$}${K}`})}let G=`0x${(Q&&Y<0?(1n<<BigInt(X*8))+BigInt(Y):Y).toString(16)}`;if(X)return W0(G,{size:X});return G}function K0($,J={}){let Q=bD.encode($);return i(Q,J)}var vD,bD;var m=_(()=>{JY();_Q();P$();vD=Array.from({length:256},($,J)=>J.toString(16).padStart(2,"0"));bD=new TextEncoder});function m$($,J={}){if(typeof $==="number"||typeof $==="bigint")return dD($,J);if(typeof $==="boolean")return gD($,J);if(U$($))return x$($,J);return g0($,J)}function gD($,J={}){let Q=new Uint8Array(1);if(Q[0]=Number($),typeof J.size==="number")return G0(Q,{size:J.size}),W0(Q,{size:J.size});return Q}function N4($){if($>=TJ.zero&&$<=TJ.nine)return $-TJ.zero;if($>=TJ.A&&$<=TJ.F)return $-(TJ.A-10);if($>=TJ.a&&$<=TJ.f)return $-(TJ.a-10);return}function x$($,J={}){let Q=$;if(J.size)G0(Q,{size:J.size}),Q=W0(Q,{dir:"right",size:J.size});let X=Q.slice(2);if(X.length%2)X=`0${X}`;let Y=X.length/2,Z=new Uint8Array(Y);for(let W=0,G=0;W<Y;W++){let K=N4(X.charCodeAt(G++)),q=N4(X.charCodeAt(G++));if(K===void 0||q===void 0)throw new R(`Invalid byte sequence ("${X[G-2]}${X[G-1]}" in "${X}").`);Z[W]=K*16+q}return Z}function dD($,J){let Q=E($,J);return x$(Q)}function g0($,J={}){let Q=hD.encode($);if(typeof J.size==="number")return G0(Q,{size:J.size}),W0(Q,{dir:"right",size:J.size});return Q}var hD,TJ;var k$=_(()=>{l();_Q();P$();m();hD=new TextEncoder;TJ={zero:48,nine:57,A:65,F:70,a:97,f:102}});function mD($,J=!1){if(J)return{h:Number($&g9),l:Number($>>w4&g9)};return{h:Number($>>w4&g9)|0,l:Number($&g9)|0}}function z4($,J=!1){let Q=$.length,X=new Uint32Array(Q),Y=new Uint32Array(Q);for(let Z=0;Z<Q;Z++){let{h:W,l:G}=mD($[Z],J);[X[Z],Y[Z]]=[W,G]}return[X,Y]}var g9,w4,H4=($,J,Q)=>$<<Q|J>>>32-Q,O4=($,J,Q)=>J<<Q|$>>>32-Q,L4=($,J,Q)=>J<<Q-32|$>>>64-Q,C4=($,J,Q)=>$<<Q-32|J>>>64-Q;var S4=_(()=>{g9=BigInt(4294967295),w4=BigInt(32)});import*as _J from"node:crypto";var v8;var R4=_(()=>{v8=_J&&typeof _J==="object"&&"webcrypto"in _J?_J.webcrypto:_J&&typeof _J==="object"&&("randomBytes"in _J)?_J:void 0});function uD($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function b8($){if(!Number.isSafeInteger($)||$<0)throw Error("positive integer expected, got "+$)}function QJ($,...J){if(!uD($))throw Error("Uint8Array expected");if(J.length>0&&!J.includes($.length))throw Error("Uint8Array expected of length "+J+", got length="+$.length)}function B4($){if(typeof $!=="function"||typeof $.create!=="function")throw Error("Hash should be wrapped by utils.createHasher");b8($.outputLen),b8($.blockLen)}function AJ($,J=!0){if($.destroyed)throw Error("Hash instance has been destroyed");if(J&&$.finished)throw Error("Hash#digest() has already been called")}function d9($,J){QJ($);let Q=J.outputLen;if($.length<Q)throw Error("digestInto() expects output buffer of length at least "+Q)}function F4($){return new Uint32Array($.buffer,$.byteOffset,Math.floor($.byteLength/4))}function XJ(...$){for(let J=0;J<$.length;J++)$[J].fill(0)}function m9($){return new DataView($.buffer,$.byteOffset,$.byteLength)}function d0($,J){return $<<32-J|$>>>J}function lD($){return $<<24&4278190080|$<<8&16711680|$>>>8&65280|$>>>24&255}function cD($){for(let J=0;J<$.length;J++)$[J]=lD($[J]);return $}function nD($){if(typeof $!=="string")throw Error("string expected");return new Uint8Array(new TextEncoder().encode($))}function h8($){if(typeof $==="string")$=nD($);return QJ($),$}function E4(...$){let J=0;for(let X=0;X<$.length;X++){let Y=$[X];QJ(Y),J+=Y.length}let Q=new Uint8Array(J);for(let X=0,Y=0;X<$.length;X++){let Z=$[X];Q.set(Z,Y),Y+=Z.length}return Q}class g8{}function u9($){let J=(X)=>$().update(h8(X)).digest(),Q=$();return J.outputLen=Q.outputLen,J.blockLen=Q.blockLen,J.create=()=>$(),J}function p9($=32){if(v8&&typeof v8.getRandomValues==="function")return v8.getRandomValues(new Uint8Array($));if(v8&&typeof v8.randomBytes==="function")return Uint8Array.from(v8.randomBytes($));throw Error("crypto.getRandomValues must be defined")}var pD,UZ;var J8=_(()=>{R4();/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */pD=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();UZ=pD?($)=>$:cD});function $U($,J=24){let Q=new Uint32Array(10);for(let X=24-J;X<24;X++){for(let W=0;W<10;W++)Q[W]=$[W]^$[W+10]^$[W+20]^$[W+30]^$[W+40];for(let W=0;W<10;W+=2){let G=(W+8)%10,K=(W+2)%10,q=Q[K],V=Q[K+1],M=j4(q,V,1)^Q[G],D=I4(q,V,1)^Q[G+1];for(let U=0;U<50;U+=10)$[W+U]^=M,$[W+U+1]^=D}let Y=$[2],Z=$[3];for(let W=0;W<24;W++){let G=_4[W],K=j4(Y,Z,G),q=I4(Y,Z,G),V=T4[W];Y=$[V],Z=$[V+1],$[V]=K,$[V+1]=q}for(let W=0;W<50;W+=10){for(let G=0;G<10;G++)Q[G]=$[W+G];for(let G=0;G<10;G++)$[W+G]^=~Q[(G+2)%10]&Q[(G+4)%10]}$[0]^=aD[X],$[1]^=eD[X]}XJ(Q)}var oD,QY,iD,sD,rD,tD,T4,_4,A4,P4,aD,eD,j4=($,J,Q)=>Q>32?L4($,J,Q):H4($,J,Q),I4=($,J,Q)=>Q>32?C4($,J,Q):O4($,J,Q),NZ,JU=($,J,Q)=>u9(()=>new NZ(J,$,Q)),l9;var wZ=_(()=>{S4();J8();oD=BigInt(0),QY=BigInt(1),iD=BigInt(2),sD=BigInt(7),rD=BigInt(256),tD=BigInt(113),T4=[],_4=[],A4=[];for(let $=0,J=QY,Q=1,X=0;$<24;$++){[Q,X]=[X,(2*Q+3*X)%5],T4.push(2*(5*X+Q)),_4.push(($+1)*($+2)/2%64);let Y=oD;for(let Z=0;Z<7;Z++)if(J=(J<<QY^(J>>sD)*tD)%rD,J&iD)Y^=QY<<(QY<<BigInt(Z))-QY;A4.push(Y)}P4=z4(A4,!0),aD=P4[0],eD=P4[1];NZ=class NZ extends g8{constructor($,J,Q,X=!1,Y=24){super();if(this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=$,this.suffix=J,this.outputLen=Q,this.enableXOF=X,this.rounds=Y,b8(Q),!(0<$&&$<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=F4(this.state)}clone(){return this._cloneInto()}keccak(){UZ(this.state32),$U(this.state32,this.rounds),UZ(this.state32),this.posOut=0,this.pos=0}update($){AJ(this),$=h8($),QJ($);let{blockLen:J,state:Q}=this,X=$.length;for(let Y=0;Y<X;){let Z=Math.min(J-this.pos,X-Y);for(let W=0;W<Z;W++)Q[this.pos++]^=$[Y++];if(this.pos===J)this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:$,suffix:J,pos:Q,blockLen:X}=this;if($[Q]^=J,(J&128)!==0&&Q===X-1)this.keccak();$[X-1]^=128,this.keccak()}writeInto($){AJ(this,!1),QJ($),this.finish();let J=this.state,{blockLen:Q}=this;for(let X=0,Y=$.length;X<Y;){if(this.posOut>=Q)this.keccak();let Z=Math.min(Q-this.posOut,Y-X);$.set(J.subarray(this.posOut,this.posOut+Z),X),this.posOut+=Z,X+=Z}return $}xofInto($){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto($)}xof($){return b8($),this.xofInto(new Uint8Array($))}digestInto($){if(d9($,this),this.finished)throw Error("digest() was already called");return this.writeInto($),this.destroy(),$}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,XJ(this.state)}_cloneInto($){let{blockLen:J,suffix:Q,outputLen:X,rounds:Y,enableXOF:Z}=this;return $||($=new NZ(J,Q,X,Z,Y)),$.state32.set(this.state32),$.pos=this.pos,$.posOut=this.posOut,$.finished=this.finished,$.rounds=Y,$.suffix=Q,$.outputLen=X,$.enableXOF=Z,$.destroyed=this.destroyed,$}};l9=(()=>JU(1,136,32))()});function n($,J){let Q=J||"hex",X=l9(U$($,{strict:!1})?m$($):$);if(Q==="bytes")return X;return t(X)}var q0=_(()=>{wZ();k$();m()});var S0;var d8=_(()=>{S0=class S0 extends Map{constructor($){super();Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=$}get($){let J=super.get($);if(super.has($)&&J!==void 0)this.delete($),super.set($,J);return J}set($,J){if(super.set($,J),this.maxSize&&this.size>this.maxSize){let Q=this.keys().next().value;if(Q)this.delete(Q)}return this}}});function s($,J){let{strict:Q=!0}=J??{},X=`${$}.${Q}`;if(zZ.has(X))return zZ.get(X);let Y=(()=>{if(!QU.test($))return!1;if($.toLowerCase()===$)return!0;if(Q)return YJ($)===$;return!0})();return zZ.set(X,Y),Y}var QU,zZ;var V0=_(()=>{d8();ZJ();QU=/^0x[a-fA-F0-9]{40}$/,zZ=new S0(8192)});function YJ($,J){if(HZ.has(`${$}.${J}`))return HZ.get(`${$}.${J}`);let Q=J?`${J}${$.toLowerCase()}`:$.substring(2).toLowerCase(),X=n(g0(Q),"bytes"),Y=(J?Q.substring(`${J}0x`.length):Q).split("");for(let W=0;W<40;W+=2){if(X[W>>1]>>4>=8&&Y[W])Y[W]=Y[W].toUpperCase();if((X[W>>1]&15)>=8&&Y[W+1])Y[W+1]=Y[W+1].toUpperCase()}let Z=`0x${Y.join("")}`;return HZ.set(`${$}.${J}`,Z),Z}function M0($,J){if(!s($,{strict:!1}))throw new Y$({address:$});return YJ($,J)}var HZ;var ZJ=_(()=>{I0();k$();q0();d8();V0();HZ=new S0(8192)});var c9,XY,OZ;var LZ=_(()=>{l();c9=class c9 extends R{constructor({offset:$}){super(`Offset \`${$}\` cannot be negative.`,{name:"NegativeOffsetError"})}};XY=class XY extends R{constructor({length:$,position:J}){super(`Position \`${J}\` is out of bounds (\`0 < position < ${$}\`).`,{name:"PositionOutOfBoundsError"})}};OZ=class OZ extends R{constructor({count:$,limit:J}){super(`Recursive read limit of \`${J}\` exceeded (recursive read count: \`${$}\`).`,{name:"RecursiveReadLimitExceededError"})}}});function AQ($,{recursiveReadLimit:J=8192}={}){let Q=Object.create(XU);return Q.bytes=$,Q.dataView=new DataView($.buffer??$,$.byteOffset,$.byteLength),Q.positionReadCount=new Map,Q.recursiveReadLimit=J,Q}var XU;var n9=_(()=>{LZ();XU={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 OZ({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition($){if($<0||$>this.bytes.length-1)throw new XY({length:this.bytes.length,position:$})},decrementPosition($){if($<0)throw new c9({offset:$});let J=this.position-$;this.assertPosition(J),this.position=J},getReadCount($){return this.positionReadCount.get($||this.position)||0},incrementPosition($){if($<0)throw new c9({offset:$});let J=this.position+$;this.assertPosition(J),this.position=J},inspectByte($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectBytes($,J){let Q=J??this.position;return this.assertPosition(Q+$-1),this.bytes.subarray(Q,Q+$)},inspectUint8($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectUint16($){let J=$??this.position;return this.assertPosition(J+1),this.dataView.getUint16(J)},inspectUint24($){let J=$??this.position;return this.assertPosition(J+2),(this.dataView.getUint16(J)<<8)+this.dataView.getUint8(J+2)},inspectUint32($){let J=$??this.position;return this.assertPosition(J+3),this.dataView.getUint32(J)},pushByte($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushBytes($){this.assertPosition(this.position+$.length-1),this.bytes.set($,this.position),this.position+=$.length},pushUint8($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushUint16($){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,$),this.position+=2},pushUint24($){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,$>>8),this.dataView.setUint8(this.position+2,$&255),this.position+=3},pushUint32($){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,$),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let $=this.inspectByte();return this.position++,$},readBytes($,J){this.assertReadLimit(),this._touch();let Q=this.inspectBytes($);return this.position+=J??$,Q},readUint8(){this.assertReadLimit(),this._touch();let $=this.inspectUint8();return this.position+=1,$},readUint16(){this.assertReadLimit(),this._touch();let $=this.inspectUint16();return this.position+=2,$},readUint24(){this.assertReadLimit(),this._touch();let $=this.inspectUint24();return this.position+=3,$},readUint32(){this.assertReadLimit(),this._touch();let $=this.inspectUint32();return this.position+=4,$},get remaining(){return this.bytes.length-this.position},setPosition($){let J=this.position;return this.assertPosition($),this.position=$,()=>this.position=J},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;let $=this.getReadCount();if(this.positionReadCount.set(this.position,$+1),$>0)this.recursiveReadCount++}}});function D0($,J,Q,{strict:X}={}){if(U$($,{strict:!1}))return o9($,J,Q,{strict:X});return CZ($,J,Q,{strict:X})}function x4($,J){if(typeof J==="number"&&J>0&&J>r($)-1)throw new y9({offset:J,position:"start",size:r($)})}function k4($,J,Q){if(typeof J==="number"&&typeof Q==="number"&&r($)!==Q-J)throw new y9({offset:Q,position:"end",size:r($)})}function CZ($,J,Q,{strict:X}={}){x4($,J);let Y=$.slice(J,Q);if(X)k4(Y,J,Q);return Y}function o9($,J,Q,{strict:X}={}){x4($,J);let Y=`0x${$.replace("0x","").slice((J??0)*2,(Q??$.length)*2)}`;if(X)k4(Y,J,Q);return Y}var PJ=_(()=>{h9();j0()});function f4($,J={}){if(typeof J.size<"u")G0($,{size:J.size});let Q=i($,J);return Z$(Q,J)}function y4($,J={}){let Q=$;if(typeof J.size<"u")G0(Q,{size:J.size}),Q=b$(Q);if(Q.length>1||Q[0]>1)throw new qZ(Q);return Boolean(Q[0])}function WJ($,J={}){if(typeof J.size<"u")G0($,{size:J.size});let Q=i($,J);return N$(Q,J)}function v4($,J={}){let Q=$;if(typeof J.size<"u")G0(Q,{size:J.size}),Q=b$(Q,{dir:"right"});return new TextDecoder().decode(Q)}var b4=_(()=>{JY();P$();m()});function Q$($){if(typeof $[0]==="string")return R$($);return h4($)}function h4($){let J=0;for(let Y of $)J+=Y.length;let Q=new Uint8Array(J),X=0;for(let Y of $)Q.set(Y,X),X+=Y.length;return Q}function R$($){return`0x${$.reduce((J,Q)=>J+Q.replace("0x",""),"")}`}var g4,i9,PQ;var s9=_(()=>{g4=/^(.*)\[([0-9]*)\]$/,i9=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,PQ=/^(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 G$($,J){if($.length!==J.length)throw new rX({expectedLength:$.length,givenLength:J.length});let Q=YU({params:$,values:J}),X=RZ(Q);if(X.length===0)return"0x";return X}function YU({params:$,values:J}){let Q=[];for(let X=0;X<$.length;X++)Q.push(SZ({param:$[X],value:J[X]}));return Q}function SZ({param:$,value:J}){let Q=r9($.type);if(Q){let[X,Y]=Q;return WU(J,{length:X,param:{...$,type:Y}})}if($.type==="tuple")return MU(J,{param:$});if($.type==="address")return ZU(J);if($.type==="bool")return KU(J);if($.type.startsWith("uint")||$.type.startsWith("int")){let X=$.type.startsWith("int"),[,,Y="256"]=PQ.exec($.type)??[];return qU(J,{signed:X,size:Number(Y)})}if($.type.startsWith("bytes"))return GU(J,{param:$});if($.type==="string")return VU(J);throw new WZ($.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function RZ($){let J=0;for(let Z=0;Z<$.length;Z++){let{dynamic:W,encoded:G}=$[Z];if(W)J+=32;else J+=r(G)}let Q=[],X=[],Y=0;for(let Z=0;Z<$.length;Z++){let{dynamic:W,encoded:G}=$[Z];if(W)Q.push(E(J+Y,{size:32})),X.push(G),Y+=r(G);else Q.push(G)}return Q$([...Q,...X])}function ZU($){if(!s($))throw new Y$({address:$});return{dynamic:!1,encoded:IJ($.toLowerCase())}}function WU($,{length:J,param:Q}){let X=J===null;if(!Array.isArray($))throw new $Y($);if(!X&&$.length!==J)throw new e5({expectedLength:J,givenLength:$.length,type:`${Q.type}[${J}]`});let Y=!1,Z=[];for(let W=0;W<$.length;W++){let G=SZ({param:Q,value:$[W]});if(G.dynamic)Y=!0;Z.push(G)}if(X||Y){let W=RZ(Z);if(X){let G=E(Z.length,{size:32});return{dynamic:!0,encoded:Z.length>0?Q$([G,W]):G}}if(Y)return{dynamic:!0,encoded:W}}return{dynamic:!1,encoded:Q$(Z.map(({encoded:W})=>W))}}function GU($,{param:J}){let[,Q]=J.type.split("bytes"),X=r($);if(!Q){let Y=$;if(X%32!==0)Y=IJ(Y,{dir:"right",size:Math.ceil(($.length-2)/2/32)*32});return{dynamic:!0,encoded:Q$([IJ(E(X,{size:32})),Y])}}if(X!==Number.parseInt(Q,10))throw new $Z({expectedSize:Number.parseInt(Q,10),value:$});return{dynamic:!1,encoded:IJ($,{dir:"right"})}}function KU($){if(typeof $!=="boolean")throw new R(`Invalid boolean value: "${$}" (type: ${typeof $}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:IJ(y8($))}}function qU($,{signed:J,size:Q=256}){if(typeof Q==="number"){let X=2n**(BigInt(Q)-(J?1n:0n))-1n,Y=J?-X-1n:0n;if($>X||$<Y)throw new f8({max:X.toString(),min:Y.toString(),signed:J,size:Q/8,value:$.toString()})}return{dynamic:!1,encoded:E($,{size:32,signed:J})}}function VU($){let J=K0($),Q=Math.ceil(r(J)/32),X=[];for(let Y=0;Y<Q;Y++)X.push(IJ(D0(J,Y*32,(Y+1)*32),{dir:"right"}));return{dynamic:!0,encoded:Q$([IJ(E(r(J),{size:32})),...X])}}function MU($,{param:J}){let Q=!1,X=[];for(let Y=0;Y<J.components.length;Y++){let Z=J.components[Y],W=Array.isArray($)?Y:Z.name,G=SZ({param:Z,value:$[W]});if(X.push(G),G.dynamic)Q=!0}return{dynamic:Q,encoded:Q?RZ(X):Q$(X.map(({encoded:Y})=>Y))}}function r9($){let J=$.match(/^(.*)\[(\d+)?\]$/);return J?[J[2]?Number(J[2]):null,J[1]]:void 0}var GJ=_(()=>{S$();I0();l();JY();V0();_Q();j0();PJ();m();s9()});function xJ($,J){let Q=typeof J==="string"?x$(J):J,X=AQ(Q);if(r(Q)===0&&$.length>0)throw new h0;if(r(J)&&r(J)<32)throw new sX({data:typeof J==="string"?J:i(J),params:$,size:r(J)});let Y=0,Z=[];for(let W=0;W<$.length;++W){let G=$[W];X.setPosition(Y);let[K,q]=xQ(X,G,{staticPosition:0});Y+=q,Z.push(K)}return Z}function xQ($,J,{staticPosition:Q}){let X=r9(J.type);if(X){let[Y,Z]=X;return UU($,{...J,type:Z},{length:Y,staticPosition:Q})}if(J.type==="tuple")return HU($,J,{staticPosition:Q});if(J.type==="address")return DU($);if(J.type==="bool")return NU($);if(J.type.startsWith("bytes"))return wU($,J,{staticPosition:Q});if(J.type.startsWith("uint")||J.type.startsWith("int"))return zU($,J);if(J.type==="string")return OU($,{staticPosition:Q});throw new GZ(J.type,{docsPath:"/docs/contract/decodeAbiParameters"})}function DU($){let J=$.readBytes(32);return[YJ(i(CZ(J,-20))),32]}function UU($,J,{length:Q,staticPosition:X}){if(!Q){let W=WJ($.readBytes(BZ)),G=X+W,K=G+d4;$.setPosition(G);let q=WJ($.readBytes(d4)),V=YY(J),M=0,D=[];for(let U=0;U<q;++U){$.setPosition(K+(V?U*32:M));let[z,w]=xQ($,J,{staticPosition:K});M+=w,D.push(z)}return $.setPosition(X+32),[D,32]}if(YY(J)){let W=WJ($.readBytes(BZ)),G=X+W,K=[];for(let q=0;q<Q;++q){$.setPosition(G+q*32);let[V]=xQ($,J,{staticPosition:G});K.push(V)}return $.setPosition(X+32),[K,32]}let Y=0,Z=[];for(let W=0;W<Q;++W){let[G,K]=xQ($,J,{staticPosition:X+Y});Y+=K,Z.push(G)}return[Z,Y]}function NU($){return[y4($.readBytes(32),{size:32}),32]}function wU($,J,{staticPosition:Q}){let[X,Y]=J.type.split("bytes");if(!Y){let W=WJ($.readBytes(32));$.setPosition(Q+W);let G=WJ($.readBytes(32));if(G===0)return $.setPosition(Q+32),["0x",32];let K=$.readBytes(G);return $.setPosition(Q+32),[i(K),32]}return[i($.readBytes(Number.parseInt(Y,10),32)),32]}function zU($,J){let Q=J.type.startsWith("int"),X=Number.parseInt(J.type.split("int")[1]||"256",10),Y=$.readBytes(32);return[X>48?f4(Y,{signed:Q}):WJ(Y,{signed:Q}),32]}function HU($,J,{staticPosition:Q}){let X=J.components.length===0||J.components.some(({name:W})=>!W),Y=X?[]:{},Z=0;if(YY(J)){let W=WJ($.readBytes(BZ)),G=Q+W;for(let K=0;K<J.components.length;++K){let q=J.components[K];$.setPosition(G+Z);let[V,M]=xQ($,q,{staticPosition:G});Z+=M,Y[X?K:q?.name]=V}return $.setPosition(Q+32),[Y,32]}for(let W=0;W<J.components.length;++W){let G=J.components[W],[K,q]=xQ($,G,{staticPosition:Q});Y[X?W:G?.name]=K,Z+=q}return[Y,Z]}function OU($,{staticPosition:J}){let Q=WJ($.readBytes(32)),X=J+Q;$.setPosition(X);let Y=WJ($.readBytes(32));if(Y===0)return $.setPosition(J+32),["",32];let Z=$.readBytes(Y,32),W=v4(b$(Z));return $.setPosition(J+32),[W,32]}function YY($){let{type:J}=$;if(J==="string")return!0;if(J==="bytes")return!0;if(J.endsWith("[]"))return!0;if(J==="tuple")return $.components?.some(YY);let Q=r9($.type);if(Q&&YY({...$,type:Q[1]}))return!0;return!1}var d4=32,BZ=32;var ZY=_(()=>{S$();ZJ();n9();j0();PJ();b4();k$();m();GJ()});function m4($){return LU($)}var LU=($)=>n(m$($));var u4=_(()=>{k$();q0()});function p4($){let J=!0,Q="",X=0,Y="",Z=!1;for(let W=0;W<$.length;W++){let G=$[W];if(["(",")",","].includes(G))J=!0;if(G==="(")X++;if(G===")")X--;if(!J)continue;if(X===0){if(G===" "&&["event","function",""].includes(Y))Y="";else if(Y+=G,G===")"){Z=!0;break}continue}if(G===" "){if($[W-1]!==","&&Q!==","&&Q!==",(")Q="",J=!1;continue}Y+=G,Q+=G}if(!Z)throw new R("Unable to normalize signature.");return Y}var l4=_(()=>{l()});var c4=($)=>{let J=(()=>{if(typeof $==="string")return $;return x8($)})();return p4(J)};var n4=_(()=>{TQ();l4()});function t9($){return m4(c4($))}var FZ=_(()=>{u4();n4()});var Q8;var WY=_(()=>{FZ();Q8=t9});var KJ=($)=>D0(t9($),0,4);var kQ=_(()=>{PJ();FZ()});function U0($){let{abi:J,args:Q=[],name:X}=$,Y=U$(X,{strict:!1}),Z=J.filter((G)=>{if(Y){if(G.type==="function")return KJ(G)===X;if(G.type==="event")return Q8(G)===X;return!1}return"name"in G&&G.name===X});if(Z.length===0)return;if(Z.length===1)return Z[0];let W;for(let G of Z){if(!("inputs"in G))continue;if(!Q||Q.length===0){if(!G.inputs||G.inputs.length===0)return G;continue}if(!G.inputs)continue;if(G.inputs.length===0)continue;if(G.inputs.length!==Q.length)continue;if(Q.every((q,V)=>{let M="inputs"in G&&G.inputs[V];if(!M)return!1;return EZ(q,M)})){if(W&&"inputs"in W&&W.inputs){let q=o4(G.inputs,W.inputs,Q);if(q)throw new ZZ({abiItem:G,type:q[0]},{abiItem:W,type:q[1]})}W=G}}if(W)return W;return Z[0]}function EZ($,J){let Q=typeof $,X=J.type;switch(X){case"address":return s($,{strict:!1});case"bool":return Q==="boolean";case"function":return Q==="string";case"string":return Q==="string";default:{if(X==="tuple"&&"components"in J)return Object.values(J.components).every((Y,Z)=>{return Q==="object"&&EZ(Object.values($)[Z],Y)});if(/^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(X))return Q==="number"||Q==="bigint";if(/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(X))return Q==="string"||$ instanceof Uint8Array;if(/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(X))return Array.isArray($)&&$.every((Y)=>EZ(Y,{...J,type:X.replace(/(\[[0-9]{0,}\])$/,"")}));return!1}}}function o4($,J,Q){for(let X in $){let Y=$[X],Z=J[X];if(Y.type==="tuple"&&Z.type==="tuple"&&"components"in Y&&"components"in Z)return o4(Y.components,Z.components,Q[X]);let W=[Y.type,Z.type];if((()=>{if(W.includes("address")&&W.includes("bytes20"))return!0;if(W.includes("address")&&W.includes("string"))return s(Q[X],{strict:!1});if(W.includes("address")&&W.includes("bytes"))return s(Q[X],{strict:!1});return!1})())return W}return}var X8=_(()=>{S$();V0();WY();kQ()});function n$($){let{abi:J,args:Q,functionName:X,data:Y}=$,Z=J[0];if(X){let G=U0({abi:J,args:Q,name:X});if(!G)throw new JJ(X,{docsPath:jZ});Z=G}if(Z.type!=="function")throw new JJ(void 0,{docsPath:jZ});if(!Z.outputs)throw new aX(Z.name,{docsPath:jZ});let W=xJ(Z.outputs,Y);if(W&&W.length>1)return W;if(W&&W.length===1)return W[0];return}var jZ="/docs/contract/decodeFunctionResult";var kJ=_(()=>{S$();ZY();X8()});function s4($){let{abi:J,args:Q,functionName:X}=$,Y=J[0];if(X){let Z=U0({abi:J,args:Q,name:X});if(!Z)throw new JJ(X,{docsPath:i4});Y=Z}if(Y.type!=="function")throw new JJ(void 0,{docsPath:i4});return{abi:[Y],functionName:KJ(A$(Y))}}var i4="/docs/contract/encodeFunctionData";var r4=_(()=>{S$();kQ();jJ();X8()});function K$($){let{args:J}=$,{abi:Q,functionName:X}=(()=>{if($.abi.length===1&&$.functionName?.startsWith("0x"))return $;return s4($)})(),Y=Q[0],Z=X,W="inputs"in Y&&Y.inputs?G$(Y.inputs,J??[]):void 0;return R$([Z,W??"0x"])}var N0=_(()=>{GJ();r4()});var fQ,IZ,TZ,a9,yQ;var GY=_(()=>{l();fQ=class fQ extends R{constructor({blockNumber:$,chain:J,contract:Q}){super(`Chain "${J.name}" does not support contract "${Q.name}".`,{metaMessages:["This could be due to any of the following:",...$&&Q.blockCreated&&Q.blockCreated>$?[`- The contract "${Q.name}" was not deployed until block ${Q.blockCreated} (current block ${$}).`]:[`- The chain does not have the contract "${Q.name}" configured.`]],name:"ChainDoesNotSupportContract"})}};IZ=class IZ extends R{constructor({chain:$,currentChainId:J}){super(`The current chain of the wallet (id: ${J}) does not match the target chain for the transaction (id: ${$.id} – ${$.name}).`,{metaMessages:[`Current Chain ID: ${J}`,`Expected Chain ID: ${$.id} – ${$.name}`],name:"ChainMismatchError"})}};TZ=class TZ extends R{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(`
47
+ `),{name:"ChainNotFoundError"})}};a9=class a9 extends R{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}};yQ=class yQ extends R{constructor({chainId:$}){super(typeof $==="number"?`Chain ID "${$}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}});function T0({blockNumber:$,chain:J,contract:Q}){let X=J?.contracts?.[Q];if(!X)throw new fQ({chain:J,contract:{name:Q}});if($&&X.blockCreated&&X.blockCreated>$)throw new fQ({blockNumber:$,chain:J,contract:{name:Q,blockCreated:X.blockCreated}});return X.address}var m8=_(()=>{GY()});var t4,e9,a4;var $1=_(()=>{t4={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."},e9={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},a4={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"}});function J1($){let{abi:J,data:Q}=$,X=D0(Q,0,4);if(X==="0x")throw new h0;let Z=[...J||[],e9,a4].find((W)=>W.type==="error"&&X===KJ(A$(W)));if(!Z)throw new tX(X,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:Z,args:"inputs"in Z&&Z.inputs&&Z.inputs.length>0?xJ(Z.inputs,D0(Q,4)):void 0,errorName:Z.name}}var _Z=_(()=>{$1();S$();PJ();kQ();ZY();jJ()});var o=($,J,Q)=>JSON.stringify($,(X,Y)=>{let Z=typeof Y==="bigint"?Y.toString():Y;return typeof J==="function"?J(X,Z):Z},Q);function AZ({abiItem:$,args:J,includeFunctionName:Q=!0,includeName:X=!1}){if(!("name"in $))return;if(!("inputs"in $))return;if(!$.inputs)return;return`${Q?$.name:""}(${$.inputs.map((Y,Z)=>`${X&&Y.name?`${Y.name}: `:""}${typeof J[Z]==="object"?o(J[Z]):J[Z]}`).join(", ")})`}var e4=()=>{};var Q1,$6;var X1=_(()=>{Q1={gwei:9,wei:18},$6={ether:-9,wei:9}});function w$($,J){let Q=$.toString(),X=Q.startsWith("-");if(X)Q=Q.slice(1);Q=Q.padStart(J,"0");let[Y,Z]=[Q.slice(0,Q.length-J),Q.slice(Q.length-J)];return Z=Z.replace(/(0+)$/,""),`${X?"-":""}${Y||"0"}${Z?`.${Z}`:""}`}function vQ($,J="wei"){return w$($,Q1[J])}var Y1=_(()=>{X1()});function f$($,J="wei"){return w$($,$6[J])}var bQ=_(()=>{X1()});function J6($){return $.reduce((J,{slot:Q,value:X})=>{return`${J} ${Q}: ${X}
47
48
  `},"")}function Q6($){return $.reduce((J,{address:Q,...X})=>{let Y=`${J} ${Q}:
48
49
  `;if(X.nonce)Y+=` nonce: ${X.nonce}
49
50
  `;if(X.balance)Y+=` balance: ${X.balance}
@@ -51,52 +52,51 @@ Expecting one of '${Q.join("', '")}'`);let X=`${$}Help`;return this.on(X,(Y)=>{l
51
52
  `;if(X.state)Y+=` state:
52
53
  `,Y+=J6(X.state);if(X.stateDiff)Y+=` stateDiff:
53
54
  `,Y+=J6(X.stateDiff);return Y},` State Override:
54
- `).slice(0,-1)}var EZ,jZ;var IZ=T(()=>{l();EZ=class EZ extends R{constructor({address:$}){super(`State for account "${$}" is set multiple times.`,{name:"AccountStateConflictError"})}};jZ=class jZ extends R{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}});function m8($){let J=Object.entries($).map(([X,Y])=>{if(Y===void 0||Y===!1)return null;return[X,Y]}).filter(Boolean),Q=J.reduce((X,[Y])=>Math.max(X,Y.length),0);return J.map(([X,Y])=>` ${`${X}:`.padEnd(Q+1)} ${Y}`).join(`
55
- `)}var _Z,TZ,AZ,PZ,WY,KY,qY,xZ;var _0=T(()=>{a9();yQ();l();_Z=class _Z extends R{constructor({v:$}){super(`Invalid \`v\` value "${$}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}};TZ=class TZ extends R{constructor({transaction:$}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",m8($),"}","","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"})}};AZ=class AZ extends R{constructor({storageKey:$}){super(`Size for storage key "${$}" is invalid. Expected 32 bytes. Got ${Math.floor(($.length-2)/2)} bytes.`,{name:"InvalidStorageKeySizeError"})}};PZ=class PZ extends R{constructor($,{account:J,docsPath:Q,chain:X,data:Y,gas:Z,gasPrice:G,maxFeePerGas:W,maxPriorityFeePerGas:K,nonce:q,to:V,value:M}){let D=m8({chain:X&&`${X?.name} (id: ${X?.id})`,from:J?.address,to:V,value:typeof M<"u"&&`${fQ(M)} ${X?.nativeCurrency?.symbol||"ETH"}`,data:Y,gas:Z,gasPrice:typeof G<"u"&&`${f$(G)} gwei`,maxFeePerGas:typeof W<"u"&&`${f$(W)} gwei`,maxPriorityFeePerGas:typeof K<"u"&&`${f$(K)} gwei`,nonce:q});super($.shortMessage,{cause:$,docsPath:Q,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],"Request Arguments:",D].filter(Boolean),name:"TransactionExecutionError"});Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=$}};WY=class WY extends R{constructor({blockHash:$,blockNumber:J,blockTag:Q,hash:X,index:Y}){let Z="Transaction";if(Q&&Y!==void 0)Z=`Transaction at block time "${Q}" at index "${Y}"`;if($&&Y!==void 0)Z=`Transaction at block hash "${$}" at index "${Y}"`;if(J&&Y!==void 0)Z=`Transaction at block number "${J}" at index "${Y}"`;if(X)Z=`Transaction with hash "${X}"`;super(`${Z} could not be found.`,{name:"TransactionNotFoundError"})}};KY=class KY extends R{constructor({hash:$}){super(`Transaction receipt with hash "${$}" could not be found. The Transaction may not be processed on a block yet.`,{name:"TransactionReceiptNotFoundError"})}};qY=class qY extends R{constructor({receipt:$}){super(`Transaction with hash "${$.transactionHash}" reverted.`,{metaMessages:['The receipt marked the transaction as "reverted". This could mean that the function on the contract you are trying to call threw an error.'," ","You can attempt to extract the revert reason by:","- calling the `simulateContract` or `simulateCalls` Action with the `abi` and `functionName` of the contract","- using the `call` Action with raw `data`"],name:"TransactionReceiptRevertedError"});Object.defineProperty(this,"receipt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.receipt=$}};xZ=class xZ extends R{constructor({hash:$}){super(`Timed out while waiting for transaction with hash "${$}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}});var X6=($)=>$,u8=($)=>$;var VY,MY,vQ,kZ,fZ,xJ;var Z8=T(()=>{n9();BZ();EJ();e4();X8();a9();yQ();S$();l();IZ();_0();VY=class VY extends R{constructor($,{account:J,docsPath:Q,chain:X,data:Y,gas:Z,gasPrice:G,maxFeePerGas:W,maxPriorityFeePerGas:K,nonce:q,to:V,value:M,stateOverride:D}){let U=J?p(J):void 0,z=m8({from:U?.address,to:V,value:typeof M<"u"&&`${fQ(M)} ${X?.nativeCurrency?.symbol||"ETH"}`,data:Y,gas:Z,gasPrice:typeof G<"u"&&`${f$(G)} gwei`,maxFeePerGas:typeof W<"u"&&`${f$(W)} gwei`,maxPriorityFeePerGas:typeof K<"u"&&`${f$(K)} gwei`,nonce:q});if(D)z+=`
56
- ${Q6(D)}`;super($.shortMessage,{cause:$,docsPath:Q,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],"Raw Call Arguments:",z].filter(Boolean),name:"CallExecutionError"});Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=$}};MY=class MY extends R{constructor($,{abi:J,args:Q,contractAddress:X,docsPath:Y,functionName:Z,sender:G}){let W=U0({abi:J,args:Q,name:Z}),K=W?FZ({abiItem:W,args:Q,includeFunctionName:!1,includeName:!1}):void 0,q=W?A$(W,{includeName:!0}):void 0,V=m8({address:X&&X6(X),function:q,args:K&&K!=="()"&&`${[...Array(Z?.length??0).keys()].map(()=>" ").join("")}${K}`,sender:G});super($.shortMessage||`An unknown error occurred while executing the contract function "${Z}".`,{cause:$,docsPath:Y,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],V&&"Contract Call:",V].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=J,this.args=Q,this.cause=$,this.contractAddress=X,this.functionName=Z,this.sender=G}};vQ=class vQ extends R{constructor({abi:$,data:J,functionName:Q,message:X}){let Y,Z,G,W;if(J&&J!=="0x")try{Z=s9({abi:$,data:J});let{abiItem:q,errorName:V,args:M}=Z;if(V==="Error")W=M[0];else if(V==="Panic"){let[D]=M;W=n4[D]}else{let D=q?A$(q,{includeName:!0}):void 0,U=q&&M?FZ({abiItem:q,args:M,includeFunctionName:!1,includeName:!1}):void 0;G=[D?`Error: ${D}`:"",U&&U!=="()"?` ${[...Array(V?.length??0).keys()].map(()=>" ").join("")}${U}`:""]}}catch(q){Y=q}else if(X)W=X;let K;if(Y instanceof tX)K=Y.signature,G=[`Unable to decode signature "${K}" 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://4byte.sourcify.dev/?q=${K}.`];super(W&&W!=="execution reverted"||K?[`The contract function "${Q}" reverted with the following ${K?"signature":"reason"}:`,W||K].join(`
57
- `):`The contract function "${Q}" reverted.`,{cause:Y,metaMessages:G,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=Z,this.raw=J,this.reason=W,this.signature=K}};kZ=class kZ extends R{constructor({functionName:$}){super(`The contract function "${$}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${$}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}};fZ=class fZ extends R{constructor({factory:$}){super(`Deployment for counterfactual contract call failed${$?` for factory "${$}".`:""}`,{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"})}};xJ=class xJ extends R{constructor({data:$,message:J}){super(J||"",{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=$}}});var m0,p8,e9;var l8=T(()=>{l();m0=class m0 extends R{constructor({body:$,cause:J,details:Q,headers:X,status:Y,url:Z}){super("HTTP request failed.",{cause:J,details:Q,metaMessages:[Y&&`Status: ${Y}`,`URL: ${u8(Z)}`,$&&`Request body: ${o($)}`].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=$,this.headers=X,this.status=Y,this.url=Z}};p8=class p8 extends R{constructor({body:$,error:J,url:Q}){super("RPC Request failed.",{cause:J,details:J.message,metaMessages:[`URL: ${u8(Q)}`,`Request body: ${o($)}`],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=J.code,this.data=J.data,this.url=Q}};e9=class e9 extends R{constructor({body:$,url:J}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${u8(J)}`,`Request body: ${o($)}`],name:"TimeoutError"});Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=J}}});var wU=-1,a$,e$,bQ,hQ,gQ,dQ,kJ,T0,mQ,uQ,G8,W8,c8,pQ,fJ,lQ,cQ,nQ,oQ,iQ,K8,sQ,rQ,tQ,aQ,eQ,q8,V8,yZ;var n8=T(()=>{l();l8();a$=class a$ extends R{constructor($,{code:J,docsPath:Q,metaMessages:X,name:Y,shortMessage:Z}){super(Z,{cause:$,docsPath:Q,metaMessages:X||$?.metaMessages,name:Y||"RpcError"});Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=Y||$.name,this.code=$ instanceof p8?$.code:J??wU}};e$=class e$ extends a${constructor($,J){super($,J);Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=J.data}};bQ=class bQ extends a${constructor($){super($,{code:bQ.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}};Object.defineProperty(bQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});hQ=class hQ extends a${constructor($){super($,{code:hQ.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}};Object.defineProperty(hQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});gQ=class gQ extends a${constructor($,{method:J}={}){super($,{code:gQ.code,name:"MethodNotFoundRpcError",shortMessage:`The method${J?` "${J}"`:""} does not exist / is not available.`})}};Object.defineProperty(gQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});dQ=class dQ extends a${constructor($){super($,{code:dQ.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
58
- `)})}};Object.defineProperty(dQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});kJ=class kJ extends a${constructor($){super($,{code:kJ.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}};Object.defineProperty(kJ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});T0=class T0 extends a${constructor($){super($,{code:T0.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
59
- `)})}};Object.defineProperty(T0,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32000});mQ=class mQ extends a${constructor($){super($,{code:mQ.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}};Object.defineProperty(mQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});uQ=class uQ extends a${constructor($){super($,{code:uQ.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}};Object.defineProperty(uQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});G8=class G8 extends a${constructor($){super($,{code:G8.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}};Object.defineProperty(G8,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});W8=class W8 extends a${constructor($,{method:J}={}){super($,{code:W8.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${J?` "${J}"`:""} is not supported.`})}};Object.defineProperty(W8,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});c8=class c8 extends a${constructor($){super($,{code:c8.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}};Object.defineProperty(c8,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});pQ=class pQ extends a${constructor($){super($,{code:pQ.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}};Object.defineProperty(pQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});fJ=class fJ extends e${constructor($){super($,{code:fJ.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}};Object.defineProperty(fJ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});lQ=class lQ extends e${constructor($){super($,{code:lQ.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}};Object.defineProperty(lQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});cQ=class cQ extends e${constructor($,{method:J}={}){super($,{code:cQ.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${J?` " ${J}"`:""}.`})}};Object.defineProperty(cQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});nQ=class nQ extends e${constructor($){super($,{code:nQ.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}};Object.defineProperty(nQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});oQ=class oQ extends e${constructor($){super($,{code:oQ.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}};Object.defineProperty(oQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});iQ=class iQ extends e${constructor($){super($,{code:iQ.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}};Object.defineProperty(iQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});K8=class K8 extends e${constructor($){super($,{code:K8.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}};Object.defineProperty(K8,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});sQ=class sQ extends e${constructor($){super($,{code:sQ.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}};Object.defineProperty(sQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});rQ=class rQ extends e${constructor($){super($,{code:rQ.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}};Object.defineProperty(rQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});tQ=class tQ extends e${constructor($){super($,{code:tQ.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}};Object.defineProperty(tQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});aQ=class aQ extends e${constructor($){super($,{code:aQ.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}};Object.defineProperty(aQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});eQ=class eQ extends e${constructor($){super($,{code:eQ.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}};Object.defineProperty(eQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});q8=class q8 extends e${constructor($){super($,{code:q8.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}};Object.defineProperty(q8,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});V8=class V8 extends e${constructor($){super($,{code:V8.code,name:"WalletConnectSessionSettlementError",shortMessage:"WalletConnect session settlement failed."})}};Object.defineProperty(V8,"code",{enumerable:!0,configurable:!0,writable:!0,value:7000});yZ=class yZ extends a${constructor($){super($,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}});function HU($,J,Q,X){if(typeof $.setBigUint64==="function")return $.setBigUint64(J,Q,X);let Y=BigInt(32),Z=BigInt(4294967295),G=Number(Q>>Y&Z),W=Number(Q&Z),K=X?4:0,q=X?0:4;$.setUint32(J+K,G,X),$.setUint32(J+q,W,X)}function Y6($,J,Q){return $&J^~$&Q}function Z6($,J,Q){return $&J^$&Q^J&Q}var vZ,yJ;var G6=T(()=>{J8();vZ=class vZ extends g8{constructor($,J,Q,X){super();this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=$,this.outputLen=J,this.padOffset=Q,this.isLE=X,this.buffer=new Uint8Array($),this.view=y9(this.buffer)}update($){TJ(this),$=h8($),JJ($);let{view:J,buffer:Q,blockLen:X}=this,Y=$.length;for(let Z=0;Z<Y;){let G=Math.min(X-this.pos,Y-Z);if(G===X){let W=y9($);for(;X<=Y-Z;Z+=X)this.process(W,Z);continue}if(Q.set($.subarray(Z,Z+G),this.pos),this.pos+=G,Z+=G,this.pos===X)this.process(J,0),this.pos=0}return this.length+=$.length,this.roundClean(),this}digestInto($){TJ(this),f9($,this),this.finished=!0;let{buffer:J,view:Q,blockLen:X,isLE:Y}=this,{pos:Z}=this;if(J[Z++]=128,QJ(this.buffer.subarray(Z)),this.padOffset>X-Z)this.process(Q,0),Z=0;for(let V=Z;V<X;V++)J[V]=0;HU(Q,X-8,BigInt(this.length*8),Y),this.process(Q,0);let G=y9($),W=this.outputLen;if(W%4)throw Error("_sha2: outputLen should be aligned to 32bit");let K=W/4,q=this.get();if(K>q.length)throw Error("_sha2: outputLen bigger than state");for(let V=0;V<K;V++)G.setUint32(4*V,q[V],Y)}digest(){let{buffer:$,outputLen:J}=this;this.digestInto($);let Q=$.slice(0,J);return this.destroy(),Q}_cloneInto($){$||($=new this.constructor),$.set(...this.get());let{blockLen:J,buffer:Q,length:X,finished:Y,destroyed:Z,pos:G}=this;if($.destroyed=Z,$.finished=Y,$.length=X,$.pos=G,X%J)$.buffer.set(Q);return $}clone(){return this._cloneInto()}};yJ=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225])});var OU,M8,bZ,o8;var hZ=T(()=>{G6();J8();OU=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),M8=new Uint32Array(64);bZ=class bZ extends vZ{constructor($=32){super(64,$,8,!1);this.A=yJ[0]|0,this.B=yJ[1]|0,this.C=yJ[2]|0,this.D=yJ[3]|0,this.E=yJ[4]|0,this.F=yJ[5]|0,this.G=yJ[6]|0,this.H=yJ[7]|0}get(){let{A:$,B:J,C:Q,D:X,E:Y,F:Z,G,H:W}=this;return[$,J,Q,X,Y,Z,G,W]}set($,J,Q,X,Y,Z,G,W){this.A=$|0,this.B=J|0,this.C=Q|0,this.D=X|0,this.E=Y|0,this.F=Z|0,this.G=G|0,this.H=W|0}process($,J){for(let V=0;V<16;V++,J+=4)M8[V]=$.getUint32(J,!1);for(let V=16;V<64;V++){let M=M8[V-15],D=M8[V-2],U=d0(M,7)^d0(M,18)^M>>>3,z=d0(D,17)^d0(D,19)^D>>>10;M8[V]=z+M8[V-7]+U+M8[V-16]|0}let{A:Q,B:X,C:Y,D:Z,E:G,F:W,G:K,H:q}=this;for(let V=0;V<64;V++){let M=d0(G,6)^d0(G,11)^d0(G,25),D=q+M+Y6(G,W,K)+OU[V]+M8[V]|0,z=(d0(Q,2)^d0(Q,13)^d0(Q,22))+Z6(Q,X,Y)|0;q=K,K=W,W=G,G=Z+D|0,Z=Y,Y=X,X=Q,Q=D+z|0}Q=Q+this.A|0,X=X+this.B|0,Y=Y+this.C|0,Z=Z+this.D|0,G=G+this.E|0,W=W+this.F|0,K=K+this.G|0,q=q+this.H|0,this.set(Q,X,Y,Z,G,W,K,q)}roundClean(){QJ(M8)}destroy(){this.set(0,0,0,0,0,0,0,0),QJ(this.buffer)}};o8=v9(()=>new bZ)});var gZ,dZ=($,J,Q)=>new gZ($,J).update(Q).digest();var W6=T(()=>{J8();gZ=class gZ extends g8{constructor($,J){super();this.finished=!1,this.destroyed=!1,S4($);let Q=h8(J);if(this.iHash=$.create(),typeof this.iHash.update!=="function")throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let X=this.blockLen,Y=new Uint8Array(X);Y.set(Q.length>X?$.create().update(Q).digest():Q);for(let Z=0;Z<Y.length;Z++)Y[Z]^=54;this.iHash.update(Y),this.oHash=$.create();for(let Z=0;Z<Y.length;Z++)Y[Z]^=106;this.oHash.update(Y),QJ(Y)}update($){return TJ(this),this.iHash.update($),this}digestInto($){TJ(this),JJ($,this.outputLen),this.finished=!0,this.iHash.digestInto($),this.oHash.update($),this.oHash.digestInto($),this.destroy()}digest(){let $=new Uint8Array(this.oHash.outputLen);return this.digestInto($),$}_cloneInto($){$||($=Object.create(Object.getPrototypeOf(this),{}));let{oHash:J,iHash:Q,finished:X,destroyed:Y,blockLen:Z,outputLen:G}=this;return $=$,$.finished=X,$.destroyed=Y,$.blockLen=Z,$.outputLen=G,$.oHash=J._cloneInto($.oHash),$.iHash=Q._cloneInto($.iHash),$}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};dZ.create=($,J)=>new gZ($,J)});function $X($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function bJ($){if(!$X($))throw Error("Uint8Array expected")}function JX($,J){if(typeof J!=="boolean")throw Error($+" boolean expected, got "+J)}function DY($){let J=$.toString(16);return J.length&1?"0"+J:J}function V6($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);return $===""?lZ:BigInt("0x"+$)}function QX($){if(bJ($),M6)return $.toHex();let J="";for(let Q=0;Q<$.length;Q++)J+=LU[$[Q]];return J}function K6($){if($>=vJ._0&&$<=vJ._9)return $-vJ._0;if($>=vJ.A&&$<=vJ.F)return $-(vJ.A-10);if($>=vJ.a&&$<=vJ.f)return $-(vJ.a-10);return}function UY($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);if(M6)return Uint8Array.fromHex($);let J=$.length,Q=J/2;if(J%2)throw Error("hex string expected, got unpadded hex of length "+J);let X=new Uint8Array(Q);for(let Y=0,Z=0;Y<Q;Y++,Z+=2){let G=K6($.charCodeAt(Z)),W=K6($.charCodeAt(Z+1));if(G===void 0||W===void 0){let K=$[Z]+$[Z+1];throw Error('hex string expected, got non-hex character "'+K+'" at index '+Z)}X[Y]=G*16+W}return X}function w0($){return V6(QX($))}function cZ($){return bJ($),V6(QX(Uint8Array.from($).reverse()))}function qJ($,J){return UY($.toString(16).padStart(J*2,"0"))}function nZ($,J){return qJ($,J).reverse()}function E$($,J,Q){let X;if(typeof J==="string")try{X=UY(J)}catch(Z){throw Error($+" must be hex string or Uint8Array, cause: "+Z)}else if($X(J))X=Uint8Array.from(J);else throw Error($+" must be hex string or Uint8Array");let Y=X.length;if(typeof Q==="number"&&Y!==Q)throw Error($+" of length "+Q+" expected, got "+Y);return X}function $0(...$){let J=0;for(let X=0;X<$.length;X++){let Y=$[X];bJ(Y),J+=Y.length}let Q=new Uint8Array(J);for(let X=0,Y=0;X<$.length;X++){let Z=$[X];Q.set(Z,Y),Y+=Z.length}return Q}function J1($){if(typeof $!=="string")throw Error("string expected");return new Uint8Array(new TextEncoder().encode($))}function i8($,J,Q){return mZ($)&&mZ(J)&&mZ(Q)&&J<=$&&$<Q}function hJ($,J,Q,X){if(!i8(J,Q,X))throw Error("expected valid "+$+": "+Q+" <= n < "+X+", got "+J)}function D6($){let J;for(J=0;$>lZ;$>>=pZ,J+=1);return J}function U6($,J,Q){if(typeof $!=="number"||$<2)throw Error("hashLen must be a number");if(typeof J!=="number"||J<2)throw Error("qByteLen must be a number");if(typeof Q!=="function")throw Error("hmacFn must be a function");let X=uZ($),Y=uZ($),Z=0,G=()=>{X.fill(1),Y.fill(0),Z=0},W=(...M)=>Q(Y,X,...M),K=(M=uZ(0))=>{if(Y=W(q6([0]),M),X=W(),M.length===0)return;Y=W(q6([1]),M),X=W()},q=()=>{if(Z++>=1000)throw Error("drbg: tried 1000 values");let M=0,D=[];while(M<J){X=W();let U=X.slice();D.push(U),M+=X.length}return $0(...D)};return(M,D)=>{G(),K(M);let U=void 0;while(!(U=D(q())))K();return G(),U}}function gJ($,J,Q={}){let X=(Y,Z,G)=>{let W=CU[Z];if(typeof W!=="function")throw Error("invalid validator function");let K=$[Y];if(G&&K===void 0)return;if(!W(K,$))throw Error("param "+String(Y)+" is invalid. Expected "+Z+", got "+K)};for(let[Y,Z]of Object.entries(J))X(Y,Z,!1);for(let[Y,Z]of Object.entries(Q))X(Y,Z,!0);return $}function oZ($){let J=new WeakMap;return(Q,...X)=>{let Y=J.get(Q);if(Y!==void 0)return Y;let Z=$(Q,...X);return J.set(Q,Z),Z}}var lZ,pZ,M6,LU,vJ,mZ=($)=>typeof $==="bigint"&&lZ<=$,s8=($)=>(pZ<<BigInt($))-pZ,uZ=($)=>new Uint8Array($),q6=($)=>Uint8Array.from($),CU;var XX=T(()=>{/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */lZ=BigInt(0),pZ=BigInt(1);M6=typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function",LU=Array.from({length:256},($,J)=>J.toString(16).padStart(2,"0"));vJ={_0:48,_9:57,A:65,F:70,a:97,f:102};CU={bigint:($)=>typeof $==="bigint",function:($)=>typeof $==="function",boolean:($)=>typeof $==="boolean",string:($)=>typeof $==="string",stringOrUint8Array:($)=>typeof $==="string"||$X($),isSafeInteger:($)=>Number.isSafeInteger($),array:($)=>Array.isArray($),field:($,J)=>J.Fp.isValid($),hash:($)=>typeof $==="function"&&Number.isSafeInteger($.outputLen)}});function B$($,J){let Q=$%J;return Q>=J0?Q:J+Q}function B0($,J,Q){let X=$;while(J-- >J0)X*=X,X%=Q;return X}function Q1($,J){if($===J0)throw Error("invert: expected non-zero number");if(J<=J0)throw Error("invert: expected positive modulus, got "+J);let Q=B$($,J),X=J,Y=J0,Z=c$,G=c$,W=J0;while(Q!==J0){let q=X/Q,V=X%Q,M=Y-G*q,D=Z-W*q;X=Q,Q=V,Y=G,Z=W,G=M,W=D}if(X!==c$)throw Error("invert: does not exist");return B$(Y,J)}function O6($,J){let Q=($.ORDER+c$)/w6,X=$.pow(J,Q);if(!$.eql($.sqr(X),J))throw Error("Cannot find square root");return X}function RU($,J){let Q=($.ORDER-z6)/H6,X=$.mul(J,r8),Y=$.pow(X,Q),Z=$.mul(J,Y),G=$.mul($.mul(Z,r8),Y),W=$.mul(Z,$.sub(G,$.ONE));if(!$.eql($.sqr(W),J))throw Error("Cannot find square root");return W}function BU($){if($<BigInt(3))throw Error("sqrt is not defined for small field");let J=$-c$,Q=0;while(J%r8===J0)J/=r8,Q++;let X=r8,Y=NY($);while(N6(Y,X)===1)if(X++>1000)throw Error("Cannot find square root: probably non-prime P");if(Q===1)return O6;let Z=Y.pow(X,J),G=(J+c$)/r8;return function(K,q){if(K.is0(q))return q;if(N6(K,q)!==1)throw Error("Cannot find square root");let V=Q,M=K.mul(K.ONE,Z),D=K.pow(q,J),U=K.pow(q,G);while(!K.eql(D,K.ONE)){if(K.is0(D))return K.ZERO;let z=1,w=K.sqr(D);while(!K.eql(w,K.ONE))if(z++,w=K.sqr(w),z===V)throw Error("Cannot find square root");let L=c$<<BigInt(V-z-1),O=K.pow(M,L);V=z,M=K.sqr(O),D=K.mul(D,M),U=K.mul(U,O)}return U}}function FU($){if($%w6===SU)return O6;if($%H6===z6)return RU;return BU($)}function X1($){let J={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},Q=EU.reduce((X,Y)=>{return X[Y]="function",X},J);return gJ($,Q)}function jU($,J,Q){if(Q<J0)throw Error("invalid exponent, negatives unsupported");if(Q===J0)return $.ONE;if(Q===c$)return J;let X=$.ONE,Y=J;while(Q>J0){if(Q&c$)X=$.mul(X,Y);Y=$.sqr(Y),Q>>=c$}return X}function YX($,J,Q=!1){let X=Array(J.length).fill(Q?$.ZERO:void 0),Y=J.reduce((G,W,K)=>{if($.is0(W))return G;return X[K]=G,$.mul(G,W)},$.ONE),Z=$.inv(Y);return J.reduceRight((G,W,K)=>{if($.is0(W))return G;return X[K]=$.mul(G,X[K]),$.mul(G,W)},Z),X}function N6($,J){let Q=($.ORDER-c$)/r8,X=$.pow(J,Q),Y=$.eql(X,$.ONE),Z=$.eql(X,$.ZERO),G=$.eql(X,$.neg($.ONE));if(!Y&&!Z&&!G)throw Error("invalid Legendre symbol result");return Y?1:Z?0:-1}function iZ($,J){if(J!==void 0)b8(J);let Q=J!==void 0?J:$.toString(2).length,X=Math.ceil(Q/8);return{nBitLength:Q,nByteLength:X}}function NY($,J,Q=!1,X={}){if($<=J0)throw Error("invalid field: expected ORDER > 0, got "+$);let{nBitLength:Y,nByteLength:Z}=iZ($,J);if(Z>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");let G,W=Object.freeze({ORDER:$,isLE:Q,BITS:Y,BYTES:Z,MASK:s8(Y),ZERO:J0,ONE:c$,create:(K)=>B$(K,$),isValid:(K)=>{if(typeof K!=="bigint")throw Error("invalid field element: expected bigint, got "+typeof K);return J0<=K&&K<$},is0:(K)=>K===J0,isOdd:(K)=>(K&c$)===c$,neg:(K)=>B$(-K,$),eql:(K,q)=>K===q,sqr:(K)=>B$(K*K,$),add:(K,q)=>B$(K+q,$),sub:(K,q)=>B$(K-q,$),mul:(K,q)=>B$(K*q,$),pow:(K,q)=>jU(W,K,q),div:(K,q)=>B$(K*Q1(q,$),$),sqrN:(K)=>K*K,addN:(K,q)=>K+q,subN:(K,q)=>K-q,mulN:(K,q)=>K*q,inv:(K)=>Q1(K,$),sqrt:X.sqrt||((K)=>{if(!G)G=FU($);return G(W,K)}),toBytes:(K)=>Q?nZ(K,Z):qJ(K,Z),fromBytes:(K)=>{if(K.length!==Z)throw Error("Field.fromBytes: expected "+Z+" bytes, got "+K.length);return Q?cZ(K):w0(K)},invertBatch:(K)=>YX(W,K),cmov:(K,q,V)=>V?q:K});return Object.freeze(W)}function L6($){if(typeof $!=="bigint")throw Error("field order must be bigint");let J=$.toString(2).length;return Math.ceil(J/8)}function sZ($){let J=L6($);return J+Math.ceil(J/2)}function C6($,J,Q=!1){let X=$.length,Y=L6(J),Z=sZ(J);if(X<16||X<Z||X>1024)throw Error("expected "+Z+"-1024 bytes of input, got "+X);let G=Q?cZ($):w0($),W=B$(G,J-c$)+c$;return Q?nZ(W,Y):qJ(W,Y)}var J0,c$,r8,SU,w6,z6,H6,EU;var wY=T(()=>{J8();XX();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */J0=BigInt(0),c$=BigInt(1),r8=BigInt(2),SU=BigInt(3),w6=BigInt(4),z6=BigInt(5),H6=BigInt(8);EU=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"]});function rZ($,J){let Q=J.negate();return $?Q:J}function B6($,J){if(!Number.isSafeInteger($)||$<=0||$>J)throw Error("invalid window size, expected [1.."+J+"], got W="+$)}function tZ($,J){B6($,J);let Q=Math.ceil(J/$)+1,X=2**($-1),Y=2**$,Z=s8($),G=BigInt($);return{windows:Q,windowSize:X,mask:Z,maxNumber:Y,shiftBy:G}}function R6($,J,Q){let{windowSize:X,mask:Y,maxNumber:Z,shiftBy:G}=Q,W=Number($&Y),K=$>>G;if(W>X)W-=Z,K+=$7;let q=J*X,V=q+Math.abs(W)-1,M=W===0,D=W<0,U=J%2!==0;return{nextN:K,offset:V,isZero:M,isNeg:D,isNegF:U,offsetF:q}}function IU($,J){if(!Array.isArray($))throw Error("array expected");$.forEach((Q,X)=>{if(!(Q instanceof J))throw Error("invalid point at index "+X)})}function _U($,J){if(!Array.isArray($))throw Error("array of scalars expected");$.forEach((Q,X)=>{if(!J.isValid(Q))throw Error("invalid scalar at index "+X)})}function eZ($){return F6.get($)||1}function E6($,J){return{constTimeNegate:rZ,hasPrecomputes(Q){return eZ(Q)!==1},unsafeLadder(Q,X,Y=$.ZERO){let Z=Q;while(X>S6){if(X&$7)Y=Y.add(Z);Z=Z.double(),X>>=$7}return Y},precomputeWindow(Q,X){let{windows:Y,windowSize:Z}=tZ(X,J),G=[],W=Q,K=W;for(let q=0;q<Y;q++){K=W,G.push(K);for(let V=1;V<Z;V++)K=K.add(W),G.push(K);W=K.double()}return G},wNAF(Q,X,Y){let{ZERO:Z,BASE:G}=$,W=tZ(Q,J);for(let K=0;K<W.windows;K++){let{nextN:q,offset:V,isZero:M,isNeg:D,isNegF:U,offsetF:z}=R6(Y,K,W);if(Y=q,M)G=G.add(rZ(U,X[z]));else Z=Z.add(rZ(D,X[V]))}return{p:Z,f:G}},wNAFUnsafe(Q,X,Y,Z=$.ZERO){let G=tZ(Q,J);for(let W=0;W<G.windows;W++){if(Y===S6)break;let{nextN:K,offset:q,isZero:V,isNeg:M}=R6(Y,W,G);if(Y=K,V)continue;else{let D=X[q];Z=Z.add(M?D.negate():D)}}return Z},getPrecomputes(Q,X,Y){let Z=aZ.get(X);if(!Z){if(Z=this.precomputeWindow(X,Q),Q!==1)aZ.set(X,Y(Z))}return Z},wNAFCached(Q,X,Y){let Z=eZ(Q);return this.wNAF(Z,this.getPrecomputes(Z,Q,Y),X)},wNAFCachedUnsafe(Q,X,Y,Z){let G=eZ(Q);if(G===1)return this.unsafeLadder(Q,X,Z);return this.wNAFUnsafe(G,this.getPrecomputes(G,Q,Y),X,Z)},setWindowSize(Q,X){B6(X,J),F6.set(Q,X),aZ.delete(Q)}}}function j6($,J,Q,X){IU(Q,$),_U(X,J);let Y=Q.length,Z=X.length;if(Y!==Z)throw Error("arrays of points and scalars must have equal length");let G=$.ZERO,W=D6(BigInt(Y)),K=1;if(W>12)K=W-3;else if(W>4)K=W-2;else if(W>0)K=2;let q=s8(K),V=Array(Number(q)+1).fill(G),M=Math.floor((J.BITS-1)/K)*K,D=G;for(let U=M;U>=0;U-=K){V.fill(G);for(let w=0;w<Z;w++){let L=X[w],O=Number(L>>BigInt(U)&q);V[O]=V[O].add(Q[w])}let z=G;for(let w=V.length-1,L=G;w>0;w--)L=L.add(V[w]),z=z.add(L);if(D=D.add(z),U!==0)for(let w=0;w<K;w++)D=D.double()}return D}function J7($){return X1($.Fp),gJ($,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...iZ($.n,$.nBitLength),...$,...{p:$.Fp.ORDER}})}var S6,$7,aZ,F6;var I6=T(()=>{wY();XX();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */S6=BigInt(0),$7=BigInt(1);aZ=new WeakMap,F6=new WeakMap});function _6($){if($.lowS!==void 0)JX("lowS",$.lowS);if($.prehash!==void 0)JX("prehash",$.prehash)}function TU($){let J=J7($);gJ(J,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});let{endo:Q,Fp:X,a:Y}=J;if(Q){if(!X.eql(Y,X.ZERO))throw Error("invalid endo: CURVE.a must be 0");if(typeof Q!=="object"||typeof Q.beta!=="bigint"||typeof Q.splitScalar!=="function")throw Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...J})}function Q7($,J){return QX(qJ($,J))}function AU($){let J=TU($),{Fp:Q}=J,X=NY(J.n,J.nBitLength),Y=J.toBytes||((N,H,S)=>{let B=H.toAffine();return $0(Uint8Array.from([4]),Q.toBytes(B.x),Q.toBytes(B.y))}),Z=J.fromBytes||((N)=>{let H=N.subarray(1),S=Q.fromBytes(H.subarray(0,Q.BYTES)),B=Q.fromBytes(H.subarray(Q.BYTES,2*Q.BYTES));return{x:S,y:B}});function G(N){let{a:H,b:S}=J,B=Q.sqr(N),F=Q.mul(B,N);return Q.add(Q.add(F,Q.mul(N,H)),S)}function W(N,H){let S=Q.sqr(H),B=G(N);return Q.eql(S,B)}if(!W(J.Gx,J.Gy))throw Error("bad curve params: generator point");let K=Q.mul(Q.pow(J.a,zY),X7),q=Q.mul(Q.sqr(J.b),BigInt(27));if(Q.is0(Q.add(K,q)))throw Error("bad curve params: a or b");function V(N){return i8(N,G$,J.n)}function M(N){let{allowedPrivateKeyLengths:H,nByteLength:S,wrapPrivateKey:B,n:F}=J;if(H&&typeof N!=="bigint"){if($X(N))N=QX(N);if(typeof N!=="string"||!H.includes(N.length))throw Error("invalid private key");N=N.padStart(S*2,"0")}let I;try{I=typeof N==="bigint"?N:w0(E$("private key",N,S))}catch(P){throw Error("invalid private key, expected hex or "+S+" bytes, got "+typeof N)}if(B)I=B$(I,F);return hJ("private key",I,G$,F),I}function D(N){if(!(N instanceof w))throw Error("ProjectivePoint expected")}let U=oZ((N,H)=>{let{px:S,py:B,pz:F}=N;if(Q.eql(F,Q.ONE))return{x:S,y:B};let I=N.is0();if(H==null)H=I?Q.ONE:Q.inv(F);let P=Q.mul(S,H),j=Q.mul(B,H),y=Q.mul(F,H);if(I)return{x:Q.ZERO,y:Q.ZERO};if(!Q.eql(y,Q.ONE))throw Error("invZ was invalid");return{x:P,y:j}}),z=oZ((N)=>{if(N.is0()){if(J.allowInfinityPoint&&!Q.is0(N.py))return;throw Error("bad point: ZERO")}let{x:H,y:S}=N.toAffine();if(!Q.isValid(H)||!Q.isValid(S))throw Error("bad point: x or y not FE");if(!W(H,S))throw Error("bad point: equation left != right");if(!N.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});class w{constructor(N,H,S){if(N==null||!Q.isValid(N))throw Error("x required");if(H==null||!Q.isValid(H)||Q.is0(H))throw Error("y required");if(S==null||!Q.isValid(S))throw Error("z required");this.px=N,this.py=H,this.pz=S,Object.freeze(this)}static fromAffine(N){let{x:H,y:S}=N||{};if(!N||!Q.isValid(H)||!Q.isValid(S))throw Error("invalid affine point");if(N instanceof w)throw Error("projective point not allowed");let B=(F)=>Q.eql(F,Q.ZERO);if(B(H)&&B(S))return w.ZERO;return new w(H,S,Q.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(N){let H=YX(Q,N.map((S)=>S.pz));return N.map((S,B)=>S.toAffine(H[B])).map(w.fromAffine)}static fromHex(N){let H=w.fromAffine(Z(E$("pointHex",N)));return H.assertValidity(),H}static fromPrivateKey(N){return w.BASE.multiply(M(N))}static msm(N,H){return j6(w,X,N,H)}_setWindowSize(N){C.setWindowSize(this,N)}assertValidity(){z(this)}hasEvenY(){let{y:N}=this.toAffine();if(Q.isOdd)return!Q.isOdd(N);throw Error("Field doesn't support isOdd")}equals(N){D(N);let{px:H,py:S,pz:B}=this,{px:F,py:I,pz:P}=N,j=Q.eql(Q.mul(H,P),Q.mul(F,B)),y=Q.eql(Q.mul(S,P),Q.mul(I,B));return j&&y}negate(){return new w(this.px,Q.neg(this.py),this.pz)}double(){let{a:N,b:H}=J,S=Q.mul(H,zY),{px:B,py:F,pz:I}=this,P=Q.ZERO,j=Q.ZERO,y=Q.ZERO,x=Q.mul(B,B),b=Q.mul(F,F),g=Q.mul(I,I),_=Q.mul(B,F);return _=Q.add(_,_),y=Q.mul(B,I),y=Q.add(y,y),P=Q.mul(N,y),j=Q.mul(S,g),j=Q.add(P,j),P=Q.sub(b,j),j=Q.add(b,j),j=Q.mul(P,j),P=Q.mul(_,P),y=Q.mul(S,y),g=Q.mul(N,g),_=Q.sub(x,g),_=Q.mul(N,_),_=Q.add(_,y),y=Q.add(x,x),x=Q.add(y,x),x=Q.add(x,g),x=Q.mul(x,_),j=Q.add(j,x),g=Q.mul(F,I),g=Q.add(g,g),x=Q.mul(g,_),P=Q.sub(P,x),y=Q.mul(g,b),y=Q.add(y,y),y=Q.add(y,y),new w(P,j,y)}add(N){D(N);let{px:H,py:S,pz:B}=this,{px:F,py:I,pz:P}=N,j=Q.ZERO,y=Q.ZERO,x=Q.ZERO,b=J.a,g=Q.mul(J.b,zY),_=Q.mul(H,F),f=Q.mul(S,I),d=Q.mul(B,P),k=Q.add(H,S),v=Q.add(F,I);k=Q.mul(k,v),v=Q.add(_,f),k=Q.sub(k,v),v=Q.add(H,B);let u=Q.add(F,P);return v=Q.mul(v,u),u=Q.add(_,d),v=Q.sub(v,u),u=Q.add(S,B),j=Q.add(I,P),u=Q.mul(u,j),j=Q.add(f,d),u=Q.sub(u,j),x=Q.mul(b,v),j=Q.mul(g,d),x=Q.add(j,x),j=Q.sub(f,x),x=Q.add(f,x),y=Q.mul(j,x),f=Q.add(_,_),f=Q.add(f,_),d=Q.mul(b,d),v=Q.mul(g,v),f=Q.add(f,d),d=Q.sub(_,d),d=Q.mul(b,d),v=Q.add(v,d),_=Q.mul(f,v),y=Q.add(y,_),_=Q.mul(u,v),j=Q.mul(k,j),j=Q.sub(j,_),_=Q.mul(k,f),x=Q.mul(u,x),x=Q.add(x,_),new w(j,y,x)}subtract(N){return this.add(N.negate())}is0(){return this.equals(w.ZERO)}wNAF(N){return C.wNAFCached(this,N,w.normalizeZ)}multiplyUnsafe(N){let{endo:H,n:S}=J;hJ("scalar",N,u0,S);let B=w.ZERO;if(N===u0)return B;if(this.is0()||N===G$)return this;if(!H||C.hasPrecomputes(this))return C.wNAFCachedUnsafe(this,N,w.normalizeZ);let{k1neg:F,k1:I,k2neg:P,k2:j}=H.splitScalar(N),y=B,x=B,b=this;while(I>u0||j>u0){if(I&G$)y=y.add(b);if(j&G$)x=x.add(b);b=b.double(),I>>=G$,j>>=G$}if(F)y=y.negate();if(P)x=x.negate();return x=new w(Q.mul(x.px,H.beta),x.py,x.pz),y.add(x)}multiply(N){let{endo:H,n:S}=J;hJ("scalar",N,G$,S);let B,F;if(H){let{k1neg:I,k1:P,k2neg:j,k2:y}=H.splitScalar(N),{p:x,f:b}=this.wNAF(P),{p:g,f:_}=this.wNAF(y);x=C.constTimeNegate(I,x),g=C.constTimeNegate(j,g),g=new w(Q.mul(g.px,H.beta),g.py,g.pz),B=x.add(g),F=b.add(_)}else{let{p:I,f:P}=this.wNAF(N);B=I,F=P}return w.normalizeZ([B,F])[0]}multiplyAndAddUnsafe(N,H,S){let B=w.BASE,F=(P,j)=>j===u0||j===G$||!P.equals(B)?P.multiplyUnsafe(j):P.multiply(j),I=F(this,H).add(F(N,S));return I.is0()?void 0:I}toAffine(N){return U(this,N)}isTorsionFree(){let{h:N,isTorsionFree:H}=J;if(N===G$)return!0;if(H)return H(w,this);throw Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:N,clearCofactor:H}=J;if(N===G$)return this;if(H)return H(w,this);return this.multiplyUnsafe(J.h)}toRawBytes(N=!0){return JX("isCompressed",N),this.assertValidity(),Y(w,this,N)}toHex(N=!0){return JX("isCompressed",N),QX(this.toRawBytes(N))}}w.BASE=new w(J.Gx,J.Gy,Q.ONE),w.ZERO=new w(Q.ZERO,Q.ONE,Q.ZERO);let{endo:L,nBitLength:O}=J,C=E6(w,L?Math.ceil(O/2):O);return{CURVE:J,ProjectivePoint:w,normPrivateKeyToScalar:M,weierstrassEquation:G,isWithinCurveOrder:V}}function PU($){let J=J7($);return gJ(J,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...J})}function A6($){let J=PU($),{Fp:Q,n:X,nByteLength:Y,nBitLength:Z}=J,G=Q.BYTES+1,W=2*Q.BYTES+1;function K(_){return B$(_,X)}function q(_){return Q1(_,X)}let{ProjectivePoint:V,normPrivateKeyToScalar:M,weierstrassEquation:D,isWithinCurveOrder:U}=AU({...J,toBytes(_,f,d){let k=f.toAffine(),v=Q.toBytes(k.x),u=$0;if(JX("isCompressed",d),d)return u(Uint8Array.from([f.hasEvenY()?2:3]),v);else return u(Uint8Array.from([4]),v,Q.toBytes(k.y))},fromBytes(_){let f=_.length,d=_[0],k=_.subarray(1);if(f===G&&(d===2||d===3)){let v=w0(k);if(!i8(v,G$,Q.ORDER))throw Error("Point is not on curve");let u=D(v),X$;try{X$=Q.sqrt(u)}catch(O$){let _$=O$ instanceof Error?": "+O$.message:"";throw Error("Point is not on curve"+_$)}let c=(X$&G$)===G$;if((d&1)===1!==c)X$=Q.neg(X$);return{x:v,y:X$}}else if(f===W&&d===4){let v=Q.fromBytes(k.subarray(0,Q.BYTES)),u=Q.fromBytes(k.subarray(Q.BYTES,2*Q.BYTES));return{x:v,y:u}}else{let v=G,u=W;throw Error("invalid Point, expected length of "+v+", or uncompressed "+u+", got "+f)}}});function z(_){let f=X>>G$;return _>f}function w(_){return z(_)?K(-_):_}let L=(_,f,d)=>w0(_.slice(f,d));class O{constructor(_,f,d){if(hJ("r",_,G$,X),hJ("s",f,G$,X),this.r=_,this.s=f,d!=null)this.recovery=d;Object.freeze(this)}static fromCompact(_){let f=Y;return _=E$("compactSignature",_,f*2),new O(L(_,0,f),L(_,f,2*f))}static fromDER(_){let{r:f,s:d}=dJ.toSig(E$("DER",_));return new O(f,d)}assertValidity(){}addRecoveryBit(_){return new O(this.r,this.s,_)}recoverPublicKey(_){let{r:f,s:d,recovery:k}=this,v=F(E$("msgHash",_));if(k==null||![0,1,2,3].includes(k))throw Error("recovery id invalid");let u=k===2||k===3?f+J.n:f;if(u>=Q.ORDER)throw Error("recovery id 2 or 3 invalid");let X$=(k&1)===0?"02":"03",c=V.fromHex(X$+Q7(u,Q.BYTES)),I$=q(u),O$=K(-v*I$),_$=K(d*I$),t0=V.BASE.multiplyAndAddUnsafe(c,O$,_$);if(!t0)throw Error("point at infinify");return t0.assertValidity(),t0}hasHighS(){return z(this.s)}normalizeS(){return this.hasHighS()?new O(this.r,K(-this.s),this.recovery):this}toDERRawBytes(){return UY(this.toDERHex())}toDERHex(){return dJ.hexFromSig(this)}toCompactRawBytes(){return UY(this.toCompactHex())}toCompactHex(){let _=Y;return Q7(this.r,_)+Q7(this.s,_)}}let C={isValidPrivateKey(_){try{return M(_),!0}catch(f){return!1}},normPrivateKeyToScalar:M,randomPrivateKey:()=>{let _=sZ(J.n);return C6(J.randomBytes(_),J.n)},precompute(_=8,f=V.BASE){return f._setWindowSize(_),f.multiply(BigInt(3)),f}};function N(_,f=!0){return V.fromPrivateKey(_).toRawBytes(f)}function H(_){if(typeof _==="bigint")return!1;if(_ instanceof V)return!0;let d=E$("key",_).length,k=Q.BYTES,v=k+1,u=2*k+1;if(J.allowedPrivateKeyLengths||Y===v)return;else return d===v||d===u}function S(_,f,d=!0){if(H(_)===!0)throw Error("first arg must be private key");if(H(f)===!1)throw Error("second arg must be public key");return V.fromHex(f).multiply(M(_)).toRawBytes(d)}let B=J.bits2int||function(_){if(_.length>8192)throw Error("input is too large");let f=w0(_),d=_.length*8-Z;return d>0?f>>BigInt(d):f},F=J.bits2int_modN||function(_){return K(B(_))},I=s8(Z);function P(_){return hJ("num < 2^"+Z,_,u0,I),qJ(_,Y)}function j(_,f,d=y){if(["recovered","canonical"].some((A8)=>(A8 in d)))throw Error("sign() legacy options not supported");let{hash:k,randomBytes:v}=J,{lowS:u,prehash:X$,extraEntropy:c}=d;if(u==null)u=!0;if(_=E$("msgHash",_),_6(d),X$)_=E$("prehashed msgHash",k(_));let I$=F(_),O$=M(f),_$=[P(O$),P(I$)];if(c!=null&&c!==!1){let A8=c===!0?v(Q.BYTES):c;_$.push(E$("extraEntropy",A8))}let t0=$0(..._$),CJ=I$;function E5(A8){let RQ=B(A8);if(!U(RQ))return;let j5=q(RQ),dX=V.BASE.multiply(RQ).toAffine(),P8=K(dX.x);if(P8===u0)return;let mX=K(j5*K(CJ+P8*O$));if(mX===u0)return;let BQ=(dX.x===P8?0:2)|Number(dX.y&G$),qW=mX;if(u&&z(mX))qW=w(mX),BQ^=1;return new O(P8,qW,BQ)}return{seed:t0,k2sig:E5}}let y={lowS:J.lowS,prehash:!1},x={lowS:J.lowS,prehash:!1};function b(_,f,d=y){let{seed:k,k2sig:v}=j(_,f,d),u=J;return U6(u.hash.outputLen,u.nByteLength,u.hmac)(k,v)}V.BASE._setWindowSize(8);function g(_,f,d,k=x){let v=_;f=E$("msgHash",f),d=E$("publicKey",d);let{lowS:u,prehash:X$,format:c}=k;if(_6(k),"strict"in k)throw Error("options.strict was renamed to lowS");if(c!==void 0&&c!=="compact"&&c!=="der")throw Error("format must be compact or der");let I$=typeof v==="string"||$X(v),O$=!I$&&!c&&typeof v==="object"&&v!==null&&typeof v.r==="bigint"&&typeof v.s==="bigint";if(!I$&&!O$)throw Error("invalid signature, expected Uint8Array, hex string or Signature instance");let _$=void 0,t0;try{if(O$)_$=new O(v.r,v.s);if(I$){try{if(c!=="compact")_$=O.fromDER(v)}catch(BQ){if(!(BQ instanceof dJ.Err))throw BQ}if(!_$&&c!=="der")_$=O.fromCompact(v)}t0=V.fromHex(d)}catch(BQ){return!1}if(!_$)return!1;if(u&&_$.hasHighS())return!1;if(X$)f=J.hash(f);let{r:CJ,s:E5}=_$,A8=F(f),RQ=q(E5),j5=K(A8*RQ),dX=K(CJ*RQ),P8=V.BASE.multiplyAndAddUnsafe(t0,j5,dX)?.toAffine();if(!P8)return!1;return K(P8.x)===CJ}return{CURVE:J,getPublicKey:N,getSharedSecret:S,sign:b,verify:g,ProjectivePoint:V,Signature:O,utils:C}}function xU($,J){let Q=$.ORDER,X=u0;for(let z=Q-G$;z%D8===u0;z/=D8)X+=G$;let Y=X,Z=D8<<Y-G$-G$,G=Z*D8,W=(Q-G$)/G,K=(W-G$)/D8,q=G-G$,V=Z,M=$.pow(J,W),D=$.pow(J,(W+G$)/D8),U=(z,w)=>{let L=M,O=$.pow(w,q),C=$.sqr(O);C=$.mul(C,w);let N=$.mul(z,C);N=$.pow(N,K),N=$.mul(N,O),O=$.mul(N,w),C=$.mul(N,z);let H=$.mul(C,O);N=$.pow(H,V);let S=$.eql(N,$.ONE);O=$.mul(C,D),N=$.mul(H,L),C=$.cmov(O,C,S),H=$.cmov(N,H,S);for(let B=Y;B>G$;B--){let F=B-D8;F=D8<<F-G$;let I=$.pow(H,F),P=$.eql(I,$.ONE);O=$.mul(C,L),L=$.mul(L,L),I=$.mul(H,L),C=$.cmov(O,C,P),H=$.cmov(I,H,P)}return{isValid:S,value:C}};if($.ORDER%X7===zY){let z=($.ORDER-zY)/X7,w=$.sqrt($.neg(J));U=(L,O)=>{let C=$.sqr(O),N=$.mul(L,O);C=$.mul(C,N);let H=$.pow(C,z);H=$.mul(H,N);let S=$.mul(H,w),B=$.mul($.sqr(H),O),F=$.eql(B,L),I=$.cmov(S,H,F);return{isValid:F,value:I}}}return U}function P6($,J){if(X1($),!$.isValid(J.A)||!$.isValid(J.B)||!$.isValid(J.Z))throw Error("mapToCurveSimpleSWU: invalid opts");let Q=xU($,J.Z);if(!$.isOdd)throw Error("Fp.isOdd is not implemented!");return(X)=>{let Y,Z,G,W,K,q,V,M;Y=$.sqr(X),Y=$.mul(Y,J.Z),Z=$.sqr(Y),Z=$.add(Z,Y),G=$.add(Z,$.ONE),G=$.mul(G,J.B),W=$.cmov(J.Z,$.neg(Z),!$.eql(Z,$.ZERO)),W=$.mul(W,J.A),Z=$.sqr(G),q=$.sqr(W),K=$.mul(q,J.A),Z=$.add(Z,K),Z=$.mul(Z,G),q=$.mul(q,W),K=$.mul(q,J.B),Z=$.add(Z,K),V=$.mul(Y,G);let{isValid:D,value:U}=Q(Z,q);M=$.mul(Y,X),M=$.mul(M,U),V=$.cmov(V,G,D),M=$.cmov(M,U,D);let z=$.isOdd(X)===$.isOdd(M);M=$.cmov($.neg(M),M,z);let w=YX($,[W],!0)[0];return V=$.mul(V,w),{x:V,y:M}}}var T6,dJ,u0,G$,D8,zY,X7;var Y7=T(()=>{I6();wY();XX();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */T6=class T6 extends Error{constructor($=""){super($)}};dJ={Err:T6,_tlv:{encode:($,J)=>{let{Err:Q}=dJ;if($<0||$>256)throw new Q("tlv.encode: wrong tag");if(J.length&1)throw new Q("tlv.encode: unpadded data");let X=J.length/2,Y=DY(X);if(Y.length/2&128)throw new Q("tlv.encode: long form length too big");let Z=X>127?DY(Y.length/2|128):"";return DY($)+Z+Y+J},decode($,J){let{Err:Q}=dJ,X=0;if($<0||$>256)throw new Q("tlv.encode: wrong tag");if(J.length<2||J[X++]!==$)throw new Q("tlv.decode: wrong tlv");let Y=J[X++],Z=!!(Y&128),G=0;if(!Z)G=Y;else{let K=Y&127;if(!K)throw new Q("tlv.decode(long): indefinite length not supported");if(K>4)throw new Q("tlv.decode(long): byte length is too big");let q=J.subarray(X,X+K);if(q.length!==K)throw new Q("tlv.decode: length bytes not complete");if(q[0]===0)throw new Q("tlv.decode(long): zero leftmost byte");for(let V of q)G=G<<8|V;if(X+=K,G<128)throw new Q("tlv.decode(long): not minimal encoding")}let W=J.subarray(X,X+G);if(W.length!==G)throw new Q("tlv.decode: wrong value length");return{v:W,l:J.subarray(X+G)}}},_int:{encode($){let{Err:J}=dJ;if($<u0)throw new J("integer: negative integers are not allowed");let Q=DY($);if(Number.parseInt(Q[0],16)&8)Q="00"+Q;if(Q.length&1)throw new J("unexpected DER parsing assertion: unpadded hex");return Q},decode($){let{Err:J}=dJ;if($[0]&128)throw new J("invalid signature integer: negative");if($[0]===0&&!($[1]&128))throw new J("invalid signature integer: unnecessary leading zero");return w0($)}},toSig($){let{Err:J,_int:Q,_tlv:X}=dJ,Y=E$("signature",$),{v:Z,l:G}=X.decode(48,Y);if(G.length)throw new J("invalid signature: left bytes after parsing");let{v:W,l:K}=X.decode(2,Z),{v:q,l:V}=X.decode(2,K);if(V.length)throw new J("invalid signature: left bytes after parsing");return{r:Q.decode(W),s:Q.decode(q)}},hexFromSig($){let{_tlv:J,_int:Q}=dJ,X=J.encode(2,Q.encode($.r)),Y=J.encode(2,Q.encode($.s)),Z=X+Y;return J.encode(48,Z)}};u0=BigInt(0),G$=BigInt(1),D8=BigInt(2),zY=BigInt(3),X7=BigInt(4)});function kU($){return{hash:$,hmac:(J,...Q)=>dZ($,J,B4(...Q)),randomBytes:b9}}function x6($,J){let Q=(X)=>A6({...$,...kU(X)});return{...Q(J),create:Q}}var k6=T(()=>{W6();J8();Y7();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */});function U8($,J){if(HY($),HY(J),$<0||$>=1<<8*J)throw Error("invalid I2OSP input: "+$);let Q=Array.from({length:J}).fill(0);for(let X=J-1;X>=0;X--)Q[X]=$&255,$>>>=8;return new Uint8Array(Q)}function yU($,J){let Q=new Uint8Array($.length);for(let X=0;X<$.length;X++)Q[X]=$[X]^J[X];return Q}function HY($){if(!Number.isSafeInteger($))throw Error("number expected")}function vU($,J,Q,X){if(bJ($),bJ(J),HY(Q),J.length>255)J=X($0(J1("H2C-OVERSIZE-DST-"),J));let{outputLen:Y,blockLen:Z}=X,G=Math.ceil(Q/Y);if(Q>65535||G>255)throw Error("expand_message_xmd: invalid lenInBytes");let W=$0(J,U8(J.length,1)),K=U8(0,Z),q=U8(Q,2),V=Array(G),M=X($0(K,$,q,U8(0,1),W));V[0]=X($0(M,U8(1,1),W));for(let U=1;U<=G;U++){let z=[yU(M,V[U-1]),U8(U+1,1),W];V[U]=X($0(...z))}return $0(...V).slice(0,Q)}function bU($,J,Q,X,Y){if(bJ($),bJ(J),HY(Q),J.length>255){let Z=Math.ceil(2*X/8);J=Y.create({dkLen:Z}).update(J1("H2C-OVERSIZE-DST-")).update(J).digest()}if(Q>65535||J.length>255)throw Error("expand_message_xof: invalid lenInBytes");return Y.create({dkLen:Q}).update($).update(U8(Q,2)).update(J).update(U8(J.length,1)).digest()}function f6($,J,Q){gJ(Q,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:X,k:Y,m:Z,hash:G,expand:W,DST:K}=Q;bJ($),HY(J);let q=typeof K==="string"?J1(K):K,V=X.toString(2).length,M=Math.ceil((V+Y)/8),D=J*Z*M,U;if(W==="xmd")U=vU($,q,D,G);else if(W==="xof")U=bU($,q,D,Y,G);else if(W==="_internal_pass")U=$;else throw Error('expand must be "xmd" or "xof"');let z=Array(J);for(let w=0;w<J;w++){let L=Array(Z);for(let O=0;O<Z;O++){let C=M*(O+w*Z),N=U.subarray(C,C+M);L[O]=B$(fU(N),X)}z[w]=L}return z}function y6($,J){let Q=J.map((X)=>Array.from(X).reverse());return(X,Y)=>{let[Z,G,W,K]=Q.map((M)=>M.reduce((D,U)=>$.add($.mul(D,X),U))),[q,V]=YX($,[G,K],!0);return X=$.mul(Z,q),Y=$.mul(Y,$.mul(W,V)),{x:X,y:Y}}}function v6($,J,Q){if(typeof J!=="function")throw Error("mapToCurve() must be defined");function X(Z){return $.fromAffine(J(Z))}function Y(Z){let G=Z.clearCofactor();if(G.equals($.ZERO))return $.ZERO;return G.assertValidity(),G}return{defaults:Q,hashToCurve(Z,G){let W=f6(Z,2,{...Q,DST:Q.DST,...G}),K=X(W[0]),q=X(W[1]);return Y(K.add(q))},encodeToCurve(Z,G){let W=f6(Z,1,{...Q,DST:Q.encodeDST,...G});return Y(X(W[0]))},mapToCurve(Z){if(!Array.isArray(Z))throw Error("expected array of bigints");for(let G of Z)if(typeof G!=="bigint")throw Error("expected array of bigints");return Y(X(Z))}}}var fU;var b6=T(()=>{wY();XX();fU=w0});var l6={};Y9(l6,{secp256k1_hasher:()=>M7,secp256k1:()=>Q0,schnorr:()=>mU,hashToCurve:()=>lU,encodeToCurve:()=>cU});function d6($){let J=CY,Q=BigInt(3),X=BigInt(6),Y=BigInt(11),Z=BigInt(22),G=BigInt(23),W=BigInt(44),K=BigInt(88),q=$*$*$%J,V=q*q*$%J,M=B0(V,Q,J)*V%J,D=B0(M,Q,J)*V%J,U=B0(D,Z1,J)*q%J,z=B0(U,Y,J)*U%J,w=B0(z,Z,J)*z%J,L=B0(w,W,J)*w%J,O=B0(L,K,J)*L%J,C=B0(O,W,J)*w%J,N=B0(C,Q,J)*V%J,H=B0(N,G,J)*z%J,S=B0(H,X,J)*q%J,B=B0(S,Z1,J);if(!N8.eql(N8.sqr(B),$))throw Error("Cannot find square root");return B}function G1($,...J){let Q=g6[$];if(Q===void 0){let X=o8(Uint8Array.from($,(Y)=>Y.charCodeAt(0)));Q=$0(X,X),g6[$]=Q}return o8($0(Q,...J))}function W7($){let J=Q0.utils.normPrivateKeyToScalar($),Q=V7.fromPrivateKey(J);return{scalar:Q.hasEvenY()?J:LY(-J),bytes:q7(Q)}}function m6($){hJ("x",$,OY,CY);let J=Z7($*$),Q=Z7(J*$+BigInt(7)),X=d6(Q);if(X%Z1!==K7)X=Z7(-X);let Y=new V7($,X,OY);return Y.assertValidity(),Y}function u6(...$){return LY(ZX(G1("BIP0340/challenge",...$)))}function gU($){return W7($).bytes}function dU($,J,Q=b9(32)){let X=E$("message",$),{bytes:Y,scalar:Z}=W7(J),G=E$("auxRand",Q,32),W=G7(Z^ZX(G1("BIP0340/aux",G))),K=G1("BIP0340/nonce",W,Y,X),q=LY(ZX(K));if(q===K7)throw Error("sign failed: k is zero");let{bytes:V,scalar:M}=W7(q),D=u6(V,Y,X),U=new Uint8Array(64);if(U.set(V,0),U.set(G7(LY(M+D*Z)),32),!p6(U,X,Y))throw Error("sign: Invalid signature produced");return U}function p6($,J,Q){let X=E$("signature",$,64),Y=E$("message",J),Z=E$("publicKey",Q,32);try{let G=m6(ZX(Z)),W=ZX(X.subarray(0,32));if(!i8(W,OY,CY))return!1;let K=ZX(X.subarray(32,64));if(!i8(K,OY,Y1))return!1;let q=u6(G7(W),q7(G),Y),V=hU(G,K,LY(-q));if(!V||!V.hasEvenY()||V.toAffine().x!==W)return!1;return!0}catch(G){return!1}}var CY,Y1,K7,OY,Z1,h6=($,J)=>($+J/Z1)/J,N8,Q0,g6,q7=($)=>$.toRawBytes(!0).slice(1),G7=($)=>qJ($,32),Z7=($)=>B$($,CY),LY=($)=>B$($,Y1),V7,hU=($,J,Q)=>V7.BASE.multiplyAndAddUnsafe($,J,Q),ZX,mU,uU,pU,M7,lU,cU;var t8=T(()=>{hZ();J8();k6();b6();wY();XX();Y7();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */CY=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Y1=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),K7=BigInt(0),OY=BigInt(1),Z1=BigInt(2);N8=NY(CY,void 0,void 0,{sqrt:d6}),Q0=x6({a:K7,b:BigInt(7),Fp:N8,n:Y1,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:($)=>{let J=Y1,Q=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),X=-OY*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),Y=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),Z=Q,G=BigInt("0x100000000000000000000000000000000"),W=h6(Z*$,J),K=h6(-X*$,J),q=B$($-W*Q-K*Y,J),V=B$(-W*X-K*Z,J),M=q>G,D=V>G;if(M)q=J-q;if(D)V=J-V;if(q>G||V>G)throw Error("splitScalar: Endomorphism failed, k="+$);return{k1neg:M,k1:q,k2neg:D,k2:V}}}},o8),g6={};V7=(()=>Q0.ProjectivePoint)();ZX=w0;mU=(()=>({getPublicKey:gU,sign:dU,verify:p6,utils:{randomPrivateKey:Q0.utils.randomPrivateKey,lift_x:m6,pointToBytes:q7,numberToBytesBE:qJ,bytesToNumberBE:w0,taggedHash:G1,mod:B$}}))(),uU=(()=>y6(N8,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(($)=>$.map((J)=>BigInt(J)))))(),pU=(()=>P6(N8,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:N8.create(BigInt("-11"))}))(),M7=(()=>v6(Q0.ProjectivePoint,($)=>{let{x:J,y:Q}=pU(N8.create($[0]));return uU(J,Q)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:N8.ORDER,m:1,k:128,expand:"xmd",hash:o8}))(),lU=(()=>M7.hashToCurve)(),cU=(()=>M7.encodeToCurve)()});var VJ,l0,SY,RY,BY,FY,EY,jY,IY,_Y,mJ,c0;var uJ=T(()=>{yQ();l();VJ=class VJ extends R{constructor({cause:$,message:J}={}){let Q=J?.replace("execution reverted: ","")?.replace("execution reverted","");super(`Execution reverted ${Q?`with reason: ${Q}`:"for an unknown reason"}.`,{cause:$,name:"ExecutionRevertedError"})}};Object.defineProperty(VJ,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(VJ,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});l0=class l0 extends R{constructor({cause:$,maxFeePerGas:J}={}){super(`The fee cap (\`maxFeePerGas\`${J?` = ${f$(J)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:$,name:"FeeCapTooHighError"})}};Object.defineProperty(l0,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});SY=class SY extends R{constructor({cause:$,maxFeePerGas:J}={}){super(`The fee cap (\`maxFeePerGas\`${J?` = ${f$(J)}`:""} gwei) cannot be lower than the block base fee.`,{cause:$,name:"FeeCapTooLowError"})}};Object.defineProperty(SY,"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/});RY=class RY extends R{constructor({cause:$,nonce:J}={}){super(`Nonce provided for the transaction ${J?`(${J}) `:""}is higher than the next one expected.`,{cause:$,name:"NonceTooHighError"})}};Object.defineProperty(RY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});BY=class BY extends R{constructor({cause:$,nonce:J}={}){super([`Nonce provided for the transaction ${J?`(${J}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
60
- `),{cause:$,name:"NonceTooLowError"})}};Object.defineProperty(BY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});FY=class FY extends R{constructor({cause:$,nonce:J}={}){super(`Nonce provided for the transaction ${J?`(${J}) `:""}exceeds the maximum allowed nonce.`,{cause:$,name:"NonceMaxValueError"})}};Object.defineProperty(FY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});EY=class EY extends R{constructor({cause:$}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
61
- `),{cause:$,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(EY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});jY=class jY extends R{constructor({cause:$,gas:J}={}){super(`The amount of gas ${J?`(${J}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:$,name:"IntrinsicGasTooHighError"})}};Object.defineProperty(jY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});IY=class IY extends R{constructor({cause:$,gas:J}={}){super(`The amount of gas ${J?`(${J}) `:""}provided for the transaction is too low.`,{cause:$,name:"IntrinsicGasTooLowError"})}};Object.defineProperty(IY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});_Y=class _Y extends R{constructor({cause:$}){super("The transaction type is not supported for this chain.",{cause:$,name:"TransactionTypeNotSupportedError"})}};Object.defineProperty(_Y,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});mJ=class mJ extends R{constructor({cause:$,maxPriorityFeePerGas:J,maxFeePerGas:Q}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${J?` = ${f$(J)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${Q?` = ${f$(Q)} gwei`:""}).`].join(`
62
- `),{cause:$,name:"TipAboveFeeCapError"})}};Object.defineProperty(mJ,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});c0=class c0 extends R{constructor({cause:$}){super(`An error occurred while executing: ${$?.shortMessage}`,{cause:$,name:"UnknownNodeError"})}}});function z8($,J){let Q=($.details||"").toLowerCase(),X=$ instanceof R?$.walk((Y)=>Y?.code===VJ.code):$;if(X instanceof R)return new VJ({cause:$,message:X.details});if(VJ.nodeMessage.test(Q))return new VJ({cause:$,message:$.details});if(l0.nodeMessage.test(Q))return new l0({cause:$,maxFeePerGas:J?.maxFeePerGas});if(SY.nodeMessage.test(Q))return new SY({cause:$,maxFeePerGas:J?.maxFeePerGas});if(RY.nodeMessage.test(Q))return new RY({cause:$,nonce:J?.nonce});if(BY.nodeMessage.test(Q))return new BY({cause:$,nonce:J?.nonce});if(FY.nodeMessage.test(Q))return new FY({cause:$,nonce:J?.nonce});if(EY.nodeMessage.test(Q))return new EY({cause:$});if(jY.nodeMessage.test(Q))return new jY({cause:$,gas:J?.gas});if(IY.nodeMessage.test(Q))return new IY({cause:$,gas:J?.gas});if(_Y.nodeMessage.test(Q))return new _Y({cause:$});if(mJ.nodeMessage.test(Q))return new mJ({cause:$,maxFeePerGas:J?.maxFeePerGas,maxPriorityFeePerGas:J?.maxPriorityFeePerGas});return new c0({cause:$})}var TY=T(()=>{l();uJ()});function A0($,{format:J}){if(!J)return{};let Q={};function X(Z){let G=Object.keys(Z);for(let W of G){if(W in $)Q[W]=$[W];if(Z[W]&&typeof Z[W]==="object"&&!Array.isArray(Z[W]))X(Z[W])}}let Y=J($||{});return X(Y),Q}function GX($,J){return({exclude:Q,format:X})=>{return{exclude:Q,format:(Y,Z)=>{let G=J(Y,Z);if(Q)for(let W of Q)delete G[W];return{...G,...X(Y,Z)}},type:$}}}function n$($,J){let Q={};if(typeof $.authorizationList<"u")Q.authorizationList=sU($.authorizationList);if(typeof $.accessList<"u")Q.accessList=$.accessList;if(typeof $.blobVersionedHashes<"u")Q.blobVersionedHashes=$.blobVersionedHashes;if(typeof $.blobs<"u")if(typeof $.blobs[0]!=="string")Q.blobs=$.blobs.map((X)=>i(X));else Q.blobs=$.blobs;if(typeof $.data<"u")Q.data=$.data;if($.account)Q.from=$.account.address;if(typeof $.from<"u")Q.from=$.from;if(typeof $.gas<"u")Q.gas=E($.gas);if(typeof $.gasPrice<"u")Q.gasPrice=E($.gasPrice);if(typeof $.maxFeePerBlobGas<"u")Q.maxFeePerBlobGas=E($.maxFeePerBlobGas);if(typeof $.maxFeePerGas<"u")Q.maxFeePerGas=E($.maxFeePerGas);if(typeof $.maxPriorityFeePerGas<"u")Q.maxPriorityFeePerGas=E($.maxPriorityFeePerGas);if(typeof $.nonce<"u")Q.nonce=E($.nonce);if(typeof $.to<"u")Q.to=$.to;if(typeof $.type<"u")Q.type=iU[$.type];if(typeof $.value<"u")Q.value=E($.value);return Q}function sU($){return $.map((J)=>({address:J.address,r:J.r?E(BigInt(J.r)):J.r,s:J.s?E(BigInt(J.s)):J.s,chainId:E(J.chainId),nonce:E(J.nonce),...typeof J.yParity<"u"?{yParity:E(J.yParity)}:{},...typeof J.v<"u"&&typeof J.yParity>"u"?{v:E(J.v)}:{}}))}var iU;var pJ=T(()=>{m();iU={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"}});function r6($){if(!$||$.length===0)return;return $.reduce((J,{slot:Q,value:X})=>{if(Q.length!==66)throw new P9({size:Q.length,targetSize:66,type:"hex"});if(X.length!==66)throw new P9({size:X.length,targetSize:66,type:"hex"});return J[Q]=X,J},{})}function rU($){let{balance:J,nonce:Q,state:X,stateDiff:Y,code:Z}=$,G={};if(Z!==void 0)G.code=Z;if(J!==void 0)G.balance=E(J);if(Q!==void 0)G.nonce=E(Q);if(X!==void 0)G.state=r6(X);if(Y!==void 0){if(G.state)throw new jZ;G.stateDiff=r6(Y)}return G}function WX($){if(!$)return;let J={};for(let{address:Q,...X}of $){if(!s(Q,{strict:!1}))throw new Y$({address:Q});if(J[Q])throw new EZ({address:Q});J[Q]=rU(X)}return J}var q1=T(()=>{I0();x9();IZ();M0();m()});var tU,aU,eU,$N,JN,QN,XN,YN,ZN,GN,WN,KN,qN,VN,MN,DN,UN,NN,wN,zN,HN,ON,LN,CN,SN,RN,BN,FN,EN,jN,IN,_N,TN,AN,PN,xN,kN,fN,yN,vN,bN,hN,gN,dN,mN,uN,pN,lN,cN,nN,oN,iN,sN,rN,tN,aN,eN,$3,J3,Q3,X3,Y3,Z3,G3,W3,K3,q3,V3,M3,D3,U3,N3,w3,z3,H3,O3,L3,C3,S3,R3,B3,F3,E3,j3,I3,_3,T3,A3,P3,x3,k3,f3,y3,v3,b3,lJ;var V1=T(()=>{tU=2n**(8n-1n)-1n,aU=2n**(16n-1n)-1n,eU=2n**(24n-1n)-1n,$N=2n**(32n-1n)-1n,JN=2n**(40n-1n)-1n,QN=2n**(48n-1n)-1n,XN=2n**(56n-1n)-1n,YN=2n**(64n-1n)-1n,ZN=2n**(72n-1n)-1n,GN=2n**(80n-1n)-1n,WN=2n**(88n-1n)-1n,KN=2n**(96n-1n)-1n,qN=2n**(104n-1n)-1n,VN=2n**(112n-1n)-1n,MN=2n**(120n-1n)-1n,DN=2n**(128n-1n)-1n,UN=2n**(136n-1n)-1n,NN=2n**(144n-1n)-1n,wN=2n**(152n-1n)-1n,zN=2n**(160n-1n)-1n,HN=2n**(168n-1n)-1n,ON=2n**(176n-1n)-1n,LN=2n**(184n-1n)-1n,CN=2n**(192n-1n)-1n,SN=2n**(200n-1n)-1n,RN=2n**(208n-1n)-1n,BN=2n**(216n-1n)-1n,FN=2n**(224n-1n)-1n,EN=2n**(232n-1n)-1n,jN=2n**(240n-1n)-1n,IN=2n**(248n-1n)-1n,_N=2n**(256n-1n)-1n,TN=-(2n**(8n-1n)),AN=-(2n**(16n-1n)),PN=-(2n**(24n-1n)),xN=-(2n**(32n-1n)),kN=-(2n**(40n-1n)),fN=-(2n**(48n-1n)),yN=-(2n**(56n-1n)),vN=-(2n**(64n-1n)),bN=-(2n**(72n-1n)),hN=-(2n**(80n-1n)),gN=-(2n**(88n-1n)),dN=-(2n**(96n-1n)),mN=-(2n**(104n-1n)),uN=-(2n**(112n-1n)),pN=-(2n**(120n-1n)),lN=-(2n**(128n-1n)),cN=-(2n**(136n-1n)),nN=-(2n**(144n-1n)),oN=-(2n**(152n-1n)),iN=-(2n**(160n-1n)),sN=-(2n**(168n-1n)),rN=-(2n**(176n-1n)),tN=-(2n**(184n-1n)),aN=-(2n**(192n-1n)),eN=-(2n**(200n-1n)),$3=-(2n**(208n-1n)),J3=-(2n**(216n-1n)),Q3=-(2n**(224n-1n)),X3=-(2n**(232n-1n)),Y3=-(2n**(240n-1n)),Z3=-(2n**(248n-1n)),G3=-(2n**(256n-1n)),W3=2n**8n-1n,K3=2n**16n-1n,q3=2n**24n-1n,V3=2n**32n-1n,M3=2n**40n-1n,D3=2n**48n-1n,U3=2n**56n-1n,N3=2n**64n-1n,w3=2n**72n-1n,z3=2n**80n-1n,H3=2n**88n-1n,O3=2n**96n-1n,L3=2n**104n-1n,C3=2n**112n-1n,S3=2n**120n-1n,R3=2n**128n-1n,B3=2n**136n-1n,F3=2n**144n-1n,E3=2n**152n-1n,j3=2n**160n-1n,I3=2n**168n-1n,_3=2n**176n-1n,T3=2n**184n-1n,A3=2n**192n-1n,P3=2n**200n-1n,x3=2n**208n-1n,k3=2n**216n-1n,f3=2n**224n-1n,y3=2n**232n-1n,v3=2n**240n-1n,b3=2n**248n-1n,lJ=2n**256n-1n});function h$($){let{account:J,maxFeePerGas:Q,maxPriorityFeePerGas:X,to:Y}=$,Z=J?p(J):void 0;if(Z&&!s(Z.address))throw new Y$({address:Z.address});if(Y&&!s(Y))throw new Y$({address:Y});if(Q&&Q>lJ)throw new l0({maxFeePerGas:Q});if(X&&Q&&X>Q)throw new mJ({maxFeePerGas:Q,maxPriorityFeePerGas:X})}var MJ=T(()=>{V1();I0();uJ();M0()});function P0($,J){if(!s($,{strict:!1}))throw new Y$({address:$});if(!s(J,{strict:!1}))throw new Y$({address:J});return $.toLowerCase()===J.toLowerCase()}var e8=T(()=>{I0();M0()});function s$($){let{abi:J,args:Q,functionName:X,data:Y}=$,Z=J[0];if(X){let W=U0({abi:J,args:Q,name:X});if(!W)throw new $J(X,{docsPath:S7});Z=W}if(Z.type!=="function")throw new $J(void 0,{docsPath:S7});if(!Z.outputs)throw new aX(Z.name,{docsPath:S7});let G=PJ(Z.outputs,Y);if(G&&G.length>1)return G;if(G&&G.length===1)return G[0];return}var S7="/docs/contract/decodeFunctionResult";var nJ=T(()=>{S$();GY();X8()});var MK="0.1.1";function DK(){return MK}var UK=()=>{};function NK($,J){if(J?.($))return $;if($&&typeof $==="object"&&"cause"in $&&$.cause)return NK($.cause,J);return J?null:$}var h;var z0=T(()=>{UK();h=class h extends Error{static setStaticOptions($){h.prototype.docsOrigin=$.docsOrigin,h.prototype.showVersion=$.showVersion,h.prototype.version=$.version}constructor($,J={}){let Q=(()=>{if(J.cause instanceof h){if(J.cause.details)return J.cause.details;if(J.cause.shortMessage)return J.cause.shortMessage}if(J.cause&&"details"in J.cause&&typeof J.cause.details==="string")return J.cause.details;if(J.cause?.message)return J.cause.message;return J.details})(),X=(()=>{if(J.cause instanceof h)return J.cause.docsPath||J.docsPath;return J.docsPath})(),Y=J.docsOrigin??h.prototype.docsOrigin,Z=`${Y}${X??""}`,G=Boolean(J.version??h.prototype.showVersion),W=J.version??h.prototype.version,K=[$||"An error occurred.",...J.metaMessages?["",...J.metaMessages]:[],...Q||X||G?["",Q?`Details: ${Q}`:void 0,X?`See: ${Z}`:void 0,G?`Version: ${W}`:void 0]:[]].filter((q)=>typeof q==="string").join(`
63
- `);super(K,J.cause?{cause:J.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,"docsOrigin",{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,"showVersion",{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,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.cause=J.cause,this.details=Q,this.docs=Z,this.docsOrigin=Y,this.docsPath=X,this.shortMessage=$,this.showVersion=G,this.version=W}walk($){return NK(this,$)}};Object.defineProperty(h,"defaultStaticOptions",{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:"https://oxlib.sh",showVersion:!1,version:`ox@${DK()}`}});(()=>{h.setStaticOptions(h.defaultStaticOptions)})()});function zX($,J){if(x0($)>J)throw new F7({givenSize:x0($),maxSize:J})}function wK($,J){if(typeof J==="number"&&J>0&&J>x0($)-1)throw new H1({offset:J,position:"start",size:x0($)})}function zK($,J,Q){if(typeof J==="number"&&typeof Q==="number"&&x0($)!==Q-J)throw new H1({offset:Q,position:"end",size:x0($)})}function R7($){if($>=oJ.zero&&$<=oJ.nine)return $-oJ.zero;if($>=oJ.A&&$<=oJ.F)return $-(oJ.A-10);if($>=oJ.a&&$<=oJ.f)return $-(oJ.a-10);return}function HK($,J={}){let{dir:Q,size:X=32}=J;if(X===0)return $;if($.length>X)throw new E7({size:$.length,targetSize:X,type:"Bytes"});let Y=new Uint8Array(X);for(let Z=0;Z<X;Z++){let G=Q==="right";Y[G?Z:X-Z-1]=$[G?Z:$.length-Z-1]}return Y}function B7($,J={}){let{dir:Q="left"}=J,X=$,Y=0;for(let Z=0;Z<X.length-1;Z++)if(X[Q==="left"?Z:X.length-Z-1].toString()==="0")Y++;else break;return X=Q==="left"?X.slice(Y):X.slice(0,X.length-Y),X}var oJ;var OK=T(()=>{O8();oJ={zero:48,nine:57,A:65,F:70,a:97,f:102}});function HX($,J){if(V$($)>J)throw new _7({givenSize:V$($),maxSize:J})}function LK($,J){if(typeof J==="number"&&J>0&&J>V$($)-1)throw new O1({offset:J,position:"start",size:V$($)})}function CK($,J,Q){if(typeof J==="number"&&typeof Q==="number"&&V$($)!==Q-J)throw new O1({offset:Q,position:"end",size:V$($)})}function j7($,J={}){let{dir:Q,size:X=32}=J;if(X===0)return $;let Y=$.replace("0x","");if(Y.length>X*2)throw new T7({size:Math.ceil(Y.length/2),targetSize:X,type:"Hex"});return`0x${Y[Q==="right"?"padEnd":"padStart"](X*2,"0")}`}function SK($,J={}){let{dir:Q="left"}=J,X=$.replace("0x",""),Y=0;for(let Z=0;Z<X.length-1;Z++)if(X[Q==="left"?Z:X.length-Z-1].toString()==="0")Y++;else break;if(X=Q==="left"?X.slice(Y):X.slice(0,X.length-Y),X==="0")return"0x";if(Q==="right"&&X.length%2===1)return`0x${X}0`;return`0x${X}`}var I7=T(()=>{d$()});function L8($,J,Q){return JSON.stringify($,(X,Y)=>{if(typeof J==="function")return J(X,Y);if(typeof Y==="bigint")return Y.toString()+"#__bigint";return Y},Q)}function l3($){if($ instanceof Uint8Array)return;if(!$)throw new yY($);if(typeof $!=="object")throw new yY($);if(!("BYTES_PER_ELEMENT"in $))throw new yY($);if($.BYTES_PER_ELEMENT!==1||$.constructor.name!=="Uint8Array")throw new yY($)}function BK($){if($ instanceof Uint8Array)return $;if(typeof $==="string")return OX($);return c3($)}function c3($){return $ instanceof Uint8Array?$:new Uint8Array($)}function OX($,J={}){let{size:Q}=J,X=$;if(Q)HX($,Q),X=NJ($,Q);let Y=X.slice(2);if(Y.length%2)Y=`0${Y}`;let Z=Y.length/2,G=new Uint8Array(Z);for(let W=0,K=0;W<Z;W++){let q=R7(Y.charCodeAt(K++)),V=R7(Y.charCodeAt(K++));if(q===void 0||V===void 0)throw new h(`Invalid byte sequence ("${Y[K-2]}${Y[K-1]}" in "${Y}").`);G[W]=q<<4|V}return G}function FK($,J={}){let{size:Q}=J,X=p3.encode($);if(typeof Q==="number")return zX(X,Q),n3(X,Q);return X}function n3($,J){return HK($,{dir:"right",size:J})}function x0($){return $.length}function EK($,J,Q,X={}){let{strict:Y}=X;wK($,J);let Z=$.slice(J,Q);if(Y)zK(Z,J,Q);return Z}function jK($,J={}){let{size:Q}=J;if(typeof Q<"u")zX($,Q);let X=F$($,J);return P7(X,J)}function IK($,J={}){let{size:Q}=J,X=$;if(typeof Q<"u")zX(X,Q),X=A7(X);if(X.length>1||X[0]>1)throw new AK(X);return Boolean(X[0])}function UJ($,J={}){let{size:Q}=J;if(typeof Q<"u")zX($,Q);let X=F$($,J);return C1(X,J)}function _K($,J={}){let{size:Q}=J,X=$;if(typeof Q<"u")zX(X,Q),X=o3(X);return u3.decode(X)}function A7($){return B7($,{dir:"left"})}function o3($){return B7($,{dir:"right"})}function TK($){try{return l3($),!0}catch{return!1}}var u3,p3,AK,yY,F7,H1,E7;var O8=T(()=>{z0();d$();OK();I7();u3=new TextDecoder,p3=new TextEncoder;AK=class AK extends h{constructor($){super(`Bytes value \`${$}\` is not a valid boolean.`,{metaMessages:["The bytes array must contain a single byte of either a `0` or `1` value."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesBooleanError"})}};yY=class yY extends h{constructor($){super(`Value \`${typeof $==="object"?L8($):$}\` of type \`${typeof $}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}};F7=class F7 extends h{constructor({givenSize:$,maxSize:J}){super(`Size cannot exceed \`${J}\` bytes. Given size: \`${$}\` bytes.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}};H1=class H1 extends h{constructor({offset:$,position:J,size:Q}){super(`Slice ${J==="start"?"starting":"ending"} at offset \`${$}\` is out-of-bounds (size: \`${Q}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SliceOffsetOutOfBoundsError"})}};E7=class E7 extends h{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} size (\`${$}\`) exceeds padding size (\`${J}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}});function r3($,J={}){let{strict:Q=!1}=J;if(!$)throw new x7($);if(typeof $!=="string")throw new x7($);if(Q){if(!/^0x[0-9a-fA-F]*$/.test($))throw new k7($)}if(!$.startsWith("0x"))throw new k7($)}function z$(...$){return`0x${$.reduce((J,Q)=>J+Q.replace("0x",""),"")}`}function LX($){if($ instanceof Uint8Array)return F$($);if(Array.isArray($))return F$(new Uint8Array($));return $}function S1($,J={}){let Q=`0x${Number($)}`;if(typeof J.size==="number")return HX(Q,J.size),iJ(Q,J.size);return Q}function F$($,J={}){let Q="";for(let Y=0;Y<$.length;Y++)Q+=s3[$[Y]];let X=`0x${Q}`;if(typeof J.size==="number")return HX(X,J.size),NJ(X,J.size);return X}function a($,J={}){let{signed:Q,size:X}=J,Y=BigInt($),Z;if(X)if(Q)Z=(1n<<BigInt(X)*8n-1n)-1n;else Z=2n**(BigInt(X)*8n)-1n;else if(typeof $==="number")Z=BigInt(Number.MAX_SAFE_INTEGER);let G=typeof Z==="bigint"&&Q?-Z-1n:0;if(Z&&Y>Z||Y<G){let q=typeof $==="bigint"?"n":"";throw new R1({max:Z?`${Z}${q}`:void 0,min:`${G}${q}`,signed:Q,size:X,value:`${$}${q}`})}let K=`0x${(Q&&Y<0?BigInt.asUintN(X*8,BigInt(Y)):Y).toString(16)}`;if(X)return iJ(K,X);return K}function CX($,J={}){return F$(i3.encode($),J)}function iJ($,J){return j7($,{dir:"left",size:J})}function NJ($,J){return j7($,{dir:"right",size:J})}function M$($,J,Q,X={}){let{strict:Y}=X;LK($,J);let Z=`0x${$.replace("0x","").slice((J??0)*2,(Q??$.length)*2)}`;if(Y)CK(Z,J,Q);return Z}function V$($){return Math.ceil(($.length-2)/2)}function f7($){return SK($,{dir:"left"})}function P7($,J={}){let{signed:Q}=J;if(J.size)HX($,J.size);let X=BigInt($);if(!Q)return X;let Y=($.length-2)/2,Z=(1n<<BigInt(Y)*8n)-1n,G=Z>>1n;if(X<=G)return X;return X-Z-1n}function C1($,J={}){let{signed:Q,size:X}=J;if(!Q&&!X)return Number($);return Number(P7($,J))}function vY($,J={}){let{strict:Q=!1}=J;try{return r3($,{strict:Q}),!0}catch{return!1}}var i3,s3,R1,x7,k7,_7,O1,T7;var d$=T(()=>{z0();I7();i3=new TextEncoder,s3=Array.from({length:256},($,J)=>J.toString(16).padStart(2,"0"));R1=class R1 extends h{constructor({max:$,min:J,signed:Q,size:X,value:Y}){super(`Number \`${Y}\` is not in safe${X?` ${X*8}-bit`:""}${Q?" signed":" unsigned"} integer range ${$?`(\`${J}\` to \`${$}\`)`:`(above \`${J}\`)`}`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}};x7=class x7 extends h{constructor($){super(`Value \`${typeof $==="object"?L8($):$}\` of type \`${typeof $}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}};k7=class k7 extends h{constructor($){super(`Value \`${$}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}};_7=class _7 extends h{constructor({givenSize:$,maxSize:J}){super(`Size cannot exceed \`${J}\` bytes. Given size: \`${$}\` bytes.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}};O1=class O1 extends h{constructor({offset:$,position:J,size:Q}){super(`Slice ${J==="start"?"starting":"ending"} at offset \`${$}\` is out-of-bounds (size: \`${Q}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}};T7=class T7 extends h{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} size (\`${$}\`) exceeds padding size (\`${J}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}});function PK($){return{address:$.address,amount:a($.amount),index:a($.index),validatorIndex:a($.validatorIndex)}}var xK=T(()=>{d$()});function B1($){return{...typeof $.baseFeePerGas==="bigint"&&{baseFeePerGas:a($.baseFeePerGas)},...typeof $.blobBaseFee==="bigint"&&{blobBaseFee:a($.blobBaseFee)},...typeof $.feeRecipient==="string"&&{feeRecipient:$.feeRecipient},...typeof $.gasLimit==="bigint"&&{gasLimit:a($.gasLimit)},...typeof $.number==="bigint"&&{number:a($.number)},...typeof $.prevRandao==="bigint"&&{prevRandao:a($.prevRandao)},...typeof $.time==="bigint"&&{time:a($.time)},...$.withdrawals&&{withdrawals:$.withdrawals.map(PK)}}}var y7=T(()=>{d$();xK()});var wJ,F1,fK,E1,yK,v7,b7,h7,g7;var sJ=T(()=>{wJ=[{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:"addr",type:"address"}],name:"getEthBalance",outputs:[{name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],F1=[{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"}]}],fK=[{inputs:[{name:"dns",type:"bytes"}],name:"DNSDecodingFailed",type:"error"},{inputs:[{name:"ens",type:"string"}],name:"DNSEncodingFailed",type:"error"},{inputs:[],name:"EmptyAddress",type:"error"},{inputs:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"HttpError",type:"error"},{inputs:[],name:"InvalidBatchGatewayResponse",type:"error"},{inputs:[{name:"errorData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{name:"name",type:"bytes"},{name:"resolver",type:"address"}],name:"ResolverNotContract",type:"error"},{inputs:[{name:"name",type:"bytes"}],name:"ResolverNotFound",type:"error"},{inputs:[{name:"primary",type:"string"},{name:"primaryAddress",type:"bytes"}],name:"ReverseAddressMismatch",type:"error"},{inputs:[{internalType:"bytes4",name:"selector",type:"bytes4"}],name:"UnsupportedResolverProfile",type:"error"}],E1=[...fK,{name:"resolveWithGateways",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],yK=[...fK,{name:"reverseWithGateways",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"uint256",name:"coinType"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolver"},{type:"address",name:"reverseResolver"}]}],v7=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],b7=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],h7=[{name:"isValidSignature",type:"function",stateMutability:"view",inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],outputs:[{name:"",type:"bytes4"}]}],g7=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}]});var vK="0x82ad56cb";var j1="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",bK="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",hK="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",SX="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033";var RX,d7,m7,I1,BX;var bY=T(()=>{l();RX=class RX extends R{constructor({blockNumber:$,chain:J,contract:Q}){super(`Chain "${J.name}" does not support contract "${Q.name}".`,{metaMessages:["This could be due to any of the following:",...$&&Q.blockCreated&&Q.blockCreated>$?[`- The contract "${Q.name}" was not deployed until block ${Q.blockCreated} (current block ${$}).`]:[`- The chain does not have the contract "${Q.name}" configured.`]],name:"ChainDoesNotSupportContract"})}};d7=class d7 extends R{constructor({chain:$,currentChainId:J}){super(`The current chain of the wallet (id: ${J}) does not match the target chain for the transaction (id: ${$.id} – ${$.name}).`,{metaMessages:[`Current Chain ID: ${J}`,`Expected Chain ID: ${$.id} – ${$.name}`],name:"ChainMismatchError"})}};m7=class m7 extends R{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(`
64
- `),{name:"ChainNotFoundError"})}};I1=class I1 extends R{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}};BX=class BX extends R{constructor({chainId:$}){super(typeof $==="number"?`Chain ID "${$}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}});function QQ($){let{abi:J,args:Q,bytecode:X}=$;if(!Q||Q.length===0)return X;let Y=J.find((G)=>("type"in G)&&G.type==="constructor");if(!Y)throw new i5({docsPath:u7});if(!("inputs"in Y))throw new j9({docsPath:u7});if(!Y.inputs||Y.inputs.length===0)throw new j9({docsPath:u7});let Z=W$(Y.inputs,Q);return R$([X,Z])}var u7="/docs/contract/encodeDeployData";var _1=T(()=>{S$();ZJ()});function k0({blockNumber:$,chain:J,contract:Q}){let X=J?.contracts?.[Q];if(!X)throw new RX({chain:J,contract:{name:Q}});if($&&X.blockCreated&&X.blockCreated>$)throw new RX({blockNumber:$,chain:J,contract:{name:Q,blockCreated:X.blockCreated}});return X.address}var XQ=T(()=>{bY()});function T1($,{docsPath:J,...Q}){let X=(()=>{let Y=z8($,Q);if(Y instanceof c0)return $;return Y})();return new VY(X,{docsPath:J,...Q})}var p7=T(()=>{Z8();uJ();TY()});function FX(){let $=()=>{return},J=()=>{return};return{promise:new Promise((X,Y)=>{$=X,J=Y}),resolve:$,reject:J}}function A1({fn:$,id:J,shouldSplitBatch:Q,wait:X=0,sort:Y}){let Z=async()=>{let V=K();G();let M=V.map(({args:D})=>D);if(M.length===0)return;$(M).then((D)=>{if(Y&&Array.isArray(D))D.sort(Y);for(let U=0;U<V.length;U++){let{resolve:z}=V[U];z?.([D[U],D])}}).catch((D)=>{for(let U=0;U<V.length;U++){let{reject:z}=V[U];z?.(D)}})},G=()=>l7.delete(J),W=()=>K().map(({args:V})=>V),K=()=>l7.get(J)||[],q=(V)=>l7.set(J,[...K(),V]);return{flush:G,async schedule(V){let{promise:M,resolve:D,reject:U}=FX();if(Q?.([...W(),V]))Z();if(K().length>0)return q({args:V,resolve:D,reject:U}),M;return q({args:V,resolve:D,reject:U}),setTimeout(Z,X),M}}}var l7;var c7=T(()=>{l7=new Map});var n7,o7,i7;var gK=T(()=>{l();n7=class n7 extends R{constructor({callbackSelector:$,cause:J,data:Q,extraData:X,sender:Y,urls:Z}){super(J.shortMessage||"An error occurred while fetching for an offchain result.",{cause:J,metaMessages:[...J.metaMessages||[],J.metaMessages?.length?"":[],"Offchain Gateway Call:",Z&&[" Gateway URL(s):",...Z.map((G)=>` ${u8(G)}`)],` Sender: ${Y}`,` Data: ${Q}`,` Callback selector: ${$}`,` Extra data: ${X}`].flat(),name:"OffchainLookupError"})}};o7=class o7 extends R{constructor({result:$,url:J}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${u8(J)}`,`Response: ${o($)}`],name:"OffchainLookupResponseMalformedError"})}};i7=class i7 extends R{constructor({sender:$,to:J}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${J}`,`OffchainLookup sender address: ${$}`],name:"OffchainLookupSenderMismatchError"})}}});function dK($){let{abi:J,data:Q}=$,X=D0(Q,0,4),Y=J.find((Z)=>Z.type==="function"&&X===GJ(A$(Z)));if(!Y)throw new $Z(X,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:Y.name,args:"inputs"in Y&&Y.inputs&&Y.inputs.length>0?PJ(Y.inputs,D0(Q,4)):void 0}}var mK=T(()=>{S$();AJ();PQ();GY();EJ()});function r7($){let{abi:J,errorName:Q,args:X}=$,Y=J[0];if(Q){let K=U0({abi:J,args:X,name:Q});if(!K)throw new I9(Q,{docsPath:s7});Y=K}if(Y.type!=="error")throw new I9(void 0,{docsPath:s7});let Z=A$(Y),G=GJ(Z),W="0x";if(X&&X.length>0){if(!Y.inputs)throw new t5(Y.name,{docsPath:s7});W=W$(Y.inputs,X)}return R$([G,W])}var s7="/docs/contract/encodeErrorResult";var uK=T(()=>{S$();PQ();ZJ();EJ();X8()});function pK($){let{abi:J,functionName:Q,result:X}=$,Y=J[0];if(Q){let G=U0({abi:J,name:Q});if(!G)throw new $J(Q,{docsPath:t7});Y=G}if(Y.type!=="function")throw new $J(void 0,{docsPath:t7});if(!Y.outputs)throw new aX(Y.name,{docsPath:t7});let Z=(()=>{if(Y.outputs.length===0)return[];if(Y.outputs.length===1)return[X];if(Array.isArray(X))return X;throw new $Y(X)})();return W$(Y.outputs,Z)}var t7="/docs/contract/encodeFunctionResult";var lK=T(()=>{S$();ZJ();X8()});async function a7($){let{data:J,ccipRequest:Q}=$,{args:[X]}=dK({abi:F1,data:J}),Y=[],Z=[];return await Promise.all(X.map(async(G,W)=>{try{Z[W]=G.urls.includes(rJ)?await a7({data:G.data,ccipRequest:Q}):await Q(G),Y[W]=!1}catch(K){Y[W]=!0,Z[W]=a3(K)}})),pK({abi:F1,functionName:"query",result:[Y,Z]})}function a3($){if($.name==="HttpRequestError"&&$.status)return r7({abi:F1,errorName:"HttpError",args:[$.status,$.shortMessage]});return r7({abi:[c9],errorName:"Error",args:["shortMessage"in $?$.shortMessage:$.message]})}var rJ="x-batch-gateway:true";var hY=T(()=>{sJ();n9();mK();uK();lK()});var oK={};Y9(oK,{offchainLookupSignature:()=>e3,offchainLookupAbiItem:()=>cK,offchainLookup:()=>$w,ccipRequest:()=>nK});async function $w($,{blockNumber:J,blockTag:Q,data:X,to:Y}){let{args:Z}=s9({data:X,abi:[cK]}),[G,W,K,q,V]=Z,{ccipRead:M}=$,D=M&&typeof M?.request==="function"?M.request:nK;try{if(!P0(Y,G))throw new i7({sender:G,to:Y});let U=W.includes(rJ)?await a7({data:K,ccipRequest:D}):await D({data:K,sender:G,urls:W}),{data:z}=await f0($,{blockNumber:J,blockTag:Q,data:Q$([q,W$([{type:"bytes"},{type:"bytes"}],[U,V])]),to:Y});return z}catch(U){throw new n7({callbackSelector:q,cause:U,data:X,extraData:V,sender:G,urls:W})}}async function nK({data:$,sender:J,urls:Q}){let X=Error("An unknown error occurred.");for(let Y=0;Y<Q.length;Y++){let Z=Q[Y],G=Z.includes("{data}")?"GET":"POST",W=G==="POST"?{data:$,sender:J}:void 0,K=G==="POST"?{"Content-Type":"application/json"}:{};try{let q=await fetch(Z.replace("{sender}",J.toLowerCase()).replace("{data}",$),{body:JSON.stringify(W),headers:K,method:G}),V;if(q.headers.get("Content-Type")?.startsWith("application/json"))V=(await q.json()).data;else V=await q.text();if(!q.ok){X=new m0({body:W,details:V?.error?o(V.error):q.statusText,headers:q.headers,status:q.status,url:Z});continue}if(!U$(V)){X=new o7({result:V,url:Z});continue}return V}catch(q){X=new m0({body:W,details:q.message,url:Z})}}throw X}var e3="0x556f1830",cK;var iK=T(()=>{YQ();gK();l8();BZ();ZJ();e8();hY();cK={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]}});async function f0($,J){let{account:Q=$.account,authorizationList:X,batch:Y=Boolean($.batch?.multicall),blockNumber:Z,blockTag:G=$.experimental_blockTag??"latest",accessList:W,blobs:K,blockOverrides:q,code:V,data:M,factory:D,factoryData:U,gas:z,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,to:H,value:S,stateOverride:B,...F}=J,I=Q?p(Q):void 0;if(V&&(D||U))throw new R("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(V&&H)throw new R("Cannot provide both `code` & `to` as parameters.");let P=V&&M,j=D&&U&&H&&M,y=P||j,x=(()=>{if(P)return sK({code:V,data:M});if(j)return Xw({data:M,factory:D,factoryData:U,to:H});return M})();try{h$(J);let g=(typeof Z==="bigint"?E(Z):void 0)||G,_=q?B1(q):void 0,f=WX(B),d=$.chain?.formatters?.transactionRequest?.format,v=(d||n$)({...A0(F,{format:d}),accessList:W,account:I,authorizationList:X,blobs:K,data:x,gas:z,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,to:y?void 0:H,value:S},"call");if(Y&&Jw({request:v})&&!f&&!_)try{return await Qw($,{...v,blockNumber:Z,blockTag:G})}catch(c){if(!(c instanceof I1)&&!(c instanceof RX))throw c}let u=(()=>{let c=[v,g];if(f&&_)return[...c,f,_];if(f)return[...c,f];if(_)return[...c,{},_];return c})(),X$=await $.request({method:"eth_call",params:u});if(X$==="0x")return{data:void 0};return{data:X$}}catch(b){let g=Yw(b),{offchainLookup:_,offchainLookupSignature:f}=await Promise.resolve().then(() => (iK(),oK));if($.ccipRead!==!1&&g?.slice(0,10)===f&&H)return{data:await _($,{data:g,to:H})};if(y&&g?.slice(0,10)==="0x101bb98d")throw new fZ({factory:D});throw T1(b,{...J,account:I,chain:$.chain})}}function Jw({request:$}){let{data:J,to:Q,...X}=$;if(!J)return!1;if(J.startsWith(vK))return!1;if(!Q)return!1;if(Object.values(X).filter((Y)=>typeof Y<"u").length>0)return!1;return!0}async function Qw($,J){let{batchSize:Q=1024,deployless:X=!1,wait:Y=0}=typeof $.batch?.multicall==="object"?$.batch.multicall:{},{blockNumber:Z,blockTag:G=$.experimental_blockTag??"latest",data:W,to:K}=J,q=(()=>{if(X)return null;if(J.multicallAddress)return J.multicallAddress;if($.chain)return k0({blockNumber:Z,chain:$.chain,contract:"multicall3"});throw new I1})(),M=(typeof Z==="bigint"?E(Z):void 0)||G,{schedule:D}=A1({id:`${$.uid}.${M}`,wait:Y,shouldSplitBatch(w){return w.reduce((O,{data:C})=>O+(C.length-2),0)>Q*2},fn:async(w)=>{let L=w.map((N)=>({allowFailure:!0,callData:N.data,target:N.to})),O=K$({abi:wJ,args:[L],functionName:"aggregate3"}),C=await $.request({method:"eth_call",params:[{...q===null?{data:sK({code:SX,data:O})}:{to:q,data:O}},M]});return s$({abi:wJ,args:[L],functionName:"aggregate3",data:C||"0x"})}}),[{returnData:U,success:z}]=await D({data:W,to:K});if(!z)throw new xJ({data:U});if(U==="0x")return{data:void 0};return{data:U}}function sK($){let{code:J,data:Q}=$;return QQ({abi:nX(["constructor(bytes, bytes)"]),bytecode:j1,args:[J,Q]})}function Xw($){let{data:J,factory:Q,factoryData:X,to:Y}=$;return QQ({abi:nX(["constructor(address, bytes, address, bytes)"]),bytecode:bK,args:[Y,J,Q,X]})}function Yw($){if(!($ instanceof R))return;let J=$.walk();return typeof J?.data==="object"?J.data?.data:J.data}var YQ=T(()=>{_Q();y7();sJ();l();bY();Z8();nJ();_1();N0();XQ();m();p7();pJ();c7();q1();MJ()});var EW=VW(FW(),1),{program:LH,createCommand:CH,createArgument:SH,createOption:RH,CommanderError:BH,InvalidArgumentError:FH,InvalidOptionArgumentError:EH,Command:jW,Argument:jH,Option:IH,Help:_H}=EW.default;var KW=VW(xW(),1);_Q();function A($,J,Q){let X=$[J.name];if(typeof X==="function")return X;let Y=$[Q];if(typeof Y==="function")return Y;return(Z)=>J($,Z)}S$();l();class ZZ extends R{constructor($){super(`Filter type "${$}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}k$();q0();XY();ZJ();EJ();X8();var m4="/docs/contract/encodeEventTopics";function WJ($){let{abi:J,eventName:Q,args:X}=$,Y=J[0];if(Q){let K=U0({abi:J,name:Q});if(!K)throw new _9(Q,{docsPath:m4});Y=K}if(Y.type!=="event")throw new _9(void 0,{docsPath:m4});let Z=A$(Y),G=Q8(Z),W=[];if(X&&"inputs"in Y){let K=Y.inputs?.filter((V)=>("indexed"in V)&&V.indexed),q=Array.isArray(X)?X:Object.values(X).length>0?K?.map((V)=>X[V.name])??[]:[];if(q.length>0)W=K?.map((V,M)=>{if(Array.isArray(q[M]))return q[M].map((D,U)=>u4({param:V,value:q[M][U]}));return typeof q[M]<"u"&&q[M]!==null?u4({param:V,value:q[M]}):null})??[]}return[G,...W]}function u4({param:$,value:J}){if($.type==="string"||$.type==="bytes")return n(m$(J));if($.type==="tuple"||$.type.match(/^(.*)\[(\d+)?\]$/))throw new ZZ($.type);return W$([$],[J])}m();function Y8($,{method:J}){let Q={};if($.transport.type==="fallback")$.transport.onResponse?.(({method:X,response:Y,status:Z,transport:G})=>{if(Z==="success"&&J===X)Q[Y]=G.request});return(X)=>Q[X]||$.request}async function l9($,J){let{address:Q,abi:X,args:Y,eventName:Z,fromBlock:G,strict:W,toBlock:K}=J,q=Y8($,{method:"eth_newFilter"}),V=Z?WJ({abi:X,args:Y,eventName:Z}):void 0,M=await $.request({method:"eth_newFilter",params:[{address:Q,fromBlock:typeof G==="bigint"?E(G):G,toBlock:typeof K==="bigint"?E(K):K,topics:V}]});return{abi:X,args:Y,eventName:Z,id:M,request:q(M),strict:Boolean(W),type:"event"}}N0();S$();l();Z8();l8();n8();var zU=3;function R0($,{abi:J,address:Q,args:X,docsPath:Y,functionName:Z,sender:G}){let W=$ instanceof xJ?$:$ instanceof R?$.walk((z)=>("data"in z))||$.walk():{},{code:K,data:q,details:V,message:M,shortMessage:D}=W,U=(()=>{if($ instanceof h0)return new kZ({functionName:Z});if([zU,kJ.code].includes(K)&&(q||V||M||D)||K===T0.code&&V==="execution reverted"&&q)return new vQ({abi:J,data:typeof q==="object"?q.data:q,functionName:Z,message:W instanceof p8?V:D??M});return $})();return new MY(U,{abi:J,args:X,contractAddress:Q,docsPath:Y,functionName:Z,sender:G})}l();YJ();q0();function $1($){let J=n(`0x${$.substring(4)}`).substring(26);return XJ(`0x${J}`)}j0();P$();m();async function n6({hash:$,signature:J}){let Q=U$($)?$:t($),{secp256k1:X}=await Promise.resolve().then(() => (t8(),l6));return`0x${(()=>{if(typeof J==="object"&&"r"in J&&"s"in J){let{r:q,s:V,v:M,yParity:D}=J,U=Number(D??M),z=c6(U);return new X.Signature(Z$(q),Z$(V)).addRecoveryBit(z)}let G=U$(J)?J:t(J);if(r(G)!==65)throw Error("invalid signature length");let W=N$(`0x${G.slice(130)}`),K=c6(W);return X.Signature.fromCompact(G.substring(2,130)).addRecoveryBit(K)})().recoverPublicKey(Q.substring(2)).toHex(!1)}`}function c6($){if($===0||$===1)return $;if($===27)return 0;if($===28)return 1;throw Error("Invalid yParityOrV value")}async function W1({hash:$,signature:J}){return $1(await n6({hash:$,signature:J}))}k$();m();l();i9();k$();m();function p0($,J="hex"){let Q=o6($),X=xQ(new Uint8Array(Q.length));if(Q.encode(X),J==="hex")return i(X.bytes);return X.bytes}function o6($){if(Array.isArray($))return nU($.map((J)=>o6(J)));return oU($)}function nU($){let J=$.reduce((Y,Z)=>Y+Z.length,0),Q=i6(J);return{length:(()=>{if(J<=55)return 1+J;return 1+Q+J})(),encode(Y){if(J<=55)Y.pushByte(192+J);else if(Y.pushByte(247+Q),Q===1)Y.pushUint8(J);else if(Q===2)Y.pushUint16(J);else if(Q===3)Y.pushUint24(J);else Y.pushUint32(J);for(let{encode:Z}of $)Z(Y)}}}function oU($){let J=typeof $==="string"?x$($):$,Q=i6(J.length);return{length:(()=>{if(J.length===1&&J[0]<128)return 1;if(J.length<=55)return 1+J.length;return 1+Q+J.length})(),encode(Y){if(J.length===1&&J[0]<128)Y.pushBytes(J);else if(J.length<=55)Y.pushByte(128+J.length),Y.pushBytes(J);else{if(Y.pushByte(183+Q),Q===1)Y.pushUint8(J.length);else if(Q===2)Y.pushUint16(J.length);else if(Q===3)Y.pushUint24(J.length);else Y.pushUint32(J.length);Y.pushBytes(J)}}}}function i6($){if($<256)return 1;if($<65536)return 2;if($<16777216)return 3;if($<4294967296)return 4;throw new R("Length is too large.")}q0();function K1($){let{chainId:J,nonce:Q,to:X}=$,Y=$.contractAddress??$.address,Z=n(R$(["0x05",p0([J?E(J):"0x",Y,Q?E(Q):"0x"])]));if(X==="bytes")return x$(Z);return Z}async function w8($){let{authorization:J,signature:Q}=$;return W1({hash:K1(J),signature:Q??J})}m();a9();yQ();l();_0();class D7 extends R{constructor($,{account:J,docsPath:Q,chain:X,data:Y,gas:Z,gasPrice:G,maxFeePerGas:W,maxPriorityFeePerGas:K,nonce:q,to:V,value:M}){let D=m8({from:J?.address,to:V,value:typeof M<"u"&&`${fQ(M)} ${X?.nativeCurrency?.symbol||"ETH"}`,data:Y,gas:Z,gasPrice:typeof G<"u"&&`${f$(G)} gwei`,maxFeePerGas:typeof W<"u"&&`${f$(W)} gwei`,maxPriorityFeePerGas:typeof K<"u"&&`${f$(K)} gwei`,nonce:q});super($.shortMessage,{cause:$,docsPath:Q,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],"Estimate Gas Arguments:",D].filter(Boolean),name:"EstimateGasExecutionError"});Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=$}}uJ();TY();function s6($,{docsPath:J,...Q}){let X=(()=>{let Y=z8($,Q);if(Y instanceof c0)return $;return Y})();return new D7(X,{docsPath:J,...Q})}pJ();q1();MJ();yQ();l();class AY extends R{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class a8 extends R{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class U7 extends R{constructor({maxPriorityFeePerGas:$}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${f$($)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}P$();l();class PY extends R{constructor({blockHash:$,blockNumber:J}){let Q="Block";if($)Q=`Block at hash "${$}"`;if(J)Q=`Block at number "${J}"`;super(`${Q} could not be found.`,{name:"BlockNotFoundError"})}}m();P$();var N7={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function cJ($,J){let Q={...$,blockHash:$.blockHash?$.blockHash:null,blockNumber:$.blockNumber?BigInt($.blockNumber):null,chainId:$.chainId?N$($.chainId):void 0,gas:$.gas?BigInt($.gas):void 0,gasPrice:$.gasPrice?BigInt($.gasPrice):void 0,maxFeePerBlobGas:$.maxFeePerBlobGas?BigInt($.maxFeePerBlobGas):void 0,maxFeePerGas:$.maxFeePerGas?BigInt($.maxFeePerGas):void 0,maxPriorityFeePerGas:$.maxPriorityFeePerGas?BigInt($.maxPriorityFeePerGas):void 0,nonce:$.nonce?N$($.nonce):void 0,to:$.to?$.to:null,transactionIndex:$.transactionIndex?Number($.transactionIndex):null,type:$.type?N7[$.type]:void 0,typeHex:$.type?$.type:void 0,value:$.value?BigInt($.value):void 0,v:$.v?BigInt($.v):void 0};if($.authorizationList)Q.authorizationList=h3($.authorizationList);if(Q.yParity=(()=>{if($.yParity)return Number($.yParity);if(typeof Q.v==="bigint"){if(Q.v===0n||Q.v===27n)return 0;if(Q.v===1n||Q.v===28n)return 1;if(Q.v>=35n)return Q.v%2n===0n?1:0}return})(),Q.type==="legacy")delete Q.accessList,delete Q.maxFeePerBlobGas,delete Q.maxFeePerGas,delete Q.maxPriorityFeePerGas,delete Q.yParity;if(Q.type==="eip2930")delete Q.maxFeePerBlobGas,delete Q.maxFeePerGas,delete Q.maxPriorityFeePerGas;if(Q.type==="eip1559")delete Q.maxFeePerBlobGas;return Q}var t6=GX("transaction",cJ);function h3($){return $.map((J)=>({address:J.address,chainId:Number(J.chainId),nonce:Number(J.nonce),r:J.r,s:J.s,yParity:Number(J.yParity)}))}function xY($,J){let Q=($.transactions??[]).map((X)=>{if(typeof X==="string")return X;return cJ(X)});return{...$,baseFeePerGas:$.baseFeePerGas?BigInt($.baseFeePerGas):null,blobGasUsed:$.blobGasUsed?BigInt($.blobGasUsed):void 0,difficulty:$.difficulty?BigInt($.difficulty):void 0,excessBlobGas:$.excessBlobGas?BigInt($.excessBlobGas):void 0,gasLimit:$.gasLimit?BigInt($.gasLimit):void 0,gasUsed:$.gasUsed?BigInt($.gasUsed):void 0,hash:$.hash?$.hash:null,logsBloom:$.logsBloom?$.logsBloom:null,nonce:$.nonce?$.nonce:null,number:$.number?BigInt($.number):null,size:$.size?BigInt($.size):void 0,timestamp:$.timestamp?BigInt($.timestamp):void 0,transactions:Q,totalDifficulty:$.totalDifficulty?BigInt($.totalDifficulty):null}}var a6=GX("block",xY);async function g$($,{blockHash:J,blockNumber:Q,blockTag:X=$.experimental_blockTag??"latest",includeTransactions:Y}={}){let Z=Y??!1,G=Q!==void 0?E(Q):void 0,W=null;if(J)W=await $.request({method:"eth_getBlockByHash",params:[J,Z]},{dedupe:!0});else W=await $.request({method:"eth_getBlockByNumber",params:[G||X,Z]},{dedupe:Boolean(G)});if(!W)throw new PY({blockHash:J,blockNumber:Q});return($.chain?.formatters?.block?.format||xY)(W,"getBlock")}async function KX($){let J=await $.request({method:"eth_gasPrice"});return BigInt(J)}async function e6($,J){return w7($,J)}async function w7($,J){let{block:Q,chain:X=$.chain,request:Y}=J||{};try{let Z=X?.fees?.maxPriorityFeePerGas??X?.fees?.defaultPriorityFee;if(typeof Z==="function"){let W=Q||await A($,g$,"getBlock")({}),K=await Z({block:W,client:$,request:Y});if(K===null)throw Error();return K}if(typeof Z<"u")return Z;let G=await $.request({method:"eth_maxPriorityFeePerGas"});return Z$(G)}catch{let[Z,G]=await Promise.all([Q?Promise.resolve(Q):A($,g$,"getBlock")({}),A($,KX,"getGasPrice")({})]);if(typeof Z.baseFeePerGas!=="bigint")throw new a8;let W=G-Z.baseFeePerGas;if(W<0n)return 0n;return W}}async function $K($,J){return M1($,J)}async function M1($,J){let{block:Q,chain:X=$.chain,request:Y,type:Z="eip1559"}=J||{},G=await(async()=>{if(typeof X?.fees?.baseFeeMultiplier==="function")return X.fees.baseFeeMultiplier({block:Q,client:$,request:Y});return X?.fees?.baseFeeMultiplier??1.2})();if(G<1)throw new AY;let K=10**(G.toString().split(".")[1]?.length??0),q=(D)=>D*BigInt(Math.ceil(G*K))/BigInt(K),V=Q?Q:await A($,g$,"getBlock")({});if(typeof X?.fees?.estimateFeesPerGas==="function"){let D=await X.fees.estimateFeesPerGas({block:Q,client:$,multiply:q,request:Y,type:Z});if(D!==null)return D}if(Z==="eip1559"){if(typeof V.baseFeePerGas!=="bigint")throw new a8;let D=typeof Y?.maxPriorityFeePerGas==="bigint"?Y.maxPriorityFeePerGas:await w7($,{block:V,chain:X,request:Y}),U=q(V.baseFeePerGas);return{maxFeePerGas:Y?.maxFeePerGas??U+D,maxPriorityFeePerGas:D}}return{gasPrice:Y?.gasPrice??q(await A($,KX,"getGasPrice")({}))}}P$();m();async function qX($,{address:J,blockTag:Q="latest",blockNumber:X}){let Y=await $.request({method:"eth_getTransactionCount",params:[J,typeof X==="bigint"?E(X):Q]},{dedupe:Boolean(X)});return N$(Y)}k$();m();function VX($){let{kzg:J}=$,Q=$.to??(typeof $.blobs[0]==="string"?"hex":"bytes"),X=typeof $.blobs[0]==="string"?$.blobs.map((Z)=>x$(Z)):$.blobs,Y=[];for(let Z of X)Y.push(Uint8Array.from(J.blobToKzgCommitment(Z)));return Q==="bytes"?Y:Y.map((Z)=>i(Z))}k$();m();function MX($){let{kzg:J}=$,Q=$.to??(typeof $.blobs[0]==="string"?"hex":"bytes"),X=typeof $.blobs[0]==="string"?$.blobs.map((G)=>x$(G)):$.blobs,Y=typeof $.commitments[0]==="string"?$.commitments.map((G)=>x$(G)):$.commitments,Z=[];for(let G=0;G<X.length;G++){let W=X[G],K=Y[G];Z.push(Uint8Array.from(J.computeBlobKzgProof(W,K)))}return Q==="bytes"?Z:Z.map((G)=>i(G))}m();hZ();var JK=o8;k$();m();function QK($,J){let Q=J||"hex",X=JK(U$($,{strict:!1})?m$($):$);if(Q==="bytes")return X;return t(X)}function XK($){let{commitment:J,version:Q=1}=$,X=$.to??(typeof J==="string"?"hex":"bytes"),Y=QK(J,"bytes");return Y.set([Q],0),X==="bytes"?Y:i(Y)}function D1($){let{commitments:J,version:Q}=$,X=$.to??(typeof J[0]==="string"?"hex":"bytes"),Y=[];for(let Z of J)Y.push(XK({commitment:Z,to:X,version:Q}));return Y}var YK=32,ZK=4096,GK=131072,z7=761855;var U1=1;l();class H7 extends R{constructor({maxSize:$,size:J}){super("Blob size is too large.",{metaMessages:[`Max: ${$} bytes`,`Given: ${J} bytes`],name:"BlobSizeTooLargeError"})}}class kY extends R{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class O7 extends R{constructor({hash:$,size:J}){super(`Versioned hash "${$}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${J}`],name:"InvalidVersionedHashSizeError"})}}class L7 extends R{constructor({hash:$,version:J}){super(`Versioned hash "${$}" version is invalid.`,{metaMessages:[`Expected: ${U1}`,`Received: ${J}`],name:"InvalidVersionedHashVersionError"})}}i9();j0();k$();m();function WK($){let J=$.to??(typeof $.data==="string"?"hex":"bytes"),Q=typeof $.data==="string"?x$($.data):$.data,X=r(Q);if(!X)throw new kY;if(X>z7)throw new H7({maxSize:z7,size:X});let Y=[],Z=!0,G=0;while(Z){let W=xQ(new Uint8Array(GK)),K=0;while(K<ZK){let q=Q.slice(G,G+(YK-1));if(W.pushByte(0),W.pushBytes(q),q.length<31){W.pushByte(128),Z=!1;break}K++,G+=31}Y.push(W)}return J==="bytes"?Y.map((W)=>W.bytes):Y.map((W)=>i(W.bytes))}function N1($){let{data:J,kzg:Q,to:X}=$,Y=$.blobs??WK({data:J,to:X}),Z=$.commitments??VX({blobs:Y,kzg:Q,to:X}),G=$.proofs??MX({blobs:Y,commitments:Z,kzg:Q,to:X}),W=[];for(let K=0;K<Y.length;K++)W.push({blob:Y[K],commitment:Z[K],proof:G[K]});return W}d8();MJ();_0();function w1($){if($.type)return $.type;if(typeof $.authorizationList<"u")return"eip7702";if(typeof $.blobs<"u"||typeof $.blobVersionedHashes<"u"||typeof $.maxFeePerBlobGas<"u"||typeof $.sidecars<"u")return"eip4844";if(typeof $.maxFeePerGas<"u"||typeof $.maxPriorityFeePerGas<"u")return"eip1559";if(typeof $.gasPrice<"u"){if(typeof $.accessList<"u")return"eip2930";return"legacy"}throw new TZ({transaction:$})}uJ();_0();TY();function H8($,{docsPath:J,...Q}){let X=(()=>{let Y=z8($,Q);if(Y instanceof c0)return $;return Y})();return new PZ(X,{docsPath:J,...Q})}pJ();MJ();P$();async function o$($){let J=await $.request({method:"eth_chainId"},{dedupe:!0});return N$(J)}async function DX($,J){let{account:Q=$.account,accessList:X,authorizationList:Y,chain:Z=$.chain,blobVersionedHashes:G,blobs:W,data:K,gas:q,gasPrice:V,maxFeePerBlobGas:M,maxFeePerGas:D,maxPriorityFeePerGas:U,nonce:z,nonceManager:w,to:L,type:O,value:C,...N}=J,H=await(async()=>{if(!Q)return z;if(!w)return z;if(typeof z<"u")return z;let I=p(Q),P=Z?Z.id:await A($,o$,"getChainId")({});return await w.consume({address:I.address,chainId:P,client:$})})();h$(J);let S=Z?.formatters?.transactionRequest?.format,F=(S||n$)({...A0(N,{format:S}),account:Q?p(Q):void 0,accessList:X,authorizationList:Y,blobs:W,blobVersionedHashes:G,data:K,gas:q,gasPrice:V,maxFeePerBlobGas:M,maxFeePerGas:D,maxPriorityFeePerGas:U,nonce:H,to:L,type:O,value:C},"fillTransaction");try{let I=await $.request({method:"eth_fillTransaction",params:[F]}),j=(Z?.formatters?.transaction?.format||cJ)(I.tx);if(delete j.blockHash,delete j.blockNumber,delete j.r,delete j.s,delete j.transactionIndex,delete j.v,delete j.yParity,j.data=j.input,j.gas)j.gas=J.gas??j.gas;if(j.gasPrice)j.gasPrice=J.gasPrice??j.gasPrice;if(j.maxFeePerBlobGas)j.maxFeePerBlobGas=J.maxFeePerBlobGas??j.maxFeePerBlobGas;if(j.maxFeePerGas)j.maxFeePerGas=J.maxFeePerGas??j.maxFeePerGas;if(j.maxPriorityFeePerGas)j.maxPriorityFeePerGas=J.maxPriorityFeePerGas??j.maxPriorityFeePerGas;if(j.nonce)j.nonce=J.nonce??j.nonce;let y=await(async()=>{if(typeof Z?.fees?.baseFeeMultiplier==="function"){let _=await A($,g$,"getBlock")({});return Z.fees.baseFeeMultiplier({block:_,client:$,request:J})}return Z?.fees?.baseFeeMultiplier??1.2})();if(y<1)throw new AY;let b=10**(y.toString().split(".")[1]?.length??0),g=(_)=>_*BigInt(Math.ceil(y*b))/BigInt(b);if(j.maxFeePerGas&&!J.maxFeePerGas)j.maxFeePerGas=g(j.maxFeePerGas);if(j.gasPrice&&!J.gasPrice)j.gasPrice=g(j.gasPrice);return{raw:I.raw,transaction:{from:F.from,...j}}}catch(I){throw H8(I,{...J,chain:$.chain})}}var fY=["blobVersionedHashes","chainId","fees","gas","nonce","type"],KK=new Map,C7=new S0(128);async function DJ($,J){let Q=J;Q.account??=$.account,Q.parameters??=fY;let{account:X,chain:Y=$.chain,nonceManager:Z,parameters:G}=Q,W=(()=>{if(typeof Y?.prepareTransactionRequest==="function")return{fn:Y.prepareTransactionRequest,runAt:["beforeFillTransaction"]};if(Array.isArray(Y?.prepareTransactionRequest))return{fn:Y.prepareTransactionRequest[0],runAt:Y.prepareTransactionRequest[1].runAt};return})(),K;async function q(){if(K)return K;if(typeof Q.chainId<"u")return Q.chainId;if(Y)return Y.id;return K=await A($,o$,"getChainId")({}),K}let V=X?p(X):X,M=Q.nonce;if(G.includes("nonce")&&typeof M>"u"&&V&&Z){let H=await q();M=await Z.consume({address:V.address,chainId:H,client:$})}if(W?.fn&&W.runAt?.includes("beforeFillTransaction"))Q=await W.fn({...Q,chain:Y},{phase:"beforeFillTransaction"}),M??=Q.nonce;let U=(()=>{if((G.includes("blobVersionedHashes")||G.includes("sidecars"))&&Q.kzg&&Q.blobs)return!1;if(C7.get($.uid)===!1)return!1;if(!["fees","gas"].some((S)=>G.includes(S)))return!1;if(G.includes("chainId")&&typeof Q.chainId!=="number")return!0;if(G.includes("nonce")&&typeof M!=="number")return!0;if(G.includes("fees")&&typeof Q.gasPrice!=="bigint"&&(typeof Q.maxFeePerGas!=="bigint"||typeof Q.maxPriorityFeePerGas!=="bigint"))return!0;if(G.includes("gas")&&typeof Q.gas!=="bigint")return!0;return!1})()?await A($,DX,"fillTransaction")({...Q,nonce:M}).then((H)=>{let{chainId:S,from:B,gas:F,gasPrice:I,nonce:P,maxFeePerBlobGas:j,maxFeePerGas:y,maxPriorityFeePerGas:x,type:b,...g}=H.transaction;return C7.set($.uid,!0),{...Q,...B?{from:B}:{},...b?{type:b}:{},...typeof S<"u"?{chainId:S}:{},...typeof F<"u"?{gas:F}:{},...typeof I<"u"?{gasPrice:I}:{},...typeof P<"u"?{nonce:P}:{},...typeof j<"u"?{maxFeePerBlobGas:j}:{},...typeof y<"u"?{maxFeePerGas:y}:{},...typeof x<"u"?{maxPriorityFeePerGas:x}:{},..."nonceKey"in g&&typeof g.nonceKey<"u"?{nonceKey:g.nonceKey}:{}}}).catch((H)=>{let S=H;if(S.name!=="TransactionExecutionError")return Q;if(S.walk?.((F)=>{let I=F;return I.name==="MethodNotFoundRpcError"||I.name==="MethodNotSupportedRpcError"}))C7.set($.uid,!1);return Q}):Q;M??=U.nonce,Q={...U,...V?{from:V?.address}:{},...M?{nonce:M}:{}};let{blobs:z,gas:w,kzg:L,type:O}=Q;if(W?.fn&&W.runAt?.includes("beforeFillParameters"))Q=await W.fn({...Q,chain:Y},{phase:"beforeFillParameters"});let C;async function N(){if(C)return C;return C=await A($,g$,"getBlock")({blockTag:"latest"}),C}if(G.includes("nonce")&&typeof M>"u"&&V&&!Z)Q.nonce=await A($,qX,"getTransactionCount")({address:V.address,blockTag:"pending"});if((G.includes("blobVersionedHashes")||G.includes("sidecars"))&&z&&L){let H=VX({blobs:z,kzg:L});if(G.includes("blobVersionedHashes")){let S=D1({commitments:H,to:"hex"});Q.blobVersionedHashes=S}if(G.includes("sidecars")){let S=MX({blobs:z,commitments:H,kzg:L}),B=N1({blobs:z,commitments:H,proofs:S,to:"hex"});Q.sidecars=B}}if(G.includes("chainId"))Q.chainId=await q();if((G.includes("fees")||G.includes("type"))&&typeof O>"u")try{Q.type=w1(Q)}catch{let H=KK.get($.uid);if(typeof H>"u")H=typeof(await N())?.baseFeePerGas==="bigint",KK.set($.uid,H);Q.type=H?"eip1559":"legacy"}if(G.includes("fees"))if(Q.type!=="legacy"&&Q.type!=="eip2930"){if(typeof Q.maxFeePerGas>"u"||typeof Q.maxPriorityFeePerGas>"u"){let H=await N(),{maxFeePerGas:S,maxPriorityFeePerGas:B}=await M1($,{block:H,chain:Y,request:Q});if(typeof Q.maxPriorityFeePerGas>"u"&&Q.maxFeePerGas&&Q.maxFeePerGas<B)throw new U7({maxPriorityFeePerGas:B});Q.maxPriorityFeePerGas=B,Q.maxFeePerGas=S}}else{if(typeof Q.maxFeePerGas<"u"||typeof Q.maxPriorityFeePerGas<"u")throw new a8;if(typeof Q.gasPrice>"u"){let H=await N(),{gasPrice:S}=await M1($,{block:H,chain:Y,request:Q,type:"legacy"});Q.gasPrice=S}}if(G.includes("gas")&&typeof w>"u")Q.gas=await A($,UX,"estimateGas")({...Q,account:V,prepare:V?.type==="local"?[]:["blobVersionedHashes"]});if(W?.fn&&W.runAt?.includes("afterFillParameters"))Q=await W.fn({...Q,chain:Y},{phase:"afterFillParameters"});return h$(Q),delete Q.parameters,Q}async function UX($,J){let{account:Q=$.account,prepare:X=!0}=J,Y=Q?p(Q):void 0,Z=(()=>{if(Array.isArray(X))return X;if(Y?.type!=="local")return["blobVersionedHashes"];return})();try{let G=await(async()=>{if(J.to)return J.to;if(J.authorizationList&&J.authorizationList.length>0)return await w8({authorization:J.authorizationList[0]}).catch(()=>{throw new R("`to` is required. Could not infer from `authorizationList`")});return})(),{accessList:W,authorizationList:K,blobs:q,blobVersionedHashes:V,blockNumber:M,blockTag:D,data:U,gas:z,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,value:H,stateOverride:S,...B}=X?await DJ($,{...J,parameters:Z,to:G}):J;if(z&&J.gas!==z)return z;let I=(typeof M==="bigint"?E(M):void 0)||D,P=WX(S);h$(J);let j=$.chain?.formatters?.transactionRequest?.format,x=(j||n$)({...A0(B,{format:j}),account:Y,accessList:W,authorizationList:K,blobs:q,blobVersionedHashes:V,data:U,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,to:G,value:H},"estimateGas");return BigInt(await $.request({method:"eth_estimateGas",params:P?[x,I??$.experimental_blockTag??"latest",P]:I?[x,I]:[x]}))}catch(G){throw s6(G,{...J,account:Y,chain:$.chain})}}async function qK($,J){let{abi:Q,address:X,args:Y,functionName:Z,dataSuffix:G=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,...W}=J,K=K$({abi:Q,args:Y,functionName:Z});try{return await A($,UX,"estimateGas")({data:`${K}${G?G.replace("0x",""):""}`,to:X,...W})}catch(q){let V=W.account?p(W.account):void 0;throw R0(q,{abi:Q,address:X,args:Y,docsPath:"/docs/contract/estimateContractGas",functionName:Z,sender:V?.address})}}X8();e8();k$();q0();XY();S$();SZ();j0();XY();GY();EJ();var VK="/docs/contract/decodeEventLog";function $Q($){let{abi:J,data:Q,strict:X,topics:Y}=$,Z=X??!0,[G,...W]=Y;if(!G)throw new a5({docsPath:VK});let K=J.find((O)=>O.type==="event"&&G===Q8(A$(O)));if(!(K&&("name"in K))||K.type!=="event")throw new e5(G,{docsPath:VK});let{name:q,inputs:V}=K,M=V?.some((O)=>!(("name"in O)&&O.name)),D=M?[]:{},U=V.map((O,C)=>[O,C]).filter(([O])=>("indexed"in O)&&O.indexed),z=[];for(let O=0;O<U.length;O++){let[C,N]=U[O],H=W[O];if(!H){if(Z)throw new k8({abiItem:K,param:C});z.push([C,N]);continue}D[M?N:C.name||N]=g3({param:C,value:H})}let w=V.filter((O)=>!(("indexed"in O)&&O.indexed)),L=Z?w:[...z.map(([O])=>O),...w];if(L.length>0){if(Q&&Q!=="0x")try{let O=PJ(L,Q);if(O){let C=0;if(!Z)for(let[N,H]of z)D[M?H:N.name||H]=O[C++];if(M){for(let N=0;N<V.length;N++)if(D[N]===void 0&&C<O.length)D[N]=O[C++]}else for(let N=0;N<w.length;N++)D[w[N].name]=O[C++]}}catch(O){if(Z){if(O instanceof sX||O instanceof YY)throw new $8({abiItem:K,data:Q,params:L,size:r(Q)});throw O}}else if(Z)throw new $8({abiItem:K,data:"0x",params:L,size:0})}return{eventName:q,args:Object.values(D).length>0?D:void 0}}function g3({param:$,value:J}){if($.type==="string"||$.type==="bytes"||$.type==="tuple"||$.type.match(/^(.*)\[(\d+)?\]$/))return J;return(PJ([$],J)||[])[0]}function NX($){let{abi:J,args:Q,logs:X,strict:Y=!0}=$,Z=(()=>{if(!$.eventName)return;if(Array.isArray($.eventName))return $.eventName;return[$.eventName]})(),G=J.filter((W)=>W.type==="event").map((W)=>({abi:W,selector:Q8(W)}));return X.map((W)=>{let K=G.filter((M)=>W.topics[0]===M.selector);if(K.length===0)return null;let q,V;for(let M of K)try{q=$Q({...W,abi:[M.abi],strict:!0}),V=M;break}catch{}if(!q&&!Y){V=K[0];try{q=$Q({data:W.data,topics:W.topics,abi:[V.abi],strict:!1})}catch{let M=V.abi.inputs?.some((D)=>!(("name"in D)&&D.name));return{...W,args:M?[]:{},eventName:V.abi.name}}}if(!q||!V)return null;if(Z&&!Z.includes(q.eventName))return null;if(!d3({args:q.args,inputs:V.abi.inputs,matchArgs:Q}))return null;return{...q,...W}}).filter(Boolean)}function d3($){let{args:J,inputs:Q,matchArgs:X}=$;if(!X)return!0;if(!J)return!1;function Y(Z,G,W){try{if(Z.type==="address")return P0(G,W);if(Z.type==="string"||Z.type==="bytes")return n(m$(G))===W;return G===W}catch{return!1}}if(Array.isArray(J)&&Array.isArray(X))return X.every((Z,G)=>{if(Z===null||Z===void 0)return!0;let W=Q[G];if(!W)return!1;return(Array.isArray(Z)?Z:[Z]).some((q)=>Y(W,q,J[G]))});if(typeof J==="object"&&!Array.isArray(J)&&typeof X==="object"&&!Array.isArray(X))return Object.entries(X).every(([Z,G])=>{if(G===null||G===void 0)return!0;let W=Q.find((q)=>q.name===Z);if(!W)return!1;return(Array.isArray(G)?G:[G]).some((q)=>Y(W,q,J[Z]))});return!1}m();function i$($,{args:J,eventName:Q}={}){return{...$,blockHash:$.blockHash?$.blockHash:null,blockNumber:$.blockNumber?BigInt($.blockNumber):null,blockTimestamp:$.blockTimestamp?BigInt($.blockTimestamp):$.blockTimestamp===null?null:void 0,logIndex:$.logIndex?Number($.logIndex):null,transactionHash:$.transactionHash?$.transactionHash:null,transactionIndex:$.transactionIndex?Number($.transactionIndex):null,...Q?{args:J,eventName:Q}:{}}}async function wX($,{address:J,blockHash:Q,fromBlock:X,toBlock:Y,event:Z,events:G,args:W,strict:K}={}){let q=K??!1,V=G??(Z?[Z]:void 0),M=[];if(V){if(M=[V.flatMap((w)=>WJ({abi:[w],eventName:w.name,args:G?void 0:W}))],Z)M=M[0]}let D;if(Q)D=await $.request({method:"eth_getLogs",params:[{address:J,topics:M,blockHash:Q}]});else D=await $.request({method:"eth_getLogs",params:[{address:J,topics:M,fromBlock:typeof X==="bigint"?E(X):X,toBlock:typeof Y==="bigint"?E(Y):Y}]});let U=D.map((z)=>i$(z));if(!V)return U;return NX({abi:V,args:W,logs:U,strict:q})}async function z1($,J){let{abi:Q,address:X,args:Y,blockHash:Z,eventName:G,fromBlock:W,toBlock:K,strict:q}=J,V=G?U0({abi:Q,name:G}):void 0,M=!V?Q.filter((D)=>D.type==="event"):void 0;return A($,wX,"getLogs")({address:X,args:Y,blockHash:Z,event:V,events:M,fromBlock:W,toBlock:K,strict:q})}nJ();N0();YQ();async function j$($,J){let{abi:Q,address:X,args:Y,functionName:Z,...G}=J,W=K$({abi:Q,args:Y,functionName:Z});try{let{data:K}=await A($,f0,"call")({...G,data:W,to:X});return s$({abi:Q,args:Y,functionName:Z,data:K||"0x"})}catch(K){throw R0(K,{abi:Q,address:X,args:Y,docsPath:"/docs/contract/readContract",functionName:Z})}}nJ();N0();YQ();async function rK($,J){let{abi:Q,address:X,args:Y,functionName:Z,dataSuffix:G=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,...W}=J,K=W.account?p(W.account):$.account,q=K$({abi:Q,args:Y,functionName:Z});try{let{data:V}=await A($,f0,"call")({batch:!1,data:`${q}${G?G.replace("0x",""):""}`,to:X,...W,account:K}),M=s$({abi:Q,args:Y,functionName:Z,data:V||"0x"}),D=Q.filter((U)=>("name"in U)&&U.name===J.functionName);return{result:M,request:{abi:D,address:X,args:Y,dataSuffix:G,functionName:Z,...W,account:K}}}catch(V){throw R0(V,{abi:Q,address:X,args:Y,docsPath:"/docs/contract/simulateContract",functionName:Z,sender:K?.address})}}S$();n8();var e7=new Map,tK=new Map,Zw=0;function r$($,J,Q){let X=++Zw,Y=()=>e7.get($)||[],Z=()=>{let V=Y();e7.set($,V.filter((M)=>M.id!==X))},G=()=>{let V=Y();if(!V.some((D)=>D.id===X))return;let M=tK.get($);if(V.length===1&&M){let D=M();if(D instanceof Promise)D.catch(()=>{})}Z()},W=Y();if(e7.set($,[...W,{id:X,fns:J}]),W&&W.length>0)return G;let K={};for(let V in J)K[V]=(...M)=>{let D=Y();if(D.length===0)return;for(let U of D)U.fns[V]?.(...M)};let q=Q(K);if(typeof q==="function")tK.set($,q);return G}async function ZQ($){return new Promise((J)=>setTimeout(J,$))}function y0($,{emitOnBegin:J,initialWaitTime:Q,interval:X}){let Y=!0,Z=()=>Y=!1;return(async()=>{let W;if(J)W=await $({unpoll:Z});let K=await Q?.(W)??X;await ZQ(K);let q=async()=>{if(!Y)return;await $({unpoll:Z}),await ZQ(X),q()};q()})(),Z}var Gw=new Map,Ww=new Map;function aK($){let J=(Y,Z)=>({clear:()=>Z.delete(Y),get:()=>Z.get(Y),set:(G)=>Z.set(Y,G)}),Q=J($,Gw),X=J($,Ww);return{clear:()=>{Q.clear(),X.clear()},promise:Q,response:X}}async function eK($,{cacheKey:J,cacheTime:Q=Number.POSITIVE_INFINITY}){let X=aK(J),Y=X.response.get();if(Y&&Q>0){if(Date.now()-Y.created.getTime()<Q)return Y.data}let Z=X.promise.get();if(!Z)Z=$(),X.promise.set(Z);try{let G=await Z;return X.response.set({created:new Date,data:G}),G}finally{X.promise.clear()}}var Kw=($)=>`blockNumber.${$}`;async function zJ($,{cacheTime:J=$.cacheTime}={}){let Q=await eK(()=>$.request({method:"eth_blockNumber"}),{cacheKey:Kw($.uid),cacheTime:J});return BigInt(Q)}async function C8($,{filter:J}){let Q="strict"in J&&J.strict,X=await J.request({method:"eth_getFilterChanges",params:[J.id]});if(typeof X[0]==="string")return X;let Y=X.map((Z)=>i$(Z));if(!("abi"in J)||!J.abi)return Y;return NX({abi:J.abi,logs:Y,strict:Q})}async function S8($,{filter:J}){return J.request({method:"eth_uninstallFilter",params:[J.id]})}function $2($,J){let{abi:Q,address:X,args:Y,batch:Z=!0,eventName:G,fromBlock:W,onError:K,onLogs:q,poll:V,pollingInterval:M=$.pollingInterval,strict:D}=J;return(()=>{if(typeof V<"u")return V;if(typeof W==="bigint")return!0;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})()?(()=>{let L=D??!1,O=o(["watchContractEvent",X,Y,Z,$.uid,G,M,L,W]);return r$(O,{onLogs:q,onError:K},(C)=>{let N;if(W!==void 0)N=W-1n;let H,S=!1,B=y0(async()=>{if(!S){try{H=await A($,l9,"createContractEventFilter")({abi:Q,address:X,args:Y,eventName:G,strict:L,fromBlock:W})}catch{}S=!0;return}try{let F;if(H)F=await A($,C8,"getFilterChanges")({filter:H});else{let I=await A($,zJ,"getBlockNumber")({});if(N&&N<I)F=await A($,z1,"getContractEvents")({abi:Q,address:X,args:Y,eventName:G,fromBlock:N+1n,toBlock:I,strict:L});else F=[];N=I}if(F.length===0)return;if(Z)C.onLogs(F);else for(let I of F)C.onLogs([I])}catch(F){if(H&&F instanceof T0)S=!1;C.onError?.(F)}},{emitOnBegin:!0,interval:M});return async()=>{if(H)await A($,S8,"uninstallFilter")({filter:H});B()}})})():(()=>{let L=D??!1,O=o(["watchContractEvent",X,Y,Z,$.uid,G,M,L]),C=!0,N=()=>C=!1;return r$(O,{onLogs:q,onError:K},(H)=>{return(async()=>{try{let S=(()=>{if($.transport.type==="fallback"){let I=$.transport.transports.find((P)=>P.config.type==="webSocket"||P.config.type==="ipc");if(!I)return $.transport;return I.value}return $.transport})(),B=G?WJ({abi:Q,eventName:G,args:Y}):[],{unsubscribe:F}=await S.subscribe({params:["logs",{address:X,topics:B}],onData(I){if(!C)return;let P=I.result;try{let{eventName:j,args:y}=$Q({abi:Q,data:P.data,topics:P.topics,strict:D}),x=i$(P,{args:y,eventName:j});H.onLogs([x])}catch(j){let y,x;if(j instanceof $8||j instanceof k8){if(D)return;y=j.abiItem.name,x=j.abiItem.inputs?.some((g)=>!(("name"in g)&&g.name))}let b=i$(P,{args:x?[]:{},eventName:y});H.onLogs([b])}},onError(I){H.onError?.(I)}});if(N=F,!C)N()}catch(S){K?.(S)}})(),()=>N()})})()}l();class p$ extends R{constructor({docsPath:$}={}){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(`
65
- `),{docsPath:$,docsSlug:"account",name:"AccountNotFoundError"})}}class n0 extends R{constructor({docsPath:$,metaMessages:J,type:Q}){super(`Account type "${Q}" is not supported.`,{docsPath:$,metaMessages:J,name:"AccountTypeNotSupportedError"})}}N0();l();bY();function EX({chain:$,currentChainId:J}){if(!$)throw new m7;if(J!==$.id)throw new d7({chain:$,currentChainId:J})}pJ();d8();MJ();async function jX($,{serializedTransaction:J}){return $.request({method:"eth_sendRawTransaction",params:[J]},{retryCount:0})}var $G=new S0(128);async function R8($,J){let{account:Q=$.account,assertChainId:X=!0,chain:Y=$.chain,accessList:Z,authorizationList:G,blobs:W,data:K,dataSuffix:q=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,type:L,value:O,...C}=J;if(typeof Q>"u")throw new p$({docsPath:"/docs/actions/wallet/sendTransaction"});let N=Q?p(Q):null;try{h$(J);let H=await(async()=>{if(J.to)return J.to;if(J.to===null)return;if(G&&G.length>0)return await w8({authorization:G[0]}).catch(()=>{throw new R("`to` is required. Could not infer from `authorizationList`.")});return})();if(N?.type==="json-rpc"||N===null){let S;if(Y!==null){if(S=await A($,o$,"getChainId")({}),X)EX({currentChainId:S,chain:Y})}let B=$.chain?.formatters?.transactionRequest?.format,I=(B||n$)({...A0(C,{format:B}),accessList:Z,account:N,authorizationList:G,blobs:W,chainId:S,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,to:H,type:L,value:O},"sendTransaction"),P=$G.get($.uid),j=P?"wallet_sendTransaction":"eth_sendTransaction";try{return await $.request({method:j,params:[I]},{retryCount:0})}catch(y){if(P===!1)throw y;let x=y;if(x.name==="InvalidInputRpcError"||x.name==="InvalidParamsRpcError"||x.name==="MethodNotFoundRpcError"||x.name==="MethodNotSupportedRpcError")return await $.request({method:"wallet_sendTransaction",params:[I]},{retryCount:0}).then((b)=>{return $G.set($.uid,!0),b}).catch((b)=>{let g=b;if(g.name==="MethodNotFoundRpcError"||g.name==="MethodNotSupportedRpcError")throw $G.set($.uid,!1),x;throw g});throw x}}if(N?.type==="local"){let S=await A($,DJ,"prepareTransactionRequest")({account:N,accessList:Z,authorizationList:G,blobs:W,chain:Y,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,nonceManager:N.nonceManager,parameters:[...fY,"sidecars"],type:L,value:O,...C,to:H}),B=Y?.serializers?.transaction,F=await N.signTransaction(S,{serializer:B});return await A($,jX,"sendRawTransaction")({serializedTransaction:F})}if(N?.type==="smart")throw new n0({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new n0({docsPath:"/docs/actions/wallet/sendTransaction",type:N?.type})}catch(H){if(H instanceof n0)throw H;throw H8(H,{...J,account:N,chain:J.chain||void 0})}}async function GQ($,J){return GQ.internal($,R8,"sendTransaction",J)}(function($){async function J(Q,X,Y,Z){let{abi:G,account:W=Q.account,address:K,args:q,functionName:V,...M}=Z;if(typeof W>"u")throw new p$({docsPath:"/docs/contract/writeContract"});let D=W?p(W):null,U=K$({abi:G,args:q,functionName:V});try{return await A(Q,X,Y)({data:U,to:K,account:D,...M})}catch(z){throw R0(z,{abi:G,address:K,args:q,docsPath:"/docs/contract/writeContract",functionName:V,sender:D?.address})}}$.internal=J})(GQ||(GQ={}));l();l();class JG extends R{constructor($){super(`Call bundle failed with status: ${$.statusCode}`,{name:"BundleFailedError"});Object.defineProperty(this,"result",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=$}}function WQ($,{delay:J=100,retryCount:Q=2,shouldRetry:X=()=>!0}={}){return new Promise((Y,Z)=>{let G=async({count:W=0}={})=>{let K=async({error:q})=>{let V=typeof J==="function"?J({count:W,error:q}):J;if(V)await ZQ(V);G({count:W+1})};try{let q=await $();Y(q)}catch(q){if(W<Q&&await X({count:W,error:q}))return K({error:q});Z(q)}};G()})}AJ();P$();P$();var QG={"0x0":"reverted","0x1":"success"};function gY($,J){let Q={...$,blockNumber:$.blockNumber?BigInt($.blockNumber):null,contractAddress:$.contractAddress?$.contractAddress:null,cumulativeGasUsed:$.cumulativeGasUsed?BigInt($.cumulativeGasUsed):null,effectiveGasPrice:$.effectiveGasPrice?BigInt($.effectiveGasPrice):null,gasUsed:$.gasUsed?BigInt($.gasUsed):null,logs:$.logs?$.logs.map((X)=>i$(X)):null,to:$.to?$.to:null,transactionIndex:$.transactionIndex?N$($.transactionIndex):null,status:$.status?QG[$.status]:null,type:$.type?N7[$.type]||$.type:null};if($.blobGasPrice)Q.blobGasPrice=BigInt($.blobGasPrice);if($.blobGasUsed)Q.blobGasUsed=BigInt($.blobGasUsed);return Q}var J2=GX("transactionReceipt",gY);l();n8();N0();P$();m();var XG="0x5792579257925792579257925792579257925792579257925792579257925792",YG=E(0,{size:32});async function P1($,J){let{account:Q=$.account,chain:X=$.chain,experimental_fallback:Y,experimental_fallbackDelay:Z=32,forceAtomic:G=!1,id:W,version:K="2.0.0"}=J,q=Q?p(Q):null,V=J.capabilities;if($.dataSuffix&&!J.capabilities?.dataSuffix)if(typeof $.dataSuffix==="string")V={...J.capabilities,dataSuffix:{value:$.dataSuffix,optional:!0}};else V={...J.capabilities,dataSuffix:{value:$.dataSuffix.value,...$.dataSuffix.required?{}:{optional:!0}}};let M=J.calls.map((D)=>{let U=D,z=U.abi?K$({abi:U.abi,functionName:U.functionName,args:U.args}):U.data;return{data:U.dataSuffix&&z?Q$([z,U.dataSuffix]):z,to:U.to,value:U.value?E(U.value):void 0}});try{let D=await $.request({method:"wallet_sendCalls",params:[{atomicRequired:G,calls:M,capabilities:V,chainId:E(X.id),from:q?.address,id:W,version:K}]},{retryCount:0});if(typeof D==="string")return{id:D};return D}catch(D){let U=D;if(Y&&(U.name==="MethodNotFoundRpcError"||U.name==="MethodNotSupportedRpcError"||U.name==="UnknownRpcError"||U.details.toLowerCase().includes("does not exist / is not available")||U.details.toLowerCase().includes("missing or invalid. request()")||U.details.toLowerCase().includes("did not match any variant of untagged enum")||U.details.toLowerCase().includes("account upgraded to unsupported contract")||U.details.toLowerCase().includes("eip-7702 not supported")||U.details.toLowerCase().includes("unsupported wc_ method")||U.details.toLowerCase().includes("feature toggled misconfigured")||U.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))){if(V){if(Object.values(V).some((C)=>!C.optional))throw new K8(new R("non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.",{details:"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`."}))}if(G&&M.length>1)throw new q8(new R("`forceAtomic` is not supported on fallback to `eth_sendTransaction`.",{details:"`forceAtomic` is not supported on fallback to `eth_sendTransaction`."}));let z=[];for(let O of M){let C=R8($,{account:q,chain:X,data:O.data,to:O.to,value:O.value?Z$(O.value):void 0});if(z.push(C),Z>0)await new Promise((N)=>setTimeout(N,Z))}let w=await Promise.allSettled(z);if(w.every((O)=>O.status==="rejected"))throw w[0].reason;let L=w.map((O)=>{if(O.status==="fulfilled")return O.value;return YG});return{id:Q$([...L,E(X.id,{size:32}),XG])}}throw H8(D,{...J,account:q,chain:J.chain})}}async function x1($,J){async function Q(V){if(V.endsWith(XG.slice(2))){let D=b$(d9(V,-64,-32)),U=d9(V,0,-64).slice(2).match(/.{1,64}/g),z=await Promise.all(U.map((L)=>YG.slice(2)!==L?$.request({method:"eth_getTransactionReceipt",params:[`0x${L}`]},{dedupe:!0}):void 0)),w=(()=>{if(z.some((L)=>L===null))return 100;if(z.every((L)=>L?.status==="0x1"))return 200;if(z.every((L)=>L?.status==="0x0"))return 500;return 600})();return{atomic:!1,chainId:N$(D),receipts:z.filter(Boolean),status:w,version:"2.0.0"}}return $.request({method:"wallet_getCallsStatus",params:[V]})}let{atomic:X=!1,chainId:Y,receipts:Z,version:G="2.0.0",...W}=await Q(J.id),[K,q]=(()=>{let V=W.status;if(V>=100&&V<200)return["pending",V];if(V>=200&&V<300)return["success",V];if(V>=300&&V<700)return["failure",V];if(V==="CONFIRMED")return["success",200];if(V==="PENDING")return["pending",100];return[void 0,V]})();return{...W,atomic:X,chainId:Y?N$(Y):void 0,receipts:Z?.map((V)=>({...V,blockNumber:Z$(V.blockNumber),gasUsed:Z$(V.gasUsed),status:QG[V.status]}))??[],statusCode:q,status:K,version:G}}async function k1($,J){let{id:Q,pollingInterval:X=$.pollingInterval,status:Y=({statusCode:w})=>w===200||w>=300,retryCount:Z=4,retryDelay:G=({count:w})=>~~(1<<w)*200,timeout:W=60000,throwOnFailure:K=!1}=J,q=o(["waitForCallsStatus",$.uid,Q]),{promise:V,resolve:M,reject:D}=FX(),U,z=r$(q,{resolve:M,reject:D},(w)=>{let L=y0(async()=>{let O=(C)=>{clearTimeout(U),L(),C(),z()};try{let C=await WQ(async()=>{let N=await A($,x1,"getCallsStatus")({id:Q});if(K&&N.status==="failure")throw new JG(N);return N},{retryCount:Z,delay:G});if(!Y(C))return;O(()=>w.resolve(C))}catch(C){O(()=>w.reject(C))}},{interval:X,emitOnBegin:!0});return L});return U=W?setTimeout(()=>{z(),clearTimeout(U),D(new Q2({id:Q}))},W):void 0,await V}class Q2 extends R{constructor({id:$}){super(`Timed out while waiting for call bundle with id "${$}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}var f1=256,y1;function v1($=11){if(!y1||f1+$>512){y1="",f1=0;for(let J=0;J<256;J++)y1+=(256+Math.random()*256|0).toString(16).substring(1)}return y1.substring(f1,f1+++$)}function b1($){let{batch:J,chain:Q,ccipRead:X,dataSuffix:Y,key:Z="base",name:G="Base Client",type:W="base"}=$,K=$.experimental_blockTag??(typeof Q?.experimental_preconfirmationTime==="number"?"pending":void 0),q=Q?.blockTime??12000,V=Math.min(Math.max(Math.floor(q/2),500),4000),M=$.pollingInterval??V,D=$.cacheTime??M,U=$.account?p($.account):void 0,{config:z,request:w,value:L}=$.transport({account:U,chain:Q,pollingInterval:M}),O={...z,...L},C={account:U,batch:J,cacheTime:D,ccipRead:X,chain:Q,dataSuffix:Y,key:Z,name:G,pollingInterval:M,request:w,transport:O,type:W,uid:v1(),...K?{experimental_blockTag:K}:{}};function N(H){return(S)=>{let B=S(H);for(let I in C)delete B[I];let F={...H,...B};return Object.assign(F,{extend:N(F)})}}return Object.assign(C,{extend:N(C)})}sJ();nJ();N0();XQ();m();l();Z8();function IX($){if(!($ instanceof R))return!1;let J=$.walk((Q)=>Q instanceof vQ);if(!(J instanceof vQ))return!1;if(J.data?.errorName==="HttpError")return!0;if(J.data?.errorName==="ResolverError")return!0;if(J.data?.errorName==="ResolverNotContract")return!0;if(J.data?.errorName==="ResolverNotFound")return!0;if(J.data?.errorName==="ReverseAddressMismatch")return!0;if(J.data?.errorName==="UnsupportedResolverProfile")return!0;return!1}hY();k$();m();q0();function h1($){if($.length!==66)return null;if($.indexOf("[")!==0)return null;if($.indexOf("]")!==65)return null;let J=`0x${$.slice(1,65)}`;if(!U$(J))return null;return J}function dY($){let J=new Uint8Array(32).fill(0);if(!$)return i(J);let Q=$.split(".");for(let X=Q.length-1;X>=0;X-=1){let Y=h1(Q[X]),Z=Y?m$(Y):n(g0(Q[X]),"bytes");J=n(Q$([J,Z]),"bytes")}return i(J)}k$();function X2($){return`[${$.slice(2)}]`}k$();m();q0();function Y2($){let J=new Uint8Array(32).fill(0);if(!$)return i(J);return h1($)||n(g0($))}function _X($){let J=$.replace(/^\.|\.$/gm,"");if(J.length===0)return new Uint8Array(1);let Q=new Uint8Array(g0(J).byteLength+2),X=0,Y=J.split(".");for(let Z=0;Z<Y.length;Z++){let G=g0(Y[Z]);if(G.byteLength>255)G=g0(X2(Y2(Y[Z])));Q[X]=G.length,Q.set(G,X+1),X+=G.length+1}if(Q.byteLength!==X+1)return Q.slice(0,X+1);return Q}async function Z2($,J){let{blockNumber:Q,blockTag:X,coinType:Y,name:Z,gatewayUrls:G,strict:W}=J,{chain:K}=$,q=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!K)throw Error("client chain not configured. universalResolverAddress is required.");return k0({blockNumber:Q,chain:K,contract:"ensUniversalResolver"})})(),V=K?.ensTlds;if(V&&!V.some((D)=>Z.endsWith(D)))return null;let M=(()=>{if(Y!=null)return[dY(Z),BigInt(Y)];return[dY(Z)]})();try{let D=K$({abi:b7,functionName:"addr",args:M}),U={address:q,abi:E1,functionName:"resolveWithGateways",args:[t(_X(Z)),D,G??[rJ]],blockNumber:Q,blockTag:X},w=await A($,j$,"readContract")(U);if(w[0]==="0x")return null;let L=s$({abi:b7,args:M,functionName:"addr",data:w[0]});if(L==="0x")return null;if(b$(L)==="0x00")return null;return L}catch(D){if(W)throw D;if(IX(D))return null;throw D}}l();class ZG extends R{constructor({data:$}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify($)}`],name:"EnsAvatarInvalidMetadataError"})}}class KQ extends R{constructor({reason:$}){super(`ENS NFT avatar URI is invalid. ${$}`,{name:"EnsAvatarInvalidNftUriError"})}}class mY extends R{constructor({uri:$}){super(`Unable to resolve ENS avatar URI "${$}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class GG extends R{constructor({namespace:$}){super(`ENS NFT avatar namespace "${$}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}var qw=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Vw=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,Mw=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,Dw=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Uw($){try{let J=await fetch($,{method:"HEAD"});if(J.status===200)return J.headers.get("content-type")?.startsWith("image/");return!1}catch(J){if(typeof J==="object"&&typeof J.response<"u")return!1;if(!Object.hasOwn(globalThis,"Image"))return!1;return new Promise((Q)=>{let X=new Image;X.onload=()=>{Q(!0)},X.onerror=()=>{Q(!1)},X.src=$})}}function G2($,J){if(!$)return J;if($.endsWith("/"))return $.slice(0,-1);return $}function WG({uri:$,gatewayUrls:J}){let Q=Mw.test($);if(Q)return{uri:$,isOnChain:!0,isEncoded:Q};let X=G2(J?.ipfs,"https://ipfs.io"),Y=G2(J?.arweave,"https://arweave.net"),Z=$.match(qw),{protocol:G,subpath:W,target:K,subtarget:q=""}=Z?.groups||{},V=G==="ipns:/"||W==="ipns/",M=G==="ipfs:/"||W==="ipfs/"||Vw.test($);if($.startsWith("http")&&!V&&!M){let U=$;if(J?.arweave)U=$.replace(/https:\/\/arweave.net/g,J?.arweave);return{uri:U,isOnChain:!1,isEncoded:!1}}if((V||M)&&K)return{uri:`${X}/${V?"ipns":"ipfs"}/${K}${q}`,isOnChain:!1,isEncoded:!1};if(G==="ar:/"&&K)return{uri:`${Y}/${K}${q||""}`,isOnChain:!1,isEncoded:!1};let D=$.replace(Dw,"");if(D.startsWith("<svg"))D=`data:image/svg+xml;base64,${btoa(D)}`;if(D.startsWith("data:")||D.startsWith("{"))return{uri:D,isOnChain:!0,isEncoded:!1};throw new mY({uri:$})}function KG($){if(typeof $!=="object"||!("image"in $)&&!("image_url"in $)&&!("image_data"in $))throw new ZG({data:$});return $.image||$.image_url||$.image_data}async function W2({gatewayUrls:$,uri:J}){try{let Q=await fetch(J).then((Y)=>Y.json());return await g1({gatewayUrls:$,uri:KG(Q)})}catch{throw new mY({uri:J})}}async function g1({gatewayUrls:$,uri:J}){let{uri:Q,isOnChain:X}=WG({uri:J,gatewayUrls:$});if(X)return Q;if(await Uw(Q))return Q;throw new mY({uri:J})}function K2($){let J=$;if(J.startsWith("did:nft:"))J=J.replace("did:nft:","").replace(/_/g,"/");let[Q,X,Y]=J.split("/"),[Z,G]=Q.split(":"),[W,K]=X.split(":");if(!Z||Z.toLowerCase()!=="eip155")throw new KQ({reason:"Only EIP-155 supported"});if(!G)throw new KQ({reason:"Chain ID not found"});if(!K)throw new KQ({reason:"Contract address not found"});if(!Y)throw new KQ({reason:"Token ID not found"});if(!W)throw new KQ({reason:"ERC namespace not found"});return{chainID:Number.parseInt(G,10),namespace:W.toLowerCase(),contractAddress:K,tokenID:Y}}async function q2($,{nft:J}){if(J.namespace==="erc721")return j$($,{address:J.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(J.tokenID)]});if(J.namespace==="erc1155")return j$($,{address:J.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(J.tokenID)]});throw new GG({namespace:J.namespace})}async function V2($,{gatewayUrls:J,record:Q}){if(/eip155:/i.test(Q))return Nw($,{gatewayUrls:J,record:Q});return g1({uri:Q,gatewayUrls:J})}async function Nw($,{gatewayUrls:J,record:Q}){let X=K2(Q),Y=await q2($,{nft:X}),{uri:Z,isOnChain:G,isEncoded:W}=WG({uri:Y,gatewayUrls:J});if(G&&(Z.includes("data:application/json;base64,")||Z.startsWith("{"))){let q=W?atob(Z.replace("data:application/json;base64,","")):Z,V=JSON.parse(q);return g1({uri:KG(V),gatewayUrls:J})}let K=X.tokenID;if(X.namespace==="erc1155")K=K.replace("0x","").padStart(64,"0");return W2({gatewayUrls:J,uri:Z.replace(/(?:0x)?{id}/,K)})}sJ();nJ();N0();XQ();m();hY();async function d1($,J){let{blockNumber:Q,blockTag:X,key:Y,name:Z,gatewayUrls:G,strict:W}=J,{chain:K}=$,q=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!K)throw Error("client chain not configured. universalResolverAddress is required.");return k0({blockNumber:Q,chain:K,contract:"ensUniversalResolver"})})(),V=K?.ensTlds;if(V&&!V.some((M)=>Z.endsWith(M)))return null;try{let M={address:q,abi:E1,args:[t(_X(Z)),K$({abi:v7,functionName:"text",args:[dY(Z),Y]}),G??[rJ]],functionName:"resolveWithGateways",blockNumber:Q,blockTag:X},U=await A($,j$,"readContract")(M);if(U[0]==="0x")return null;let z=s$({abi:v7,functionName:"text",data:U[0]});return z===""?null:z}catch(M){if(W)throw M;if(IX(M))return null;throw M}}async function M2($,{blockNumber:J,blockTag:Q,assetGatewayUrls:X,name:Y,gatewayUrls:Z,strict:G,universalResolverAddress:W}){let K=await A($,d1,"getEnsText")({blockNumber:J,blockTag:Q,key:"avatar",name:Y,universalResolverAddress:W,gatewayUrls:Z,strict:G});if(!K)return null;try{return await V2($,{record:K,gatewayUrls:X})}catch{return null}}sJ();XQ();hY();async function D2($,J){let{address:Q,blockNumber:X,blockTag:Y,coinType:Z=60n,gatewayUrls:G,strict:W}=J,{chain:K}=$,q=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!K)throw Error("client chain not configured. universalResolverAddress is required.");return k0({blockNumber:X,chain:K,contract:"ensUniversalResolver"})})();try{let V={address:q,abi:yK,args:[Q,Z,G??[rJ]],functionName:"reverseWithGateways",blockNumber:X,blockTag:Y},M=A($,j$,"readContract"),[D]=await M(V);return D||null}catch(V){if(W)throw V;if(IX(V))return null;throw V}}XQ();m();async function U2($,J){let{blockNumber:Q,blockTag:X,name:Y}=J,{chain:Z}=$,G=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!Z)throw Error("client chain not configured. universalResolverAddress is required.");return k0({blockNumber:Q,chain:Z,contract:"ensUniversalResolver"})})(),W=Z?.ensTlds;if(W&&!W.some((q)=>Y.endsWith(q)))throw Error(`${Y} is not a valid ENS TLD (${W?.join(", ")}) for chain "${Z.name}" (id: ${Z.id}).`);let[K]=await A($,j$,"readContract")({address:G,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[t(_X(Y))],blockNumber:Q,blockTag:X});return K}YQ();m();p7();pJ();MJ();async function m1($,J){let{account:Q=$.account,blockNumber:X,blockTag:Y="latest",blobs:Z,data:G,gas:W,gasPrice:K,maxFeePerBlobGas:q,maxFeePerGas:V,maxPriorityFeePerGas:M,to:D,value:U,...z}=J,w=Q?p(Q):void 0;try{h$(J);let O=(typeof X==="bigint"?E(X):void 0)||Y,C=$.chain?.formatters?.transactionRequest?.format,H=(C||n$)({...A0(z,{format:C}),account:w,blobs:Z,data:G,gas:W,gasPrice:K,maxFeePerBlobGas:q,maxFeePerGas:V,maxPriorityFeePerGas:M,to:D,value:U},"createAccessList"),S=await $.request({method:"eth_createAccessList",params:[H,O]});return{accessList:S.accessList,gasUsed:BigInt(S.gasUsed)}}catch(L){throw T1(L,{...J,account:w,chain:$.chain})}}async function N2($){let J=Y8($,{method:"eth_newBlockFilter"}),Q=await $.request({method:"eth_newBlockFilter"});return{id:Q,request:J(Q),type:"block"}}m();async function u1($,{address:J,args:Q,event:X,events:Y,fromBlock:Z,strict:G,toBlock:W}={}){let K=Y??(X?[X]:void 0),q=Y8($,{method:"eth_newFilter"}),V=[];if(K){if(V=[K.flatMap((U)=>WJ({abi:[U],eventName:U.name,args:Q}))],X)V=V[0]}let M=await $.request({method:"eth_newFilter",params:[{address:J,fromBlock:typeof Z==="bigint"?E(Z):Z,toBlock:typeof W==="bigint"?E(W):W,...V.length?{topics:V}:{}}]});return{abi:K,args:Q,eventName:X?X.name:void 0,fromBlock:Z,id:M,request:q(M),strict:Boolean(G),toBlock:W,type:"event"}}async function p1($){let J=Y8($,{method:"eth_newPendingTransactionFilter"}),Q=await $.request({method:"eth_newPendingTransactionFilter"});return{id:Q,request:J(Q),type:"transaction"}}sJ();nJ();N0();m();YQ();async function w2($,{address:J,blockNumber:Q,blockTag:X=$.experimental_blockTag??"latest"}){if($.batch?.multicall&&$.chain?.contracts?.multicall3){let G=$.chain.contracts.multicall3.address,W=K$({abi:wJ,functionName:"getEthBalance",args:[J]}),{data:K}=await A($,f0,"call")({to:G,data:W,blockNumber:Q,blockTag:X});return s$({abi:wJ,functionName:"getEthBalance",args:[J],data:K||"0x"})}let Y=typeof Q==="bigint"?E(Q):void 0,Z=await $.request({method:"eth_getBalance",params:[J,Y||X]});return BigInt(Z)}async function z2($){let J=await $.request({method:"eth_blobBaseFee"});return BigInt(J)}P$();m();async function H2($,{blockHash:J,blockNumber:Q,blockTag:X="latest"}={}){let Y=Q!==void 0?E(Q):void 0,Z;if(J)Z=await $.request({method:"eth_getBlockTransactionCountByHash",params:[J]},{dedupe:!0});else Z=await $.request({method:"eth_getBlockTransactionCountByNumber",params:[Y||X]},{dedupe:Boolean(Y)});return N$(Z)}m();async function uY($,{address:J,blockNumber:Q,blockTag:X="latest"}){let Y=Q!==void 0?E(Q):void 0,Z=await $.request({method:"eth_getCode",params:[J,Y||X]},{dedupe:Boolean(Y)});if(Z==="0x")return;return Z}l();class qG extends R{constructor({address:$}){super(`No EIP-712 domain found on contract "${$}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${$}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function O2($,J){let{address:Q,factory:X,factoryData:Y}=J;try{let[Z,G,W,K,q,V,M]=await A($,j$,"readContract")({abi:ww,address:Q,functionName:"eip712Domain",factory:X,factoryData:Y});return{domain:{name:G,version:W,chainId:Number(K),verifyingContract:q,salt:V},extensions:M,fields:Z}}catch(Z){let G=Z;if(G.name==="ContractFunctionExecutionError"&&G.cause.name==="ContractFunctionZeroDataError")throw new qG({address:Q});throw G}}var ww=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];m();function L2($){return{baseFeePerGas:$.baseFeePerGas.map((J)=>BigInt(J)),gasUsedRatio:$.gasUsedRatio,oldestBlock:BigInt($.oldestBlock),reward:$.reward?.map((J)=>J.map((Q)=>BigInt(Q)))}}async function C2($,{blockCount:J,blockNumber:Q,blockTag:X="latest",rewardPercentiles:Y}){let Z=typeof Q==="bigint"?E(Q):void 0,G=await $.request({method:"eth_feeHistory",params:[E(J),Z||X,Y]},{dedupe:Boolean(Z)});return L2(G)}async function S2($,{filter:J}){let Q=J.strict??!1,Y=(await J.request({method:"eth_getFilterLogs",params:[J.id]})).map((Z)=>i$(Z));if(!J.abi)return Y;return NX({abi:J.abi,logs:Y,strict:Q})}m();S$();I0();M0();TQ();m();u9();function pY($,J){if($.length!==J.length)throw new rX({expectedLength:$.length,givenLength:J.length});let Q=[];for(let X=0;X<$.length;X++){let Y=$[X],Z=J[X];Q.push(R2(Y,Z))}return R$(Q)}function R2($,J,Q=!1){if($==="address"){let G=J;if(!s(G))throw new Y$({address:G});return G0(G.toLowerCase(),{size:Q?32:null})}if($==="string")return K0(J);if($==="bytes")return J;if($==="bool")return G0(y8(J),{size:Q?32:1});let X=$.match(AQ);if(X){let[G,W,K="256"]=X,q=Number.parseInt(K,10)/8;return E(J,{size:Q?32:q,signed:W==="int"})}let Y=$.match(m9);if(Y){let[G,W]=Y;if(Number.parseInt(W,10)!==(J.length-2)/2)throw new eX({expectedSize:Number.parseInt(W,10),givenSize:(J.length-2)/2});return G0(J,{dir:"right",size:Q?32:null})}let Z=$.match(g4);if(Z&&Array.isArray(J)){let[G,W]=Z,K=[];for(let q=0;q<J.length;q++)K.push(R2(W,J[q],!0));if(K.length===0)return"0x";return R$(K)}throw new YZ($)}function VG($){if(!$)return!1;if(typeof $!=="object")return!1;if(!("BYTES_PER_ELEMENT"in $))return!1;return $.BYTES_PER_ELEMENT===1&&$.constructor.name==="Uint8Array"}TQ();AJ();k$();q0();YJ();function MG($){let J=m$(V0($.from)),Q=G0(VG($.salt)?$.salt:m$($.salt),{size:32}),X=(()=>{if("bytecodeHash"in $){if(VG($.bytecodeHash))return $.bytecodeHash;return m$($.bytecodeHash)}return n($.bytecode,"bytes")})();return V0(D0(n(Q$([m$("0xff"),J,Q,X])),12))}m();_0();m();V1();I0();l();bY();uJ();M0();j0();AJ();P$();function B2($){let{authorizationList:J}=$;if(J)for(let Q of J){let{chainId:X}=Q,Y=Q.address;if(!s(Y))throw new Y$({address:Y});if(X<0)throw new BX({chainId:X})}l1($)}function F2($){let{blobVersionedHashes:J}=$;if(J){if(J.length===0)throw new kY;for(let Q of J){let X=r(Q),Y=N$(D0(Q,0,1));if(X!==32)throw new O7({hash:Q,size:X});if(Y!==U1)throw new L7({hash:Q,version:Y})}}l1($)}function l1($){let{chainId:J,maxPriorityFeePerGas:Q,maxFeePerGas:X,to:Y}=$;if(J<=0)throw new BX({chainId:J});if(Y&&!s(Y))throw new Y$({address:Y});if(X&&X>lJ)throw new l0({maxFeePerGas:X});if(Q&&X&&Q>X)throw new mJ({maxFeePerGas:X,maxPriorityFeePerGas:Q})}function E2($){let{chainId:J,maxPriorityFeePerGas:Q,gasPrice:X,maxFeePerGas:Y,to:Z}=$;if(J<=0)throw new BX({chainId:J});if(Z&&!s(Z))throw new Y$({address:Z});if(Q||Y)throw new R("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(X&&X>lJ)throw new l0({maxFeePerGas:X})}function j2($){let{chainId:J,maxPriorityFeePerGas:Q,gasPrice:X,maxFeePerGas:Y,to:Z}=$;if(Z&&!s(Z))throw new Y$({address:Z});if(typeof J<"u"&&J<=0)throw new BX({chainId:J});if(Q||Y)throw new R("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(X&&X>lJ)throw new l0({maxFeePerGas:X})}I0();_0();M0();function lY($){if(!$||$.length===0)return[];let J=[];for(let Q=0;Q<$.length;Q++){let{address:X,storageKeys:Y}=$[Q];for(let Z=0;Z<Y.length;Z++)if(Y[Z].length-2!==64)throw new AZ({storageKey:Y[Z]});if(!s(X,{strict:!1}))throw new Y$({address:X});J.push([X,Y])}return J}function c1($,J){let Q=w1($);if(Q==="eip1559")return Ow($,J);if(Q==="eip2930")return Lw($,J);if(Q==="eip4844")return Hw($,J);if(Q==="eip7702")return zw($,J);return Cw($,J)}function zw($,J){let{authorizationList:Q,chainId:X,gas:Y,nonce:Z,to:G,value:W,maxFeePerGas:K,maxPriorityFeePerGas:q,accessList:V,data:M}=$;B2($);let D=lY(V),U=I2(Q);return R$(["0x04",p0([E(X),Z?E(Z):"0x",q?E(q):"0x",K?E(K):"0x",Y?E(Y):"0x",G??"0x",W?E(W):"0x",M??"0x",D,U,...TX($,J)])])}function Hw($,J){let{chainId:Q,gas:X,nonce:Y,to:Z,value:G,maxFeePerBlobGas:W,maxFeePerGas:K,maxPriorityFeePerGas:q,accessList:V,data:M}=$;F2($);let{blobVersionedHashes:D,sidecars:U}=$;if($.blobs&&(typeof D>"u"||typeof U>"u")){let N=typeof $.blobs[0]==="string"?$.blobs:$.blobs.map((B)=>i(B)),H=$.kzg,S=VX({blobs:N,kzg:H});if(typeof D>"u")D=D1({commitments:S});if(typeof U>"u"){let B=MX({blobs:N,commitments:S,kzg:H});U=N1({blobs:N,commitments:S,proofs:B})}}let z=lY(V),w=[E(Q),Y?E(Y):"0x",q?E(q):"0x",K?E(K):"0x",X?E(X):"0x",Z??"0x",G?E(G):"0x",M??"0x",z,W?E(W):"0x",D??[],...TX($,J)],L=[],O=[],C=[];if(U)for(let N=0;N<U.length;N++){let{blob:H,commitment:S,proof:B}=U[N];L.push(H),O.push(S),C.push(B)}return R$(["0x03",U?p0([w,L,O,C]):p0(w)])}function Ow($,J){let{chainId:Q,gas:X,nonce:Y,to:Z,value:G,maxFeePerGas:W,maxPriorityFeePerGas:K,accessList:q,data:V}=$;l1($);let M=lY(q),D=[E(Q),Y?E(Y):"0x",K?E(K):"0x",W?E(W):"0x",X?E(X):"0x",Z??"0x",G?E(G):"0x",V??"0x",M,...TX($,J)];return R$(["0x02",p0(D)])}function Lw($,J){let{chainId:Q,gas:X,data:Y,nonce:Z,to:G,value:W,accessList:K,gasPrice:q}=$;E2($);let V=lY(K),M=[E(Q),Z?E(Z):"0x",q?E(q):"0x",X?E(X):"0x",G??"0x",W?E(W):"0x",Y??"0x",V,...TX($,J)];return R$(["0x01",p0(M)])}function Cw($,J){let{chainId:Q=0,gas:X,data:Y,nonce:Z,to:G,value:W,gasPrice:K}=$;j2($);let q=[Z?E(Z):"0x",K?E(K):"0x",X?E(X):"0x",G??"0x",W?E(W):"0x",Y??"0x"];if(J){let V=(()=>{if(J.v>=35n){if((J.v-35n)/2n>0)return J.v;return 27n+(J.v===35n?0n:1n)}if(Q>0)return BigInt(Q*2)+BigInt(35n+J.v-27n);let U=27n+(J.v===27n?0n:1n);if(J.v!==U)throw new _Z({v:J.v});return U})(),M=b$(J.r),D=b$(J.s);q=[...q,E(V),M==="0x00"?"0x":M,D==="0x00"?"0x":D]}else if(Q>0)q=[...q,E(Q),"0x","0x"];return p0(q)}function TX($,J){let Q=J??$,{v:X,yParity:Y}=Q;if(typeof Q.r>"u")return[];if(typeof Q.s>"u")return[];if(typeof X>"u"&&typeof Y>"u")return[];let Z=b$(Q.r),G=b$(Q.s);return[(()=>{if(typeof Y==="number")return Y?E(1):"0x";if(X===0n)return"0x";if(X===1n)return E(1);return X===27n?"0x":E(1)})(),Z==="0x00"?"0x":Z,G==="0x00"?"0x":G]}function I2($){if(!$||$.length===0)return[];let J=[];for(let Q of $){let{chainId:X,nonce:Y,...Z}=Q,G=Q.address;J.push([X?t(X):"0x",G,Y?t(Y):"0x",...TX({},Z)])}return J}YJ();e8();async function _2({address:$,authorization:J,signature:Q}){return P0(V0($),await w8({authorization:J,signature:Q}))}l();l8();n8();m();d8();var n1=new S0(8192);function T2($,{enabled:J=!0,id:Q}){if(!J||!Q)return $();if(n1.get(Q))return n1.get(Q);let X=$().finally(()=>n1.delete(Q));return n1.set(Q,X),X}function A2($,J={}){return async(Q,X={})=>{let{dedupe:Y=!1,methods:Z,retryDelay:G=150,retryCount:W=3,uid:K}={...J,...X},{method:q}=Q;if(Z?.exclude?.includes(q))throw new W8(Error("method not supported"),{method:q});if(Z?.include&&!Z.include.includes(q))throw new W8(Error("method not supported"),{method:q});let V=Y?K0(`${K}.${o(Q)}`):void 0;return T2(()=>WQ(async()=>{try{return await $(Q)}catch(M){let D=M;switch(D.code){case bQ.code:throw new bQ(D);case hQ.code:throw new hQ(D);case gQ.code:throw new gQ(D,{method:Q.method});case dQ.code:throw new dQ(D);case kJ.code:throw new kJ(D);case T0.code:throw new T0(D);case mQ.code:throw new mQ(D);case uQ.code:throw new uQ(D);case G8.code:throw new G8(D);case W8.code:throw new W8(D,{method:Q.method});case c8.code:throw new c8(D);case pQ.code:throw new pQ(D);case fJ.code:throw new fJ(D);case lQ.code:throw new lQ(D);case cQ.code:throw new cQ(D);case nQ.code:throw new nQ(D);case oQ.code:throw new oQ(D);case iQ.code:throw new iQ(D);case K8.code:throw new K8(D);case sQ.code:throw new sQ(D);case rQ.code:throw new rQ(D);case tQ.code:throw new tQ(D);case aQ.code:throw new aQ(D);case eQ.code:throw new eQ(D);case q8.code:throw new q8(D);case 5000:throw new fJ(D);case V8.code:throw new V8(D);default:if(M instanceof R)throw M;throw new yZ(D)}}},{delay:({count:M,error:D})=>{if(D&&D instanceof m0){let U=D?.headers?.get("Retry-After");if(U?.match(/\d/))return Number.parseInt(U,10)*1000}return~~(1<<M)*G},retryCount:W,shouldRetry:({error:M})=>Sw(M)}),{enabled:Y,id:V})}}function Sw($){if("code"in $&&typeof $.code==="number"){if($.code===-1)return!0;if($.code===c8.code)return!0;if($.code===kJ.code)return!0;return!1}if($ instanceof m0&&$.status){if($.status===403)return!0;if($.status===408)return!0;if($.status===413)return!0;if($.status===429)return!0;if($.status===500)return!0;if($.status===502)return!0;if($.status===503)return!0;if($.status===504)return!0;return!1}return!0}function DG($){let J={formatters:void 0,fees:void 0,serializers:void 0,...$};function Q(X){return(Y)=>{let Z=typeof Y==="function"?Y(X):Y,G={...X,...Z};return Object.assign(G,{extend:Q(G)})}}return Object.assign(J,{extend:Q(J)})}P$();m();l8();function P2($,{errorInstance:J=Error("timed out"),timeout:Q,signal:X}){return new Promise((Y,Z)=>{(async()=>{let G;try{let W=new AbortController;if(Q>0)G=setTimeout(()=>{if(X)W.abort();else Z(J)},Q);Y(await $({signal:W?.signal||null}))}catch(W){if(W?.name==="AbortError")Z(J);Z(W)}finally{clearTimeout(G)}})()})}function Rw(){return{current:0,take(){return this.current++},reset(){this.current=0}}}var UG=Rw();function x2($,J={}){let{url:Q,headers:X}=Bw($);return{async request(Y){let{body:Z,fetchFn:G=J.fetchFn??fetch,onRequest:W=J.onRequest,onResponse:K=J.onResponse,timeout:q=J.timeout??1e4}=Y,V={...J.fetchOptions??{},...Y.fetchOptions??{}},{headers:M,method:D,signal:U}=V;try{let z=await P2(async({signal:L})=>{let O={...V,body:Array.isArray(Z)?o(Z.map((S)=>({jsonrpc:"2.0",id:S.id??UG.take(),...S}))):o({jsonrpc:"2.0",id:Z.id??UG.take(),...Z}),headers:{...X,"Content-Type":"application/json",...M},method:D||"POST",signal:U||(q>0?L:null)},C=new Request(Q,O),N=await W?.(C,O)??{...O,url:Q};return await G(N.url??Q,N)},{errorInstance:new e9({body:Z,url:Q}),timeout:q,signal:!0});if(K)await K(z);let w;if(z.headers.get("Content-Type")?.startsWith("application/json"))w=await z.json();else{w=await z.text();try{w=JSON.parse(w||"{}")}catch(L){if(z.ok)throw L;w={error:w}}}if(!z.ok)throw new m0({body:Z,details:o(w.error)||z.statusText,headers:z.headers,status:z.status,url:Q});return w}catch(z){if(z instanceof m0)throw z;if(z instanceof e9)throw z;throw new m0({body:Z,cause:z,url:Q})}}}}function Bw($){try{let J=new URL($),Q=(()=>{if(J.username){let X=`${decodeURIComponent(J.username)}:${decodeURIComponent(J.password)}`;return J.username="",J.password="",{url:J.toString(),headers:{Authorization:`Basic ${btoa(X)}`}}}return})();return{url:J.toString(),...Q}}catch{return{url:$}}}q0();var k2=`\x19Ethereum Signed Message:
66
- `;j0();m();function f2($){let J=(()=>{if(typeof $==="string")return K0($);if(typeof $.raw==="string")return $.raw;return i($.raw)})(),Q=K0(`${k2}${r(J)}`);return Q$([Q,J])}function AX($,J){return n(f2($),J)}ZJ();m();q0();S$();I0();l();class NG extends R{constructor({domain:$}){super(`Invalid domain "${o($)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class wG extends R{constructor({primaryType:$,types:J}){super(`Invalid primary type \`${$}\` must be one of \`${JSON.stringify(Object.keys(J))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class zG extends R{constructor({type:$}){super(`Struct type "${$}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}M0();j0();m();u9();function y2($){let{domain:J,message:Q,primaryType:X,types:Y}=$,Z=(K,q)=>{let V={...q};for(let M of K){let{name:D,type:U}=M;if(U==="address")V[D]=V[D].toLowerCase()}return V},G=(()=>{if(!Y.EIP712Domain)return{};if(!J)return{};return Z(Y.EIP712Domain,J)})(),W=(()=>{if(X==="EIP712Domain")return;return Z(Y[X],Q)})();return o({domain:G,message:W,primaryType:X,types:Y})}function o1($){let{domain:J,message:Q,primaryType:X,types:Y}=$,Z=(G,W)=>{for(let K of G){let{name:q,type:V}=K,M=W[q],D=V.match(AQ);if(D&&(typeof M==="number"||typeof M==="bigint")){let[w,L,O]=D;E(M,{signed:L==="int",size:Number.parseInt(O,10)/8})}if(V==="address"&&typeof M==="string"&&!s(M))throw new Y$({address:M});let U=V.match(m9);if(U){let[w,L]=U;if(L&&r(M)!==Number.parseInt(L,10))throw new eX({expectedSize:Number.parseInt(L,10),givenSize:r(M)})}let z=Y[V];if(z)Fw(V),Z(z,M)}};if(Y.EIP712Domain&&J){if(typeof J!=="object")throw new NG({domain:J});Z(Y.EIP712Domain,J)}if(X!=="EIP712Domain")if(Y[X])Z(Y[X],Q);else throw new wG({primaryType:X,types:Y})}function i1({domain:$}){return[typeof $?.name==="string"&&{name:"name",type:"string"},$?.version&&{name:"version",type:"string"},(typeof $?.chainId==="number"||typeof $?.chainId==="bigint")&&{name:"chainId",type:"uint256"},$?.verifyingContract&&{name:"verifyingContract",type:"address"},$?.salt&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Fw($){if($==="address"||$==="bool"||$==="string"||$.startsWith("bytes")||$.startsWith("uint")||$.startsWith("int"))throw new zG({type:$})}function s1($){let{domain:J={},message:Q,primaryType:X}=$,Y={EIP712Domain:i1({domain:J}),...$.types};o1({domain:J,message:Q,primaryType:X,types:Y});let Z=["0x1901"];if(J)Z.push(Ew({domain:J,types:Y}));if(X!=="EIP712Domain")Z.push(v2({data:Q,primaryType:X,types:Y}));return n(Q$(Z))}function Ew({domain:$,types:J}){return v2({data:$,primaryType:"EIP712Domain",types:J})}function v2({data:$,primaryType:J,types:Q}){let X=b2({data:$,primaryType:J,types:Q});return n(X)}function b2({data:$,primaryType:J,types:Q}){let X=[{type:"bytes32"}],Y=[jw({primaryType:J,types:Q})];for(let Z of Q[J]){let[G,W]=g2({types:Q,name:Z.name,type:Z.type,value:$[Z.name]});X.push(G),Y.push(W)}return W$(X,Y)}function jw({primaryType:$,types:J}){let Q=t(Iw({primaryType:$,types:J}));return n(Q)}function Iw({primaryType:$,types:J}){let Q="",X=h2({primaryType:$,types:J});X.delete($);let Y=[$,...Array.from(X).sort()];for(let Z of Y)Q+=`${Z}(${J[Z].map(({name:G,type:W})=>`${W} ${G}`).join(",")})`;return Q}function h2({primaryType:$,types:J},Q=new Set){let Y=$.match(/^\w*/u)?.[0];if(Q.has(Y)||J[Y]===void 0)return Q;Q.add(Y);for(let Z of J[Y])h2({primaryType:Z.type,types:J},Q);return Q}function g2({types:$,name:J,type:Q,value:X}){if($[Q]!==void 0)return[{type:"bytes32"},n(b2({data:X,primaryType:Q,types:$}))];if(Q==="bytes")return[{type:"bytes32"},n(X)];if(Q==="string")return[{type:"bytes32"},n(t(X))];if(Q.lastIndexOf("]")===Q.length-1){let Y=Q.slice(0,Q.lastIndexOf("[")),Z=X.map((G)=>g2({name:J,type:Y,types:$,value:G}));return[{type:"bytes32"},n(W$(Z.map(([G])=>G),Z.map(([,G])=>G)))]}return[{type:Q},X]}var sY={};Y9(sY,{wrap:()=>qz,validate:()=>Vz,unwrap:()=>Cq,suffixParameters:()=>vG,magicBytes:()=>yG,from:()=>Kz,assert:()=>G5,InvalidWrappedSignatureError:()=>bG});_Q();O8();class HG extends Map{constructor($){super();Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=$}get($){let J=super.get($);if(super.has($)&&J!==void 0)this.delete($),super.set($,J);return J}set($,J){if(super.set($,J),this.maxSize&&this.size>this.maxSize){let Q=this.keys().next().value;if(Q)this.delete(Q)}return this}}var _w={checksum:new HG(8192)},r1=_w.checksum;z0();DZ();O8();d$();function qQ($,J={}){let{as:Q=typeof $==="string"?"Hex":"Bytes"}=J,X=h9(BK($));if(Q==="Bytes")return X;return F$(X)}O8();z0();d$();function d2($,J={}){let{compressed:Q}=J,{prefix:X,x:Y,y:Z}=$;if(Q===!1||typeof Y==="bigint"&&typeof Z==="bigint"){if(X!==4)throw new LG({prefix:X,cause:new c2});return}if(Q===!0||typeof Y==="bigint"&&typeof Z>"u"){if(X!==3&&X!==2)throw new LG({prefix:X,cause:new l2});return}throw new p2({publicKey:$})}function m2($){let J=(()=>{if(vY($))return u2($);if(TK($))return Aw($);let{prefix:Q,x:X,y:Y}=$;if(typeof X==="bigint"&&typeof Y==="bigint")return{prefix:Q??4,x:X,y:Y};return{prefix:Q,x:X}})();return d2(J),J}function Aw($){return u2(F$($))}function u2($){if($.length!==132&&$.length!==130&&$.length!==68)throw new n2({publicKey:$});if($.length===130){let X=BigInt(M$($,0,32)),Y=BigInt(M$($,32,64));return{prefix:4,x:X,y:Y}}if($.length===132){let X=Number(M$($,0,1)),Y=BigInt(M$($,1,33)),Z=BigInt(M$($,33,65));return{prefix:X,x:Y,y:Z}}let J=Number(M$($,0,1)),Q=BigInt(M$($,1,33));return{prefix:J,x:Q}}function CG($,J={}){d2($);let{prefix:Q,x:X,y:Y}=$,{includePrefix:Z=!0}=J;return z$(Z?a(Q,{size:1}):"0x",a(X,{size:32}),typeof Y==="bigint"?a(Y,{size:32}):"0x")}class p2 extends h{constructor({publicKey:$}){super(`Value \`${L8($)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class LG extends h{constructor({prefix:$,cause:J}){super(`Prefix "${$}" is invalid.`,{cause:J});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class l2 extends h{constructor(){super("Prefix must be 2 or 3 for compressed public keys.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class c2 extends h{constructor(){super("Prefix must be 4 for uncompressed public keys.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}class n2 extends h{constructor({publicKey:$}){super(`Value \`${$}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${V$(LX($))} bytes.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}}var Pw=/^0x[a-fA-F0-9]{40}$/;function VQ($,J={}){let{strict:Q=!0}=J;if(!Pw.test($))throw new SG({address:$,cause:new s2});if(Q){if($.toLowerCase()===$)return;if(t1($)!==$)throw new SG({address:$,cause:new r2})}}function t1($){if(r1.has($))return r1.get($);VQ($,{strict:!1});let J=$.substring(2).toLowerCase(),Q=qQ(FK(J),{as:"Bytes"}),X=J.split("");for(let Z=0;Z<40;Z+=2){if(Q[Z>>1]>>4>=8&&X[Z])X[Z]=X[Z].toUpperCase();if((Q[Z>>1]&15)>=8&&X[Z+1])X[Z+1]=X[Z+1].toUpperCase()}let Y=`0x${X.join("")}`;return r1.set($,Y),Y}function xw($,J={}){let{checksum:Q=!1}=J;if(VQ($),Q)return t1($);return $}function i2($,J={}){let Q=qQ(`0x${CG($).slice(4)}`).substring(26);return xw(`0x${Q}`,J)}function a1($,J={}){let{strict:Q=!0}=J??{};try{return VQ($,{strict:Q}),!0}catch{return!1}}class SG extends h{constructor({address:$,cause:J}){super(`Address "${$}" is invalid.`,{cause:J});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class s2 extends h{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class r2 extends h{constructor(){super("Address does not match its checksum counterpart.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}O8();z0();d$();O8();z0();d$();var t2=/^(.*)\[([0-9]*)\]$/,a2=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,$5=/^(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)?$/,Df=2n**(8n-1n)-1n,Uf=2n**(16n-1n)-1n,Nf=2n**(24n-1n)-1n,wf=2n**(32n-1n)-1n,zf=2n**(40n-1n)-1n,Hf=2n**(48n-1n)-1n,Of=2n**(56n-1n)-1n,Lf=2n**(64n-1n)-1n,Cf=2n**(72n-1n)-1n,Sf=2n**(80n-1n)-1n,Rf=2n**(88n-1n)-1n,Bf=2n**(96n-1n)-1n,Ff=2n**(104n-1n)-1n,Ef=2n**(112n-1n)-1n,jf=2n**(120n-1n)-1n,If=2n**(128n-1n)-1n,_f=2n**(136n-1n)-1n,Tf=2n**(144n-1n)-1n,Af=2n**(152n-1n)-1n,Pf=2n**(160n-1n)-1n,xf=2n**(168n-1n)-1n,kf=2n**(176n-1n)-1n,ff=2n**(184n-1n)-1n,yf=2n**(192n-1n)-1n,vf=2n**(200n-1n)-1n,bf=2n**(208n-1n)-1n,hf=2n**(216n-1n)-1n,gf=2n**(224n-1n)-1n,df=2n**(232n-1n)-1n,mf=2n**(240n-1n)-1n,uf=2n**(248n-1n)-1n,pf=2n**(256n-1n)-1n,lf=-(2n**(8n-1n)),cf=-(2n**(16n-1n)),nf=-(2n**(24n-1n)),of=-(2n**(32n-1n)),sf=-(2n**(40n-1n)),rf=-(2n**(48n-1n)),tf=-(2n**(56n-1n)),af=-(2n**(64n-1n)),ef=-(2n**(72n-1n)),$y=-(2n**(80n-1n)),Jy=-(2n**(88n-1n)),Qy=-(2n**(96n-1n)),Xy=-(2n**(104n-1n)),Yy=-(2n**(112n-1n)),Zy=-(2n**(120n-1n)),Gy=-(2n**(128n-1n)),Wy=-(2n**(136n-1n)),Ky=-(2n**(144n-1n)),qy=-(2n**(152n-1n)),Vy=-(2n**(160n-1n)),My=-(2n**(168n-1n)),Dy=-(2n**(176n-1n)),Uy=-(2n**(184n-1n)),Ny=-(2n**(192n-1n)),wy=-(2n**(200n-1n)),zy=-(2n**(208n-1n)),Hy=-(2n**(216n-1n)),Oy=-(2n**(224n-1n)),Ly=-(2n**(232n-1n)),Cy=-(2n**(240n-1n)),Sy=-(2n**(248n-1n)),Ry=-(2n**(256n-1n)),By=2n**8n-1n,Fy=2n**16n-1n,Ey=2n**24n-1n,jy=2n**32n-1n,Iy=2n**40n-1n,_y=2n**48n-1n,Ty=2n**56n-1n,Ay=2n**64n-1n,Py=2n**72n-1n,xy=2n**80n-1n,ky=2n**88n-1n,fy=2n**96n-1n,yy=2n**104n-1n,vy=2n**112n-1n,by=2n**120n-1n,hy=2n**128n-1n,gy=2n**136n-1n,dy=2n**144n-1n,my=2n**152n-1n,uy=2n**160n-1n,py=2n**168n-1n,ly=2n**176n-1n,cy=2n**184n-1n,ny=2n**192n-1n,oy=2n**200n-1n,iy=2n**208n-1n,sy=2n**216n-1n,ry=2n**224n-1n,ty=2n**232n-1n,ay=2n**240n-1n,ey=2n**248n-1n,RG=2n**256n-1n;function MQ($,J,Q){let{checksumAddress:X,staticPosition:Y}=Q,Z=EG(J.type);if(Z){let[G,W]=Z;return fw($,{...J,type:W},{checksumAddress:X,length:G,staticPosition:Y})}if(J.type==="tuple")return hw($,J,{checksumAddress:X,staticPosition:Y});if(J.type==="address")return kw($,{checksum:X});if(J.type==="bool")return yw($);if(J.type.startsWith("bytes"))return vw($,J,{staticPosition:Y});if(J.type.startsWith("uint")||J.type.startsWith("int"))return bw($,J);if(J.type==="string")return gw($,{staticPosition:Y});throw new nY(J.type)}var $q=32,BG=32;function kw($,J={}){let{checksum:Q=!1}=J,X=$.readBytes(32);return[((Z)=>Q?t1(Z):Z)(F$(EK(X,-20))),32]}function fw($,J,Q){let{checksumAddress:X,length:Y,staticPosition:Z}=Q;if(!Y){let K=UJ($.readBytes(BG)),q=Z+K,V=q+$q;$.setPosition(q);let M=UJ($.readBytes($q)),D=cY(J),U=0,z=[];for(let w=0;w<M;++w){$.setPosition(V+(D?w*32:U));let[L,O]=MQ($,J,{checksumAddress:X,staticPosition:V});U+=O,z.push(L)}return $.setPosition(Z+32),[z,32]}if(cY(J)){let K=UJ($.readBytes(BG)),q=Z+K,V=[];for(let M=0;M<Y;++M){$.setPosition(q+M*32);let[D]=MQ($,J,{checksumAddress:X,staticPosition:q});V.push(D)}return $.setPosition(Z+32),[V,32]}let G=0,W=[];for(let K=0;K<Y;++K){let[q,V]=MQ($,J,{checksumAddress:X,staticPosition:Z+G});G+=V,W.push(q)}return[W,G]}function yw($){return[IK($.readBytes(32),{size:32}),32]}function vw($,J,{staticPosition:Q}){let[X,Y]=J.type.split("bytes");if(!Y){let G=UJ($.readBytes(32));$.setPosition(Q+G);let W=UJ($.readBytes(32));if(W===0)return $.setPosition(Q+32),["0x",32];let K=$.readBytes(W);return $.setPosition(Q+32),[F$(K),32]}return[F$($.readBytes(Number.parseInt(Y,10),32)),32]}function bw($,J){let Q=J.type.startsWith("int"),X=Number.parseInt(J.type.split("int")[1]||"256",10),Y=$.readBytes(32);return[X>48?jK(Y,{signed:Q}):UJ(Y,{signed:Q}),32]}function hw($,J,Q){let{checksumAddress:X,staticPosition:Y}=Q,Z=J.components.length===0||J.components.some(({name:K})=>!K),G=Z?[]:{},W=0;if(cY(J)){let K=UJ($.readBytes(BG)),q=Y+K;for(let V=0;V<J.components.length;++V){let M=J.components[V];$.setPosition(q+W);let[D,U]=MQ($,M,{checksumAddress:X,staticPosition:q});W+=U,G[Z?V:M?.name]=D}return $.setPosition(Y+32),[G,32]}for(let K=0;K<J.components.length;++K){let q=J.components[K],[V,M]=MQ($,q,{checksumAddress:X,staticPosition:Y});G[Z?K:q?.name]=V,W+=M}return[G,W]}function gw($,{staticPosition:J}){let Q=UJ($.readBytes(32)),X=J+Q;$.setPosition(X);let Y=UJ($.readBytes(32));if(Y===0)return $.setPosition(J+32),["",32];let Z=$.readBytes(Y,32),G=_K(A7(Z));return $.setPosition(J+32),[G,32]}function Jq({checksumAddress:$,parameters:J,values:Q}){let X=[];for(let Y=0;Y<J.length;Y++)X.push(FG({checksumAddress:$,parameter:J[Y],value:Q[Y]}));return X}function FG({checksumAddress:$=!1,parameter:J,value:Q}){let X=J,Y=EG(X.type);if(Y){let[Z,G]=Y;return mw(Q,{checksumAddress:$,length:Z,parameter:{...X,type:G}})}if(X.type==="tuple")return nw(Q,{checksumAddress:$,parameter:X});if(X.type==="address")return dw(Q,{checksum:$});if(X.type==="bool")return pw(Q);if(X.type.startsWith("uint")||X.type.startsWith("int")){let Z=X.type.startsWith("int"),[,,G="256"]=$5.exec(X.type)??[];return lw(Q,{signed:Z,size:Number(G)})}if(X.type.startsWith("bytes"))return uw(Q,{type:X.type});if(X.type==="string")return cw(Q);throw new nY(X.type)}function J5($){let J=0;for(let Z=0;Z<$.length;Z++){let{dynamic:G,encoded:W}=$[Z];if(G)J+=32;else J+=V$(W)}let Q=[],X=[],Y=0;for(let Z=0;Z<$.length;Z++){let{dynamic:G,encoded:W}=$[Z];if(G)Q.push(a(J+Y,{size:32})),X.push(W),Y+=V$(W);else Q.push(W)}return z$(...Q,...X)}function dw($,J){let{checksum:Q=!1}=J;return VQ($,{strict:Q}),{dynamic:!1,encoded:iJ($.toLowerCase())}}function mw($,J){let{checksumAddress:Q,length:X,parameter:Y}=J,Z=X===null;if(!Array.isArray($))throw new IG($);if(!Z&&$.length!==X)throw new jG({expectedLength:X,givenLength:$.length,type:`${Y.type}[${X}]`});let G=!1,W=[];for(let K=0;K<$.length;K++){let q=FG({checksumAddress:Q,parameter:Y,value:$[K]});if(q.dynamic)G=!0;W.push(q)}if(Z||G){let K=J5(W);if(Z){let q=a(W.length,{size:32});return{dynamic:!0,encoded:W.length>0?z$(q,K):q}}if(G)return{dynamic:!0,encoded:K}}return{dynamic:!1,encoded:z$(...W.map(({encoded:K})=>K))}}function uw($,{type:J}){let[,Q]=J.split("bytes"),X=V$($);if(!Q){let Y=$;if(X%32!==0)Y=NJ(Y,Math.ceil(($.length-2)/2/32)*32);return{dynamic:!0,encoded:z$(iJ(a(X,{size:32})),Y)}}if(X!==Number.parseInt(Q,10))throw new Q5({expectedSize:Number.parseInt(Q,10),value:$});return{dynamic:!1,encoded:NJ($)}}function pw($){if(typeof $!=="boolean")throw new h(`Invalid boolean value: "${$}" (type: ${typeof $}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:iJ(S1($))}}function lw($,{signed:J,size:Q}){if(typeof Q==="number"){let X=2n**(BigInt(Q)-(J?1n:0n))-1n,Y=J?-X-1n:0n;if($>X||$<Y)throw new R1({max:X.toString(),min:Y.toString(),signed:J,size:Q/8,value:$.toString()})}return{dynamic:!1,encoded:a($,{size:32,signed:J})}}function cw($){let J=CX($),Q=Math.ceil(V$(J)/32),X=[];for(let Y=0;Y<Q;Y++)X.push(NJ(M$(J,Y*32,(Y+1)*32)));return{dynamic:!0,encoded:z$(NJ(a(V$(J),{size:32})),...X)}}function nw($,J){let{checksumAddress:Q,parameter:X}=J,Y=!1,Z=[];for(let G=0;G<X.components.length;G++){let W=X.components[G],K=Array.isArray($)?G:W.name,q=FG({checksumAddress:Q,parameter:W,value:$[K]});if(Z.push(q),q.dynamic)Y=!0}return{dynamic:Y,encoded:Y?J5(Z):z$(...Z.map(({encoded:G})=>G))}}function EG($){let J=$.match(/^(.*)\[(\d+)?\]$/);return J?[J[2]?Number(J[2]):null,J[1]]:void 0}function cY($){let{type:J}=$;if(J==="string")return!0;if(J==="bytes")return!0;if(J.endsWith("[]"))return!0;if(J==="tuple")return $.components?.some(cY);let Q=EG($.type);if(Q&&cY({...$,type:Q[1]}))return!0;return!1}z0();var iw={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 Xq({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition($){if($<0||$>this.bytes.length-1)throw new Qq({length:this.bytes.length,position:$})},decrementPosition($){if($<0)throw new _G({offset:$});let J=this.position-$;this.assertPosition(J),this.position=J},getReadCount($){return this.positionReadCount.get($||this.position)||0},incrementPosition($){if($<0)throw new _G({offset:$});let J=this.position+$;this.assertPosition(J),this.position=J},inspectByte($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectBytes($,J){let Q=J??this.position;return this.assertPosition(Q+$-1),this.bytes.subarray(Q,Q+$)},inspectUint8($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectUint16($){let J=$??this.position;return this.assertPosition(J+1),this.dataView.getUint16(J)},inspectUint24($){let J=$??this.position;return this.assertPosition(J+2),(this.dataView.getUint16(J)<<8)+this.dataView.getUint8(J+2)},inspectUint32($){let J=$??this.position;return this.assertPosition(J+3),this.dataView.getUint32(J)},pushByte($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushBytes($){this.assertPosition(this.position+$.length-1),this.bytes.set($,this.position),this.position+=$.length},pushUint8($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushUint16($){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,$),this.position+=2},pushUint24($){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,$>>8),this.dataView.setUint8(this.position+2,$&255),this.position+=3},pushUint32($){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,$),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let $=this.inspectByte();return this.position++,$},readBytes($,J){this.assertReadLimit(),this._touch();let Q=this.inspectBytes($);return this.position+=J??$,Q},readUint8(){this.assertReadLimit(),this._touch();let $=this.inspectUint8();return this.position+=1,$},readUint16(){this.assertReadLimit(),this._touch();let $=this.inspectUint16();return this.position+=2,$},readUint24(){this.assertReadLimit(),this._touch();let $=this.inspectUint24();return this.position+=3,$},readUint32(){this.assertReadLimit(),this._touch();let $=this.inspectUint32();return this.position+=4,$},get remaining(){return this.bytes.length-this.position},setPosition($){let J=this.position;return this.assertPosition($),this.position=$,()=>this.position=J},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;let $=this.getReadCount();if(this.positionReadCount.set(this.position,$+1),$>0)this.recursiveReadCount++}};function X5($,{recursiveReadLimit:J=8192}={}){let Q=Object.create(iw);return Q.bytes=$,Q.dataView=new DataView($.buffer,$.byteOffset,$.byteLength),Q.positionReadCount=new Map,Q.recursiveReadLimit=J,Q}class _G extends h{constructor({offset:$}){super(`Offset \`${$}\` cannot be negative.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class Qq extends h{constructor({length:$,position:J}){super(`Position \`${J}\` is out of bounds (\`0 < position < ${$}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class Xq extends h{constructor({count:$,limit:J}){super(`Recursive read limit of \`${J}\` exceeded (recursive read count: \`${$}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}function PX($,J,Q={}){let{as:X="Array",checksumAddress:Y=!1}=Q,Z=typeof J==="string"?OX(J):J,G=X5(Z);if(x0(Z)===0&&$.length>0)throw new Gq;if(x0(Z)&&x0(Z)<32)throw new Zq({data:typeof J==="string"?J:F$(J),parameters:$,size:x0(Z)});let W=0,K=X==="Array"?[]:{};for(let q=0;q<$.length;++q){let V=$[q];G.setPosition(W);let[M,D]=MQ(G,V,{checksumAddress:Y,staticPosition:0});if(W+=D,X==="Array")K.push(M);else K[V.name??q]=M}return K}function B8($,J,Q){let{checksumAddress:X=!1}=Q??{};if($.length!==J.length)throw new AG({expectedLength:$.length,givenLength:J.length});let Y=Jq({checksumAddress:X,parameters:$,values:J}),Z=J5(Y);if(Z.length===0)return"0x";return Z}function TG($,J){if($.length!==J.length)throw new AG({expectedLength:$.length,givenLength:J.length});let Q=[];for(let X=0;X<$.length;X++){let Y=$[X],Z=J[X];Q.push(TG.encode(Y,Z))}return z$(...Q)}(function($){function J(Q,X,Y=!1){if(Q==="address"){let K=X;return VQ(K),iJ(K.toLowerCase(),Y?32:0)}if(Q==="string")return CX(X);if(Q==="bytes")return X;if(Q==="bool")return iJ(S1(X),Y?32:1);let Z=Q.match($5);if(Z){let[K,q,V="256"]=Z,M=Number.parseInt(V,10)/8;return a(X,{size:Y?32:M,signed:q==="int"})}let G=Q.match(a2);if(G){let[K,q]=G;if(Number.parseInt(q,10)!==(X.length-2)/2)throw new Q5({expectedSize:Number.parseInt(q,10),value:X});return NJ(X,Y?32:0)}let W=Q.match(t2);if(W&&Array.isArray(X)){let[K,q]=W,V=[];for(let M=0;M<X.length;M++)V.push(J(q,X[M],!0));if(V.length===0)return"0x";return z$(...V)}throw new nY(Q)}$.encode=J})(TG||(TG={}));function iY($){if(Array.isArray($)&&typeof $[0]==="string")return l$($);if(typeof $==="string")return l$($);return $}class Zq extends h{constructor({data:$,parameters:J,size:Q}){super(`Data size of ${Q} bytes is too small for given parameters.`,{metaMessages:[`Params: (${FJ(J)})`,`Data: ${$} (${Q} bytes)`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class Gq extends h{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.');Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class jG extends h{constructor({expectedLength:$,givenLength:J,type:Q}){super(`Array length mismatch for type \`${Q}\`. Expected: \`${$}\`. Given: \`${J}\`.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class Q5 extends h{constructor({expectedSize:$,value:J}){super(`Size of bytes "${J}" (bytes${V$(J)}) does not match expected size (bytes${$}).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class AG extends h{constructor({expectedLength:$,givenLength:J}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${$}`,`Given length (values): ${J}`].join(`
67
- `));Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class IG extends h{constructor($){super(`Value \`${$}\` is not a valid array.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class nY extends h{constructor($){super(`Type \`${$}\` is not a valid ABI Type.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}d$();O8();z0();d$();function sw($,J){let{as:Q}=J,X=Kq($),Y=X5(new Uint8Array(X.length));if(X.encode(Y),Q==="Hex")return F$(Y.bytes);return Y.bytes}function Wq($,J={}){let{as:Q="Hex"}=J;return sw($,{as:Q})}function Kq($){if(Array.isArray($))return rw($.map((J)=>Kq(J)));return tw($)}function rw($){let J=$.reduce((Y,Z)=>Y+Z.length,0),Q=qq(J);return{length:(()=>{if(J<=55)return 1+J;return 1+Q+J})(),encode(Y){if(J<=55)Y.pushByte(192+J);else if(Y.pushByte(247+Q),Q===1)Y.pushUint8(J);else if(Q===2)Y.pushUint16(J);else if(Q===3)Y.pushUint24(J);else Y.pushUint32(J);for(let{encode:Z}of $)Z(Y)}}}function tw($){let J=typeof $==="string"?OX($):$,Q=qq(J.length);return{length:(()=>{if(J.length===1&&J[0]<128)return 1;if(J.length<=55)return 1+J.length;return 1+Q+J.length})(),encode(Y){if(J.length===1&&J[0]<128)Y.pushBytes(J);else if(J.length<=55)Y.pushByte(128+J.length),Y.pushBytes(J);else{if(Y.pushByte(183+Q),Q===1)Y.pushUint8(J.length);else if(Q===2)Y.pushUint16(J.length);else if(Q===3)Y.pushUint24(J.length);else Y.pushUint32(J.length);Y.pushBytes(J)}}}}function qq($){if($<=255)return 1;if($<=65535)return 2;if($<=16777215)return 3;if($<=4294967295)return 4;throw new h("Length is too large.")}z0();d$();function PG($,J={}){let{recovered:Q}=J;if(typeof $.r>"u")throw new Y5({signature:$});if(typeof $.s>"u")throw new Y5({signature:$});if(Q&&typeof $.yParity>"u")throw new Y5({signature:$});if($.r<0n||$.r>RG)throw new Uq({value:$.r});if($.s<0n||$.s>RG)throw new Nq({value:$.s});if(typeof $.yParity==="number"&&$.yParity!==0&&$.yParity!==1)throw new Z5({value:$.yParity})}function ew($){return Vq(F$($))}function Vq($){if($.length!==130&&$.length!==132)throw new Dq({signature:$});let J=BigInt(M$($,0,32)),Q=BigInt(M$($,32,64)),X=(()=>{let Y=Number(`0x${$.slice(130)}`);if(Number.isNaN(Y))return;try{return fG(Y)}catch{throw new Z5({value:Y})}})();if(typeof X>"u")return{r:J,s:Q};return{r:J,s:Q,yParity:X}}function xG($){if(typeof $.r>"u")return;if(typeof $.s>"u")return;return kG($)}function kG($){let J=(()=>{if(typeof $==="string")return Vq($);if($ instanceof Uint8Array)return ew($);if(typeof $.r==="string")return Jz($);if($.v)return $z($);return{r:$.r,s:$.s,...typeof $.yParity<"u"?{yParity:$.yParity}:{}}})();return PG(J),J}function $z($){return{r:$.r,s:$.s,yParity:fG($.v)}}function Jz($){let J=(()=>{let Q=$.v?Number($.v):void 0,X=$.yParity?Number($.yParity):void 0;if(typeof Q==="number"&&typeof X!=="number")X=fG(Q);if(typeof X!=="number")throw new Z5({value:$.yParity});return X})();return{r:BigInt($.r),s:BigInt($.s),yParity:J}}function Mq($){let{r:J,s:Q,yParity:X}=$;return[X?"0x01":"0x",J===0n?"0x":f7(a(J)),Q===0n?"0x":f7(a(Q))]}function fG($){if($===0||$===27)return 0;if($===1||$===28)return 1;if($>=35)return $%2===0?1:0;throw new wq({value:$})}class Dq extends h{constructor({signature:$}){super(`Value \`${$}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${V$(LX($))} bytes.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class Y5 extends h{constructor({signature:$}){super(`Signature \`${L8($)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class Uq extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid r value. r must be a positive integer less than 2^256.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class Nq extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid s value. s must be a positive integer less than 2^256.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class Z5 extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid y-parity value. Y-parity must be 0 or 1.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class wq extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid v value. v must be 27, 28 or >=35.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}function Hq($,J={}){if(typeof $.chainId==="string")return Qz($);return{...$,...J.signature}}function Qz($){let{address:J,chainId:Q,nonce:X}=$,Y=xG($);return{address:J,chainId:Number(Q),nonce:BigInt(X),...Y}}function Oq($){return Xz($,{presign:!0})}function Xz($,J={}){let{presign:Q}=J;return qQ(z$("0x05",Wq(Yz(Q?{address:$.address,chainId:$.chainId,nonce:$.nonce}:$))))}function Yz($){let{address:J,chainId:Q,nonce:X}=$,Y=xG($);return[Q?a(Q):"0x",J,X?a(X):"0x",...Y?Mq(Y):[]]}z0();d$();t8();d$();function Lq($){return i2(Gz($))}function Gz($){let{payload:J,signature:Q}=$,{r:X,s:Y,yParity:Z}=Q,W=new Q0.Signature(BigInt(X),BigInt(Y)).addRecoveryBit(Z).recoverPublicKey(LX(J).substring(2));return m2(W)}var yG="0x8010801080108010801080108010801080108010801080108010801080108010",vG=iY("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function G5($){if(typeof $==="string"){if(M$($,-32)!==yG)throw new bG($)}else PG($.authorization)}function Kz($){if(typeof $==="string")return Cq($);return $}function Cq($){G5($);let J=C1(M$($,-64,-32)),Q=M$($,-J-64,-64),X=M$($,0,-J-64),[Y,Z,G]=PX(vG,Q);return{authorization:Hq({address:Y.delegation,chainId:Number(Y.chainId),nonce:Y.nonce,yParity:Y.yParity,r:Y.r,s:Y.s}),signature:X,...G&&G!=="0x"?{data:G,to:Z}:{}}}function qz($){let{data:J,signature:Q}=$;G5($);let X=Lq({payload:Oq($.authorization),signature:kG($.authorization)}),Y=B8(vG,[{...$.authorization,delegation:$.authorization.address,chainId:BigInt($.authorization.chainId)},$.to??X,J??"0x"]),Z=a(V$(Y),{size:32});return z$(Q,Y,Z,yG)}function Vz($){try{return G5($),!0}catch{return!1}}class bG extends h{constructor($){super(`Value \`${$}\` is an invalid ERC-8010 wrapped signature.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc8010.InvalidWrappedSignatureError"})}}t9();l();class hG extends R{constructor({value:$}){super(`Number \`${$}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}function o0($,J){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test($))throw new hG({value:$});let[Q,X="0"]=$.split("."),Y=Q.startsWith("-");if(Y)Q=Q.slice(1);if(X=X.replace(/(0+)$/,""),J===0){if(Math.round(Number(`.${X}`))===1)Q=`${BigInt(Q)+1n}`;X=""}else if(X.length>J){let[Z,G,W]=[X.slice(0,J-1),X.slice(J-1,J),X.slice(J)],K=Math.round(Number(`${G}.${W}`));if(K>9)X=`${BigInt(Z)+BigInt(1)}0`.padStart(Z.length+1,"0");else X=`${Z}${K}`;if(X.length>J)X=X.slice(1),Q=`${BigInt(Q)+1n}`;X=X.slice(0,J)}else X=X.padEnd(J,"0");return BigInt(`${Y?"-":""}${Q}${X}`)}function gG($,J="wei"){return o0($,r9[J])}function Mz($){return $.map((J)=>({...J,value:BigInt(J.value)}))}function Sq($){return{...$,balance:$.balance?BigInt($.balance):void 0,nonce:$.nonce?N$($.nonce):void 0,storageProof:$.storageProof?Mz($.storageProof):void 0}}async function Rq($,{address:J,blockNumber:Q,blockTag:X,storageKeys:Y}){let Z=X??"latest",G=Q!==void 0?E(Q):void 0,W=await $.request({method:"eth_getProof",params:[J,Y,G||Z]});return Sq(W)}m();async function Bq($,{address:J,blockNumber:Q,blockTag:X="latest",slot:Y}){let Z=Q!==void 0?E(Q):void 0;return await $.request({method:"eth_getStorageAt",params:[J,Y,Z||X]})}_0();m();async function xX($,{blockHash:J,blockNumber:Q,blockTag:X,hash:Y,index:Z,sender:G,nonce:W}){let K=X||"latest",q=Q!==void 0?E(Q):void 0,V=null;if(Y)V=await $.request({method:"eth_getTransactionByHash",params:[Y]},{dedupe:!0});else if(J)V=await $.request({method:"eth_getTransactionByBlockHashAndIndex",params:[J,E(Z)]},{dedupe:!0});else if((q||K)&&typeof Z==="number")V=await $.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[q||K,E(Z)]},{dedupe:Boolean(q)});else if(G&&typeof W==="number")V=await $.request({method:"eth_getTransactionBySenderAndNonce",params:[G,E(W)]},{dedupe:!0});if(!V)throw new WY({blockHash:J,blockNumber:Q,blockTag:K,hash:Y,index:Z});return($.chain?.formatters?.transaction?.format||cJ)(V,"getTransaction")}async function Fq($,{hash:J,transactionReceipt:Q}){let[X,Y]=await Promise.all([A($,zJ,"getBlockNumber")({}),J?A($,xX,"getTransaction")({hash:J}):void 0]),Z=Q?.blockNumber||Y?.blockNumber;if(!Z)return 0n;return X-Z+1n}_0();async function kX($,{hash:J}){let Q=await $.request({method:"eth_getTransactionReceipt",params:[J]},{dedupe:!0});if(!Q)throw new KY({hash:J});return($.chain?.formatters?.transactionReceipt?.format||gY)(Q,"getTransactionReceipt")}sJ();S$();l();Z8();nJ();N0();XQ();async function Eq($,J){let{account:Q,authorizationList:X,allowFailure:Y=!0,blockNumber:Z,blockOverrides:G,blockTag:W,stateOverride:K}=J,q=J.contracts,{batchSize:V=J.batchSize??1024,deployless:M=J.deployless??!1}=typeof $.batch?.multicall==="object"?$.batch.multicall:{},D=(()=>{if(J.multicallAddress)return J.multicallAddress;if(M)return null;if($.chain)return k0({blockNumber:Z,chain:$.chain,contract:"multicall3"});throw Error("client chain not configured. multicallAddress is required.")})(),U=[[]],z=0,w=0;for(let C=0;C<q.length;C++){let{abi:N,address:H,args:S,functionName:B}=q[C];try{let F=K$({abi:N,args:S,functionName:B});if(w+=(F.length-2)/2,V>0&&w>V&&U[z].length>0)z++,w=(F.length-2)/2,U[z]=[];U[z]=[...U[z],{allowFailure:!0,callData:F,target:H}]}catch(F){let I=R0(F,{abi:N,address:H,args:S,docsPath:"/docs/contract/multicall",functionName:B,sender:Q});if(!Y)throw I;U[z]=[...U[z],{allowFailure:!0,callData:"0x",target:H}]}}let L=await Promise.allSettled(U.map((C)=>A($,j$,"readContract")({...D===null?{code:SX}:{address:D},abi:wJ,account:Q,args:[C],authorizationList:X,blockNumber:Z,blockOverrides:G,blockTag:W,functionName:"aggregate3",stateOverride:K}))),O=[];for(let C=0;C<L.length;C++){let N=L[C];if(N.status==="rejected"){if(!Y)throw N.reason;for(let S=0;S<U[C].length;S++)O.push({status:"failure",error:N.reason,result:void 0});continue}let H=N.value;for(let S=0;S<H.length;S++){let{returnData:B,success:F}=H[S],{callData:I}=U[C][S],{abi:P,address:j,functionName:y,args:x}=q[O.length];try{if(I==="0x")throw new h0;if(!F)throw new xJ({data:B});let b=s$({abi:P,args:x,data:B,functionName:y});O.push(Y?{result:b,status:"success"}:b)}catch(b){let g=R0(b,{abi:P,address:j,args:x,docsPath:"/docs/contract/multicall",functionName:y});if(!Y)throw g;O.push({error:g,result:void 0,status:"failure"})}}}if(O.length!==q.length)throw new R("multicall results mismatch");return O}y7();S$();Z8();uJ();nJ();N0();m();TY();pJ();q1();MJ();async function rY($,J){let{blockNumber:Q,blockTag:X=$.experimental_blockTag??"latest",blocks:Y,returnFullTransactions:Z,traceTransfers:G,validation:W}=J;try{let K=[];for(let D of Y){let U=D.blockOverrides?B1(D.blockOverrides):void 0,z=D.calls.map((L)=>{let O=L,C=O.account?p(O.account):void 0,N=O.abi?K$(O):O.data,H={...O,account:C,data:O.dataSuffix?Q$([N||"0x",O.dataSuffix]):N,from:O.from??C?.address};return h$(H),n$(H)}),w=D.stateOverrides?WX(D.stateOverrides):void 0;K.push({blockOverrides:U,calls:z,stateOverrides:w})}let V=(typeof Q==="bigint"?E(Q):void 0)||X;return(await $.request({method:"eth_simulateV1",params:[{blockStateCalls:K,returnFullTransactions:Z,traceTransfers:G,validation:W},V]})).map((D,U)=>({...xY(D),calls:D.calls.map((z,w)=>{let{abi:L,args:O,functionName:C,to:N}=Y[U].calls[w],H=z.error?.data??z.returnData,S=BigInt(z.gasUsed),B=z.logs?.map((j)=>i$(j)),F=z.status==="0x1"?"success":"failure",I=L&&F==="success"&&H!=="0x"?s$({abi:L,data:H,functionName:C}):null,P=(()=>{if(F==="success")return;let j;if(H==="0x")j=new h0;else if(H)j=new xJ({data:H});if(!j)return;return R0(j,{abi:L??[],address:N??"0x",args:O,functionName:C??"<unknown>"})})();return{data:H,gasUsed:S,logs:B,status:F,...F==="success"?{result:I}:{error:P}}})}))}catch(K){let q=K,V=z8(q,{});if(V instanceof c0)throw q;throw V}}_Q();z0();d$();z0();function K5($){let J=!0,Q="",X=0,Y="",Z=!1;for(let G=0;G<$.length;G++){let W=$[G];if(["(",")",","].includes(W))J=!0;if(W==="(")X++;if(W===")")X--;if(!J)continue;if(X===0){if(W===" "&&["event","function","error",""].includes(Y))Y="";else if(Y+=W,W===")"){Z=!0;break}continue}if(W===" "){if($[G-1]!==","&&Q!==","&&Q!==",(")Q="",J=!1;continue}Y+=W,Q+=W}if(!Z)throw new h("Unable to normalize signature.");return Y}function W5($,J){let Q=typeof $,X=J.type;switch(X){case"address":return a1($,{strict:!1});case"bool":return Q==="boolean";case"function":return Q==="string";case"string":return Q==="string";default:{if(X==="tuple"&&"components"in J)return Object.values(J.components).every((Y,Z)=>{return W5(Object.values($)[Z],Y)});if(/^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(X))return Q==="number"||Q==="bigint";if(/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(X))return Q==="string"||$ instanceof Uint8Array;if(/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(X))return Array.isArray($)&&$.every((Y)=>W5(Y,{...J,type:X.replace(/(\[[0-9]{0,}\])$/,"")}));return!1}}}function dG($,J,Q){for(let X in $){let Y=$[X],Z=J[X];if(Y.type==="tuple"&&Z.type==="tuple"&&"components"in Y&&"components"in Z)return dG(Y.components,Z.components,Q[X]);let G=[Y.type,Z.type];if((()=>{if(G.includes("address")&&G.includes("bytes20"))return!0;if(G.includes("address")&&G.includes("string"))return a1(Q[X],{strict:!1});if(G.includes("address")&&G.includes("bytes"))return a1(Q[X],{strict:!1});return!1})())return G}return}function q5($,J={}){let{prepare:Q=!0}=J,X=(()=>{if(Array.isArray($))return oX($);if(typeof $==="string")return oX($);return $})();return{...X,...Q?{hash:fX(X)}:{}}}function tY($,J,Q){let{args:X=[],prepare:Y=!0}=Q??{},Z=vY(J,{strict:!1}),G=$.filter((q)=>{if(Z){if(q.type==="function"||q.type==="error")return mG(q)===M$(J,0,4);if(q.type==="event")return fX(q)===J;return!1}return"name"in q&&q.name===J});if(G.length===0)throw new DQ({name:J});if(G.length===1)return{...G[0],...Y?{hash:fX(G[0])}:{}};let W;for(let q of G){if(!("inputs"in q))continue;if(!X||X.length===0){if(!q.inputs||q.inputs.length===0)return{...q,...Y?{hash:fX(q)}:{}};continue}if(!q.inputs)continue;if(q.inputs.length===0)continue;if(q.inputs.length!==X.length)continue;if(X.every((M,D)=>{let U="inputs"in q&&q.inputs[D];if(!U)return!1;return W5(M,U)})){if(W&&"inputs"in W&&W.inputs){let M=dG(q.inputs,W.inputs,X);if(M)throw new jq({abiItem:q,type:M[0]},{abiItem:W,type:M[1]})}W=q}}let K=(()=>{if(W)return W;let[q,...V]=G;return{...q,overloads:V}})();if(!K)throw new DQ({name:J});return{...K,...Y?{hash:fX(K)}:{}}}function mG(...$){let J=(()=>{if(Array.isArray($[0])){let[Q,X]=$;return tY(Q,X)}return $[0]})();return M$(fX(J),0,4)}function Uz(...$){let J=(()=>{if(Array.isArray($[0])){let[X,Y]=$;return tY(X,Y)}return $[0]})(),Q=(()=>{if(typeof J==="string")return J;return x8(J)})();return K5(Q)}function fX(...$){let J=(()=>{if(Array.isArray($[0])){let[Q,X]=$;return tY(Q,X)}return $[0]})();if(typeof J!=="string"&&"hash"in J&&J.hash)return J.hash;return qQ(CX(Uz(J)))}class jq extends h{constructor($,J){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${$.type}\` in \`${K5(x8($.abiItem))}\`, and`,`\`${J.type}\` in \`${K5(x8(J.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class DQ extends h{constructor({name:$,data:J,type:Q="item"}){let X=(()=>{if($)return` with name "${$}"`;if(J)return` with data "${J}"`;return""})();super(`ABI ${Q}${X} not found.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}d$();function _q(...$){let[J,Q]=(()=>{if(Array.isArray($[0])){let[Z,G]=$;return[Nz(Z),G]}return $})(),{bytecode:X,args:Y}=Q;return z$(X,J.inputs?.length&&Y?.length?B8(J.inputs,Y):"0x")}function Tq($){return q5($)}function Nz($){let J=$.find((Q)=>Q.type==="constructor");if(!J)throw new DQ({name:"constructor"});return J}d$();function Pq(...$){let[J,Q=[]]=(()=>{if(Array.isArray($[0])){let[q,V,M]=$;return[Aq(q,V,{args:M}),M]}let[W,K]=$;return[W,K]})(),{overloads:X}=J,Y=X?Aq([J,...X],J.name,{args:Q}):J,Z=zz(Y),G=Q.length>0?B8(Y.inputs,Q):void 0;return G?z$(Z,G):Z}function UQ($,J={}){return q5($,J)}function Aq($,J,Q){let X=tY($,J,Q);if(X.type!=="function")throw new DQ({name:J,type:"function"});return X}function zz($){return mG($)}var xq="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",i0="0x0000000000000000000000000000000000000000";l();N0();var Oz="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function kq($,J){let{blockNumber:Q,blockTag:X,calls:Y,stateOverrides:Z,traceAssetChanges:G,traceTransfers:W,validation:K}=J,q=J.account?p(J.account):void 0;if(G&&!q)throw new R("`account` is required when `traceAssetChanges` is true");let V=q?_q(Tq("constructor(bytes, bytes)"),{bytecode:j1,args:[Oz,Pq(UQ("function getBalance(address)"),[q.address])]}):void 0,M=G?await Promise.all(J.calls.map(async(k)=>{if(!k.data&&!k.abi)return;let{accessList:v}=await m1($,{account:q.address,...k,data:k.abi?K$(k):k.data});return v.map(({address:u,storageKeys:X$})=>X$.length>0?u:null)})).then((k)=>k.flat().filter(Boolean)):[],D=await rY($,{blockNumber:Q,blockTag:X,blocks:[...G?[{calls:[{data:V}],stateOverrides:Z},{calls:M.map((k,v)=>({abi:[UQ("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[q.address],to:k,from:i0,nonce:v})),stateOverrides:[{address:i0,nonce:0}]}]:[],{calls:[...Y,{}].map((k)=>({...k,from:q?.address})),stateOverrides:Z},...G?[{calls:[{data:V}]},{calls:M.map((k,v)=>({abi:[UQ("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[q.address],to:k,from:i0,nonce:v})),stateOverrides:[{address:i0,nonce:0}]},{calls:M.map((k,v)=>({to:k,abi:[UQ("function decimals() returns (uint256)")],functionName:"decimals",from:i0,nonce:v})),stateOverrides:[{address:i0,nonce:0}]},{calls:M.map((k,v)=>({to:k,abi:[UQ("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:i0,nonce:v})),stateOverrides:[{address:i0,nonce:0}]},{calls:M.map((k,v)=>({to:k,abi:[UQ("function symbol() returns (string)")],functionName:"symbol",from:i0,nonce:v})),stateOverrides:[{address:i0,nonce:0}]}]:[]],traceTransfers:W,validation:K}),U=G?D[2]:D[0],[z,w,,L,O,C,N,H]=G?D:[],{calls:S,...B}=U,F=S.slice(0,-1)??[],I=z?.calls??[],P=w?.calls??[],j=[...I,...P].map((k)=>k.status==="success"?Z$(k.data):null),y=L?.calls??[],x=O?.calls??[],b=[...y,...x].map((k)=>k.status==="success"?Z$(k.data):null),g=(C?.calls??[]).map((k)=>k.status==="success"?k.result:null),_=(H?.calls??[]).map((k)=>k.status==="success"?k.result:null),f=(N?.calls??[]).map((k)=>k.status==="success"?k.result:null),d=[];for(let[k,v]of b.entries()){let u=j[k];if(typeof v!=="bigint")continue;if(typeof u!=="bigint")continue;let X$=g[k-1],c=_[k-1],I$=f[k-1],O$=(()=>{if(k===0)return{address:xq,decimals:18,symbol:"ETH"};return{address:M[k-1],decimals:I$||X$?Number(X$??1):void 0,symbol:c??void 0}})();if(d.some((_$)=>_$.token.address===O$.address))continue;d.push({token:O$,value:{pre:u,post:v,diff:v-u}})}return{assetChanges:d,block:B,results:F}}var aY={};Y9(aY,{wrap:()=>Rz,validate:()=>Bz,unwrap:()=>fq,universalSignatureValidatorBytecode:()=>Lz,universalSignatureValidatorAbi:()=>Cz,magicBytes:()=>uG,from:()=>Sz,assert:()=>pG,InvalidWrappedSignatureError:()=>lG});z0();d$();var uG="0x6492649264926492649264926492649264926492649264926492649264926492",Lz="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",Cz=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}];function pG($){if(M$($,-32)!==uG)throw new lG($)}function Sz($){if(typeof $==="string")return fq($);return $}function fq($){pG($);let[J,Q,X]=PX(iY("address, bytes, bytes"),$);return{data:Q,signature:X,to:J}}function Rz($){let{data:J,signature:Q,to:X}=$;return z$(B8(iY("address, bytes, bytes"),[X,J,Q]),uG)}function Bz($){try{return pG($),!0}catch{return!1}}class lG extends h{constructor($){super(`Value \`${$}\` is an invalid ERC-6492 wrapped signature.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc6492.InvalidWrappedSignatureError"})}}sJ();Z8();_1();N0();YJ();e8();P$();m();t8();P$();k$();function V5({r:$,s:J,to:Q="hex",v:X,yParity:Y}){let Z=(()=>{if(Y===0||Y===1)return Y;if(X&&(X===27n||X===28n||X>=35n))return X%2n===0n?1:0;throw Error("Invalid `v` or `yParity` value")})(),G=`0x${new Q0.Signature(Z$($),Z$(J)).toCompactHex()}${Z===0?"1b":"1c"}`;if(Q==="hex")return G;return x$(G)}YQ();async function E8($,J){let{address:Q,chain:X=$.chain,hash:Y,erc6492VerifierAddress:Z=J.universalSignatureVerifierAddress??X?.contracts?.erc6492Verifier?.address,multicallAddress:G=J.multicallAddress??X?.contracts?.multicall3?.address}=J;if(X?.verifyHash)return await X.verifyHash($,J);let W=(()=>{let K=J.signature;if(U$(K))return K;if(typeof K==="object"&&"r"in K&&"s"in K)return V5(K);return i(K)})();try{if(sY.validate(W))return await Fz($,{...J,multicallAddress:G,signature:W});return await Ez($,{...J,verifierAddress:Z,signature:W})}catch(K){try{if(P0(V0(Q),await W1({hash:Y,signature:W})))return!0}catch{}if(K instanceof F8)return!1;throw K}}async function Fz($,J){let{address:Q,blockNumber:X,blockTag:Y,hash:Z,multicallAddress:G}=J,{authorization:W,data:K,signature:q,to:V}=sY.unwrap(J.signature);if(await uY($,{address:Q,blockNumber:X,blockTag:Y})===R$(["0xef0100",W.address]))return await jz($,{address:Q,blockNumber:X,blockTag:Y,hash:Z,signature:q});let D={address:W.address,chainId:Number(W.chainId),nonce:Number(W.nonce),r:E(W.r,{size:32}),s:E(W.s,{size:32}),yParity:W.yParity};if(!await _2({address:Q,authorization:D}))throw new F8;let z=await A($,j$,"readContract")({...G?{address:G}:{code:SX},authorizationList:[D],abi:wJ,blockNumber:X,blockTag:"pending",functionName:"aggregate3",args:[[...K?[{allowFailure:!0,target:V??Q,callData:K}]:[],{allowFailure:!0,target:Q,callData:K$({abi:h7,functionName:"isValidSignature",args:[Z,q]})}]]});if(z[z.length-1]?.returnData?.startsWith("0x1626ba7e"))return!0;throw new F8}async function Ez($,J){let{address:Q,factory:X,factoryData:Y,hash:Z,signature:G,verifierAddress:W,...K}=J,q=await(async()=>{if(!X&&!Y)return G;if(aY.validate(G))return G;return aY.wrap({data:Y,signature:G,to:X})})(),V=W?{to:W,data:K$({abi:g7,functionName:"isValidSig",args:[Q,Z,q]}),...K}:{data:QQ({abi:g7,args:[Q,Z,q],bytecode:hK}),...K},{data:M}=await A($,f0,"call")(V).catch((D)=>{if(D instanceof VY)throw new F8;throw D});if(qZ(M??"0x0"))return!0;throw new F8}async function jz($,J){let{address:Q,blockNumber:X,blockTag:Y,hash:Z,signature:G}=J;if((await A($,j$,"readContract")({address:Q,abi:h7,args:[Z,G],blockNumber:X,blockTag:Y,functionName:"isValidSignature"}).catch((K)=>{if(K instanceof MY)throw new F8;throw K})).startsWith("0x1626ba7e"))return!0;throw new F8}class F8 extends Error{}async function yq($,{address:J,message:Q,factory:X,factoryData:Y,signature:Z,...G}){let W=AX(Q);return A($,E8,"verifyHash")({address:J,factory:X,factoryData:Y,hash:W,signature:Z,...G})}async function vq($,J){let{address:Q,factory:X,factoryData:Y,signature:Z,message:G,primaryType:W,types:K,domain:q,...V}=J,M=s1({message:G,primaryType:W,types:K,domain:q});return A($,E8,"verifyHash")({address:Q,factory:X,factoryData:Y,hash:M,signature:Z,...V})}_0();P$();function M5($,{emitOnBegin:J=!1,emitMissed:Q=!1,onBlockNumber:X,onError:Y,poll:Z,pollingInterval:G=$.pollingInterval}){let W=(()=>{if(typeof Z<"u")return Z;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})(),K;return W?(()=>{let M=o(["watchBlockNumber",$.uid,J,Q,G]);return r$(M,{onBlockNumber:X,onError:Y},(D)=>y0(async()=>{try{let U=await A($,zJ,"getBlockNumber")({cacheTime:0});if(K!==void 0){if(U===K)return;if(U-K>1&&Q)for(let z=K+1n;z<U;z++)D.onBlockNumber(z,K),K=z}if(K===void 0||U>K)D.onBlockNumber(U,K),K=U}catch(U){D.onError?.(U)}},{emitOnBegin:J,interval:G}))})():(()=>{let M=o(["watchBlockNumber",$.uid,J,Q]);return r$(M,{onBlockNumber:X,onError:Y},(D)=>{let U=!0,z=()=>U=!1;return(async()=>{try{let w=(()=>{if($.transport.type==="fallback"){let O=$.transport.transports.find((C)=>C.config.type==="webSocket"||C.config.type==="ipc");if(!O)return $.transport;return O.value}return $.transport})(),{unsubscribe:L}=await w.subscribe({params:["newHeads"],onData(O){if(!U)return;let C=Z$(O.result?.number);D.onBlockNumber(C,K),K=C},onError(O){D.onError?.(O)}});if(z=L,!U)z()}catch(w){Y?.(w)}})(),()=>z()})})()}async function D5($,J){let{checkReplacement:Q=!0,confirmations:X=1,hash:Y,onReplaced:Z,retryCount:G=6,retryDelay:W=({count:S})=>~~(1<<S)*200,timeout:K=180000}=J,q=o(["waitForTransactionReceipt",$.uid,Y]),V=(()=>{if(J.pollingInterval)return J.pollingInterval;if($.chain?.experimental_preconfirmationTime)return $.chain.experimental_preconfirmationTime;return $.pollingInterval})(),M,D,U,z=!1,w,L,{promise:O,resolve:C,reject:N}=FX(),H=K?setTimeout(()=>{L?.(),w?.(),N(new xZ({hash:Y}))},K):void 0;return w=r$(q,{onReplaced:Z,resolve:C,reject:N},async(S)=>{if(U=await A($,kX,"getTransactionReceipt")({hash:Y}).catch(()=>{return}),U&&X<=1){clearTimeout(H),S.resolve(U),w?.();return}L=A($,M5,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:V,async onBlockNumber(B){let F=(P)=>{clearTimeout(H),L?.(),P(),w?.()},I=B;if(z)return;try{if(U){if(X>1&&(!U.blockNumber||I-U.blockNumber+1n<X))return;F(()=>S.resolve(U));return}if(Q&&!M)z=!0,await WQ(async()=>{if(M=await A($,xX,"getTransaction")({hash:Y}),M.blockNumber)I=M.blockNumber},{delay:W,retryCount:G}),z=!1;if(U=await A($,kX,"getTransactionReceipt")({hash:Y}),X>1&&(!U.blockNumber||I-U.blockNumber+1n<X))return;F(()=>S.resolve(U))}catch(P){if(P instanceof WY||P instanceof KY){if(!M){z=!1;return}try{D=M,z=!0;let j=await WQ(()=>A($,g$,"getBlock")({blockNumber:I,includeTransactions:!0}),{delay:W,retryCount:G,shouldRetry:({error:b})=>b instanceof PY});z=!1;let y=j.transactions.find(({from:b,nonce:g})=>b===D.from&&g===D.nonce);if(!y)return;if(U=await A($,kX,"getTransactionReceipt")({hash:y.hash}),X>1&&(!U.blockNumber||I-U.blockNumber+1n<X))return;let x="replaced";if(y.to===D.to&&y.value===D.value&&y.input===D.input)x="repriced";else if(y.from===y.to&&y.value===0n)x="cancelled";F(()=>{S.onReplaced?.({reason:x,replacedTransaction:D,transaction:y,transactionReceipt:U}),S.resolve(U)})}catch(j){F(()=>S.reject(j))}}else F(()=>S.reject(P))}}})}),O}function bq($,{blockTag:J=$.experimental_blockTag??"latest",emitMissed:Q=!1,emitOnBegin:X=!1,onBlock:Y,onError:Z,includeTransactions:G,poll:W,pollingInterval:K=$.pollingInterval}){let q=(()=>{if(typeof W<"u")return W;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})(),V=G??!1,M;return q?(()=>{let z=o(["watchBlocks",$.uid,J,Q,X,V,K]);return r$(z,{onBlock:Y,onError:Z},(w)=>y0(async()=>{try{let L=await A($,g$,"getBlock")({blockTag:J,includeTransactions:V});if(L.number!==null&&M?.number!=null){if(L.number===M.number)return;if(L.number-M.number>1&&Q)for(let O=M?.number+1n;O<L.number;O++){let C=await A($,g$,"getBlock")({blockNumber:O,includeTransactions:V});w.onBlock(C,M),M=C}}if(M?.number==null||J==="pending"&&L?.number==null||L.number!==null&&L.number>M.number)w.onBlock(L,M),M=L}catch(L){w.onError?.(L)}},{emitOnBegin:X,interval:K}))})():(()=>{let z=!0,w=!0,L=()=>z=!1;return(async()=>{try{if(X)A($,g$,"getBlock")({blockTag:J,includeTransactions:V}).then((N)=>{if(!z)return;if(!w)return;Y(N,void 0),w=!1}).catch(Z);let O=(()=>{if($.transport.type==="fallback"){let N=$.transport.transports.find((H)=>H.config.type==="webSocket"||H.config.type==="ipc");if(!N)return $.transport;return N.value}return $.transport})(),{unsubscribe:C}=await O.subscribe({params:["newHeads"],async onData(N){if(!z)return;let H=await A($,g$,"getBlock")({blockNumber:N.result?.number,includeTransactions:V}).catch(()=>{});if(!z)return;Y(H,M),w=!1,M=H},onError(N){Z?.(N)}});if(L=C,!z)L()}catch(O){Z?.(O)}})(),()=>L()})()}S$();n8();function hq($,{address:J,args:Q,batch:X=!0,event:Y,events:Z,fromBlock:G,onError:W,onLogs:K,poll:q,pollingInterval:V=$.pollingInterval,strict:M}){let D=(()=>{if(typeof q<"u")return q;if(typeof G==="bigint")return!0;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})(),U=M??!1;return D?(()=>{let L=o(["watchEvent",J,Q,X,$.uid,Y,V,G]);return r$(L,{onLogs:K,onError:W},(O)=>{let C;if(G!==void 0)C=G-1n;let N,H=!1,S=y0(async()=>{if(!H){try{N=await A($,u1,"createEventFilter")({address:J,args:Q,event:Y,events:Z,strict:U,fromBlock:G})}catch{}H=!0;return}try{let B;if(N)B=await A($,C8,"getFilterChanges")({filter:N});else{let F=await A($,zJ,"getBlockNumber")({});if(C&&C!==F)B=await A($,wX,"getLogs")({address:J,args:Q,event:Y,events:Z,fromBlock:C+1n,toBlock:F});else B=[];C=F}if(B.length===0)return;if(X)O.onLogs(B);else for(let F of B)O.onLogs([F])}catch(B){if(N&&B instanceof T0)H=!1;O.onError?.(B)}},{emitOnBegin:!0,interval:V});return async()=>{if(N)await A($,S8,"uninstallFilter")({filter:N});S()}})})():(()=>{let L=!0,O=()=>L=!1;return(async()=>{try{let C=(()=>{if($.transport.type==="fallback"){let B=$.transport.transports.find((F)=>F.config.type==="webSocket"||F.config.type==="ipc");if(!B)return $.transport;return B.value}return $.transport})(),N=Z??(Y?[Y]:void 0),H=[];if(N){if(H=[N.flatMap((F)=>WJ({abi:[F],eventName:F.name,args:Q}))],Y)H=H[0]}let{unsubscribe:S}=await C.subscribe({params:["logs",{address:J,topics:H}],onData(B){if(!L)return;let F=B.result;try{let{eventName:I,args:P}=$Q({abi:N??[],data:F.data,topics:F.topics,strict:U}),j=i$(F,{args:P,eventName:I});K([j])}catch(I){let P,j;if(I instanceof $8||I instanceof k8){if(M)return;P=I.abiItem.name,j=I.abiItem.inputs?.some((x)=>!(("name"in x)&&x.name))}let y=i$(F,{args:j?[]:{},eventName:P});K([y])}},onError(B){W?.(B)}});if(O=S,!L)O()}catch(C){W?.(C)}})(),()=>O()})()}function gq($,{batch:J=!0,onError:Q,onTransactions:X,poll:Y,pollingInterval:Z=$.pollingInterval}){return(typeof Y<"u"?Y:$.transport.type!=="webSocket"&&$.transport.type!=="ipc")?(()=>{let q=o(["watchPendingTransactions",$.uid,J,Z]);return r$(q,{onTransactions:X,onError:Q},(V)=>{let M,D=y0(async()=>{try{if(!M)try{M=await A($,p1,"createPendingTransactionFilter")({});return}catch(z){throw D(),z}let U=await A($,C8,"getFilterChanges")({filter:M});if(U.length===0)return;if(J)V.onTransactions(U);else for(let z of U)V.onTransactions([z])}catch(U){V.onError?.(U)}},{emitOnBegin:!0,interval:Z});return async()=>{if(M)await A($,S8,"uninstallFilter")({filter:M});D()}})})():(()=>{let q=!0,V=()=>q=!1;return(async()=>{try{let{unsubscribe:M}=await $.transport.subscribe({params:["newPendingTransactions"],onData(D){if(!q)return;let U=D.result;X([U])},onError(D){Q?.(D)}});if(V=M,!q)V()}catch(M){Q?.(M)}})(),()=>V()})()}function dq($){let{scheme:J,statement:Q,...X}=$.match(Iz)?.groups??{},{chainId:Y,expirationTime:Z,issuedAt:G,notBefore:W,requestId:K,...q}=$.match(_z)?.groups??{},V=$.split("Resources:")[1]?.split(`
68
- - `).slice(1);return{...X,...q,...Y?{chainId:Number(Y)}:{},...Z?{expirationTime:new Date(Z)}:{},...G?{issuedAt:new Date(G)}:{},...W?{notBefore:new Date(W)}:{},...K?{requestId:K}:{},...V?{resources:V}:{},...J?{scheme:J}:{},...Q?{statement:Q}:{}}}var Iz=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,_z=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;M0();e8();function mq($){let{address:J,domain:Q,message:X,nonce:Y,scheme:Z,time:G=new Date}=$;if(Q&&X.domain!==Q)return!1;if(Y&&X.nonce!==Y)return!1;if(Z&&X.scheme!==Z)return!1;if(X.expirationTime&&G>=X.expirationTime)return!1;if(X.notBefore&&G<X.notBefore)return!1;try{if(!X.address)return!1;if(!s(X.address,{strict:!1}))return!1;if(J&&!P0(X.address,J))return!1}catch{return!1}return!0}async function uq($,J){let{address:Q,domain:X,message:Y,nonce:Z,scheme:G,signature:W,time:K=new Date,...q}=J,V=dq(Y);if(!V.address)return!1;if(!mq({address:Q,domain:X,message:V,nonce:Z,scheme:G,time:K}))return!1;let D=AX(Y);return E8($,{address:V.address,hash:D,signature:W,...q})}_0();async function yX($,{serializedTransaction:J,throwOnReceiptRevert:Q,timeout:X}){let Y=await $.request({method:"eth_sendRawTransactionSync",params:X?[J,E(X)]:[J]},{retryCount:0}),G=($.chain?.formatters?.transactionReceipt?.format||gY)(Y);if(G.status==="reverted"&&Q)throw new qY({receipt:G});return G}function pq($){return{call:(J)=>f0($,J),createAccessList:(J)=>m1($,J),createBlockFilter:()=>N2($),createContractEventFilter:(J)=>l9($,J),createEventFilter:(J)=>u1($,J),createPendingTransactionFilter:()=>p1($),estimateContractGas:(J)=>qK($,J),estimateGas:(J)=>UX($,J),getBalance:(J)=>w2($,J),getBlobBaseFee:()=>z2($),getBlock:(J)=>g$($,J),getBlockNumber:(J)=>zJ($,J),getBlockTransactionCount:(J)=>H2($,J),getBytecode:(J)=>uY($,J),getChainId:()=>o$($),getCode:(J)=>uY($,J),getContractEvents:(J)=>z1($,J),getEip712Domain:(J)=>O2($,J),getEnsAddress:(J)=>Z2($,J),getEnsAvatar:(J)=>M2($,J),getEnsName:(J)=>D2($,J),getEnsResolver:(J)=>U2($,J),getEnsText:(J)=>d1($,J),getFeeHistory:(J)=>C2($,J),estimateFeesPerGas:(J)=>$K($,J),getFilterChanges:(J)=>C8($,J),getFilterLogs:(J)=>S2($,J),getGasPrice:()=>KX($),getLogs:(J)=>wX($,J),getProof:(J)=>Rq($,J),estimateMaxPriorityFeePerGas:(J)=>e6($,J),fillTransaction:(J)=>DX($,J),getStorageAt:(J)=>Bq($,J),getTransaction:(J)=>xX($,J),getTransactionConfirmations:(J)=>Fq($,J),getTransactionCount:(J)=>qX($,J),getTransactionReceipt:(J)=>kX($,J),multicall:(J)=>Eq($,J),prepareTransactionRequest:(J)=>DJ($,J),readContract:(J)=>j$($,J),sendRawTransaction:(J)=>jX($,J),sendRawTransactionSync:(J)=>yX($,J),simulate:(J)=>rY($,J),simulateBlocks:(J)=>rY($,J),simulateCalls:(J)=>kq($,J),simulateContract:(J)=>rK($,J),verifyHash:(J)=>E8($,J),verifyMessage:(J)=>yq($,J),verifySiweMessage:(J)=>uq($,J),verifyTypedData:(J)=>vq($,J),uninstallFilter:(J)=>S8($,J),waitForTransactionReceipt:(J)=>D5($,J),watchBlocks:(J)=>bq($,J),watchBlockNumber:(J)=>M5($,J),watchContractEvent:(J)=>$2($,J),watchEvent:(J)=>hq($,J),watchPendingTransactions:(J)=>gq($,J)}}function cG($){let{key:J="public",name:Q="Public Client"}=$;return b1({...$,key:J,name:Q,type:"publicClient"}).extend(pq)}m();async function lq($,{chain:J}){let{id:Q,name:X,nativeCurrency:Y,rpcUrls:Z,blockExplorers:G}=J;await $.request({method:"wallet_addEthereumChain",params:[{chainId:E(Q),chainName:X,nativeCurrency:Y,rpcUrls:Z.default.http,blockExplorerUrls:G?Object.values(G).map(({url:W})=>W):void 0}]},{dedupe:!0,retryCount:0})}_1();function cq($,J){let{abi:Q,args:X,bytecode:Y,...Z}=J,G=QQ({abi:Q,args:X,bytecode:Y});return R8($,{...Z,...Z.authorizationList?{to:null}:{},data:G})}YJ();async function nq($){if($.account?.type==="local")return[$.account.address];return(await $.request({method:"eth_accounts"},{dedupe:!0})).map((Q)=>XJ(Q))}m();async function oq($,J={}){let{account:Q=$.account,chainId:X}=J,Y=Q?p(Q):void 0,Z=X?[Y?.address,[E(X)]]:[Y?.address],G=await $.request({method:"wallet_getCapabilities",params:Z}),W={};for(let[K,q]of Object.entries(G)){W[Number(K)]={};for(let[V,M]of Object.entries(q)){if(V==="addSubAccount")V="unstable_addSubAccount";W[Number(K)][V]=M}}return typeof X==="number"?W[X]:W}async function iq($){return await $.request({method:"wallet_getPermissions"},{dedupe:!0})}e8();async function U5($,J){let{account:Q=$.account,chainId:X,nonce:Y}=J;if(!Q)throw new p$({docsPath:"/docs/eip7702/prepareAuthorization"});let Z=p(Q),G=(()=>{if(!J.executor)return;if(J.executor==="self")return J.executor;return p(J.executor)})(),W={address:J.contractAddress??J.address,chainId:X,nonce:Y};if(typeof W.chainId>"u")W.chainId=$.chain?.id??await A($,o$,"getChainId")({});if(typeof W.nonce>"u"){if(W.nonce=await A($,qX,"getTransactionCount")({address:Z.address,blockTag:"pending"}),G==="self"||G?.address&&P0(G.address,Z.address))W.nonce+=1}return W}YJ();async function sq($){return(await $.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map((Q)=>V0(Q))}async function rq($,J){return $.request({method:"wallet_requestPermissions",params:[J]},{retryCount:0})}async function tq($,J){let{chain:Q=$.chain}=J,X=J.timeout??Math.max((Q?.blockTime??0)*3,5000),Y=await A($,P1,"sendCalls")(J);return await A($,k1,"waitForCallsStatus")({...J,id:Y.id,timeout:X})}l();_0();pJ();d8();MJ();var nG=new S0(128);async function N5($,J){let{account:Q=$.account,assertChainId:X=!0,chain:Y=$.chain,accessList:Z,authorizationList:G,blobs:W,data:K,dataSuffix:q=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,pollingInterval:L,throwOnReceiptRevert:O,type:C,value:N,...H}=J,S=J.timeout??Math.max((Y?.blockTime??0)*3,5000);if(typeof Q>"u")throw new p$({docsPath:"/docs/actions/wallet/sendTransactionSync"});let B=Q?p(Q):null;try{h$(J);let F=await(async()=>{if(J.to)return J.to;if(J.to===null)return;if(G&&G.length>0)return await w8({authorization:G[0]}).catch(()=>{throw new R("`to` is required. Could not infer from `authorizationList`.")});return})();if(B?.type==="json-rpc"||B===null){let I;if(Y!==null){if(I=await A($,o$,"getChainId")({}),X)EX({currentChainId:I,chain:Y})}let P=$.chain?.formatters?.transactionRequest?.format,y=(P||n$)({...A0(H,{format:P}),accessList:Z,account:B,authorizationList:G,blobs:W,chainId:I,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,to:F,type:C,value:N},"sendTransaction"),x=nG.get($.uid),b=x?"wallet_sendTransaction":"eth_sendTransaction",g=await(async()=>{try{return await $.request({method:b,params:[y]},{retryCount:0})}catch(f){if(x===!1)throw f;let d=f;if(d.name==="InvalidInputRpcError"||d.name==="InvalidParamsRpcError"||d.name==="MethodNotFoundRpcError"||d.name==="MethodNotSupportedRpcError")return await $.request({method:"wallet_sendTransaction",params:[y]},{retryCount:0}).then((k)=>{return nG.set($.uid,!0),k}).catch((k)=>{let v=k;if(v.name==="MethodNotFoundRpcError"||v.name==="MethodNotSupportedRpcError")throw nG.set($.uid,!1),d;throw v});throw d}})(),_=await A($,D5,"waitForTransactionReceipt")({checkReplacement:!1,hash:g,pollingInterval:L,timeout:S});if(O&&_.status==="reverted")throw new qY({receipt:_});return _}if(B?.type==="local"){let I=await A($,DJ,"prepareTransactionRequest")({account:B,accessList:Z,authorizationList:G,blobs:W,chain:Y,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,nonceManager:B.nonceManager,parameters:[...fY,"sidecars"],type:C,value:N,...H,to:F}),P=Y?.serializers?.transaction,j=await B.signTransaction(I,{serializer:P});return await A($,yX,"sendRawTransactionSync")({serializedTransaction:j,throwOnReceiptRevert:O,timeout:J.timeout})}if(B?.type==="smart")throw new n0({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new n0({docsPath:"/docs/actions/wallet/sendTransactionSync",type:B?.type})}catch(F){if(F instanceof n0)throw F;throw H8(F,{...J,account:B,chain:J.chain||void 0})}}async function aq($,J){let{id:Q}=J;await $.request({method:"wallet_showCallsStatus",params:[Q]});return}async function eq($,J){let{account:Q=$.account}=J;if(!Q)throw new p$({docsPath:"/docs/eip7702/signAuthorization"});let X=p(Q);if(!X.signAuthorization)throw new n0({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:X.type});let Y=await U5($,J);return X.signAuthorization(Y)}m();async function $V($,{account:J=$.account,message:Q}){if(!J)throw new p$({docsPath:"/docs/actions/wallet/signMessage"});let X=p(J);if(X.signMessage)return X.signMessage({message:Q});let Y=(()=>{if(typeof Q==="string")return K0(Q);if(Q.raw instanceof Uint8Array)return t(Q.raw);return Q.raw})();return $.request({method:"personal_sign",params:[Y,X.address]},{retryCount:0})}m();pJ();MJ();async function JV($,J){let{account:Q=$.account,chain:X=$.chain,...Y}=J;if(!Q)throw new p$({docsPath:"/docs/actions/wallet/signTransaction"});let Z=p(Q);h$({account:Z,...J});let G=await A($,o$,"getChainId")({});if(X!==null)EX({currentChainId:G,chain:X});let K=(X?.formatters||$.chain?.formatters)?.transactionRequest?.format||n$;if(Z.signTransaction)return Z.signTransaction({...Y,chainId:G},{serializer:$.chain?.serializers?.transaction});return await $.request({method:"eth_signTransaction",params:[{...K({...Y,account:Z},"signTransaction"),chainId:E(G),from:Z.address}]},{retryCount:0})}async function QV($,J){let{account:Q=$.account,domain:X,message:Y,primaryType:Z}=J;if(!Q)throw new p$({docsPath:"/docs/actions/wallet/signTypedData"});let G=p(Q),W={EIP712Domain:i1({domain:X}),...J.types};if(o1({domain:X,message:Y,primaryType:Z,types:W}),G.signTypedData)return G.signTypedData({domain:X,message:Y,primaryType:Z,types:W});let K=y2({domain:X,message:Y,primaryType:Z,types:W});return $.request({method:"eth_signTypedData_v4",params:[G.address,K]},{retryCount:0})}m();async function XV($,{id:J}){await $.request({method:"wallet_switchEthereumChain",params:[{chainId:E(J)}]},{retryCount:0})}async function YV($,J){return await $.request({method:"wallet_watchAsset",params:J},{retryCount:0})}async function ZV($,J){return GQ.internal($,N5,"sendTransactionSync",J)}function GV($){return{addChain:(J)=>lq($,J),deployContract:(J)=>cq($,J),fillTransaction:(J)=>DX($,J),getAddresses:()=>nq($),getCallsStatus:(J)=>x1($,J),getCapabilities:(J)=>oq($,J),getChainId:()=>o$($),getPermissions:()=>iq($),prepareAuthorization:(J)=>U5($,J),prepareTransactionRequest:(J)=>DJ($,J),requestAddresses:()=>sq($),requestPermissions:(J)=>rq($,J),sendCalls:(J)=>P1($,J),sendCallsSync:(J)=>tq($,J),sendRawTransaction:(J)=>jX($,J),sendRawTransactionSync:(J)=>yX($,J),sendTransaction:(J)=>R8($,J),sendTransactionSync:(J)=>N5($,J),showCallsStatus:(J)=>aq($,J),signAuthorization:(J)=>eq($,J),signMessage:(J)=>$V($,J),signTransaction:(J)=>JV($,J),signTypedData:(J)=>QV($,J),switchChain:(J)=>XV($,J),waitForCallsStatus:(J)=>k1($,J),watchAsset:(J)=>YV($,J),writeContract:(J)=>GQ($,J),writeContractSync:(J)=>ZV($,J)}}function oG($){let{key:J="wallet",name:Q="Wallet Client",transport:X}=$;return b1({...$,key:J,name:Q,transport:X,type:"walletClient"}).extend(GV)}function w5({key:$,methods:J,name:Q,request:X,retryCount:Y=3,retryDelay:Z=150,timeout:G,type:W},K){let q=v1();return{config:{key:$,methods:J,name:Q,request:X,retryCount:Y,retryDelay:Z,timeout:G,type:W},request:A2(X,{methods:J,retryCount:Y,retryDelay:Z,uid:q}),value:K}}uJ();n8();function iG($,J={}){let{key:Q="fallback",name:X="Fallback",rank:Y=!1,shouldThrow:Z=WV,retryCount:G,retryDelay:W}=J;return({chain:K,pollingInterval:q=4000,timeout:V,...M})=>{let D=$,U=()=>{},z=w5({key:Q,name:X,async request({method:w,params:L}){let O,C=async(N=0)=>{let H=D[N]({...M,chain:K,retryCount:0,timeout:V});try{let S=await H.request({method:w,params:L});return U({method:w,params:L,response:S,transport:H,status:"success"}),S}catch(S){if(U({error:S,method:w,params:L,transport:H,status:"error"}),Z(S))throw S;if(N===D.length-1)throw S;if(O??=D.slice(N+1).some((B)=>{let{include:F,exclude:I}=B({chain:K}).config.methods||{};if(F)return F.includes(w);if(I)return!I.includes(w);return!0}),!O)throw S;return C(N+1)}};return C()},retryCount:G,retryDelay:W,type:"fallback"},{onResponse:(w)=>U=w,transports:D.map((w)=>w({chain:K,retryCount:0}))});if(Y){let w=typeof Y==="object"?Y:{};Tz({chain:K,interval:w.interval??q,onTransports:(L)=>D=L,ping:w.ping,sampleCount:w.sampleCount,timeout:w.timeout,transports:D,weights:w.weights})}return z}}function WV($){if("code"in $&&typeof $.code==="number"){if($.code===G8.code||$.code===fJ.code||$.code===V8.code||VJ.nodeMessage.test($.message)||$.code===5000)return!0}return!1}function Tz({chain:$,interval:J=4000,onTransports:Q,ping:X,sampleCount:Y=10,timeout:Z=1000,transports:G,weights:W={}}){let{stability:K=0.7,latency:q=0.3}=W,V=[],M=async()=>{let D=await Promise.all(G.map(async(w)=>{let L=w({chain:$,retryCount:0,timeout:Z}),O=Date.now(),C,N;try{await(X?X({transport:L}):L.request({method:"net_listening"})),N=1}catch{N=0}finally{C=Date.now()}return{latency:C-O,success:N}}));if(V.push(D),V.length>Y)V.shift();let U=Math.max(...V.map((w)=>Math.max(...w.map(({latency:L})=>L)))),z=G.map((w,L)=>{let O=V.map((B)=>B[L].latency),N=1-O.reduce((B,F)=>B+F,0)/O.length/U,H=V.map((B)=>B[L].success),S=H.reduce((B,F)=>B+F,0)/H.length;if(S===0)return[0,L];return[q*N+K*S,L]}).sort((w,L)=>L[0]-w[0]);Q(z.map(([,w])=>G[w])),await ZQ(J),M()};M()}l8();l();class sG extends R{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}c7();function rG($,J={}){let{batch:Q,fetchFn:X,fetchOptions:Y,key:Z="http",methods:G,name:W="HTTP JSON-RPC",onFetchRequest:K,onFetchResponse:q,retryDelay:V,raw:M}=J;return({chain:D,retryCount:U,timeout:z})=>{let{batchSize:w=1000,wait:L=0}=typeof Q==="object"?Q:{},O=J.retryCount??U,C=z??J.timeout??1e4,N=$||D?.rpcUrls.default.http[0];if(!N)throw new sG;let H=x2(N,{fetchFn:X,fetchOptions:Y,onRequest:K,onResponse:q,timeout:C});return w5({key:Z,methods:G,name:W,async request({method:S,params:B}){let F={method:S,params:B},{schedule:I}=A1({id:N,wait:L,shouldSplitBatch(x){return x.length>w},fn:(x)=>H.request({body:x}),sort:(x,b)=>x.id-b.id}),P=async(x)=>Q?I(x):[await H.request({body:x})],[{error:j,result:y}]=await P(F);if(M)return{error:j,result:y};if(j)throw new p8({body:F,error:j,url:N});return y},retryCount:O,retryDelay:V,timeout:C,type:"http"},{fetchOptions:Y,url:N})}}V1();ZJ();YJ();m();q0();t8();m();function tG(){return t(Q0.utils.randomPrivateKey())}t8();m();I0();M0();function KV($){if(typeof $==="string"){if(!s($,{strict:!1}))throw new Y$({address:$});return{address:$,type:"json-rpc"}}if(!s($.address,{strict:!1}))throw new Y$({address:$.address});return{address:$.address,nonceManager:$.nonceManager,sign:$.sign,signAuthorization:$.signAuthorization,signMessage:$.signMessage,signTransaction:$.signTransaction,signTypedData:$.signTypedData,source:"custom",type:"local"}}t8();k$();m();var aG=!1;async function HJ({hash:$,privateKey:J,to:Q="object"}){let{r:X,s:Y,recovery:Z}=Q0.sign($.slice(2),J.slice(2),{lowS:!0,extraEntropy:U$(aG,{strict:!1})?x$(aG):aG}),G={r:E(X,{size:32}),s:E(Y,{size:32}),v:Z?28n:27n,yParity:Z};return(()=>{if(Q==="bytes"||Q==="hex")return V5({...G,to:Q});return G})()}async function qV($){let{chainId:J,nonce:Q,privateKey:X,to:Y="object"}=$,Z=$.contractAddress??$.address,G=await HJ({hash:K1({address:Z,chainId:J,nonce:Q}),privateKey:X,to:Y});if(Y==="object")return{address:Z,chainId:J,nonce:Q,...G};return G}async function VV({message:$,privateKey:J}){return await HJ({hash:AX($),privateKey:J,to:"hex"})}q0();async function MV($){let{privateKey:J,transaction:Q,serializer:X=c1}=$,Y=(()=>{if(Q.type==="eip4844")return{...Q,sidecars:!1};return Q})(),Z=await HJ({hash:n(await X(Y)),privateKey:J});return await X(Q,Z)}async function DV($){let{privateKey:J,...Q}=$;return await HJ({hash:s1(Q),privateKey:J,to:"hex"})}function NQ($,J={}){let{nonceManager:Q}=J,X=t(Q0.getPublicKey($.slice(2),!1)),Y=$1(X);return{...KV({address:Y,nonceManager:Q,async sign({hash:G}){return HJ({hash:G,privateKey:$,to:"hex"})},async signAuthorization(G){return qV({...G,privateKey:$})},async signMessage({message:G}){return VV({message:G,privateKey:$})},async signTransaction(G,{serializer:W}={}){return MV({privateKey:$,transaction:G,serializer:W})},async signTypedData(G){return DV({...G,privateKey:$})}}),publicKey:X,source:"privateKey"}}var UV={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}};P$();var NV={block:a6({format($){return{transactions:$.transactions?.map((Q)=>{if(typeof Q==="string")return Q;let X=cJ(Q);if(X.typeHex==="0x7e")X.isSystemTx=Q.isSystemTx,X.mint=Q.mint?Z$(Q.mint):void 0,X.sourceHash=Q.sourceHash,X.type="deposit";return X}),stateRoot:$.stateRoot}}}),transaction:t6({format($){let J={};if($.type==="0x7e")J.isSystemTx=$.isSystemTx,J.mint=$.mint?Z$($.mint):void 0,J.sourceHash=$.sourceHash,J.type="deposit";return J}}),transactionReceipt:J2({format($){return{l1GasPrice:$.l1GasPrice?Z$($.l1GasPrice):null,l1GasUsed:$.l1GasUsed?Z$($.l1GasUsed):null,l1Fee:$.l1Fee?Z$($.l1Fee):null,l1FeeScalar:$.l1FeeScalar?Number($.l1FeeScalar):null}}})};I0();M0();m();function Az($,J){if(xz($))return Pz($);return c1($,J)}var wV={transaction:Az};function Pz($){kz($);let{sourceHash:J,data:Q,from:X,gas:Y,isSystemTx:Z,mint:G,to:W,value:K}=$,q=[J,X,W??"0x",G?t(G):"0x",K?t(K):"0x",Y?t(Y):"0x",Z?"0x1":"0x",Q??"0x"];return R$(["0x7e",p0(q)])}function xz($){if($.type==="deposit")return!0;if(typeof $.sourceHash<"u")return!0;return!1}function kz($){let{from:J,to:Q}=$;if(J&&!s(J))throw new Y$({address:J});if(Q&&!s(Q))throw new Y$({address:Q})}var eG={blockTime:2000,contracts:UV,formatters:NV,serializers:wV};var eY=1,z5=DG({...eG,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{...eG.contracts,disputeGameFactory:{[eY]:{address:"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e"}},l2OutputOracle:{[eY]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[eY]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[eY]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:eY}),fz=DG({...z5,experimental_preconfirmationTime:200,rpcUrls:{default:{http:["https://mainnet-preconf.base.org"]}}});var $W=z5,yz=["https://base-rpc.publicnode.com","https://base.meowrpc.com","https://mainnet.base.org","https://developer-access-mainnet.base.org","https://base-mainnet.public.blastapi.io","https://base-public.nodies.app","https://1rpc.io/base"];function JW(){return iG(yz.map(($)=>rG($,{retryCount:0,timeout:2000,batch:!0})),{rank:!1})}function D$(){return cG({chain:$W,transport:JW()})}function H0($){let J=NQ($);return oG({account:J,chain:$W,transport:JW()})}var e=($,J=18)=>w$($,J),H$=($,J=18)=>o0($,J),tJ=($)=>`${$.slice(0,6)}...${$.slice(-4)}`,j8=($)=>$,I8=($)=>`https://basescan.org/tx/${$}`;function zV($){let J=[],Q=[];for(let X of $.split(",")){let[Y,Z]=X.trim().split(":");if(!Y||!Z)throw Error(`Invalid step: "${X}". Expected "range:price"`);J.push(H$(Y)),Q.push(H$(Z))}return{ranges:J,prices:Q}}function HV($){let J=$.reserveSymbol??tJ($.reserveToken);if(console.log([`
55
+ `).slice(0,-1)}var PZ,xZ;var kZ=_(()=>{l();PZ=class PZ extends R{constructor({address:$}){super(`State for account "${$}" is set multiple times.`,{name:"AccountStateConflictError"})}};xZ=class xZ extends R{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}});function u8($){let J=Object.entries($).map(([X,Y])=>{if(Y===void 0||Y===!1)return null;return[X,Y]}).filter(Boolean),Q=J.reduce((X,[Y])=>Math.max(X,Y.length),0);return J.map(([X,Y])=>` ${`${X}:`.padEnd(Q+1)} ${Y}`).join(`
56
+ `)}var fZ,yZ,vZ,bZ,KY,qY,VY,hZ;var _0=_(()=>{Y1();bQ();l();fZ=class fZ extends R{constructor({v:$}){super(`Invalid \`v\` value "${$}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}};yZ=class yZ extends R{constructor({transaction:$}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",u8($),"}","","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"})}};vZ=class vZ extends R{constructor({storageKey:$}){super(`Size for storage key "${$}" is invalid. Expected 32 bytes. Got ${Math.floor(($.length-2)/2)} bytes.`,{name:"InvalidStorageKeySizeError"})}};bZ=class bZ extends R{constructor($,{account:J,docsPath:Q,chain:X,data:Y,gas:Z,gasPrice:W,maxFeePerGas:G,maxPriorityFeePerGas:K,nonce:q,to:V,value:M}){let D=u8({chain:X&&`${X?.name} (id: ${X?.id})`,from:J?.address,to:V,value:typeof M<"u"&&`${vQ(M)} ${X?.nativeCurrency?.symbol||"ETH"}`,data:Y,gas:Z,gasPrice:typeof W<"u"&&`${f$(W)} gwei`,maxFeePerGas:typeof G<"u"&&`${f$(G)} gwei`,maxPriorityFeePerGas:typeof K<"u"&&`${f$(K)} gwei`,nonce:q});super($.shortMessage,{cause:$,docsPath:Q,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],"Request Arguments:",D].filter(Boolean),name:"TransactionExecutionError"});Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=$}};KY=class KY extends R{constructor({blockHash:$,blockNumber:J,blockTag:Q,hash:X,index:Y}){let Z="Transaction";if(Q&&Y!==void 0)Z=`Transaction at block time "${Q}" at index "${Y}"`;if($&&Y!==void 0)Z=`Transaction at block hash "${$}" at index "${Y}"`;if(J&&Y!==void 0)Z=`Transaction at block number "${J}" at index "${Y}"`;if(X)Z=`Transaction with hash "${X}"`;super(`${Z} could not be found.`,{name:"TransactionNotFoundError"})}};qY=class qY extends R{constructor({hash:$}){super(`Transaction receipt with hash "${$}" could not be found. The Transaction may not be processed on a block yet.`,{name:"TransactionReceiptNotFoundError"})}};VY=class VY extends R{constructor({receipt:$}){super(`Transaction with hash "${$.transactionHash}" reverted.`,{metaMessages:['The receipt marked the transaction as "reverted". This could mean that the function on the contract you are trying to call threw an error.'," ","You can attempt to extract the revert reason by:","- calling the `simulateContract` or `simulateCalls` Action with the `abi` and `functionName` of the contract","- using the `call` Action with raw `data`"],name:"TransactionReceiptRevertedError"});Object.defineProperty(this,"receipt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.receipt=$}};hZ=class hZ extends R{constructor({hash:$}){super(`Timed out while waiting for transaction with hash "${$}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}});var X6=($)=>$,p8=($)=>$;var MY,DY,hQ,gZ,dZ,fJ;var Y8=_(()=>{$1();_Z();jJ();e4();X8();Y1();bQ();S$();l();kZ();_0();MY=class MY extends R{constructor($,{account:J,docsPath:Q,chain:X,data:Y,gas:Z,gasPrice:W,maxFeePerGas:G,maxPriorityFeePerGas:K,nonce:q,to:V,value:M,stateOverride:D}){let U=J?p(J):void 0,z=u8({from:U?.address,to:V,value:typeof M<"u"&&`${vQ(M)} ${X?.nativeCurrency?.symbol||"ETH"}`,data:Y,gas:Z,gasPrice:typeof W<"u"&&`${f$(W)} gwei`,maxFeePerGas:typeof G<"u"&&`${f$(G)} gwei`,maxPriorityFeePerGas:typeof K<"u"&&`${f$(K)} gwei`,nonce:q});if(D)z+=`
57
+ ${Q6(D)}`;super($.shortMessage,{cause:$,docsPath:Q,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],"Raw Call Arguments:",z].filter(Boolean),name:"CallExecutionError"});Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=$}};DY=class DY extends R{constructor($,{abi:J,args:Q,contractAddress:X,docsPath:Y,functionName:Z,sender:W}){let G=U0({abi:J,args:Q,name:Z}),K=G?AZ({abiItem:G,args:Q,includeFunctionName:!1,includeName:!1}):void 0,q=G?A$(G,{includeName:!0}):void 0,V=u8({address:X&&X6(X),function:q,args:K&&K!=="()"&&`${[...Array(Z?.length??0).keys()].map(()=>" ").join("")}${K}`,sender:W});super($.shortMessage||`An unknown error occurred while executing the contract function "${Z}".`,{cause:$,docsPath:Y,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],V&&"Contract Call:",V].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=J,this.args=Q,this.cause=$,this.contractAddress=X,this.functionName=Z,this.sender=W}};hQ=class hQ extends R{constructor({abi:$,data:J,functionName:Q,message:X}){let Y,Z,W,G;if(J&&J!=="0x")try{Z=J1({abi:$,data:J});let{abiItem:q,errorName:V,args:M}=Z;if(V==="Error")G=M[0];else if(V==="Panic"){let[D]=M;G=t4[D]}else{let D=q?A$(q,{includeName:!0}):void 0,U=q&&M?AZ({abiItem:q,args:M,includeFunctionName:!1,includeName:!1}):void 0;W=[D?`Error: ${D}`:"",U&&U!=="()"?` ${[...Array(V?.length??0).keys()].map(()=>" ").join("")}${U}`:""]}}catch(q){Y=q}else if(X)G=X;let K;if(Y instanceof tX)K=Y.signature,W=[`Unable to decode signature "${K}" 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://4byte.sourcify.dev/?q=${K}.`];super(G&&G!=="execution reverted"||K?[`The contract function "${Q}" reverted with the following ${K?"signature":"reason"}:`,G||K].join(`
58
+ `):`The contract function "${Q}" reverted.`,{cause:Y,metaMessages:W,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=Z,this.raw=J,this.reason=G,this.signature=K}};gZ=class gZ extends R{constructor({functionName:$}){super(`The contract function "${$}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${$}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}};dZ=class dZ extends R{constructor({factory:$}){super(`Deployment for counterfactual contract call failed${$?` for factory "${$}".`:""}`,{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"})}};fJ=class fJ extends R{constructor({data:$,message:J}){super(J||"",{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=$}}});function Y6($){let{abi:J,data:Q}=$,X=D0(Q,0,4),Y=J.find((Z)=>Z.type==="function"&&X===KJ(A$(Z)));if(!Y)throw new YZ(X,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:Y.name,args:"inputs"in Y&&Y.inputs&&Y.inputs.length>0?xJ(Y.inputs,D0(Q,4)):void 0}}var Z6=_(()=>{S$();PJ();kQ();ZY();jJ()});function uZ($){let{abi:J,errorName:Q,args:X}=$,Y=J[0];if(Q){let K=U0({abi:J,args:X,name:Q});if(!K)throw new k9(Q,{docsPath:mZ});Y=K}if(Y.type!=="error")throw new k9(void 0,{docsPath:mZ});let Z=A$(Y),W=KJ(Z),G="0x";if(X&&X.length>0){if(!Y.inputs)throw new JZ(Y.name,{docsPath:mZ});G=G$(Y.inputs,X)}return R$([W,G])}var mZ="/docs/contract/encodeErrorResult";var W6=_(()=>{S$();kQ();GJ();jJ();X8()});function G6($){let{abi:J,functionName:Q,result:X}=$,Y=J[0];if(Q){let W=U0({abi:J,name:Q});if(!W)throw new JJ(Q,{docsPath:pZ});Y=W}if(Y.type!=="function")throw new JJ(void 0,{docsPath:pZ});if(!Y.outputs)throw new aX(Y.name,{docsPath:pZ});let Z=(()=>{if(Y.outputs.length===0)return[];if(Y.outputs.length===1)return[X];if(Array.isArray(X))return X;throw new $Y(X)})();return G$(Y.outputs,Z)}var pZ="/docs/contract/encodeFunctionResult";var K6=_(()=>{S$();GJ();X8()});async function lZ($){let{data:J,ccipRequest:Q}=$,{args:[X]}=Y6({abi:A9,data:J}),Y=[],Z=[];return await Promise.all(X.map(async(W,G)=>{try{Z[G]=W.urls.includes(yJ)?await lZ({data:W.data,ccipRequest:Q}):await Q(W),Y[G]=!1}catch(K){Y[G]=!0,Z[G]=CU(K)}})),G6({abi:A9,functionName:"query",result:[Y,Z]})}function CU($){if($.name==="HttpRequestError"&&$.status)return uZ({abi:A9,errorName:"HttpError",args:[$.status,$.shortMessage]});return uZ({abi:[e9],errorName:"Error",args:["shortMessage"in $?$.shortMessage:$.message]})}var yJ="x-batch-gateway:true";var UY=_(()=>{EJ();$1();Z6();W6();K6()});var m0,l8,W1;var c8=_(()=>{l();m0=class m0 extends R{constructor({body:$,cause:J,details:Q,headers:X,status:Y,url:Z}){super("HTTP request failed.",{cause:J,details:Q,metaMessages:[Y&&`Status: ${Y}`,`URL: ${p8(Z)}`,$&&`Request body: ${o($)}`].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=$,this.headers=X,this.status=Y,this.url=Z}};l8=class l8 extends R{constructor({body:$,error:J,url:Q}){super("RPC Request failed.",{cause:J,details:J.message,metaMessages:[`URL: ${p8(Q)}`,`Request body: ${o($)}`],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=J.code,this.data=J.data,this.url=Q}};W1=class W1 extends R{constructor({body:$,url:J}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${p8(J)}`,`Request body: ${o($)}`],name:"TimeoutError"});Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=J}}});var SU=-1,e$,$0,mQ,uQ,pQ,lQ,vJ,A0,cQ,nQ,Z8,W8,n8,oQ,bJ,iQ,sQ,rQ,tQ,aQ,G8,eQ,$X,JX,QX,XX,K8,q8,cZ;var o8=_(()=>{l();c8();e$=class e$ extends R{constructor($,{code:J,docsPath:Q,metaMessages:X,name:Y,shortMessage:Z}){super(Z,{cause:$,docsPath:Q,metaMessages:X||$?.metaMessages,name:Y||"RpcError"});Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=Y||$.name,this.code=$ instanceof l8?$.code:J??SU}};$0=class $0 extends e${constructor($,J){super($,J);Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=J.data}};mQ=class mQ extends e${constructor($){super($,{code:mQ.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}};Object.defineProperty(mQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});uQ=class uQ extends e${constructor($){super($,{code:uQ.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}};Object.defineProperty(uQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});pQ=class pQ extends e${constructor($,{method:J}={}){super($,{code:pQ.code,name:"MethodNotFoundRpcError",shortMessage:`The method${J?` "${J}"`:""} does not exist / is not available.`})}};Object.defineProperty(pQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});lQ=class lQ extends e${constructor($){super($,{code:lQ.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
59
+ `)})}};Object.defineProperty(lQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});vJ=class vJ extends e${constructor($){super($,{code:vJ.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}};Object.defineProperty(vJ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});A0=class A0 extends e${constructor($){super($,{code:A0.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
60
+ `)})}};Object.defineProperty(A0,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32000});cQ=class cQ extends e${constructor($){super($,{code:cQ.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}};Object.defineProperty(cQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});nQ=class nQ extends e${constructor($){super($,{code:nQ.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}};Object.defineProperty(nQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});Z8=class Z8 extends e${constructor($){super($,{code:Z8.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}};Object.defineProperty(Z8,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});W8=class W8 extends e${constructor($,{method:J}={}){super($,{code:W8.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${J?` "${J}"`:""} is not supported.`})}};Object.defineProperty(W8,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});n8=class n8 extends e${constructor($){super($,{code:n8.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}};Object.defineProperty(n8,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});oQ=class oQ extends e${constructor($){super($,{code:oQ.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}};Object.defineProperty(oQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});bJ=class bJ extends $0{constructor($){super($,{code:bJ.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}};Object.defineProperty(bJ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});iQ=class iQ extends $0{constructor($){super($,{code:iQ.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}};Object.defineProperty(iQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});sQ=class sQ extends $0{constructor($,{method:J}={}){super($,{code:sQ.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${J?` " ${J}"`:""}.`})}};Object.defineProperty(sQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});rQ=class rQ extends $0{constructor($){super($,{code:rQ.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}};Object.defineProperty(rQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});tQ=class tQ extends $0{constructor($){super($,{code:tQ.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}};Object.defineProperty(tQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});aQ=class aQ extends $0{constructor($){super($,{code:aQ.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}};Object.defineProperty(aQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});G8=class G8 extends $0{constructor($){super($,{code:G8.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}};Object.defineProperty(G8,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});eQ=class eQ extends $0{constructor($){super($,{code:eQ.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}};Object.defineProperty(eQ,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});$X=class $X extends $0{constructor($){super($,{code:$X.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}};Object.defineProperty($X,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});JX=class JX extends $0{constructor($){super($,{code:JX.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}};Object.defineProperty(JX,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});QX=class QX extends $0{constructor($){super($,{code:QX.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}};Object.defineProperty(QX,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});XX=class XX extends $0{constructor($){super($,{code:XX.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}};Object.defineProperty(XX,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});K8=class K8 extends $0{constructor($){super($,{code:K8.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}};Object.defineProperty(K8,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});q8=class q8 extends $0{constructor($){super($,{code:q8.code,name:"WalletConnectSessionSettlementError",shortMessage:"WalletConnect session settlement failed."})}};Object.defineProperty(q8,"code",{enumerable:!0,configurable:!0,writable:!0,value:7000});cZ=class cZ extends e${constructor($){super($,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}});function YX($){return $ instanceof Uint8Array||ArrayBuffer.isView($)&&$.constructor.name==="Uint8Array"}function gJ($){if(!YX($))throw Error("Uint8Array expected")}function ZX($,J){if(typeof J!=="boolean")throw Error($+" boolean expected, got "+J)}function wY($){let J=$.toString(16);return J.length&1?"0"+J:J}function U6($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);return $===""?sZ:BigInt("0x"+$)}function WX($){if(gJ($),N6)return $.toHex();let J="";for(let Q=0;Q<$.length;Q++)J+=BU[$[Q]];return J}function M6($){if($>=hJ._0&&$<=hJ._9)return $-hJ._0;if($>=hJ.A&&$<=hJ.F)return $-(hJ.A-10);if($>=hJ.a&&$<=hJ.f)return $-(hJ.a-10);return}function zY($){if(typeof $!=="string")throw Error("hex string expected, got "+typeof $);if(N6)return Uint8Array.fromHex($);let J=$.length,Q=J/2;if(J%2)throw Error("hex string expected, got unpadded hex of length "+J);let X=new Uint8Array(Q);for(let Y=0,Z=0;Y<Q;Y++,Z+=2){let W=M6($.charCodeAt(Z)),G=M6($.charCodeAt(Z+1));if(W===void 0||G===void 0){let K=$[Z]+$[Z+1];throw Error('hex string expected, got non-hex character "'+K+'" at index '+Z)}X[Y]=W*16+G}return X}function w0($){return U6(WX($))}function rZ($){return gJ($),U6(WX(Uint8Array.from($).reverse()))}function qJ($,J){return zY($.toString(16).padStart(J*2,"0"))}function tZ($,J){return qJ($,J).reverse()}function E$($,J,Q){let X;if(typeof J==="string")try{X=zY(J)}catch(Z){throw Error($+" must be hex string or Uint8Array, cause: "+Z)}else if(YX(J))X=Uint8Array.from(J);else throw Error($+" must be hex string or Uint8Array");let Y=X.length;if(typeof Q==="number"&&Y!==Q)throw Error($+" of length "+Q+" expected, got "+Y);return X}function J0(...$){let J=0;for(let X=0;X<$.length;X++){let Y=$[X];gJ(Y),J+=Y.length}let Q=new Uint8Array(J);for(let X=0,Y=0;X<$.length;X++){let Z=$[X];Q.set(Z,Y),Y+=Z.length}return Q}function G1($){if(typeof $!=="string")throw Error("string expected");return new Uint8Array(new TextEncoder().encode($))}function i8($,J,Q){return nZ($)&&nZ(J)&&nZ(Q)&&J<=$&&$<Q}function dJ($,J,Q,X){if(!i8(J,Q,X))throw Error("expected valid "+$+": "+Q+" <= n < "+X+", got "+J)}function w6($){let J;for(J=0;$>sZ;$>>=iZ,J+=1);return J}function z6($,J,Q){if(typeof $!=="number"||$<2)throw Error("hashLen must be a number");if(typeof J!=="number"||J<2)throw Error("qByteLen must be a number");if(typeof Q!=="function")throw Error("hmacFn must be a function");let X=oZ($),Y=oZ($),Z=0,W=()=>{X.fill(1),Y.fill(0),Z=0},G=(...M)=>Q(Y,X,...M),K=(M=oZ(0))=>{if(Y=G(D6([0]),M),X=G(),M.length===0)return;Y=G(D6([1]),M),X=G()},q=()=>{if(Z++>=1000)throw Error("drbg: tried 1000 values");let M=0,D=[];while(M<J){X=G();let U=X.slice();D.push(U),M+=X.length}return J0(...D)};return(M,D)=>{W(),K(M);let U=void 0;while(!(U=D(q())))K();return W(),U}}function mJ($,J,Q={}){let X=(Y,Z,W)=>{let G=FU[Z];if(typeof G!=="function")throw Error("invalid validator function");let K=$[Y];if(W&&K===void 0)return;if(!G(K,$))throw Error("param "+String(Y)+" is invalid. Expected "+Z+", got "+K)};for(let[Y,Z]of Object.entries(J))X(Y,Z,!1);for(let[Y,Z]of Object.entries(Q))X(Y,Z,!0);return $}function aZ($){let J=new WeakMap;return(Q,...X)=>{let Y=J.get(Q);if(Y!==void 0)return Y;let Z=$(Q,...X);return J.set(Q,Z),Z}}var sZ,iZ,N6,BU,hJ,nZ=($)=>typeof $==="bigint"&&sZ<=$,s8=($)=>(iZ<<BigInt($))-iZ,oZ=($)=>new Uint8Array($),D6=($)=>Uint8Array.from($),FU;var GX=_(()=>{/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */sZ=BigInt(0),iZ=BigInt(1);N6=typeof Uint8Array.from([]).toHex==="function"&&typeof Uint8Array.fromHex==="function",BU=Array.from({length:256},($,J)=>J.toString(16).padStart(2,"0"));hJ={_0:48,_9:57,A:65,F:70,a:97,f:102};FU={bigint:($)=>typeof $==="bigint",function:($)=>typeof $==="function",boolean:($)=>typeof $==="boolean",string:($)=>typeof $==="string",stringOrUint8Array:($)=>typeof $==="string"||YX($),isSafeInteger:($)=>Number.isSafeInteger($),array:($)=>Array.isArray($),field:($,J)=>J.Fp.isValid($),hash:($)=>typeof $==="function"&&Number.isSafeInteger($.outputLen)}});var H6="0.1.1";function O6(){return H6}var L6=()=>{};function C6($,J){if(J?.($))return $;if($&&typeof $==="object"&&"cause"in $&&$.cause)return C6($.cause,J);return J?null:$}var h;var z0=_(()=>{L6();h=class h extends Error{static setStaticOptions($){h.prototype.docsOrigin=$.docsOrigin,h.prototype.showVersion=$.showVersion,h.prototype.version=$.version}constructor($,J={}){let Q=(()=>{if(J.cause instanceof h){if(J.cause.details)return J.cause.details;if(J.cause.shortMessage)return J.cause.shortMessage}if(J.cause&&"details"in J.cause&&typeof J.cause.details==="string")return J.cause.details;if(J.cause?.message)return J.cause.message;return J.details})(),X=(()=>{if(J.cause instanceof h)return J.cause.docsPath||J.docsPath;return J.docsPath})(),Y=J.docsOrigin??h.prototype.docsOrigin,Z=`${Y}${X??""}`,W=Boolean(J.version??h.prototype.showVersion),G=J.version??h.prototype.version,K=[$||"An error occurred.",...J.metaMessages?["",...J.metaMessages]:[],...Q||X||W?["",Q?`Details: ${Q}`:void 0,X?`See: ${Z}`:void 0,W?`Version: ${G}`:void 0]:[]].filter((q)=>typeof q==="string").join(`
61
+ `);super(K,J.cause?{cause:J.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,"docsOrigin",{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,"showVersion",{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,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.cause=J.cause,this.details=Q,this.docs=Z,this.docsOrigin=Y,this.docsPath=X,this.shortMessage=$,this.showVersion=W,this.version=G}walk($){return C6(this,$)}};Object.defineProperty(h,"defaultStaticOptions",{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:"https://oxlib.sh",showVersion:!1,version:`ox@${O6()}`}});(()=>{h.setStaticOptions(h.defaultStaticOptions)})()});function KX($,J){if(P0($)>J)throw new J7({givenSize:P0($),maxSize:J})}function S6($,J){if(typeof J==="number"&&J>0&&J>P0($)-1)throw new K1({offset:J,position:"start",size:P0($)})}function R6($,J,Q){if(typeof J==="number"&&typeof Q==="number"&&P0($)!==Q-J)throw new K1({offset:Q,position:"end",size:P0($)})}function eZ($){if($>=uJ.zero&&$<=uJ.nine)return $-uJ.zero;if($>=uJ.A&&$<=uJ.F)return $-(uJ.A-10);if($>=uJ.a&&$<=uJ.f)return $-(uJ.a-10);return}function B6($,J={}){let{dir:Q,size:X=32}=J;if(X===0)return $;if($.length>X)throw new Q7({size:$.length,targetSize:X,type:"Bytes"});let Y=new Uint8Array(X);for(let Z=0;Z<X;Z++){let W=Q==="right";Y[W?Z:X-Z-1]=$[W?Z:$.length-Z-1]}return Y}function $7($,J={}){let{dir:Q="left"}=J,X=$,Y=0;for(let Z=0;Z<X.length-1;Z++)if(X[Q==="left"?Z:X.length-Z-1].toString()==="0")Y++;else break;return X=Q==="left"?X.slice(Y):X.slice(0,X.length-Y),X}var uJ;var F6=_(()=>{V8();uJ={zero:48,nine:57,A:65,F:70,a:97,f:102}});function qX($,J){if(V$($)>J)throw new Z7({givenSize:V$($),maxSize:J})}function E6($,J){if(typeof J==="number"&&J>0&&J>V$($)-1)throw new q1({offset:J,position:"start",size:V$($)})}function j6($,J,Q){if(typeof J==="number"&&typeof Q==="number"&&V$($)!==Q-J)throw new q1({offset:Q,position:"end",size:V$($)})}function X7($,J={}){let{dir:Q,size:X=32}=J;if(X===0)return $;let Y=$.replace("0x","");if(Y.length>X*2)throw new W7({size:Math.ceil(Y.length/2),targetSize:X,type:"Hex"});return`0x${Y[Q==="right"?"padEnd":"padStart"](X*2,"0")}`}function I6($,J={}){let{dir:Q="left"}=J,X=$.replace("0x",""),Y=0;for(let Z=0;Z<X.length-1;Z++)if(X[Q==="left"?Z:X.length-Z-1].toString()==="0")Y++;else break;if(X=Q==="left"?X.slice(Y):X.slice(0,X.length-Y),X==="0")return"0x";if(Q==="right"&&X.length%2===1)return`0x${X}0`;return`0x${X}`}var Y7=_(()=>{h$()});function M8($,J,Q){return JSON.stringify($,(X,Y)=>{if(typeof J==="function")return J(X,Y);if(typeof Y==="bigint")return Y.toString()+"#__bigint";return Y},Q)}function TU($){if($ instanceof Uint8Array)return;if(!$)throw new HY($);if(typeof $!=="object")throw new HY($);if(!("BYTES_PER_ELEMENT"in $))throw new HY($);if($.BYTES_PER_ELEMENT!==1||$.constructor.name!=="Uint8Array")throw new HY($)}function _6($){if($ instanceof Uint8Array)return $;if(typeof $==="string")return VX($);return _U($)}function _U($){return $ instanceof Uint8Array?$:new Uint8Array($)}function VX($,J={}){let{size:Q}=J,X=$;if(Q)qX($,Q),X=MJ($,Q);let Y=X.slice(2);if(Y.length%2)Y=`0${Y}`;let Z=Y.length/2,W=new Uint8Array(Z);for(let G=0,K=0;G<Z;G++){let q=eZ(Y.charCodeAt(K++)),V=eZ(Y.charCodeAt(K++));if(q===void 0||V===void 0)throw new h(`Invalid byte sequence ("${Y[K-2]}${Y[K-1]}" in "${Y}").`);W[G]=q<<4|V}return W}function A6($,J={}){let{size:Q}=J,X=IU.encode($);if(typeof Q==="number")return KX(X,Q),AU(X,Q);return X}function AU($,J){return B6($,{dir:"right",size:J})}function P0($){return $.length}function P6($,J,Q,X={}){let{strict:Y}=X;S6($,J);let Z=$.slice(J,Q);if(Y)R6(Z,J,Q);return Z}function x6($,J={}){let{size:Q}=J;if(typeof Q<"u")KX($,Q);let X=B$($,J);return K7(X,J)}function k6($,J={}){let{size:Q}=J,X=$;if(typeof Q<"u")KX(X,Q),X=G7(X);if(X.length>1||X[0]>1)throw new v6(X);return Boolean(X[0])}function VJ($,J={}){let{size:Q}=J;if(typeof Q<"u")KX($,Q);let X=B$($,J);return M1(X,J)}function f6($,J={}){let{size:Q}=J,X=$;if(typeof Q<"u")KX(X,Q),X=PU(X);return jU.decode(X)}function G7($){return $7($,{dir:"left"})}function PU($){return $7($,{dir:"right"})}function y6($){try{return TU($),!0}catch{return!1}}var jU,IU,v6,HY,J7,K1,Q7;var V8=_(()=>{z0();h$();F6();Y7();jU=new TextDecoder,IU=new TextEncoder;v6=class v6 extends h{constructor($){super(`Bytes value \`${$}\` is not a valid boolean.`,{metaMessages:["The bytes array must contain a single byte of either a `0` or `1` value."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesBooleanError"})}};HY=class HY extends h{constructor($){super(`Value \`${typeof $==="object"?M8($):$}\` of type \`${typeof $}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}};J7=class J7 extends h{constructor({givenSize:$,maxSize:J}){super(`Size cannot exceed \`${J}\` bytes. Given size: \`${$}\` bytes.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}};K1=class K1 extends h{constructor({offset:$,position:J,size:Q}){super(`Slice ${J==="start"?"starting":"ending"} at offset \`${$}\` is out-of-bounds (size: \`${Q}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SliceOffsetOutOfBoundsError"})}};Q7=class Q7 extends h{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} size (\`${$}\`) exceeds padding size (\`${J}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}});function fU($,J={}){let{strict:Q=!1}=J;if(!$)throw new q7($);if(typeof $!=="string")throw new q7($);if(Q){if(!/^0x[0-9a-fA-F]*$/.test($))throw new V7($)}if(!$.startsWith("0x"))throw new V7($)}function z$(...$){return`0x${$.reduce((J,Q)=>J+Q.replace("0x",""),"")}`}function MX($){if($ instanceof Uint8Array)return B$($);if(Array.isArray($))return B$(new Uint8Array($));return $}function D1($,J={}){let Q=`0x${Number($)}`;if(typeof J.size==="number")return qX(Q,J.size),pJ(Q,J.size);return Q}function B$($,J={}){let Q="";for(let Y=0;Y<$.length;Y++)Q+=kU[$[Y]];let X=`0x${Q}`;if(typeof J.size==="number")return qX(X,J.size),MJ(X,J.size);return X}function a($,J={}){let{signed:Q,size:X}=J,Y=BigInt($),Z;if(X)if(Q)Z=(1n<<BigInt(X)*8n-1n)-1n;else Z=2n**(BigInt(X)*8n)-1n;else if(typeof $==="number")Z=BigInt(Number.MAX_SAFE_INTEGER);let W=typeof Z==="bigint"&&Q?-Z-1n:0;if(Z&&Y>Z||Y<W){let q=typeof $==="bigint"?"n":"";throw new U1({max:Z?`${Z}${q}`:void 0,min:`${W}${q}`,signed:Q,size:X,value:`${$}${q}`})}let K=`0x${(Q&&Y<0?BigInt.asUintN(X*8,BigInt(Y)):Y).toString(16)}`;if(X)return pJ(K,X);return K}function DX($,J={}){return B$(xU.encode($),J)}function pJ($,J){return X7($,{dir:"left",size:J})}function MJ($,J){return X7($,{dir:"right",size:J})}function M$($,J,Q,X={}){let{strict:Y}=X;E6($,J);let Z=`0x${$.replace("0x","").slice((J??0)*2,(Q??$.length)*2)}`;if(Y)j6(Z,J,Q);return Z}function V$($){return Math.ceil(($.length-2)/2)}function M7($){return I6($,{dir:"left"})}function K7($,J={}){let{signed:Q}=J;if(J.size)qX($,J.size);let X=BigInt($);if(!Q)return X;let Y=($.length-2)/2,Z=(1n<<BigInt(Y)*8n)-1n,W=Z>>1n;if(X<=W)return X;return X-Z-1n}function M1($,J={}){let{signed:Q,size:X}=J;if(!Q&&!X)return Number($);return Number(K7($,J))}function OY($,J={}){let{strict:Q=!1}=J;try{return fU($,{strict:Q}),!0}catch{return!1}}var xU,kU,U1,q7,V7,Z7,q1,W7;var h$=_(()=>{z0();Y7();xU=new TextEncoder,kU=Array.from({length:256},($,J)=>J.toString(16).padStart(2,"0"));U1=class U1 extends h{constructor({max:$,min:J,signed:Q,size:X,value:Y}){super(`Number \`${Y}\` is not in safe${X?` ${X*8}-bit`:""}${Q?" signed":" unsigned"} integer range ${$?`(\`${J}\` to \`${$}\`)`:`(above \`${J}\`)`}`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}};q7=class q7 extends h{constructor($){super(`Value \`${typeof $==="object"?M8($):$}\` of type \`${typeof $}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}};V7=class V7 extends h{constructor($){super(`Value \`${$}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}};Z7=class Z7 extends h{constructor({givenSize:$,maxSize:J}){super(`Size cannot exceed \`${J}\` bytes. Given size: \`${$}\` bytes.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}};q1=class q1 extends h{constructor({offset:$,position:J,size:Q}){super(`Slice ${J==="start"?"starting":"ending"} at offset \`${$}\` is out-of-bounds (size: \`${Q}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}};W7=class W7 extends h{constructor({size:$,targetSize:J,type:Q}){super(`${Q.charAt(0).toUpperCase()}${Q.slice(1).toLowerCase()} size (\`${$}\`) exceeds padding size (\`${J}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}});function b6($){return{address:$.address,amount:a($.amount),index:a($.index),validatorIndex:a($.validatorIndex)}}var h6=_(()=>{h$()});function N1($){return{...typeof $.baseFeePerGas==="bigint"&&{baseFeePerGas:a($.baseFeePerGas)},...typeof $.blobBaseFee==="bigint"&&{blobBaseFee:a($.blobBaseFee)},...typeof $.feeRecipient==="string"&&{feeRecipient:$.feeRecipient},...typeof $.gasLimit==="bigint"&&{gasLimit:a($.gasLimit)},...typeof $.number==="bigint"&&{number:a($.number)},...typeof $.prevRandao==="bigint"&&{prevRandao:a($.prevRandao)},...typeof $.time==="bigint"&&{time:a($.time)},...$.withdrawals&&{withdrawals:$.withdrawals.map(b6)}}}var D7=_(()=>{h$();h6()});var d6="0x82ad56cb";var w1="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",m6="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",u6="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",UX="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033";function t8($){let{abi:J,args:Q,bytecode:X}=$;if(!Q||Q.length===0)return X;let Y=J.find((W)=>("type"in W)&&W.type==="constructor");if(!Y)throw new a5({docsPath:U7});if(!("inputs"in Y))throw new x9({docsPath:U7});if(!Y.inputs||Y.inputs.length===0)throw new x9({docsPath:U7});let Z=G$(Y.inputs,Q);return R$([X,Z])}var U7="/docs/contract/encodeDeployData";var z1=_(()=>{S$();GJ()});var DJ,u0,LY,CY,SY,RY,BY,FY,EY,jY,lJ,p0;var cJ=_(()=>{bQ();l();DJ=class DJ extends R{constructor({cause:$,message:J}={}){let Q=J?.replace("execution reverted: ","")?.replace("execution reverted","");super(`Execution reverted ${Q?`with reason: ${Q}`:"for an unknown reason"}.`,{cause:$,name:"ExecutionRevertedError"})}};Object.defineProperty(DJ,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(DJ,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});u0=class u0 extends R{constructor({cause:$,maxFeePerGas:J}={}){super(`The fee cap (\`maxFeePerGas\`${J?` = ${f$(J)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:$,name:"FeeCapTooHighError"})}};Object.defineProperty(u0,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});LY=class LY extends R{constructor({cause:$,maxFeePerGas:J}={}){super(`The fee cap (\`maxFeePerGas\`${J?` = ${f$(J)}`:""} gwei) cannot be lower than the block base fee.`,{cause:$,name:"FeeCapTooLowError"})}};Object.defineProperty(LY,"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/});CY=class CY extends R{constructor({cause:$,nonce:J}={}){super(`Nonce provided for the transaction ${J?`(${J}) `:""}is higher than the next one expected.`,{cause:$,name:"NonceTooHighError"})}};Object.defineProperty(CY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});SY=class SY extends R{constructor({cause:$,nonce:J}={}){super([`Nonce provided for the transaction ${J?`(${J}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
62
+ `),{cause:$,name:"NonceTooLowError"})}};Object.defineProperty(SY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});RY=class RY extends R{constructor({cause:$,nonce:J}={}){super(`Nonce provided for the transaction ${J?`(${J}) `:""}exceeds the maximum allowed nonce.`,{cause:$,name:"NonceMaxValueError"})}};Object.defineProperty(RY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});BY=class BY extends R{constructor({cause:$}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
63
+ `),{cause:$,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(BY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});FY=class FY extends R{constructor({cause:$,gas:J}={}){super(`The amount of gas ${J?`(${J}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:$,name:"IntrinsicGasTooHighError"})}};Object.defineProperty(FY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});EY=class EY extends R{constructor({cause:$,gas:J}={}){super(`The amount of gas ${J?`(${J}) `:""}provided for the transaction is too low.`,{cause:$,name:"IntrinsicGasTooLowError"})}};Object.defineProperty(EY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});jY=class jY extends R{constructor({cause:$}){super("The transaction type is not supported for this chain.",{cause:$,name:"TransactionTypeNotSupportedError"})}};Object.defineProperty(jY,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});lJ=class lJ extends R{constructor({cause:$,maxPriorityFeePerGas:J,maxFeePerGas:Q}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${J?` = ${f$(J)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${Q?` = ${f$(Q)} gwei`:""}).`].join(`
64
+ `),{cause:$,name:"TipAboveFeeCapError"})}};Object.defineProperty(lJ,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});p0=class p0 extends R{constructor({cause:$}){super(`An error occurred while executing: ${$?.shortMessage}`,{cause:$,name:"UnknownNodeError"})}}});function D8($,J){let Q=($.details||"").toLowerCase(),X=$ instanceof R?$.walk((Y)=>Y?.code===DJ.code):$;if(X instanceof R)return new DJ({cause:$,message:X.details});if(DJ.nodeMessage.test(Q))return new DJ({cause:$,message:$.details});if(u0.nodeMessage.test(Q))return new u0({cause:$,maxFeePerGas:J?.maxFeePerGas});if(LY.nodeMessage.test(Q))return new LY({cause:$,maxFeePerGas:J?.maxFeePerGas});if(CY.nodeMessage.test(Q))return new CY({cause:$,nonce:J?.nonce});if(SY.nodeMessage.test(Q))return new SY({cause:$,nonce:J?.nonce});if(RY.nodeMessage.test(Q))return new RY({cause:$,nonce:J?.nonce});if(BY.nodeMessage.test(Q))return new BY({cause:$});if(FY.nodeMessage.test(Q))return new FY({cause:$,gas:J?.gas});if(EY.nodeMessage.test(Q))return new EY({cause:$,gas:J?.gas});if(jY.nodeMessage.test(Q))return new jY({cause:$});if(lJ.nodeMessage.test(Q))return new lJ({cause:$,maxFeePerGas:J?.maxFeePerGas,maxPriorityFeePerGas:J?.maxPriorityFeePerGas});return new p0({cause:$})}var IY=_(()=>{l();cJ()});function H1($,{docsPath:J,...Q}){let X=(()=>{let Y=D8($,Q);if(Y instanceof p0)return $;return Y})();return new MY(X,{docsPath:J,...Q})}var N7=_(()=>{Y8();cJ();IY()});function x0($,{format:J}){if(!J)return{};let Q={};function X(Z){let W=Object.keys(Z);for(let G of W){if(G in $)Q[G]=$[G];if(Z[G]&&typeof Z[G]==="object"&&!Array.isArray(Z[G]))X(Z[G])}}let Y=J($||{});return X(Y),Q}function NX($,J){return({exclude:Q,format:X})=>{return{exclude:Q,format:(Y,Z)=>{let W=J(Y,Z);if(Q)for(let G of Q)delete W[G];return{...W,...X(Y,Z)}},type:$}}}function o$($,J){let Q={};if(typeof $.authorizationList<"u")Q.authorizationList=bU($.authorizationList);if(typeof $.accessList<"u")Q.accessList=$.accessList;if(typeof $.blobVersionedHashes<"u")Q.blobVersionedHashes=$.blobVersionedHashes;if(typeof $.blobs<"u")if(typeof $.blobs[0]!=="string")Q.blobs=$.blobs.map((X)=>i(X));else Q.blobs=$.blobs;if(typeof $.data<"u")Q.data=$.data;if($.account)Q.from=$.account.address;if(typeof $.from<"u")Q.from=$.from;if(typeof $.gas<"u")Q.gas=E($.gas);if(typeof $.gasPrice<"u")Q.gasPrice=E($.gasPrice);if(typeof $.maxFeePerBlobGas<"u")Q.maxFeePerBlobGas=E($.maxFeePerBlobGas);if(typeof $.maxFeePerGas<"u")Q.maxFeePerGas=E($.maxFeePerGas);if(typeof $.maxPriorityFeePerGas<"u")Q.maxPriorityFeePerGas=E($.maxPriorityFeePerGas);if(typeof $.nonce<"u")Q.nonce=E($.nonce);if(typeof $.to<"u")Q.to=$.to;if(typeof $.type<"u")Q.type=vU[$.type];if(typeof $.value<"u")Q.value=E($.value);return Q}function bU($){return $.map((J)=>({address:J.address,r:J.r?E(BigInt(J.r)):J.r,s:J.s?E(BigInt(J.s)):J.s,chainId:E(J.chainId),nonce:E(J.nonce),...typeof J.yParity<"u"?{yParity:E(J.yParity)}:{},...typeof J.v<"u"&&typeof J.yParity>"u"?{v:E(J.v)}:{}}))}var vU;var nJ=_(()=>{m();vU={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"}});function wX(){let $=()=>{return},J=()=>{return};return{promise:new Promise((X,Y)=>{$=X,J=Y}),resolve:$,reject:J}}function O1({fn:$,id:J,shouldSplitBatch:Q,wait:X=0,sort:Y}){let Z=async()=>{let V=K();W();let M=V.map(({args:D})=>D);if(M.length===0)return;$(M).then((D)=>{if(Y&&Array.isArray(D))D.sort(Y);for(let U=0;U<V.length;U++){let{resolve:z}=V[U];z?.([D[U],D])}}).catch((D)=>{for(let U=0;U<V.length;U++){let{reject:z}=V[U];z?.(D)}})},W=()=>w7.delete(J),G=()=>K().map(({args:V})=>V),K=()=>w7.get(J)||[],q=(V)=>w7.set(J,[...K(),V]);return{flush:W,async schedule(V){let{promise:M,resolve:D,reject:U}=wX();if(Q?.([...G(),V]))Z();if(K().length>0)return q({args:V,resolve:D,reject:U}),M;return q({args:V,resolve:D,reject:U}),setTimeout(Z,X),M}}}var w7;var z7=_(()=>{w7=new Map});function p6($){if(!$||$.length===0)return;return $.reduce((J,{slot:Q,value:X})=>{if(Q.length!==66)throw new b9({size:Q.length,targetSize:66,type:"hex"});if(X.length!==66)throw new b9({size:X.length,targetSize:66,type:"hex"});return J[Q]=X,J},{})}function hU($){let{balance:J,nonce:Q,state:X,stateDiff:Y,code:Z}=$,W={};if(Z!==void 0)W.code=Z;if(J!==void 0)W.balance=E(J);if(Q!==void 0)W.nonce=E(Q);if(X!==void 0)W.state=p6(X);if(Y!==void 0){if(W.state)throw new xZ;W.stateDiff=p6(Y)}return W}function zX($){if(!$)return;let J={};for(let{address:Q,...X}of $){if(!s(Q,{strict:!1}))throw new Y$({address:Q});if(J[Q])throw new PZ({address:Q});J[Q]=hU(X)}return J}var L1=_(()=>{I0();h9();kZ();V0();m()});var gU,dU,mU,uU,pU,lU,cU,nU,oU,iU,sU,rU,tU,aU,eU,$N,JN,QN,XN,YN,ZN,WN,GN,KN,qN,VN,MN,DN,UN,NN,wN,zN,HN,ON,LN,CN,SN,RN,BN,FN,EN,jN,IN,TN,_N,AN,PN,xN,kN,fN,yN,vN,bN,hN,gN,dN,mN,uN,pN,lN,cN,nN,oN,iN,sN,rN,tN,aN,eN,$3,J3,Q3,X3,Y3,Z3,W3,G3,K3,q3,V3,M3,D3,U3,N3,w3,z3,H3,O3,L3,C3,S3,R3,B3,F3,E3,oJ;var C1=_(()=>{gU=2n**(8n-1n)-1n,dU=2n**(16n-1n)-1n,mU=2n**(24n-1n)-1n,uU=2n**(32n-1n)-1n,pU=2n**(40n-1n)-1n,lU=2n**(48n-1n)-1n,cU=2n**(56n-1n)-1n,nU=2n**(64n-1n)-1n,oU=2n**(72n-1n)-1n,iU=2n**(80n-1n)-1n,sU=2n**(88n-1n)-1n,rU=2n**(96n-1n)-1n,tU=2n**(104n-1n)-1n,aU=2n**(112n-1n)-1n,eU=2n**(120n-1n)-1n,$N=2n**(128n-1n)-1n,JN=2n**(136n-1n)-1n,QN=2n**(144n-1n)-1n,XN=2n**(152n-1n)-1n,YN=2n**(160n-1n)-1n,ZN=2n**(168n-1n)-1n,WN=2n**(176n-1n)-1n,GN=2n**(184n-1n)-1n,KN=2n**(192n-1n)-1n,qN=2n**(200n-1n)-1n,VN=2n**(208n-1n)-1n,MN=2n**(216n-1n)-1n,DN=2n**(224n-1n)-1n,UN=2n**(232n-1n)-1n,NN=2n**(240n-1n)-1n,wN=2n**(248n-1n)-1n,zN=2n**(256n-1n)-1n,HN=-(2n**(8n-1n)),ON=-(2n**(16n-1n)),LN=-(2n**(24n-1n)),CN=-(2n**(32n-1n)),SN=-(2n**(40n-1n)),RN=-(2n**(48n-1n)),BN=-(2n**(56n-1n)),FN=-(2n**(64n-1n)),EN=-(2n**(72n-1n)),jN=-(2n**(80n-1n)),IN=-(2n**(88n-1n)),TN=-(2n**(96n-1n)),_N=-(2n**(104n-1n)),AN=-(2n**(112n-1n)),PN=-(2n**(120n-1n)),xN=-(2n**(128n-1n)),kN=-(2n**(136n-1n)),fN=-(2n**(144n-1n)),yN=-(2n**(152n-1n)),vN=-(2n**(160n-1n)),bN=-(2n**(168n-1n)),hN=-(2n**(176n-1n)),gN=-(2n**(184n-1n)),dN=-(2n**(192n-1n)),mN=-(2n**(200n-1n)),uN=-(2n**(208n-1n)),pN=-(2n**(216n-1n)),lN=-(2n**(224n-1n)),cN=-(2n**(232n-1n)),nN=-(2n**(240n-1n)),oN=-(2n**(248n-1n)),iN=-(2n**(256n-1n)),sN=2n**8n-1n,rN=2n**16n-1n,tN=2n**24n-1n,aN=2n**32n-1n,eN=2n**40n-1n,$3=2n**48n-1n,J3=2n**56n-1n,Q3=2n**64n-1n,X3=2n**72n-1n,Y3=2n**80n-1n,Z3=2n**88n-1n,W3=2n**96n-1n,G3=2n**104n-1n,K3=2n**112n-1n,q3=2n**120n-1n,V3=2n**128n-1n,M3=2n**136n-1n,D3=2n**144n-1n,U3=2n**152n-1n,N3=2n**160n-1n,w3=2n**168n-1n,z3=2n**176n-1n,H3=2n**184n-1n,O3=2n**192n-1n,L3=2n**200n-1n,C3=2n**208n-1n,S3=2n**216n-1n,R3=2n**224n-1n,B3=2n**232n-1n,F3=2n**240n-1n,E3=2n**248n-1n,oJ=2n**256n-1n});function g$($){let{account:J,maxFeePerGas:Q,maxPriorityFeePerGas:X,to:Y}=$,Z=J?p(J):void 0;if(Z&&!s(Z.address))throw new Y$({address:Z.address});if(Y&&!s(Y))throw new Y$({address:Y});if(Q&&Q>oJ)throw new u0({maxFeePerGas:Q});if(X&&Q&&X>Q)throw new lJ({maxFeePerGas:Q,maxPriorityFeePerGas:X})}var UJ=_(()=>{C1();I0();cJ();V0()});var H7,O7,L7;var l6=_(()=>{l();H7=class H7 extends R{constructor({callbackSelector:$,cause:J,data:Q,extraData:X,sender:Y,urls:Z}){super(J.shortMessage||"An error occurred while fetching for an offchain result.",{cause:J,metaMessages:[...J.metaMessages||[],J.metaMessages?.length?"":[],"Offchain Gateway Call:",Z&&[" Gateway URL(s):",...Z.map((W)=>` ${p8(W)}`)],` Sender: ${Y}`,` Data: ${Q}`,` Callback selector: ${$}`,` Extra data: ${X}`].flat(),name:"OffchainLookupError"})}};O7=class O7 extends R{constructor({result:$,url:J}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${p8(J)}`,`Response: ${o($)}`],name:"OffchainLookupResponseMalformedError"})}};L7=class L7 extends R{constructor({sender:$,to:J}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${J}`,`OffchainLookup sender address: ${$}`],name:"OffchainLookupSenderMismatchError"})}}});function k0($,J){if(!s($,{strict:!1}))throw new Y$({address:$});if(!s(J,{strict:!1}))throw new Y$({address:J});return $.toLowerCase()===J.toLowerCase()}var a8=_(()=>{I0();V0()});var o6={};Y9(o6,{offchainLookupSignature:()=>j3,offchainLookupAbiItem:()=>c6,offchainLookup:()=>I3,ccipRequest:()=>n6});async function I3($,{blockNumber:J,blockTag:Q,data:X,to:Y}){let{args:Z}=J1({data:X,abi:[c6]}),[W,G,K,q,V]=Z,{ccipRead:M}=$,D=M&&typeof M?.request==="function"?M.request:n6;try{if(!k0(Y,W))throw new L7({sender:W,to:Y});let U=G.includes(yJ)?await lZ({data:K,ccipRequest:D}):await D({data:K,sender:W,urls:G}),{data:z}=await f0($,{blockNumber:J,blockTag:Q,data:Q$([q,G$([{type:"bytes"},{type:"bytes"}],[U,V])]),to:Y});return z}catch(U){throw new H7({callbackSelector:q,cause:U,data:X,extraData:V,sender:W,urls:G})}}async function n6({data:$,sender:J,urls:Q}){let X=Error("An unknown error occurred.");for(let Y=0;Y<Q.length;Y++){let Z=Q[Y],W=Z.includes("{data}")?"GET":"POST",G=W==="POST"?{data:$,sender:J}:void 0,K=W==="POST"?{"Content-Type":"application/json"}:{};try{let q=await fetch(Z.replace("{sender}",J.toLowerCase()).replace("{data}",$),{body:JSON.stringify(G),headers:K,method:W}),V;if(q.headers.get("Content-Type")?.startsWith("application/json"))V=(await q.json()).data;else V=await q.text();if(!q.ok){X=new m0({body:G,details:V?.error?o(V.error):q.statusText,headers:q.headers,status:q.status,url:Z});continue}if(!U$(V)){X=new O7({result:V,url:Z});continue}return V}catch(q){X=new m0({body:G,details:q.message,url:Z})}}throw X}var j3="0x556f1830",c6;var i6=_(()=>{e8();l6();c8();_Z();GJ();a8();UY();c6={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]}});async function f0($,J){let{account:Q=$.account,authorizationList:X,batch:Y=Boolean($.batch?.multicall),blockNumber:Z,blockTag:W=$.experimental_blockTag??"latest",accessList:G,blobs:K,blockOverrides:q,code:V,data:M,factory:D,factoryData:U,gas:z,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,to:H,value:S,stateOverride:B,...F}=J,I=Q?p(Q):void 0;if(V&&(D||U))throw new R("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(V&&H)throw new R("Cannot provide both `code` & `to` as parameters.");let P=V&&M,j=D&&U&&H&&M,y=P||j,x=(()=>{if(P)return s6({code:V,data:M});if(j)return A3({data:M,factory:D,factoryData:U,to:H});return M})();try{g$(J);let g=(typeof Z==="bigint"?E(Z):void 0)||W,T=q?N1(q):void 0,f=zX(B),d=$.chain?.formatters?.transactionRequest?.format,v=(d||o$)({...x0(F,{format:d}),accessList:G,account:I,authorizationList:X,blobs:K,data:x,gas:z,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,to:y?void 0:H,value:S},"call");if(Y&&T3({request:v})&&!f&&!T)try{return await _3($,{...v,blockNumber:Z,blockTag:W})}catch(c){if(!(c instanceof a9)&&!(c instanceof fQ))throw c}let u=(()=>{let c=[v,g];if(f&&T)return[...c,f,T];if(f)return[...c,f];if(T)return[...c,{},T];return c})(),X$=await $.request({method:"eth_call",params:u});if(X$==="0x")return{data:void 0};return{data:X$}}catch(b){let g=P3(b),{offchainLookup:T,offchainLookupSignature:f}=await Promise.resolve().then(() => (i6(),o6));if($.ccipRead!==!1&&g?.slice(0,10)===f&&H)return{data:await T($,{data:g,to:H})};if(y&&g?.slice(0,10)==="0x101bb98d")throw new dZ({factory:D});throw H1(b,{...J,account:I,chain:$.chain})}}function T3({request:$}){let{data:J,to:Q,...X}=$;if(!J)return!1;if(J.startsWith(d6))return!1;if(!Q)return!1;if(Object.values(X).filter((Y)=>typeof Y<"u").length>0)return!1;return!0}async function _3($,J){let{batchSize:Q=1024,deployless:X=!1,wait:Y=0}=typeof $.batch?.multicall==="object"?$.batch.multicall:{},{blockNumber:Z,blockTag:W=$.experimental_blockTag??"latest",data:G,to:K}=J,q=(()=>{if(X)return null;if(J.multicallAddress)return J.multicallAddress;if($.chain)return T0({blockNumber:Z,chain:$.chain,contract:"multicall3"});throw new a9})(),M=(typeof Z==="bigint"?E(Z):void 0)||W,{schedule:D}=O1({id:`${$.uid}.${M}`,wait:Y,shouldSplitBatch(w){return w.reduce((O,{data:C})=>O+(C.length-2),0)>Q*2},fn:async(w)=>{let L=w.map((N)=>({allowFailure:!0,callData:N.data,target:N.to})),O=K$({abi:$J,args:[L],functionName:"aggregate3"}),C=await $.request({method:"eth_call",params:[{...q===null?{data:s6({code:UX,data:O})}:{to:q,data:O}},M]});return n$({abi:$J,args:[L],functionName:"aggregate3",data:C||"0x"})}}),[{returnData:U,success:z}]=await D({data:G,to:K});if(!z)throw new fJ({data:U});if(U==="0x")return{data:void 0};return{data:U}}function s6($){let{code:J,data:Q}=$;return t8({abi:nX(["constructor(bytes, bytes)"]),bytecode:w1,args:[J,Q]})}function A3($){let{data:J,factory:Q,factoryData:X,to:Y}=$;return t8({abi:nX(["constructor(address, bytes, address, bytes)"]),bytecode:m6,args:[Y,J,Q,X]})}function P3($){if(!($ instanceof R))return;let J=$.walk();return typeof J?.data==="object"?J.data?.data:J.data}var e8=_(()=>{TQ();D7();EJ();l();GY();Y8();kJ();z1();N0();m8();m();N7();nJ();z7();L1();UJ()});function h3($,J,Q,X){if(typeof $.setBigUint64==="function")return $.setBigUint64(J,Q,X);let Y=BigInt(32),Z=BigInt(4294967295),W=Number(Q>>Y&Z),G=Number(Q&Z),K=X?4:0,q=X?0:4;$.setUint32(J+K,W,X),$.setUint32(J+q,G,X)}function KK($,J,Q){return $&J^~$&Q}function qK($,J,Q){return $&J^$&Q^J&Q}var E7,iJ;var VK=_(()=>{J8();E7=class E7 extends g8{constructor($,J,Q,X){super();this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=$,this.outputLen=J,this.padOffset=Q,this.isLE=X,this.buffer=new Uint8Array($),this.view=m9(this.buffer)}update($){AJ(this),$=h8($),QJ($);let{view:J,buffer:Q,blockLen:X}=this,Y=$.length;for(let Z=0;Z<Y;){let W=Math.min(X-this.pos,Y-Z);if(W===X){let G=m9($);for(;X<=Y-Z;Z+=X)this.process(G,Z);continue}if(Q.set($.subarray(Z,Z+W),this.pos),this.pos+=W,Z+=W,this.pos===X)this.process(J,0),this.pos=0}return this.length+=$.length,this.roundClean(),this}digestInto($){AJ(this),d9($,this),this.finished=!0;let{buffer:J,view:Q,blockLen:X,isLE:Y}=this,{pos:Z}=this;if(J[Z++]=128,XJ(this.buffer.subarray(Z)),this.padOffset>X-Z)this.process(Q,0),Z=0;for(let V=Z;V<X;V++)J[V]=0;h3(Q,X-8,BigInt(this.length*8),Y),this.process(Q,0);let W=m9($),G=this.outputLen;if(G%4)throw Error("_sha2: outputLen should be aligned to 32bit");let K=G/4,q=this.get();if(K>q.length)throw Error("_sha2: outputLen bigger than state");for(let V=0;V<K;V++)W.setUint32(4*V,q[V],Y)}digest(){let{buffer:$,outputLen:J}=this;this.digestInto($);let Q=$.slice(0,J);return this.destroy(),Q}_cloneInto($){$||($=new this.constructor),$.set(...this.get());let{blockLen:J,buffer:Q,length:X,finished:Y,destroyed:Z,pos:W}=this;if($.destroyed=Z,$.finished=Y,$.length=X,$.pos=W,X%J)$.buffer.set(Q);return $}clone(){return this._cloneInto()}};iJ=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225])});var g3,N8,j7,JQ;var I7=_(()=>{VK();J8();g3=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),N8=new Uint32Array(64);j7=class j7 extends E7{constructor($=32){super(64,$,8,!1);this.A=iJ[0]|0,this.B=iJ[1]|0,this.C=iJ[2]|0,this.D=iJ[3]|0,this.E=iJ[4]|0,this.F=iJ[5]|0,this.G=iJ[6]|0,this.H=iJ[7]|0}get(){let{A:$,B:J,C:Q,D:X,E:Y,F:Z,G:W,H:G}=this;return[$,J,Q,X,Y,Z,W,G]}set($,J,Q,X,Y,Z,W,G){this.A=$|0,this.B=J|0,this.C=Q|0,this.D=X|0,this.E=Y|0,this.F=Z|0,this.G=W|0,this.H=G|0}process($,J){for(let V=0;V<16;V++,J+=4)N8[V]=$.getUint32(J,!1);for(let V=16;V<64;V++){let M=N8[V-15],D=N8[V-2],U=d0(M,7)^d0(M,18)^M>>>3,z=d0(D,17)^d0(D,19)^D>>>10;N8[V]=z+N8[V-7]+U+N8[V-16]|0}let{A:Q,B:X,C:Y,D:Z,E:W,F:G,G:K,H:q}=this;for(let V=0;V<64;V++){let M=d0(W,6)^d0(W,11)^d0(W,25),D=q+M+KK(W,G,K)+g3[V]+N8[V]|0,z=(d0(Q,2)^d0(Q,13)^d0(Q,22))+qK(Q,X,Y)|0;q=K,K=G,G=W,W=Z+D|0,Z=Y,Y=X,X=Q,Q=D+z|0}Q=Q+this.A|0,X=X+this.B|0,Y=Y+this.C|0,Z=Z+this.D|0,W=W+this.E|0,G=G+this.F|0,K=K+this.G|0,q=q+this.H|0,this.set(Q,X,Y,Z,W,G,K,q)}roundClean(){XJ(N8)}destroy(){this.set(0,0,0,0,0,0,0,0),XJ(this.buffer)}};JQ=u9(()=>new j7)});var T7,_7=($,J,Q)=>new T7($,J).update(Q).digest();var MK=_(()=>{J8();T7=class T7 extends g8{constructor($,J){super();this.finished=!1,this.destroyed=!1,B4($);let Q=h8(J);if(this.iHash=$.create(),typeof this.iHash.update!=="function")throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let X=this.blockLen,Y=new Uint8Array(X);Y.set(Q.length>X?$.create().update(Q).digest():Q);for(let Z=0;Z<Y.length;Z++)Y[Z]^=54;this.iHash.update(Y),this.oHash=$.create();for(let Z=0;Z<Y.length;Z++)Y[Z]^=106;this.oHash.update(Y),XJ(Y)}update($){return AJ(this),this.iHash.update($),this}digestInto($){AJ(this),QJ($,this.outputLen),this.finished=!0,this.iHash.digestInto($),this.oHash.update($),this.oHash.digestInto($),this.destroy()}digest(){let $=new Uint8Array(this.oHash.outputLen);return this.digestInto($),$}_cloneInto($){$||($=Object.create(Object.getPrototypeOf(this),{}));let{oHash:J,iHash:Q,finished:X,destroyed:Y,blockLen:Z,outputLen:W}=this;return $=$,$.finished=X,$.destroyed=Y,$.blockLen=Z,$.outputLen=W,$.oHash=J._cloneInto($.oHash),$.iHash=Q._cloneInto($.iHash),$}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};_7.create=($,J)=>new T7($,J)});function F$($,J){let Q=$%J;return Q>=Q0?Q:J+Q}function F0($,J,Q){let X=$;while(J-- >Q0)X*=X,X%=Q;return X}function T1($,J){if($===Q0)throw Error("invert: expected non-zero number");if(J<=Q0)throw Error("invert: expected positive modulus, got "+J);let Q=F$($,J),X=J,Y=Q0,Z=i$,W=i$,G=Q0;while(Q!==Q0){let q=X/Q,V=X%Q,M=Y-W*q,D=Z-G*q;X=Q,Q=V,Y=W,Z=G,W=M,G=D}if(X!==i$)throw Error("invert: does not exist");return F$(Y,J)}function zK($,J){let Q=($.ORDER+i$)/UK,X=$.pow(J,Q);if(!$.eql($.sqr(X),J))throw Error("Cannot find square root");return X}function m3($,J){let Q=($.ORDER-NK)/wK,X=$.mul(J,QQ),Y=$.pow(X,Q),Z=$.mul(J,Y),W=$.mul($.mul(Z,QQ),Y),G=$.mul(Z,$.sub(W,$.ONE));if(!$.eql($.sqr(G),J))throw Error("Cannot find square root");return G}function u3($){if($<BigInt(3))throw Error("sqrt is not defined for small field");let J=$-i$,Q=0;while(J%QQ===Q0)J/=QQ,Q++;let X=QQ,Y=_Y($);while(DK(Y,X)===1)if(X++>1000)throw Error("Cannot find square root: probably non-prime P");if(Q===1)return zK;let Z=Y.pow(X,J),W=(J+i$)/QQ;return function(K,q){if(K.is0(q))return q;if(DK(K,q)!==1)throw Error("Cannot find square root");let V=Q,M=K.mul(K.ONE,Z),D=K.pow(q,J),U=K.pow(q,W);while(!K.eql(D,K.ONE)){if(K.is0(D))return K.ZERO;let z=1,w=K.sqr(D);while(!K.eql(w,K.ONE))if(z++,w=K.sqr(w),z===V)throw Error("Cannot find square root");let L=i$<<BigInt(V-z-1),O=K.pow(M,L);V=z,M=K.sqr(O),D=K.mul(D,M),U=K.mul(U,O)}return U}}function p3($){if($%UK===d3)return zK;if($%wK===NK)return m3;return u3($)}function _1($){let J={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},Q=l3.reduce((X,Y)=>{return X[Y]="function",X},J);return mJ($,Q)}function c3($,J,Q){if(Q<Q0)throw Error("invalid exponent, negatives unsupported");if(Q===Q0)return $.ONE;if(Q===i$)return J;let X=$.ONE,Y=J;while(Q>Q0){if(Q&i$)X=$.mul(X,Y);Y=$.sqr(Y),Q>>=i$}return X}function HX($,J,Q=!1){let X=Array(J.length).fill(Q?$.ZERO:void 0),Y=J.reduce((W,G,K)=>{if($.is0(G))return W;return X[K]=W,$.mul(W,G)},$.ONE),Z=$.inv(Y);return J.reduceRight((W,G,K)=>{if($.is0(G))return W;return X[K]=$.mul(W,X[K]),$.mul(W,G)},Z),X}function DK($,J){let Q=($.ORDER-i$)/QQ,X=$.pow(J,Q),Y=$.eql(X,$.ONE),Z=$.eql(X,$.ZERO),W=$.eql(X,$.neg($.ONE));if(!Y&&!Z&&!W)throw Error("invalid Legendre symbol result");return Y?1:Z?0:-1}function A7($,J){if(J!==void 0)b8(J);let Q=J!==void 0?J:$.toString(2).length,X=Math.ceil(Q/8);return{nBitLength:Q,nByteLength:X}}function _Y($,J,Q=!1,X={}){if($<=Q0)throw Error("invalid field: expected ORDER > 0, got "+$);let{nBitLength:Y,nByteLength:Z}=A7($,J);if(Z>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");let W,G=Object.freeze({ORDER:$,isLE:Q,BITS:Y,BYTES:Z,MASK:s8(Y),ZERO:Q0,ONE:i$,create:(K)=>F$(K,$),isValid:(K)=>{if(typeof K!=="bigint")throw Error("invalid field element: expected bigint, got "+typeof K);return Q0<=K&&K<$},is0:(K)=>K===Q0,isOdd:(K)=>(K&i$)===i$,neg:(K)=>F$(-K,$),eql:(K,q)=>K===q,sqr:(K)=>F$(K*K,$),add:(K,q)=>F$(K+q,$),sub:(K,q)=>F$(K-q,$),mul:(K,q)=>F$(K*q,$),pow:(K,q)=>c3(G,K,q),div:(K,q)=>F$(K*T1(q,$),$),sqrN:(K)=>K*K,addN:(K,q)=>K+q,subN:(K,q)=>K-q,mulN:(K,q)=>K*q,inv:(K)=>T1(K,$),sqrt:X.sqrt||((K)=>{if(!W)W=p3($);return W(G,K)}),toBytes:(K)=>Q?tZ(K,Z):qJ(K,Z),fromBytes:(K)=>{if(K.length!==Z)throw Error("Field.fromBytes: expected "+Z+" bytes, got "+K.length);return Q?rZ(K):w0(K)},invertBatch:(K)=>HX(G,K),cmov:(K,q,V)=>V?q:K});return Object.freeze(G)}function HK($){if(typeof $!=="bigint")throw Error("field order must be bigint");let J=$.toString(2).length;return Math.ceil(J/8)}function P7($){let J=HK($);return J+Math.ceil(J/2)}function OK($,J,Q=!1){let X=$.length,Y=HK(J),Z=P7(J);if(X<16||X<Z||X>1024)throw Error("expected "+Z+"-1024 bytes of input, got "+X);let W=Q?rZ($):w0($),G=F$(W,J-i$)+i$;return Q?tZ(G,Y):qJ(G,Y)}var Q0,i$,QQ,d3,UK,NK,wK,l3;var AY=_(()=>{J8();GX();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */Q0=BigInt(0),i$=BigInt(1),QQ=BigInt(2),d3=BigInt(3),UK=BigInt(4),NK=BigInt(5),wK=BigInt(8);l3=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"]});function x7($,J){let Q=J.negate();return $?Q:J}function SK($,J){if(!Number.isSafeInteger($)||$<=0||$>J)throw Error("invalid window size, expected [1.."+J+"], got W="+$)}function k7($,J){SK($,J);let Q=Math.ceil(J/$)+1,X=2**($-1),Y=2**$,Z=s8($),W=BigInt($);return{windows:Q,windowSize:X,mask:Z,maxNumber:Y,shiftBy:W}}function CK($,J,Q){let{windowSize:X,mask:Y,maxNumber:Z,shiftBy:W}=Q,G=Number($&Y),K=$>>W;if(G>X)G-=Z,K+=v7;let q=J*X,V=q+Math.abs(G)-1,M=G===0,D=G<0,U=J%2!==0;return{nextN:K,offset:V,isZero:M,isNeg:D,isNegF:U,offsetF:q}}function n3($,J){if(!Array.isArray($))throw Error("array expected");$.forEach((Q,X)=>{if(!(Q instanceof J))throw Error("invalid point at index "+X)})}function o3($,J){if(!Array.isArray($))throw Error("array of scalars expected");$.forEach((Q,X)=>{if(!J.isValid(Q))throw Error("invalid scalar at index "+X)})}function y7($){return RK.get($)||1}function BK($,J){return{constTimeNegate:x7,hasPrecomputes(Q){return y7(Q)!==1},unsafeLadder(Q,X,Y=$.ZERO){let Z=Q;while(X>LK){if(X&v7)Y=Y.add(Z);Z=Z.double(),X>>=v7}return Y},precomputeWindow(Q,X){let{windows:Y,windowSize:Z}=k7(X,J),W=[],G=Q,K=G;for(let q=0;q<Y;q++){K=G,W.push(K);for(let V=1;V<Z;V++)K=K.add(G),W.push(K);G=K.double()}return W},wNAF(Q,X,Y){let{ZERO:Z,BASE:W}=$,G=k7(Q,J);for(let K=0;K<G.windows;K++){let{nextN:q,offset:V,isZero:M,isNeg:D,isNegF:U,offsetF:z}=CK(Y,K,G);if(Y=q,M)W=W.add(x7(U,X[z]));else Z=Z.add(x7(D,X[V]))}return{p:Z,f:W}},wNAFUnsafe(Q,X,Y,Z=$.ZERO){let W=k7(Q,J);for(let G=0;G<W.windows;G++){if(Y===LK)break;let{nextN:K,offset:q,isZero:V,isNeg:M}=CK(Y,G,W);if(Y=K,V)continue;else{let D=X[q];Z=Z.add(M?D.negate():D)}}return Z},getPrecomputes(Q,X,Y){let Z=f7.get(X);if(!Z){if(Z=this.precomputeWindow(X,Q),Q!==1)f7.set(X,Y(Z))}return Z},wNAFCached(Q,X,Y){let Z=y7(Q);return this.wNAF(Z,this.getPrecomputes(Z,Q,Y),X)},wNAFCachedUnsafe(Q,X,Y,Z){let W=y7(Q);if(W===1)return this.unsafeLadder(Q,X,Z);return this.wNAFUnsafe(W,this.getPrecomputes(W,Q,Y),X,Z)},setWindowSize(Q,X){SK(X,J),RK.set(Q,X),f7.delete(Q)}}}function FK($,J,Q,X){n3(Q,$),o3(X,J);let Y=Q.length,Z=X.length;if(Y!==Z)throw Error("arrays of points and scalars must have equal length");let W=$.ZERO,G=w6(BigInt(Y)),K=1;if(G>12)K=G-3;else if(G>4)K=G-2;else if(G>0)K=2;let q=s8(K),V=Array(Number(q)+1).fill(W),M=Math.floor((J.BITS-1)/K)*K,D=W;for(let U=M;U>=0;U-=K){V.fill(W);for(let w=0;w<Z;w++){let L=X[w],O=Number(L>>BigInt(U)&q);V[O]=V[O].add(Q[w])}let z=W;for(let w=V.length-1,L=W;w>0;w--)L=L.add(V[w]),z=z.add(L);if(D=D.add(z),U!==0)for(let w=0;w<K;w++)D=D.double()}return D}function b7($){return _1($.Fp),mJ($,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...A7($.n,$.nBitLength),...$,...{p:$.Fp.ORDER}})}var LK,v7,f7,RK;var EK=_(()=>{AY();GX();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */LK=BigInt(0),v7=BigInt(1);f7=new WeakMap,RK=new WeakMap});function jK($){if($.lowS!==void 0)ZX("lowS",$.lowS);if($.prehash!==void 0)ZX("prehash",$.prehash)}function i3($){let J=b7($);mJ(J,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});let{endo:Q,Fp:X,a:Y}=J;if(Q){if(!X.eql(Y,X.ZERO))throw Error("invalid endo: CURVE.a must be 0");if(typeof Q!=="object"||typeof Q.beta!=="bigint"||typeof Q.splitScalar!=="function")throw Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...J})}function h7($,J){return WX(qJ($,J))}function s3($){let J=i3($),{Fp:Q}=J,X=_Y(J.n,J.nBitLength),Y=J.toBytes||((N,H,S)=>{let B=H.toAffine();return J0(Uint8Array.from([4]),Q.toBytes(B.x),Q.toBytes(B.y))}),Z=J.fromBytes||((N)=>{let H=N.subarray(1),S=Q.fromBytes(H.subarray(0,Q.BYTES)),B=Q.fromBytes(H.subarray(Q.BYTES,2*Q.BYTES));return{x:S,y:B}});function W(N){let{a:H,b:S}=J,B=Q.sqr(N),F=Q.mul(B,N);return Q.add(Q.add(F,Q.mul(N,H)),S)}function G(N,H){let S=Q.sqr(H),B=W(N);return Q.eql(S,B)}if(!G(J.Gx,J.Gy))throw Error("bad curve params: generator point");let K=Q.mul(Q.pow(J.a,PY),g7),q=Q.mul(Q.sqr(J.b),BigInt(27));if(Q.is0(Q.add(K,q)))throw Error("bad curve params: a or b");function V(N){return i8(N,W$,J.n)}function M(N){let{allowedPrivateKeyLengths:H,nByteLength:S,wrapPrivateKey:B,n:F}=J;if(H&&typeof N!=="bigint"){if(YX(N))N=WX(N);if(typeof N!=="string"||!H.includes(N.length))throw Error("invalid private key");N=N.padStart(S*2,"0")}let I;try{I=typeof N==="bigint"?N:w0(E$("private key",N,S))}catch(P){throw Error("invalid private key, expected hex or "+S+" bytes, got "+typeof N)}if(B)I=F$(I,F);return dJ("private key",I,W$,F),I}function D(N){if(!(N instanceof w))throw Error("ProjectivePoint expected")}let U=aZ((N,H)=>{let{px:S,py:B,pz:F}=N;if(Q.eql(F,Q.ONE))return{x:S,y:B};let I=N.is0();if(H==null)H=I?Q.ONE:Q.inv(F);let P=Q.mul(S,H),j=Q.mul(B,H),y=Q.mul(F,H);if(I)return{x:Q.ZERO,y:Q.ZERO};if(!Q.eql(y,Q.ONE))throw Error("invZ was invalid");return{x:P,y:j}}),z=aZ((N)=>{if(N.is0()){if(J.allowInfinityPoint&&!Q.is0(N.py))return;throw Error("bad point: ZERO")}let{x:H,y:S}=N.toAffine();if(!Q.isValid(H)||!Q.isValid(S))throw Error("bad point: x or y not FE");if(!G(H,S))throw Error("bad point: equation left != right");if(!N.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});class w{constructor(N,H,S){if(N==null||!Q.isValid(N))throw Error("x required");if(H==null||!Q.isValid(H)||Q.is0(H))throw Error("y required");if(S==null||!Q.isValid(S))throw Error("z required");this.px=N,this.py=H,this.pz=S,Object.freeze(this)}static fromAffine(N){let{x:H,y:S}=N||{};if(!N||!Q.isValid(H)||!Q.isValid(S))throw Error("invalid affine point");if(N instanceof w)throw Error("projective point not allowed");let B=(F)=>Q.eql(F,Q.ZERO);if(B(H)&&B(S))return w.ZERO;return new w(H,S,Q.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(N){let H=HX(Q,N.map((S)=>S.pz));return N.map((S,B)=>S.toAffine(H[B])).map(w.fromAffine)}static fromHex(N){let H=w.fromAffine(Z(E$("pointHex",N)));return H.assertValidity(),H}static fromPrivateKey(N){return w.BASE.multiply(M(N))}static msm(N,H){return FK(w,X,N,H)}_setWindowSize(N){C.setWindowSize(this,N)}assertValidity(){z(this)}hasEvenY(){let{y:N}=this.toAffine();if(Q.isOdd)return!Q.isOdd(N);throw Error("Field doesn't support isOdd")}equals(N){D(N);let{px:H,py:S,pz:B}=this,{px:F,py:I,pz:P}=N,j=Q.eql(Q.mul(H,P),Q.mul(F,B)),y=Q.eql(Q.mul(S,P),Q.mul(I,B));return j&&y}negate(){return new w(this.px,Q.neg(this.py),this.pz)}double(){let{a:N,b:H}=J,S=Q.mul(H,PY),{px:B,py:F,pz:I}=this,P=Q.ZERO,j=Q.ZERO,y=Q.ZERO,x=Q.mul(B,B),b=Q.mul(F,F),g=Q.mul(I,I),T=Q.mul(B,F);return T=Q.add(T,T),y=Q.mul(B,I),y=Q.add(y,y),P=Q.mul(N,y),j=Q.mul(S,g),j=Q.add(P,j),P=Q.sub(b,j),j=Q.add(b,j),j=Q.mul(P,j),P=Q.mul(T,P),y=Q.mul(S,y),g=Q.mul(N,g),T=Q.sub(x,g),T=Q.mul(N,T),T=Q.add(T,y),y=Q.add(x,x),x=Q.add(y,x),x=Q.add(x,g),x=Q.mul(x,T),j=Q.add(j,x),g=Q.mul(F,I),g=Q.add(g,g),x=Q.mul(g,T),P=Q.sub(P,x),y=Q.mul(g,b),y=Q.add(y,y),y=Q.add(y,y),new w(P,j,y)}add(N){D(N);let{px:H,py:S,pz:B}=this,{px:F,py:I,pz:P}=N,j=Q.ZERO,y=Q.ZERO,x=Q.ZERO,b=J.a,g=Q.mul(J.b,PY),T=Q.mul(H,F),f=Q.mul(S,I),d=Q.mul(B,P),k=Q.add(H,S),v=Q.add(F,I);k=Q.mul(k,v),v=Q.add(T,f),k=Q.sub(k,v),v=Q.add(H,B);let u=Q.add(F,P);return v=Q.mul(v,u),u=Q.add(T,d),v=Q.sub(v,u),u=Q.add(S,B),j=Q.add(I,P),u=Q.mul(u,j),j=Q.add(f,d),u=Q.sub(u,j),x=Q.mul(b,v),j=Q.mul(g,d),x=Q.add(j,x),j=Q.sub(f,x),x=Q.add(f,x),y=Q.mul(j,x),f=Q.add(T,T),f=Q.add(f,T),d=Q.mul(b,d),v=Q.mul(g,v),f=Q.add(f,d),d=Q.sub(T,d),d=Q.mul(b,d),v=Q.add(v,d),T=Q.mul(f,v),y=Q.add(y,T),T=Q.mul(u,v),j=Q.mul(k,j),j=Q.sub(j,T),T=Q.mul(k,f),x=Q.mul(u,x),x=Q.add(x,T),new w(j,y,x)}subtract(N){return this.add(N.negate())}is0(){return this.equals(w.ZERO)}wNAF(N){return C.wNAFCached(this,N,w.normalizeZ)}multiplyUnsafe(N){let{endo:H,n:S}=J;dJ("scalar",N,l0,S);let B=w.ZERO;if(N===l0)return B;if(this.is0()||N===W$)return this;if(!H||C.hasPrecomputes(this))return C.wNAFCachedUnsafe(this,N,w.normalizeZ);let{k1neg:F,k1:I,k2neg:P,k2:j}=H.splitScalar(N),y=B,x=B,b=this;while(I>l0||j>l0){if(I&W$)y=y.add(b);if(j&W$)x=x.add(b);b=b.double(),I>>=W$,j>>=W$}if(F)y=y.negate();if(P)x=x.negate();return x=new w(Q.mul(x.px,H.beta),x.py,x.pz),y.add(x)}multiply(N){let{endo:H,n:S}=J;dJ("scalar",N,W$,S);let B,F;if(H){let{k1neg:I,k1:P,k2neg:j,k2:y}=H.splitScalar(N),{p:x,f:b}=this.wNAF(P),{p:g,f:T}=this.wNAF(y);x=C.constTimeNegate(I,x),g=C.constTimeNegate(j,g),g=new w(Q.mul(g.px,H.beta),g.py,g.pz),B=x.add(g),F=b.add(T)}else{let{p:I,f:P}=this.wNAF(N);B=I,F=P}return w.normalizeZ([B,F])[0]}multiplyAndAddUnsafe(N,H,S){let B=w.BASE,F=(P,j)=>j===l0||j===W$||!P.equals(B)?P.multiplyUnsafe(j):P.multiply(j),I=F(this,H).add(F(N,S));return I.is0()?void 0:I}toAffine(N){return U(this,N)}isTorsionFree(){let{h:N,isTorsionFree:H}=J;if(N===W$)return!0;if(H)return H(w,this);throw Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:N,clearCofactor:H}=J;if(N===W$)return this;if(H)return H(w,this);return this.multiplyUnsafe(J.h)}toRawBytes(N=!0){return ZX("isCompressed",N),this.assertValidity(),Y(w,this,N)}toHex(N=!0){return ZX("isCompressed",N),WX(this.toRawBytes(N))}}w.BASE=new w(J.Gx,J.Gy,Q.ONE),w.ZERO=new w(Q.ZERO,Q.ONE,Q.ZERO);let{endo:L,nBitLength:O}=J,C=BK(w,L?Math.ceil(O/2):O);return{CURVE:J,ProjectivePoint:w,normPrivateKeyToScalar:M,weierstrassEquation:W,isWithinCurveOrder:V}}function r3($){let J=b7($);return mJ(J,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...J})}function TK($){let J=r3($),{Fp:Q,n:X,nByteLength:Y,nBitLength:Z}=J,W=Q.BYTES+1,G=2*Q.BYTES+1;function K(T){return F$(T,X)}function q(T){return T1(T,X)}let{ProjectivePoint:V,normPrivateKeyToScalar:M,weierstrassEquation:D,isWithinCurveOrder:U}=s3({...J,toBytes(T,f,d){let k=f.toAffine(),v=Q.toBytes(k.x),u=J0;if(ZX("isCompressed",d),d)return u(Uint8Array.from([f.hasEvenY()?2:3]),v);else return u(Uint8Array.from([4]),v,Q.toBytes(k.y))},fromBytes(T){let f=T.length,d=T[0],k=T.subarray(1);if(f===W&&(d===2||d===3)){let v=w0(k);if(!i8(v,W$,Q.ORDER))throw Error("Point is not on curve");let u=D(v),X$;try{X$=Q.sqrt(u)}catch(O$){let T$=O$ instanceof Error?": "+O$.message:"";throw Error("Point is not on curve"+T$)}let c=(X$&W$)===W$;if((d&1)===1!==c)X$=Q.neg(X$);return{x:v,y:X$}}else if(f===G&&d===4){let v=Q.fromBytes(k.subarray(0,Q.BYTES)),u=Q.fromBytes(k.subarray(Q.BYTES,2*Q.BYTES));return{x:v,y:u}}else{let v=W,u=G;throw Error("invalid Point, expected length of "+v+", or uncompressed "+u+", got "+f)}}});function z(T){let f=X>>W$;return T>f}function w(T){return z(T)?K(-T):T}let L=(T,f,d)=>w0(T.slice(f,d));class O{constructor(T,f,d){if(dJ("r",T,W$,X),dJ("s",f,W$,X),this.r=T,this.s=f,d!=null)this.recovery=d;Object.freeze(this)}static fromCompact(T){let f=Y;return T=E$("compactSignature",T,f*2),new O(L(T,0,f),L(T,f,2*f))}static fromDER(T){let{r:f,s:d}=sJ.toSig(E$("DER",T));return new O(f,d)}assertValidity(){}addRecoveryBit(T){return new O(this.r,this.s,T)}recoverPublicKey(T){let{r:f,s:d,recovery:k}=this,v=F(E$("msgHash",T));if(k==null||![0,1,2,3].includes(k))throw Error("recovery id invalid");let u=k===2||k===3?f+J.n:f;if(u>=Q.ORDER)throw Error("recovery id 2 or 3 invalid");let X$=(k&1)===0?"02":"03",c=V.fromHex(X$+h7(u,Q.BYTES)),I$=q(u),O$=K(-v*I$),T$=K(d*I$),t0=V.BASE.multiplyAndAddUnsafe(c,O$,T$);if(!t0)throw Error("point at infinify");return t0.assertValidity(),t0}hasHighS(){return z(this.s)}normalizeS(){return this.hasHighS()?new O(this.r,K(-this.s),this.recovery):this}toDERRawBytes(){return zY(this.toDERHex())}toDERHex(){return sJ.hexFromSig(this)}toCompactRawBytes(){return zY(this.toCompactHex())}toCompactHex(){let T=Y;return h7(this.r,T)+h7(this.s,T)}}let C={isValidPrivateKey(T){try{return M(T),!0}catch(f){return!1}},normPrivateKeyToScalar:M,randomPrivateKey:()=>{let T=P7(J.n);return OK(J.randomBytes(T),J.n)},precompute(T=8,f=V.BASE){return f._setWindowSize(T),f.multiply(BigInt(3)),f}};function N(T,f=!0){return V.fromPrivateKey(T).toRawBytes(f)}function H(T){if(typeof T==="bigint")return!1;if(T instanceof V)return!0;let d=E$("key",T).length,k=Q.BYTES,v=k+1,u=2*k+1;if(J.allowedPrivateKeyLengths||Y===v)return;else return d===v||d===u}function S(T,f,d=!0){if(H(T)===!0)throw Error("first arg must be private key");if(H(f)===!1)throw Error("second arg must be public key");return V.fromHex(f).multiply(M(T)).toRawBytes(d)}let B=J.bits2int||function(T){if(T.length>8192)throw Error("input is too large");let f=w0(T),d=T.length*8-Z;return d>0?f>>BigInt(d):f},F=J.bits2int_modN||function(T){return K(B(T))},I=s8(Z);function P(T){return dJ("num < 2^"+Z,T,l0,I),qJ(T,Y)}function j(T,f,d=y){if(["recovered","canonical"].some((A8)=>(A8 in d)))throw Error("sign() legacy options not supported");let{hash:k,randomBytes:v}=J,{lowS:u,prehash:X$,extraEntropy:c}=d;if(u==null)u=!0;if(T=E$("msgHash",T),jK(d),X$)T=E$("prehashed msgHash",k(T));let I$=F(T),O$=M(f),T$=[P(O$),P(I$)];if(c!=null&&c!==!1){let A8=c===!0?v(Q.BYTES):c;T$.push(E$("extraEntropy",A8))}let t0=J0(...T$),CJ=I$;function E5(A8){let RQ=B(A8);if(!U(RQ))return;let j5=q(RQ),dX=V.BASE.multiply(RQ).toAffine(),P8=K(dX.x);if(P8===l0)return;let mX=K(j5*K(CJ+P8*O$));if(mX===l0)return;let BQ=(dX.x===P8?0:2)|Number(dX.y&W$),qG=mX;if(u&&z(mX))qG=w(mX),BQ^=1;return new O(P8,qG,BQ)}return{seed:t0,k2sig:E5}}let y={lowS:J.lowS,prehash:!1},x={lowS:J.lowS,prehash:!1};function b(T,f,d=y){let{seed:k,k2sig:v}=j(T,f,d),u=J;return z6(u.hash.outputLen,u.nByteLength,u.hmac)(k,v)}V.BASE._setWindowSize(8);function g(T,f,d,k=x){let v=T;f=E$("msgHash",f),d=E$("publicKey",d);let{lowS:u,prehash:X$,format:c}=k;if(jK(k),"strict"in k)throw Error("options.strict was renamed to lowS");if(c!==void 0&&c!=="compact"&&c!=="der")throw Error("format must be compact or der");let I$=typeof v==="string"||YX(v),O$=!I$&&!c&&typeof v==="object"&&v!==null&&typeof v.r==="bigint"&&typeof v.s==="bigint";if(!I$&&!O$)throw Error("invalid signature, expected Uint8Array, hex string or Signature instance");let T$=void 0,t0;try{if(O$)T$=new O(v.r,v.s);if(I$){try{if(c!=="compact")T$=O.fromDER(v)}catch(BQ){if(!(BQ instanceof sJ.Err))throw BQ}if(!T$&&c!=="der")T$=O.fromCompact(v)}t0=V.fromHex(d)}catch(BQ){return!1}if(!T$)return!1;if(u&&T$.hasHighS())return!1;if(X$)f=J.hash(f);let{r:CJ,s:E5}=T$,A8=F(f),RQ=q(E5),j5=K(A8*RQ),dX=K(CJ*RQ),P8=V.BASE.multiplyAndAddUnsafe(t0,j5,dX)?.toAffine();if(!P8)return!1;return K(P8.x)===CJ}return{CURVE:J,getPublicKey:N,getSharedSecret:S,sign:b,verify:g,ProjectivePoint:V,Signature:O,utils:C}}function t3($,J){let Q=$.ORDER,X=l0;for(let z=Q-W$;z%w8===l0;z/=w8)X+=W$;let Y=X,Z=w8<<Y-W$-W$,W=Z*w8,G=(Q-W$)/W,K=(G-W$)/w8,q=W-W$,V=Z,M=$.pow(J,G),D=$.pow(J,(G+W$)/w8),U=(z,w)=>{let L=M,O=$.pow(w,q),C=$.sqr(O);C=$.mul(C,w);let N=$.mul(z,C);N=$.pow(N,K),N=$.mul(N,O),O=$.mul(N,w),C=$.mul(N,z);let H=$.mul(C,O);N=$.pow(H,V);let S=$.eql(N,$.ONE);O=$.mul(C,D),N=$.mul(H,L),C=$.cmov(O,C,S),H=$.cmov(N,H,S);for(let B=Y;B>W$;B--){let F=B-w8;F=w8<<F-W$;let I=$.pow(H,F),P=$.eql(I,$.ONE);O=$.mul(C,L),L=$.mul(L,L),I=$.mul(H,L),C=$.cmov(O,C,P),H=$.cmov(I,H,P)}return{isValid:S,value:C}};if($.ORDER%g7===PY){let z=($.ORDER-PY)/g7,w=$.sqrt($.neg(J));U=(L,O)=>{let C=$.sqr(O),N=$.mul(L,O);C=$.mul(C,N);let H=$.pow(C,z);H=$.mul(H,N);let S=$.mul(H,w),B=$.mul($.sqr(H),O),F=$.eql(B,L),I=$.cmov(S,H,F);return{isValid:F,value:I}}}return U}function _K($,J){if(_1($),!$.isValid(J.A)||!$.isValid(J.B)||!$.isValid(J.Z))throw Error("mapToCurveSimpleSWU: invalid opts");let Q=t3($,J.Z);if(!$.isOdd)throw Error("Fp.isOdd is not implemented!");return(X)=>{let Y,Z,W,G,K,q,V,M;Y=$.sqr(X),Y=$.mul(Y,J.Z),Z=$.sqr(Y),Z=$.add(Z,Y),W=$.add(Z,$.ONE),W=$.mul(W,J.B),G=$.cmov(J.Z,$.neg(Z),!$.eql(Z,$.ZERO)),G=$.mul(G,J.A),Z=$.sqr(W),q=$.sqr(G),K=$.mul(q,J.A),Z=$.add(Z,K),Z=$.mul(Z,W),q=$.mul(q,G),K=$.mul(q,J.B),Z=$.add(Z,K),V=$.mul(Y,W);let{isValid:D,value:U}=Q(Z,q);M=$.mul(Y,X),M=$.mul(M,U),V=$.cmov(V,W,D),M=$.cmov(M,U,D);let z=$.isOdd(X)===$.isOdd(M);M=$.cmov($.neg(M),M,z);let w=HX($,[G],!0)[0];return V=$.mul(V,w),{x:V,y:M}}}var IK,sJ,l0,W$,w8,PY,g7;var d7=_(()=>{EK();AY();GX();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */IK=class IK extends Error{constructor($=""){super($)}};sJ={Err:IK,_tlv:{encode:($,J)=>{let{Err:Q}=sJ;if($<0||$>256)throw new Q("tlv.encode: wrong tag");if(J.length&1)throw new Q("tlv.encode: unpadded data");let X=J.length/2,Y=wY(X);if(Y.length/2&128)throw new Q("tlv.encode: long form length too big");let Z=X>127?wY(Y.length/2|128):"";return wY($)+Z+Y+J},decode($,J){let{Err:Q}=sJ,X=0;if($<0||$>256)throw new Q("tlv.encode: wrong tag");if(J.length<2||J[X++]!==$)throw new Q("tlv.decode: wrong tlv");let Y=J[X++],Z=!!(Y&128),W=0;if(!Z)W=Y;else{let K=Y&127;if(!K)throw new Q("tlv.decode(long): indefinite length not supported");if(K>4)throw new Q("tlv.decode(long): byte length is too big");let q=J.subarray(X,X+K);if(q.length!==K)throw new Q("tlv.decode: length bytes not complete");if(q[0]===0)throw new Q("tlv.decode(long): zero leftmost byte");for(let V of q)W=W<<8|V;if(X+=K,W<128)throw new Q("tlv.decode(long): not minimal encoding")}let G=J.subarray(X,X+W);if(G.length!==W)throw new Q("tlv.decode: wrong value length");return{v:G,l:J.subarray(X+W)}}},_int:{encode($){let{Err:J}=sJ;if($<l0)throw new J("integer: negative integers are not allowed");let Q=wY($);if(Number.parseInt(Q[0],16)&8)Q="00"+Q;if(Q.length&1)throw new J("unexpected DER parsing assertion: unpadded hex");return Q},decode($){let{Err:J}=sJ;if($[0]&128)throw new J("invalid signature integer: negative");if($[0]===0&&!($[1]&128))throw new J("invalid signature integer: unnecessary leading zero");return w0($)}},toSig($){let{Err:J,_int:Q,_tlv:X}=sJ,Y=E$("signature",$),{v:Z,l:W}=X.decode(48,Y);if(W.length)throw new J("invalid signature: left bytes after parsing");let{v:G,l:K}=X.decode(2,Z),{v:q,l:V}=X.decode(2,K);if(V.length)throw new J("invalid signature: left bytes after parsing");return{r:Q.decode(G),s:Q.decode(q)}},hexFromSig($){let{_tlv:J,_int:Q}=sJ,X=J.encode(2,Q.encode($.r)),Y=J.encode(2,Q.encode($.s)),Z=X+Y;return J.encode(48,Z)}};l0=BigInt(0),W$=BigInt(1),w8=BigInt(2),PY=BigInt(3),g7=BigInt(4)});function a3($){return{hash:$,hmac:(J,...Q)=>_7($,J,E4(...Q)),randomBytes:p9}}function AK($,J){let Q=(X)=>TK({...$,...a3(X)});return{...Q(J),create:Q}}var PK=_(()=>{MK();J8();d7();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */});function z8($,J){if(xY($),xY(J),$<0||$>=1<<8*J)throw Error("invalid I2OSP input: "+$);let Q=Array.from({length:J}).fill(0);for(let X=J-1;X>=0;X--)Q[X]=$&255,$>>>=8;return new Uint8Array(Q)}function $w($,J){let Q=new Uint8Array($.length);for(let X=0;X<$.length;X++)Q[X]=$[X]^J[X];return Q}function xY($){if(!Number.isSafeInteger($))throw Error("number expected")}function Jw($,J,Q,X){if(gJ($),gJ(J),xY(Q),J.length>255)J=X(J0(G1("H2C-OVERSIZE-DST-"),J));let{outputLen:Y,blockLen:Z}=X,W=Math.ceil(Q/Y);if(Q>65535||W>255)throw Error("expand_message_xmd: invalid lenInBytes");let G=J0(J,z8(J.length,1)),K=z8(0,Z),q=z8(Q,2),V=Array(W),M=X(J0(K,$,q,z8(0,1),G));V[0]=X(J0(M,z8(1,1),G));for(let U=1;U<=W;U++){let z=[$w(M,V[U-1]),z8(U+1,1),G];V[U]=X(J0(...z))}return J0(...V).slice(0,Q)}function Qw($,J,Q,X,Y){if(gJ($),gJ(J),xY(Q),J.length>255){let Z=Math.ceil(2*X/8);J=Y.create({dkLen:Z}).update(G1("H2C-OVERSIZE-DST-")).update(J).digest()}if(Q>65535||J.length>255)throw Error("expand_message_xof: invalid lenInBytes");return Y.create({dkLen:Q}).update($).update(z8(Q,2)).update(J).update(z8(J.length,1)).digest()}function xK($,J,Q){mJ(Q,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:X,k:Y,m:Z,hash:W,expand:G,DST:K}=Q;gJ($),xY(J);let q=typeof K==="string"?G1(K):K,V=X.toString(2).length,M=Math.ceil((V+Y)/8),D=J*Z*M,U;if(G==="xmd")U=Jw($,q,D,W);else if(G==="xof")U=Qw($,q,D,Y,W);else if(G==="_internal_pass")U=$;else throw Error('expand must be "xmd" or "xof"');let z=Array(J);for(let w=0;w<J;w++){let L=Array(Z);for(let O=0;O<Z;O++){let C=M*(O+w*Z),N=U.subarray(C,C+M);L[O]=F$(e3(N),X)}z[w]=L}return z}function kK($,J){let Q=J.map((X)=>Array.from(X).reverse());return(X,Y)=>{let[Z,W,G,K]=Q.map((M)=>M.reduce((D,U)=>$.add($.mul(D,X),U))),[q,V]=HX($,[W,K],!0);return X=$.mul(Z,q),Y=$.mul(Y,$.mul(G,V)),{x:X,y:Y}}}function fK($,J,Q){if(typeof J!=="function")throw Error("mapToCurve() must be defined");function X(Z){return $.fromAffine(J(Z))}function Y(Z){let W=Z.clearCofactor();if(W.equals($.ZERO))return $.ZERO;return W.assertValidity(),W}return{defaults:Q,hashToCurve(Z,W){let G=xK(Z,2,{...Q,DST:Q.DST,...W}),K=X(G[0]),q=X(G[1]);return Y(K.add(q))},encodeToCurve(Z,W){let G=xK(Z,1,{...Q,DST:Q.encodeDST,...W});return Y(X(G[0]))},mapToCurve(Z){if(!Array.isArray(Z))throw Error("expected array of bigints");for(let W of Z)if(typeof W!=="bigint")throw Error("expected array of bigints");return Y(X(Z))}}}var e3;var yK=_(()=>{AY();GX();e3=w0});var uK={};Y9(uK,{secp256k1_hasher:()=>o7,secp256k1:()=>X0,schnorr:()=>Ww,hashToCurve:()=>qw,encodeToCurve:()=>Vw});function hK($){let J=yY,Q=BigInt(3),X=BigInt(6),Y=BigInt(11),Z=BigInt(22),W=BigInt(23),G=BigInt(44),K=BigInt(88),q=$*$*$%J,V=q*q*$%J,M=F0(V,Q,J)*V%J,D=F0(M,Q,J)*V%J,U=F0(D,P1,J)*q%J,z=F0(U,Y,J)*U%J,w=F0(z,Z,J)*z%J,L=F0(w,G,J)*w%J,O=F0(L,K,J)*L%J,C=F0(O,G,J)*w%J,N=F0(C,Q,J)*V%J,H=F0(N,W,J)*z%J,S=F0(H,X,J)*q%J,B=F0(S,P1,J);if(!H8.eql(H8.sqr(B),$))throw Error("Cannot find square root");return B}function x1($,...J){let Q=bK[$];if(Q===void 0){let X=JQ(Uint8Array.from($,(Y)=>Y.charCodeAt(0)));Q=J0(X,X),bK[$]=Q}return JQ(J0(Q,...J))}function p7($){let J=X0.utils.normPrivateKeyToScalar($),Q=n7.fromPrivateKey(J);return{scalar:Q.hasEvenY()?J:fY(-J),bytes:c7(Q)}}function gK($){dJ("x",$,kY,yY);let J=m7($*$),Q=m7(J*$+BigInt(7)),X=hK(Q);if(X%P1!==l7)X=m7(-X);let Y=new n7($,X,kY);return Y.assertValidity(),Y}function dK(...$){return fY(OX(x1("BIP0340/challenge",...$)))}function Yw($){return p7($).bytes}function Zw($,J,Q=p9(32)){let X=E$("message",$),{bytes:Y,scalar:Z}=p7(J),W=E$("auxRand",Q,32),G=u7(Z^OX(x1("BIP0340/aux",W))),K=x1("BIP0340/nonce",G,Y,X),q=fY(OX(K));if(q===l7)throw Error("sign failed: k is zero");let{bytes:V,scalar:M}=p7(q),D=dK(V,Y,X),U=new Uint8Array(64);if(U.set(V,0),U.set(u7(fY(M+D*Z)),32),!mK(U,X,Y))throw Error("sign: Invalid signature produced");return U}function mK($,J,Q){let X=E$("signature",$,64),Y=E$("message",J),Z=E$("publicKey",Q,32);try{let W=gK(OX(Z)),G=OX(X.subarray(0,32));if(!i8(G,kY,yY))return!1;let K=OX(X.subarray(32,64));if(!i8(K,kY,A1))return!1;let q=dK(u7(G),c7(W),Y),V=Xw(W,K,fY(-q));if(!V||!V.hasEvenY()||V.toAffine().x!==G)return!1;return!0}catch(W){return!1}}var yY,A1,l7,kY,P1,vK=($,J)=>($+J/P1)/J,H8,X0,bK,c7=($)=>$.toRawBytes(!0).slice(1),u7=($)=>qJ($,32),m7=($)=>F$($,yY),fY=($)=>F$($,A1),n7,Xw=($,J,Q)=>n7.BASE.multiplyAndAddUnsafe($,J,Q),OX,Ww,Gw,Kw,o7,qw,Vw;var XQ=_(()=>{I7();J8();PK();yK();AY();GX();d7();/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */yY=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),A1=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),l7=BigInt(0),kY=BigInt(1),P1=BigInt(2);H8=_Y(yY,void 0,void 0,{sqrt:hK}),X0=AK({a:l7,b:BigInt(7),Fp:H8,n:A1,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:($)=>{let J=A1,Q=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),X=-kY*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),Y=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),Z=Q,W=BigInt("0x100000000000000000000000000000000"),G=vK(Z*$,J),K=vK(-X*$,J),q=F$($-G*Q-K*Y,J),V=F$(-G*X-K*Z,J),M=q>W,D=V>W;if(M)q=J-q;if(D)V=J-V;if(q>W||V>W)throw Error("splitScalar: Endomorphism failed, k="+$);return{k1neg:M,k1:q,k2neg:D,k2:V}}}},JQ),bK={};n7=(()=>X0.ProjectivePoint)();OX=w0;Ww=(()=>({getPublicKey:Yw,sign:Zw,verify:mK,utils:{randomPrivateKey:X0.utils.randomPrivateKey,lift_x:gK,pointToBytes:c7,numberToBytesBE:qJ,bytesToNumberBE:w0,taggedHash:x1,mod:F$}}))(),Gw=(()=>kK(H8,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(($)=>$.map((J)=>BigInt(J)))))(),Kw=(()=>_K(H8,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:H8.create(BigInt("-11"))}))(),o7=(()=>fK(X0.ProjectivePoint,($)=>{let{x:J,y:Q}=Kw(H8.create($[0]));return Gw(J,Q)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:H8.ORDER,m:1,k:128,expand:"xmd",hash:JQ}))(),qw=(()=>o7.hashToCurve)(),Vw=(()=>o7.encodeToCurve)()});var EG=VG(FG(),1),{program:FH,createCommand:EH,createArgument:jH,createOption:IH,CommanderError:TH,InvalidArgumentError:_H,InvalidOptionArgumentError:AH,Command:jG,Argument:PH,Option:xH,Help:kH}=EG.default;var KG=VG(xG(),1);TQ();var j9=256,I9;function T9($=11){if(!I9||j9+$>512){I9="",j9=0;for(let J=0;J<256;J++)I9+=(256+Math.random()*256|0).toString(16).substring(1)}return I9.substring(j9,j9+++$)}function _9($){let{batch:J,chain:Q,ccipRead:X,dataSuffix:Y,key:Z="base",name:W="Base Client",type:G="base"}=$,K=$.experimental_blockTag??(typeof Q?.experimental_preconfirmationTime==="number"?"pending":void 0),q=Q?.blockTime??12000,V=Math.min(Math.max(Math.floor(q/2),500),4000),M=$.pollingInterval??V,D=$.cacheTime??M,U=$.account?p($.account):void 0,{config:z,request:w,value:L}=$.transport({account:U,chain:Q,pollingInterval:M}),O={...z,...L},C={account:U,batch:J,cacheTime:D,ccipRead:X,chain:Q,dataSuffix:Y,key:Z,name:W,pollingInterval:M,request:w,transport:O,type:G,uid:T9(),...K?{experimental_blockTag:K}:{}};function N(H){return(S)=>{let B=S(H);for(let I in C)delete B[I];let F={...H,...B};return Object.assign(F,{extend:N(F)})}}return Object.assign(C,{extend:N(C)})}EJ();kJ();N0();m8();m();l();Y8();function gQ($){if(!($ instanceof R))return!1;let J=$.walk((Q)=>Q instanceof hQ);if(!(J instanceof hQ))return!1;if(J.data?.errorName==="HttpError")return!0;if(J.data?.errorName==="ResolverError")return!0;if(J.data?.errorName==="ResolverNotContract")return!0;if(J.data?.errorName==="ResolverNotFound")return!0;if(J.data?.errorName==="ReverseAddressMismatch")return!0;if(J.data?.errorName==="UnsupportedResolverProfile")return!0;return!1}UY();k$();m();q0();function Z1($){if($.length!==66)return null;if($.indexOf("[")!==0)return null;if($.indexOf("]")!==65)return null;let J=`0x${$.slice(1,65)}`;if(!U$(J))return null;return J}function NY($){let J=new Uint8Array(32).fill(0);if(!$)return i(J);let Q=$.split(".");for(let X=Q.length-1;X>=0;X-=1){let Y=Z1(Q[X]),Z=Y?m$(Y):n(g0(Q[X]),"bytes");J=n(Q$([J,Z]),"bytes")}return i(J)}k$();function q6($){return`[${$.slice(2)}]`}k$();m();q0();function V6($){let J=new Uint8Array(32).fill(0);if(!$)return i(J);return Z1($)||n(g0($))}function dQ($){let J=$.replace(/^\.|\.$/gm,"");if(J.length===0)return new Uint8Array(1);let Q=new Uint8Array(g0(J).byteLength+2),X=0,Y=J.split(".");for(let Z=0;Z<Y.length;Z++){let W=g0(Y[Z]);if(W.byteLength>255)W=g0(q6(V6(Y[Z])));Q[X]=W.length,Q.set(W,X+1),X+=W.length+1}if(Q.byteLength!==X+1)return Q.slice(0,X+1);return Q}function A($,J,Q){let X=$[J.name];if(typeof X==="function")return X;let Y=$[Q];if(typeof Y==="function")return Y;return(Z)=>J($,Z)}kJ();N0();S$();l();Y8();c8();o8();var RU=3;function R0($,{abi:J,address:Q,args:X,docsPath:Y,functionName:Z,sender:W}){let G=$ instanceof fJ?$:$ instanceof R?$.walk((z)=>("data"in z))||$.walk():{},{code:K,data:q,details:V,message:M,shortMessage:D}=G,U=(()=>{if($ instanceof h0)return new gZ({functionName:Z});if([RU,vJ.code].includes(K)&&(q||V||M||D)||K===A0.code&&V==="execution reverted"&&q)return new hQ({abi:J,data:typeof q==="object"?q.data:q,functionName:Z,message:G instanceof l8?V:D??M});return $})();return new DY(U,{abi:J,args:X,contractAddress:Q,docsPath:Y,functionName:Z,sender:W})}e8();async function j$($,J){let{abi:Q,address:X,args:Y,functionName:Z,...W}=J,G=K$({abi:Q,args:Y,functionName:Z});try{let{data:K}=await A($,f0,"call")({...W,data:G,to:X});return n$({abi:Q,args:Y,functionName:Z,data:K||"0x"})}catch(K){throw R0(K,{abi:Q,address:X,args:Y,docsPath:"/docs/contract/readContract",functionName:Z})}}async function r6($,J){let{blockNumber:Q,blockTag:X,coinType:Y,name:Z,gatewayUrls:W,strict:G}=J,{chain:K}=$,q=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!K)throw Error("client chain not configured. universalResolverAddress is required.");return T0({blockNumber:Q,chain:K,contract:"ensUniversalResolver"})})(),V=K?.ensTlds;if(V&&!V.some((D)=>Z.endsWith(D)))return null;let M=(()=>{if(Y!=null)return[NY(Z),BigInt(Y)];return[NY(Z)]})();try{let D=K$({abi:n5,functionName:"addr",args:M}),U={address:q,abi:P9,functionName:"resolveWithGateways",args:[t(dQ(Z)),D,W??[yJ]],blockNumber:Q,blockTag:X},w=await A($,j$,"readContract")(U);if(w[0]==="0x")return null;let L=n$({abi:n5,args:M,functionName:"addr",data:w[0]});if(L==="0x")return null;if(b$(L)==="0x00")return null;return L}catch(D){if(G)throw D;if(gQ(D))return null;throw D}}l();class C7 extends R{constructor({data:$}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify($)}`],name:"EnsAvatarInvalidMetadataError"})}}class $Q extends R{constructor({reason:$}){super(`ENS NFT avatar URI is invalid. ${$}`,{name:"EnsAvatarInvalidNftUriError"})}}class TY extends R{constructor({uri:$}){super(`Unable to resolve ENS avatar URI "${$}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class S7 extends R{constructor({namespace:$}){super(`ENS NFT avatar namespace "${$}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}var x3=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,k3=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,f3=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,y3=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function v3($){try{let J=await fetch($,{method:"HEAD"});if(J.status===200)return J.headers.get("content-type")?.startsWith("image/");return!1}catch(J){if(typeof J==="object"&&typeof J.response<"u")return!1;if(!Object.hasOwn(globalThis,"Image"))return!1;return new Promise((Q)=>{let X=new Image;X.onload=()=>{Q(!0)},X.onerror=()=>{Q(!1)},X.src=$})}}function t6($,J){if(!$)return J;if($.endsWith("/"))return $.slice(0,-1);return $}function R7({uri:$,gatewayUrls:J}){let Q=f3.test($);if(Q)return{uri:$,isOnChain:!0,isEncoded:Q};let X=t6(J?.ipfs,"https://ipfs.io"),Y=t6(J?.arweave,"https://arweave.net"),Z=$.match(x3),{protocol:W,subpath:G,target:K,subtarget:q=""}=Z?.groups||{},V=W==="ipns:/"||G==="ipns/",M=W==="ipfs:/"||G==="ipfs/"||k3.test($);if($.startsWith("http")&&!V&&!M){let U=$;if(J?.arweave)U=$.replace(/https:\/\/arweave.net/g,J?.arweave);return{uri:U,isOnChain:!1,isEncoded:!1}}if((V||M)&&K)return{uri:`${X}/${V?"ipns":"ipfs"}/${K}${q}`,isOnChain:!1,isEncoded:!1};if(W==="ar:/"&&K)return{uri:`${Y}/${K}${q||""}`,isOnChain:!1,isEncoded:!1};let D=$.replace(y3,"");if(D.startsWith("<svg"))D=`data:image/svg+xml;base64,${btoa(D)}`;if(D.startsWith("data:")||D.startsWith("{"))return{uri:D,isOnChain:!0,isEncoded:!1};throw new TY({uri:$})}function B7($){if(typeof $!=="object"||!("image"in $)&&!("image_url"in $)&&!("image_data"in $))throw new C7({data:$});return $.image||$.image_url||$.image_data}async function a6({gatewayUrls:$,uri:J}){try{let Q=await fetch(J).then((Y)=>Y.json());return await S1({gatewayUrls:$,uri:B7(Q)})}catch{throw new TY({uri:J})}}async function S1({gatewayUrls:$,uri:J}){let{uri:Q,isOnChain:X}=R7({uri:J,gatewayUrls:$});if(X)return Q;if(await v3(Q))return Q;throw new TY({uri:J})}function e6($){let J=$;if(J.startsWith("did:nft:"))J=J.replace("did:nft:","").replace(/_/g,"/");let[Q,X,Y]=J.split("/"),[Z,W]=Q.split(":"),[G,K]=X.split(":");if(!Z||Z.toLowerCase()!=="eip155")throw new $Q({reason:"Only EIP-155 supported"});if(!W)throw new $Q({reason:"Chain ID not found"});if(!K)throw new $Q({reason:"Contract address not found"});if(!Y)throw new $Q({reason:"Token ID not found"});if(!G)throw new $Q({reason:"ERC namespace not found"});return{chainID:Number.parseInt(W,10),namespace:G.toLowerCase(),contractAddress:K,tokenID:Y}}async function $K($,{nft:J}){if(J.namespace==="erc721")return j$($,{address:J.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(J.tokenID)]});if(J.namespace==="erc1155")return j$($,{address:J.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(J.tokenID)]});throw new S7({namespace:J.namespace})}async function JK($,{gatewayUrls:J,record:Q}){if(/eip155:/i.test(Q))return b3($,{gatewayUrls:J,record:Q});return S1({uri:Q,gatewayUrls:J})}async function b3($,{gatewayUrls:J,record:Q}){let X=e6(Q),Y=await $K($,{nft:X}),{uri:Z,isOnChain:W,isEncoded:G}=R7({uri:Y,gatewayUrls:J});if(W&&(Z.includes("data:application/json;base64,")||Z.startsWith("{"))){let q=G?atob(Z.replace("data:application/json;base64,","")):Z,V=JSON.parse(q);return S1({uri:B7(V),gatewayUrls:J})}let K=X.tokenID;if(X.namespace==="erc1155")K=K.replace("0x","").padStart(64,"0");return a6({gatewayUrls:J,uri:Z.replace(/(?:0x)?{id}/,K)})}EJ();kJ();N0();m8();m();UY();async function R1($,J){let{blockNumber:Q,blockTag:X,key:Y,name:Z,gatewayUrls:W,strict:G}=J,{chain:K}=$,q=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!K)throw Error("client chain not configured. universalResolverAddress is required.");return T0({blockNumber:Q,chain:K,contract:"ensUniversalResolver"})})(),V=K?.ensTlds;if(V&&!V.some((M)=>Z.endsWith(M)))return null;try{let M={address:q,abi:P9,args:[t(dQ(Z)),K$({abi:c5,functionName:"text",args:[NY(Z),Y]}),W??[yJ]],functionName:"resolveWithGateways",blockNumber:Q,blockTag:X},U=await A($,j$,"readContract")(M);if(U[0]==="0x")return null;let z=n$({abi:c5,functionName:"text",data:U[0]});return z===""?null:z}catch(M){if(G)throw M;if(gQ(M))return null;throw M}}async function QK($,{blockNumber:J,blockTag:Q,assetGatewayUrls:X,name:Y,gatewayUrls:Z,strict:W,universalResolverAddress:G}){let K=await A($,R1,"getEnsText")({blockNumber:J,blockTag:Q,key:"avatar",name:Y,universalResolverAddress:G,gatewayUrls:Z,strict:W});if(!K)return null;try{return await JK($,{record:K,gatewayUrls:X})}catch{return null}}EJ();m8();UY();async function XK($,J){let{address:Q,blockNumber:X,blockTag:Y,coinType:Z=60n,gatewayUrls:W,strict:G}=J,{chain:K}=$,q=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!K)throw Error("client chain not configured. universalResolverAddress is required.");return T0({blockNumber:X,chain:K,contract:"ensUniversalResolver"})})();try{let V={address:q,abi:D4,args:[Q,Z,W??[yJ]],functionName:"reverseWithGateways",blockNumber:X,blockTag:Y},M=A($,j$,"readContract"),[D]=await M(V);return D||null}catch(V){if(G)throw V;if(gQ(V))return null;throw V}}m8();m();async function YK($,J){let{blockNumber:Q,blockTag:X,name:Y}=J,{chain:Z}=$,W=(()=>{if(J.universalResolverAddress)return J.universalResolverAddress;if(!Z)throw Error("client chain not configured. universalResolverAddress is required.");return T0({blockNumber:Q,chain:Z,contract:"ensUniversalResolver"})})(),G=Z?.ensTlds;if(G&&!G.some((q)=>Y.endsWith(q)))throw Error(`${Y} is not a valid ENS TLD (${G?.join(", ")}) for chain "${Z.name}" (id: ${Z.id}).`);let[K]=await A($,j$,"readContract")({address:W,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[t(dQ(Y))],blockNumber:Q,blockTag:X});return K}e8();m();N7();nJ();UJ();async function B1($,J){let{account:Q=$.account,blockNumber:X,blockTag:Y="latest",blobs:Z,data:W,gas:G,gasPrice:K,maxFeePerBlobGas:q,maxFeePerGas:V,maxPriorityFeePerGas:M,to:D,value:U,...z}=J,w=Q?p(Q):void 0;try{g$(J);let O=(typeof X==="bigint"?E(X):void 0)||Y,C=$.chain?.formatters?.transactionRequest?.format,H=(C||o$)({...x0(z,{format:C}),account:w,blobs:Z,data:W,gas:G,gasPrice:K,maxFeePerBlobGas:q,maxFeePerGas:V,maxPriorityFeePerGas:M,to:D,value:U},"createAccessList"),S=await $.request({method:"eth_createAccessList",params:[H,O]});return{accessList:S.accessList,gasUsed:BigInt(S.gasUsed)}}catch(L){throw H1(L,{...J,account:w,chain:$.chain})}}function U8($,{method:J}){let Q={};if($.transport.type==="fallback")$.transport.onResponse?.(({method:X,response:Y,status:Z,transport:W})=>{if(Z==="success"&&J===X)Q[Y]=W.request});return(X)=>Q[X]||$.request}async function ZK($){let J=U8($,{method:"eth_newBlockFilter"}),Q=await $.request({method:"eth_newBlockFilter"});return{id:Q,request:J(Q),type:"block"}}S$();l();class F7 extends R{constructor($){super(`Filter type "${$}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}k$();q0();WY();GJ();jJ();X8();var WK="/docs/contract/encodeEventTopics";function NJ($){let{abi:J,eventName:Q,args:X}=$,Y=J[0];if(Q){let K=U0({abi:J,name:Q});if(!K)throw new f9(Q,{docsPath:WK});Y=K}if(Y.type!=="event")throw new f9(void 0,{docsPath:WK});let Z=A$(Y),W=Q8(Z),G=[];if(X&&"inputs"in Y){let K=Y.inputs?.filter((V)=>("indexed"in V)&&V.indexed),q=Array.isArray(X)?X:Object.values(X).length>0?K?.map((V)=>X[V.name])??[]:[];if(q.length>0)G=K?.map((V,M)=>{if(Array.isArray(q[M]))return q[M].map((D,U)=>GK({param:V,value:q[M][U]}));return typeof q[M]<"u"&&q[M]!==null?GK({param:V,value:q[M]}):null})??[]}return[W,...G]}function GK({param:$,value:J}){if($.type==="string"||$.type==="bytes")return n(m$(J));if($.type==="tuple"||$.type.match(/^(.*)\[(\d+)?\]$/))throw new F7($.type);return G$([$],[J])}m();async function F1($,J){let{address:Q,abi:X,args:Y,eventName:Z,fromBlock:W,strict:G,toBlock:K}=J,q=U8($,{method:"eth_newFilter"}),V=Z?NJ({abi:X,args:Y,eventName:Z}):void 0,M=await $.request({method:"eth_newFilter",params:[{address:Q,fromBlock:typeof W==="bigint"?E(W):W,toBlock:typeof K==="bigint"?E(K):K,topics:V}]});return{abi:X,args:Y,eventName:Z,id:M,request:q(M),strict:Boolean(G),type:"event"}}m();async function E1($,{address:J,args:Q,event:X,events:Y,fromBlock:Z,strict:W,toBlock:G}={}){let K=Y??(X?[X]:void 0),q=U8($,{method:"eth_newFilter"}),V=[];if(K){if(V=[K.flatMap((U)=>NJ({abi:[U],eventName:U.name,args:Q}))],X)V=V[0]}let M=await $.request({method:"eth_newFilter",params:[{address:J,fromBlock:typeof Z==="bigint"?E(Z):Z,toBlock:typeof G==="bigint"?E(G):G,...V.length?{topics:V}:{}}]});return{abi:K,args:Q,eventName:X?X.name:void 0,fromBlock:Z,id:M,request:q(M),strict:Boolean(W),toBlock:G,type:"event"}}async function j1($){let J=U8($,{method:"eth_newPendingTransactionFilter"}),Q=await $.request({method:"eth_newPendingTransactionFilter"});return{id:Q,request:J(Q),type:"transaction"}}N0();l();ZJ();q0();function I1($){let J=n(`0x${$.substring(4)}`).substring(26);return YJ(`0x${J}`)}j0();P$();m();async function lK({hash:$,signature:J}){let Q=U$($)?$:t($),{secp256k1:X}=await Promise.resolve().then(() => (XQ(),uK));return`0x${(()=>{if(typeof J==="object"&&"r"in J&&"s"in J){let{r:q,s:V,v:M,yParity:D}=J,U=Number(D??M),z=pK(U);return new X.Signature(Z$(q),Z$(V)).addRecoveryBit(z)}let W=U$(J)?J:t(J);if(r(W)!==65)throw Error("invalid signature length");let G=N$(`0x${W.slice(130)}`),K=pK(G);return X.Signature.fromCompact(W.substring(2,130)).addRecoveryBit(K)})().recoverPublicKey(Q.substring(2)).toHex(!1)}`}function pK($){if($===0||$===1)return $;if($===27)return 0;if($===28)return 1;throw Error("Invalid yParityOrV value")}async function k1({hash:$,signature:J}){return I1(await lK({hash:$,signature:J}))}k$();m();l();n9();k$();m();function c0($,J="hex"){let Q=cK($),X=AQ(new Uint8Array(Q.length));if(Q.encode(X),J==="hex")return i(X.bytes);return X.bytes}function cK($){if(Array.isArray($))return Mw($.map((J)=>cK(J)));return Dw($)}function Mw($){let J=$.reduce((Y,Z)=>Y+Z.length,0),Q=nK(J);return{length:(()=>{if(J<=55)return 1+J;return 1+Q+J})(),encode(Y){if(J<=55)Y.pushByte(192+J);else if(Y.pushByte(247+Q),Q===1)Y.pushUint8(J);else if(Q===2)Y.pushUint16(J);else if(Q===3)Y.pushUint24(J);else Y.pushUint32(J);for(let{encode:Z}of $)Z(Y)}}}function Dw($){let J=typeof $==="string"?x$($):$,Q=nK(J.length);return{length:(()=>{if(J.length===1&&J[0]<128)return 1;if(J.length<=55)return 1+J.length;return 1+Q+J.length})(),encode(Y){if(J.length===1&&J[0]<128)Y.pushBytes(J);else if(J.length<=55)Y.pushByte(128+J.length),Y.pushBytes(J);else{if(Y.pushByte(183+Q),Q===1)Y.pushUint8(J.length);else if(Q===2)Y.pushUint16(J.length);else if(Q===3)Y.pushUint24(J.length);else Y.pushUint32(J.length);Y.pushBytes(J)}}}}function nK($){if($<256)return 1;if($<65536)return 2;if($<16777216)return 3;if($<4294967296)return 4;throw new R("Length is too large.")}q0();function f1($){let{chainId:J,nonce:Q,to:X}=$,Y=$.contractAddress??$.address,Z=n(R$(["0x05",c0([J?E(J):"0x",Y,Q?E(Q):"0x"])]));if(X==="bytes")return x$(Z);return Z}async function O8($){let{authorization:J,signature:Q}=$;return k1({hash:f1(J),signature:Q??J})}m();Y1();bQ();l();_0();class i7 extends R{constructor($,{account:J,docsPath:Q,chain:X,data:Y,gas:Z,gasPrice:W,maxFeePerGas:G,maxPriorityFeePerGas:K,nonce:q,to:V,value:M}){let D=u8({from:J?.address,to:V,value:typeof M<"u"&&`${vQ(M)} ${X?.nativeCurrency?.symbol||"ETH"}`,data:Y,gas:Z,gasPrice:typeof W<"u"&&`${f$(W)} gwei`,maxFeePerGas:typeof G<"u"&&`${f$(G)} gwei`,maxPriorityFeePerGas:typeof K<"u"&&`${f$(K)} gwei`,nonce:q});super($.shortMessage,{cause:$,docsPath:Q,metaMessages:[...$.metaMessages?[...$.metaMessages," "]:[],"Estimate Gas Arguments:",D].filter(Boolean),name:"EstimateGasExecutionError"});Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=$}}cJ();IY();function oK($,{docsPath:J,...Q}){let X=(()=>{let Y=D8($,Q);if(Y instanceof p0)return $;return Y})();return new i7(X,{docsPath:J,...Q})}nJ();L1();UJ();bQ();l();class vY extends R{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class YQ extends R{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class s7 extends R{constructor({maxPriorityFeePerGas:$}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${f$($)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}P$();l();class bY extends R{constructor({blockHash:$,blockNumber:J}){let Q="Block";if($)Q=`Block at hash "${$}"`;if(J)Q=`Block at number "${J}"`;super(`${Q} could not be found.`,{name:"BlockNotFoundError"})}}m();P$();var r7={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function rJ($,J){let Q={...$,blockHash:$.blockHash?$.blockHash:null,blockNumber:$.blockNumber?BigInt($.blockNumber):null,chainId:$.chainId?N$($.chainId):void 0,gas:$.gas?BigInt($.gas):void 0,gasPrice:$.gasPrice?BigInt($.gasPrice):void 0,maxFeePerBlobGas:$.maxFeePerBlobGas?BigInt($.maxFeePerBlobGas):void 0,maxFeePerGas:$.maxFeePerGas?BigInt($.maxFeePerGas):void 0,maxPriorityFeePerGas:$.maxPriorityFeePerGas?BigInt($.maxPriorityFeePerGas):void 0,nonce:$.nonce?N$($.nonce):void 0,to:$.to?$.to:null,transactionIndex:$.transactionIndex?Number($.transactionIndex):null,type:$.type?r7[$.type]:void 0,typeHex:$.type?$.type:void 0,value:$.value?BigInt($.value):void 0,v:$.v?BigInt($.v):void 0};if($.authorizationList)Q.authorizationList=Uw($.authorizationList);if(Q.yParity=(()=>{if($.yParity)return Number($.yParity);if(typeof Q.v==="bigint"){if(Q.v===0n||Q.v===27n)return 0;if(Q.v===1n||Q.v===28n)return 1;if(Q.v>=35n)return Q.v%2n===0n?1:0}return})(),Q.type==="legacy")delete Q.accessList,delete Q.maxFeePerBlobGas,delete Q.maxFeePerGas,delete Q.maxPriorityFeePerGas,delete Q.yParity;if(Q.type==="eip2930")delete Q.maxFeePerBlobGas,delete Q.maxFeePerGas,delete Q.maxPriorityFeePerGas;if(Q.type==="eip1559")delete Q.maxFeePerBlobGas;return Q}var iK=NX("transaction",rJ);function Uw($){return $.map((J)=>({address:J.address,chainId:Number(J.chainId),nonce:Number(J.nonce),r:J.r,s:J.s,yParity:Number(J.yParity)}))}function hY($,J){let Q=($.transactions??[]).map((X)=>{if(typeof X==="string")return X;return rJ(X)});return{...$,baseFeePerGas:$.baseFeePerGas?BigInt($.baseFeePerGas):null,blobGasUsed:$.blobGasUsed?BigInt($.blobGasUsed):void 0,difficulty:$.difficulty?BigInt($.difficulty):void 0,excessBlobGas:$.excessBlobGas?BigInt($.excessBlobGas):void 0,gasLimit:$.gasLimit?BigInt($.gasLimit):void 0,gasUsed:$.gasUsed?BigInt($.gasUsed):void 0,hash:$.hash?$.hash:null,logsBloom:$.logsBloom?$.logsBloom:null,nonce:$.nonce?$.nonce:null,number:$.number?BigInt($.number):null,size:$.size?BigInt($.size):void 0,timestamp:$.timestamp?BigInt($.timestamp):void 0,transactions:Q,totalDifficulty:$.totalDifficulty?BigInt($.totalDifficulty):null}}var sK=NX("block",hY);async function d$($,{blockHash:J,blockNumber:Q,blockTag:X=$.experimental_blockTag??"latest",includeTransactions:Y}={}){let Z=Y??!1,W=Q!==void 0?E(Q):void 0,G=null;if(J)G=await $.request({method:"eth_getBlockByHash",params:[J,Z]},{dedupe:!0});else G=await $.request({method:"eth_getBlockByNumber",params:[W||X,Z]},{dedupe:Boolean(W)});if(!G)throw new bY({blockHash:J,blockNumber:Q});return($.chain?.formatters?.block?.format||hY)(G,"getBlock")}async function LX($){let J=await $.request({method:"eth_gasPrice"});return BigInt(J)}async function rK($,J){return t7($,J)}async function t7($,J){let{block:Q,chain:X=$.chain,request:Y}=J||{};try{let Z=X?.fees?.maxPriorityFeePerGas??X?.fees?.defaultPriorityFee;if(typeof Z==="function"){let G=Q||await A($,d$,"getBlock")({}),K=await Z({block:G,client:$,request:Y});if(K===null)throw Error();return K}if(typeof Z<"u")return Z;let W=await $.request({method:"eth_maxPriorityFeePerGas"});return Z$(W)}catch{let[Z,W]=await Promise.all([Q?Promise.resolve(Q):A($,d$,"getBlock")({}),A($,LX,"getGasPrice")({})]);if(typeof Z.baseFeePerGas!=="bigint")throw new YQ;let G=W-Z.baseFeePerGas;if(G<0n)return 0n;return G}}async function tK($,J){return y1($,J)}async function y1($,J){let{block:Q,chain:X=$.chain,request:Y,type:Z="eip1559"}=J||{},W=await(async()=>{if(typeof X?.fees?.baseFeeMultiplier==="function")return X.fees.baseFeeMultiplier({block:Q,client:$,request:Y});return X?.fees?.baseFeeMultiplier??1.2})();if(W<1)throw new vY;let K=10**(W.toString().split(".")[1]?.length??0),q=(D)=>D*BigInt(Math.ceil(W*K))/BigInt(K),V=Q?Q:await A($,d$,"getBlock")({});if(typeof X?.fees?.estimateFeesPerGas==="function"){let D=await X.fees.estimateFeesPerGas({block:Q,client:$,multiply:q,request:Y,type:Z});if(D!==null)return D}if(Z==="eip1559"){if(typeof V.baseFeePerGas!=="bigint")throw new YQ;let D=typeof Y?.maxPriorityFeePerGas==="bigint"?Y.maxPriorityFeePerGas:await t7($,{block:V,chain:X,request:Y}),U=q(V.baseFeePerGas);return{maxFeePerGas:Y?.maxFeePerGas??U+D,maxPriorityFeePerGas:D}}return{gasPrice:Y?.gasPrice??q(await A($,LX,"getGasPrice")({}))}}P$();m();async function CX($,{address:J,blockTag:Q="latest",blockNumber:X}){let Y=await $.request({method:"eth_getTransactionCount",params:[J,typeof X==="bigint"?E(X):Q]},{dedupe:Boolean(X)});return N$(Y)}k$();m();function SX($){let{kzg:J}=$,Q=$.to??(typeof $.blobs[0]==="string"?"hex":"bytes"),X=typeof $.blobs[0]==="string"?$.blobs.map((Z)=>x$(Z)):$.blobs,Y=[];for(let Z of X)Y.push(Uint8Array.from(J.blobToKzgCommitment(Z)));return Q==="bytes"?Y:Y.map((Z)=>i(Z))}k$();m();function RX($){let{kzg:J}=$,Q=$.to??(typeof $.blobs[0]==="string"?"hex":"bytes"),X=typeof $.blobs[0]==="string"?$.blobs.map((W)=>x$(W)):$.blobs,Y=typeof $.commitments[0]==="string"?$.commitments.map((W)=>x$(W)):$.commitments,Z=[];for(let W=0;W<X.length;W++){let G=X[W],K=Y[W];Z.push(Uint8Array.from(J.computeBlobKzgProof(G,K)))}return Q==="bytes"?Z:Z.map((W)=>i(W))}m();I7();var aK=JQ;k$();m();function eK($,J){let Q=J||"hex",X=aK(U$($,{strict:!1})?m$($):$);if(Q==="bytes")return X;return t(X)}function $2($){let{commitment:J,version:Q=1}=$,X=$.to??(typeof J==="string"?"hex":"bytes"),Y=eK(J,"bytes");return Y.set([Q],0),X==="bytes"?Y:i(Y)}function v1($){let{commitments:J,version:Q}=$,X=$.to??(typeof J[0]==="string"?"hex":"bytes"),Y=[];for(let Z of J)Y.push($2({commitment:Z,to:X,version:Q}));return Y}var J2=32,Q2=4096,X2=131072,a7=761855;var b1=1;l();class e7 extends R{constructor({maxSize:$,size:J}){super("Blob size is too large.",{metaMessages:[`Max: ${$} bytes`,`Given: ${J} bytes`],name:"BlobSizeTooLargeError"})}}class gY extends R{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class $W extends R{constructor({hash:$,size:J}){super(`Versioned hash "${$}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${J}`],name:"InvalidVersionedHashSizeError"})}}class JW extends R{constructor({hash:$,version:J}){super(`Versioned hash "${$}" version is invalid.`,{metaMessages:[`Expected: ${b1}`,`Received: ${J}`],name:"InvalidVersionedHashVersionError"})}}n9();j0();k$();m();function Y2($){let J=$.to??(typeof $.data==="string"?"hex":"bytes"),Q=typeof $.data==="string"?x$($.data):$.data,X=r(Q);if(!X)throw new gY;if(X>a7)throw new e7({maxSize:a7,size:X});let Y=[],Z=!0,W=0;while(Z){let G=AQ(new Uint8Array(X2)),K=0;while(K<Q2){let q=Q.slice(W,W+(J2-1));if(G.pushByte(0),G.pushBytes(q),q.length<31){G.pushByte(128),Z=!1;break}K++,W+=31}Y.push(G)}return J==="bytes"?Y.map((G)=>G.bytes):Y.map((G)=>i(G.bytes))}function h1($){let{data:J,kzg:Q,to:X}=$,Y=$.blobs??Y2({data:J,to:X}),Z=$.commitments??SX({blobs:Y,kzg:Q,to:X}),W=$.proofs??RX({blobs:Y,commitments:Z,kzg:Q,to:X}),G=[];for(let K=0;K<Y.length;K++)G.push({blob:Y[K],commitment:Z[K],proof:W[K]});return G}d8();UJ();_0();function g1($){if($.type)return $.type;if(typeof $.authorizationList<"u")return"eip7702";if(typeof $.blobs<"u"||typeof $.blobVersionedHashes<"u"||typeof $.maxFeePerBlobGas<"u"||typeof $.sidecars<"u")return"eip4844";if(typeof $.maxFeePerGas<"u"||typeof $.maxPriorityFeePerGas<"u")return"eip1559";if(typeof $.gasPrice<"u"){if(typeof $.accessList<"u")return"eip2930";return"legacy"}throw new yZ({transaction:$})}cJ();_0();IY();function L8($,{docsPath:J,...Q}){let X=(()=>{let Y=D8($,Q);if(Y instanceof p0)return $;return Y})();return new bZ(X,{docsPath:J,...Q})}nJ();UJ();P$();async function s$($){let J=await $.request({method:"eth_chainId"},{dedupe:!0});return N$(J)}async function BX($,J){let{account:Q=$.account,accessList:X,authorizationList:Y,chain:Z=$.chain,blobVersionedHashes:W,blobs:G,data:K,gas:q,gasPrice:V,maxFeePerBlobGas:M,maxFeePerGas:D,maxPriorityFeePerGas:U,nonce:z,nonceManager:w,to:L,type:O,value:C,...N}=J,H=await(async()=>{if(!Q)return z;if(!w)return z;if(typeof z<"u")return z;let I=p(Q),P=Z?Z.id:await A($,s$,"getChainId")({});return await w.consume({address:I.address,chainId:P,client:$})})();g$(J);let S=Z?.formatters?.transactionRequest?.format,F=(S||o$)({...x0(N,{format:S}),account:Q?p(Q):void 0,accessList:X,authorizationList:Y,blobs:G,blobVersionedHashes:W,data:K,gas:q,gasPrice:V,maxFeePerBlobGas:M,maxFeePerGas:D,maxPriorityFeePerGas:U,nonce:H,to:L,type:O,value:C},"fillTransaction");try{let I=await $.request({method:"eth_fillTransaction",params:[F]}),j=(Z?.formatters?.transaction?.format||rJ)(I.tx);if(delete j.blockHash,delete j.blockNumber,delete j.r,delete j.s,delete j.transactionIndex,delete j.v,delete j.yParity,j.data=j.input,j.gas)j.gas=J.gas??j.gas;if(j.gasPrice)j.gasPrice=J.gasPrice??j.gasPrice;if(j.maxFeePerBlobGas)j.maxFeePerBlobGas=J.maxFeePerBlobGas??j.maxFeePerBlobGas;if(j.maxFeePerGas)j.maxFeePerGas=J.maxFeePerGas??j.maxFeePerGas;if(j.maxPriorityFeePerGas)j.maxPriorityFeePerGas=J.maxPriorityFeePerGas??j.maxPriorityFeePerGas;if(j.nonce)j.nonce=J.nonce??j.nonce;let y=await(async()=>{if(typeof Z?.fees?.baseFeeMultiplier==="function"){let T=await A($,d$,"getBlock")({});return Z.fees.baseFeeMultiplier({block:T,client:$,request:J})}return Z?.fees?.baseFeeMultiplier??1.2})();if(y<1)throw new vY;let b=10**(y.toString().split(".")[1]?.length??0),g=(T)=>T*BigInt(Math.ceil(y*b))/BigInt(b);if(j.maxFeePerGas&&!J.maxFeePerGas)j.maxFeePerGas=g(j.maxFeePerGas);if(j.gasPrice&&!J.gasPrice)j.gasPrice=g(j.gasPrice);return{raw:I.raw,transaction:{from:F.from,...j}}}catch(I){throw L8(I,{...J,chain:$.chain})}}var dY=["blobVersionedHashes","chainId","fees","gas","nonce","type"],Z2=new Map,QW=new S0(128);async function wJ($,J){let Q=J;Q.account??=$.account,Q.parameters??=dY;let{account:X,chain:Y=$.chain,nonceManager:Z,parameters:W}=Q,G=(()=>{if(typeof Y?.prepareTransactionRequest==="function")return{fn:Y.prepareTransactionRequest,runAt:["beforeFillTransaction"]};if(Array.isArray(Y?.prepareTransactionRequest))return{fn:Y.prepareTransactionRequest[0],runAt:Y.prepareTransactionRequest[1].runAt};return})(),K;async function q(){if(K)return K;if(typeof Q.chainId<"u")return Q.chainId;if(Y)return Y.id;return K=await A($,s$,"getChainId")({}),K}let V=X?p(X):X,M=Q.nonce;if(W.includes("nonce")&&typeof M>"u"&&V&&Z){let H=await q();M=await Z.consume({address:V.address,chainId:H,client:$})}if(G?.fn&&G.runAt?.includes("beforeFillTransaction"))Q=await G.fn({...Q,chain:Y},{phase:"beforeFillTransaction"}),M??=Q.nonce;let U=(()=>{if((W.includes("blobVersionedHashes")||W.includes("sidecars"))&&Q.kzg&&Q.blobs)return!1;if(QW.get($.uid)===!1)return!1;if(!["fees","gas"].some((S)=>W.includes(S)))return!1;if(W.includes("chainId")&&typeof Q.chainId!=="number")return!0;if(W.includes("nonce")&&typeof M!=="number")return!0;if(W.includes("fees")&&typeof Q.gasPrice!=="bigint"&&(typeof Q.maxFeePerGas!=="bigint"||typeof Q.maxPriorityFeePerGas!=="bigint"))return!0;if(W.includes("gas")&&typeof Q.gas!=="bigint")return!0;return!1})()?await A($,BX,"fillTransaction")({...Q,nonce:M}).then((H)=>{let{chainId:S,from:B,gas:F,gasPrice:I,nonce:P,maxFeePerBlobGas:j,maxFeePerGas:y,maxPriorityFeePerGas:x,type:b,...g}=H.transaction;return QW.set($.uid,!0),{...Q,...B?{from:B}:{},...b?{type:b}:{},...typeof S<"u"?{chainId:S}:{},...typeof F<"u"?{gas:F}:{},...typeof I<"u"?{gasPrice:I}:{},...typeof P<"u"?{nonce:P}:{},...typeof j<"u"?{maxFeePerBlobGas:j}:{},...typeof y<"u"?{maxFeePerGas:y}:{},...typeof x<"u"?{maxPriorityFeePerGas:x}:{},..."nonceKey"in g&&typeof g.nonceKey<"u"?{nonceKey:g.nonceKey}:{}}}).catch((H)=>{let S=H;if(S.name!=="TransactionExecutionError")return Q;if(S.walk?.((F)=>{let I=F;return I.name==="MethodNotFoundRpcError"||I.name==="MethodNotSupportedRpcError"}))QW.set($.uid,!1);return Q}):Q;M??=U.nonce,Q={...U,...V?{from:V?.address}:{},...M?{nonce:M}:{}};let{blobs:z,gas:w,kzg:L,type:O}=Q;if(G?.fn&&G.runAt?.includes("beforeFillParameters"))Q=await G.fn({...Q,chain:Y},{phase:"beforeFillParameters"});let C;async function N(){if(C)return C;return C=await A($,d$,"getBlock")({blockTag:"latest"}),C}if(W.includes("nonce")&&typeof M>"u"&&V&&!Z)Q.nonce=await A($,CX,"getTransactionCount")({address:V.address,blockTag:"pending"});if((W.includes("blobVersionedHashes")||W.includes("sidecars"))&&z&&L){let H=SX({blobs:z,kzg:L});if(W.includes("blobVersionedHashes")){let S=v1({commitments:H,to:"hex"});Q.blobVersionedHashes=S}if(W.includes("sidecars")){let S=RX({blobs:z,commitments:H,kzg:L}),B=h1({blobs:z,commitments:H,proofs:S,to:"hex"});Q.sidecars=B}}if(W.includes("chainId"))Q.chainId=await q();if((W.includes("fees")||W.includes("type"))&&typeof O>"u")try{Q.type=g1(Q)}catch{let H=Z2.get($.uid);if(typeof H>"u")H=typeof(await N())?.baseFeePerGas==="bigint",Z2.set($.uid,H);Q.type=H?"eip1559":"legacy"}if(W.includes("fees"))if(Q.type!=="legacy"&&Q.type!=="eip2930"){if(typeof Q.maxFeePerGas>"u"||typeof Q.maxPriorityFeePerGas>"u"){let H=await N(),{maxFeePerGas:S,maxPriorityFeePerGas:B}=await y1($,{block:H,chain:Y,request:Q});if(typeof Q.maxPriorityFeePerGas>"u"&&Q.maxFeePerGas&&Q.maxFeePerGas<B)throw new s7({maxPriorityFeePerGas:B});Q.maxPriorityFeePerGas=B,Q.maxFeePerGas=S}}else{if(typeof Q.maxFeePerGas<"u"||typeof Q.maxPriorityFeePerGas<"u")throw new YQ;if(typeof Q.gasPrice>"u"){let H=await N(),{gasPrice:S}=await y1($,{block:H,chain:Y,request:Q,type:"legacy"});Q.gasPrice=S}}if(W.includes("gas")&&typeof w>"u")Q.gas=await A($,FX,"estimateGas")({...Q,account:V,prepare:V?.type==="local"?[]:["blobVersionedHashes"]});if(G?.fn&&G.runAt?.includes("afterFillParameters"))Q=await G.fn({...Q,chain:Y},{phase:"afterFillParameters"});return g$(Q),delete Q.parameters,Q}async function FX($,J){let{account:Q=$.account,prepare:X=!0}=J,Y=Q?p(Q):void 0,Z=(()=>{if(Array.isArray(X))return X;if(Y?.type!=="local")return["blobVersionedHashes"];return})();try{let W=await(async()=>{if(J.to)return J.to;if(J.authorizationList&&J.authorizationList.length>0)return await O8({authorization:J.authorizationList[0]}).catch(()=>{throw new R("`to` is required. Could not infer from `authorizationList`")});return})(),{accessList:G,authorizationList:K,blobs:q,blobVersionedHashes:V,blockNumber:M,blockTag:D,data:U,gas:z,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,value:H,stateOverride:S,...B}=X?await wJ($,{...J,parameters:Z,to:W}):J;if(z&&J.gas!==z)return z;let I=(typeof M==="bigint"?E(M):void 0)||D,P=zX(S);g$(J);let j=$.chain?.formatters?.transactionRequest?.format,x=(j||o$)({...x0(B,{format:j}),account:Y,accessList:G,authorizationList:K,blobs:q,blobVersionedHashes:V,data:U,gasPrice:w,maxFeePerBlobGas:L,maxFeePerGas:O,maxPriorityFeePerGas:C,nonce:N,to:W,value:H},"estimateGas");return BigInt(await $.request({method:"eth_estimateGas",params:P?[x,I??$.experimental_blockTag??"latest",P]:I?[x,I]:[x]}))}catch(W){throw oK(W,{...J,account:Y,chain:$.chain})}}async function W2($,J){let{abi:Q,address:X,args:Y,functionName:Z,dataSuffix:W=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,...G}=J,K=K$({abi:Q,args:Y,functionName:Z});try{return await A($,FX,"estimateGas")({data:`${K}${W?W.replace("0x",""):""}`,to:X,...G})}catch(q){let V=G.account?p(G.account):void 0;throw R0(q,{abi:Q,address:X,args:Y,docsPath:"/docs/contract/estimateContractGas",functionName:Z,sender:V?.address})}}EJ();kJ();N0();m();e8();async function G2($,{address:J,blockNumber:Q,blockTag:X=$.experimental_blockTag??"latest"}){if($.batch?.multicall&&$.chain?.contracts?.multicall3){let W=$.chain.contracts.multicall3.address,G=K$({abi:$J,functionName:"getEthBalance",args:[J]}),{data:K}=await A($,f0,"call")({to:W,data:G,blockNumber:Q,blockTag:X});return n$({abi:$J,functionName:"getEthBalance",args:[J],data:K||"0x"})}let Y=typeof Q==="bigint"?E(Q):void 0,Z=await $.request({method:"eth_getBalance",params:[J,Y||X]});return BigInt(Z)}async function K2($){let J=await $.request({method:"eth_blobBaseFee"});return BigInt(J)}var Nw=new Map,ww=new Map;function q2($){let J=(Y,Z)=>({clear:()=>Z.delete(Y),get:()=>Z.get(Y),set:(W)=>Z.set(Y,W)}),Q=J($,Nw),X=J($,ww);return{clear:()=>{Q.clear(),X.clear()},promise:Q,response:X}}async function V2($,{cacheKey:J,cacheTime:Q=Number.POSITIVE_INFINITY}){let X=q2(J),Y=X.response.get();if(Y&&Q>0){if(Date.now()-Y.created.getTime()<Q)return Y.data}let Z=X.promise.get();if(!Z)Z=$(),X.promise.set(Z);try{let W=await Z;return X.response.set({created:new Date,data:W}),W}finally{X.promise.clear()}}var zw=($)=>`blockNumber.${$}`;async function zJ($,{cacheTime:J=$.cacheTime}={}){let Q=await V2(()=>$.request({method:"eth_blockNumber"}),{cacheKey:zw($.uid),cacheTime:J});return BigInt(Q)}P$();m();async function M2($,{blockHash:J,blockNumber:Q,blockTag:X="latest"}={}){let Y=Q!==void 0?E(Q):void 0,Z;if(J)Z=await $.request({method:"eth_getBlockTransactionCountByHash",params:[J]},{dedupe:!0});else Z=await $.request({method:"eth_getBlockTransactionCountByNumber",params:[Y||X]},{dedupe:Boolean(Y)});return N$(Z)}m();async function mY($,{address:J,blockNumber:Q,blockTag:X="latest"}){let Y=Q!==void 0?E(Q):void 0,Z=await $.request({method:"eth_getCode",params:[J,Y||X]},{dedupe:Boolean(Y)});if(Z==="0x")return;return Z}X8();a8();k$();q0();WY();S$();LZ();j0();WY();ZY();jJ();var D2="/docs/contract/decodeEventLog";function ZQ($){let{abi:J,data:Q,strict:X,topics:Y}=$,Z=X??!0,[W,...G]=Y;if(!W)throw new QZ({docsPath:D2});let K=J.find((O)=>O.type==="event"&&W===Q8(A$(O)));if(!(K&&("name"in K))||K.type!=="event")throw new XZ(W,{docsPath:D2});let{name:q,inputs:V}=K,M=V?.some((O)=>!(("name"in O)&&O.name)),D=M?[]:{},U=V.map((O,C)=>[O,C]).filter(([O])=>("indexed"in O)&&O.indexed),z=[];for(let O=0;O<U.length;O++){let[C,N]=U[O],H=G[O];if(!H){if(Z)throw new k8({abiItem:K,param:C});z.push([C,N]);continue}D[M?N:C.name||N]=Hw({param:C,value:H})}let w=V.filter((O)=>!(("indexed"in O)&&O.indexed)),L=Z?w:[...z.map(([O])=>O),...w];if(L.length>0){if(Q&&Q!=="0x")try{let O=xJ(L,Q);if(O){let C=0;if(!Z)for(let[N,H]of z)D[M?H:N.name||H]=O[C++];if(M){for(let N=0;N<V.length;N++)if(D[N]===void 0&&C<O.length)D[N]=O[C++]}else for(let N=0;N<w.length;N++)D[w[N].name]=O[C++]}}catch(O){if(Z){if(O instanceof sX||O instanceof XY)throw new $8({abiItem:K,data:Q,params:L,size:r(Q)});throw O}}else if(Z)throw new $8({abiItem:K,data:"0x",params:L,size:0})}return{eventName:q,args:Object.values(D).length>0?D:void 0}}function Hw({param:$,value:J}){if($.type==="string"||$.type==="bytes"||$.type==="tuple"||$.type.match(/^(.*)\[(\d+)?\]$/))return J;return(xJ([$],J)||[])[0]}function EX($){let{abi:J,args:Q,logs:X,strict:Y=!0}=$,Z=(()=>{if(!$.eventName)return;if(Array.isArray($.eventName))return $.eventName;return[$.eventName]})(),W=J.filter((G)=>G.type==="event").map((G)=>({abi:G,selector:Q8(G)}));return X.map((G)=>{let K=W.filter((M)=>G.topics[0]===M.selector);if(K.length===0)return null;let q,V;for(let M of K)try{q=ZQ({...G,abi:[M.abi],strict:!0}),V=M;break}catch{}if(!q&&!Y){V=K[0];try{q=ZQ({data:G.data,topics:G.topics,abi:[V.abi],strict:!1})}catch{let M=V.abi.inputs?.some((D)=>!(("name"in D)&&D.name));return{...G,args:M?[]:{},eventName:V.abi.name}}}if(!q||!V)return null;if(Z&&!Z.includes(q.eventName))return null;if(!Ow({args:q.args,inputs:V.abi.inputs,matchArgs:Q}))return null;return{...q,...G}}).filter(Boolean)}function Ow($){let{args:J,inputs:Q,matchArgs:X}=$;if(!X)return!0;if(!J)return!1;function Y(Z,W,G){try{if(Z.type==="address")return k0(W,G);if(Z.type==="string"||Z.type==="bytes")return n(m$(W))===G;return W===G}catch{return!1}}if(Array.isArray(J)&&Array.isArray(X))return X.every((Z,W)=>{if(Z===null||Z===void 0)return!0;let G=Q[W];if(!G)return!1;return(Array.isArray(Z)?Z:[Z]).some((q)=>Y(G,q,J[W]))});if(typeof J==="object"&&!Array.isArray(J)&&typeof X==="object"&&!Array.isArray(X))return Object.entries(X).every(([Z,W])=>{if(W===null||W===void 0)return!0;let G=Q.find((q)=>q.name===Z);if(!G)return!1;return(Array.isArray(W)?W:[W]).some((q)=>Y(G,q,J[Z]))});return!1}m();function r$($,{args:J,eventName:Q}={}){return{...$,blockHash:$.blockHash?$.blockHash:null,blockNumber:$.blockNumber?BigInt($.blockNumber):null,blockTimestamp:$.blockTimestamp?BigInt($.blockTimestamp):$.blockTimestamp===null?null:void 0,logIndex:$.logIndex?Number($.logIndex):null,transactionHash:$.transactionHash?$.transactionHash:null,transactionIndex:$.transactionIndex?Number($.transactionIndex):null,...Q?{args:J,eventName:Q}:{}}}async function jX($,{address:J,blockHash:Q,fromBlock:X,toBlock:Y,event:Z,events:W,args:G,strict:K}={}){let q=K??!1,V=W??(Z?[Z]:void 0),M=[];if(V){if(M=[V.flatMap((w)=>NJ({abi:[w],eventName:w.name,args:W?void 0:G}))],Z)M=M[0]}let D;if(Q)D=await $.request({method:"eth_getLogs",params:[{address:J,topics:M,blockHash:Q}]});else D=await $.request({method:"eth_getLogs",params:[{address:J,topics:M,fromBlock:typeof X==="bigint"?E(X):X,toBlock:typeof Y==="bigint"?E(Y):Y}]});let U=D.map((z)=>r$(z));if(!V)return U;return EX({abi:V,args:G,logs:U,strict:q})}async function d1($,J){let{abi:Q,address:X,args:Y,blockHash:Z,eventName:W,fromBlock:G,toBlock:K,strict:q}=J,V=W?U0({abi:Q,name:W}):void 0,M=!V?Q.filter((D)=>D.type==="event"):void 0;return A($,jX,"getLogs")({address:X,args:Y,blockHash:Z,event:V,events:M,fromBlock:G,toBlock:K,strict:q})}l();class XW extends R{constructor({address:$}){super(`No EIP-712 domain found on contract "${$}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${$}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function U2($,J){let{address:Q,factory:X,factoryData:Y}=J;try{let[Z,W,G,K,q,V,M]=await A($,j$,"readContract")({abi:Lw,address:Q,functionName:"eip712Domain",factory:X,factoryData:Y});return{domain:{name:W,version:G,chainId:Number(K),verifyingContract:q,salt:V},extensions:M,fields:Z}}catch(Z){let W=Z;if(W.name==="ContractFunctionExecutionError"&&W.cause.name==="ContractFunctionZeroDataError")throw new XW({address:Q});throw W}}var Lw=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];m();function N2($){return{baseFeePerGas:$.baseFeePerGas.map((J)=>BigInt(J)),gasUsedRatio:$.gasUsedRatio,oldestBlock:BigInt($.oldestBlock),reward:$.reward?.map((J)=>J.map((Q)=>BigInt(Q)))}}async function w2($,{blockCount:J,blockNumber:Q,blockTag:X="latest",rewardPercentiles:Y}){let Z=typeof Q==="bigint"?E(Q):void 0,W=await $.request({method:"eth_feeHistory",params:[E(J),Z||X,Y]},{dedupe:Boolean(Z)});return N2(W)}async function C8($,{filter:J}){let Q="strict"in J&&J.strict,X=await J.request({method:"eth_getFilterChanges",params:[J.id]});if(typeof X[0]==="string")return X;let Y=X.map((Z)=>r$(Z));if(!("abi"in J)||!J.abi)return Y;return EX({abi:J.abi,logs:Y,strict:Q})}async function z2($,{filter:J}){let Q=J.strict??!1,Y=(await J.request({method:"eth_getFilterLogs",params:[J.id]})).map((Z)=>r$(Z));if(!J.abi)return Y;return EX({abi:J.abi,logs:Y,strict:Q})}m();P$();m();function Cw($){return $.map((J)=>({...J,value:BigInt(J.value)}))}function H2($){return{...$,balance:$.balance?BigInt($.balance):void 0,nonce:$.nonce?N$($.nonce):void 0,storageProof:$.storageProof?Cw($.storageProof):void 0}}async function O2($,{address:J,blockNumber:Q,blockTag:X,storageKeys:Y}){let Z=X??"latest",W=Q!==void 0?E(Q):void 0,G=await $.request({method:"eth_getProof",params:[J,Y,W||Z]});return H2(G)}m();async function L2($,{address:J,blockNumber:Q,blockTag:X="latest",slot:Y}){let Z=Q!==void 0?E(Q):void 0;return await $.request({method:"eth_getStorageAt",params:[J,Y,Z||X]})}_0();m();async function IX($,{blockHash:J,blockNumber:Q,blockTag:X,hash:Y,index:Z,sender:W,nonce:G}){let K=X||"latest",q=Q!==void 0?E(Q):void 0,V=null;if(Y)V=await $.request({method:"eth_getTransactionByHash",params:[Y]},{dedupe:!0});else if(J)V=await $.request({method:"eth_getTransactionByBlockHashAndIndex",params:[J,E(Z)]},{dedupe:!0});else if((q||K)&&typeof Z==="number")V=await $.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[q||K,E(Z)]},{dedupe:Boolean(q)});else if(W&&typeof G==="number")V=await $.request({method:"eth_getTransactionBySenderAndNonce",params:[W,E(G)]},{dedupe:!0});if(!V)throw new KY({blockHash:J,blockNumber:Q,blockTag:K,hash:Y,index:Z});return($.chain?.formatters?.transaction?.format||rJ)(V,"getTransaction")}async function C2($,{hash:J,transactionReceipt:Q}){let[X,Y]=await Promise.all([A($,zJ,"getBlockNumber")({}),J?A($,IX,"getTransaction")({hash:J}):void 0]),Z=Q?.blockNumber||Y?.blockNumber;if(!Z)return 0n;return X-Z+1n}_0();P$();var YW={"0x0":"reverted","0x1":"success"};function uY($,J){let Q={...$,blockNumber:$.blockNumber?BigInt($.blockNumber):null,contractAddress:$.contractAddress?$.contractAddress:null,cumulativeGasUsed:$.cumulativeGasUsed?BigInt($.cumulativeGasUsed):null,effectiveGasPrice:$.effectiveGasPrice?BigInt($.effectiveGasPrice):null,gasUsed:$.gasUsed?BigInt($.gasUsed):null,logs:$.logs?$.logs.map((X)=>r$(X)):null,to:$.to?$.to:null,transactionIndex:$.transactionIndex?N$($.transactionIndex):null,status:$.status?YW[$.status]:null,type:$.type?r7[$.type]||$.type:null};if($.blobGasPrice)Q.blobGasPrice=BigInt($.blobGasPrice);if($.blobGasUsed)Q.blobGasUsed=BigInt($.blobGasUsed);return Q}var S2=NX("transactionReceipt",uY);async function TX($,{hash:J}){let Q=await $.request({method:"eth_getTransactionReceipt",params:[J]},{dedupe:!0});if(!Q)throw new qY({hash:J});return($.chain?.formatters?.transactionReceipt?.format||uY)(Q,"getTransactionReceipt")}EJ();S$();l();Y8();kJ();N0();m8();async function R2($,J){let{account:Q,authorizationList:X,allowFailure:Y=!0,blockNumber:Z,blockOverrides:W,blockTag:G,stateOverride:K}=J,q=J.contracts,{batchSize:V=J.batchSize??1024,deployless:M=J.deployless??!1}=typeof $.batch?.multicall==="object"?$.batch.multicall:{},D=(()=>{if(J.multicallAddress)return J.multicallAddress;if(M)return null;if($.chain)return T0({blockNumber:Z,chain:$.chain,contract:"multicall3"});throw Error("client chain not configured. multicallAddress is required.")})(),U=[[]],z=0,w=0;for(let C=0;C<q.length;C++){let{abi:N,address:H,args:S,functionName:B}=q[C];try{let F=K$({abi:N,args:S,functionName:B});if(w+=(F.length-2)/2,V>0&&w>V&&U[z].length>0)z++,w=(F.length-2)/2,U[z]=[];U[z]=[...U[z],{allowFailure:!0,callData:F,target:H}]}catch(F){let I=R0(F,{abi:N,address:H,args:S,docsPath:"/docs/contract/multicall",functionName:B,sender:Q});if(!Y)throw I;U[z]=[...U[z],{allowFailure:!0,callData:"0x",target:H}]}}let L=await Promise.allSettled(U.map((C)=>A($,j$,"readContract")({...D===null?{code:UX}:{address:D},abi:$J,account:Q,args:[C],authorizationList:X,blockNumber:Z,blockOverrides:W,blockTag:G,functionName:"aggregate3",stateOverride:K}))),O=[];for(let C=0;C<L.length;C++){let N=L[C];if(N.status==="rejected"){if(!Y)throw N.reason;for(let S=0;S<U[C].length;S++)O.push({status:"failure",error:N.reason,result:void 0});continue}let H=N.value;for(let S=0;S<H.length;S++){let{returnData:B,success:F}=H[S],{callData:I}=U[C][S],{abi:P,address:j,functionName:y,args:x}=q[O.length];try{if(I==="0x")throw new h0;if(!F)throw new fJ({data:B});let b=n$({abi:P,args:x,data:B,functionName:y});O.push(Y?{result:b,status:"success"}:b)}catch(b){let g=R0(b,{abi:P,address:j,args:x,docsPath:"/docs/contract/multicall",functionName:y});if(!Y)throw g;O.push({error:g,result:void 0,status:"failure"})}}}if(O.length!==q.length)throw new R("multicall results mismatch");return O}D7();S$();Y8();cJ();kJ();N0();m();IY();nJ();L1();UJ();async function pY($,J){let{blockNumber:Q,blockTag:X=$.experimental_blockTag??"latest",blocks:Y,returnFullTransactions:Z,traceTransfers:W,validation:G}=J;try{let K=[];for(let D of Y){let U=D.blockOverrides?N1(D.blockOverrides):void 0,z=D.calls.map((L)=>{let O=L,C=O.account?p(O.account):void 0,N=O.abi?K$(O):O.data,H={...O,account:C,data:O.dataSuffix?Q$([N||"0x",O.dataSuffix]):N,from:O.from??C?.address};return g$(H),o$(H)}),w=D.stateOverrides?zX(D.stateOverrides):void 0;K.push({blockOverrides:U,calls:z,stateOverrides:w})}let V=(typeof Q==="bigint"?E(Q):void 0)||X;return(await $.request({method:"eth_simulateV1",params:[{blockStateCalls:K,returnFullTransactions:Z,traceTransfers:W,validation:G},V]})).map((D,U)=>({...hY(D),calls:D.calls.map((z,w)=>{let{abi:L,args:O,functionName:C,to:N}=Y[U].calls[w],H=z.error?.data??z.returnData,S=BigInt(z.gasUsed),B=z.logs?.map((j)=>r$(j)),F=z.status==="0x1"?"success":"failure",I=L&&F==="success"&&H!=="0x"?n$({abi:L,data:H,functionName:C}):null,P=(()=>{if(F==="success")return;let j;if(H==="0x")j=new h0;else if(H)j=new fJ({data:H});if(!j)return;return R0(j,{abi:L??[],address:N??"0x",args:O,functionName:C??"<unknown>"})})();return{data:H,gasUsed:S,logs:B,status:F,...F==="success"?{result:I}:{error:P}}})}))}catch(K){let q=K,V=D8(q,{});if(V instanceof p0)throw q;throw V}}TQ();z0();wZ();V8();h$();function WQ($,J={}){let{as:Q=typeof $==="string"?"Hex":"Bytes"}=J,X=l9(_6($));if(Q==="Bytes")return X;return B$(X)}h$();V8();class WW extends Map{constructor($){super();Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=$}get($){let J=super.get($);if(super.has($)&&J!==void 0)this.delete($),super.set($,J);return J}set($,J){if(super.set($,J),this.maxSize&&this.size>this.maxSize){let Q=this.keys().next().value;if(Q)this.delete(Q)}return this}}var Sw={checksum:new WW(8192)},m1=Sw.checksum;z0();V8();z0();h$();function B2($,J={}){let{compressed:Q}=J,{prefix:X,x:Y,y:Z}=$;if(Q===!1||typeof Y==="bigint"&&typeof Z==="bigint"){if(X!==4)throw new GW({prefix:X,cause:new T2});return}if(Q===!0||typeof Y==="bigint"&&typeof Z>"u"){if(X!==3&&X!==2)throw new GW({prefix:X,cause:new I2});return}throw new j2({publicKey:$})}function F2($){let J=(()=>{if(OY($))return E2($);if(y6($))return Bw($);let{prefix:Q,x:X,y:Y}=$;if(typeof X==="bigint"&&typeof Y==="bigint")return{prefix:Q??4,x:X,y:Y};return{prefix:Q,x:X}})();return B2(J),J}function Bw($){return E2(B$($))}function E2($){if($.length!==132&&$.length!==130&&$.length!==68)throw new _2({publicKey:$});if($.length===130){let X=BigInt(M$($,0,32)),Y=BigInt(M$($,32,64));return{prefix:4,x:X,y:Y}}if($.length===132){let X=Number(M$($,0,1)),Y=BigInt(M$($,1,33)),Z=BigInt(M$($,33,65));return{prefix:X,x:Y,y:Z}}let J=Number(M$($,0,1)),Q=BigInt(M$($,1,33));return{prefix:J,x:Q}}function KW($,J={}){B2($);let{prefix:Q,x:X,y:Y}=$,{includePrefix:Z=!0}=J;return z$(Z?a(Q,{size:1}):"0x",a(X,{size:32}),typeof Y==="bigint"?a(Y,{size:32}):"0x")}class j2 extends h{constructor({publicKey:$}){super(`Value \`${M8($)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class GW extends h{constructor({prefix:$,cause:J}){super(`Prefix "${$}" is invalid.`,{cause:J});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class I2 extends h{constructor(){super("Prefix must be 2 or 3 for compressed public keys.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class T2 extends h{constructor(){super("Prefix must be 4 for uncompressed public keys.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}class _2 extends h{constructor({publicKey:$}){super(`Value \`${$}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${V$(MX($))} bytes.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}}var Fw=/^0x[a-fA-F0-9]{40}$/;function GQ($,J={}){let{strict:Q=!0}=J;if(!Fw.test($))throw new qW({address:$,cause:new x2});if(Q){if($.toLowerCase()===$)return;if(u1($)!==$)throw new qW({address:$,cause:new k2})}}function u1($){if(m1.has($))return m1.get($);GQ($,{strict:!1});let J=$.substring(2).toLowerCase(),Q=WQ(A6(J),{as:"Bytes"}),X=J.split("");for(let Z=0;Z<40;Z+=2){if(Q[Z>>1]>>4>=8&&X[Z])X[Z]=X[Z].toUpperCase();if((Q[Z>>1]&15)>=8&&X[Z+1])X[Z+1]=X[Z+1].toUpperCase()}let Y=`0x${X.join("")}`;return m1.set($,Y),Y}function Ew($,J={}){let{checksum:Q=!1}=J;if(GQ($),Q)return u1($);return $}function P2($,J={}){let Q=WQ(`0x${KW($).slice(4)}`).substring(26);return Ew(`0x${Q}`,J)}function p1($,J={}){let{strict:Q=!0}=J??{};try{return GQ($,{strict:Q}),!0}catch{return!1}}class qW extends h{constructor({address:$,cause:J}){super(`Address "${$}" is invalid.`,{cause:J});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class x2 extends h{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class k2 extends h{constructor(){super("Address does not match its checksum counterpart.");Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}z0();function n1($){let J=!0,Q="",X=0,Y="",Z=!1;for(let W=0;W<$.length;W++){let G=$[W];if(["(",")",","].includes(G))J=!0;if(G==="(")X++;if(G===")")X--;if(!J)continue;if(X===0){if(G===" "&&["event","function","error",""].includes(Y))Y="";else if(Y+=G,G===")"){Z=!0;break}continue}if(G===" "){if($[W-1]!==","&&Q!==","&&Q!==",(")Q="",J=!1;continue}Y+=G,Q+=G}if(!Z)throw new h("Unable to normalize signature.");return Y}function c1($,J){let Q=typeof $,X=J.type;switch(X){case"address":return p1($,{strict:!1});case"bool":return Q==="boolean";case"function":return Q==="string";case"string":return Q==="string";default:{if(X==="tuple"&&"components"in J)return Object.values(J.components).every((Y,Z)=>{return c1(Object.values($)[Z],Y)});if(/^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(X))return Q==="number"||Q==="bigint";if(/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(X))return Q==="string"||$ instanceof Uint8Array;if(/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(X))return Array.isArray($)&&$.every((Y)=>c1(Y,{...J,type:X.replace(/(\[[0-9]{0,}\])$/,"")}));return!1}}}function VW($,J,Q){for(let X in $){let Y=$[X],Z=J[X];if(Y.type==="tuple"&&Z.type==="tuple"&&"components"in Y&&"components"in Z)return VW(Y.components,Z.components,Q[X]);let W=[Y.type,Z.type];if((()=>{if(W.includes("address")&&W.includes("bytes20"))return!0;if(W.includes("address")&&W.includes("string"))return p1(Q[X],{strict:!1});if(W.includes("address")&&W.includes("bytes"))return p1(Q[X],{strict:!1});return!1})())return W}return}function o1($,J={}){let{prepare:Q=!0}=J,X=(()=>{if(Array.isArray($))return oX($);if(typeof $==="string")return oX($);return $})();return{...X,...Q?{hash:_X(X)}:{}}}function lY($,J,Q){let{args:X=[],prepare:Y=!0}=Q??{},Z=OY(J,{strict:!1}),W=$.filter((q)=>{if(Z){if(q.type==="function"||q.type==="error")return MW(q)===M$(J,0,4);if(q.type==="event")return _X(q)===J;return!1}return"name"in q&&q.name===J});if(W.length===0)throw new KQ({name:J});if(W.length===1)return{...W[0],...Y?{hash:_X(W[0])}:{}};let G;for(let q of W){if(!("inputs"in q))continue;if(!X||X.length===0){if(!q.inputs||q.inputs.length===0)return{...q,...Y?{hash:_X(q)}:{}};continue}if(!q.inputs)continue;if(q.inputs.length===0)continue;if(q.inputs.length!==X.length)continue;if(X.every((M,D)=>{let U="inputs"in q&&q.inputs[D];if(!U)return!1;return c1(M,U)})){if(G&&"inputs"in G&&G.inputs){let M=VW(q.inputs,G.inputs,X);if(M)throw new f2({abiItem:q,type:M[0]},{abiItem:G,type:M[1]})}G=q}}let K=(()=>{if(G)return G;let[q,...V]=W;return{...q,overloads:V}})();if(!K)throw new KQ({name:J});return{...K,...Y?{hash:_X(K)}:{}}}function MW(...$){let J=(()=>{if(Array.isArray($[0])){let[Q,X]=$;return lY(Q,X)}return $[0]})();return M$(_X(J),0,4)}function Iw(...$){let J=(()=>{if(Array.isArray($[0])){let[X,Y]=$;return lY(X,Y)}return $[0]})(),Q=(()=>{if(typeof J==="string")return J;return x8(J)})();return n1(Q)}function _X(...$){let J=(()=>{if(Array.isArray($[0])){let[Q,X]=$;return lY(Q,X)}return $[0]})();if(typeof J!=="string"&&"hash"in J&&J.hash)return J.hash;return WQ(DX(Iw(J)))}class f2 extends h{constructor($,J){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${$.type}\` in \`${n1(x8($.abiItem))}\`, and`,`\`${J.type}\` in \`${n1(x8(J.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class KQ extends h{constructor({name:$,data:J,type:Q="item"}){let X=(()=>{if($)return` with name "${$}"`;if(J)return` with data "${J}"`;return""})();super(`ABI ${Q}${X} not found.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}TQ();V8();z0();h$();V8();z0();h$();var v2=/^(.*)\[([0-9]*)\]$/,b2=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,i1=/^(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)?$/,jv=2n**(8n-1n)-1n,Iv=2n**(16n-1n)-1n,Tv=2n**(24n-1n)-1n,_v=2n**(32n-1n)-1n,Av=2n**(40n-1n)-1n,Pv=2n**(48n-1n)-1n,xv=2n**(56n-1n)-1n,kv=2n**(64n-1n)-1n,fv=2n**(72n-1n)-1n,yv=2n**(80n-1n)-1n,vv=2n**(88n-1n)-1n,bv=2n**(96n-1n)-1n,hv=2n**(104n-1n)-1n,gv=2n**(112n-1n)-1n,dv=2n**(120n-1n)-1n,mv=2n**(128n-1n)-1n,uv=2n**(136n-1n)-1n,pv=2n**(144n-1n)-1n,lv=2n**(152n-1n)-1n,cv=2n**(160n-1n)-1n,nv=2n**(168n-1n)-1n,ov=2n**(176n-1n)-1n,iv=2n**(184n-1n)-1n,sv=2n**(192n-1n)-1n,rv=2n**(200n-1n)-1n,tv=2n**(208n-1n)-1n,av=2n**(216n-1n)-1n,ev=2n**(224n-1n)-1n,$b=2n**(232n-1n)-1n,Jb=2n**(240n-1n)-1n,Qb=2n**(248n-1n)-1n,Xb=2n**(256n-1n)-1n,Yb=-(2n**(8n-1n)),Zb=-(2n**(16n-1n)),Wb=-(2n**(24n-1n)),Gb=-(2n**(32n-1n)),Kb=-(2n**(40n-1n)),qb=-(2n**(48n-1n)),Vb=-(2n**(56n-1n)),Mb=-(2n**(64n-1n)),Db=-(2n**(72n-1n)),Ub=-(2n**(80n-1n)),Nb=-(2n**(88n-1n)),wb=-(2n**(96n-1n)),zb=-(2n**(104n-1n)),Hb=-(2n**(112n-1n)),Ob=-(2n**(120n-1n)),Lb=-(2n**(128n-1n)),Cb=-(2n**(136n-1n)),Sb=-(2n**(144n-1n)),Rb=-(2n**(152n-1n)),Bb=-(2n**(160n-1n)),Fb=-(2n**(168n-1n)),Eb=-(2n**(176n-1n)),jb=-(2n**(184n-1n)),Ib=-(2n**(192n-1n)),Tb=-(2n**(200n-1n)),_b=-(2n**(208n-1n)),Ab=-(2n**(216n-1n)),Pb=-(2n**(224n-1n)),xb=-(2n**(232n-1n)),kb=-(2n**(240n-1n)),fb=-(2n**(248n-1n)),yb=-(2n**(256n-1n)),vb=2n**8n-1n,bb=2n**16n-1n,hb=2n**24n-1n,gb=2n**32n-1n,db=2n**40n-1n,mb=2n**48n-1n,ub=2n**56n-1n,pb=2n**64n-1n,lb=2n**72n-1n,cb=2n**80n-1n,nb=2n**88n-1n,ob=2n**96n-1n,ib=2n**104n-1n,sb=2n**112n-1n,rb=2n**120n-1n,tb=2n**128n-1n,ab=2n**136n-1n,eb=2n**144n-1n,$h=2n**152n-1n,Jh=2n**160n-1n,Qh=2n**168n-1n,Xh=2n**176n-1n,Yh=2n**184n-1n,Zh=2n**192n-1n,Wh=2n**200n-1n,Gh=2n**208n-1n,Kh=2n**216n-1n,qh=2n**224n-1n,Vh=2n**232n-1n,Mh=2n**240n-1n,Dh=2n**248n-1n,DW=2n**256n-1n;function qQ($,J,Q){let{checksumAddress:X,staticPosition:Y}=Q,Z=wW(J.type);if(Z){let[W,G]=Z;return _w($,{...J,type:G},{checksumAddress:X,length:W,staticPosition:Y})}if(J.type==="tuple")return kw($,J,{checksumAddress:X,staticPosition:Y});if(J.type==="address")return Tw($,{checksum:X});if(J.type==="bool")return Aw($);if(J.type.startsWith("bytes"))return Pw($,J,{staticPosition:Y});if(J.type.startsWith("uint")||J.type.startsWith("int"))return xw($,J);if(J.type==="string")return fw($,{staticPosition:Y});throw new nY(J.type)}var g2=32,UW=32;function Tw($,J={}){let{checksum:Q=!1}=J,X=$.readBytes(32);return[((Z)=>Q?u1(Z):Z)(B$(P6(X,-20))),32]}function _w($,J,Q){let{checksumAddress:X,length:Y,staticPosition:Z}=Q;if(!Y){let K=VJ($.readBytes(UW)),q=Z+K,V=q+g2;$.setPosition(q);let M=VJ($.readBytes(g2)),D=cY(J),U=0,z=[];for(let w=0;w<M;++w){$.setPosition(V+(D?w*32:U));let[L,O]=qQ($,J,{checksumAddress:X,staticPosition:V});U+=O,z.push(L)}return $.setPosition(Z+32),[z,32]}if(cY(J)){let K=VJ($.readBytes(UW)),q=Z+K,V=[];for(let M=0;M<Y;++M){$.setPosition(q+M*32);let[D]=qQ($,J,{checksumAddress:X,staticPosition:q});V.push(D)}return $.setPosition(Z+32),[V,32]}let W=0,G=[];for(let K=0;K<Y;++K){let[q,V]=qQ($,J,{checksumAddress:X,staticPosition:Z+W});W+=V,G.push(q)}return[G,W]}function Aw($){return[k6($.readBytes(32),{size:32}),32]}function Pw($,J,{staticPosition:Q}){let[X,Y]=J.type.split("bytes");if(!Y){let W=VJ($.readBytes(32));$.setPosition(Q+W);let G=VJ($.readBytes(32));if(G===0)return $.setPosition(Q+32),["0x",32];let K=$.readBytes(G);return $.setPosition(Q+32),[B$(K),32]}return[B$($.readBytes(Number.parseInt(Y,10),32)),32]}function xw($,J){let Q=J.type.startsWith("int"),X=Number.parseInt(J.type.split("int")[1]||"256",10),Y=$.readBytes(32);return[X>48?x6(Y,{signed:Q}):VJ(Y,{signed:Q}),32]}function kw($,J,Q){let{checksumAddress:X,staticPosition:Y}=Q,Z=J.components.length===0||J.components.some(({name:K})=>!K),W=Z?[]:{},G=0;if(cY(J)){let K=VJ($.readBytes(UW)),q=Y+K;for(let V=0;V<J.components.length;++V){let M=J.components[V];$.setPosition(q+G);let[D,U]=qQ($,M,{checksumAddress:X,staticPosition:q});G+=U,W[Z?V:M?.name]=D}return $.setPosition(Y+32),[W,32]}for(let K=0;K<J.components.length;++K){let q=J.components[K],[V,M]=qQ($,q,{checksumAddress:X,staticPosition:Y});W[Z?K:q?.name]=V,G+=M}return[W,G]}function fw($,{staticPosition:J}){let Q=VJ($.readBytes(32)),X=J+Q;$.setPosition(X);let Y=VJ($.readBytes(32));if(Y===0)return $.setPosition(J+32),["",32];let Z=$.readBytes(Y,32),W=f6(G7(Z));return $.setPosition(J+32),[W,32]}function d2({checksumAddress:$,parameters:J,values:Q}){let X=[];for(let Y=0;Y<J.length;Y++)X.push(NW({checksumAddress:$,parameter:J[Y],value:Q[Y]}));return X}function NW({checksumAddress:$=!1,parameter:J,value:Q}){let X=J,Y=wW(X.type);if(Y){let[Z,W]=Y;return vw(Q,{checksumAddress:$,length:Z,parameter:{...X,type:W}})}if(X.type==="tuple")return mw(Q,{checksumAddress:$,parameter:X});if(X.type==="address")return yw(Q,{checksum:$});if(X.type==="bool")return hw(Q);if(X.type.startsWith("uint")||X.type.startsWith("int")){let Z=X.type.startsWith("int"),[,,W="256"]=i1.exec(X.type)??[];return gw(Q,{signed:Z,size:Number(W)})}if(X.type.startsWith("bytes"))return bw(Q,{type:X.type});if(X.type==="string")return dw(Q);throw new nY(X.type)}function s1($){let J=0;for(let Z=0;Z<$.length;Z++){let{dynamic:W,encoded:G}=$[Z];if(W)J+=32;else J+=V$(G)}let Q=[],X=[],Y=0;for(let Z=0;Z<$.length;Z++){let{dynamic:W,encoded:G}=$[Z];if(W)Q.push(a(J+Y,{size:32})),X.push(G),Y+=V$(G);else Q.push(G)}return z$(...Q,...X)}function yw($,J){let{checksum:Q=!1}=J;return GQ($,{strict:Q}),{dynamic:!1,encoded:pJ($.toLowerCase())}}function vw($,J){let{checksumAddress:Q,length:X,parameter:Y}=J,Z=X===null;if(!Array.isArray($))throw new HW($);if(!Z&&$.length!==X)throw new zW({expectedLength:X,givenLength:$.length,type:`${Y.type}[${X}]`});let W=!1,G=[];for(let K=0;K<$.length;K++){let q=NW({checksumAddress:Q,parameter:Y,value:$[K]});if(q.dynamic)W=!0;G.push(q)}if(Z||W){let K=s1(G);if(Z){let q=a(G.length,{size:32});return{dynamic:!0,encoded:G.length>0?z$(q,K):q}}if(W)return{dynamic:!0,encoded:K}}return{dynamic:!1,encoded:z$(...G.map(({encoded:K})=>K))}}function bw($,{type:J}){let[,Q]=J.split("bytes"),X=V$($);if(!Q){let Y=$;if(X%32!==0)Y=MJ(Y,Math.ceil(($.length-2)/2/32)*32);return{dynamic:!0,encoded:z$(pJ(a(X,{size:32})),Y)}}if(X!==Number.parseInt(Q,10))throw new r1({expectedSize:Number.parseInt(Q,10),value:$});return{dynamic:!1,encoded:MJ($)}}function hw($){if(typeof $!=="boolean")throw new h(`Invalid boolean value: "${$}" (type: ${typeof $}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:pJ(D1($))}}function gw($,{signed:J,size:Q}){if(typeof Q==="number"){let X=2n**(BigInt(Q)-(J?1n:0n))-1n,Y=J?-X-1n:0n;if($>X||$<Y)throw new U1({max:X.toString(),min:Y.toString(),signed:J,size:Q/8,value:$.toString()})}return{dynamic:!1,encoded:a($,{size:32,signed:J})}}function dw($){let J=DX($),Q=Math.ceil(V$(J)/32),X=[];for(let Y=0;Y<Q;Y++)X.push(MJ(M$(J,Y*32,(Y+1)*32)));return{dynamic:!0,encoded:z$(MJ(a(V$(J),{size:32})),...X)}}function mw($,J){let{checksumAddress:Q,parameter:X}=J,Y=!1,Z=[];for(let W=0;W<X.components.length;W++){let G=X.components[W],K=Array.isArray($)?W:G.name,q=NW({checksumAddress:Q,parameter:G,value:$[K]});if(Z.push(q),q.dynamic)Y=!0}return{dynamic:Y,encoded:Y?s1(Z):z$(...Z.map(({encoded:W})=>W))}}function wW($){let J=$.match(/^(.*)\[(\d+)?\]$/);return J?[J[2]?Number(J[2]):null,J[1]]:void 0}function cY($){let{type:J}=$;if(J==="string")return!0;if(J==="bytes")return!0;if(J.endsWith("[]"))return!0;if(J==="tuple")return $.components?.some(cY);let Q=wW($.type);if(Q&&cY({...$,type:Q[1]}))return!0;return!1}z0();var pw={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 u2({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition($){if($<0||$>this.bytes.length-1)throw new m2({length:this.bytes.length,position:$})},decrementPosition($){if($<0)throw new OW({offset:$});let J=this.position-$;this.assertPosition(J),this.position=J},getReadCount($){return this.positionReadCount.get($||this.position)||0},incrementPosition($){if($<0)throw new OW({offset:$});let J=this.position+$;this.assertPosition(J),this.position=J},inspectByte($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectBytes($,J){let Q=J??this.position;return this.assertPosition(Q+$-1),this.bytes.subarray(Q,Q+$)},inspectUint8($){let J=$??this.position;return this.assertPosition(J),this.bytes[J]},inspectUint16($){let J=$??this.position;return this.assertPosition(J+1),this.dataView.getUint16(J)},inspectUint24($){let J=$??this.position;return this.assertPosition(J+2),(this.dataView.getUint16(J)<<8)+this.dataView.getUint8(J+2)},inspectUint32($){let J=$??this.position;return this.assertPosition(J+3),this.dataView.getUint32(J)},pushByte($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushBytes($){this.assertPosition(this.position+$.length-1),this.bytes.set($,this.position),this.position+=$.length},pushUint8($){this.assertPosition(this.position),this.bytes[this.position]=$,this.position++},pushUint16($){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,$),this.position+=2},pushUint24($){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,$>>8),this.dataView.setUint8(this.position+2,$&255),this.position+=3},pushUint32($){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,$),this.position+=4},readByte(){this.assertReadLimit(),this._touch();let $=this.inspectByte();return this.position++,$},readBytes($,J){this.assertReadLimit(),this._touch();let Q=this.inspectBytes($);return this.position+=J??$,Q},readUint8(){this.assertReadLimit(),this._touch();let $=this.inspectUint8();return this.position+=1,$},readUint16(){this.assertReadLimit(),this._touch();let $=this.inspectUint16();return this.position+=2,$},readUint24(){this.assertReadLimit(),this._touch();let $=this.inspectUint24();return this.position+=3,$},readUint32(){this.assertReadLimit(),this._touch();let $=this.inspectUint32();return this.position+=4,$},get remaining(){return this.bytes.length-this.position},setPosition($){let J=this.position;return this.assertPosition($),this.position=$,()=>this.position=J},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;let $=this.getReadCount();if(this.positionReadCount.set(this.position,$+1),$>0)this.recursiveReadCount++}};function t1($,{recursiveReadLimit:J=8192}={}){let Q=Object.create(pw);return Q.bytes=$,Q.dataView=new DataView($.buffer,$.byteOffset,$.byteLength),Q.positionReadCount=new Map,Q.recursiveReadLimit=J,Q}class OW extends h{constructor({offset:$}){super(`Offset \`${$}\` cannot be negative.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class m2 extends h{constructor({length:$,position:J}){super(`Position \`${J}\` is out of bounds (\`0 < position < ${$}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class u2 extends h{constructor({count:$,limit:J}){super(`Recursive read limit of \`${J}\` exceeded (recursive read count: \`${$}\`).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}function AX($,J,Q={}){let{as:X="Array",checksumAddress:Y=!1}=Q,Z=typeof J==="string"?VX(J):J,W=t1(Z);if(P0(Z)===0&&$.length>0)throw new c2;if(P0(Z)&&P0(Z)<32)throw new l2({data:typeof J==="string"?J:B$(J),parameters:$,size:P0(Z)});let G=0,K=X==="Array"?[]:{};for(let q=0;q<$.length;++q){let V=$[q];W.setPosition(G);let[M,D]=qQ(W,V,{checksumAddress:Y,staticPosition:0});if(G+=D,X==="Array")K.push(M);else K[V.name??q]=M}return K}function S8($,J,Q){let{checksumAddress:X=!1}=Q??{};if($.length!==J.length)throw new CW({expectedLength:$.length,givenLength:J.length});let Y=d2({checksumAddress:X,parameters:$,values:J}),Z=s1(Y);if(Z.length===0)return"0x";return Z}function LW($,J){if($.length!==J.length)throw new CW({expectedLength:$.length,givenLength:J.length});let Q=[];for(let X=0;X<$.length;X++){let Y=$[X],Z=J[X];Q.push(LW.encode(Y,Z))}return z$(...Q)}(function($){function J(Q,X,Y=!1){if(Q==="address"){let K=X;return GQ(K),pJ(K.toLowerCase(),Y?32:0)}if(Q==="string")return DX(X);if(Q==="bytes")return X;if(Q==="bool")return pJ(D1(X),Y?32:1);let Z=Q.match(i1);if(Z){let[K,q,V="256"]=Z,M=Number.parseInt(V,10)/8;return a(X,{size:Y?32:M,signed:q==="int"})}let W=Q.match(b2);if(W){let[K,q]=W;if(Number.parseInt(q,10)!==(X.length-2)/2)throw new r1({expectedSize:Number.parseInt(q,10),value:X});return MJ(X,Y?32:0)}let G=Q.match(v2);if(G&&Array.isArray(X)){let[K,q]=G,V=[];for(let M=0;M<X.length;M++)V.push(J(q,X[M],!0));if(V.length===0)return"0x";return z$(...V)}throw new nY(Q)}$.encode=J})(LW||(LW={}));function iY($){if(Array.isArray($)&&typeof $[0]==="string")return c$($);if(typeof $==="string")return c$($);return $}class l2 extends h{constructor({data:$,parameters:J,size:Q}){super(`Data size of ${Q} bytes is too small for given parameters.`,{metaMessages:[`Params: (${FJ(J)})`,`Data: ${$} (${Q} bytes)`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class c2 extends h{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.');Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class zW extends h{constructor({expectedLength:$,givenLength:J,type:Q}){super(`Array length mismatch for type \`${Q}\`. Expected: \`${$}\`. Given: \`${J}\`.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class r1 extends h{constructor({expectedSize:$,value:J}){super(`Size of bytes "${J}" (bytes${V$(J)}) does not match expected size (bytes${$}).`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class CW extends h{constructor({expectedLength:$,givenLength:J}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${$}`,`Given length (values): ${J}`].join(`
65
+ `));Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class HW extends h{constructor($){super(`Value \`${$}\` is not a valid array.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class nY extends h{constructor($){super(`Type \`${$}\` is not a valid ABI Type.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}h$();function n2(...$){let[J,Q]=(()=>{if(Array.isArray($[0])){let[Z,W]=$;return[lw(Z),W]}return $})(),{bytecode:X,args:Y}=Q;return z$(X,J.inputs?.length&&Y?.length?S8(J.inputs,Y):"0x")}function o2($){return o1($)}function lw($){let J=$.find((Q)=>Q.type==="constructor");if(!J)throw new KQ({name:"constructor"});return J}h$();function s2(...$){let[J,Q=[]]=(()=>{if(Array.isArray($[0])){let[q,V,M]=$;return[i2(q,V,{args:M}),M]}let[G,K]=$;return[G,K]})(),{overloads:X}=J,Y=X?i2([J,...X],J.name,{args:Q}):J,Z=nw(Y),W=Q.length>0?S8(Y.inputs,Q):void 0;return W?z$(Z,W):Z}function VQ($,J={}){return o1($,J)}function i2($,J,Q){let X=lY($,J,Q);if(X.type!=="function")throw new KQ({name:J,type:"function"});return X}function nw($){return MW($)}var r2="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",n0="0x0000000000000000000000000000000000000000";l();N0();var iw="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function t2($,J){let{blockNumber:Q,blockTag:X,calls:Y,stateOverrides:Z,traceAssetChanges:W,traceTransfers:G,validation:K}=J,q=J.account?p(J.account):void 0;if(W&&!q)throw new R("`account` is required when `traceAssetChanges` is true");let V=q?n2(o2("constructor(bytes, bytes)"),{bytecode:w1,args:[iw,s2(VQ("function getBalance(address)"),[q.address])]}):void 0,M=W?await Promise.all(J.calls.map(async(k)=>{if(!k.data&&!k.abi)return;let{accessList:v}=await B1($,{account:q.address,...k,data:k.abi?K$(k):k.data});return v.map(({address:u,storageKeys:X$})=>X$.length>0?u:null)})).then((k)=>k.flat().filter(Boolean)):[],D=await pY($,{blockNumber:Q,blockTag:X,blocks:[...W?[{calls:[{data:V}],stateOverrides:Z},{calls:M.map((k,v)=>({abi:[VQ("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[q.address],to:k,from:n0,nonce:v})),stateOverrides:[{address:n0,nonce:0}]}]:[],{calls:[...Y,{}].map((k)=>({...k,from:q?.address})),stateOverrides:Z},...W?[{calls:[{data:V}]},{calls:M.map((k,v)=>({abi:[VQ("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[q.address],to:k,from:n0,nonce:v})),stateOverrides:[{address:n0,nonce:0}]},{calls:M.map((k,v)=>({to:k,abi:[VQ("function decimals() returns (uint256)")],functionName:"decimals",from:n0,nonce:v})),stateOverrides:[{address:n0,nonce:0}]},{calls:M.map((k,v)=>({to:k,abi:[VQ("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:n0,nonce:v})),stateOverrides:[{address:n0,nonce:0}]},{calls:M.map((k,v)=>({to:k,abi:[VQ("function symbol() returns (string)")],functionName:"symbol",from:n0,nonce:v})),stateOverrides:[{address:n0,nonce:0}]}]:[]],traceTransfers:G,validation:K}),U=W?D[2]:D[0],[z,w,,L,O,C,N,H]=W?D:[],{calls:S,...B}=U,F=S.slice(0,-1)??[],I=z?.calls??[],P=w?.calls??[],j=[...I,...P].map((k)=>k.status==="success"?Z$(k.data):null),y=L?.calls??[],x=O?.calls??[],b=[...y,...x].map((k)=>k.status==="success"?Z$(k.data):null),g=(C?.calls??[]).map((k)=>k.status==="success"?k.result:null),T=(H?.calls??[]).map((k)=>k.status==="success"?k.result:null),f=(N?.calls??[]).map((k)=>k.status==="success"?k.result:null),d=[];for(let[k,v]of b.entries()){let u=j[k];if(typeof v!=="bigint")continue;if(typeof u!=="bigint")continue;let X$=g[k-1],c=T[k-1],I$=f[k-1],O$=(()=>{if(k===0)return{address:r2,decimals:18,symbol:"ETH"};return{address:M[k-1],decimals:I$||X$?Number(X$??1):void 0,symbol:c??void 0}})();if(d.some((T$)=>T$.token.address===O$.address))continue;d.push({token:O$,value:{pre:u,post:v,diff:v-u}})}return{assetChanges:d,block:B,results:F}}kJ();N0();e8();async function a2($,J){let{abi:Q,address:X,args:Y,functionName:Z,dataSuffix:W=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,...G}=J,K=G.account?p(G.account):$.account,q=K$({abi:Q,args:Y,functionName:Z});try{let{data:V}=await A($,f0,"call")({batch:!1,data:`${q}${W?W.replace("0x",""):""}`,to:X,...G,account:K}),M=n$({abi:Q,args:Y,functionName:Z,data:V||"0x"}),D=Q.filter((U)=>("name"in U)&&U.name===J.functionName);return{result:M,request:{abi:D,address:X,args:Y,dataSuffix:W,functionName:Z,...G,account:K}}}catch(V){throw R0(V,{abi:Q,address:X,args:Y,docsPath:"/docs/contract/simulateContract",functionName:Z,sender:K?.address})}}async function R8($,{filter:J}){return J.request({method:"eth_uninstallFilter",params:[J.id]})}var sY={};Y9(sY,{wrap:()=>aw,validate:()=>ew,unwrap:()=>e2,universalSignatureValidatorBytecode:()=>sw,universalSignatureValidatorAbi:()=>rw,magicBytes:()=>SW,from:()=>tw,assert:()=>RW,InvalidWrappedSignatureError:()=>BW});z0();h$();var SW="0x6492649264926492649264926492649264926492649264926492649264926492",sw="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",rw=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}];function RW($){if(M$($,-32)!==SW)throw new BW($)}function tw($){if(typeof $==="string")return e2($);return $}function e2($){RW($);let[J,Q,X]=AX(iY("address, bytes, bytes"),$);return{data:Q,signature:X,to:J}}function aw($){let{data:J,signature:Q,to:X}=$;return z$(S8(iY("address, bytes, bytes"),[X,J,Q]),SW)}function ew($){try{return RW($),!0}catch{return!1}}class BW extends h{constructor($){super(`Value \`${$}\` is an invalid ERC-6492 wrapped signature.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc6492.InvalidWrappedSignatureError"})}}var rY={};Y9(rY,{wrap:()=>Nz,validate:()=>wz,unwrap:()=>Uq,suffixParameters:()=>_W,magicBytes:()=>TW,from:()=>Uz,assert:()=>$5,InvalidWrappedSignatureError:()=>AW});h$();V8();z0();h$();function $z($,J){let{as:Q}=J,X=Jq($),Y=t1(new Uint8Array(X.length));if(X.encode(Y),Q==="Hex")return B$(Y.bytes);return Y.bytes}function $q($,J={}){let{as:Q="Hex"}=J;return $z($,{as:Q})}function Jq($){if(Array.isArray($))return Jz($.map((J)=>Jq(J)));return Qz($)}function Jz($){let J=$.reduce((Y,Z)=>Y+Z.length,0),Q=Qq(J);return{length:(()=>{if(J<=55)return 1+J;return 1+Q+J})(),encode(Y){if(J<=55)Y.pushByte(192+J);else if(Y.pushByte(247+Q),Q===1)Y.pushUint8(J);else if(Q===2)Y.pushUint16(J);else if(Q===3)Y.pushUint24(J);else Y.pushUint32(J);for(let{encode:Z}of $)Z(Y)}}}function Qz($){let J=typeof $==="string"?VX($):$,Q=Qq(J.length);return{length:(()=>{if(J.length===1&&J[0]<128)return 1;if(J.length<=55)return 1+J.length;return 1+Q+J.length})(),encode(Y){if(J.length===1&&J[0]<128)Y.pushBytes(J);else if(J.length<=55)Y.pushByte(128+J.length),Y.pushBytes(J);else{if(Y.pushByte(183+Q),Q===1)Y.pushUint8(J.length);else if(Q===2)Y.pushUint16(J.length);else if(Q===3)Y.pushUint24(J.length);else Y.pushUint32(J.length);Y.pushBytes(J)}}}}function Qq($){if($<=255)return 1;if($<=65535)return 2;if($<=16777215)return 3;if($<=4294967295)return 4;throw new h("Length is too large.")}z0();h$();function FW($,J={}){let{recovered:Q}=J;if(typeof $.r>"u")throw new a1({signature:$});if(typeof $.s>"u")throw new a1({signature:$});if(Q&&typeof $.yParity>"u")throw new a1({signature:$});if($.r<0n||$.r>DW)throw new Wq({value:$.r});if($.s<0n||$.s>DW)throw new Gq({value:$.s});if(typeof $.yParity==="number"&&$.yParity!==0&&$.yParity!==1)throw new e1({value:$.yParity})}function Yz($){return Xq(B$($))}function Xq($){if($.length!==130&&$.length!==132)throw new Zq({signature:$});let J=BigInt(M$($,0,32)),Q=BigInt(M$($,32,64)),X=(()=>{let Y=Number(`0x${$.slice(130)}`);if(Number.isNaN(Y))return;try{return IW(Y)}catch{throw new e1({value:Y})}})();if(typeof X>"u")return{r:J,s:Q};return{r:J,s:Q,yParity:X}}function EW($){if(typeof $.r>"u")return;if(typeof $.s>"u")return;return jW($)}function jW($){let J=(()=>{if(typeof $==="string")return Xq($);if($ instanceof Uint8Array)return Yz($);if(typeof $.r==="string")return Wz($);if($.v)return Zz($);return{r:$.r,s:$.s,...typeof $.yParity<"u"?{yParity:$.yParity}:{}}})();return FW(J),J}function Zz($){return{r:$.r,s:$.s,yParity:IW($.v)}}function Wz($){let J=(()=>{let Q=$.v?Number($.v):void 0,X=$.yParity?Number($.yParity):void 0;if(typeof Q==="number"&&typeof X!=="number")X=IW(Q);if(typeof X!=="number")throw new e1({value:$.yParity});return X})();return{r:BigInt($.r),s:BigInt($.s),yParity:J}}function Yq($){let{r:J,s:Q,yParity:X}=$;return[X?"0x01":"0x",J===0n?"0x":M7(a(J)),Q===0n?"0x":M7(a(Q))]}function IW($){if($===0||$===27)return 0;if($===1||$===28)return 1;if($>=35)return $%2===0?1:0;throw new Kq({value:$})}class Zq extends h{constructor({signature:$}){super(`Value \`${$}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${V$(MX($))} bytes.`]});Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class a1 extends h{constructor({signature:$}){super(`Signature \`${M8($)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class Wq extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid r value. r must be a positive integer less than 2^256.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class Gq extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid s value. s must be a positive integer less than 2^256.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class e1 extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid y-parity value. Y-parity must be 0 or 1.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class Kq extends h{constructor({value:$}){super(`Value \`${$}\` is an invalid v value. v must be 27, 28 or >=35.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}function Vq($,J={}){if(typeof $.chainId==="string")return Gz($);return{...$,...J.signature}}function Gz($){let{address:J,chainId:Q,nonce:X}=$,Y=EW($);return{address:J,chainId:Number(Q),nonce:BigInt(X),...Y}}function Mq($){return Kz($,{presign:!0})}function Kz($,J={}){let{presign:Q}=J;return WQ(z$("0x05",$q(qz(Q?{address:$.address,chainId:$.chainId,nonce:$.nonce}:$))))}function qz($){let{address:J,chainId:Q,nonce:X}=$,Y=EW($);return[Q?a(Q):"0x",J,X?a(X):"0x",...Y?Yq(Y):[]]}z0();h$();XQ();h$();function Dq($){return P2(Mz($))}function Mz($){let{payload:J,signature:Q}=$,{r:X,s:Y,yParity:Z}=Q,G=new X0.Signature(BigInt(X),BigInt(Y)).addRecoveryBit(Z).recoverPublicKey(MX(J).substring(2));return F2(G)}var TW="0x8010801080108010801080108010801080108010801080108010801080108010",_W=iY("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function $5($){if(typeof $==="string"){if(M$($,-32)!==TW)throw new AW($)}else FW($.authorization)}function Uz($){if(typeof $==="string")return Uq($);return $}function Uq($){$5($);let J=M1(M$($,-64,-32)),Q=M$($,-J-64,-64),X=M$($,0,-J-64),[Y,Z,W]=AX(_W,Q);return{authorization:Vq({address:Y.delegation,chainId:Number(Y.chainId),nonce:Y.nonce,yParity:Y.yParity,r:Y.r,s:Y.s}),signature:X,...W&&W!=="0x"?{data:W,to:Z}:{}}}function Nz($){let{data:J,signature:Q}=$;$5($);let X=Dq({payload:Mq($.authorization),signature:jW($.authorization)}),Y=S8(_W,[{...$.authorization,delegation:$.authorization.address,chainId:BigInt($.authorization.chainId)},$.to??X,J??"0x"]),Z=a(V$(Y),{size:32});return z$(Q,Y,Z,TW)}function wz($){try{return $5($),!0}catch{return!1}}class AW extends h{constructor($){super(`Value \`${$}\` is an invalid ERC-8010 wrapped signature.`);Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc8010.InvalidWrappedSignatureError"})}}EJ();Y8();z1();N0();ZJ();a8();ZJ();a8();async function Nq({address:$,authorization:J,signature:Q}){return k0(M0($),await O8({authorization:J,signature:Q}))}P$();m();XQ();P$();k$();function J5({r:$,s:J,to:Q="hex",v:X,yParity:Y}){let Z=(()=>{if(Y===0||Y===1)return Y;if(X&&(X===27n||X===28n||X>=35n))return X%2n===0n?1:0;throw Error("Invalid `v` or `yParity` value")})(),W=`0x${new X0.Signature(Z$($),Z$(J)).toCompactHex()}${Z===0?"1b":"1c"}`;if(Q==="hex")return W;return x$(W)}e8();async function F8($,J){let{address:Q,chain:X=$.chain,hash:Y,erc6492VerifierAddress:Z=J.universalSignatureVerifierAddress??X?.contracts?.erc6492Verifier?.address,multicallAddress:W=J.multicallAddress??X?.contracts?.multicall3?.address}=J;if(X?.verifyHash)return await X.verifyHash($,J);let G=(()=>{let K=J.signature;if(U$(K))return K;if(typeof K==="object"&&"r"in K&&"s"in K)return J5(K);return i(K)})();try{if(rY.validate(G))return await zz($,{...J,multicallAddress:W,signature:G});return await Hz($,{...J,verifierAddress:Z,signature:G})}catch(K){try{if(k0(M0(Q),await k1({hash:Y,signature:G})))return!0}catch{}if(K instanceof B8)return!1;throw K}}async function zz($,J){let{address:Q,blockNumber:X,blockTag:Y,hash:Z,multicallAddress:W}=J,{authorization:G,data:K,signature:q,to:V}=rY.unwrap(J.signature);if(await mY($,{address:Q,blockNumber:X,blockTag:Y})===R$(["0xef0100",G.address]))return await Oz($,{address:Q,blockNumber:X,blockTag:Y,hash:Z,signature:q});let D={address:G.address,chainId:Number(G.chainId),nonce:Number(G.nonce),r:E(G.r,{size:32}),s:E(G.s,{size:32}),yParity:G.yParity};if(!await Nq({address:Q,authorization:D}))throw new B8;let z=await A($,j$,"readContract")({...W?{address:W}:{code:UX},authorizationList:[D],abi:$J,blockNumber:X,blockTag:"pending",functionName:"aggregate3",args:[[...K?[{allowFailure:!0,target:V??Q,callData:K}]:[],{allowFailure:!0,target:Q,callData:K$({abi:o5,functionName:"isValidSignature",args:[Z,q]})}]]});if(z[z.length-1]?.returnData?.startsWith("0x1626ba7e"))return!0;throw new B8}async function Hz($,J){let{address:Q,factory:X,factoryData:Y,hash:Z,signature:W,verifierAddress:G,...K}=J,q=await(async()=>{if(!X&&!Y)return W;if(sY.validate(W))return W;return sY.wrap({data:Y,signature:W,to:X})})(),V=G?{to:G,data:K$({abi:i5,functionName:"isValidSig",args:[Q,Z,q]}),...K}:{data:t8({abi:i5,args:[Q,Z,q],bytecode:u6}),...K},{data:M}=await A($,f0,"call")(V).catch((D)=>{if(D instanceof MY)throw new B8;throw D});if(DZ(M??"0x0"))return!0;throw new B8}async function Oz($,J){let{address:Q,blockNumber:X,blockTag:Y,hash:Z,signature:W}=J;if((await A($,j$,"readContract")({address:Q,abi:o5,args:[Z,W],blockNumber:X,blockTag:Y,functionName:"isValidSignature"}).catch((K)=>{if(K instanceof DY)throw new B8;throw K})).startsWith("0x1626ba7e"))return!0;throw new B8}class B8 extends Error{}q0();var wq=`\x19Ethereum Signed Message:
66
+ `;j0();m();function zq($){let J=(()=>{if(typeof $==="string")return K0($);if(typeof $.raw==="string")return $.raw;return i($.raw)})(),Q=K0(`${wq}${r(J)}`);return Q$([Q,J])}function PX($,J){return n(zq($),J)}async function Hq($,{address:J,message:Q,factory:X,factoryData:Y,signature:Z,...W}){let G=PX(Q);return A($,F8,"verifyHash")({address:J,factory:X,factoryData:Y,hash:G,signature:Z,...W})}GJ();m();q0();S$();I0();l();class PW extends R{constructor({domain:$}){super(`Invalid domain "${o($)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class xW extends R{constructor({primaryType:$,types:J}){super(`Invalid primary type \`${$}\` must be one of \`${JSON.stringify(Object.keys(J))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class kW extends R{constructor({type:$}){super(`Struct type "${$}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}V0();j0();m();s9();function Oq($){let{domain:J,message:Q,primaryType:X,types:Y}=$,Z=(K,q)=>{let V={...q};for(let M of K){let{name:D,type:U}=M;if(U==="address")V[D]=V[D].toLowerCase()}return V},W=(()=>{if(!Y.EIP712Domain)return{};if(!J)return{};return Z(Y.EIP712Domain,J)})(),G=(()=>{if(X==="EIP712Domain")return;return Z(Y[X],Q)})();return o({domain:W,message:G,primaryType:X,types:Y})}function Q5($){let{domain:J,message:Q,primaryType:X,types:Y}=$,Z=(W,G)=>{for(let K of W){let{name:q,type:V}=K,M=G[q],D=V.match(PQ);if(D&&(typeof M==="number"||typeof M==="bigint")){let[w,L,O]=D;E(M,{signed:L==="int",size:Number.parseInt(O,10)/8})}if(V==="address"&&typeof M==="string"&&!s(M))throw new Y$({address:M});let U=V.match(i9);if(U){let[w,L]=U;if(L&&r(M)!==Number.parseInt(L,10))throw new eX({expectedSize:Number.parseInt(L,10),givenSize:r(M)})}let z=Y[V];if(z)Lz(V),Z(z,M)}};if(Y.EIP712Domain&&J){if(typeof J!=="object")throw new PW({domain:J});Z(Y.EIP712Domain,J)}if(X!=="EIP712Domain")if(Y[X])Z(Y[X],Q);else throw new xW({primaryType:X,types:Y})}function X5({domain:$}){return[typeof $?.name==="string"&&{name:"name",type:"string"},$?.version&&{name:"version",type:"string"},(typeof $?.chainId==="number"||typeof $?.chainId==="bigint")&&{name:"chainId",type:"uint256"},$?.verifyingContract&&{name:"verifyingContract",type:"address"},$?.salt&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Lz($){if($==="address"||$==="bool"||$==="string"||$.startsWith("bytes")||$.startsWith("uint")||$.startsWith("int"))throw new kW({type:$})}function Y5($){let{domain:J={},message:Q,primaryType:X}=$,Y={EIP712Domain:X5({domain:J}),...$.types};Q5({domain:J,message:Q,primaryType:X,types:Y});let Z=["0x1901"];if(J)Z.push(Cz({domain:J,types:Y}));if(X!=="EIP712Domain")Z.push(Lq({data:Q,primaryType:X,types:Y}));return n(Q$(Z))}function Cz({domain:$,types:J}){return Lq({data:$,primaryType:"EIP712Domain",types:J})}function Lq({data:$,primaryType:J,types:Q}){let X=Cq({data:$,primaryType:J,types:Q});return n(X)}function Cq({data:$,primaryType:J,types:Q}){let X=[{type:"bytes32"}],Y=[Sz({primaryType:J,types:Q})];for(let Z of Q[J]){let[W,G]=Rq({types:Q,name:Z.name,type:Z.type,value:$[Z.name]});X.push(W),Y.push(G)}return G$(X,Y)}function Sz({primaryType:$,types:J}){let Q=t(Rz({primaryType:$,types:J}));return n(Q)}function Rz({primaryType:$,types:J}){let Q="",X=Sq({primaryType:$,types:J});X.delete($);let Y=[$,...Array.from(X).sort()];for(let Z of Y)Q+=`${Z}(${J[Z].map(({name:W,type:G})=>`${G} ${W}`).join(",")})`;return Q}function Sq({primaryType:$,types:J},Q=new Set){let Y=$.match(/^\w*/u)?.[0];if(Q.has(Y)||J[Y]===void 0)return Q;Q.add(Y);for(let Z of J[Y])Sq({primaryType:Z.type,types:J},Q);return Q}function Rq({types:$,name:J,type:Q,value:X}){if($[Q]!==void 0)return[{type:"bytes32"},n(Cq({data:X,primaryType:Q,types:$}))];if(Q==="bytes")return[{type:"bytes32"},n(X)];if(Q==="string")return[{type:"bytes32"},n(t(X))];if(Q.lastIndexOf("]")===Q.length-1){let Y=Q.slice(0,Q.lastIndexOf("[")),Z=X.map((W)=>Rq({name:J,type:Y,types:$,value:W}));return[{type:"bytes32"},n(G$(Z.map(([W])=>W),Z.map(([,W])=>W)))]}return[{type:Q},X]}async function Bq($,J){let{address:Q,factory:X,factoryData:Y,signature:Z,message:W,primaryType:G,types:K,domain:q,...V}=J,M=Y5({message:W,primaryType:G,types:K,domain:q});return A($,F8,"verifyHash")({address:Q,factory:X,factoryData:Y,hash:M,signature:Z,...V})}_0();var fW=new Map,Fq=new Map,Bz=0;function t$($,J,Q){let X=++Bz,Y=()=>fW.get($)||[],Z=()=>{let V=Y();fW.set($,V.filter((M)=>M.id!==X))},W=()=>{let V=Y();if(!V.some((D)=>D.id===X))return;let M=Fq.get($);if(V.length===1&&M){let D=M();if(D instanceof Promise)D.catch(()=>{})}Z()},G=Y();if(fW.set($,[...G,{id:X,fns:J}]),G&&G.length>0)return W;let K={};for(let V in J)K[V]=(...M)=>{let D=Y();if(D.length===0)return;for(let U of D)U.fns[V]?.(...M)};let q=Q(K);if(typeof q==="function")Fq.set($,q);return W}async function MQ($){return new Promise((J)=>setTimeout(J,$))}function DQ($,{delay:J=100,retryCount:Q=2,shouldRetry:X=()=>!0}={}){return new Promise((Y,Z)=>{let W=async({count:G=0}={})=>{let K=async({error:q})=>{let V=typeof J==="function"?J({count:G,error:q}):J;if(V)await MQ(V);W({count:G+1})};try{let q=await $();Y(q)}catch(q){if(G<Q&&await X({count:G,error:q}))return K({error:q});Z(q)}};W()})}P$();function y0($,{emitOnBegin:J,initialWaitTime:Q,interval:X}){let Y=!0,Z=()=>Y=!1;return(async()=>{let G;if(J)G=await $({unpoll:Z});let K=await Q?.(G)??X;await MQ(K);let q=async()=>{if(!Y)return;await $({unpoll:Z}),await MQ(X),q()};q()})(),Z}function Z5($,{emitOnBegin:J=!1,emitMissed:Q=!1,onBlockNumber:X,onError:Y,poll:Z,pollingInterval:W=$.pollingInterval}){let G=(()=>{if(typeof Z<"u")return Z;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})(),K;return G?(()=>{let M=o(["watchBlockNumber",$.uid,J,Q,W]);return t$(M,{onBlockNumber:X,onError:Y},(D)=>y0(async()=>{try{let U=await A($,zJ,"getBlockNumber")({cacheTime:0});if(K!==void 0){if(U===K)return;if(U-K>1&&Q)for(let z=K+1n;z<U;z++)D.onBlockNumber(z,K),K=z}if(K===void 0||U>K)D.onBlockNumber(U,K),K=U}catch(U){D.onError?.(U)}},{emitOnBegin:J,interval:W}))})():(()=>{let M=o(["watchBlockNumber",$.uid,J,Q]);return t$(M,{onBlockNumber:X,onError:Y},(D)=>{let U=!0,z=()=>U=!1;return(async()=>{try{let w=(()=>{if($.transport.type==="fallback"){let O=$.transport.transports.find((C)=>C.config.type==="webSocket"||C.config.type==="ipc");if(!O)return $.transport;return O.value}return $.transport})(),{unsubscribe:L}=await w.subscribe({params:["newHeads"],onData(O){if(!U)return;let C=Z$(O.result?.number);D.onBlockNumber(C,K),K=C},onError(O){D.onError?.(O)}});if(z=L,!U)z()}catch(w){Y?.(w)}})(),()=>z()})})()}async function W5($,J){let{checkReplacement:Q=!0,confirmations:X=1,hash:Y,onReplaced:Z,retryCount:W=6,retryDelay:G=({count:S})=>~~(1<<S)*200,timeout:K=180000}=J,q=o(["waitForTransactionReceipt",$.uid,Y]),V=(()=>{if(J.pollingInterval)return J.pollingInterval;if($.chain?.experimental_preconfirmationTime)return $.chain.experimental_preconfirmationTime;return $.pollingInterval})(),M,D,U,z=!1,w,L,{promise:O,resolve:C,reject:N}=wX(),H=K?setTimeout(()=>{L?.(),w?.(),N(new hZ({hash:Y}))},K):void 0;return w=t$(q,{onReplaced:Z,resolve:C,reject:N},async(S)=>{if(U=await A($,TX,"getTransactionReceipt")({hash:Y}).catch(()=>{return}),U&&X<=1){clearTimeout(H),S.resolve(U),w?.();return}L=A($,Z5,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:V,async onBlockNumber(B){let F=(P)=>{clearTimeout(H),L?.(),P(),w?.()},I=B;if(z)return;try{if(U){if(X>1&&(!U.blockNumber||I-U.blockNumber+1n<X))return;F(()=>S.resolve(U));return}if(Q&&!M)z=!0,await DQ(async()=>{if(M=await A($,IX,"getTransaction")({hash:Y}),M.blockNumber)I=M.blockNumber},{delay:G,retryCount:W}),z=!1;if(U=await A($,TX,"getTransactionReceipt")({hash:Y}),X>1&&(!U.blockNumber||I-U.blockNumber+1n<X))return;F(()=>S.resolve(U))}catch(P){if(P instanceof KY||P instanceof qY){if(!M){z=!1;return}try{D=M,z=!0;let j=await DQ(()=>A($,d$,"getBlock")({blockNumber:I,includeTransactions:!0}),{delay:G,retryCount:W,shouldRetry:({error:b})=>b instanceof bY});z=!1;let y=j.transactions.find(({from:b,nonce:g})=>b===D.from&&g===D.nonce);if(!y)return;if(U=await A($,TX,"getTransactionReceipt")({hash:y.hash}),X>1&&(!U.blockNumber||I-U.blockNumber+1n<X))return;let x="replaced";if(y.to===D.to&&y.value===D.value&&y.input===D.input)x="repriced";else if(y.from===y.to&&y.value===0n)x="cancelled";F(()=>{S.onReplaced?.({reason:x,replacedTransaction:D,transaction:y,transactionReceipt:U}),S.resolve(U)})}catch(j){F(()=>S.reject(j))}}else F(()=>S.reject(P))}}})}),O}function Eq($,{blockTag:J=$.experimental_blockTag??"latest",emitMissed:Q=!1,emitOnBegin:X=!1,onBlock:Y,onError:Z,includeTransactions:W,poll:G,pollingInterval:K=$.pollingInterval}){let q=(()=>{if(typeof G<"u")return G;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})(),V=W??!1,M;return q?(()=>{let z=o(["watchBlocks",$.uid,J,Q,X,V,K]);return t$(z,{onBlock:Y,onError:Z},(w)=>y0(async()=>{try{let L=await A($,d$,"getBlock")({blockTag:J,includeTransactions:V});if(L.number!==null&&M?.number!=null){if(L.number===M.number)return;if(L.number-M.number>1&&Q)for(let O=M?.number+1n;O<L.number;O++){let C=await A($,d$,"getBlock")({blockNumber:O,includeTransactions:V});w.onBlock(C,M),M=C}}if(M?.number==null||J==="pending"&&L?.number==null||L.number!==null&&L.number>M.number)w.onBlock(L,M),M=L}catch(L){w.onError?.(L)}},{emitOnBegin:X,interval:K}))})():(()=>{let z=!0,w=!0,L=()=>z=!1;return(async()=>{try{if(X)A($,d$,"getBlock")({blockTag:J,includeTransactions:V}).then((N)=>{if(!z)return;if(!w)return;Y(N,void 0),w=!1}).catch(Z);let O=(()=>{if($.transport.type==="fallback"){let N=$.transport.transports.find((H)=>H.config.type==="webSocket"||H.config.type==="ipc");if(!N)return $.transport;return N.value}return $.transport})(),{unsubscribe:C}=await O.subscribe({params:["newHeads"],async onData(N){if(!z)return;let H=await A($,d$,"getBlock")({blockNumber:N.result?.number,includeTransactions:V}).catch(()=>{});if(!z)return;Y(H,M),w=!1,M=H},onError(N){Z?.(N)}});if(L=C,!z)L()}catch(O){Z?.(O)}})(),()=>L()})()}S$();o8();function jq($,J){let{abi:Q,address:X,args:Y,batch:Z=!0,eventName:W,fromBlock:G,onError:K,onLogs:q,poll:V,pollingInterval:M=$.pollingInterval,strict:D}=J;return(()=>{if(typeof V<"u")return V;if(typeof G==="bigint")return!0;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})()?(()=>{let L=D??!1,O=o(["watchContractEvent",X,Y,Z,$.uid,W,M,L,G]);return t$(O,{onLogs:q,onError:K},(C)=>{let N;if(G!==void 0)N=G-1n;let H,S=!1,B=y0(async()=>{if(!S){try{H=await A($,F1,"createContractEventFilter")({abi:Q,address:X,args:Y,eventName:W,strict:L,fromBlock:G})}catch{}S=!0;return}try{let F;if(H)F=await A($,C8,"getFilterChanges")({filter:H});else{let I=await A($,zJ,"getBlockNumber")({});if(N&&N<I)F=await A($,d1,"getContractEvents")({abi:Q,address:X,args:Y,eventName:W,fromBlock:N+1n,toBlock:I,strict:L});else F=[];N=I}if(F.length===0)return;if(Z)C.onLogs(F);else for(let I of F)C.onLogs([I])}catch(F){if(H&&F instanceof A0)S=!1;C.onError?.(F)}},{emitOnBegin:!0,interval:M});return async()=>{if(H)await A($,R8,"uninstallFilter")({filter:H});B()}})})():(()=>{let L=D??!1,O=o(["watchContractEvent",X,Y,Z,$.uid,W,M,L]),C=!0,N=()=>C=!1;return t$(O,{onLogs:q,onError:K},(H)=>{return(async()=>{try{let S=(()=>{if($.transport.type==="fallback"){let I=$.transport.transports.find((P)=>P.config.type==="webSocket"||P.config.type==="ipc");if(!I)return $.transport;return I.value}return $.transport})(),B=W?NJ({abi:Q,eventName:W,args:Y}):[],{unsubscribe:F}=await S.subscribe({params:["logs",{address:X,topics:B}],onData(I){if(!C)return;let P=I.result;try{let{eventName:j,args:y}=ZQ({abi:Q,data:P.data,topics:P.topics,strict:D}),x=r$(P,{args:y,eventName:j});H.onLogs([x])}catch(j){let y,x;if(j instanceof $8||j instanceof k8){if(D)return;y=j.abiItem.name,x=j.abiItem.inputs?.some((g)=>!(("name"in g)&&g.name))}let b=r$(P,{args:x?[]:{},eventName:y});H.onLogs([b])}},onError(I){H.onError?.(I)}});if(N=F,!C)N()}catch(S){K?.(S)}})(),()=>N()})})()}S$();o8();function Iq($,{address:J,args:Q,batch:X=!0,event:Y,events:Z,fromBlock:W,onError:G,onLogs:K,poll:q,pollingInterval:V=$.pollingInterval,strict:M}){let D=(()=>{if(typeof q<"u")return q;if(typeof W==="bigint")return!0;if($.transport.type==="webSocket"||$.transport.type==="ipc")return!1;if($.transport.type==="fallback"&&($.transport.transports[0].config.type==="webSocket"||$.transport.transports[0].config.type==="ipc"))return!1;return!0})(),U=M??!1;return D?(()=>{let L=o(["watchEvent",J,Q,X,$.uid,Y,V,W]);return t$(L,{onLogs:K,onError:G},(O)=>{let C;if(W!==void 0)C=W-1n;let N,H=!1,S=y0(async()=>{if(!H){try{N=await A($,E1,"createEventFilter")({address:J,args:Q,event:Y,events:Z,strict:U,fromBlock:W})}catch{}H=!0;return}try{let B;if(N)B=await A($,C8,"getFilterChanges")({filter:N});else{let F=await A($,zJ,"getBlockNumber")({});if(C&&C!==F)B=await A($,jX,"getLogs")({address:J,args:Q,event:Y,events:Z,fromBlock:C+1n,toBlock:F});else B=[];C=F}if(B.length===0)return;if(X)O.onLogs(B);else for(let F of B)O.onLogs([F])}catch(B){if(N&&B instanceof A0)H=!1;O.onError?.(B)}},{emitOnBegin:!0,interval:V});return async()=>{if(N)await A($,R8,"uninstallFilter")({filter:N});S()}})})():(()=>{let L=!0,O=()=>L=!1;return(async()=>{try{let C=(()=>{if($.transport.type==="fallback"){let B=$.transport.transports.find((F)=>F.config.type==="webSocket"||F.config.type==="ipc");if(!B)return $.transport;return B.value}return $.transport})(),N=Z??(Y?[Y]:void 0),H=[];if(N){if(H=[N.flatMap((F)=>NJ({abi:[F],eventName:F.name,args:Q}))],Y)H=H[0]}let{unsubscribe:S}=await C.subscribe({params:["logs",{address:J,topics:H}],onData(B){if(!L)return;let F=B.result;try{let{eventName:I,args:P}=ZQ({abi:N??[],data:F.data,topics:F.topics,strict:U}),j=r$(F,{args:P,eventName:I});K([j])}catch(I){let P,j;if(I instanceof $8||I instanceof k8){if(M)return;P=I.abiItem.name,j=I.abiItem.inputs?.some((x)=>!(("name"in x)&&x.name))}let y=r$(F,{args:j?[]:{},eventName:P});K([y])}},onError(B){G?.(B)}});if(O=S,!L)O()}catch(C){G?.(C)}})(),()=>O()})()}function Tq($,{batch:J=!0,onError:Q,onTransactions:X,poll:Y,pollingInterval:Z=$.pollingInterval}){return(typeof Y<"u"?Y:$.transport.type!=="webSocket"&&$.transport.type!=="ipc")?(()=>{let q=o(["watchPendingTransactions",$.uid,J,Z]);return t$(q,{onTransactions:X,onError:Q},(V)=>{let M,D=y0(async()=>{try{if(!M)try{M=await A($,j1,"createPendingTransactionFilter")({});return}catch(z){throw D(),z}let U=await A($,C8,"getFilterChanges")({filter:M});if(U.length===0)return;if(J)V.onTransactions(U);else for(let z of U)V.onTransactions([z])}catch(U){V.onError?.(U)}},{emitOnBegin:!0,interval:Z});return async()=>{if(M)await A($,R8,"uninstallFilter")({filter:M});D()}})})():(()=>{let q=!0,V=()=>q=!1;return(async()=>{try{let{unsubscribe:M}=await $.transport.subscribe({params:["newPendingTransactions"],onData(D){if(!q)return;let U=D.result;X([U])},onError(D){Q?.(D)}});if(V=M,!q)V()}catch(M){Q?.(M)}})(),()=>V()})()}function _q($){let{scheme:J,statement:Q,...X}=$.match(Fz)?.groups??{},{chainId:Y,expirationTime:Z,issuedAt:W,notBefore:G,requestId:K,...q}=$.match(Ez)?.groups??{},V=$.split("Resources:")[1]?.split(`
67
+ - `).slice(1);return{...X,...q,...Y?{chainId:Number(Y)}:{},...Z?{expirationTime:new Date(Z)}:{},...W?{issuedAt:new Date(W)}:{},...G?{notBefore:new Date(G)}:{},...K?{requestId:K}:{},...V?{resources:V}:{},...J?{scheme:J}:{},...Q?{statement:Q}:{}}}var Fz=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,Ez=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;V0();a8();function Aq($){let{address:J,domain:Q,message:X,nonce:Y,scheme:Z,time:W=new Date}=$;if(Q&&X.domain!==Q)return!1;if(Y&&X.nonce!==Y)return!1;if(Z&&X.scheme!==Z)return!1;if(X.expirationTime&&W>=X.expirationTime)return!1;if(X.notBefore&&W<X.notBefore)return!1;try{if(!X.address)return!1;if(!s(X.address,{strict:!1}))return!1;if(J&&!k0(X.address,J))return!1}catch{return!1}return!0}async function Pq($,J){let{address:Q,domain:X,message:Y,nonce:Z,scheme:W,signature:G,time:K=new Date,...q}=J,V=_q(Y);if(!V.address)return!1;if(!Aq({address:Q,domain:X,message:V,nonce:Z,scheme:W,time:K}))return!1;let D=PX(Y);return F8($,{address:V.address,hash:D,signature:G,...q})}async function xX($,{serializedTransaction:J}){return $.request({method:"eth_sendRawTransaction",params:[J]},{retryCount:0})}_0();async function kX($,{serializedTransaction:J,throwOnReceiptRevert:Q,timeout:X}){let Y=await $.request({method:"eth_sendRawTransactionSync",params:X?[J,E(X)]:[J]},{retryCount:0}),W=($.chain?.formatters?.transactionReceipt?.format||uY)(Y);if(W.status==="reverted"&&Q)throw new VY({receipt:W});return W}function xq($){return{call:(J)=>f0($,J),createAccessList:(J)=>B1($,J),createBlockFilter:()=>ZK($),createContractEventFilter:(J)=>F1($,J),createEventFilter:(J)=>E1($,J),createPendingTransactionFilter:()=>j1($),estimateContractGas:(J)=>W2($,J),estimateGas:(J)=>FX($,J),getBalance:(J)=>G2($,J),getBlobBaseFee:()=>K2($),getBlock:(J)=>d$($,J),getBlockNumber:(J)=>zJ($,J),getBlockTransactionCount:(J)=>M2($,J),getBytecode:(J)=>mY($,J),getChainId:()=>s$($),getCode:(J)=>mY($,J),getContractEvents:(J)=>d1($,J),getEip712Domain:(J)=>U2($,J),getEnsAddress:(J)=>r6($,J),getEnsAvatar:(J)=>QK($,J),getEnsName:(J)=>XK($,J),getEnsResolver:(J)=>YK($,J),getEnsText:(J)=>R1($,J),getFeeHistory:(J)=>w2($,J),estimateFeesPerGas:(J)=>tK($,J),getFilterChanges:(J)=>C8($,J),getFilterLogs:(J)=>z2($,J),getGasPrice:()=>LX($),getLogs:(J)=>jX($,J),getProof:(J)=>O2($,J),estimateMaxPriorityFeePerGas:(J)=>rK($,J),fillTransaction:(J)=>BX($,J),getStorageAt:(J)=>L2($,J),getTransaction:(J)=>IX($,J),getTransactionConfirmations:(J)=>C2($,J),getTransactionCount:(J)=>CX($,J),getTransactionReceipt:(J)=>TX($,J),multicall:(J)=>R2($,J),prepareTransactionRequest:(J)=>wJ($,J),readContract:(J)=>j$($,J),sendRawTransaction:(J)=>xX($,J),sendRawTransactionSync:(J)=>kX($,J),simulate:(J)=>pY($,J),simulateBlocks:(J)=>pY($,J),simulateCalls:(J)=>t2($,J),simulateContract:(J)=>a2($,J),verifyHash:(J)=>F8($,J),verifyMessage:(J)=>Hq($,J),verifySiweMessage:(J)=>Pq($,J),verifyTypedData:(J)=>Bq($,J),uninstallFilter:(J)=>R8($,J),waitForTransactionReceipt:(J)=>W5($,J),watchBlocks:(J)=>Eq($,J),watchBlockNumber:(J)=>Z5($,J),watchContractEvent:(J)=>jq($,J),watchEvent:(J)=>Iq($,J),watchPendingTransactions:(J)=>Tq($,J)}}function yW($){let{key:J="public",name:Q="Public Client"}=$;return _9({...$,key:J,name:Q,type:"publicClient"}).extend(xq)}m();async function kq($,{chain:J}){let{id:Q,name:X,nativeCurrency:Y,rpcUrls:Z,blockExplorers:W}=J;await $.request({method:"wallet_addEthereumChain",params:[{chainId:E(Q),chainName:X,nativeCurrency:Y,rpcUrls:Z.default.http,blockExplorerUrls:W?Object.values(W).map(({url:G})=>G):void 0}]},{dedupe:!0,retryCount:0})}z1();l();class p$ extends R{constructor({docsPath:$}={}){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(`
68
+ `),{docsPath:$,docsSlug:"account",name:"AccountNotFoundError"})}}class o0 extends R{constructor({docsPath:$,metaMessages:J,type:Q}){super(`Account type "${Q}" is not supported.`,{docsPath:$,metaMessages:J,name:"AccountTypeNotSupportedError"})}}l();GY();function fX({chain:$,currentChainId:J}){if(!$)throw new TZ;if(J!==$.id)throw new IZ({chain:$,currentChainId:J})}nJ();d8();UJ();var vW=new S0(128);async function E8($,J){let{account:Q=$.account,assertChainId:X=!0,chain:Y=$.chain,accessList:Z,authorizationList:W,blobs:G,data:K,dataSuffix:q=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,type:L,value:O,...C}=J;if(typeof Q>"u")throw new p$({docsPath:"/docs/actions/wallet/sendTransaction"});let N=Q?p(Q):null;try{g$(J);let H=await(async()=>{if(J.to)return J.to;if(J.to===null)return;if(W&&W.length>0)return await O8({authorization:W[0]}).catch(()=>{throw new R("`to` is required. Could not infer from `authorizationList`.")});return})();if(N?.type==="json-rpc"||N===null){let S;if(Y!==null){if(S=await A($,s$,"getChainId")({}),X)fX({currentChainId:S,chain:Y})}let B=$.chain?.formatters?.transactionRequest?.format,I=(B||o$)({...x0(C,{format:B}),accessList:Z,account:N,authorizationList:W,blobs:G,chainId:S,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,to:H,type:L,value:O},"sendTransaction"),P=vW.get($.uid),j=P?"wallet_sendTransaction":"eth_sendTransaction";try{return await $.request({method:j,params:[I]},{retryCount:0})}catch(y){if(P===!1)throw y;let x=y;if(x.name==="InvalidInputRpcError"||x.name==="InvalidParamsRpcError"||x.name==="MethodNotFoundRpcError"||x.name==="MethodNotSupportedRpcError")return await $.request({method:"wallet_sendTransaction",params:[I]},{retryCount:0}).then((b)=>{return vW.set($.uid,!0),b}).catch((b)=>{let g=b;if(g.name==="MethodNotFoundRpcError"||g.name==="MethodNotSupportedRpcError")throw vW.set($.uid,!1),x;throw g});throw x}}if(N?.type==="local"){let S=await A($,wJ,"prepareTransactionRequest")({account:N,accessList:Z,authorizationList:W,blobs:G,chain:Y,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,nonceManager:N.nonceManager,parameters:[...dY,"sidecars"],type:L,value:O,...C,to:H}),B=Y?.serializers?.transaction,F=await N.signTransaction(S,{serializer:B});return await A($,xX,"sendRawTransaction")({serializedTransaction:F})}if(N?.type==="smart")throw new o0({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new o0({docsPath:"/docs/actions/wallet/sendTransaction",type:N?.type})}catch(H){if(H instanceof o0)throw H;throw L8(H,{...J,account:N,chain:J.chain||void 0})}}function fq($,J){let{abi:Q,args:X,bytecode:Y,...Z}=J,W=t8({abi:Q,args:X,bytecode:Y});return E8($,{...Z,...Z.authorizationList?{to:null}:{},data:W})}ZJ();async function yq($){if($.account?.type==="local")return[$.account.address];return(await $.request({method:"eth_accounts"},{dedupe:!0})).map((Q)=>YJ(Q))}PJ();P$();l();o8();N0();P$();m();var bW="0x5792579257925792579257925792579257925792579257925792579257925792",hW=E(0,{size:32});async function G5($,J){let{account:Q=$.account,chain:X=$.chain,experimental_fallback:Y,experimental_fallbackDelay:Z=32,forceAtomic:W=!1,id:G,version:K="2.0.0"}=J,q=Q?p(Q):null,V=J.capabilities;if($.dataSuffix&&!J.capabilities?.dataSuffix)if(typeof $.dataSuffix==="string")V={...J.capabilities,dataSuffix:{value:$.dataSuffix,optional:!0}};else V={...J.capabilities,dataSuffix:{value:$.dataSuffix.value,...$.dataSuffix.required?{}:{optional:!0}}};let M=J.calls.map((D)=>{let U=D,z=U.abi?K$({abi:U.abi,functionName:U.functionName,args:U.args}):U.data;return{data:U.dataSuffix&&z?Q$([z,U.dataSuffix]):z,to:U.to,value:U.value?E(U.value):void 0}});try{let D=await $.request({method:"wallet_sendCalls",params:[{atomicRequired:W,calls:M,capabilities:V,chainId:E(X.id),from:q?.address,id:G,version:K}]},{retryCount:0});if(typeof D==="string")return{id:D};return D}catch(D){let U=D;if(Y&&(U.name==="MethodNotFoundRpcError"||U.name==="MethodNotSupportedRpcError"||U.name==="UnknownRpcError"||U.details.toLowerCase().includes("does not exist / is not available")||U.details.toLowerCase().includes("missing or invalid. request()")||U.details.toLowerCase().includes("did not match any variant of untagged enum")||U.details.toLowerCase().includes("account upgraded to unsupported contract")||U.details.toLowerCase().includes("eip-7702 not supported")||U.details.toLowerCase().includes("unsupported wc_ method")||U.details.toLowerCase().includes("feature toggled misconfigured")||U.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))){if(V){if(Object.values(V).some((C)=>!C.optional))throw new G8(new R("non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.",{details:"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`."}))}if(W&&M.length>1)throw new K8(new R("`forceAtomic` is not supported on fallback to `eth_sendTransaction`.",{details:"`forceAtomic` is not supported on fallback to `eth_sendTransaction`."}));let z=[];for(let O of M){let C=E8($,{account:q,chain:X,data:O.data,to:O.to,value:O.value?Z$(O.value):void 0});if(z.push(C),Z>0)await new Promise((N)=>setTimeout(N,Z))}let w=await Promise.allSettled(z);if(w.every((O)=>O.status==="rejected"))throw w[0].reason;let L=w.map((O)=>{if(O.status==="fulfilled")return O.value;return hW});return{id:Q$([...L,E(X.id,{size:32}),bW])}}throw L8(D,{...J,account:q,chain:J.chain})}}async function K5($,J){async function Q(V){if(V.endsWith(bW.slice(2))){let D=b$(o9(V,-64,-32)),U=o9(V,0,-64).slice(2).match(/.{1,64}/g),z=await Promise.all(U.map((L)=>hW.slice(2)!==L?$.request({method:"eth_getTransactionReceipt",params:[`0x${L}`]},{dedupe:!0}):void 0)),w=(()=>{if(z.some((L)=>L===null))return 100;if(z.every((L)=>L?.status==="0x1"))return 200;if(z.every((L)=>L?.status==="0x0"))return 500;return 600})();return{atomic:!1,chainId:N$(D),receipts:z.filter(Boolean),status:w,version:"2.0.0"}}return $.request({method:"wallet_getCallsStatus",params:[V]})}let{atomic:X=!1,chainId:Y,receipts:Z,version:W="2.0.0",...G}=await Q(J.id),[K,q]=(()=>{let V=G.status;if(V>=100&&V<200)return["pending",V];if(V>=200&&V<300)return["success",V];if(V>=300&&V<700)return["failure",V];if(V==="CONFIRMED")return["success",200];if(V==="PENDING")return["pending",100];return[void 0,V]})();return{...G,atomic:X,chainId:Y?N$(Y):void 0,receipts:Z?.map((V)=>({...V,blockNumber:Z$(V.blockNumber),gasUsed:Z$(V.gasUsed),status:YW[V.status]}))??[],statusCode:q,status:K,version:W}}m();async function vq($,J={}){let{account:Q=$.account,chainId:X}=J,Y=Q?p(Q):void 0,Z=X?[Y?.address,[E(X)]]:[Y?.address],W=await $.request({method:"wallet_getCapabilities",params:Z}),G={};for(let[K,q]of Object.entries(W)){G[Number(K)]={};for(let[V,M]of Object.entries(q)){if(V==="addSubAccount")V="unstable_addSubAccount";G[Number(K)][V]=M}}return typeof X==="number"?G[X]:G}async function bq($){return await $.request({method:"wallet_getPermissions"},{dedupe:!0})}a8();async function q5($,J){let{account:Q=$.account,chainId:X,nonce:Y}=J;if(!Q)throw new p$({docsPath:"/docs/eip7702/prepareAuthorization"});let Z=p(Q),W=(()=>{if(!J.executor)return;if(J.executor==="self")return J.executor;return p(J.executor)})(),G={address:J.contractAddress??J.address,chainId:X,nonce:Y};if(typeof G.chainId>"u")G.chainId=$.chain?.id??await A($,s$,"getChainId")({});if(typeof G.nonce>"u"){if(G.nonce=await A($,CX,"getTransactionCount")({address:Z.address,blockTag:"pending"}),W==="self"||W?.address&&k0(W.address,Z.address))G.nonce+=1}return G}ZJ();async function hq($){return(await $.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map((Q)=>M0(Q))}async function gq($,J){return $.request({method:"wallet_requestPermissions",params:[J]},{retryCount:0})}l();l();class gW extends R{constructor($){super(`Call bundle failed with status: ${$.statusCode}`,{name:"BundleFailedError"});Object.defineProperty(this,"result",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=$}}async function V5($,J){let{id:Q,pollingInterval:X=$.pollingInterval,status:Y=({statusCode:w})=>w===200||w>=300,retryCount:Z=4,retryDelay:W=({count:w})=>~~(1<<w)*200,timeout:G=60000,throwOnFailure:K=!1}=J,q=o(["waitForCallsStatus",$.uid,Q]),{promise:V,resolve:M,reject:D}=wX(),U,z=t$(q,{resolve:M,reject:D},(w)=>{let L=y0(async()=>{let O=(C)=>{clearTimeout(U),L(),C(),z()};try{let C=await DQ(async()=>{let N=await A($,K5,"getCallsStatus")({id:Q});if(K&&N.status==="failure")throw new gW(N);return N},{retryCount:Z,delay:W});if(!Y(C))return;O(()=>w.resolve(C))}catch(C){O(()=>w.reject(C))}},{interval:X,emitOnBegin:!0});return L});return U=G?setTimeout(()=>{z(),clearTimeout(U),D(new dq({id:Q}))},G):void 0,await V}class dq extends R{constructor({id:$}){super(`Timed out while waiting for call bundle with id "${$}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}async function mq($,J){let{chain:Q=$.chain}=J,X=J.timeout??Math.max((Q?.blockTime??0)*3,5000),Y=await A($,G5,"sendCalls")(J);return await A($,V5,"waitForCallsStatus")({...J,id:Y.id,timeout:X})}l();_0();nJ();d8();UJ();var dW=new S0(128);async function M5($,J){let{account:Q=$.account,assertChainId:X=!0,chain:Y=$.chain,accessList:Z,authorizationList:W,blobs:G,data:K,dataSuffix:q=typeof $.dataSuffix==="string"?$.dataSuffix:$.dataSuffix?.value,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,pollingInterval:L,throwOnReceiptRevert:O,type:C,value:N,...H}=J,S=J.timeout??Math.max((Y?.blockTime??0)*3,5000);if(typeof Q>"u")throw new p$({docsPath:"/docs/actions/wallet/sendTransactionSync"});let B=Q?p(Q):null;try{g$(J);let F=await(async()=>{if(J.to)return J.to;if(J.to===null)return;if(W&&W.length>0)return await O8({authorization:W[0]}).catch(()=>{throw new R("`to` is required. Could not infer from `authorizationList`.")});return})();if(B?.type==="json-rpc"||B===null){let I;if(Y!==null){if(I=await A($,s$,"getChainId")({}),X)fX({currentChainId:I,chain:Y})}let P=$.chain?.formatters?.transactionRequest?.format,y=(P||o$)({...x0(H,{format:P}),accessList:Z,account:B,authorizationList:W,blobs:G,chainId:I,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,to:F,type:C,value:N},"sendTransaction"),x=dW.get($.uid),b=x?"wallet_sendTransaction":"eth_sendTransaction",g=await(async()=>{try{return await $.request({method:b,params:[y]},{retryCount:0})}catch(f){if(x===!1)throw f;let d=f;if(d.name==="InvalidInputRpcError"||d.name==="InvalidParamsRpcError"||d.name==="MethodNotFoundRpcError"||d.name==="MethodNotSupportedRpcError")return await $.request({method:"wallet_sendTransaction",params:[y]},{retryCount:0}).then((k)=>{return dW.set($.uid,!0),k}).catch((k)=>{let v=k;if(v.name==="MethodNotFoundRpcError"||v.name==="MethodNotSupportedRpcError")throw dW.set($.uid,!1),d;throw v});throw d}})(),T=await A($,W5,"waitForTransactionReceipt")({checkReplacement:!1,hash:g,pollingInterval:L,timeout:S});if(O&&T.status==="reverted")throw new VY({receipt:T});return T}if(B?.type==="local"){let I=await A($,wJ,"prepareTransactionRequest")({account:B,accessList:Z,authorizationList:W,blobs:G,chain:Y,data:K?Q$([K,q??"0x"]):K,gas:V,gasPrice:M,maxFeePerBlobGas:D,maxFeePerGas:U,maxPriorityFeePerGas:z,nonce:w,nonceManager:B.nonceManager,parameters:[...dY,"sidecars"],type:C,value:N,...H,to:F}),P=Y?.serializers?.transaction,j=await B.signTransaction(I,{serializer:P});return await A($,kX,"sendRawTransactionSync")({serializedTransaction:j,throwOnReceiptRevert:O,timeout:J.timeout})}if(B?.type==="smart")throw new o0({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new o0({docsPath:"/docs/actions/wallet/sendTransactionSync",type:B?.type})}catch(F){if(F instanceof o0)throw F;throw L8(F,{...J,account:B,chain:J.chain||void 0})}}async function uq($,J){let{id:Q}=J;await $.request({method:"wallet_showCallsStatus",params:[Q]});return}async function pq($,J){let{account:Q=$.account}=J;if(!Q)throw new p$({docsPath:"/docs/eip7702/signAuthorization"});let X=p(Q);if(!X.signAuthorization)throw new o0({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:X.type});let Y=await q5($,J);return X.signAuthorization(Y)}m();async function lq($,{account:J=$.account,message:Q}){if(!J)throw new p$({docsPath:"/docs/actions/wallet/signMessage"});let X=p(J);if(X.signMessage)return X.signMessage({message:Q});let Y=(()=>{if(typeof Q==="string")return K0(Q);if(Q.raw instanceof Uint8Array)return t(Q.raw);return Q.raw})();return $.request({method:"personal_sign",params:[Y,X.address]},{retryCount:0})}m();nJ();UJ();async function cq($,J){let{account:Q=$.account,chain:X=$.chain,...Y}=J;if(!Q)throw new p$({docsPath:"/docs/actions/wallet/signTransaction"});let Z=p(Q);g$({account:Z,...J});let W=await A($,s$,"getChainId")({});if(X!==null)fX({currentChainId:W,chain:X});let K=(X?.formatters||$.chain?.formatters)?.transactionRequest?.format||o$;if(Z.signTransaction)return Z.signTransaction({...Y,chainId:W},{serializer:$.chain?.serializers?.transaction});return await $.request({method:"eth_signTransaction",params:[{...K({...Y,account:Z},"signTransaction"),chainId:E(W),from:Z.address}]},{retryCount:0})}async function nq($,J){let{account:Q=$.account,domain:X,message:Y,primaryType:Z}=J;if(!Q)throw new p$({docsPath:"/docs/actions/wallet/signTypedData"});let W=p(Q),G={EIP712Domain:X5({domain:X}),...J.types};if(Q5({domain:X,message:Y,primaryType:Z,types:G}),W.signTypedData)return W.signTypedData({domain:X,message:Y,primaryType:Z,types:G});let K=Oq({domain:X,message:Y,primaryType:Z,types:G});return $.request({method:"eth_signTypedData_v4",params:[W.address,K]},{retryCount:0})}m();async function oq($,{id:J}){await $.request({method:"wallet_switchEthereumChain",params:[{chainId:E(J)}]},{retryCount:0})}async function iq($,J){return await $.request({method:"wallet_watchAsset",params:J},{retryCount:0})}N0();async function UQ($,J){return UQ.internal($,E8,"sendTransaction",J)}(function($){async function J(Q,X,Y,Z){let{abi:W,account:G=Q.account,address:K,args:q,functionName:V,...M}=Z;if(typeof G>"u")throw new p$({docsPath:"/docs/contract/writeContract"});let D=G?p(G):null,U=K$({abi:W,args:q,functionName:V});try{return await A(Q,X,Y)({data:U,to:K,account:D,...M})}catch(z){throw R0(z,{abi:W,address:K,args:q,docsPath:"/docs/contract/writeContract",functionName:V,sender:D?.address})}}$.internal=J})(UQ||(UQ={}));async function sq($,J){return UQ.internal($,M5,"sendTransactionSync",J)}function rq($){return{addChain:(J)=>kq($,J),deployContract:(J)=>fq($,J),fillTransaction:(J)=>BX($,J),getAddresses:()=>yq($),getCallsStatus:(J)=>K5($,J),getCapabilities:(J)=>vq($,J),getChainId:()=>s$($),getPermissions:()=>bq($),prepareAuthorization:(J)=>q5($,J),prepareTransactionRequest:(J)=>wJ($,J),requestAddresses:()=>hq($),requestPermissions:(J)=>gq($,J),sendCalls:(J)=>G5($,J),sendCallsSync:(J)=>mq($,J),sendRawTransaction:(J)=>xX($,J),sendRawTransactionSync:(J)=>kX($,J),sendTransaction:(J)=>E8($,J),sendTransactionSync:(J)=>M5($,J),showCallsStatus:(J)=>uq($,J),signAuthorization:(J)=>pq($,J),signMessage:(J)=>lq($,J),signTransaction:(J)=>cq($,J),signTypedData:(J)=>nq($,J),switchChain:(J)=>oq($,J),waitForCallsStatus:(J)=>V5($,J),watchAsset:(J)=>iq($,J),writeContract:(J)=>UQ($,J),writeContractSync:(J)=>sq($,J)}}function mW($){let{key:J="wallet",name:Q="Wallet Client",transport:X}=$;return _9({...$,key:J,name:Q,transport:X,type:"walletClient"}).extend(rq)}cJ();o8();l();c8();o8();m();d8();var D5=new S0(8192);function tq($,{enabled:J=!0,id:Q}){if(!J||!Q)return $();if(D5.get(Q))return D5.get(Q);let X=$().finally(()=>D5.delete(Q));return D5.set(Q,X),X}function aq($,J={}){return async(Q,X={})=>{let{dedupe:Y=!1,methods:Z,retryDelay:W=150,retryCount:G=3,uid:K}={...J,...X},{method:q}=Q;if(Z?.exclude?.includes(q))throw new W8(Error("method not supported"),{method:q});if(Z?.include&&!Z.include.includes(q))throw new W8(Error("method not supported"),{method:q});let V=Y?K0(`${K}.${o(Q)}`):void 0;return tq(()=>DQ(async()=>{try{return await $(Q)}catch(M){let D=M;switch(D.code){case mQ.code:throw new mQ(D);case uQ.code:throw new uQ(D);case pQ.code:throw new pQ(D,{method:Q.method});case lQ.code:throw new lQ(D);case vJ.code:throw new vJ(D);case A0.code:throw new A0(D);case cQ.code:throw new cQ(D);case nQ.code:throw new nQ(D);case Z8.code:throw new Z8(D);case W8.code:throw new W8(D,{method:Q.method});case n8.code:throw new n8(D);case oQ.code:throw new oQ(D);case bJ.code:throw new bJ(D);case iQ.code:throw new iQ(D);case sQ.code:throw new sQ(D);case rQ.code:throw new rQ(D);case tQ.code:throw new tQ(D);case aQ.code:throw new aQ(D);case G8.code:throw new G8(D);case eQ.code:throw new eQ(D);case $X.code:throw new $X(D);case JX.code:throw new JX(D);case QX.code:throw new QX(D);case XX.code:throw new XX(D);case K8.code:throw new K8(D);case 5000:throw new bJ(D);case q8.code:throw new q8(D);default:if(M instanceof R)throw M;throw new cZ(D)}}},{delay:({count:M,error:D})=>{if(D&&D instanceof m0){let U=D?.headers?.get("Retry-After");if(U?.match(/\d/))return Number.parseInt(U,10)*1000}return~~(1<<M)*W},retryCount:G,shouldRetry:({error:M})=>jz(M)}),{enabled:Y,id:V})}}function jz($){if("code"in $&&typeof $.code==="number"){if($.code===-1)return!0;if($.code===n8.code)return!0;if($.code===vJ.code)return!0;return!1}if($ instanceof m0&&$.status){if($.status===403)return!0;if($.status===408)return!0;if($.status===413)return!0;if($.status===429)return!0;if($.status===500)return!0;if($.status===502)return!0;if($.status===503)return!0;if($.status===504)return!0;return!1}return!0}function U5({key:$,methods:J,name:Q,request:X,retryCount:Y=3,retryDelay:Z=150,timeout:W,type:G},K){let q=T9();return{config:{key:$,methods:J,name:Q,request:X,retryCount:Y,retryDelay:Z,timeout:W,type:G},request:aq(X,{methods:J,retryCount:Y,retryDelay:Z,uid:q}),value:K}}function uW($,J={}){let{key:Q="fallback",name:X="Fallback",rank:Y=!1,shouldThrow:Z=eq,retryCount:W,retryDelay:G}=J;return({chain:K,pollingInterval:q=4000,timeout:V,...M})=>{let D=$,U=()=>{},z=U5({key:Q,name:X,async request({method:w,params:L}){let O,C=async(N=0)=>{let H=D[N]({...M,chain:K,retryCount:0,timeout:V});try{let S=await H.request({method:w,params:L});return U({method:w,params:L,response:S,transport:H,status:"success"}),S}catch(S){if(U({error:S,method:w,params:L,transport:H,status:"error"}),Z(S))throw S;if(N===D.length-1)throw S;if(O??=D.slice(N+1).some((B)=>{let{include:F,exclude:I}=B({chain:K}).config.methods||{};if(F)return F.includes(w);if(I)return!I.includes(w);return!0}),!O)throw S;return C(N+1)}};return C()},retryCount:W,retryDelay:G,type:"fallback"},{onResponse:(w)=>U=w,transports:D.map((w)=>w({chain:K,retryCount:0}))});if(Y){let w=typeof Y==="object"?Y:{};Iz({chain:K,interval:w.interval??q,onTransports:(L)=>D=L,ping:w.ping,sampleCount:w.sampleCount,timeout:w.timeout,transports:D,weights:w.weights})}return z}}function eq($){if("code"in $&&typeof $.code==="number"){if($.code===Z8.code||$.code===bJ.code||$.code===q8.code||DJ.nodeMessage.test($.message)||$.code===5000)return!0}return!1}function Iz({chain:$,interval:J=4000,onTransports:Q,ping:X,sampleCount:Y=10,timeout:Z=1000,transports:W,weights:G={}}){let{stability:K=0.7,latency:q=0.3}=G,V=[],M=async()=>{let D=await Promise.all(W.map(async(w)=>{let L=w({chain:$,retryCount:0,timeout:Z}),O=Date.now(),C,N;try{await(X?X({transport:L}):L.request({method:"net_listening"})),N=1}catch{N=0}finally{C=Date.now()}return{latency:C-O,success:N}}));if(V.push(D),V.length>Y)V.shift();let U=Math.max(...V.map((w)=>Math.max(...w.map(({latency:L})=>L)))),z=W.map((w,L)=>{let O=V.map((B)=>B[L].latency),N=1-O.reduce((B,F)=>B+F,0)/O.length/U,H=V.map((B)=>B[L].success),S=H.reduce((B,F)=>B+F,0)/H.length;if(S===0)return[0,L];return[q*N+K*S,L]}).sort((w,L)=>L[0]-w[0]);Q(z.map(([,w])=>W[w])),await MQ(J),M()};M()}c8();l();class pW extends R{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}z7();c8();function $V($,{errorInstance:J=Error("timed out"),timeout:Q,signal:X}){return new Promise((Y,Z)=>{(async()=>{let W;try{let G=new AbortController;if(Q>0)W=setTimeout(()=>{if(X)G.abort();else Z(J)},Q);Y(await $({signal:G?.signal||null}))}catch(G){if(G?.name==="AbortError")Z(J);Z(G)}finally{clearTimeout(W)}})()})}function Tz(){return{current:0,take(){return this.current++},reset(){this.current=0}}}var lW=Tz();function JV($,J={}){let{url:Q,headers:X}=_z($);return{async request(Y){let{body:Z,fetchFn:W=J.fetchFn??fetch,onRequest:G=J.onRequest,onResponse:K=J.onResponse,timeout:q=J.timeout??1e4}=Y,V={...J.fetchOptions??{},...Y.fetchOptions??{}},{headers:M,method:D,signal:U}=V;try{let z=await $V(async({signal:L})=>{let O={...V,body:Array.isArray(Z)?o(Z.map((S)=>({jsonrpc:"2.0",id:S.id??lW.take(),...S}))):o({jsonrpc:"2.0",id:Z.id??lW.take(),...Z}),headers:{...X,"Content-Type":"application/json",...M},method:D||"POST",signal:U||(q>0?L:null)},C=new Request(Q,O),N=await G?.(C,O)??{...O,url:Q};return await W(N.url??Q,N)},{errorInstance:new W1({body:Z,url:Q}),timeout:q,signal:!0});if(K)await K(z);let w;if(z.headers.get("Content-Type")?.startsWith("application/json"))w=await z.json();else{w=await z.text();try{w=JSON.parse(w||"{}")}catch(L){if(z.ok)throw L;w={error:w}}}if(!z.ok)throw new m0({body:Z,details:o(w.error)||z.statusText,headers:z.headers,status:z.status,url:Q});return w}catch(z){if(z instanceof m0)throw z;if(z instanceof W1)throw z;throw new m0({body:Z,cause:z,url:Q})}}}}function _z($){try{let J=new URL($),Q=(()=>{if(J.username){let X=`${decodeURIComponent(J.username)}:${decodeURIComponent(J.password)}`;return J.username="",J.password="",{url:J.toString(),headers:{Authorization:`Basic ${btoa(X)}`}}}return})();return{url:J.toString(),...Q}}catch{return{url:$}}}function cW($,J={}){let{batch:Q,fetchFn:X,fetchOptions:Y,key:Z="http",methods:W,name:G="HTTP JSON-RPC",onFetchRequest:K,onFetchResponse:q,retryDelay:V,raw:M}=J;return({chain:D,retryCount:U,timeout:z})=>{let{batchSize:w=1000,wait:L=0}=typeof Q==="object"?Q:{},O=J.retryCount??U,C=z??J.timeout??1e4,N=$||D?.rpcUrls.default.http[0];if(!N)throw new pW;let H=JV(N,{fetchFn:X,fetchOptions:Y,onRequest:K,onResponse:q,timeout:C});return U5({key:Z,methods:W,name:G,async request({method:S,params:B}){let F={method:S,params:B},{schedule:I}=O1({id:N,wait:L,shouldSplitBatch(x){return x.length>w},fn:(x)=>H.request({body:x}),sort:(x,b)=>x.id-b.id}),P=async(x)=>Q?I(x):[await H.request({body:x})],[{error:j,result:y}]=await P(F);if(M)return{error:j,result:y};if(j)throw new l8({body:F,error:j,url:N});return y},retryCount:O,retryDelay:V,timeout:C,type:"http"},{fetchOptions:Y,url:N})}}C1();GJ();S$();I0();V0();_Q();m();s9();function tY($,J){if($.length!==J.length)throw new rX({expectedLength:$.length,givenLength:J.length});let Q=[];for(let X=0;X<$.length;X++){let Y=$[X],Z=J[X];Q.push(QV(Y,Z))}return R$(Q)}function QV($,J,Q=!1){if($==="address"){let W=J;if(!s(W))throw new Y$({address:W});return W0(W.toLowerCase(),{size:Q?32:null})}if($==="string")return K0(J);if($==="bytes")return J;if($==="bool")return W0(y8(J),{size:Q?32:1});let X=$.match(PQ);if(X){let[W,G,K="256"]=X,q=Number.parseInt(K,10)/8;return E(J,{size:Q?32:q,signed:G==="int"})}let Y=$.match(i9);if(Y){let[W,G]=Y;if(Number.parseInt(G,10)!==(J.length-2)/2)throw new eX({expectedSize:Number.parseInt(G,10),givenSize:(J.length-2)/2});return W0(J,{dir:"right",size:Q?32:null})}let Z=$.match(g4);if(Z&&Array.isArray(J)){let[W,G]=Z,K=[];for(let q=0;q<J.length;q++)K.push(QV(G,J[q],!0));if(K.length===0)return"0x";return R$(K)}throw new KZ($)}ZJ();function nW($){if(!$)return!1;if(typeof $!=="object")return!1;if(!("BYTES_PER_ELEMENT"in $))return!1;return $.BYTES_PER_ELEMENT===1&&$.constructor.name==="Uint8Array"}_Q();PJ();k$();q0();ZJ();function oW($){let J=m$(M0($.from)),Q=W0(nW($.salt)?$.salt:m$($.salt),{size:32}),X=(()=>{if("bytecodeHash"in $){if(nW($.bytecodeHash))return $.bytecodeHash;return m$($.bytecodeHash)}return n($.bytecode,"bytes")})();return M0(D0(n(Q$([m$("0xff"),J,Q,X])),12))}m();q0();X1();l();class iW extends R{constructor({value:$}){super(`Number \`${$}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}function i0($,J){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test($))throw new iW({value:$});let[Q,X="0"]=$.split("."),Y=Q.startsWith("-");if(Y)Q=Q.slice(1);if(X=X.replace(/(0+)$/,""),J===0){if(Math.round(Number(`.${X}`))===1)Q=`${BigInt(Q)+1n}`;X=""}else if(X.length>J){let[Z,W,G]=[X.slice(0,J-1),X.slice(J-1,J),X.slice(J)],K=Math.round(Number(`${W}.${G}`));if(K>9)X=`${BigInt(Z)+BigInt(1)}0`.padStart(Z.length+1,"0");else X=`${Z}${K}`;if(X.length>J)X=X.slice(1),Q=`${BigInt(Q)+1n}`;X=X.slice(0,J)}else X=X.padEnd(J,"0");return BigInt(`${Y?"-":""}${Q}${X}`)}function sW($,J="wei"){return i0($,Q1[J])}XQ();m();function rW(){return t(X0.utils.randomPrivateKey())}XQ();m();I0();V0();function XV($){if(typeof $==="string"){if(!s($,{strict:!1}))throw new Y$({address:$});return{address:$,type:"json-rpc"}}if(!s($.address,{strict:!1}))throw new Y$({address:$.address});return{address:$.address,nonceManager:$.nonceManager,sign:$.sign,signAuthorization:$.signAuthorization,signMessage:$.signMessage,signTransaction:$.signTransaction,signTypedData:$.signTypedData,source:"custom",type:"local"}}XQ();k$();m();var tW=!1;async function HJ({hash:$,privateKey:J,to:Q="object"}){let{r:X,s:Y,recovery:Z}=X0.sign($.slice(2),J.slice(2),{lowS:!0,extraEntropy:U$(tW,{strict:!1})?x$(tW):tW}),W={r:E(X,{size:32}),s:E(Y,{size:32}),v:Z?28n:27n,yParity:Z};return(()=>{if(Q==="bytes"||Q==="hex")return J5({...W,to:Q});return W})()}async function YV($){let{chainId:J,nonce:Q,privateKey:X,to:Y="object"}=$,Z=$.contractAddress??$.address,W=await HJ({hash:f1({address:Z,chainId:J,nonce:Q}),privateKey:X,to:Y});if(Y==="object")return{address:Z,chainId:J,nonce:Q,...W};return W}async function ZV({message:$,privateKey:J}){return await HJ({hash:PX($),privateKey:J,to:"hex"})}q0();_0();m();function WV($){if(!$||$.length===0)return[];let J=[];for(let Q of $){let{chainId:X,nonce:Y,...Z}=Q,W=Q.address;J.push([X?t(X):"0x",W,Y?t(Y):"0x",...yX({},Z)])}return J}m();C1();I0();l();GY();cJ();V0();j0();PJ();P$();function GV($){let{authorizationList:J}=$;if(J)for(let Q of J){let{chainId:X}=Q,Y=Q.address;if(!s(Y))throw new Y$({address:Y});if(X<0)throw new yQ({chainId:X})}N5($)}function KV($){let{blobVersionedHashes:J}=$;if(J){if(J.length===0)throw new gY;for(let Q of J){let X=r(Q),Y=N$(D0(Q,0,1));if(X!==32)throw new $W({hash:Q,size:X});if(Y!==b1)throw new JW({hash:Q,version:Y})}}N5($)}function N5($){let{chainId:J,maxPriorityFeePerGas:Q,maxFeePerGas:X,to:Y}=$;if(J<=0)throw new yQ({chainId:J});if(Y&&!s(Y))throw new Y$({address:Y});if(X&&X>oJ)throw new u0({maxFeePerGas:X});if(Q&&X&&Q>X)throw new lJ({maxFeePerGas:X,maxPriorityFeePerGas:Q})}function qV($){let{chainId:J,maxPriorityFeePerGas:Q,gasPrice:X,maxFeePerGas:Y,to:Z}=$;if(J<=0)throw new yQ({chainId:J});if(Z&&!s(Z))throw new Y$({address:Z});if(Q||Y)throw new R("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(X&&X>oJ)throw new u0({maxFeePerGas:X})}function VV($){let{chainId:J,maxPriorityFeePerGas:Q,gasPrice:X,maxFeePerGas:Y,to:Z}=$;if(Z&&!s(Z))throw new Y$({address:Z});if(typeof J<"u"&&J<=0)throw new yQ({chainId:J});if(Q||Y)throw new R("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(X&&X>oJ)throw new u0({maxFeePerGas:X})}I0();_0();V0();function aY($){if(!$||$.length===0)return[];let J=[];for(let Q=0;Q<$.length;Q++){let{address:X,storageKeys:Y}=$[Q];for(let Z=0;Z<Y.length;Z++)if(Y[Z].length-2!==64)throw new vZ({storageKey:Y[Z]});if(!s(X,{strict:!1}))throw new Y$({address:X});J.push([X,Y])}return J}function w5($,J){let Q=g1($);if(Q==="eip1559")return xz($,J);if(Q==="eip2930")return kz($,J);if(Q==="eip4844")return Pz($,J);if(Q==="eip7702")return Az($,J);return fz($,J)}function Az($,J){let{authorizationList:Q,chainId:X,gas:Y,nonce:Z,to:W,value:G,maxFeePerGas:K,maxPriorityFeePerGas:q,accessList:V,data:M}=$;GV($);let D=aY(V),U=WV(Q);return R$(["0x04",c0([E(X),Z?E(Z):"0x",q?E(q):"0x",K?E(K):"0x",Y?E(Y):"0x",W??"0x",G?E(G):"0x",M??"0x",D,U,...yX($,J)])])}function Pz($,J){let{chainId:Q,gas:X,nonce:Y,to:Z,value:W,maxFeePerBlobGas:G,maxFeePerGas:K,maxPriorityFeePerGas:q,accessList:V,data:M}=$;KV($);let{blobVersionedHashes:D,sidecars:U}=$;if($.blobs&&(typeof D>"u"||typeof U>"u")){let N=typeof $.blobs[0]==="string"?$.blobs:$.blobs.map((B)=>i(B)),H=$.kzg,S=SX({blobs:N,kzg:H});if(typeof D>"u")D=v1({commitments:S});if(typeof U>"u"){let B=RX({blobs:N,commitments:S,kzg:H});U=h1({blobs:N,commitments:S,proofs:B})}}let z=aY(V),w=[E(Q),Y?E(Y):"0x",q?E(q):"0x",K?E(K):"0x",X?E(X):"0x",Z??"0x",W?E(W):"0x",M??"0x",z,G?E(G):"0x",D??[],...yX($,J)],L=[],O=[],C=[];if(U)for(let N=0;N<U.length;N++){let{blob:H,commitment:S,proof:B}=U[N];L.push(H),O.push(S),C.push(B)}return R$(["0x03",U?c0([w,L,O,C]):c0(w)])}function xz($,J){let{chainId:Q,gas:X,nonce:Y,to:Z,value:W,maxFeePerGas:G,maxPriorityFeePerGas:K,accessList:q,data:V}=$;N5($);let M=aY(q),D=[E(Q),Y?E(Y):"0x",K?E(K):"0x",G?E(G):"0x",X?E(X):"0x",Z??"0x",W?E(W):"0x",V??"0x",M,...yX($,J)];return R$(["0x02",c0(D)])}function kz($,J){let{chainId:Q,gas:X,data:Y,nonce:Z,to:W,value:G,accessList:K,gasPrice:q}=$;qV($);let V=aY(K),M=[E(Q),Z?E(Z):"0x",q?E(q):"0x",X?E(X):"0x",W??"0x",G?E(G):"0x",Y??"0x",V,...yX($,J)];return R$(["0x01",c0(M)])}function fz($,J){let{chainId:Q=0,gas:X,data:Y,nonce:Z,to:W,value:G,gasPrice:K}=$;VV($);let q=[Z?E(Z):"0x",K?E(K):"0x",X?E(X):"0x",W??"0x",G?E(G):"0x",Y??"0x"];if(J){let V=(()=>{if(J.v>=35n){if((J.v-35n)/2n>0)return J.v;return 27n+(J.v===35n?0n:1n)}if(Q>0)return BigInt(Q*2)+BigInt(35n+J.v-27n);let U=27n+(J.v===27n?0n:1n);if(J.v!==U)throw new fZ({v:J.v});return U})(),M=b$(J.r),D=b$(J.s);q=[...q,E(V),M==="0x00"?"0x":M,D==="0x00"?"0x":D]}else if(Q>0)q=[...q,E(Q),"0x","0x"];return c0(q)}function yX($,J){let Q=J??$,{v:X,yParity:Y}=Q;if(typeof Q.r>"u")return[];if(typeof Q.s>"u")return[];if(typeof X>"u"&&typeof Y>"u")return[];let Z=b$(Q.r),W=b$(Q.s);return[(()=>{if(typeof Y==="number")return Y?E(1):"0x";if(X===0n)return"0x";if(X===1n)return E(1);return X===27n?"0x":E(1)})(),Z==="0x00"?"0x":Z,W==="0x00"?"0x":W]}async function MV($){let{privateKey:J,transaction:Q,serializer:X=w5}=$,Y=(()=>{if(Q.type==="eip4844")return{...Q,sidecars:!1};return Q})(),Z=await HJ({hash:n(await X(Y)),privateKey:J});return await X(Q,Z)}async function DV($){let{privateKey:J,...Q}=$;return await HJ({hash:Y5(Q),privateKey:J,to:"hex"})}function NQ($,J={}){let{nonceManager:Q}=J,X=t(X0.getPublicKey($.slice(2),!1)),Y=I1(X);return{...XV({address:Y,nonceManager:Q,async sign({hash:W}){return HJ({hash:W,privateKey:$,to:"hex"})},async signAuthorization(W){return YV({...W,privateKey:$})},async signMessage({message:W}){return ZV({message:W,privateKey:$})},async signTransaction(W,{serializer:G}={}){return MV({privateKey:$,transaction:W,serializer:G})},async signTypedData(W){return DV({...W,privateKey:$})}}),publicKey:X,source:"privateKey"}}var UV={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}};P$();var NV={block:sK({format($){return{transactions:$.transactions?.map((Q)=>{if(typeof Q==="string")return Q;let X=rJ(Q);if(X.typeHex==="0x7e")X.isSystemTx=Q.isSystemTx,X.mint=Q.mint?Z$(Q.mint):void 0,X.sourceHash=Q.sourceHash,X.type="deposit";return X}),stateRoot:$.stateRoot}}}),transaction:iK({format($){let J={};if($.type==="0x7e")J.isSystemTx=$.isSystemTx,J.mint=$.mint?Z$($.mint):void 0,J.sourceHash=$.sourceHash,J.type="deposit";return J}}),transactionReceipt:S2({format($){return{l1GasPrice:$.l1GasPrice?Z$($.l1GasPrice):null,l1GasUsed:$.l1GasUsed?Z$($.l1GasUsed):null,l1Fee:$.l1Fee?Z$($.l1Fee):null,l1FeeScalar:$.l1FeeScalar?Number($.l1FeeScalar):null}}})};I0();V0();m();function yz($,J){if(bz($))return vz($);return w5($,J)}var wV={transaction:yz};function vz($){hz($);let{sourceHash:J,data:Q,from:X,gas:Y,isSystemTx:Z,mint:W,to:G,value:K}=$,q=[J,X,G??"0x",W?t(W):"0x",K?t(K):"0x",Y?t(Y):"0x",Z?"0x1":"0x",Q??"0x"];return R$(["0x7e",c0(q)])}function bz($){if($.type==="deposit")return!0;if(typeof $.sourceHash<"u")return!0;return!1}function hz($){let{from:J,to:Q}=$;if(J&&!s(J))throw new Y$({address:J});if(Q&&!s(Q))throw new Y$({address:Q})}var aW={blockTime:2000,contracts:UV,formatters:NV,serializers:wV};function eW($){let J={formatters:void 0,fees:void 0,serializers:void 0,...$};function Q(X){return(Y)=>{let Z=typeof Y==="function"?Y(X):Y,W={...X,...Z};return Object.assign(W,{extend:Q(W)})}}return Object.assign(J,{extend:Q(J)})}var eY=1,z5=eW({...aW,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{...aW.contracts,disputeGameFactory:{[eY]:{address:"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e"}},l2OutputOracle:{[eY]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[eY]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[eY]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:eY}),gz=eW({...z5,experimental_preconfirmationTime:200,rpcUrls:{default:{http:["https://mainnet-preconf.base.org"]}}});var $G=z5,dz=["https://base-rpc.publicnode.com","https://base.meowrpc.com","https://mainnet.base.org","https://developer-access-mainnet.base.org","https://base-mainnet.public.blastapi.io","https://base-public.nodies.app","https://1rpc.io/base"];function JG(){return uW(dz.map(($)=>cW($,{retryCount:0,timeout:2000,batch:!0})),{rank:!1})}function D$(){return yW({chain:$G,transport:JG()})}function H0($){let J=NQ($);return mW({account:J,chain:$G,transport:JG()})}var e=($,J=18)=>w$($,J),H$=($,J=18)=>i0($,J),tJ=($)=>`${$.slice(0,6)}...${$.slice(-4)}`,j8=($)=>$,I8=($)=>`https://basescan.org/tx/${$}`;function zV($){let J=[],Q=[];for(let X of $.split(",")){let[Y,Z]=X.trim().split(":");if(!Y||!Z)throw Error(`Invalid step: "${X}". Expected "range:price"`);J.push(H$(Y)),Q.push(H$(Z))}return{ranges:J,prices:Q}}function HV($){let J=$.reserveSymbol??tJ($.reserveToken);if(console.log([`
69
69
  \uD83E\uDE99 Token: ${$.name} (${$.symbol})`,`\uD83D\uDCCD Address: ${$.address}`,`\uD83D\uDC64 Creator: ${tJ($.creator)}`,`\uD83D\uDCB0 Reserve: ${J} (${tJ($.reserveToken)})`,`\uD83D\uDC8E Reserve Balance: ${e($.reserveBalance)} ${J}`,`\uD83D\uDCCA Supply: ${e($.currentSupply)} / ${e($.maxSupply)}`,`\uD83D\uDCB8 Mint Royalty: ${($.mintRoyalty/100).toFixed(2)}%`,`\uD83D\uDD25 Burn Royalty: ${($.burnRoyalty/100).toFixed(2)}%`,`\uD83D\uDCC5 Created: ${new Date($.createdAt*1000).toLocaleString()}`].join(`
70
- `)),$.steps.length>0){let Q=$.steps[0],X=$.steps[$.steps.length-1],Y=Number(Q.price)/1000000000000000000,Z=Number(X.price)/1000000000000000000,G=Y>0?(Z/Y).toFixed(0):"∞";console.log(`\uD83D\uDCC8 Bonding Curve: ${$.steps.length} steps, ${e(Q.price)} → ${e(X.price)} per token (+${G}x)`)}}var $$="0xc5a076cad94176c2996B32d8466Be1cE757FAa27",y$="0x7d999874eAe10f170C4813270173363468A559cD",t$=[{symbol:"ETH",address:"0x0000000000000000000000000000000000000000",decimals:18},{symbol:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:18},{symbol:"USDC",address:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",decimals:6},{symbol:"HUNT",address:"0x37f0c2915CeCC7e977183B8543Fc0864d03E064C",decimals:18},{symbol:"MT",address:"0xFf45161474C39cB00699070Dd49582e417b57a7E",decimals:18}],X0=t$.find(($)=>$.symbol==="WETH").address;function H5($){if($.startsWith("0x")&&$.length===42)return $;let J=t$.find((Q)=>Q.symbol.toUpperCase()===$.toUpperCase());if(J)return J.address;throw Error(`Unknown token "${$}". Use an address or one of: ${t$.map((Q)=>Q.symbol).join(", ")}`)}function vz($,J){let Q=n(pY(["address","string"],[$$,$])),X=Q$(["0x3d602d80600a3d3981f3363d3d373d3d3d363d73",J,"0x5af43d82803e903d91602b57fd5bf3"]),Y=n(X);return MG({from:$$,salt:Q,bytecodeHash:Y})}var bz="0xAa70bC79fD1cB4a6FBA717018351F0C3c64B79Df";async function OV($,J){if($.startsWith("0x")&&$.length===42)return $;let Q=t$.find((Z)=>Z.symbol.toUpperCase()===$.toUpperCase());if(Q)return Q.address;let X=bz,Y=[$];if($!==$.toUpperCase())Y.push($.toUpperCase());for(let Z of Y){let G=vz(Z,X),W=await J.getCode({address:G});if(W&&W!=="0x")return G}throw Error(`Token "${$}" not found on Mint Club. Use a contract address, or one of: ${t$.map((Z)=>Z.symbol).join(", ")}`)}function $9($){return t$.find((Q)=>Q.address.toLowerCase()===$.toLowerCase())?.symbol??`${$.slice(0,6)}...${$.slice(-4)}`}function aJ($){return t$.find((Q)=>Q.address.toLowerCase()===$.toLowerCase())?.decimals??18}var LV="0x00000000000D6FFc74A8feb35aF5827bf57f6786",CV=t$.filter(($)=>["WETH","USDC"].includes($.symbol));var q$=[{type:"function",name:"tokenBond",stateMutability:"view",inputs:[{name:"token",type:"address"}],outputs:[{name:"creator",type:"address"},{name:"mintRoyalty",type:"uint16"},{name:"burnRoyalty",type:"uint16"},{name:"createdAt",type:"uint40"},{name:"reserveToken",type:"address"},{name:"reserveBalance",type:"uint256"}]},{type:"function",name:"createToken",stateMutability:"payable",inputs:[{name:"tp",type:"tuple",components:[{name:"name",type:"string"},{name:"symbol",type:"string"}]},{name:"bp",type:"tuple",components:[{name:"mintRoyalty",type:"uint16"},{name:"burnRoyalty",type:"uint16"},{name:"reserveToken",type:"address"},{name:"maxSupply",type:"uint128"},{name:"stepRanges",type:"uint128[]"},{name:"stepPrices",type:"uint128[]"}]}],outputs:[{name:"",type:"address"}]},{type:"function",name:"mint",stateMutability:"nonpayable",inputs:[{name:"token",type:"address"},{name:"tokensToMint",type:"uint256"},{name:"maxReserveAmount",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"",type:"uint256"}]},{type:"function",name:"burn",stateMutability:"nonpayable",inputs:[{name:"token",type:"address"},{name:"tokensToBurn",type:"uint256"},{name:"minRefund",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"",type:"uint256"}]},{type:"function",name:"getReserveForToken",stateMutability:"view",inputs:[{name:"token",type:"address"},{name:"tokensToMint",type:"uint256"}],outputs:[{name:"reserveAmount",type:"uint256"},{name:"royalty",type:"uint256"}]},{type:"function",name:"getRefundForTokens",stateMutability:"view",inputs:[{name:"token",type:"address"},{name:"tokensToBurn",type:"uint256"}],outputs:[{name:"refundAmount",type:"uint256"},{name:"royalty",type:"uint256"}]},{type:"function",name:"getSteps",stateMutability:"view",inputs:[{name:"token",type:"address"}],outputs:[{name:"",type:"tuple[]",components:[{name:"rangeTo",type:"uint128"},{name:"price",type:"uint128"}]}]},{type:"function",name:"maxSupply",stateMutability:"view",inputs:[{name:"token",type:"address"}],outputs:[{name:"",type:"uint128"}]},{type:"function",name:"creationFee",stateMutability:"view",inputs:[],outputs:[{name:"",type:"uint256"}]}];var Y0=[{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}];async function v$($,J){let Q=t$.find((X)=>X.address.toLowerCase()===J.toLowerCase());if(Q)return Q.symbol;try{return await $.readContract({address:J,abi:Y0,functionName:"symbol"})}catch{return`${J.slice(0,6)}...${J.slice(-4)}`}}async function E0($,J){let Q=await $.readContract({address:$$,abi:q$,functionName:"tokenBond",args:[J]}),[X,Y,Z,G,W,K]=Q,q=await v$($,W),V=aJ(W);return{creator:X,mintRoyalty:Y,burnRoyalty:Z,createdAt:G,reserveToken:W,reserveBalance:K,reserveSymbol:q,reserveDecimals:V,formatReserve:(D)=>w$(D,V)}}async function O5($,J,Q){let[X,Y]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,Q]});return{reserveAmount:X,royalty:Y,totalCost:X+Y}}async function L5($,J,Q){let[X,Y]=await $.readContract({address:$$,abi:q$,functionName:"getRefundForTokens",args:[J,Q]});return{refundAmount:X,royalty:Y,netRefund:X-Y}}async function J9($,J){let[Q]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,10n**18n]});return Q}var SV=t$.find(($)=>$.symbol==="USDC").address,hz=[{type:"function",name:"getRate",stateMutability:"view",inputs:[{name:"srcToken",type:"address"},{name:"dstToken",type:"address"},{name:"useWrappers",type:"bool"}],outputs:[{name:"weightedRate",type:"uint256"}]}];async function vX($){let J=D$(),Q=$==="0x0000000000000000000000000000000000000000"?X0:$;if(Q.toLowerCase()===SV.toLowerCase())return 1;try{let X=await J.readContract({address:LV,abi:hz,functionName:"getRate",args:[Q,SV,!1]});return Number(X)/1e6}catch{return null}}async function RV($,J){let[Q,X,Y,Z,G,W]=await $.multicall({contracts:[{address:J,abi:Y0,functionName:"name"},{address:J,abi:Y0,functionName:"symbol"},{address:J,abi:Y0,functionName:"totalSupply"},{address:$$,abi:q$,functionName:"tokenBond",args:[J]},{address:$$,abi:q$,functionName:"maxSupply",args:[J]},{address:$$,abi:q$,functionName:"getSteps",args:[J]}]});if(Z.status==="failure")throw Error("Not a Mint Club token");let K=await E0($,J),q;if(Y.result&&Y.result>0n)try{q=await J9($,J)}catch{}return{name:Q.result??"Unknown",symbol:X.result??"Unknown",address:J,totalSupply:Y.result??0n,maxSupply:G.result??0n,bondInfo:K,currentPrice:q,steps:W.result}}async function C5($,J,Q){let X=await J9($,J),Y=await E0($,J),Z=await vX(Y.reserveToken),G,W,K;if(Z!==null){if(G=Number(X)/10**Y.reserveDecimals*Z,W=Number(Y.reserveBalance)/10**Y.reserveDecimals*Z,Q>0n)K=Number(Q)/1000000000000000000*G}return{tokenPrice:X,tokenUsd:G,reserveUsd:Z,reserveValue:W,marketCap:K}}function _8($){if($<0.01)return $.toExponential(2);return $.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:$<1?4:2})}async function BV($){console.log(`\uD83D\uDD0D Fetching token info for ${$} on Base...
71
- `);let J=D$(),Q=await RV(J,$);if(HV({name:Q.name,symbol:Q.symbol,address:Q.address,creator:Q.bondInfo.creator,reserveToken:Q.bondInfo.reserveToken,reserveSymbol:Q.bondInfo.reserveSymbol,reserveBalance:Q.bondInfo.reserveBalance,currentSupply:Q.totalSupply,maxSupply:Q.maxSupply,mintRoyalty:Q.bondInfo.mintRoyalty,burnRoyalty:Q.bondInfo.burnRoyalty,createdAt:Number(Q.bondInfo.createdAt),steps:Q.steps??[]}),Q.totalSupply>0n&&Q.currentPrice)try{let X=await C5(J,$,Q.totalSupply),Y=`
72
- \uD83D\uDCB1 Current Price: ${e(X.tokenPrice)} ${Q.bondInfo.reserveSymbol} per 1 ${Q.symbol}`;if(X.tokenUsd!==void 0&&X.reserveValue!==void 0){if(Y+=` (~$${_8(X.tokenUsd)})`,Y+=`
73
- \uD83D\uDCB5 Reserve Value: ~$${_8(X.reserveValue)}`,X.marketCap!==void 0)Y+=`
74
- \uD83D\uDCCA Market Cap: ~$${_8(X.marketCap)}`}console.log(Y)}catch{console.log(`
75
- ⚠️ Could not fetch current price`)}}var FV=[...Y0,{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]}];async function O0($,J,Q,X,Y){let Z=J.account.address;if(await $.readContract({address:Q,abi:FV,functionName:"allowance",args:[Z,X]})>=Y)return;console.log("\uD83D\uDD13 Approving...");let W=await J.writeContract({address:Q,abi:FV,functionName:"approve",args:[X,lJ]});await $.waitForTransactionReceipt({hash:W})}import{resolve as EV}from"path";import{homedir as jV}from"os";import{existsSync as gz,readFileSync as dz,writeFileSync as mz,mkdirSync as uz}from"fs";var QW=EV(jV(),".mintclub","tokens.json");function XW(){if(!gz(QW))return[];try{let $=JSON.parse(dz(QW,"utf-8"));return Array.isArray($)?$:[]}catch{return[]}}function IV($){let J=XW(),Q=V0($);if(J.some((X)=>X.toLowerCase()===Q.toLowerCase()))return;J.push(Q),uz(EV(jV(),".mintclub"),{recursive:!0}),mz(QW,JSON.stringify(J,null,2)+`
76
- `)}async function L0($,J,Q,X,Y){let Z=J.account;await $.simulateContract({account:Z,...X}),console.log("\uD83D\uDCE4 Sending...");let G=await J.writeContract(X);if(console.log(` TX: ${j8(G)}`),console.log(` ${I8(G)}`),(await $.waitForTransactionReceipt({hash:G})).status==="success"){if(Q)IV(Q);console.log(`✅ ${Y}`)}else throw Error("Transaction failed")}function T8($,J,Q){let X=$(),Y=J(Q),Z=Y.account.address;return{publicClient:X,walletClient:Y,account:Z}}async function _V($,J,Q,X){let{publicClient:Y,walletClient:Z,account:G}=T8(D$,H0,X),W=H$(J),K=await E0(Y,$),q=await v$(Y,$);console.log(`\uD83D\uDED2 Buying ${J} ${q}...`);let{reserveAmount:V,royalty:M,totalCost:D}=await O5(Y,$,W);if(console.log(` Cost: ${K.formatReserve(V)} + ${K.formatReserve(M)} royalty = ${K.formatReserve(D)} ${K.reserveSymbol}`),Q&&D>H$(Q))throw Error(`Cost ${K.formatReserve(D)} ${K.reserveSymbol} exceeds max ${Q}`);await O0(Y,Z,K.reserveToken,$$,D),await L0(Y,Z,$,{address:$$,abi:q$,functionName:"mint",args:[$,W,D,G]},`Bought ${J} ${q} for ${K.formatReserve(D)} ${K.reserveSymbol}`)}async function TV($,J,Q,X){let{publicClient:Y,walletClient:Z,account:G}=T8(D$,H0,X),W=H$(J),K=await E0(Y,$),q=await v$(Y,$);console.log(`\uD83D\uDD25 Selling ${J} ${q}...`);let{refundAmount:V,royalty:M,netRefund:D}=await L5(Y,$,W);if(console.log(` Refund: ${K.formatReserve(V)} - ${K.formatReserve(M)} royalty = ${K.formatReserve(D)} ${K.reserveSymbol}`),Q&&D<H$(Q))throw Error(`Refund ${K.formatReserve(D)} ${K.reserveSymbol} below minimum ${Q}`);let U=Q?H$(Q):0n;await O0(Y,Z,$,$$,W),await L0(Y,Z,$,{address:$$,abi:q$,functionName:"burn",args:[$,W,U,G]},`Sold ${J} ${q} for ${K.formatReserve(D)} ${K.reserveSymbol}`)}import{createInterface as lz}from"readline";var pz=500;function AV($,J,Q,X){let Y=o0(J,18),Z=parseFloat(Q),G=parseFloat(X);if(Z<=0||G<=0)throw Error("Prices must be positive");if($==="flat"&&Z!==G)throw Error("Flat curve requires initial and final price to be the same");let W=[],K=[],q=$==="flat"?1:pz;for(let V=0;V<q;V++){let M=q===1?1:(V+1)/q,D=Y*BigInt(V+1)/BigInt(q),U;switch($){case"linear":U=Z+(G-Z)*M;break;case"exponential":U=Z*Math.pow(G/Z,M);break;case"logarithmic":U=Z+(G-Z)*Math.log(1+M*(Math.E-1));break;case"flat":U=Z;break}W.push(D),K.push(o0(U.toFixed(18),18))}return{ranges:W,prices:K}}function PV($){return["linear","exponential","logarithmic","flat"].includes($)}function xV($,J,Q=[10,25,50,75,100]){let X=$[$.length-1],Y=[];for(let Z of Q){let G=X*BigInt(Z)/100n,W=0n,K=0n;for(let q=0;q<$.length;q++){let V=K,M=$[q],D=J[q];if(G<=V)break;let z=(G<M?G:M)-V;if(W+=z*D/10n**18n,K=M,G<=M)break}Y.push({milestone:Z,supply:G,cost:W})}return Y}function YW($,J=18){let Q=Number($)/1000000000000000000;if(Q>=1e9)return`${(Q/1e9).toFixed(2)}B`;if(Q>=1e6)return`${(Q/1e6).toFixed(2)}M`;if(Q>=1000)return`${(Q/1000).toFixed(2)}K`;if(Q>=1)return Q.toFixed(2);if(Q>=0.001)return Q.toFixed(4);return Q.toFixed(6)}function cz($){let J=lz({input:process.stdin,output:process.stdout});return new Promise((Q)=>{J.question($,(X)=>{J.close(),Q(X.toLowerCase()==="y"||X.toLowerCase()==="yes")})})}async function kV($,J,Q,X,Y,Z){let G=D$(),W=H0(Y),K=W.account,q,V;if(Z.curve){if(!PV(Z.curve))throw Error(`Invalid curve: ${Z.curve}. Options: linear, exponential, logarithmic, flat`);if(!Z.initialPrice||!Z.finalPrice)throw Error("--initial-price and --final-price are required with --curve");({ranges:q,prices:V}=AV(Z.curve,X,Z.initialPrice,Z.finalPrice)),console.log(`\uD83D\uDE80 Creating "${$}" (${J}) on Base...`),console.log(` Reserve: ${Q} | Max supply: ${X}`),console.log(` Curve: ${Z.curve} | ${Z.initialPrice} → ${Z.finalPrice} | ${q.length} steps`)}else if(Z.steps)({ranges:q,prices:V}=zV(Z.steps)),console.log(`\uD83D\uDE80 Creating "${$}" (${J}) on Base...`),console.log(` Reserve: ${Q} | Max supply: ${X} | Steps: ${q.length}`);else throw Error("Provide either --steps or --curve (with --initial-price and --final-price)");let M=Z.mintRoyalty??0,D=Z.burnRoyalty??0;console.log(` Royalties: mint ${M/100}% / burn ${D/100}%`);let U=await G.readContract({address:$$,abi:q$,functionName:"creationFee"});if(U>0n)console.log(` Creation fee: ${e(U)} ETH`);console.log(`
70
+ `)),$.steps.length>0){let Q=$.steps[0],X=$.steps[$.steps.length-1],Y=Number(Q.price)/1000000000000000000,Z=Number(X.price)/1000000000000000000,W=Y>0?(Z/Y).toFixed(0):"∞";console.log(`\uD83D\uDCC8 Bonding Curve: ${$.steps.length} steps, ${e(Q.price)} → ${e(X.price)} per token (+${W}x)`)}}var $$="0xc5a076cad94176c2996B32d8466Be1cE757FAa27",y$="0x7d999874eAe10f170C4813270173363468A559cD",a$=[{symbol:"ETH",address:"0x0000000000000000000000000000000000000000",decimals:18},{symbol:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:18},{symbol:"USDC",address:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",decimals:6},{symbol:"HUNT",address:"0x37f0c2915CeCC7e977183B8543Fc0864d03E064C",decimals:18},{symbol:"MT",address:"0xFf45161474C39cB00699070Dd49582e417b57a7E",decimals:18}],Y0=a$.find(($)=>$.symbol==="WETH").address;function H5($){if($.startsWith("0x")&&$.length===42)return $;let J=a$.find((Q)=>Q.symbol.toUpperCase()===$.toUpperCase());if(J)return J.address;throw Error(`Unknown token "${$}". Use an address or one of: ${a$.map((Q)=>Q.symbol).join(", ")}`)}function mz($,J){let Q=n(tY(["address","string"],[$$,$])),X=Q$(["0x3d602d80600a3d3981f3363d3d373d3d3d363d73",J,"0x5af43d82803e903d91602b57fd5bf3"]),Y=n(X);return oW({from:$$,salt:Q,bytecodeHash:Y})}var uz="0xAa70bC79fD1cB4a6FBA717018351F0C3c64B79Df";async function OV($,J){if($.startsWith("0x")&&$.length===42)return $;let Q=a$.find((Z)=>Z.symbol.toUpperCase()===$.toUpperCase());if(Q)return Q.address;let X=uz,Y=[$];if($!==$.toUpperCase())Y.push($.toUpperCase());for(let Z of Y){let W=mz(Z,X),G=await J.getCode({address:W});if(G&&G!=="0x")return W}throw Error(`Token "${$}" not found on Mint Club. Use a contract address, or one of: ${a$.map((Z)=>Z.symbol).join(", ")}`)}function $9($){return a$.find((Q)=>Q.address.toLowerCase()===$.toLowerCase())?.symbol??`${$.slice(0,6)}...${$.slice(-4)}`}function aJ($){return a$.find((Q)=>Q.address.toLowerCase()===$.toLowerCase())?.decimals??18}var LV="0x00000000000D6FFc74A8feb35aF5827bf57f6786",CV=a$.filter(($)=>["WETH","USDC"].includes($.symbol));var q$=[{type:"function",name:"tokenBond",stateMutability:"view",inputs:[{name:"token",type:"address"}],outputs:[{name:"creator",type:"address"},{name:"mintRoyalty",type:"uint16"},{name:"burnRoyalty",type:"uint16"},{name:"createdAt",type:"uint40"},{name:"reserveToken",type:"address"},{name:"reserveBalance",type:"uint256"}]},{type:"function",name:"createToken",stateMutability:"payable",inputs:[{name:"tp",type:"tuple",components:[{name:"name",type:"string"},{name:"symbol",type:"string"}]},{name:"bp",type:"tuple",components:[{name:"mintRoyalty",type:"uint16"},{name:"burnRoyalty",type:"uint16"},{name:"reserveToken",type:"address"},{name:"maxSupply",type:"uint128"},{name:"stepRanges",type:"uint128[]"},{name:"stepPrices",type:"uint128[]"}]}],outputs:[{name:"",type:"address"}]},{type:"function",name:"mint",stateMutability:"nonpayable",inputs:[{name:"token",type:"address"},{name:"tokensToMint",type:"uint256"},{name:"maxReserveAmount",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"",type:"uint256"}]},{type:"function",name:"burn",stateMutability:"nonpayable",inputs:[{name:"token",type:"address"},{name:"tokensToBurn",type:"uint256"},{name:"minRefund",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"",type:"uint256"}]},{type:"function",name:"getReserveForToken",stateMutability:"view",inputs:[{name:"token",type:"address"},{name:"tokensToMint",type:"uint256"}],outputs:[{name:"reserveAmount",type:"uint256"},{name:"royalty",type:"uint256"}]},{type:"function",name:"getRefundForTokens",stateMutability:"view",inputs:[{name:"token",type:"address"},{name:"tokensToBurn",type:"uint256"}],outputs:[{name:"refundAmount",type:"uint256"},{name:"royalty",type:"uint256"}]},{type:"function",name:"getSteps",stateMutability:"view",inputs:[{name:"token",type:"address"}],outputs:[{name:"",type:"tuple[]",components:[{name:"rangeTo",type:"uint128"},{name:"price",type:"uint128"}]}]},{type:"function",name:"maxSupply",stateMutability:"view",inputs:[{name:"token",type:"address"}],outputs:[{name:"",type:"uint128"}]},{type:"function",name:"creationFee",stateMutability:"view",inputs:[],outputs:[{name:"",type:"uint256"}]}];var l$=[{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}];async function v$($,J){let Q=a$.find((X)=>X.address.toLowerCase()===J.toLowerCase());if(Q)return Q.symbol;try{return await $.readContract({address:J,abi:l$,functionName:"symbol"})}catch{return`${J.slice(0,6)}...${J.slice(-4)}`}}async function E0($,J){let Q=await $.readContract({address:$$,abi:q$,functionName:"tokenBond",args:[J]}),[X,Y,Z,W,G,K]=Q,q=await v$($,G),V=aJ(G);return{creator:X,mintRoyalty:Y,burnRoyalty:Z,createdAt:W,reserveToken:G,reserveBalance:K,reserveSymbol:q,reserveDecimals:V,formatReserve:(D)=>w$(D,V)}}async function O5($,J,Q){let[X,Y]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,Q]});return{reserveAmount:X,royalty:Y,totalCost:X+Y}}async function L5($,J,Q){let[X,Y]=await $.readContract({address:$$,abi:q$,functionName:"getRefundForTokens",args:[J,Q]});return{refundAmount:X,royalty:Y,netRefund:X-Y}}async function J9($,J){let[Q]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,10n**18n]});return Q}var SV=a$.find(($)=>$.symbol==="USDC").address,pz=[{type:"function",name:"getRate",stateMutability:"view",inputs:[{name:"srcToken",type:"address"},{name:"dstToken",type:"address"},{name:"useWrappers",type:"bool"}],outputs:[{name:"weightedRate",type:"uint256"}]}];async function vX($){let J=D$(),Q=$==="0x0000000000000000000000000000000000000000"?Y0:$;if(Q.toLowerCase()===SV.toLowerCase())return 1;try{let X=await J.readContract({address:LV,abi:pz,functionName:"getRate",args:[Q,SV,!1]});return Number(X)/1e6}catch{return null}}async function RV($,J){let[Q,X,Y,Z,W,G]=await $.multicall({contracts:[{address:J,abi:l$,functionName:"name"},{address:J,abi:l$,functionName:"symbol"},{address:J,abi:l$,functionName:"totalSupply"},{address:$$,abi:q$,functionName:"tokenBond",args:[J]},{address:$$,abi:q$,functionName:"maxSupply",args:[J]},{address:$$,abi:q$,functionName:"getSteps",args:[J]}]});if(Z.status==="failure")throw Error("Not a Mint Club token");let K=await E0($,J),q;if(Y.result&&Y.result>0n)try{q=await J9($,J)}catch{}return{name:Q.result??"Unknown",symbol:X.result??"Unknown",address:J,totalSupply:Y.result??0n,maxSupply:W.result??0n,bondInfo:K,currentPrice:q,steps:G.result}}async function C5($,J,Q){let X=await J9($,J),Y=await E0($,J),Z=await vX(Y.reserveToken),W,G,K;if(Z!==null){if(W=Number(X)/10**Y.reserveDecimals*Z,G=Number(Y.reserveBalance)/10**Y.reserveDecimals*Z,Q>0n)K=Number(Q)/1000000000000000000*W}return{tokenPrice:X,tokenUsd:W,reserveUsd:Z??void 0,reserveValue:G,marketCap:K}}function T8($){if($<0.01)return $.toExponential(2);return $.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:$<1?4:2})}async function BV($){console.log(`\uD83D\uDD0D Fetching token info for ${$} on Base...
71
+ `);let J=D$(),Q=await RV(J,$);if(HV({name:Q.name,symbol:Q.symbol,address:Q.address,creator:Q.bondInfo.creator,reserveToken:Q.bondInfo.reserveToken,reserveSymbol:Q.bondInfo.reserveSymbol,reserveBalance:Q.bondInfo.reserveBalance,currentSupply:Q.totalSupply,maxSupply:Q.maxSupply,mintRoyalty:Q.bondInfo.mintRoyalty,burnRoyalty:Q.bondInfo.burnRoyalty,createdAt:Q.bondInfo.createdAt,steps:Q.steps??[]}),Q.totalSupply>0n&&Q.currentPrice)try{let X=await C5(J,$,Q.totalSupply),Y=`
72
+ \uD83D\uDCB1 Current Price: ${e(X.tokenPrice)} ${Q.bondInfo.reserveSymbol} per 1 ${Q.symbol}`;if(X.tokenUsd!==void 0&&X.reserveValue!==void 0){if(Y+=` (~$${T8(X.tokenUsd)})`,Y+=`
73
+ \uD83D\uDCB5 Reserve Value: ~$${T8(X.reserveValue)}`,X.marketCap!==void 0)Y+=`
74
+ \uD83D\uDCCA Market Cap: ~$${T8(X.marketCap)}`}console.log(Y)}catch{console.log(`
75
+ ⚠️ Could not fetch current price`)}}var FV=[...l$,{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]}];async function O0($,J,Q,X,Y){let Z=J.account.address;if(await $.readContract({address:Q,abi:FV,functionName:"allowance",args:[Z,X]})>=Y)return;console.log("\uD83D\uDD13 Approving...");let G=await J.writeContract({address:Q,abi:FV,functionName:"approve",args:[X,oJ]});await $.waitForTransactionReceipt({hash:G})}import{resolve as EV}from"path";import{homedir as jV}from"os";import{existsSync as lz,readFileSync as cz,writeFileSync as nz,mkdirSync as oz}from"fs";var QG=EV(jV(),".mintclub","tokens.json");function XG(){if(!lz(QG))return[];try{let $=JSON.parse(cz(QG,"utf-8"));return Array.isArray($)?$:[]}catch{return[]}}function IV($){let J=XG(),Q=M0($);if(J.some((X)=>X.toLowerCase()===Q.toLowerCase()))return;J.push(Q),oz(EV(jV(),".mintclub"),{recursive:!0}),nz(QG,JSON.stringify(J,null,2)+`
76
+ `)}async function L0($,J,Q,X,Y){let Z=J.account;await $.simulateContract({account:Z,...X}),console.log("\uD83D\uDCE4 Sending...");let W=await J.writeContract(X);if(console.log(` TX: ${j8(W)}`),console.log(` ${I8(W)}`),(await $.waitForTransactionReceipt({hash:W})).status==="success"){if(Q)IV(Q);console.log(`✅ ${Y}`)}else throw Error("Transaction failed")}function _8($,J,Q){let X=$(),Y=J(Q),Z=Y.account.address;return{publicClient:X,walletClient:Y,account:Z}}async function TV($,J,Q,X){let{publicClient:Y,walletClient:Z,account:W}=_8(D$,H0,X),G=H$(J),K=await E0(Y,$),q=await v$(Y,$);console.log(`\uD83D\uDED2 Buying ${J} ${q}...`);let{reserveAmount:V,royalty:M,totalCost:D}=await O5(Y,$,G);if(console.log(` Cost: ${K.formatReserve(V)} + ${K.formatReserve(M)} royalty = ${K.formatReserve(D)} ${K.reserveSymbol}`),Q&&D>H$(Q))throw Error(`Cost ${K.formatReserve(D)} ${K.reserveSymbol} exceeds max ${Q}`);await O0(Y,Z,K.reserveToken,$$,D),await L0(Y,Z,$,{address:$$,abi:q$,functionName:"mint",args:[$,G,D,W]},`Bought ${J} ${q} for ${K.formatReserve(D)} ${K.reserveSymbol}`)}async function _V($,J,Q,X){let{publicClient:Y,walletClient:Z,account:W}=_8(D$,H0,X),G=H$(J),K=await E0(Y,$),q=await v$(Y,$);console.log(`\uD83D\uDD25 Selling ${J} ${q}...`);let{refundAmount:V,royalty:M,netRefund:D}=await L5(Y,$,G);if(console.log(` Refund: ${K.formatReserve(V)} - ${K.formatReserve(M)} royalty = ${K.formatReserve(D)} ${K.reserveSymbol}`),Q&&D<H$(Q))throw Error(`Refund ${K.formatReserve(D)} ${K.reserveSymbol} below minimum ${Q}`);let U=Q?H$(Q):0n;await O0(Y,Z,$,$$,G),await L0(Y,Z,$,{address:$$,abi:q$,functionName:"burn",args:[$,G,U,W]},`Sold ${J} ${q} for ${K.formatReserve(D)} ${K.reserveSymbol}`)}import{createInterface as sz}from"readline";var iz=500;function AV($,J,Q,X){let Y=i0(J,18),Z=parseFloat(Q),W=parseFloat(X);if(Z<=0||W<=0)throw Error("Prices must be positive");if($==="flat"&&Z!==W)throw Error("Flat curve requires initial and final price to be the same");let G=[],K=[],q=$==="flat"?1:iz;for(let V=0;V<q;V++){let M=q===1?1:(V+1)/q,D=Y*BigInt(V+1)/BigInt(q),U;switch($){case"linear":U=Z+(W-Z)*M;break;case"exponential":U=Z*Math.pow(W/Z,M);break;case"logarithmic":U=Z+(W-Z)*Math.log(1+M*(Math.E-1));break;case"flat":U=Z;break}G.push(D),K.push(i0(U.toFixed(18),18))}return{ranges:G,prices:K}}function PV($){return["linear","exponential","logarithmic","flat"].includes($)}function xV($,J,Q=[10,25,50,75,100]){let X=$[$.length-1],Y=[];for(let Z of Q){let W=X*BigInt(Z)/100n,G=0n,K=0n;for(let q=0;q<$.length;q++){let V=K,M=$[q],D=J[q];if(W<=V)break;let z=(W<M?W:M)-V;if(G+=z*D/10n**18n,K=M,W<=M)break}Y.push({milestone:Z,supply:W,cost:G})}return Y}function YG($,J=18){let Q=Number($)/1000000000000000000;if(Q>=1e9)return`${(Q/1e9).toFixed(2)}B`;if(Q>=1e6)return`${(Q/1e6).toFixed(2)}M`;if(Q>=1000)return`${(Q/1000).toFixed(2)}K`;if(Q>=1)return Q.toFixed(2);if(Q>=0.001)return Q.toFixed(4);return Q.toFixed(6)}function rz($){let J=sz({input:process.stdin,output:process.stdout});return new Promise((Q)=>{J.question($,(X)=>{J.close(),Q(X.toLowerCase()==="y"||X.toLowerCase()==="yes")})})}async function kV($,J,Q,X,Y,Z){let W=D$(),G=H0(Y),K=G.account,q,V;if(Z.curve){if(!PV(Z.curve))throw Error(`Invalid curve: ${Z.curve}. Options: linear, exponential, logarithmic, flat`);if(!Z.initialPrice||!Z.finalPrice)throw Error("--initial-price and --final-price are required with --curve");({ranges:q,prices:V}=AV(Z.curve,X,Z.initialPrice,Z.finalPrice)),console.log(`\uD83D\uDE80 Creating "${$}" (${J}) on Base...`),console.log(` Reserve: ${Q} | Max supply: ${X}`),console.log(` Curve: ${Z.curve} | ${Z.initialPrice} → ${Z.finalPrice} | ${q.length} steps`)}else if(Z.steps)({ranges:q,prices:V}=zV(Z.steps)),console.log(`\uD83D\uDE80 Creating "${$}" (${J}) on Base...`),console.log(` Reserve: ${Q} | Max supply: ${X} | Steps: ${q.length}`);else throw Error("Provide either --steps or --curve (with --initial-price and --final-price)");let M=Z.mintRoyalty??0,D=Z.burnRoyalty??0;console.log(` Royalties: mint ${M/100}% / burn ${D/100}%`);let U=await W.readContract({address:$$,abi:q$,functionName:"creationFee"});if(U>0n)console.log(` Creation fee: ${e(U)} ETH`);console.log(`
77
77
  \uD83D\uDCCA Price Range: ${e(V[0])} → ${e(V[V.length-1])} reserve per token`);let z=xV(q,V),w=z[z.length-1].cost;if(console.log(`
78
- \uD83D\uDCB0 Accumulated reserve required to mint:`),console.log(` ${z.map((S)=>`${S.milestone}%`.padStart(12)).join("")}`),console.log(` ${z.map((S)=>YW(S.cost).padStart(12)).join("")}`),console.log(`
79
- \uD83C\uDFE6 Max TVL (fully minted): ${YW(w)} reserve`),!Z.yes){if(!await cz(`
80
- ⚡ Proceed with token creation? (y/N) `)){console.log("❌ Cancelled.");return}}let L={name:$,symbol:J},O={mintRoyalty:M,burnRoyalty:D,reserveToken:Q,maxSupply:H$(X),stepRanges:q,stepPrices:V},{result:C}=await G.simulateContract({account:K,address:$$,abi:q$,functionName:"createToken",args:[L,O],value:U});console.log(` Expected address: ${C}`),console.log("\uD83D\uDCE4 Sending...");let N=await W.writeContract({address:$$,abi:q$,functionName:"createToken",args:[L,O],value:U});console.log(` TX: ${j8(N)}`),console.log(` ${I8(N)}`);let H=await G.waitForTransactionReceipt({hash:N});if(H.status==="success")console.log(`✅ Token created at ${C} (block ${H.blockNumber})`);else throw Error("Transaction failed")}var s0=[{type:"function",name:"zapMint",stateMutability:"payable",inputs:[{name:"token",type:"address"},{name:"inputToken",type:"address"},{name:"inputAmount",type:"uint256"},{name:"minTokensOut",type:"uint256"},{name:"commands",type:"bytes"},{name:"inputs",type:"bytes[]"},{name:"deadline",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"tokensReceived",type:"uint256"},{name:"reserveUsed",type:"uint256"}]},{type:"function",name:"zapBurn",stateMutability:"nonpayable",inputs:[{name:"token",type:"address"},{name:"tokensToBurn",type:"uint256"},{name:"outputToken",type:"address"},{name:"minOutputAmount",type:"uint256"},{name:"commands",type:"bytes"},{name:"inputs",type:"bytes[]"},{name:"deadline",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"outputAmount",type:"uint256"},{name:"reserveReceived",type:"uint256"}]}];function wQ($,J){if($.length!==J.length+1)throw Error("tokens.length must equal fees.length + 1");let Q=$[0];for(let X=0;X<J.length;X++){let Y=`0x${J[X].toString(16).padStart(6,"0")}`;Q=pY(["bytes","bytes","bytes"],[Q,Y,$[X+1]])}return Q}function zQ($,J,Q,X){return W$(l$("address, uint256, uint256, bytes, bool"),[$,J,Q,X,!1])}var r0="0x00",bX="0x0b",nz="0x0000000000000000000000000000000000000002";function hX($){return W$(l$("address, uint256"),[nz,$])}var Q9="0x0c";function X9($,J){return W$(l$("address, uint256"),[$,J])}function S5($){let J=$.split(",").map((Y)=>Y.trim()),Q=[],X=[];for(let Y=0;Y<J.length;Y++)if(Y%2===0){if(!J[Y].startsWith("0x")||J[Y].length!==42)throw Error(`Invalid token address at position ${Y}: ${J[Y]}`);Q.push(J[Y])}else{let Z=parseInt(J[Y]);if(isNaN(Z)||Z<=0)throw Error(`Invalid fee: ${J[Y]}`);X.push(Z)}if(Q.length!==X.length+1)throw Error("Path format: token0,fee,token1,fee,token2,...");return{tokens:Q,fees:X}}var oz="0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",iz="0x0d5e0f971ed27fbff6c2837bf31316121532048d",sz=[{type:"function",name:"quoteExactInput",stateMutability:"nonpayable",inputs:[{name:"path",type:"bytes"},{name:"amountIn",type:"uint256"}],outputs:[{name:"amountOut",type:"uint256"},{name:"sqrtPriceX96AfterList",type:"uint160[]"},{name:"initializedTicksCrossedList",type:"uint32[]"},{name:"gasEstimate",type:"uint256"}]}],rz=[{type:"function",name:"quoteExactInputSingle",stateMutability:"nonpayable",inputs:[{name:"params",type:"tuple",components:[{name:"poolKey",type:"tuple",components:[{name:"currency0",type:"address"},{name:"currency1",type:"address"},{name:"fee",type:"uint24"},{name:"tickSpacing",type:"int24"},{name:"hooks",type:"address"}]},{name:"zeroForOne",type:"bool"},{name:"exactAmount",type:"uint128"},{name:"sqrtPriceLimitX96",type:"uint160"},{name:"hookData",type:"bytes"}]}],outputs:[{name:"deltaAmounts",type:"int128[]"},{name:"sqrtPriceX96After",type:"uint160"},{name:"initializedTicksCrossed",type:"uint32"}]}],ZW=[100,500,3000,1e4],gX="0x0000000000000000000000000000000000000000",tz=[{currency0:gX,currency1:V0("0x37f0c2915CeCC7e977183B8543Fc0864d03E064C"),fee:49,tickSpacing:1,hooks:gX}];async function fV($,J,Q){try{let{result:X}=await $.simulateContract({address:oz,abi:sz,functionName:"quoteExactInput",args:[J,Q]});return X[0]}catch{return null}}async function az($,J,Q,X){try{let{result:Y}=await $.simulateContract({address:iz,abi:rz,functionName:"quoteExactInputSingle",args:[{poolKey:{currency0:J.currency0,currency1:J.currency1,fee:J.fee,tickSpacing:J.tickSpacing,hooks:J.hooks},zeroForOne:Q,exactAmount:X,sqrtPriceLimitX96:0n,hookData:"0x"}]}),W=Y[0][Q?1:0];return W>0n?W:-W}catch{return null}}function yV($){if($.toLowerCase()===X0.toLowerCase()||$.toLowerCase()===gX.toLowerCase())return gX;return $}async function R5($,J,Q,X){let Y=J.toLowerCase()===gX?X0:J,Z=yV(J),G=yV(Q);if(Y.toLowerCase()===Q.toLowerCase())return null;let W=[];console.log("\uD83D\uDD0D Finding best swap route (V3 + V4)...");let K=Q.toLowerCase()===gX?X0:Q;if(Y.toLowerCase()!==K.toLowerCase()){let M=ZW.map(async(U)=>{let z=wQ([Y,K],[U]),w=await fV($,z,X);if(w&&w>0n)W.push({version:"v3",path:z,tokens:[Y,K],fees:[U],amountOut:w,description:`V3 Direct (fee: ${U/1e4}%)`})}),D=CV.flatMap((U)=>{if(U.address.toLowerCase()===Y.toLowerCase()||U.address.toLowerCase()===K.toLowerCase())return[];return ZW.flatMap((z)=>ZW.map(async(w)=>{let L=wQ([Y,U.address,K],[z,w]),O=await fV($,L,X);if(O&&O>0n)W.push({version:"v3",path:L,tokens:[Y,U.address,K],fees:[z,w],amountOut:O,description:`V3 via ${U.symbol} (fees: ${z/1e4}% → ${w/1e4}%)`})}))});await Promise.all([...M,...D])}let q=tz.map(async(M)=>{let D=M.currency0.toLowerCase(),U=M.currency1.toLowerCase(),z=Z.toLowerCase(),w=G.toLowerCase(),L=null;if(z===D&&w===U)L=!0;else if(z===U&&w===D)L=!1;if(L===null)return;let O=await az($,M,L,X);if(O&&O>0n){let C=M.fee<100?`${M.fee}bp`:`${M.fee/1e4}%`;W.push({version:"v4",path:"0x",tokens:[],fees:[],poolKey:M,zeroForOne:L,amountOut:O,description:`V4 Direct (fee: ${C})`})}});if(await Promise.all(q),W.length===0)return null;W.sort((M,D)=>D.amountOut>M.amountOut?1:-1);let V=W[0];return console.log(` ✅ Best route: ${V.description} → ${W.length} routes checked`),V}var B5="0x0000000000000000000000000000000000000000";async function HQ($,J,Q=!0){let X=J.toLowerCase()===B5.toLowerCase(),Y=X?B5:J,Z=X?18:aJ(J),G=X?"ETH":await v$($,J);return{isETH:X,actualToken:Y,symbol:G,decimals:Z}}async function OQ($,J,Q,X,Y){if(Y){let K=S5(Y);return{path:wQ(K.tokens,K.fees),tokens:K.tokens,fees:K.fees}}let Z=J.toLowerCase()===B5.toLowerCase()?X0:J,G=Q.toLowerCase()===B5.toLowerCase()?X0:Q,W=await R5($,Z,G,X);if(!W)throw Error("No swap route found. Try providing --path manually.");return{path:W.path,tokens:W.tokens,fees:W.fees,description:W.description,amountOut:W.amountOut}}function LQ(){return BigInt(Math.floor(Date.now()/1000)+1200)}async function vV($,J,Q,X,Y,Z){let{publicClient:G,walletClient:W,account:K}=T8(D$,H0,Z),q=await HQ(G,J,!0),V=H$(Q,q.decimals),M=X?H$(X):0n,[D,U]=await Promise.all([v$(G,$),E0(G,$)]);console.log(`⚡ Zap buying ${D} with ${Q} ${q.symbol}...`);let z=await OQ(G,J,U.reserveToken,V,Y);if(z.description&&z.amountOut)console.log(` Route: ${z.description}`),console.log(` Expected swap output: ${e(z.amountOut)} ${U.reserveSymbol}`);let w=zQ(y$,V,0n,z.path),L=LQ(),O,C;if(q.isETH)O="0x"+bX.slice(2)+r0.slice(2),C=[hX(V),w];else O=r0,C=[w],await O0(G,W,J,y$,V);let{result:N}=await G.simulateContract({account:W.account,address:y$,abi:s0,functionName:"zapMint",args:[$,q.actualToken,V,M,O,C,L,K],value:q.isETH?V:0n});console.log(` Expected: ${e(N[0])} ${D} | Reserve used: ${e(N[1])} ${U.reserveSymbol}`),await L0(G,W,$,{address:y$,abi:s0,functionName:"zapMint",args:[$,q.actualToken,V,M,O,C,L,K],value:q.isETH?V:0n},`Zap bought ${e(N[0])} ${D} with ${Q} ${q.symbol}`)}async function bV($,J,Q,X,Y,Z){let{publicClient:G,walletClient:W,account:K}=T8(D$,H0,Z),q=H$(J),V=X?H$(X):0n,M=await HQ(G,Q,!1),[D,U]=await Promise.all([v$(G,$),E0(G,$)]);console.log(`⚡ Zap selling ${J} ${D} for ${M.symbol}...`);let{refundAmount:z}=await L5(G,$,q),w=await OQ(G,U.reserveToken,Q,z,Y);if(w.description&&w.amountOut)console.log(` Route: ${w.description}`),console.log(` Expected swap output: ${e(w.amountOut)} ${M.symbol}`);let L="0x0000000000000000000000000000000000000002",O=M.isETH?L:y$,C=zQ(O,z,0n,w.path),N=LQ(),H,S;if(M.isETH)H="0x"+r0.slice(2)+Q9.slice(2),S=[C,X9(y$,V)];else H=r0,S=[C];await O0(G,W,$,y$,q);let{result:B}=await G.simulateContract({account:W.account,address:y$,abi:s0,functionName:"zapBurn",args:[$,q,M.actualToken,V,H,S,N,K]});console.log(` Expected: ${w$(B[0],M.decimals)} ${M.symbol} | Reserve burned: ${e(B[1])} ${U.reserveSymbol}`),await L0(G,W,$,{address:y$,abi:s0,functionName:"zapBurn",args:[$,q,M.actualToken,V,H,S,N,K]},`Zap sold ${J} ${D} for ${w$(B[0],M.decimals)} ${M.symbol}`)}import{resolve as uV}from"path";import{homedir as ez}from"os";import{existsSync as pV,mkdirSync as $H,readFileSync as lV,writeFileSync as GW}from"fs";function F5($){if($<0.01)return $.toExponential(2);return $.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:4})}async function hV($,J){let Q=0,X=await $.getBalance({address:J}),Y=await vX(X0),Z=Number(w$(X,18)),G=Y!==null?Z*Y:void 0;if(G!==void 0)Q+=G;let W={token:"0x0000000000000000000000000000000000000000",symbol:"ETH",balance:X,decimals:18,usdValue:G},K=t$.filter((w)=>w.symbol!=="ETH"),q=await $.multicall({contracts:K.map((w)=>({address:w.address,abi:Y0,functionName:"balanceOf",args:[J]}))}),V=[];for(let w=0;w<K.length;w++){let L=q[w].status==="success"?q[w].result:0n;if(L>0n){let O=K[w],C=Number(w$(L,O.decimals)),N=await vX(O.address),H=N!==null?C*N:void 0;if(H!==void 0)Q+=H;V.push({token:O.address,symbol:O.symbol,balance:L,decimals:O.decimals,usdValue:H})}}let M=XW(),D=new Set(t$.map((w)=>w.address.toLowerCase())),U=M.filter((w)=>!D.has(w.toLowerCase())),z=[];if(U.length>0){let w=await $.multicall({contracts:U.flatMap((L)=>[{address:L,abi:Y0,functionName:"balanceOf",args:[J]},{address:L,abi:Y0,functionName:"symbol"},{address:$$,abi:q$,functionName:"tokenBond",args:[L]}])});for(let L=0;L<U.length;L++){let O=w[L*3].status==="success"?w[L*3].result:0n;if(O===0n)continue;let C=w[L*3+1].status==="success"?w[L*3+1].result:U[L].slice(0,10),N;if(w[L*3+2].status==="success")try{let[,,,,H]=w[L*3+2].result,S=await J9($,U[L]),B=await vX(H);if(B!==null){let F=t$.find((j)=>j.address.toLowerCase()===H.toLowerCase())?.decimals??18,I=Number(S)/10**F*B,P=Number(O)/1000000000000000000*I;Q+=P,N=P}}catch{}z.push({token:U[L],symbol:C,balance:O,decimals:18,usdValue:N})}}return{ethBalance:W,erc20Balances:V,mcTokenBalances:z,totalUsd:Q}}function gV($){let{ethBalance:J,erc20Balances:Q,mcTokenBalances:X,totalUsd:Y}=$;console.log(`\uD83D\uDCB0 Balances on Base:
81
- `);let Z=w$(J.balance,J.decimals),G=J.usdValue!==void 0?` (~$${F5(J.usdValue)})`:"";console.log(` ${J.symbol}: ${Z}${G}`);for(let W of Q){let K=w$(W.balance,W.decimals),q=W.usdValue!==void 0?` (~$${F5(W.usdValue)})`:"";console.log(` ${W.symbol}: ${K}${q}`)}if(X.length>0){console.log(`
78
+ \uD83D\uDCB0 Accumulated reserve required to mint:`),console.log(` ${z.map((S)=>`${S.milestone}%`.padStart(12)).join("")}`),console.log(` ${z.map((S)=>YG(S.cost).padStart(12)).join("")}`),console.log(`
79
+ \uD83C\uDFE6 Max TVL (fully minted): ${YG(w)} reserve`),!Z.yes){if(!await rz(`
80
+ ⚡ Proceed with token creation? (y/N) `)){console.log("❌ Cancelled.");return}}let L={name:$,symbol:J},O={mintRoyalty:M,burnRoyalty:D,reserveToken:Q,maxSupply:H$(X),stepRanges:q,stepPrices:V},{result:C}=await W.simulateContract({account:K,address:$$,abi:q$,functionName:"createToken",args:[L,O],value:U});console.log(` Expected address: ${C}`),console.log("\uD83D\uDCE4 Sending...");let N=await G.writeContract({address:$$,abi:q$,functionName:"createToken",args:[L,O],value:U});console.log(` TX: ${j8(N)}`),console.log(` ${I8(N)}`);let H=await W.waitForTransactionReceipt({hash:N});if(H.status==="success")console.log(`✅ Token created at ${C} (block ${H.blockNumber})`);else throw Error("Transaction failed")}var s0=[{type:"function",name:"zapMint",stateMutability:"payable",inputs:[{name:"token",type:"address"},{name:"inputToken",type:"address"},{name:"inputAmount",type:"uint256"},{name:"minTokensOut",type:"uint256"},{name:"commands",type:"bytes"},{name:"inputs",type:"bytes[]"},{name:"deadline",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"tokensReceived",type:"uint256"},{name:"reserveUsed",type:"uint256"}]},{type:"function",name:"zapBurn",stateMutability:"nonpayable",inputs:[{name:"token",type:"address"},{name:"tokensToBurn",type:"uint256"},{name:"outputToken",type:"address"},{name:"minOutputAmount",type:"uint256"},{name:"commands",type:"bytes"},{name:"inputs",type:"bytes[]"},{name:"deadline",type:"uint256"},{name:"receiver",type:"address"}],outputs:[{name:"outputAmount",type:"uint256"},{name:"reserveReceived",type:"uint256"}]}];function wQ($,J){if($.length!==J.length+1)throw Error("tokens.length must equal fees.length + 1");let Q=$[0];for(let X=0;X<J.length;X++){let Y=`0x${J[X].toString(16).padStart(6,"0")}`;Q=tY(["bytes","bytes","bytes"],[Q,Y,$[X+1]])}return Q}function zQ($,J,Q,X){return G$(c$("address, uint256, uint256, bytes, bool"),[$,J,Q,X,!1])}var r0="0x00",bX="0x0b",tz="0x0000000000000000000000000000000000000002";function hX($){return G$(c$("address, uint256"),[tz,$])}var Q9="0x0c";function X9($,J){return G$(c$("address, uint256"),[$,J])}function S5($){let J=$.split(",").map((Y)=>Y.trim()),Q=[],X=[];for(let Y=0;Y<J.length;Y++)if(Y%2===0){if(!J[Y].startsWith("0x")||J[Y].length!==42)throw Error(`Invalid token address at position ${Y}: ${J[Y]}`);Q.push(J[Y])}else{let Z=parseInt(J[Y]);if(isNaN(Z)||Z<=0)throw Error(`Invalid fee: ${J[Y]}`);X.push(Z)}if(Q.length!==X.length+1)throw Error("Path format: token0,fee,token1,fee,token2,...");return{tokens:Q,fees:X}}var az="0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",ez="0x0d5e0f971ed27fbff6c2837bf31316121532048d",$H=[{type:"function",name:"quoteExactInput",stateMutability:"nonpayable",inputs:[{name:"path",type:"bytes"},{name:"amountIn",type:"uint256"}],outputs:[{name:"amountOut",type:"uint256"},{name:"sqrtPriceX96AfterList",type:"uint160[]"},{name:"initializedTicksCrossedList",type:"uint32[]"},{name:"gasEstimate",type:"uint256"}]}],JH=[{type:"function",name:"quoteExactInputSingle",stateMutability:"nonpayable",inputs:[{name:"params",type:"tuple",components:[{name:"poolKey",type:"tuple",components:[{name:"currency0",type:"address"},{name:"currency1",type:"address"},{name:"fee",type:"uint24"},{name:"tickSpacing",type:"int24"},{name:"hooks",type:"address"}]},{name:"zeroForOne",type:"bool"},{name:"exactAmount",type:"uint128"},{name:"sqrtPriceLimitX96",type:"uint160"},{name:"hookData",type:"bytes"}]}],outputs:[{name:"deltaAmounts",type:"int128[]"},{name:"sqrtPriceX96After",type:"uint160"},{name:"initializedTicksCrossed",type:"uint32"}]}],ZG=[100,500,3000,1e4],gX="0x0000000000000000000000000000000000000000",QH=[{currency0:gX,currency1:M0("0x37f0c2915CeCC7e977183B8543Fc0864d03E064C"),fee:49,tickSpacing:1,hooks:gX}];async function fV($,J,Q){try{let{result:X}=await $.simulateContract({address:az,abi:$H,functionName:"quoteExactInput",args:[J,Q]});return X[0]}catch{return null}}async function XH($,J,Q,X){try{let{result:Y}=await $.simulateContract({address:ez,abi:JH,functionName:"quoteExactInputSingle",args:[{poolKey:{currency0:J.currency0,currency1:J.currency1,fee:J.fee,tickSpacing:J.tickSpacing,hooks:J.hooks},zeroForOne:Q,exactAmount:X,sqrtPriceLimitX96:0n,hookData:"0x"}]}),G=Y[0][Q?1:0];return G>0n?G:-G}catch{return null}}function yV($){if($.toLowerCase()===Y0.toLowerCase()||$.toLowerCase()===gX.toLowerCase())return gX;return $}async function R5($,J,Q,X){let Y=J.toLowerCase()===gX?Y0:J,Z=yV(J),W=yV(Q);if(Y.toLowerCase()===Q.toLowerCase())return null;let G=[];console.log("\uD83D\uDD0D Finding best swap route (V3 + V4)...");let K=Q.toLowerCase()===gX?Y0:Q;if(Y.toLowerCase()!==K.toLowerCase()){let M=ZG.map(async(U)=>{let z=wQ([Y,K],[U]),w=await fV($,z,X);if(w&&w>0n)G.push({version:"v3",path:z,tokens:[Y,K],fees:[U],amountOut:w,description:`V3 Direct (fee: ${U/1e4}%)`})}),D=CV.flatMap((U)=>{if(U.address.toLowerCase()===Y.toLowerCase()||U.address.toLowerCase()===K.toLowerCase())return[];return ZG.flatMap((z)=>ZG.map(async(w)=>{let L=wQ([Y,U.address,K],[z,w]),O=await fV($,L,X);if(O&&O>0n)G.push({version:"v3",path:L,tokens:[Y,U.address,K],fees:[z,w],amountOut:O,description:`V3 via ${U.symbol} (fees: ${z/1e4}% → ${w/1e4}%)`})}))});await Promise.all([...M,...D])}let q=QH.map(async(M)=>{let D=M.currency0.toLowerCase(),U=M.currency1.toLowerCase(),z=Z.toLowerCase(),w=W.toLowerCase(),L=null;if(z===D&&w===U)L=!0;else if(z===U&&w===D)L=!1;if(L===null)return;let O=await XH($,M,L,X);if(O&&O>0n){let C=M.fee<100?`${M.fee}bp`:`${M.fee/1e4}%`;G.push({version:"v4",path:"0x",tokens:[],fees:[],poolKey:M,zeroForOne:L,amountOut:O,description:`V4 Direct (fee: ${C})`})}});if(await Promise.all(q),G.length===0)return null;G.sort((M,D)=>D.amountOut>M.amountOut?1:-1);let V=G[0];return console.log(` ✅ Best route: ${V.description} → ${G.length} routes checked`),V}var B5="0x0000000000000000000000000000000000000000";async function HQ($,J,Q=!0){let X=J.toLowerCase()===B5.toLowerCase(),Y=X?B5:J,Z=X?18:aJ(J),W=X?"ETH":await v$($,J);return{isETH:X,actualToken:Y,symbol:W,decimals:Z}}async function OQ($,J,Q,X,Y){if(Y){let K=S5(Y);return{path:wQ(K.tokens,K.fees),tokens:K.tokens,fees:K.fees}}let Z=J.toLowerCase()===B5.toLowerCase()?Y0:J,W=Q.toLowerCase()===B5.toLowerCase()?Y0:Q,G=await R5($,Z,W,X);if(!G)throw Error("No swap route found. Try providing --path manually.");return{path:G.path,tokens:G.tokens,fees:G.fees,description:G.description,amountOut:G.amountOut}}function LQ(){return BigInt(Math.floor(Date.now()/1000)+1200)}async function vV($,J,Q,X,Y,Z){let{publicClient:W,walletClient:G,account:K}=_8(D$,H0,Z),q=await HQ(W,J,!0),V=H$(Q,q.decimals),M=X?H$(X):0n,[D,U]=await Promise.all([v$(W,$),E0(W,$)]);console.log(`⚡ Zap buying ${D} with ${Q} ${q.symbol}...`);let z=await OQ(W,J,U.reserveToken,V,Y);if(z.description&&z.amountOut)console.log(` Route: ${z.description}`),console.log(` Expected swap output: ${e(z.amountOut)} ${U.reserveSymbol}`);let w=zQ(y$,V,0n,z.path),L=LQ(),O,C;if(q.isETH)O="0x"+bX.slice(2)+r0.slice(2),C=[hX(V),w];else O=r0,C=[w],await O0(W,G,J,y$,V);let{result:N}=await W.simulateContract({account:G.account,address:y$,abi:s0,functionName:"zapMint",args:[$,q.actualToken,V,M,O,C,L,K],value:q.isETH?V:0n});console.log(` Expected: ${e(N[0])} ${D} | Reserve used: ${e(N[1])} ${U.reserveSymbol}`),await L0(W,G,$,{address:y$,abi:s0,functionName:"zapMint",args:[$,q.actualToken,V,M,O,C,L,K],value:q.isETH?V:0n},`Zap bought ${e(N[0])} ${D} with ${Q} ${q.symbol}`)}async function bV($,J,Q,X,Y,Z){let{publicClient:W,walletClient:G,account:K}=_8(D$,H0,Z),q=H$(J),V=X?H$(X):0n,M=await HQ(W,Q,!1),[D,U]=await Promise.all([v$(W,$),E0(W,$)]);console.log(`⚡ Zap selling ${J} ${D} for ${M.symbol}...`);let{refundAmount:z}=await L5(W,$,q),w=await OQ(W,U.reserveToken,Q,z,Y);if(w.description&&w.amountOut)console.log(` Route: ${w.description}`),console.log(` Expected swap output: ${e(w.amountOut)} ${M.symbol}`);let L="0x0000000000000000000000000000000000000002",O=M.isETH?L:y$,C=zQ(O,z,0n,w.path),N=LQ(),H,S;if(M.isETH)H="0x"+r0.slice(2)+Q9.slice(2),S=[C,X9(y$,V)];else H=r0,S=[C];await O0(W,G,$,y$,q);let{result:B}=await W.simulateContract({account:G.account,address:y$,abi:s0,functionName:"zapBurn",args:[$,q,M.actualToken,V,H,S,N,K]});console.log(` Expected: ${w$(B[0],M.decimals)} ${M.symbol} | Reserve burned: ${e(B[1])} ${U.reserveSymbol}`),await L0(W,G,$,{address:y$,abi:s0,functionName:"zapBurn",args:[$,q,M.actualToken,V,H,S,N,K]},`Zap sold ${J} ${D} for ${w$(B[0],M.decimals)} ${M.symbol}`)}import{resolve as uV}from"path";import{homedir as YH}from"os";import{existsSync as pV,mkdirSync as ZH,readFileSync as lV,writeFileSync as WG}from"fs";function F5($){if($<0.01)return $.toExponential(2);return $.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:4})}async function hV($,J){let Q=0,X=await $.getBalance({address:J}),Y=await vX(Y0),Z=Number(w$(X,18)),W=Y!==null?Z*Y:void 0;if(W!==void 0)Q+=W;let G={token:"0x0000000000000000000000000000000000000000",symbol:"ETH",balance:X,decimals:18,usdValue:W},K=a$.filter((w)=>w.symbol!=="ETH"),q=await $.multicall({contracts:K.map((w)=>({address:w.address,abi:l$,functionName:"balanceOf",args:[J]}))}),V=[];for(let w=0;w<K.length;w++){let L=q[w].status==="success"?q[w].result:0n;if(L>0n){let O=K[w],C=Number(w$(L,O.decimals)),N=await vX(O.address),H=N!==null?C*N:void 0;if(H!==void 0)Q+=H;V.push({token:O.address,symbol:O.symbol,balance:L,decimals:O.decimals,usdValue:H})}}let M=XG(),D=new Set(a$.map((w)=>w.address.toLowerCase())),U=M.filter((w)=>!D.has(w.toLowerCase())),z=[];if(U.length>0){let w=await $.multicall({contracts:U.flatMap((L)=>[{address:L,abi:l$,functionName:"balanceOf",args:[J]},{address:L,abi:l$,functionName:"symbol"},{address:$$,abi:q$,functionName:"tokenBond",args:[L]}])});for(let L=0;L<U.length;L++){let O=w[L*3].status==="success"?w[L*3].result:0n;if(O===0n)continue;let C=w[L*3+1].status==="success"?w[L*3+1].result:U[L].slice(0,10),N;if(w[L*3+2].status==="success")try{let[,,,,H]=w[L*3+2].result,S=await J9($,U[L]),B=await vX(H);if(B!==null){let F=a$.find((j)=>j.address.toLowerCase()===H.toLowerCase())?.decimals??18,I=Number(S)/10**F*B,P=Number(O)/1000000000000000000*I;Q+=P,N=P}}catch{}z.push({token:U[L],symbol:C,balance:O,decimals:18,usdValue:N})}}return{ethBalance:G,erc20Balances:V,mcTokenBalances:z,totalUsd:Q}}function gV($){let{ethBalance:J,erc20Balances:Q,mcTokenBalances:X,totalUsd:Y}=$;console.log(`\uD83D\uDCB0 Balances on Base:
81
+ `);let Z=w$(J.balance,J.decimals),W=J.usdValue!==void 0?` (~$${F5(J.usdValue)})`:"";console.log(` ${J.symbol}: ${Z}${W}`);for(let G of Q){let K=w$(G.balance,G.decimals),q=G.usdValue!==void 0?` (~$${F5(G.usdValue)})`:"";console.log(` ${G.symbol}: ${K}${q}`)}if(X.length>0){console.log(`
82
82
  \uD83E\uDE99 Mint Club Tokens:
83
- `);for(let W of X){let K=w$(W.balance,W.decimals),q=W.usdValue!==void 0?` (~$${F5(W.usdValue)})`:"";console.log(` ${W.symbol}: ${K}${q}`)}}if(Y>0)console.log(`
84
- \uD83D\uDCB5 Total: ~$${F5(Y)}`)}var cV=uV(ez(),".mintclub"),CQ=uV(cV,".env");function dV(){console.log("⚠️ WARNING: Back up your private key in a secure, encrypted location!"),console.log(" If you lose ~/.mintclub/.env or your private key, your funds are"),console.log(" gone forever — there is no way to recover them."),console.log(" If your key is leaked, anyone can drain your wallet immediately.")}function mV($){if($H(cV,{recursive:!0}),pV(CQ)){let J=lV(CQ,"utf-8");if(J.includes("PRIVATE_KEY="))GW(CQ,J.replace(/PRIVATE_KEY=.*/g,`PRIVATE_KEY=${$}`));else GW(CQ,J+(J.endsWith(`
83
+ `);for(let G of X){let K=w$(G.balance,G.decimals),q=G.usdValue!==void 0?` (~$${F5(G.usdValue)})`:"";console.log(` ${G.symbol}: ${K}${q}`)}}if(Y>0)console.log(`
84
+ \uD83D\uDCB5 Total: ~$${F5(Y)}`)}var cV=uV(YH(),".mintclub"),CQ=uV(cV,".env");function dV(){console.log("⚠️ WARNING: Back up your private key in a secure, encrypted location!"),console.log(" If you lose ~/.mintclub/.env or your private key, your funds are"),console.log(" gone forever — there is no way to recover them."),console.log(" If your key is leaked, anyone can drain your wallet immediately.")}function mV($){if(ZH(cV,{recursive:!0}),pV(CQ)){let J=lV(CQ,"utf-8");if(J.includes("PRIVATE_KEY="))WG(CQ,J.replace(/PRIVATE_KEY=.*/g,`PRIVATE_KEY=${$}`));else WG(CQ,J+(J.endsWith(`
85
85
  `)||!J?"":`
86
86
  `)+`PRIVATE_KEY=${$}
87
- `)}else GW(CQ,`PRIVATE_KEY=${$}
88
- `)}async function nV($){if($.setPrivateKey){let G=$.setPrivateKey.startsWith("0x")?$.setPrivateKey:`0x${$.setPrivateKey}`,W=NQ(G);mV(G),console.log(`✅ Private key saved!
87
+ `)}else WG(CQ,`PRIVATE_KEY=${$}
88
+ `)}async function nV($){if($.setPrivateKey){let W=$.setPrivateKey.startsWith("0x")?$.setPrivateKey:`0x${$.setPrivateKey}`,G=NQ(W);mV(W),console.log(`✅ Private key saved!
89
89
 
90
- Address: ${W.address}
90
+ Address: ${G.address}
91
91
  Saved to: ~/.mintclub/.env
92
92
  `),dV();return}if($.generate){if(pV(CQ)&&lV(CQ,"utf-8").includes("PRIVATE_KEY="))console.error(`⚠️ PRIVATE_KEY already exists in ~/.mintclub/.env
93
- Delete it manually if you want to generate a new one.`),process.exit(1);let G=tG(),W=NQ(G);mV(G),console.log(`✅ New wallet created!
93
+ Delete it manually if you want to generate a new one.`),process.exit(1);let W=rW(),G=NQ(W);mV(W),console.log(`✅ New wallet created!
94
94
 
95
- Address: ${W.address}
95
+ Address: ${G.address}
96
96
  Saved to: ~/.mintclub/.env
97
97
 
98
98
  \uD83D\uDCB0 Fund this address to start using mc buy/sell/create.
99
99
  `),dV();return}let J=process.env.PRIVATE_KEY;if(!J){console.log("No wallet configured.\n\nRun `mc wallet --generate` to create one, or add PRIVATE_KEY to ~/.mintclub/.env");return}let Q=J.startsWith("0x")?J:`0x${J}`,X=NQ(Q);console.log(`\uD83D\uDC5B Wallet: ${X.address}
100
- `);let Y=D$(),Z=await hV(Y,X.address);gV(Z)}var JH=[{type:"function",name:"safeTransferFrom",stateMutability:"nonpayable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"id",type:"uint256"},{name:"amount",type:"uint256"},{name:"data",type:"bytes"}],outputs:[]}];async function oV($,J,Q,X){let Y=D$(),Z=H0(Q),G=Z.account;if(X.token&&X.tokenId){let V=BigInt(X.tokenId),M=BigInt(J);console.log(`\uD83D\uDCE6 Sending ${M} of ERC-1155 #${V} (${tJ(X.token)}) to ${tJ($)} on Base...`);let D=await Z.writeContract({address:X.token,abi:JH,functionName:"safeTransferFrom",args:[G.address,$,V,M,"0x"]});console.log(` TX: ${j8(D)}`),console.log(` ${I8(D)}`);let U=await Y.waitForTransactionReceipt({hash:D});if(U.status==="success")console.log(`✅ Sent (block ${U.blockNumber})`);else throw Error("Transaction failed");return}if(X.token){let[V,M]=await Promise.all([Y.readContract({address:X.token,abi:Y0,functionName:"decimals"}),Y.readContract({address:X.token,abi:Y0,functionName:"symbol"}).catch(()=>"tokens")]),D=H$(J,V);console.log(`\uD83D\uDCB8 Sending ${J} ${M} (${tJ(X.token)}) to ${tJ($)} on Base...`);let U=await Z.writeContract({address:X.token,abi:[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"to",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],functionName:"transfer",args:[$,D]});console.log(` TX: ${j8(U)}`),console.log(` ${I8(U)}`);let z=await Y.waitForTransactionReceipt({hash:U});if(z.status==="success")console.log(`✅ Sent (block ${z.blockNumber})`);else throw Error("Transaction failed");return}let W=gG(J);console.log(`\uD83D\uDCB8 Sending ${J} ETH to ${tJ($)} on Base...`);let K=await Z.sendTransaction({to:$,value:W});console.log(` TX: ${j8(K)}`),console.log(` ${I8(K)}`);let q=await Y.waitForTransactionReceipt({hash:K});if(q.status==="success")console.log(`✅ Sent (block ${q.blockNumber})`);else throw Error("Transaction failed")}async function iV($){let J=D$(),[Q,X,Y]=await Promise.all([v$(J,$),J.readContract({address:$,abi:[{type:"function",name:"totalSupply",outputs:[{type:"uint256"}]}],functionName:"totalSupply"}),E0(J,$).catch(()=>{throw Error("Not a Mint Club token")})]);if(console.log(`\uD83D\uDCB1 ${Q} (${$})
101
- `),X===0n){console.log(" No supply yet — token has not been minted.");return}let Z=await C5(J,$,X),G=w$(Z.tokenPrice,Y.reserveDecimals);if(console.log(` Price: ${G} ${Y.reserveSymbol}`),Z.tokenUsd!==void 0&&Z.reserveValue!==void 0){if(console.log(` Price (USD): $${_8(Z.tokenUsd)}`),console.log(` Reserve: ${Y.formatReserve(Y.reserveBalance)} ${Y.reserveSymbol} (~$${_8(Z.reserveValue)})`),Z.marketCap!==void 0)console.log(` Market Cap: ~$${_8(Z.marketCap)}`)}else console.log(` Reserve: ${Y.formatReserve(Y.reserveBalance)} ${Y.reserveSymbol}`),console.log(" ⚠️ Could not fetch USD price for reserve token")}var WW={SWAP_EXACT_IN_SINGLE:6,SWAP_EXACT_IN:7,SETTLE:11,SETTLE_ALL:12,SETTLE_PAIR:13,TAKE:14,TAKE_ALL:15},sV=16,QH="(address currency0, address currency1, uint24 fee, int24 tickSpacing, address hooks)";function rV($,J,Q,X){let Y=J?$.currency0:$.currency1,Z=J?$.currency1:$.currency0,G=t(new Uint8Array([WW.SWAP_EXACT_IN_SINGLE,WW.SETTLE_ALL,WW.TAKE_ALL])),W=W$(l$(`${QH} poolKey, bool zeroForOne, uint128 amountIn, uint128 amountOutMinimum, bytes hookData`),[{currency0:$.currency0,currency1:$.currency1,fee:$.fee,tickSpacing:$.tickSpacing,hooks:$.hooks},J,Q,X,"0x"]),K=W$(l$("address currency, uint256 maxAmount"),[Y,Q+Q/100n]),q=W$(l$("address currency, uint256 minAmount"),[Z,X]);return W$(l$("bytes actions, bytes[] params"),[G,[W,K,q]])}var tV="0x6fF5693b99212Da76ad316178A184AB56D299b43",aV="0x0000000000000000000000000000000000000002",eV="0x0000000000000000000000000000000000000000",XH=0,YH=[{type:"function",name:"execute",stateMutability:"payable",inputs:[{name:"commands",type:"bytes"},{name:"inputs",type:"bytes[]"},{name:"deadline",type:"uint256"}],outputs:[]}];function ZH($,J,Q,X,Y){return W$(l$("address, uint256, uint256, bytes, bool"),[$,J,Q,X,Y])}async function $M($,J){try{let Q=await $.readContract({address:$$,abi:q$,functionName:"tokenBond",args:[J]}),[X,Y,Z,G,W,K]=Q;if(G===0n||G===0)return null;return{creator:X,mintRoyalty:Y,burnRoyalty:Z,createdAt:G,reserveToken:W,reserveBalance:K}}catch{return null}}async function JM($,J,Q,X,Y,Z,G){let W=D$(),K=H0(G),q=K.account.address,V=H5($),M=H5(J),D=V.toLowerCase()===eV.toLowerCase(),U=M.toLowerCase()===eV.toLowerCase(),z=aJ(V),w=o0(Q,z),[L,O]=await Promise.all([$M(W,M),$M(W,V)]),C=await v$(W,V).catch(()=>$9(V)),N=await v$(W,M).catch(()=>$9(M));if(L){let b=L.reserveToken,g=await v$(W,b).catch(()=>$9(b));if((D?X0:V).toLowerCase()===b.toLowerCase()){console.log(`\uD83C\uDFAF Smart route: Direct BUY via bonding curve (${C} → ${N})`),console.log(` ${C} is the reserve token — no swap needed`);let O$=await GH(W,M,w);if(O$===0n)throw Error("Amount too small to mint any tokens");let{reserveAmount:_$,royalty:t0,totalCost:CJ}=await O5(W,M,O$);console.log(` Minting ~${e(O$)} ${N} for ${e(CJ)} ${g} (incl. ${e(t0)} royalty)`),await O0(W,K,b,$$,CJ),await L0(W,K,M,{address:$$,abi:q$,functionName:"mint",args:[M,O$,CJ,q],value:0n},`Bought ${e(O$)} ${N} for ${e(CJ)} ${g}`);return}console.log(`⚡ Smart route: ZAP BUY (${C} → swap → ${g} → bond → ${N})`);let f=await HQ(W,V,!0),d=X?H$(X):0n,k=await OQ(W,V,b,w,Y);if(k.description&&k.amountOut)console.log(` Swap route: ${k.description}`),console.log(` Expected swap output: ${e(k.amountOut)} ${g}`);let v=zQ(y$,w,0n,k.path),u=LQ(),X$,c;if(f.isETH)X$="0x"+bX.slice(2)+r0.slice(2),c=[hX(w),v];else X$=r0,c=[v],await O0(W,K,V,y$,w);let{result:I$}=await W.simulateContract({account:K.account,address:y$,abi:s0,functionName:"zapMint",args:[M,f.actualToken,w,d,X$,c,u,q],value:f.isETH?w:0n});console.log(` Expected: ${e(I$[0])} ${N} | Reserve used: ${e(I$[1])} ${g}`),await L0(W,K,M,{address:y$,abi:s0,functionName:"zapMint",args:[M,f.actualToken,w,d,X$,c,u,q],value:f.isETH?w:0n},`Zap bought ${e(I$[0])} ${N} with ${Q} ${C}`);return}if(O){let b=O.reserveToken,g=await v$(W,b).catch(()=>$9(b));if((U?X0:M).toLowerCase()===b.toLowerCase()){console.log(`\uD83C\uDFAF Smart route: Direct SELL via bonding curve (${C} → ${N})`);let O$=X?H$(X,aJ(b)):0n,{result:_$}=await W.simulateContract({account:K.account,address:$$,abi:q$,functionName:"burn",args:[V,w,O$,q]});console.log(` Selling ${Q} ${C} for ~${e(_$[0])} ${g}`),await O0(W,K,V,$$,w),await L0(W,K,void 0,{address:$$,abi:q$,functionName:"burn",args:[V,w,O$,q],value:0n},`Sold ${Q} ${C} for ${g}`);return}console.log(`⚡ Smart route: ZAP SELL (${C} → bond → ${g} → swap → ${N})`);let f=await HQ(W,M,!1),d=X?H$(X,aJ(M)):0n,k=await OQ(W,b,M,0n,Y);if(k.description)console.log(` Swap route: ${k.description}`);let v=zQ(f.isETH?aV:q,0n,0n,k.path),u=LQ(),X$,c;if(f.isETH)X$="0x"+r0.slice(2)+Q9.slice(2),c=[v,X9(q,0n)];else X$=r0,c=[v];await O0(W,K,V,y$,w);let{result:I$}=await W.simulateContract({account:K.account,address:y$,abi:s0,functionName:"zapBurn",args:[V,w,f.actualToken,d,X$,c,u,q]});console.log(` Expected: ${e(I$[0])} ${N} | Reserve refunded: ${e(I$[1])} ${g}`),await L0(W,K,void 0,{address:y$,abi:s0,functionName:"zapBurn",args:[V,w,f.actualToken,d,X$,c,u,q],value:0n},`Zap sold ${Q} ${C} for ${N}`);return}console.log(`\uD83D\uDD04 Smart route: Direct Uniswap swap (${C} → ${N})`);let H=U?X0:M,S=await W.readContract({address:H,abi:[{type:"function",name:"decimals",inputs:[],outputs:[{type:"uint8"}],stateMutability:"view"}],functionName:"decimals"}).catch(()=>aJ(M)),B;if(Y){let{tokens:b,fees:g}=S5(Y);B={version:"v3",path:wQ(b,g),tokens:b,fees:g,amountOut:0n,description:"Manual V3 path"}}else{let b=await R5(W,V,M,w);if(!b)throw Error(`No swap route found from ${C} to ${N}`);B=b}let F=X?o0(X,Number(S)):B.amountOut>0n?B.amountOut*BigInt(Math.floor((100-Z)*100))/10000n:0n;if(B.amountOut>0n)console.log(` Expected: ~${w$(B.amountOut,Number(S))} ${N}`),console.log(` Min output: ${w$(F,Number(S))} ${N} (${Z}% slippage)`);let I=[],P=[],j=0n;if(B.version==="v4"&&B.poolKey){if(I.push(sV),P.push(rV(B.poolKey,B.zeroForOne,w,F)),D)j=w}else{if(D)I.push(parseInt(bX,16)),P.push(hX(w)),j=w;let b=U?aV:q;if(I.push(XH),P.push(ZH(b,w,F,B.path,!D)),U)I.push(parseInt(Q9,16)),P.push(X9(q,F))}let y="0x"+I.map((b)=>b.toString(16).padStart(2,"0")).join(""),x=BigInt(Math.floor(Date.now()/1000)+1800);if(!D&&B.version==="v3")await O0(W,K,V,tV,w);await L0(W,K,void 0,{address:tV,abi:YH,functionName:"execute",args:[y,P,x],value:j},`Swapped ${Q} ${C} → ${N}`)}async function GH($,J,Q){let Y=10n**18n/100n,Z=Q*100n,G=0n;try{let[W,K]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,Z]});if(W+K<=Q)return Z}catch{Z=Q*10n}for(let W=0;W<40;W++){let K=(Y+Z)/2n;if(K===Y)break;try{let[q,V]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,K]});if(q+V<=Q)G=K,Y=K;else Z=K}catch{Z=K}}return G}import{resolve as WH}from"path";import{homedir as KH}from"os";KW.config({path:WH(KH(),".mintclub",".env")});KW.config();function SQ(){let $=process.env.PRIVATE_KEY;if(!$)console.error("❌ Set PRIVATE_KEY in ~/.mintclub/.env or export it"),process.exit(1);return $.startsWith("0x")?$:`0x${$}`}async function OJ($){try{return await OV($,D$())}catch(J){console.error(`❌ ${J.message}`),process.exit(1)}return""}function qH($){if(!($ instanceof Error))return String($);let J=$.message,Q=J.match(/insufficient funds.*have (\d+) want (\d+)/);if(Q)return`Insufficient funds: have ${(Number(Q[1])/1000000000000000000).toFixed(4)} ETH, need ${(Number(Q[2])/1000000000000000000).toFixed(4)} ETH`;let X=J.match(/reverted with the following reason:\s*\n?\s*(.+?)(?:\n|$)/);if(X&&X[1].trim())return`Transaction reverted: ${X[1].trim()}`;let Y=J.match(/execution reverted[:\s]*(.+?)(?:\n|$)/);if(Y)return`Transaction reverted: ${Y[1].trim()}`;let Z=J.match(/Details:\s*(.+?)(?:\n|$)/);if(Z)return Z[1].trim();return J.split(`
102
- `).find((G)=>G.trim().length>0)?.trim()??J}function LJ($){return async()=>{try{await $()}catch(J){console.error("❌",qH(J)),process.exit(1)}}}var v0=new jW().name("mc").description("Mint Club V2 CLI — bonding curve tokens on Base").version("1.5.0");v0.command("price").description("Get token price in reserve and USD").argument("<token>","Token address or symbol").action(($,J)=>LJ(async()=>iV(await OJ($)))());v0.command("info").description("Get token info").argument("<token>","Token address or symbol").action(($,J)=>LJ(async()=>BV(await OJ($)))());v0.command("buy").description("Buy (mint) tokens with reserve token").argument("<token>","Token address or symbol").requiredOption("-a, --amount <n>","Tokens to buy").option("-m, --max-cost <n>","Max reserve cost").action(($,J)=>LJ(async()=>_V(await OJ($),J.amount,J.maxCost,SQ()))());v0.command("sell").description("Sell (burn) tokens for reserve token").argument("<token>","Token address or symbol").requiredOption("-a, --amount <n>","Tokens to sell").option("-m, --min-refund <n>","Min reserve refund").action(($,J)=>LJ(async()=>TV(await OJ($),J.amount,J.minRefund,SQ()))());v0.command("create").description("Create a bonding curve token").requiredOption("-n, --name <name>","Token name").requiredOption("-s, --symbol <sym>","Token symbol").requiredOption("-r, --reserve <addr>","Reserve token address").requiredOption("-x, --max-supply <n>","Max supply").option("-t, --steps <s>",'Custom steps: "range:price,range:price,..."').option("--curve <type>","Curve preset: linear, exponential, logarithmic, flat").option("--initial-price <n>","Starting price (with --curve)").option("--final-price <n>","Final price (with --curve)").option("--mint-royalty <bp>","Mint royalty (bps)","100").option("--burn-royalty <bp>","Burn royalty (bps)","100").option("-y, --yes","Skip confirmation prompt").action(($)=>LJ(async()=>kV($.name,$.symbol,await OJ($.reserve),$.maxSupply,SQ(),{steps:$.steps,curve:$.curve,initialPrice:$.initialPrice,finalPrice:$.finalPrice,mintRoyalty:parseInt($.mintRoyalty),burnRoyalty:parseInt($.burnRoyalty),yes:$.yes}))());v0.command("zap-buy").description("Buy tokens with any token via ZapV2 (auto-routes swap)").argument("<token>","Token address or symbol").requiredOption("-i, --input-token <addr>","Input token (ETH or address/symbol)").requiredOption("-a, --amount <n>","Amount of input token to spend (e.g. 0.01 ETH)").option("-p, --path <p>","Manual swap path: token,fee,token,...").option("-m, --min-tokens <n>","Min tokens out").action(($,J)=>LJ(async()=>vV(await OJ($),await OJ(J.inputToken),J.amount,J.minTokens,J.path,SQ()))());v0.command("zap-sell").description("Sell tokens for any token via ZapV2 (auto-routes swap)").argument("<token>","Token address or symbol").requiredOption("-a, --amount <n>","Tokens to sell").requiredOption("-o, --output-token <addr>","Output token (ETH or address/symbol)").option("-p, --path <p>","Manual swap path: token,fee,token,...").option("-m, --min-output <n>","Min output").action(($,J)=>LJ(async()=>bV(await OJ($),J.amount,await OJ(J.outputToken),J.minOutput,J.path,SQ()))());v0.command("swap").description("Swap tokens via Uniswap V3 (any token pair)").requiredOption("-i, --input <token>","Input token (ETH, USDC, HUNT, or address)").requiredOption("-o, --output <token>","Output token (ETH, USDC, HUNT, or address)").requiredOption("-a, --amount <n>","Amount of input token to swap").option("-m, --min-output <n>","Min output amount").option("-p, --path <p>","Manual swap path: token,fee,token,...").option("-s, --slippage <pct>","Slippage tolerance %","1").action(($)=>LJ(()=>JM($.input,$.output,$.amount,$.minOutput,$.path,parseFloat($.slippage),SQ()))());v0.command("send").description("Send ETH, ERC-20, or ERC-1155 tokens").argument("<to>","Recipient address").requiredOption("-a, --amount <n>","Amount to send").option("-t, --token <addr>","Token contract (omit for ETH)").option("--token-id <id>","ERC-1155 token ID").action(($,J)=>LJ(async()=>oV($,J.amount,SQ(),{token:J.token?await OJ(J.token):void 0,tokenId:J.tokenId}))());v0.command("wallet").description("Show wallet address and balances, or generate/import a key").option("-g, --generate","Generate a new wallet").option("-s, --set-private-key <key>","Import an existing private key").action(($)=>LJ(()=>nV($))());v0.command("upgrade").description("Upgrade mint.club-cli to the latest version").action(()=>{let{execSync:$}=a0("child_process");console.log("⬆️ Upgrading mint.club-cli...");try{let J=$("mc --version",{encoding:"utf-8"}).trim();$("npm install -g mint.club-cli@latest",{stdio:"pipe"});let Q=$("mc --version",{encoding:"utf-8"}).trim();console.log(J===Q?`✅ Already on latest (v${Q})`:`✅ Upgraded: v${J} → v${Q}`)}catch{console.error("❌ Upgrade failed. Try: npm update -g mint.club-cli"),process.exit(1)}});v0.parse();
100
+ `);let Y=D$(),Z=await hV(Y,X.address);gV(Z)}var WH=[{type:"function",name:"safeTransferFrom",stateMutability:"nonpayable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"id",type:"uint256"},{name:"amount",type:"uint256"},{name:"data",type:"bytes"}],outputs:[]}];async function oV($,J,Q,X){let Y=D$(),Z=H0(Q),W=Z.account;if(X.token&&X.tokenId){let V=BigInt(X.tokenId),M=BigInt(J);console.log(`\uD83D\uDCE6 Sending ${M} of ERC-1155 #${V} (${tJ(X.token)}) to ${tJ($)} on Base...`);let D=await Z.writeContract({address:X.token,abi:WH,functionName:"safeTransferFrom",args:[W.address,$,V,M,"0x"]});console.log(` TX: ${j8(D)}`),console.log(` ${I8(D)}`);let U=await Y.waitForTransactionReceipt({hash:D});if(U.status==="success")console.log(`✅ Sent (block ${U.blockNumber})`);else throw Error("Transaction failed");return}if(X.token){let[V,M]=await Promise.all([Y.readContract({address:X.token,abi:l$,functionName:"decimals"}),Y.readContract({address:X.token,abi:l$,functionName:"symbol"}).catch(()=>"tokens")]),D=H$(J,V);console.log(`\uD83D\uDCB8 Sending ${J} ${M} (${tJ(X.token)}) to ${tJ($)} on Base...`);let U=await Z.writeContract({address:X.token,abi:[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"to",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],functionName:"transfer",args:[$,D]});console.log(` TX: ${j8(U)}`),console.log(` ${I8(U)}`);let z=await Y.waitForTransactionReceipt({hash:U});if(z.status==="success")console.log(`✅ Sent (block ${z.blockNumber})`);else throw Error("Transaction failed");return}let G=sW(J);console.log(`\uD83D\uDCB8 Sending ${J} ETH to ${tJ($)} on Base...`);let K=await Z.sendTransaction({to:$,value:G});console.log(` TX: ${j8(K)}`),console.log(` ${I8(K)}`);let q=await Y.waitForTransactionReceipt({hash:K});if(q.status==="success")console.log(`✅ Sent (block ${q.blockNumber})`);else throw Error("Transaction failed")}async function iV($){let J=D$(),[Q,X,Y]=await Promise.all([v$(J,$),J.readContract({address:$,abi:l$,functionName:"totalSupply"}),E0(J,$).catch(()=>{throw Error("Not a Mint Club token")})]);if(console.log(`\uD83D\uDCB1 ${Q} (${$})
101
+ `),X===0n){console.log(" No supply yet — token has not been minted.");return}let Z=await C5(J,$,X),W=w$(Z.tokenPrice,Y.reserveDecimals);if(console.log(` Price: ${W} ${Y.reserveSymbol}`),Z.tokenUsd!==void 0&&Z.reserveValue!==void 0){if(console.log(` Price (USD): $${T8(Z.tokenUsd)}`),console.log(` Reserve: ${Y.formatReserve(Y.reserveBalance)} ${Y.reserveSymbol} (~$${T8(Z.reserveValue)})`),Z.marketCap!==void 0)console.log(` Market Cap: ~$${T8(Z.marketCap)}`)}else console.log(` Reserve: ${Y.formatReserve(Y.reserveBalance)} ${Y.reserveSymbol}`),console.log(" ⚠️ Could not fetch USD price for reserve token")}var GG={SWAP_EXACT_IN_SINGLE:6,SWAP_EXACT_IN:7,SETTLE:11,SETTLE_ALL:12,SETTLE_PAIR:13,TAKE:14,TAKE_ALL:15},sV=16,GH="(address currency0, address currency1, uint24 fee, int24 tickSpacing, address hooks)";function rV($,J,Q,X){let Y=J?$.currency0:$.currency1,Z=J?$.currency1:$.currency0,W=t(new Uint8Array([GG.SWAP_EXACT_IN_SINGLE,GG.SETTLE_ALL,GG.TAKE_ALL])),G=G$(c$(`${GH} poolKey, bool zeroForOne, uint128 amountIn, uint128 amountOutMinimum, bytes hookData`),[{currency0:$.currency0,currency1:$.currency1,fee:$.fee,tickSpacing:$.tickSpacing,hooks:$.hooks},J,Q,X,"0x"]),K=G$(c$("address currency, uint256 maxAmount"),[Y,Q+Q/100n]),q=G$(c$("address currency, uint256 minAmount"),[Z,X]);return G$(c$("bytes actions, bytes[] params"),[W,[G,K,q]])}var tV="0x6fF5693b99212Da76ad316178A184AB56D299b43",aV="0x0000000000000000000000000000000000000002",eV="0x0000000000000000000000000000000000000000",KH=0,qH=[{type:"function",name:"execute",stateMutability:"payable",inputs:[{name:"commands",type:"bytes"},{name:"inputs",type:"bytes[]"},{name:"deadline",type:"uint256"}],outputs:[]}];function VH($,J,Q,X,Y){return G$(c$("address, uint256, uint256, bytes, bool"),[$,J,Q,X,Y])}async function $M($,J){try{let Q=await $.readContract({address:$$,abi:q$,functionName:"tokenBond",args:[J]}),[X,Y,Z,W,G,K]=Q;if(W===0n||W===0)return null;return{creator:X,mintRoyalty:Y,burnRoyalty:Z,createdAt:W,reserveToken:G,reserveBalance:K}}catch{return null}}async function JM($,J,Q,X,Y,Z,W){let G=D$(),K=H0(W),q=K.account.address,V=H5($),M=H5(J),D=V.toLowerCase()===eV.toLowerCase(),U=M.toLowerCase()===eV.toLowerCase(),z=aJ(V),w=i0(Q,z),[L,O]=await Promise.all([$M(G,M),$M(G,V)]),C=await v$(G,V).catch(()=>$9(V)),N=await v$(G,M).catch(()=>$9(M));if(L){let b=L.reserveToken,g=await v$(G,b).catch(()=>$9(b));if((D?Y0:V).toLowerCase()===b.toLowerCase()){console.log(`\uD83C\uDFAF Smart route: Direct BUY via bonding curve (${C} → ${N})`),console.log(` ${C} is the reserve token — no swap needed`);let O$=await MH(G,M,w);if(O$===0n)throw Error("Amount too small to mint any tokens");let{reserveAmount:T$,royalty:t0,totalCost:CJ}=await O5(G,M,O$);console.log(` Minting ~${e(O$)} ${N} for ${e(CJ)} ${g} (incl. ${e(t0)} royalty)`),await O0(G,K,b,$$,CJ),await L0(G,K,M,{address:$$,abi:q$,functionName:"mint",args:[M,O$,CJ,q],value:0n},`Bought ${e(O$)} ${N} for ${e(CJ)} ${g}`);return}console.log(`⚡ Smart route: ZAP BUY (${C} → swap → ${g} → bond → ${N})`);let f=await HQ(G,V,!0),d=X?H$(X):0n,k=await OQ(G,V,b,w,Y);if(k.description&&k.amountOut)console.log(` Swap route: ${k.description}`),console.log(` Expected swap output: ${e(k.amountOut)} ${g}`);let v=zQ(y$,w,0n,k.path),u=LQ(),X$,c;if(f.isETH)X$="0x"+bX.slice(2)+r0.slice(2),c=[hX(w),v];else X$=r0,c=[v],await O0(G,K,V,y$,w);let{result:I$}=await G.simulateContract({account:K.account,address:y$,abi:s0,functionName:"zapMint",args:[M,f.actualToken,w,d,X$,c,u,q],value:f.isETH?w:0n});console.log(` Expected: ${e(I$[0])} ${N} | Reserve used: ${e(I$[1])} ${g}`),await L0(G,K,M,{address:y$,abi:s0,functionName:"zapMint",args:[M,f.actualToken,w,d,X$,c,u,q],value:f.isETH?w:0n},`Zap bought ${e(I$[0])} ${N} with ${Q} ${C}`);return}if(O){let b=O.reserveToken,g=await v$(G,b).catch(()=>$9(b));if((U?Y0:M).toLowerCase()===b.toLowerCase()){console.log(`\uD83C\uDFAF Smart route: Direct SELL via bonding curve (${C} → ${N})`);let O$=X?H$(X,aJ(b)):0n,{result:T$}=await G.simulateContract({account:K.account,address:$$,abi:q$,functionName:"burn",args:[V,w,O$,q]});console.log(` Selling ${Q} ${C} for ~${e(T$)} ${g}`),await O0(G,K,V,$$,w),await L0(G,K,void 0,{address:$$,abi:q$,functionName:"burn",args:[V,w,O$,q],value:0n},`Sold ${Q} ${C} for ${g}`);return}console.log(`⚡ Smart route: ZAP SELL (${C} → bond → ${g} → swap → ${N})`);let f=await HQ(G,M,!1),d=X?H$(X,aJ(M)):0n,k=await OQ(G,b,M,0n,Y);if(k.description)console.log(` Swap route: ${k.description}`);let v=zQ(f.isETH?aV:q,0n,0n,k.path),u=LQ(),X$,c;if(f.isETH)X$="0x"+r0.slice(2)+Q9.slice(2),c=[v,X9(q,0n)];else X$=r0,c=[v];await O0(G,K,V,y$,w);let{result:I$}=await G.simulateContract({account:K.account,address:y$,abi:s0,functionName:"zapBurn",args:[V,w,f.actualToken,d,X$,c,u,q]});console.log(` Expected: ${e(I$[0])} ${N} | Reserve refunded: ${e(I$[1])} ${g}`),await L0(G,K,void 0,{address:y$,abi:s0,functionName:"zapBurn",args:[V,w,f.actualToken,d,X$,c,u,q],value:0n},`Zap sold ${Q} ${C} for ${N}`);return}console.log(`\uD83D\uDD04 Smart route: Direct Uniswap swap (${C} → ${N})`);let H=U?Y0:M,S=await G.readContract({address:H,abi:[{type:"function",name:"decimals",inputs:[],outputs:[{type:"uint8"}],stateMutability:"view"}],functionName:"decimals"}).catch(()=>aJ(M)),B;if(Y){let{tokens:b,fees:g}=S5(Y);B={version:"v3",path:wQ(b,g),tokens:b,fees:g,amountOut:0n,description:"Manual V3 path"}}else{let b=await R5(G,V,M,w);if(!b)throw Error(`No swap route found from ${C} to ${N}`);B=b}let F=X?i0(X,Number(S)):B.amountOut>0n?B.amountOut*BigInt(Math.floor((100-Z)*100))/10000n:0n;if(B.amountOut>0n)console.log(` Expected: ~${w$(B.amountOut,Number(S))} ${N}`),console.log(` Min output: ${w$(F,Number(S))} ${N} (${Z}% slippage)`);let I=[],P=[],j=0n;if(B.version==="v4"&&B.poolKey){if(I.push(sV),P.push(rV(B.poolKey,B.zeroForOne,w,F)),D)j=w}else{if(D)I.push(parseInt(bX,16)),P.push(hX(w)),j=w;let b=U?aV:q;if(I.push(KH),P.push(VH(b,w,F,B.path,!D)),U)I.push(parseInt(Q9,16)),P.push(X9(q,F))}let y="0x"+I.map((b)=>b.toString(16).padStart(2,"0")).join(""),x=BigInt(Math.floor(Date.now()/1000)+1800);if(!D&&B.version==="v3")await O0(G,K,V,tV,w);await L0(G,K,void 0,{address:tV,abi:qH,functionName:"execute",args:[y,P,x],value:j},`Swapped ${Q} ${C} → ${N}`)}async function MH($,J,Q){let Y=10n**18n/100n,Z=Q*100n,W=0n;try{let[G,K]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,Z]});if(G+K<=Q)return Z}catch{Z=Q*10n}for(let G=0;G<40;G++){let K=(Y+Z)/2n;if(K===Y)break;try{let[q,V]=await $.readContract({address:$$,abi:q$,functionName:"getReserveForToken",args:[J,K]});if(q+V<=Q)W=K,Y=K;else Z=K}catch{Z=K}}return W}import{resolve as DH}from"path";import{homedir as UH}from"os";KG.config({path:DH(UH(),".mintclub",".env")});KG.config();function SQ(){let $=process.env.PRIVATE_KEY;if(!$)console.error("❌ Set PRIVATE_KEY in ~/.mintclub/.env or export it"),process.exit(1);return $.startsWith("0x")?$:`0x${$}`}async function OJ($){try{return await OV($,D$())}catch(J){console.error(`❌ ${J.message}`),process.exit(1)}return""}function NH($){if(!($ instanceof Error))return String($);let J=$.message,Q=J.match(/insufficient funds.*have (\d+) want (\d+)/);if(Q)return`Insufficient funds: have ${(Number(Q[1])/1000000000000000000).toFixed(4)} ETH, need ${(Number(Q[2])/1000000000000000000).toFixed(4)} ETH`;let X=J.match(/reverted with the following reason:\s*\n?\s*(.+?)(?:\n|$)/);if(X&&X[1].trim())return`Transaction reverted: ${X[1].trim()}`;let Y=J.match(/execution reverted[:\s]*(.+?)(?:\n|$)/);if(Y)return`Transaction reverted: ${Y[1].trim()}`;let Z=J.match(/Details:\s*(.+?)(?:\n|$)/);if(Z)return Z[1].trim();return J.split(`
102
+ `).find((W)=>W.trim().length>0)?.trim()??J}function LJ($){return async()=>{try{await $()}catch(J){console.error("❌",NH(J)),process.exit(1)}}}var v0=new jG().name("mc").description("Mint Club V2 CLI — bonding curve tokens on Base").version("1.5.1");v0.command("price").description("Get token price in reserve and USD").argument("<token>","Token address or symbol").action(($,J)=>LJ(async()=>iV(await OJ($)))());v0.command("info").description("Get token info").argument("<token>","Token address or symbol").action(($,J)=>LJ(async()=>BV(await OJ($)))());v0.command("buy").description("Buy (mint) tokens with reserve token").argument("<token>","Token address or symbol").requiredOption("-a, --amount <n>","Tokens to buy").option("-m, --max-cost <n>","Max reserve cost").action(($,J)=>LJ(async()=>TV(await OJ($),J.amount,J.maxCost,SQ()))());v0.command("sell").description("Sell (burn) tokens for reserve token").argument("<token>","Token address or symbol").requiredOption("-a, --amount <n>","Tokens to sell").option("-m, --min-refund <n>","Min reserve refund").action(($,J)=>LJ(async()=>_V(await OJ($),J.amount,J.minRefund,SQ()))());v0.command("create").description("Create a bonding curve token").requiredOption("-n, --name <name>","Token name").requiredOption("-s, --symbol <sym>","Token symbol").requiredOption("-r, --reserve <addr>","Reserve token address").requiredOption("-x, --max-supply <n>","Max supply").option("-t, --steps <s>",'Custom steps: "range:price,range:price,..."').option("--curve <type>","Curve preset: linear, exponential, logarithmic, flat").option("--initial-price <n>","Starting price (with --curve)").option("--final-price <n>","Final price (with --curve)").option("--mint-royalty <bp>","Mint royalty (bps)","100").option("--burn-royalty <bp>","Burn royalty (bps)","100").option("-y, --yes","Skip confirmation prompt").action(($)=>LJ(async()=>kV($.name,$.symbol,await OJ($.reserve),$.maxSupply,SQ(),{steps:$.steps,curve:$.curve,initialPrice:$.initialPrice,finalPrice:$.finalPrice,mintRoyalty:parseInt($.mintRoyalty),burnRoyalty:parseInt($.burnRoyalty),yes:$.yes}))());v0.command("zap-buy").description("Buy tokens with any token via ZapV2 (auto-routes swap)").argument("<token>","Token address or symbol").requiredOption("-i, --input-token <addr>","Input token (ETH or address/symbol)").requiredOption("-a, --amount <n>","Amount of input token to spend (e.g. 0.01 ETH)").option("-p, --path <p>","Manual swap path: token,fee,token,...").option("-m, --min-tokens <n>","Min tokens out").action(($,J)=>LJ(async()=>vV(await OJ($),await OJ(J.inputToken),J.amount,J.minTokens,J.path,SQ()))());v0.command("zap-sell").description("Sell tokens for any token via ZapV2 (auto-routes swap)").argument("<token>","Token address or symbol").requiredOption("-a, --amount <n>","Tokens to sell").requiredOption("-o, --output-token <addr>","Output token (ETH or address/symbol)").option("-p, --path <p>","Manual swap path: token,fee,token,...").option("-m, --min-output <n>","Min output").action(($,J)=>LJ(async()=>bV(await OJ($),J.amount,await OJ(J.outputToken),J.minOutput,J.path,SQ()))());v0.command("swap").description("Swap tokens via Uniswap V3 (any token pair)").requiredOption("-i, --input <token>","Input token (ETH, USDC, HUNT, or address)").requiredOption("-o, --output <token>","Output token (ETH, USDC, HUNT, or address)").requiredOption("-a, --amount <n>","Amount of input token to swap").option("-m, --min-output <n>","Min output amount").option("-p, --path <p>","Manual swap path: token,fee,token,...").option("-s, --slippage <pct>","Slippage tolerance %","1").action(($)=>LJ(()=>JM($.input,$.output,$.amount,$.minOutput,$.path,parseFloat($.slippage),SQ()))());v0.command("send").description("Send ETH, ERC-20, or ERC-1155 tokens").argument("<to>","Recipient address").requiredOption("-a, --amount <n>","Amount to send").option("-t, --token <addr>","Token contract (omit for ETH)").option("--token-id <id>","ERC-1155 token ID").action(($,J)=>LJ(async()=>oV($,J.amount,SQ(),{token:J.token?await OJ(J.token):void 0,tokenId:J.tokenId}))());v0.command("wallet").description("Show wallet address and balances, or generate/import a key").option("-g, --generate","Generate a new wallet").option("-s, --set-private-key <key>","Import an existing private key").action(($)=>LJ(()=>nV($))());v0.command("upgrade").description("Upgrade mint.club-cli to the latest version").action(()=>{let{execSync:$}=a0("child_process");console.log("⬆️ Upgrading mint.club-cli...");try{let J=$("mc --version",{encoding:"utf-8"}).trim();$("npm install -g mint.club-cli@latest",{stdio:"pipe"});let Q=$("mc --version",{encoding:"utf-8"}).trim();console.log(J===Q?`✅ Already on latest (v${Q})`:`✅ Upgraded: v${J} → v${Q}`)}catch{console.error("❌ Upgrade failed. Try: npm update -g mint.club-cli"),process.exit(1)}});v0.parse();