@lombard.finance/sdk 3.6.7 → 3.6.8

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.
package/dist/index2.cjs CHANGED
@@ -42,7 +42,7 @@ ${z8(O)}`),super(f.shortMessage,{cause:f,docsPath:v,metaMessages:[...f.metaMessa
42
42
  `);super(B,u.cause?{cause:u.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${g5()}`}),this.cause=u.cause,this.details=v,this.docs=C,this.docsPath=t,this.shortMessage=f}walk(f){return V4(this,f)}}function V4(l,f){return f!=null&&f(l)?l:l&&typeof l=="object"&&"cause"in l&&l.cause?V4(l.cause,f):f?null:l}const w5="#__bigint";function v5(l,f,u){return JSON.stringify(l,(v,t)=>typeof t=="bigint"?t.toString()+w5:t,u)}function A5(l,f){if(Ho(l)>f)throw new R5({givenSize:Ho(l),maxSize:f})}const Kt={zero:48,nine:57,A:65,F:70,a:97,f:102};function Vo(l){if(l>=Kt.zero&&l<=Kt.nine)return l-Kt.zero;if(l>=Kt.A&&l<=Kt.F)return l-(Kt.A-10);if(l>=Kt.a&&l<=Kt.f)return l-(Kt.a-10)}function x5(l,f={}){const{dir:u,size:v=32}=f;if(v===0)return l;if(l.length>v)throw new N5({size:l.length,targetSize:v,type:"Bytes"});const t=new Uint8Array(v);for(let d=0;d<v;d++){const C=u==="right";t[C?d:v-d-1]=l[C?d:l.length-d-1]}return t}function gi(l,f){if(Tt(l)>f)throw new L5({givenSize:Tt(l),maxSize:f})}function E5(l,f){if(typeof f=="number"&&f>0&&f>Tt(l)-1)throw new W4({offset:f,position:"start",size:Tt(l)})}function C5(l,f,u){if(typeof f=="number"&&typeof u=="number"&&Tt(l)!==u-f)throw new W4({offset:u,position:"end",size:Tt(l)})}function H4(l,f={}){const{dir:u,size:v=32}=f;if(v===0)return l;const t=l.replace("0x","");if(t.length>v*2)throw new z5({size:Math.ceil(t.length/2),targetSize:v,type:"Hex"});return`0x${t[u==="right"?"padEnd":"padStart"](v*2,"0")}`}const P5=new TextEncoder;function M5(l){return l instanceof Uint8Array?l:typeof l=="string"?I5(l):k5(l)}function k5(l){return l instanceof Uint8Array?l:new Uint8Array(l)}function I5(l,f={}){const{size:u}=f;let v=l;u&&(gi(l,u),v=Hn(l,u));let t=v.slice(2);t.length%2&&(t=`0${t}`);const d=t.length/2,C=new Uint8Array(d);for(let B=0,N=0;B<d;B++){const U=Vo(t.charCodeAt(N++)),z=Vo(t.charCodeAt(N++));if(U===void 0||z===void 0)throw new be(`Invalid byte sequence ("${t[N-2]}${t[N-1]}" in "${t}").`);C[B]=U*16+z}return C}function B5(l,f={}){const{size:u}=f,v=P5.encode(l);return typeof u=="number"?(A5(v,u),S5(v,u)):v}function S5(l,f){return x5(l,{dir:"right",size:f})}function Ho(l){return l.length}let R5=class extends be{constructor({givenSize:f,maxSize:u}){super(`Size cannot exceed \`${u}\` bytes. Given size: \`${f}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}},N5=class extends be{constructor({size:f,targetSize:u,type:v}){super(`${v.charAt(0).toUpperCase()}${v.slice(1).toLowerCase()} size (\`${f}\`) exceeds padding size (\`${u}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};const O5=new TextEncoder,D5=Array.from({length:256},(l,f)=>f.toString(16).padStart(2,"0"));function F5(l,f={}){const{strict:u=!1}=f;if(!l)throw new jo(l);if(typeof l!="string")throw new jo(l);if(u&&!/^0x[0-9a-fA-F]*$/.test(l))throw new qo(l);if(!l.startsWith("0x"))throw new qo(l)}function Lt(...l){return`0x${l.reduce((f,u)=>f+u.replace("0x",""),"")}`}function j4(l,f={}){const u=`0x${Number(l)}`;return typeof f.size=="number"?(gi(u,f.size),Vn(u,f.size)):u}function q4(l,f={}){let u="";for(let t=0;t<l.length;t++)u+=D5[l[t]];const v=`0x${u}`;return typeof f.size=="number"?(gi(v,f.size),Hn(v,f.size)):v}function He(l,f={}){const{signed:u,size:v}=f,t=BigInt(l);let d;v?u?d=(1n<<BigInt(v)*8n-1n)-1n:d=2n**(BigInt(v)*8n)-1n:typeof l=="number"&&(d=BigInt(Number.MAX_SAFE_INTEGER));const C=typeof d=="bigint"&&u?-d-1n:0;if(d&&t>d||t<C){const U=typeof l=="bigint"?"n":"";throw new G4({max:d?`${d}${U}`:void 0,min:`${C}${U}`,signed:u,size:v,value:`${l}${U}`})}const N=`0x${(u&&t<0?(1n<<BigInt(v*8))+BigInt(t):t).toString(16)}`;return v?Vn(N,v):N}function wi(l,f={}){return q4(O5.encode(l),f)}function Vn(l,f){return H4(l,{dir:"left",size:f})}function Hn(l,f){return H4(l,{dir:"right",size:f})}function vi(l,f,u,v={}){const{strict:t}=v;E5(l,f);const d=`0x${l.replace("0x","").slice((f??0)*2,(u??l.length)*2)}`;return t&&C5(d,f,u),d}function Tt(l){return Math.ceil((l.length-2)/2)}function U5(l,f={}){const{strict:u=!1}=f;try{return F5(l,{strict:u}),!0}catch{return!1}}class G4 extends be{constructor({max:f,min:u,signed:v,size:t,value:d}){super(`Number \`${d}\` is not in safe${t?` ${t*8}-bit`:""}${v?" signed":" unsigned"} integer range ${f?`(\`${u}\` to \`${f}\`)`:`(above \`${u}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class jo extends be{constructor(f){super(`Value \`${typeof f=="object"?v5(f):f}\` of type \`${typeof f}\` 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"})}}class qo extends be{constructor(f){super(`Value \`${f}\` 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"})}}class L5 extends be{constructor({givenSize:f,maxSize:u}){super(`Size cannot exceed \`${u}\` bytes. Given size: \`${f}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class W4 extends be{constructor({offset:f,position:u,size:v}){super(`Slice ${u==="start"?"starting":"ending"} at offset \`${f}\` is out-of-bounds (size: \`${v}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class z5 extends be{constructor({size:f,targetSize:u,type:v}){super(`${v.charAt(0).toUpperCase()}${v.slice(1).toLowerCase()} size (\`${f}\`) exceeds padding size (\`${u}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function V5(l){return{address:l.address,amount:He(l.amount),index:He(l.index),validatorIndex:He(l.validatorIndex)}}function Z4(l){return{...typeof l.baseFeePerGas=="bigint"&&{baseFeePerGas:He(l.baseFeePerGas)},...typeof l.blobBaseFee=="bigint"&&{blobBaseFee:He(l.blobBaseFee)},...typeof l.feeRecipient=="string"&&{feeRecipient:l.feeRecipient},...typeof l.gasLimit=="bigint"&&{gasLimit:He(l.gasLimit)},...typeof l.number=="bigint"&&{number:He(l.number)},...typeof l.prevRandao=="bigint"&&{prevRandao:He(l.prevRandao)},...typeof l.time=="bigint"&&{time:He(l.time)},...l.withdrawals&&{withdrawals:l.withdrawals.map(V5)}}}const gs=[{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"}],ws=[{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"}]}],K4=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],Y4=[...K4,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",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"}]}],H5=[...K4,{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]},{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]}],Go=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],Wo=[{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"}]}],Zo=[{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"}],X4=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],j5="0x82ad56cb",Q4="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",q5="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",G5="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",jr="/docs/contract/encodeDeployData";function br(l){const{abi:f,args:u,bytecode:v}=l;if(!u||u.length===0)return v;const t=f.find(C=>"type"in C&&C.type==="constructor");if(!t)throw new by({docsPath:jr});if(!("inputs"in t))throw new Eo({docsPath:jr});if(!t.inputs||t.inputs.length===0)throw new Eo({docsPath:jr});const d=nn(t.inputs,u);return Nt([v,d])}function Ai(){let l=()=>{},f=()=>{};return{promise:new Promise((v,t)=>{l=v,f=t}),resolve:l,reject:f}}const qr=new Map;function J4({fn:l,id:f,shouldSplitBatch:u,wait:v=0,sort:t}){const d=async()=>{const z=N();C();const j=z.map(({args:q})=>q);j.length!==0&&l(j).then(q=>{t&&Array.isArray(q)&&q.sort(t);for(let O=0;O<z.length;O++){const{resolve:_}=z[O];_==null||_([q[O],q])}}).catch(q=>{for(let O=0;O<z.length;O++){const{reject:_}=z[O];_==null||_(q)}})},C=()=>qr.delete(f),B=()=>N().map(({args:z})=>z),N=()=>qr.get(f)||[],U=z=>qr.set(f,[...N(),z]);return{flush:C,async schedule(z){const{promise:j,resolve:q,reject:O}=Ai();return(u==null?void 0:u([...B(),z]))&&d(),N().length>0?(U({args:z,resolve:q,reject:O}),j):(U({args:z,resolve:q,reject:O}),setTimeout(d,v),j)}}}async function w2(l,f){var A0,N0,M0,k0;const{account:u=l.account,authorizationList:v,batch:t=!!((A0=l.batch)!=null&&A0.multicall),blockNumber:d,blockTag:C="latest",accessList:B,blobs:N,blockOverrides:U,code:z,data:j,factory:q,factoryData:O,gas:_,gasPrice:J,maxFeePerBlobGas:s0,maxFeePerGas:o0,maxPriorityFeePerGas:p0,nonce:l0,to:v0,value:b0,stateOverride:R0,...P0}=f,x0=u?Ce(u):void 0;if(z&&(q||O))throw new f0("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(z&&v0)throw new f0("Cannot provide both `code` & `to` as parameters.");const e0=z&&j,w0=q&&O&&v0&&j,d0=e0||w0,m0=e0?K5({code:z,data:j}):w0?Y5({data:j,factory:q,factoryData:O,to:v0}):j;try{Gn(f);const h0=(typeof d=="bigint"?E0(d):void 0)||C,q0=U?Z4(U):void 0,Y0=oi(R0),W0=(k0=(M0=(N0=l.chain)==null?void 0:N0.formatters)==null?void 0:M0.transactionRequest)==null?void 0:k0.format,de=(W0||ba)({...cr(P0,{format:W0}),from:x0==null?void 0:x0.address,accessList:B,authorizationList:v,blobs:N,data:m0,gas:_,gasPrice:J,maxFeePerBlobGas:s0,maxFeePerGas:o0,maxPriorityFeePerGas:p0,nonce:l0,to:d0?void 0:v0,value:b0});if(t&&W5({request:de})&&!Y0&&!q0)try{return await Z5(l,{...de,blockNumber:d,blockTag:C})}catch(ce){if(!(ce instanceof Wu)&&!(ce instanceof ts))throw ce}const Te=(()=>{const ce=[de,h0];return Y0&&q0?[...ce,Y0,q0]:Y0?[...ce,Y0]:q0?[...ce,{},q0]:ce})(),se=await l.request({method:"eth_call",params:Te});return se==="0x"?{data:void 0}:{data:se}}catch(j0){const h0=X5(j0),{offchainLookup:q0,offchainLookupSignature:Y0}=await Promise.resolve().then(()=>require("./ccip.cjs"));if(l.ccipRead!==!1&&(h0==null?void 0:h0.slice(0,10))===Y0&&v0)return{data:await q0(l,{data:h0,to:v0})};throw d0&&(h0==null?void 0:h0.slice(0,10))==="0x101bb98d"?new q8({factory:q}):I4(j0,{...f,account:x0,chain:l.chain})}}function W5({request:l}){const{data:f,to:u,...v}=l;return!(!f||f.startsWith(j5)||!u||Object.values(v).filter(t=>typeof t<"u").length>0)}async function Z5(l,f){var J;const{batchSize:u=1024,wait:v=0}=typeof((J=l.batch)==null?void 0:J.multicall)=="object"?l.batch.multicall:{},{blockNumber:t,blockTag:d="latest",data:C,multicallAddress:B,to:N}=f;let U=B;if(!U){if(!l.chain)throw new Wu;U=ha({blockNumber:t,chain:l.chain,contract:"multicall3"})}const j=(typeof t=="bigint"?E0(t):void 0)||d,{schedule:q}=J4({id:`${l.uid}.${j}`,wait:v,shouldSplitBatch(s0){return s0.reduce((p0,{data:l0})=>p0+(l0.length-2),0)>u*2},fn:async s0=>{const o0=s0.map(v0=>({allowFailure:!0,callData:v0.data,target:v0.to})),p0=wt({abi:gs,args:[o0],functionName:"aggregate3"}),l0=await l.request({method:"eth_call",params:[{data:p0,to:U},j]});return Wn({abi:gs,args:[o0],functionName:"aggregate3",data:l0||"0x"})}}),[{returnData:O,success:_}]=await q({data:C,to:N});if(!_)throw new pr({data:O});return O==="0x"?{data:void 0}:{data:O}}function K5(l){const{code:f,data:u}=l;return br({abi:A4(["constructor(bytes, bytes)"]),bytecode:Q4,args:[f,u]})}function Y5(l){const{data:f,factory:u,factoryData:v,to:t}=l;return br({abi:A4(["constructor(address, bytes, address, bytes)"]),bytecode:q5,args:[t,f,u,v]})}function X5(l){var u;if(!(l instanceof f0))return;const f=l.walk();return typeof(f==null?void 0:f.data)=="object"?(u=f.data)==null?void 0:u.data:f.data}async function zt(l,f){const{abi:u,address:v,args:t,functionName:d,...C}=f,B=wt({abi:u,args:t,functionName:d});try{const{data:N}=await H0(l,w2,"call")({...C,data:B,to:v});return Wn({abi:u,args:t,functionName:d,data:N||"0x"})}catch(N){throw zn(N,{abi:u,address:v,args:t,docsPath:"/docs/contract/readContract",functionName:d})}}async function _4(l,f){const{abi:u,address:v,args:t,dataSuffix:d,functionName:C,...B}=f,N=B.account?Ce(B.account):l.account,U=wt({abi:u,args:t,functionName:C});try{const{data:z}=await H0(l,w2,"call")({batch:!1,data:`${U}${d?d.replace("0x",""):""}`,to:v,...B,account:N}),j=Wn({abi:u,args:t,functionName:C,data:z||"0x"}),q=u.filter(O=>"name"in O&&O.name===f.functionName);return{result:j,request:{abi:q,address:v,args:t,dataSuffix:d,functionName:C,...B,account:N}}}catch(z){throw zn(z,{abi:u,address:v,args:t,docsPath:"/docs/contract/simulateContract",functionName:C,sender:N==null?void 0:N.address})}}const Gr=new Map,Ko=new Map;let Q5=0;function $t(l,f,u){const v=++Q5,t=()=>Gr.get(l)||[],d=()=>{const z=t();Gr.set(l,z.filter(j=>j.id!==v))},C=()=>{const z=t();if(!z.some(q=>q.id===v))return;const j=Ko.get(l);if(z.length===1&&j){const q=j();q instanceof Promise&&q.catch(()=>{})}d()},B=t();if(Gr.set(l,[...B,{id:v,fns:f}]),B&&B.length>0)return C;const N={};for(const z in f)N[z]=(...j)=>{var O,_;const q=t();if(q.length!==0)for(const J of q)(_=(O=J.fns)[z])==null||_.call(O,...j)};const U=u(N);return typeof U=="function"&&Ko.set(l,U),C}async function vs(l){return new Promise(f=>setTimeout(f,l))}function wa(l,{emitOnBegin:f,initialWaitTime:u,interval:v}){let t=!0;const d=()=>t=!1;return(async()=>{let B;f&&(B=await l({unpoll:d}));const N=await(u==null?void 0:u(B))??v;await vs(N);const U=async()=>{t&&(await l({unpoll:d}),await vs(v),U())};U()})(),d}const J5=new Map,_5=new Map;function $5(l){const f=(t,d)=>({clear:()=>d.delete(t),get:()=>d.get(t),set:C=>d.set(t,C)}),u=f(l,J5),v=f(l,_5);return{clear:()=>{u.clear(),v.clear()},promise:u,response:v}}async function ef(l,{cacheKey:f,cacheTime:u=Number.POSITIVE_INFINITY}){const v=$5(f),t=v.response.get();if(t&&u>0&&new Date().getTime()-t.created.getTime()<u)return t.data;let d=v.promise.get();d||(d=l(),v.promise.set(d));try{const C=await d;return v.response.set({created:new Date,data:C}),C}finally{v.promise.clear()}}const tf=l=>`blockNumber.${l}`;async function v2(l,{cacheTime:f=l.cacheTime}={}){const u=await ef(()=>l.request({method:"eth_blockNumber"}),{cacheKey:tf(l.uid),cacheTime:f});return BigInt(u)}async function hr(l,{filter:f}){const u="strict"in f&&f.strict,v=await f.request({method:"eth_getFilterChanges",params:[f.id]});if(typeof v[0]=="string")return v;const t=v.map(d=>_t(d));return!("abi"in f)||!f.abi?t:yi({abi:f.abi,logs:t,strict:u})}async function Tr(l,{filter:f}){return f.request({method:"eth_uninstallFilter",params:[f.id]})}function $4(l,f){const{abi:u,address:v,args:t,batch:d=!0,eventName:C,fromBlock:B,onError:N,onLogs:U,poll:z,pollingInterval:j=l.pollingInterval,strict:q}=f;return(typeof z<"u"?z:typeof B=="bigint"?!0:!(l.transport.type==="webSocket"||l.transport.type==="ipc"||l.transport.type==="fallback"&&(l.transport.transports[0].config.type==="webSocket"||l.transport.transports[0].config.type==="ipc")))?(()=>{const s0=q??!1,o0=ke(["watchContractEvent",v,t,d,l.uid,C,j,s0,B]);return $t(o0,{onLogs:U,onError:N},p0=>{let l0;B!==void 0&&(l0=B-1n);let v0,b0=!1;const R0=wa(async()=>{var P0;if(!b0){try{v0=await H0(l,ii,"createContractEventFilter")({abi:u,address:v,args:t,eventName:C,strict:s0,fromBlock:B})}catch{}b0=!0;return}try{let x0;if(v0)x0=await H0(l,hr,"getFilterChanges")({filter:v0});else{const e0=await H0(l,v2,"getBlockNumber")({});l0&&l0<e0?x0=await H0(l,mi,"getContractEvents")({abi:u,address:v,args:t,eventName:C,fromBlock:l0+1n,toBlock:e0,strict:s0}):x0=[],l0=e0}if(x0.length===0)return;if(d)p0.onLogs(x0);else for(const e0 of x0)p0.onLogs([e0])}catch(x0){v0&&x0 instanceof Ln&&(b0=!1),(P0=p0.onError)==null||P0.call(p0,x0)}},{emitOnBegin:!0,interval:j});return async()=>{v0&&await H0(l,Tr,"uninstallFilter")({filter:v0}),R0()}})})():(()=>{const s0=q??!1,o0=ke(["watchContractEvent",v,t,d,l.uid,C,j,s0]);let p0=!0,l0=()=>p0=!1;return $t(o0,{onLogs:U,onError:N},v0=>((async()=>{try{const b0=(()=>{if(l.transport.type==="fallback"){const x0=l.transport.transports.find(e0=>e0.config.type==="webSocket"||e0.config.type==="ipc");return x0?x0.value:l.transport}return l.transport})(),R0=C?T2({abi:u,eventName:C,args:t}):[],{unsubscribe:P0}=await b0.subscribe({params:["logs",{address:v,topics:R0}],onData(x0){var w0;if(!p0)return;const e0=x0.result;try{const{eventName:d0,args:m0}=li({abi:u,data:e0.data,topics:e0.topics,strict:q}),A0=_t(e0,{args:m0,eventName:d0});v0.onLogs([A0])}catch(d0){let m0,A0;if(d0 instanceof Ha||d0 instanceof ir){if(q)return;m0=d0.abiItem.name,A0=(w0=d0.abiItem.inputs)==null?void 0:w0.some(M0=>!("name"in M0&&M0.name))}const N0=_t(e0,{args:A0?[]:{},eventName:m0});v0.onLogs([N0])}},onError(x0){var e0;(e0=v0.onError)==null||e0.call(v0,x0)}});l0=P0,p0||l0()}catch(b0){N==null||N(b0)}})(),()=>l0()))})()}function ep(l,{docsPath:f,...u}){const v=(()=>{const t=dr(l,u);return t instanceof l2?l:t})();return new $l(v,{docsPath:f,...u})}async function xi(l,{serializedTransaction:f}){return l.request({method:"eth_sendRawTransaction",params:[f]},{retryCount:0})}const Wr=new ar(128);async function gr(l,f){var p0,l0,v0,b0;const{account:u=l.account,chain:v=l.chain,accessList:t,authorizationList:d,blobs:C,data:B,gas:N,gasPrice:U,maxFeePerBlobGas:z,maxFeePerGas:j,maxPriorityFeePerGas:q,nonce:O,type:_,value:J,...s0}=f;if(typeof u>"u")throw new jn({docsPath:"/docs/actions/wallet/sendTransaction"});const o0=u?Ce(u):null;try{Gn(f);const R0=await(async()=>{if(f.to)return f.to;if(f.to!==null&&d&&d.length>0)return await S4({authorization:d[0]}).catch(()=>{throw new f0("`to` is required. Could not infer from `authorizationList`.")})})();if((o0==null?void 0:o0.type)==="json-rpc"||o0===null){let P0;v!==null&&(P0=await H0(l,ga,"getChainId")({}),n4({currentChainId:P0,chain:v}));const x0=(v0=(l0=(p0=l.chain)==null?void 0:p0.formatters)==null?void 0:l0.transactionRequest)==null?void 0:v0.format,w0=(x0||ba)({...cr(s0,{format:x0}),accessList:t,authorizationList:d,blobs:C,chainId:P0,data:B,from:o0==null?void 0:o0.address,gas:N,gasPrice:U,maxFeePerBlobGas:z,maxFeePerGas:j,maxPriorityFeePerGas:q,nonce:O,to:R0,type:_,value:J}),d0=Wr.get(l.uid),m0=d0?"wallet_sendTransaction":"eth_sendTransaction";try{return await l.request({method:m0,params:[w0]},{retryCount:0})}catch(A0){if(d0===!1)throw A0;const N0=A0;if(N0.name==="InvalidInputRpcError"||N0.name==="InvalidParamsRpcError"||N0.name==="MethodNotFoundRpcError"||N0.name==="MethodNotSupportedRpcError")return await l.request({method:"wallet_sendTransaction",params:[w0]},{retryCount:0}).then(M0=>(Wr.set(l.uid,!0),M0)).catch(M0=>{const k0=M0;throw k0.name==="MethodNotFoundRpcError"||k0.name==="MethodNotSupportedRpcError"?(Wr.set(l.uid,!1),N0):k0});throw N0}}if((o0==null?void 0:o0.type)==="local"){const P0=await H0(l,yr,"prepareTransactionRequest")({account:o0,accessList:t,authorizationList:d,blobs:C,chain:v,data:B,gas:N,gasPrice:U,maxFeePerBlobGas:z,maxFeePerGas:j,maxPriorityFeePerGas:q,nonce:O,nonceManager:o0.nonceManager,parameters:[...O4,"sidecars"],type:_,value:J,...s0,to:R0}),x0=(b0=v==null?void 0:v.serializers)==null?void 0:b0.transaction,e0=await o0.signTransaction(P0,{serializer:x0});return await H0(l,xi,"sendRawTransaction")({serializedTransaction:e0})}throw(o0==null?void 0:o0.type)==="smart"?new j2({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new j2({docsPath:"/docs/actions/wallet/sendTransaction",type:o0==null?void 0:o0.type})}catch(R0){throw R0 instanceof j2?R0:ep(R0,{...f,account:o0,chain:f.chain||void 0})}}async function tp(l,f){const{abi:u,account:v=l.account,address:t,args:d,dataSuffix:C,functionName:B,...N}=f;if(typeof v>"u")throw new jn({docsPath:"/docs/contract/writeContract"});const U=v?Ce(v):null,z=wt({abi:u,args:d,functionName:B});try{return await H0(l,gr,"sendTransaction")({data:`${z}${C?C.replace("0x",""):""}`,to:t,account:U,...N})}catch(j){throw zn(j,{abi:u,address:t,args:d,docsPath:"/docs/contract/writeContract",functionName:B,sender:U==null?void 0:U.address})}}function wr({abi:l,address:f,client:u}){const v=u,[t,d]=v?"public"in v&&"wallet"in v?[v.public,v.wallet]:"public"in v?[v.public,void 0]:"wallet"in v?[void 0,v.wallet]:[v,v]:[void 0,void 0],C=t!=null,B=d!=null,N={};let U=!1,z=!1,j=!1;for(const q of l)if(q.type==="function"?q.stateMutability==="view"||q.stateMutability==="pure"?U=!0:z=!0:q.type==="event"&&(j=!0),U&&z&&j)break;return C&&(U&&(N.read=new Proxy({},{get(q,O){return(..._)=>{const{args:J,options:s0}=O2(_);return H0(t,zt,"readContract")({abi:l,address:f,functionName:O,args:J,...s0})}}})),z&&(N.simulate=new Proxy({},{get(q,O){return(..._)=>{const{args:J,options:s0}=O2(_);return H0(t,_4,"simulateContract")({abi:l,address:f,functionName:O,args:J,...s0})}}})),j&&(N.createEventFilter=new Proxy({},{get(q,O){return(..._)=>{const J=l.find(p0=>p0.type==="event"&&p0.name===O),{args:s0,options:o0}=Zr(_,J);return H0(t,ii,"createContractEventFilter")({abi:l,address:f,eventName:O,args:s0,...o0})}}}),N.getEvents=new Proxy({},{get(q,O){return(..._)=>{const J=l.find(p0=>p0.type==="event"&&p0.name===O),{args:s0,options:o0}=Zr(_,J);return H0(t,mi,"getContractEvents")({abi:l,address:f,eventName:O,args:s0,...o0})}}}),N.watchEvent=new Proxy({},{get(q,O){return(..._)=>{const J=l.find(p0=>p0.type==="event"&&p0.name===O),{args:s0,options:o0}=Zr(_,J);return H0(t,$4,"watchContractEvent")({abi:l,address:f,eventName:O,args:s0,...o0})}}}))),B&&z&&(N.write=new Proxy({},{get(q,O){return(..._)=>{const{args:J,options:s0}=O2(_);return H0(d,tp,"writeContract")({abi:l,address:f,functionName:O,args:J,...s0})}}})),(C||B)&&z&&(N.estimateGas=new Proxy({},{get(q,O){return(..._)=>{const{args:J,options:s0}=O2(_);return H0(t??d,F4,"estimateContractGas")({abi:l,address:f,functionName:O,args:J,...s0,account:s0.account??d.account})}}})),N.address=f,N.abi=l,N}function O2(l){const f=l.length&&Array.isArray(l[0]),u=f?l[0]:[],v=(f?l[1]:l[0])??{};return{args:u,options:v}}function Zr(l,f){let u=!1;Array.isArray(l[0])?u=!0:l.length===1?u=f.inputs.some(d=>d.indexed):l.length===2&&(u=!0);const v=u?l[0]:void 0,t=(u?l[1]:l[0])??{};return{args:v,options:t}}const np="0x5792579257925792579257925792579257925792579257925792579257925792",ap=E0(0,{size:32});async function nf(l,f){const{account:u=l.account,capabilities:v,chain:t=l.chain,experimental_fallback:d,experimental_fallbackDelay:C=32,forceAtomic:B=!1,id:N,version:U="2.0.0"}=f,z=u?Ce(u):null,j=f.calls.map(q=>{const O=q,_=O.abi?wt({abi:O.abi,functionName:O.functionName,args:O.args}):O.data;return{data:O.dataSuffix&&_?at([_,O.dataSuffix]):_,to:O.to,value:O.value?E0(O.value):void 0}});try{const q=await l.request({method:"wallet_sendCalls",params:[{atomicRequired:B,calls:j,capabilities:v,chainId:E0(t.id),from:z==null?void 0:z.address,id:N,version:U}]},{retryCount:0});return typeof q=="string"?{id:q}:q}catch(q){const O=q;if(d&&(O.name==="MethodNotFoundRpcError"||O.name==="MethodNotSupportedRpcError"||O.name==="UnknownRpcError"||O.details.toLowerCase().includes("does not exist / is not available")||O.details.toLowerCase().includes("missing or invalid. request()")||O.details.toLowerCase().includes("did not match any variant of untagged enum")||O.details.toLowerCase().includes("account upgraded to unsupported contract")||O.details.toLowerCase().includes("eip-7702 not supported")||O.details.toLowerCase().includes("unsupported wc_ method"))){if(v&&Object.values(v).some(p0=>!p0.optional)){const p0="non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";throw new pa(new f0(p0,{details:p0}))}if(B&&j.length>1){const o0="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new da(new f0(o0,{details:o0}))}const _=[];for(const o0 of j){const p0=gr(l,{account:z,chain:t,data:o0.data,to:o0.to,value:o0.value?Oe(o0.value):void 0});_.push(p0),C>0&&await new Promise(l0=>setTimeout(l0,C))}const J=await Promise.allSettled(_);if(J.every(o0=>o0.status==="rejected"))throw J[0].reason;const s0=J.map(o0=>o0.status==="fulfilled"?o0.value:ap);return{id:at([...s0,E0(t.id,{size:32}),np])}}throw ep(q,{...f,account:z,chain:f.chain})}}async function rp(l,f){async function u(z){if(z.endsWith(np.slice(2))){const q=yt(Z2(z,-64,-32)),O=Z2(z,0,-64).slice(2).match(/.{1,64}/g),_=await Promise.all(O.map(s0=>ap.slice(2)!==s0?l.request({method:"eth_getTransactionReceipt",params:[`0x${s0}`]},{dedupe:!0}):void 0)),J=_.some(s0=>s0===null)?100:_.every(s0=>(s0==null?void 0:s0.status)==="0x1")?200:_.every(s0=>(s0==null?void 0:s0.status)==="0x0")?500:600;return{atomic:!1,chainId:ht(q),receipts:_.filter(Boolean),status:J,version:"2.0.0"}}return l.request({method:"wallet_getCallsStatus",params:[z]})}const{atomic:v=!1,chainId:t,receipts:d,version:C="2.0.0",...B}=await u(f.id),[N,U]=(()=>{const z=B.status;return z>=100&&z<200?["pending",z]:z>=200&&z<300?["success",z]:z>=300&&z<700?["failure",z]:z==="CONFIRMED"?["success",200]:z==="PENDING"?["pending",100]:[void 0,z]})();return{...B,atomic:v,chainId:t?ht(t):void 0,receipts:(d==null?void 0:d.map(z=>({...z,blockNumber:Oe(z.blockNumber),gasUsed:Oe(z.gasUsed),status:Pu[z.status]})))??[],statusCode:U,status:N,version:C}}async function af(l,f){const{id:u,pollingInterval:v=l.pollingInterval,status:t=({statusCode:q})=>q>=200,timeout:d=6e4}=f,C=ke(["waitForCallsStatus",l.uid,u]),{promise:B,resolve:N,reject:U}=Ai();let z;const j=$t(C,{resolve:N,reject:U},q=>{const O=wa(async()=>{const _=J=>{clearTimeout(z),O(),J(),j()};try{const J=await rp(l,{id:u});if(!t(J))return;_(()=>q.resolve(J))}catch(J){_(()=>q.reject(J))}},{interval:v,emitOnBegin:!0});return O});return z=d?setTimeout(()=>{j(),clearTimeout(z),U(new rf({id:u}))},d):void 0,await B}class rf extends f0{constructor({id:f}){super(`Timed out while waiting for call bundle with id "${f}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const As=256;let D2=As,F2;function sp(l=11){if(!F2||D2+l>As*2){F2="",D2=0;for(let f=0;f<As;f++)F2+=(256+Math.random()*256|0).toString(16).substring(1)}return F2.substring(D2,D2+++l)}function ip(l){const{batch:f,chain:u,ccipRead:v,key:t="base",name:d="Base Client",type:C="base"}=l,B=(u==null?void 0:u.blockTime)??12e3,N=Math.min(Math.max(Math.floor(B/2),500),4e3),U=l.pollingInterval??N,z=l.cacheTime??U,j=l.account?Ce(l.account):void 0,{config:q,request:O,value:_}=l.transport({chain:u,pollingInterval:U}),J={...q,..._},s0={account:j,batch:f,cacheTime:z,ccipRead:v,chain:u,key:t,name:d,pollingInterval:U,request:O,transport:J,type:C,uid:sp()};function o0(p0){return l0=>{const v0=l0(p0);for(const R0 in s0)delete v0[R0];const b0={...p0,...v0};return Object.assign(b0,{extend:o0(b0)})}}return Object.assign(s0,{extend:o0(s0)})}const U2=new ar(8192);function sf(l,{enabled:f=!0,id:u}){if(!f||!u)return l();if(U2.get(u))return U2.get(u);const v=l().finally(()=>U2.delete(u));return U2.set(u,v),v}function xs(l,{delay:f=100,retryCount:u=2,shouldRetry:v=()=>!0}={}){return new Promise((t,d)=>{const C=async({count:B=0}={})=>{const N=async({error:U})=>{const z=typeof f=="function"?f({count:B,error:U}):f;z&&await vs(z),C({count:B+1})};try{const U=await l();t(U)}catch(U){if(B<u&&await v({count:B,error:U}))return N({error:U});d(U)}};C()})}function of(l,f={}){return async(u,v={})=>{var j;const{dedupe:t=!1,methods:d,retryDelay:C=150,retryCount:B=3,uid:N}={...f,...v},{method:U}=u;if((j=d==null?void 0:d.exclude)!=null&&j.includes(U))throw new Mn(new Error("method not supported"),{method:U});if(d!=null&&d.include&&!d.include.includes(U))throw new Mn(new Error("method not supported"),{method:U});const z=t?aa(`${N}.${ke(u)}`):void 0;return sf(()=>xs(async()=>{try{return await l(u)}catch(q){const O=q;switch(O.code){case qa.code:throw new qa(O);case Ga.code:throw new Ga(O);case Wa.code:throw new Wa(O,{method:u.method});case Za.code:throw new Za(O);case Un.code:throw new Un(O);case Ln.code:throw new Ln(O);case Ka.code:throw new Ka(O);case Ya.code:throw new Ya(O);case Xa.code:throw new Xa(O);case Mn.code:throw new Mn(O,{method:u.method});case ua.code:throw new ua(O);case Qa.code:throw new Qa(O);case ea.code:throw new ea(O);case Ja.code:throw new Ja(O);case _a.code:throw new _a(O);case $a.code:throw new $a(O);case e2.code:throw new e2(O);case t2.code:throw new t2(O);case pa.code:throw new pa(O);case n2.code:throw new n2(O);case a2.code:throw new a2(O);case r2.code:throw new r2(O);case s2.code:throw new s2(O);case i2.code:throw new i2(O);case da.code:throw new da(O);case 5e3:throw new ea(O);default:throw q instanceof f0?q:new W8(O)}}},{delay:({count:q,error:O})=>{var _;if(O&&O instanceof $n){const J=(_=O==null?void 0:O.headers)==null?void 0:_.get("Retry-After");if(J!=null&&J.match(/\d/))return Number.parseInt(J)*1e3}return~~(1<<q)*C},retryCount:B,shouldRetry:({error:q})=>uf(q)}),{enabled:t,id:z})}}function uf(l){return"code"in l&&typeof l.code=="number"?l.code===-1||l.code===ua.code||l.code===Un.code:l instanceof $n&&l.status?l.status===403||l.status===408||l.status===413||l.status===429||l.status===500||l.status===502||l.status===503||l.status===504:!0}function op({key:l,methods:f,name:u,request:v,retryCount:t=3,retryDelay:d=150,timeout:C,type:B},N){const U=sp();return{config:{key:l,methods:f,name:u,request:v,retryCount:t,retryDelay:d,timeout:C,type:B},request:of(v,{methods:f,retryCount:t,retryDelay:d,uid:U}),value:N}}function pf(l,f={}){const{key:u="custom",methods:v,name:t="Custom Provider",retryDelay:d}=f;return({retryCount:C})=>op({key:u,methods:v,name:t,request:l.request.bind(l),retryCount:f.retryCount??C,retryDelay:d,type:"custom"})}class df extends f0{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function cf(l,{errorInstance:f=new Error("timed out"),timeout:u,signal:v}){return new Promise((t,d)=>{(async()=>{let C;try{const B=new AbortController;u>0&&(C=setTimeout(()=>{v&&B.abort()},u)),t(await l({signal:(B==null?void 0:B.signal)||null}))}catch(B){(B==null?void 0:B.name)==="AbortError"&&d(f),d(B)}finally{clearTimeout(C)}})()})}function lf(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Yo=lf();function yf(l,f={}){return{async request(u){var j;const{body:v,onRequest:t=f.onRequest,onResponse:d=f.onResponse,timeout:C=f.timeout??1e4}=u,B={...f.fetchOptions??{},...u.fetchOptions??{}},{headers:N,method:U,signal:z}=B;try{const q=await cf(async({signal:_})=>{const J={...B,body:Array.isArray(v)?ke(v.map(l0=>({jsonrpc:"2.0",id:l0.id??Yo.take(),...l0}))):ke({jsonrpc:"2.0",id:v.id??Yo.take(),...v}),headers:{"Content-Type":"application/json",...N},method:U||"POST",signal:z||(C>0?_:null)},s0=new Request(l,J),o0=await(t==null?void 0:t(s0,J))??{...J,url:l};return await fetch(o0.url??l,o0)},{errorInstance:new So({body:v,url:l}),timeout:C,signal:!0});d&&await d(q);let O;if((j=q.headers.get("Content-Type"))!=null&&j.startsWith("application/json"))O=await q.json();else{O=await q.text();try{O=JSON.parse(O||"{}")}catch(_){if(q.ok)throw _;O={error:O}}}if(!q.ok)throw new $n({body:v,details:ke(O.error)||q.statusText,headers:q.headers,status:q.status,url:l});return O}catch(q){throw q instanceof $n||q instanceof So?q:new $n({body:v,cause:q,url:l})}}}}function ff(l,f={}){const{batch:u,fetchOptions:v,key:t="http",methods:d,name:C="HTTP JSON-RPC",onFetchRequest:B,onFetchResponse:N,retryDelay:U,raw:z}=f;return({chain:j,retryCount:q,timeout:O})=>{const{batchSize:_=1e3,wait:J=0}=typeof u=="object"?u:{},s0=f.retryCount??q,o0=O??f.timeout??1e4,p0=l||(j==null?void 0:j.rpcUrls.default.http[0]);if(!p0)throw new df;const l0=yf(p0,{fetchOptions:v,onRequest:B,onResponse:N,timeout:o0});return op({key:t,methods:d,name:C,async request({method:v0,params:b0}){const R0={method:v0,params:b0},{schedule:P0}=J4({id:p0,wait:J,shouldSplitBatch(d0){return d0.length>_},fn:d0=>l0.request({body:d0}),sort:(d0,m0)=>d0.id-m0.id}),x0=async d0=>u?P0(d0):[await l0.request({body:d0})],[{error:e0,result:w0}]=await x0(R0);if(z)return{error:e0,result:w0};if(e0)throw new si({body:R0,error:e0,url:p0});return w0},retryCount:s0,retryDelay:U,timeout:o0,type:"http"},{fetchOptions:v,url:p0})}}function Ei(l,f){var v,t,d,C,B,N;if(!(l instanceof f0))return!1;const u=l.walk(U=>U instanceof bs);return u instanceof bs?!!(((v=u.data)==null?void 0:v.errorName)==="ResolverNotFound"||((t=u.data)==null?void 0:t.errorName)==="ResolverWildcardNotSupported"||((d=u.data)==null?void 0:d.errorName)==="ResolverNotContract"||((C=u.data)==null?void 0:C.errorName)==="ResolverError"||((B=u.data)==null?void 0:B.errorName)==="HttpError"||(N=u.reason)!=null&&N.includes("Wildcard on non-extended resolvers is not supported")||f==="reverse"&&u.reason===a4[50]):!1}function mf(l){const{abi:f,data:u}=l,v=Dn(u,0,4),t=f.find(d=>d.type==="function"&&v===b2(St(d)));if(!t)throw new Ay(v,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:t.name,args:"inputs"in t&&t.inputs&&t.inputs.length>0?h2(t.inputs,Dn(u,4)):void 0}}const Kr="/docs/contract/encodeErrorResult";function Xo(l){const{abi:f,errorName:u,args:v}=l;let t=f[0];if(u){const N=qn({abi:f,args:v,name:u});if(!N)throw new Co(u,{docsPath:Kr});t=N}if(t.type!=="error")throw new Co(void 0,{docsPath:Kr});const d=St(t),C=b2(d);let B="0x";if(v&&v.length>0){if(!t.inputs)throw new wy(t.name,{docsPath:Kr});B=nn(t.inputs,v)}return Nt([C,B])}const Yr="/docs/contract/encodeFunctionResult";function bf(l){const{abi:f,functionName:u,result:v}=l;let t=f[0];if(u){const C=qn({abi:f,name:u});if(!C)throw new oa(u,{docsPath:Yr});t=C}if(t.type!=="function")throw new oa(void 0,{docsPath:Yr});if(!t.outputs)throw new u4(t.name,{docsPath:Yr});const d=(()=>{if(t.outputs.length===0)return[];if(t.outputs.length===1)return[v];if(Array.isArray(v))return v;throw new p4(v)})();return nn(t.outputs,d)}const Ci="x-batch-gateway:true";async function hf(l){const{data:f,ccipRequest:u}=l,{args:[v]}=mf({abi:ws,data:f}),t=[],d=[];return await Promise.all(v.map(async(C,B)=>{try{d[B]=await u(C),t[B]=!1}catch(N){t[B]=!0,d[B]=Tf(N)}})),bf({abi:ws,functionName:"query",result:[t,d]})}function Tf(l){return l.name==="HttpRequestError"&&l.status?Xo({abi:ws,errorName:"HttpError",args:[l.status,l.shortMessage]}):Xo({abi:[r4],errorName:"Error",args:["shortMessage"in l?l.shortMessage:l.message]})}function up(l){if(l.length!==66||l.indexOf("[")!==0||l.indexOf("]")!==65)return null;const f=`0x${l.slice(1,65)}`;return kt(f)?f:null}function q2(l){let f=new Uint8Array(32).fill(0);if(!l)return Ie(f);const u=l.split(".");for(let v=u.length-1;v>=0;v-=1){const t=up(u[v]),d=t?ma(t):De(Sn(u[v]),"bytes");f=De(at([f,d]),"bytes")}return Ie(f)}function gf(l){return`[${l.slice(2)}]`}function wf(l){const f=new Uint8Array(32).fill(0);return l?up(l)||De(Sn(l)):Ie(f)}function vr(l){const f=l.replace(/^\.|\.$/gm,"");if(f.length===0)return new Uint8Array(1);const u=new Uint8Array(Sn(f).byteLength+2);let v=0;const t=f.split(".");for(let d=0;d<t.length;d++){let C=Sn(t[d]);C.byteLength>255&&(C=Sn(gf(wf(t[d])))),u[v]=C.length,u.set(C,v+1),v+=C.length+1}return u.byteLength!==v+1?u.slice(0,v+1):u}async function vf(l,f){const{blockNumber:u,blockTag:v,coinType:t,name:d,gatewayUrls:C,strict:B}=f,{chain:N}=l,U=(()=>{if(f.universalResolverAddress)return f.universalResolverAddress;if(!N)throw new Error("client chain not configured. universalResolverAddress is required.");return ha({blockNumber:u,chain:N,contract:"ensUniversalResolver"})})(),z=N==null?void 0:N.ensTlds;if(z&&!z.some(j=>d.endsWith(j)))return null;try{const j=wt({abi:Wo,functionName:"addr",...t!=null?{args:[q2(d),BigInt(t)]}:{args:[q2(d)]}}),q={address:U,abi:Y4,functionName:"resolve",args:[Ue(vr(d)),j,C??[Ci]],blockNumber:u,blockTag:v},_=await H0(l,zt,"readContract")(q);if(_[0]==="0x")return null;const J=Wn({abi:Wo,args:t!=null?[q2(d),BigInt(t)]:void 0,functionName:"addr",data:_[0]});return J==="0x"||yt(J)==="0x00"?null:J}catch(j){if(B)throw j;if(Ei(j,"resolve"))return null;throw j}}class Af extends f0{constructor({data:f}){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(f)}`],name:"EnsAvatarInvalidMetadataError"})}}class Ra extends f0{constructor({reason:f}){super(`ENS NFT avatar URI is invalid. ${f}`,{name:"EnsAvatarInvalidNftUriError"})}}class Pi extends f0{constructor({uri:f}){super(`Unable to resolve ENS avatar URI "${f}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class xf extends f0{constructor({namespace:f}){super(`ENS NFT avatar namespace "${f}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const Ef=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Cf=/^(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>\/.*)?$/,Pf=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,Mf=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function kf(l){try{const f=await fetch(l,{method:"HEAD"});if(f.status===200){const u=f.headers.get("content-type");return u==null?void 0:u.startsWith("image/")}return!1}catch(f){return typeof f=="object"&&typeof f.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(u=>{const v=new Image;v.onload=()=>{u(!0)},v.onerror=()=>{u(!1)},v.src=l})}}function Qo(l,f){return l?l.endsWith("/")?l.slice(0,-1):l:f}function pp({uri:l,gatewayUrls:f}){const u=Pf.test(l);if(u)return{uri:l,isOnChain:!0,isEncoded:u};const v=Qo(f==null?void 0:f.ipfs,"https://ipfs.io"),t=Qo(f==null?void 0:f.arweave,"https://arweave.net"),d=l.match(Ef),{protocol:C,subpath:B,target:N,subtarget:U=""}=(d==null?void 0:d.groups)||{},z=C==="ipns:/"||B==="ipns/",j=C==="ipfs:/"||B==="ipfs/"||Cf.test(l);if(l.startsWith("http")&&!z&&!j){let O=l;return f!=null&&f.arweave&&(O=l.replace(/https:\/\/arweave.net/g,f==null?void 0:f.arweave)),{uri:O,isOnChain:!1,isEncoded:!1}}if((z||j)&&N)return{uri:`${v}/${z?"ipns":"ipfs"}/${N}${U}`,isOnChain:!1,isEncoded:!1};if(C==="ar:/"&&N)return{uri:`${t}/${N}${U||""}`,isOnChain:!1,isEncoded:!1};let q=l.replace(Mf,"");if(q.startsWith("<svg")&&(q=`data:image/svg+xml;base64,${btoa(q)}`),q.startsWith("data:")||q.startsWith("{"))return{uri:q,isOnChain:!0,isEncoded:!1};throw new Pi({uri:l})}function dp(l){if(typeof l!="object"||!("image"in l)&&!("image_url"in l)&&!("image_data"in l))throw new Af({data:l});return l.image||l.image_url||l.image_data}async function If({gatewayUrls:l,uri:f}){try{const u=await fetch(f).then(t=>t.json());return await Mi({gatewayUrls:l,uri:dp(u)})}catch{throw new Pi({uri:f})}}async function Mi({gatewayUrls:l,uri:f}){const{uri:u,isOnChain:v}=pp({uri:f,gatewayUrls:l});if(v||await kf(u))return u;throw new Pi({uri:f})}function Bf(l){let f=l;f.startsWith("did:nft:")&&(f=f.replace("did:nft:","").replace(/_/g,"/"));const[u,v,t]=f.split("/"),[d,C]=u.split(":"),[B,N]=v.split(":");if(!d||d.toLowerCase()!=="eip155")throw new Ra({reason:"Only EIP-155 supported"});if(!C)throw new Ra({reason:"Chain ID not found"});if(!N)throw new Ra({reason:"Contract address not found"});if(!t)throw new Ra({reason:"Token ID not found"});if(!B)throw new Ra({reason:"ERC namespace not found"});return{chainID:Number.parseInt(C),namespace:B.toLowerCase(),contractAddress:N,tokenID:t}}async function Sf(l,{nft:f}){if(f.namespace==="erc721")return zt(l,{address:f.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(f.tokenID)]});if(f.namespace==="erc1155")return zt(l,{address:f.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(f.tokenID)]});throw new xf({namespace:f.namespace})}async function Rf(l,{gatewayUrls:f,record:u}){return/eip155:/i.test(u)?Nf(l,{gatewayUrls:f,record:u}):Mi({uri:u,gatewayUrls:f})}async function Nf(l,{gatewayUrls:f,record:u}){const v=Bf(u),t=await Sf(l,{nft:v}),{uri:d,isOnChain:C,isEncoded:B}=pp({uri:t,gatewayUrls:f});if(C&&(d.includes("data:application/json;base64,")||d.startsWith("{"))){const U=B?atob(d.replace("data:application/json;base64,","")):d,z=JSON.parse(U);return Mi({uri:dp(z),gatewayUrls:f})}let N=v.tokenID;return v.namespace==="erc1155"&&(N=N.replace("0x","").padStart(64,"0")),If({gatewayUrls:f,uri:d.replace(/(?:0x)?{id}/,N)})}async function cp(l,f){const{blockNumber:u,blockTag:v,key:t,name:d,gatewayUrls:C,strict:B}=f,{chain:N}=l,U=(()=>{if(f.universalResolverAddress)return f.universalResolverAddress;if(!N)throw new Error("client chain not configured. universalResolverAddress is required.");return ha({blockNumber:u,chain:N,contract:"ensUniversalResolver"})})(),z=N==null?void 0:N.ensTlds;if(z&&!z.some(j=>d.endsWith(j)))return null;try{const j={address:U,abi:Y4,functionName:"resolve",args:[Ue(vr(d)),wt({abi:Go,functionName:"text",args:[q2(d),t]}),C??[Ci]],blockNumber:u,blockTag:v},O=await H0(l,zt,"readContract")(j);if(O[0]==="0x")return null;const _=Wn({abi:Go,functionName:"text",data:O[0]});return _===""?null:_}catch(j){if(B)throw j;if(Ei(j,"resolve"))return null;throw j}}async function Of(l,{blockNumber:f,blockTag:u,assetGatewayUrls:v,name:t,gatewayUrls:d,strict:C,universalResolverAddress:B}){const N=await H0(l,cp,"getEnsText")({blockNumber:f,blockTag:u,key:"avatar",name:t,universalResolverAddress:B,gatewayUrls:d,strict:C});if(!N)return null;try{return await Rf(l,{record:N,gatewayUrls:v})}catch{return null}}async function Df(l,{address:f,blockNumber:u,blockTag:v,gatewayUrls:t,strict:d,universalResolverAddress:C}){let B=C;if(!B){if(!l.chain)throw new Error("client chain not configured. universalResolverAddress is required.");B=ha({blockNumber:u,chain:l.chain,contract:"ensUniversalResolver"})}const N=`${f.toLowerCase().substring(2)}.addr.reverse`;try{const U={address:B,abi:H5,functionName:"reverse",args:[Ue(vr(N))],blockNumber:u,blockTag:v},z=H0(l,zt,"readContract"),[j,q]=t?await z({...U,args:[...U.args,t]}):await z(U);return f.toLowerCase()!==q.toLowerCase()?null:j}catch(U){if(d)throw U;if(Ei(U,"reverse"))return null;throw U}}async function Ff(l,f){const{blockNumber:u,blockTag:v,name:t}=f,{chain:d}=l,C=(()=>{if(f.universalResolverAddress)return f.universalResolverAddress;if(!d)throw new Error("client chain not configured. universalResolverAddress is required.");return ha({blockNumber:u,chain:d,contract:"ensUniversalResolver"})})(),B=d==null?void 0:d.ensTlds;if(B&&!B.some(U=>t.endsWith(U)))throw new Error(`${t} is not a valid ENS TLD (${B==null?void 0:B.join(", ")}) for chain "${d.name}" (id: ${d.id}).`);const[N]=await H0(l,zt,"readContract")({address:C,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[Ue(vr(t))],blockNumber:u,blockTag:v});return N}async function lp(l,f){var s0,o0,p0;const{account:u=l.account,blockNumber:v,blockTag:t="latest",blobs:d,data:C,gas:B,gasPrice:N,maxFeePerBlobGas:U,maxFeePerGas:z,maxPriorityFeePerGas:j,to:q,value:O,..._}=f,J=u?Ce(u):void 0;try{Gn(f);const v0=(typeof v=="bigint"?E0(v):void 0)||t,b0=(p0=(o0=(s0=l.chain)==null?void 0:s0.formatters)==null?void 0:o0.transactionRequest)==null?void 0:p0.format,P0=(b0||ba)({...cr(_,{format:b0}),from:J==null?void 0:J.address,blobs:d,data:C,gas:B,gasPrice:N,maxFeePerBlobGas:U,maxFeePerGas:z,maxPriorityFeePerGas:j,to:q,value:O}),x0=await l.request({method:"eth_createAccessList",params:[P0,v0]});return{accessList:x0.accessList,gasUsed:BigInt(x0.gasUsed)}}catch(l0){throw I4(l0,{...f,account:J,chain:l.chain})}}async function Uf(l){const f=lr(l,{method:"eth_newBlockFilter"}),u=await l.request({method:"eth_newBlockFilter"});return{id:u,request:f(u),type:"block"}}async function yp(l,{address:f,args:u,event:v,events:t,fromBlock:d,strict:C,toBlock:B}={}){const N=t??(v?[v]:void 0),U=lr(l,{method:"eth_newFilter"});let z=[];N&&(z=[N.flatMap(O=>T2({abi:[O],eventName:O.name,args:u}))],v&&(z=z[0]));const j=await l.request({method:"eth_newFilter",params:[{address:f,fromBlock:typeof d=="bigint"?E0(d):d,toBlock:typeof B=="bigint"?E0(B):B,...z.length?{topics:z}:{}}]});return{abi:N,args:u,eventName:v?v.name:void 0,fromBlock:d,id:j,request:U(j),strict:!!C,toBlock:B,type:"event"}}async function fp(l){const f=lr(l,{method:"eth_newPendingTransactionFilter"}),u=await l.request({method:"eth_newPendingTransactionFilter"});return{id:u,request:f(u),type:"transaction"}}async function Lf(l){const f=await l.request({method:"eth_blobBaseFee"});return BigInt(f)}async function zf(l,{blockHash:f,blockNumber:u,blockTag:v="latest"}={}){const t=u!==void 0?E0(u):void 0;let d;return f?d=await l.request({method:"eth_getBlockTransactionCountByHash",params:[f]},{dedupe:!0}):d=await l.request({method:"eth_getBlockTransactionCountByNumber",params:[t||v]},{dedupe:!!t}),ht(d)}async function Jo(l,{address:f,blockNumber:u,blockTag:v="latest"}){const t=u!==void 0?E0(u):void 0,d=await l.request({method:"eth_getCode",params:[f,t||v]},{dedupe:!!t});if(d!=="0x")return d}class Vf extends f0{constructor({address:f}){super(`No EIP-712 domain found on contract "${f}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${f}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function Hf(l,f){const{address:u,factory:v,factoryData:t}=f;try{const[d,C,B,N,U,z,j]=await H0(l,zt,"readContract")({abi:jf,address:u,functionName:"eip712Domain",factory:v,factoryData:t});return{domain:{name:C,version:B,chainId:Number(N),verifyingContract:U,salt:z},extensions:j,fields:d}}catch(d){const C=d;throw C.name==="ContractFunctionExecutionError"&&C.cause.name==="ContractFunctionZeroDataError"?new Vf({address:u}):C}}const jf=[{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"}];function qf(l){var f;return{baseFeePerGas:l.baseFeePerGas.map(u=>BigInt(u)),gasUsedRatio:l.gasUsedRatio,oldestBlock:BigInt(l.oldestBlock),reward:(f=l.reward)==null?void 0:f.map(u=>u.map(v=>BigInt(v)))}}async function Gf(l,{blockCount:f,blockNumber:u,blockTag:v="latest",rewardPercentiles:t}){const d=typeof u=="bigint"?E0(u):void 0,C=await l.request({method:"eth_feeHistory",params:[E0(f),d||v,t]},{dedupe:!!d});return qf(C)}async function Wf(l,{filter:f}){const u=f.strict??!1,t=(await f.request({method:"eth_getFilterLogs",params:[f.id]})).map(d=>_t(d));return f.abi?yi({abi:f.abi,logs:t,strict:u}):t}class Zf extends f0{constructor({domain:f}){super(`Invalid domain "${ke(f)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class Kf extends f0{constructor({primaryType:f,types:u}){super(`Invalid primary type \`${f}\` must be one of \`${JSON.stringify(Object.keys(u))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class Yf extends f0{constructor({type:f}){super(`Struct type "${f}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function Xf(l){const{domain:f={},message:u,primaryType:v}=l,t={EIP712Domain:wp({domain:f}),...l.types};gp({domain:f,message:u,primaryType:v,types:t});const d=["0x1901"];return f&&d.push(Qf({domain:f,types:t})),v!=="EIP712Domain"&&d.push(mp({data:u,primaryType:v,types:t})),De(at(d))}function Qf({domain:l,types:f}){return mp({data:l,primaryType:"EIP712Domain",types:f})}function mp({data:l,primaryType:f,types:u}){const v=bp({data:l,primaryType:f,types:u});return De(v)}function bp({data:l,primaryType:f,types:u}){const v=[{type:"bytes32"}],t=[Jf({primaryType:f,types:u})];for(const d of u[f]){const[C,B]=Tp({types:u,name:d.name,type:d.type,value:l[d.name]});v.push(C),t.push(B)}return nn(v,t)}function Jf({primaryType:l,types:f}){const u=Ue(_f({primaryType:l,types:f}));return De(u)}function _f({primaryType:l,types:f}){let u="";const v=hp({primaryType:l,types:f});v.delete(l);const t=[l,...Array.from(v).sort()];for(const d of t)u+=`${d}(${f[d].map(({name:C,type:B})=>`${B} ${C}`).join(",")})`;return u}function hp({primaryType:l,types:f},u=new Set){const v=l.match(/^\w*/u),t=v==null?void 0:v[0];if(u.has(t)||f[t]===void 0)return u;u.add(t);for(const d of f[t])hp({primaryType:d.type,types:f},u);return u}function Tp({types:l,name:f,type:u,value:v}){if(l[u]!==void 0)return[{type:"bytes32"},De(bp({data:v,primaryType:u,types:l}))];if(u==="bytes")return v=`0x${(v.length%2?"0":"")+v.slice(2)}`,[{type:"bytes32"},De(v)];if(u==="string")return[{type:"bytes32"},De(Ue(v))];if(u.lastIndexOf("]")===u.length-1){const t=u.slice(0,u.lastIndexOf("[")),d=v.map(C=>Tp({name:f,type:t,types:l,value:C}));return[{type:"bytes32"},De(nn(d.map(([C])=>C),d.map(([,C])=>C)))]}return[{type:u},v]}function $f(l){const{domain:f,message:u,primaryType:v,types:t}=l,d=(N,U)=>{const z={...U};for(const j of N){const{name:q,type:O}=j;O==="address"&&(z[q]=z[q].toLowerCase())}return z},C=t.EIP712Domain?f?d(t.EIP712Domain,f):{}:{},B=(()=>{if(v!=="EIP712Domain")return d(t[v],u)})();return ke({domain:C,message:B,primaryType:v,types:t})}function gp(l){const{domain:f,message:u,primaryType:v,types:t}=l,d=(C,B)=>{for(const N of C){const{name:U,type:z}=N,j=B[U],q=z.match(E4);if(q&&(typeof j=="number"||typeof j=="bigint")){const[J,s0,o0]=q;E0(j,{signed:s0==="int",size:Number.parseInt(o0)/8})}if(z==="address"&&typeof j=="string"&&!Re(j))throw new qe({address:j});const O=z.match(v8);if(O){const[J,s0]=O;if(s0&&ve(j)!==Number.parseInt(s0))throw new Ey({expectedSize:Number.parseInt(s0),givenSize:ve(j)})}const _=t[z];_&&(em(z),d(_,j))}};if(t.EIP712Domain&&f){if(typeof f!="object")throw new Zf({domain:f});d(t.EIP712Domain,f)}if(v!=="EIP712Domain")if(t[v])d(t[v],u);else throw new Kf({primaryType:v,types:t})}function wp({domain:l}){return[typeof(l==null?void 0:l.name)=="string"&&{name:"name",type:"string"},(l==null?void 0:l.version)&&{name:"version",type:"string"},(typeof(l==null?void 0:l.chainId)=="number"||typeof(l==null?void 0:l.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(l==null?void 0:l.verifyingContract)&&{name:"verifyingContract",type:"address"},(l==null?void 0:l.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function em(l){if(l==="address"||l==="bool"||l==="string"||l.startsWith("bytes")||l.startsWith("uint")||l.startsWith("int"))throw new Yf({type:l})}const tm=`Ethereum Signed Message:
43
43
  `;function nm(l){const f=typeof l=="string"?aa(l):typeof l.raw=="string"?l.raw:Ie(l.raw),u=aa(`${tm}${ve(f)}`);return at([u,f])}function vp(l,f){return De(nm(l),f)}const Ap="0x6492649264926492649264926492649264926492649264926492649264926492";function am(l){return Z2(l,-32)===Ap}function rm(l){const{address:f,data:u,signature:v,to:t="hex"}=l,d=Nt([nn([{type:"address"},{type:"bytes"},{type:"bytes"}],[f,u,v]),Ap]);return t==="hex"?d:It(d)}class sm extends f0{constructor({value:f}){super(`Number \`${f}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}function im(l,f){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test(l))throw new sm({value:l});let[u,v="0"]=l.split(".");const t=u.startsWith("-");if(t&&(u=u.slice(1)),v=v.replace(/(0+)$/,""),f===0)Math.round(+`.${v}`)===1&&(u=`${BigInt(u)+1n}`),v="";else if(v.length>f){const[d,C,B]=[v.slice(0,f-1),v.slice(f-1,f),v.slice(f)],N=Math.round(+`${C}.${B}`);N>9?v=`${BigInt(d)+BigInt(1)}0`.padStart(d.length+1,"0"):v=`${d}${N}`,v.length>f&&(v=v.slice(1),u=`${BigInt(u)+1n}`),v=v.slice(0,f)}else v=v.padEnd(f,"0");return BigInt(`${t?"-":""}${u}${v}`)}function xp(l,f="wei"){return im(l,Su[f])}function om(l){return l.map(f=>({...f,value:BigInt(f.value)}))}function um(l){return{...l,balance:l.balance?BigInt(l.balance):void 0,nonce:l.nonce?ht(l.nonce):void 0,storageProof:l.storageProof?om(l.storageProof):void 0}}async function pm(l,{address:f,blockNumber:u,blockTag:v,storageKeys:t}){const d=v??"latest",C=u!==void 0?E0(u):void 0,B=await l.request({method:"eth_getProof",params:[f,t,C||d]});return um(B)}async function dm(l,{address:f,blockNumber:u,blockTag:v="latest",slot:t}){const d=u!==void 0?E0(u):void 0;return await l.request({method:"eth_getStorageAt",params:[f,t,d||v]})}async function ki(l,{blockHash:f,blockNumber:u,blockTag:v,hash:t,index:d}){var z,j,q;const C=v||"latest",B=u!==void 0?E0(u):void 0;let N=null;if(t?N=await l.request({method:"eth_getTransactionByHash",params:[t]},{dedupe:!0}):f?N=await l.request({method:"eth_getTransactionByBlockHashAndIndex",params:[f,E0(d)]},{dedupe:!0}):N=await l.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[B||C,E0(d)]},{dedupe:!!B}),!N)throw new Nu({blockHash:f,blockNumber:u,blockTag:C,hash:t,index:d});return(((q=(j=(z=l.chain)==null?void 0:z.formatters)==null?void 0:j.transaction)==null?void 0:q.format)||$2)(N)}async function cm(l,{hash:f,transactionReceipt:u}){const[v,t]=await Promise.all([H0(l,v2,"getBlockNumber")({}),f?H0(l,ki,"getTransaction")({hash:f}):void 0]),d=(u==null?void 0:u.blockNumber)||(t==null?void 0:t.blockNumber);return d?v-d+1n:0n}async function Es(l,{hash:f}){var t,d,C;const u=await l.request({method:"eth_getTransactionReceipt",params:[f]},{dedupe:!0});if(!u)throw new Ou({hash:f});return(((C=(d=(t=l.chain)==null?void 0:t.formatters)==null?void 0:d.transactionReceipt)==null?void 0:C.format)||Mu)(u)}async function lm(l,f){var o0;const{account:u,allowFailure:v=!0,batchSize:t,blockNumber:d,blockTag:C,multicallAddress:B,stateOverride:N}=f,U=f.contracts,z=t??(typeof((o0=l.batch)==null?void 0:o0.multicall)=="object"&&l.batch.multicall.batchSize||1024);let j=B;if(!j){if(!l.chain)throw new Error("client chain not configured. multicallAddress is required.");j=ha({blockNumber:d,chain:l.chain,contract:"multicall3"})}const q=[[]];let O=0,_=0;for(let p0=0;p0<U.length;p0++){const{abi:l0,address:v0,args:b0,functionName:R0}=U[p0];try{const P0=wt({abi:l0,args:b0,functionName:R0});_+=(P0.length-2)/2,z>0&&_>z&&q[O].length>0&&(O++,_=(P0.length-2)/2,q[O]=[]),q[O]=[...q[O],{allowFailure:!0,callData:P0,target:v0}]}catch(P0){const x0=zn(P0,{abi:l0,address:v0,args:b0,docsPath:"/docs/contract/multicall",functionName:R0,sender:u});if(!v)throw x0;q[O]=[...q[O],{allowFailure:!0,callData:"0x",target:v0}]}}const J=await Promise.allSettled(q.map(p0=>H0(l,zt,"readContract")({abi:gs,account:u,address:j,args:[p0],blockNumber:d,blockTag:C,functionName:"aggregate3",stateOverride:N}))),s0=[];for(let p0=0;p0<J.length;p0++){const l0=J[p0];if(l0.status==="rejected"){if(!v)throw l0.reason;for(let b0=0;b0<q[p0].length;b0++)s0.push({status:"failure",error:l0.reason,result:void 0});continue}const v0=l0.value;for(let b0=0;b0<v0.length;b0++){const{returnData:R0,success:P0}=v0[b0],{callData:x0}=q[p0][b0],{abi:e0,address:w0,functionName:d0,args:m0}=U[s0.length];try{if(x0==="0x")throw new m2;if(!P0)throw new pr({data:R0});const A0=Wn({abi:e0,args:m0,data:R0,functionName:d0});s0.push(v?{result:A0,status:"success"}:A0)}catch(A0){const N0=zn(A0,{abi:e0,address:w0,args:m0,docsPath:"/docs/contract/multicall",functionName:d0});if(!v)throw N0;s0.push({error:N0,result:void 0,status:"failure"})}}}if(s0.length!==U.length)throw new f0("multicall results mismatch");return s0}async function Cs(l,f){const{blockNumber:u,blockTag:v="latest",blocks:t,returnFullTransactions:d,traceTransfers:C,validation:B}=f;try{const N=[];for(const q of t){const O=q.blockOverrides?Z4(q.blockOverrides):void 0,_=q.calls.map(s0=>{const o0=s0,p0=o0.account?Ce(o0.account):void 0,l0=o0.abi?wt(o0):o0.data,v0={...o0,data:o0.dataSuffix?at([l0||"0x",o0.dataSuffix]):l0,from:o0.from??(p0==null?void 0:p0.address)};return Gn(v0),ba(v0)}),J=q.stateOverrides?oi(q.stateOverrides):void 0;N.push({blockOverrides:O,calls:_,stateOverrides:J})}const z=(typeof u=="bigint"?E0(u):void 0)||v;return(await l.request({method:"eth_simulateV1",params:[{blockStateCalls:N,returnFullTransactions:d,traceTransfers:C,validation:B},z]})).map((q,O)=>({...Gs(q),calls:q.calls.map((_,J)=>{var w0,d0;const{abi:s0,args:o0,functionName:p0,to:l0}=t[O].calls[J],v0=((w0=_.error)==null?void 0:w0.data)??_.returnData,b0=BigInt(_.gasUsed),R0=(d0=_.logs)==null?void 0:d0.map(m0=>_t(m0)),P0=_.status==="0x1"?"success":"failure",x0=s0&&P0==="success"&&v0!=="0x"?Wn({abi:s0,data:v0,functionName:p0}):null,e0=(()=>{var A0;if(P0==="success")return;let m0;if(((A0=_.error)==null?void 0:A0.data)==="0x"?m0=new m2:_.error&&(m0=new pr(_.error)),!!m0)return zn(m0,{abi:s0??[],address:l0??"0x",args:o0,functionName:p0??"<unknown>"})})();return{data:v0,gasUsed:b0,logs:R0,status:P0,...P0==="success"?{result:x0}:{error:e0}}})}))}catch(N){const U=N,z=dr(U,{});throw z instanceof l2?U:z}}function Ep(l,f={}){const{as:u=typeof l=="string"?"Hex":"Bytes"}=f,v=Qu(M5(l));return u==="Bytes"?v:q4(v)}class ym extends Map{constructor(f){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=f}get(f){const u=super.get(f);return super.has(f)&&u!==void 0&&(this.delete(f),super.set(f,u)),u}set(f,u){if(super.set(f,u),this.maxSize&&this.size>this.maxSize){const v=this.keys().next().value;v&&this.delete(v)}return this}}const fm={checksum:new ym(8192)},Xr=fm.checksum,mm=/^0x[a-fA-F0-9]{40}$/;function Ar(l,f={}){const{strict:u=!0}=f;if(!mm.test(l))throw new _o({address:l,cause:new hm});if(u){if(l.toLowerCase()===l)return;if(bm(l)!==l)throw new _o({address:l,cause:new Tm})}}function bm(l){if(Xr.has(l))return Xr.get(l);Ar(l,{strict:!1});const f=l.substring(2).toLowerCase(),u=Ep(B5(f),{as:"Bytes"}),v=f.split("");for(let d=0;d<40;d+=2)u[d>>1]>>4>=8&&v[d]&&(v[d]=v[d].toUpperCase()),(u[d>>1]&15)>=8&&v[d+1]&&(v[d+1]=v[d+1].toUpperCase());const t=`0x${v.join("")}`;return Xr.set(l,t),t}function Ps(l,f={}){const{strict:u=!0}=f??{};try{return Ar(l,{strict:u}),!0}catch{return!1}}class _o extends be{constructor({address:f,cause:u}){super(`Address "${f}" is invalid.`,{cause:u}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class hm extends be{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 Tm extends be{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function Ms(l){let f=!0,u="",v=0,t="",d=!1;for(let C=0;C<l.length;C++){const B=l[C];if(["(",")",","].includes(B)&&(f=!0),B==="("&&v++,B===")"&&v--,!!f){if(v===0){if(B===" "&&["event","function","error",""].includes(t))t="";else if(t+=B,B===")"){d=!0;break}continue}if(B===" "){l[C-1]!==","&&u!==","&&u!==",("&&(u="",f=!1);continue}t+=B,u+=B}}if(!d)throw new be("Unable to normalize signature.");return t}function ks(l,f){const u=typeof l,v=f.type;switch(v){case"address":return Ps(l,{strict:!1});case"bool":return u==="boolean";case"function":return u==="string";case"string":return u==="string";default:return v==="tuple"&&"components"in f?Object.values(f.components).every((t,d)=>ks(Object.values(l)[d],t)):/^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(v)?u==="number"||u==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(v)?u==="string"||l instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(v)?Array.isArray(l)&&l.every(t=>ks(t,{...f,type:v.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function Cp(l,f,u){for(const v in l){const t=l[v],d=f[v];if(t.type==="tuple"&&d.type==="tuple"&&"components"in t&&"components"in d)return Cp(t.components,d.components,u[v]);const C=[t.type,d.type];if(C.includes("address")&&C.includes("bytes20")?!0:C.includes("address")&&C.includes("string")?Ps(u[v],{strict:!1}):C.includes("address")&&C.includes("bytes")?Ps(u[v],{strict:!1}):!1)return C}}function Pp(l,f={}){const{prepare:u=!0}=f,v=Array.isArray(l)||typeof l=="string"?ko(l):l;return{...v,...u?{hash:Qn(v)}:{}}}function gm(l,f,u){const{args:v=[],prepare:t=!0}=u??{},d=U5(f,{strict:!1}),C=l.filter(U=>d?U.type==="function"||U.type==="error"?Mp(U)===vi(f,0,4):U.type==="event"?Qn(U)===f:!1:"name"in U&&U.name===f);if(C.length===0)throw new Is({name:f});if(C.length===1)return{...C[0],...t?{hash:Qn(C[0])}:{}};let B;for(const U of C){if(!("inputs"in U))continue;if(!v||v.length===0){if(!U.inputs||U.inputs.length===0)return{...U,...t?{hash:Qn(U)}:{}};continue}if(!U.inputs||U.inputs.length===0||U.inputs.length!==v.length)continue;if(v.every((j,q)=>{const O="inputs"in U&&U.inputs[q];return O?ks(j,O):!1})){if(B&&"inputs"in B&&B.inputs){const j=Cp(U.inputs,B.inputs,v);if(j)throw new vm({abiItem:U,type:j[0]},{abiItem:B,type:j[1]})}B=U}}const N=(()=>{if(B)return B;const[U,...z]=C;return{...U,overloads:z}})();if(!N)throw new Is({name:f});return{...N,...t?{hash:Qn(N)}:{}}}function Mp(l){return vi(Qn(l),0,4)}function wm(l){const f=typeof l=="string"?l:K2(l);return Ms(f)}function Qn(l){return typeof l!="string"&&"hash"in l&&l.hash?l.hash:Ep(wi(wm(l)))}class vm extends be{constructor(f,u){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${f.type}\` in \`${Ms(K2(f.abiItem))}\`, and`,`\`${u.type}\` in \`${Ms(K2(u.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 Is extends be{constructor({name:f,data:u,type:v="item"}){const t=f?` with name "${f}"`:u?` with data "${u}"`:"";super(`ABI ${v}${t} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}const Am=/^(.*)\[([0-9]*)\]$/,xm=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,kp=/^(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 Em({checksumAddress:l,parameters:f,values:u}){const v=[];for(let t=0;t<f.length;t++)v.push(Ii({checksumAddress:l,parameter:f[t],value:u[t]}));return v}function Ii({checksumAddress:l=!1,parameter:f,value:u}){const v=f,t=Rm(v.type);if(t){const[d,C]=t;return Pm(u,{checksumAddress:l,length:d,parameter:{...v,type:C}})}if(v.type==="tuple")return Sm(u,{checksumAddress:l,parameter:v});if(v.type==="address")return Cm(u,{checksum:l});if(v.type==="bool")return km(u);if(v.type.startsWith("uint")||v.type.startsWith("int")){const d=v.type.startsWith("int"),[,,C="256"]=kp.exec(v.type)??[];return Im(u,{signed:d,size:Number(C)})}if(v.type.startsWith("bytes"))return Mm(u,{type:v.type});if(v.type==="string")return Bm(u);throw new Rp(v.type)}function Bi(l){let f=0;for(let d=0;d<l.length;d++){const{dynamic:C,encoded:B}=l[d];C?f+=32:f+=Tt(B)}const u=[],v=[];let t=0;for(let d=0;d<l.length;d++){const{dynamic:C,encoded:B}=l[d];C?(u.push(He(f+t,{size:32})),v.push(B),t+=Tt(B)):u.push(B)}return Lt(...u,...v)}function Cm(l,f){const{checksum:u=!1}=f;return Ar(l,{strict:u}),{dynamic:!1,encoded:Vn(l.toLowerCase())}}function Pm(l,f){const{checksumAddress:u,length:v,parameter:t}=f,d=v===null;if(!Array.isArray(l))throw new Om(l);if(!d&&l.length!==v)throw new Nm({expectedLength:v,givenLength:l.length,type:`${t.type}[${v}]`});let C=!1;const B=[];for(let N=0;N<l.length;N++){const U=Ii({checksumAddress:u,parameter:t,value:l[N]});U.dynamic&&(C=!0),B.push(U)}if(d||C){const N=Bi(B);if(d){const U=He(B.length,{size:32});return{dynamic:!0,encoded:B.length>0?Lt(U,N):U}}if(C)return{dynamic:!0,encoded:N}}return{dynamic:!1,encoded:Lt(...B.map(({encoded:N})=>N))}}function Mm(l,{type:f}){const[,u]=f.split("bytes"),v=Tt(l);if(!u){let t=l;return v%32!==0&&(t=Hn(t,Math.ceil((l.length-2)/2/32)*32)),{dynamic:!0,encoded:Lt(Vn(He(v,{size:32})),t)}}if(v!==Number.parseInt(u))throw new Bp({expectedSize:Number.parseInt(u),value:l});return{dynamic:!1,encoded:Hn(l)}}function km(l){if(typeof l!="boolean")throw new be(`Invalid boolean value: "${l}" (type: ${typeof l}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Vn(j4(l))}}function Im(l,{signed:f,size:u}){if(typeof u=="number"){const v=2n**(BigInt(u)-(f?1n:0n))-1n,t=f?-v-1n:0n;if(l>v||l<t)throw new G4({max:v.toString(),min:t.toString(),signed:f,size:u/8,value:l.toString()})}return{dynamic:!1,encoded:He(l,{size:32,signed:f})}}function Bm(l){const f=wi(l),u=Math.ceil(Tt(f)/32),v=[];for(let t=0;t<u;t++)v.push(Hn(vi(f,t*32,(t+1)*32)));return{dynamic:!0,encoded:Lt(Hn(He(Tt(f),{size:32})),...v)}}function Sm(l,f){const{checksumAddress:u,parameter:v}=f;let t=!1;const d=[];for(let C=0;C<v.components.length;C++){const B=v.components[C],N=Array.isArray(l)?C:B.name,U=Ii({checksumAddress:u,parameter:B,value:l[N]});d.push(U),U.dynamic&&(t=!0)}return{dynamic:t,encoded:t?Bi(d):Lt(...d.map(({encoded:C})=>C))}}function Rm(l){const f=l.match(/^(.*)\[(\d+)?\]$/);return f?[f[2]?Number(f[2]):null,f[1]]:void 0}function Ip(l,f,u){const{checksumAddress:v=!1}={};if(l.length!==f.length)throw new Sp({expectedLength:l.length,givenLength:f.length});const t=Em({checksumAddress:v,parameters:l,values:f}),d=Bi(t);return d.length===0?"0x":d}function Bs(l,f){if(l.length!==f.length)throw new Sp({expectedLength:l.length,givenLength:f.length});const u=[];for(let v=0;v<l.length;v++){const t=l[v],d=f[v];u.push(Bs.encode(t,d))}return Lt(...u)}(function(l){function f(u,v,t=!1){if(u==="address"){const N=v;return Ar(N),Vn(N.toLowerCase(),t?32:0)}if(u==="string")return wi(v);if(u==="bytes")return v;if(u==="bool")return Vn(j4(v),t?32:1);const d=u.match(kp);if(d){const[N,U,z="256"]=d,j=Number.parseInt(z)/8;return He(v,{size:t?32:j,signed:U==="int"})}const C=u.match(xm);if(C){const[N,U]=C;if(Number.parseInt(U)!==(v.length-2)/2)throw new Bp({expectedSize:Number.parseInt(U),value:v});return Hn(v,t?32:0)}const B=u.match(Am);if(B&&Array.isArray(v)){const[N,U]=B,z=[];for(let j=0;j<v.length;j++)z.push(f(U,v[j],!0));return z.length===0?"0x":Lt(...z)}throw new Rp(u)}l.encode=f})(Bs||(Bs={}));class Nm extends be{constructor({expectedLength:f,givenLength:u,type:v}){super(`Array length mismatch for type \`${v}\`. Expected: \`${f}\`. Given: \`${u}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class Bp extends be{constructor({expectedSize:f,value:u}){super(`Size of bytes "${u}" (bytes${Tt(u)}) does not match expected size (bytes${f}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class Sp extends be{constructor({expectedLength:f,givenLength:u}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${f}`,`Given length (values): ${u}`].join(`
44
44
  `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class Om extends be{constructor(f){super(`Value \`${f}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class Rp extends be{constructor(f){super(`Type \`${f}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function Dm(l,f){var t;const{bytecode:u,args:v}=f;return Lt(u,(t=l.inputs)!=null&&t.length&&(v!=null&&v.length)?Ip(l.inputs,v):"0x")}function Fm(l){return Pp(l)}function Um(l,...f){const{overloads:u}=l,v=u?Lm([l,...u],l.name,{args:f[0]}):l,t=zm(v),d=f.length>0?Ip(v.inputs,f[0]):void 0;return d?Lt(t,d):t}function Yn(l,f={}){return Pp(l,f)}function Lm(l,f,u){const v=gm(l,f,u);if(v.type!=="function")throw new Is({name:f,type:"function"});return v}function zm(l){return Mp(l)}const Vm="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",tt="0x0000000000000000000000000000000000000000",Hm="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function jm(l,f){const{blockNumber:u,blockTag:v,calls:t,stateOverrides:d,traceAssetChanges:C,traceTransfers:B,validation:N}=f,U=f.account?Ce(f.account):void 0;if(C&&!U)throw new f0("`account` is required when `traceAssetChanges` is true");const z=U?Dm(Fm("constructor(bytes, bytes)"),{bytecode:Q4,args:[Hm,Um(Yn("function getBalance(address)"),[U.address])]}):void 0,j=C?await Promise.all(f.calls.map(async h0=>{if(!h0.data&&!h0.abi)return;const{accessList:q0}=await lp(l,{account:U.address,...h0,data:h0.abi?wt(h0):h0.data});return q0.map(({address:Y0,storageKeys:W0})=>W0.length>0?Y0:null)})).then(h0=>h0.flat().filter(Boolean)):[],q=await Cs(l,{blockNumber:u,blockTag:v,blocks:[...C?[{calls:[{data:z}],stateOverrides:d},{calls:j.map((h0,q0)=>({abi:[Yn("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[U.address],to:h0,from:tt,nonce:q0})),stateOverrides:[{address:tt,nonce:0}]}]:[],{calls:[...t,{}].map(h0=>({...h0,from:U==null?void 0:U.address})),stateOverrides:d},...C?[{calls:[{data:z}]},{calls:j.map((h0,q0)=>({abi:[Yn("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[U.address],to:h0,from:tt,nonce:q0})),stateOverrides:[{address:tt,nonce:0}]},{calls:j.map((h0,q0)=>({to:h0,abi:[Yn("function decimals() returns (uint256)")],functionName:"decimals",from:tt,nonce:q0})),stateOverrides:[{address:tt,nonce:0}]},{calls:j.map((h0,q0)=>({to:h0,abi:[Yn("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:tt,nonce:q0})),stateOverrides:[{address:tt,nonce:0}]},{calls:j.map((h0,q0)=>({to:h0,abi:[Yn("function symbol() returns (string)")],functionName:"symbol",from:tt,nonce:q0})),stateOverrides:[{address:tt,nonce:0}]}]:[]],traceTransfers:B,validation:N}),O=C?q[2]:q[0],[_,J,,s0,o0,p0,l0,v0]=C?q:[],{calls:b0,...R0}=O,P0=b0.slice(0,-1)??[],x0=(_==null?void 0:_.calls)??[],e0=(J==null?void 0:J.calls)??[],w0=[...x0,...e0].map(h0=>h0.status==="success"?Oe(h0.data):null),d0=(s0==null?void 0:s0.calls)??[],m0=(o0==null?void 0:o0.calls)??[],A0=[...d0,...m0].map(h0=>h0.status==="success"?Oe(h0.data):null),N0=((p0==null?void 0:p0.calls)??[]).map(h0=>h0.status==="success"?h0.result:null),M0=((v0==null?void 0:v0.calls)??[]).map(h0=>h0.status==="success"?h0.result:null),k0=((l0==null?void 0:l0.calls)??[]).map(h0=>h0.status==="success"?h0.result:null),j0=[];for(const[h0,q0]of A0.entries()){const Y0=w0[h0];if(typeof q0!="bigint"||typeof Y0!="bigint")continue;const W0=N0[h0-1],he=M0[h0-1],de=k0[h0-1],Te=h0===0?{address:Vm,decimals:18,symbol:"ETH"}:{address:j[h0-1],decimals:de||W0?Number(W0??1):void 0,symbol:he??void 0};j0.some(se=>se.token.address===Te.address)||j0.push({token:Te,value:{pre:Y0,post:q0,diff:q0-Y0}})}return{assetChanges:j0,block:R0,results:P0}}class Np extends Js{constructor(f,u){super(),this.finished=!1,this.destroyed=!1,n6(f);const v=tr(u);if(this.iHash=f.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const t=this.blockLen,d=new Uint8Array(t);d.set(v.length>t?f.create().update(v).digest():v);for(let C=0;C<d.length;C++)d[C]^=54;this.iHash.update(d),this.oHash=f.create();for(let C=0;C<d.length;C++)d[C]^=106;this.oHash.update(d),sa(d)}update(f){return ra(this),this.iHash.update(f),this}digestInto(f){ra(this),Bt(f,this.outputLen),this.finished=!0,this.iHash.digestInto(f),this.oHash.update(f),this.oHash.digestInto(f),this.destroy()}digest(){const f=new Uint8Array(this.oHash.outputLen);return this.digestInto(f),f}_cloneInto(f){f||(f=Object.create(Object.getPrototypeOf(this),{}));const{oHash:u,iHash:v,finished:t,destroyed:d,blockLen:C,outputLen:B}=this;return f=f,f.finished=t,f.destroyed=d,f.blockLen=C,f.outputLen=B,f.oHash=u._cloneInto(f.oHash),f.iHash=v._cloneInto(f.iHash),f}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const Op=(l,f,u)=>new Np(l,f).update(u).digest();Op.create=(l,f)=>new Np(l,f);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ke=BigInt(0),je=BigInt(1),kn=BigInt(2),qm=BigInt(3),Dp=BigInt(4),Fp=BigInt(5),Up=BigInt(8);function ct(l,f){const u=l%f;return u>=Ke?u:f+u}function ut(l,f,u){let v=l;for(;f-- >Ke;)v*=v,v%=u;return v}function $o(l,f){if(l===Ke)throw new Error("invert: expected non-zero number");if(f<=Ke)throw new Error("invert: expected positive modulus, got "+f);let u=ct(l,f),v=f,t=Ke,d=je;for(;u!==Ke;){const B=v/u,N=v%u,U=t-d*B;v=u,u=N,t=d,d=U}if(v!==je)throw new Error("invert: does not exist");return ct(t,f)}function Lp(l,f){const u=(l.ORDER+je)/Dp,v=l.pow(f,u);if(!l.eql(l.sqr(v),f))throw new Error("Cannot find square root");return v}function Gm(l,f){const u=(l.ORDER-Fp)/Up,v=l.mul(f,kn),t=l.pow(v,u),d=l.mul(f,t),C=l.mul(l.mul(d,kn),t),B=l.mul(d,l.sub(C,l.ONE));if(!l.eql(l.sqr(B),f))throw new Error("Cannot find square root");return B}function Wm(l){if(l<BigInt(3))throw new Error("sqrt is not defined for small field");let f=l-je,u=0;for(;f%kn===Ke;)f/=kn,u++;let v=kn;const t=xr(l);for(;eu(t,v)===1;)if(v++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(u===1)return Lp;let d=t.pow(v,f);const C=(f+je)/kn;return function(N,U){if(N.is0(U))return U;if(eu(N,U)!==1)throw new Error("Cannot find square root");let z=u,j=N.mul(N.ONE,d),q=N.pow(U,f),O=N.pow(U,C);for(;!N.eql(q,N.ONE);){if(N.is0(q))return N.ZERO;let _=1,J=N.sqr(q);for(;!N.eql(J,N.ONE);)if(_++,J=N.sqr(J),_===z)throw new Error("Cannot find square root");const s0=je<<BigInt(z-_-1),o0=N.pow(j,s0);z=_,j=N.sqr(o0),q=N.mul(q,j),O=N.mul(O,o0)}return O}}function Zm(l){return l%Dp===qm?Lp:l%Up===Fp?Gm:Wm(l)}const Km=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Ym(l){const f={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},u=Km.reduce((v,t)=>(v[t]="function",v),f);return Ti(l,u),l}function Xm(l,f,u){if(u<Ke)throw new Error("invalid exponent, negatives unsupported");if(u===Ke)return l.ONE;if(u===je)return f;let v=l.ONE,t=f;for(;u>Ke;)u&je&&(v=l.mul(v,t)),t=l.sqr(t),u>>=je;return v}function zp(l,f,u=!1){const v=new Array(f.length).fill(u?l.ZERO:void 0),t=f.reduce((C,B,N)=>l.is0(B)?C:(v[N]=C,l.mul(C,B)),l.ONE),d=l.inv(t);return f.reduceRight((C,B,N)=>l.is0(B)?C:(v[N]=l.mul(C,v[N]),l.mul(C,B)),d),v}function eu(l,f){const u=(l.ORDER-je)/kn,v=l.pow(f,u),t=l.eql(v,l.ONE),d=l.eql(v,l.ZERO),C=l.eql(v,l.neg(l.ONE));if(!t&&!d&&!C)throw new Error("invalid Legendre symbol result");return t?1:d?0:-1}function Qm(l,f){f!==void 0&&La(f);const u=f!==void 0?f:l.toString(2).length,v=Math.ceil(u/8);return{nBitLength:u,nByteLength:v}}function xr(l,f,u=!1,v={}){if(l<=Ke)throw new Error("invalid field: expected ORDER > 0, got "+l);let t,d;if(typeof f=="object"&&f!=null){if(v.sqrt||u)throw new Error("cannot specify opts in two arguments");const z=f;z.BITS&&(t=z.BITS),z.sqrt&&(d=z.sqrt),typeof z.isLE=="boolean"&&(u=z.isLE)}else typeof f=="number"&&(t=f),v.sqrt&&(d=v.sqrt);const{nBitLength:C,nByteLength:B}=Qm(l,t);if(B>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let N;const U=Object.freeze({ORDER:l,isLE:u,BITS:C,BYTES:B,MASK:mr(C),ZERO:Ke,ONE:je,create:z=>ct(z,l),isValid:z=>{if(typeof z!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof z);return Ke<=z&&z<l},is0:z=>z===Ke,isValidNot0:z=>!U.is0(z)&&U.isValid(z),isOdd:z=>(z&je)===je,neg:z=>ct(-z,l),eql:(z,j)=>z===j,sqr:z=>ct(z*z,l),add:(z,j)=>ct(z+j,l),sub:(z,j)=>ct(z-j,l),mul:(z,j)=>ct(z*j,l),pow:(z,j)=>Xm(U,z,j),div:(z,j)=>ct(z*$o(j,l),l),sqrN:z=>z*z,addN:(z,j)=>z+j,subN:(z,j)=>z-j,mulN:(z,j)=>z*j,inv:z=>$o(z,l),sqrt:d||(z=>(N||(N=Zm(l)),N(U,z))),toBytes:z=>u?z4(z,B):hi(z,B),fromBytes:z=>{if(z.length!==B)throw new Error("Field.fromBytes: expected "+B+" bytes, got "+z.length);return u?L4(z):fr(z)},invertBatch:z=>zp(U,z),cmov:(z,j,q)=>q?j:z});return Object.freeze(U)}function Vp(l){if(typeof l!="bigint")throw new Error("field order must be bigint");const f=l.toString(2).length;return Math.ceil(f/8)}function Hp(l){const f=Vp(l);return f+Math.ceil(f/2)}function Jm(l,f,u=!1){const v=l.length,t=Vp(f),d=Hp(f);if(v<16||v<d||v>1024)throw new Error("expected "+d+"-1024 bytes of input, got "+v);const C=u?L4(l):fr(l),B=ct(C,f-je)+je;return u?z4(B,t):hi(B,t)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const ca=BigInt(0),In=BigInt(1);function Na(l,f){const u=f.negate();return l?u:f}function _m(l,f,u){const v=C=>C.pz,t=zp(l.Fp,u.map(v));return u.map((C,B)=>C.toAffine(t[B])).map(l.fromAffine)}function jp(l,f){if(!Number.isSafeInteger(l)||l<=0||l>f)throw new Error("invalid window size, expected [1.."+f+"], got W="+l)}function Qr(l,f){jp(l,f);const u=Math.ceil(f/l)+1,v=2**(l-1),t=2**l,d=mr(l),C=BigInt(l);return{windows:u,windowSize:v,mask:d,maxNumber:t,shiftBy:C}}function tu(l,f,u){const{windowSize:v,mask:t,maxNumber:d,shiftBy:C}=u;let B=Number(l&t),N=l>>C;B>v&&(B-=d,N+=In);const U=f*v,z=U+Math.abs(B)-1,j=B===0,q=B<0,O=f%2!==0;return{nextN:N,offset:z,isZero:j,isNeg:q,isNegF:O,offsetF:U}}function $m(l,f){if(!Array.isArray(l))throw new Error("array expected");l.forEach((u,v)=>{if(!(u instanceof f))throw new Error("invalid point at index "+v)})}function eb(l,f){if(!Array.isArray(l))throw new Error("array of scalars expected");l.forEach((u,v)=>{if(!f.isValid(u))throw new Error("invalid scalar at index "+v)})}const Jr=new WeakMap,qp=new WeakMap;function _r(l){return qp.get(l)||1}function nu(l){if(l!==ca)throw new Error("invalid wNAF")}function tb(l,f){return{constTimeNegate:Na,hasPrecomputes(u){return _r(u)!==1},unsafeLadder(u,v,t=l.ZERO){let d=u;for(;v>ca;)v&In&&(t=t.add(d)),d=d.double(),v>>=In;return t},precomputeWindow(u,v){const{windows:t,windowSize:d}=Qr(v,f),C=[];let B=u,N=B;for(let U=0;U<t;U++){N=B,C.push(N);for(let z=1;z<d;z++)N=N.add(B),C.push(N);B=N.double()}return C},wNAF(u,v,t){let d=l.ZERO,C=l.BASE;const B=Qr(u,f);for(let N=0;N<B.windows;N++){const{nextN:U,offset:z,isZero:j,isNeg:q,isNegF:O,offsetF:_}=tu(t,N,B);t=U,j?C=C.add(Na(O,v[_])):d=d.add(Na(q,v[z]))}return nu(t),{p:d,f:C}},wNAFUnsafe(u,v,t,d=l.ZERO){const C=Qr(u,f);for(let B=0;B<C.windows&&t!==ca;B++){const{nextN:N,offset:U,isZero:z,isNeg:j}=tu(t,B,C);if(t=N,!z){const q=v[U];d=d.add(j?q.negate():q)}}return nu(t),d},getPrecomputes(u,v,t){let d=Jr.get(v);return d||(d=this.precomputeWindow(v,u),u!==1&&(typeof t=="function"&&(d=t(d)),Jr.set(v,d))),d},wNAFCached(u,v,t){const d=_r(u);return this.wNAF(d,this.getPrecomputes(d,u,t),v)},wNAFCachedUnsafe(u,v,t,d){const C=_r(u);return C===1?this.unsafeLadder(u,v,d):this.wNAFUnsafe(C,this.getPrecomputes(C,u,t),v,d)},setWindowSize(u,v){jp(v,f),qp.set(u,v),Jr.delete(u)}}}function nb(l,f,u,v){let t=f,d=l.ZERO,C=l.ZERO;for(;u>ca||v>ca;)u&In&&(d=d.add(t)),v&In&&(C=C.add(t)),t=t.double(),u>>=In,v>>=In;return{p1:d,p2:C}}function ab(l,f,u,v){$m(u,l),eb(v,f);const t=u.length,d=v.length;if(t!==d)throw new Error("arrays of points and scalars must have equal length");const C=l.ZERO,B=b5(BigInt(t));let N=1;B>12?N=B-3:B>4?N=B-2:B>0&&(N=2);const U=mr(N),z=new Array(Number(U)+1).fill(C),j=Math.floor((f.BITS-1)/N)*N;let q=C;for(let O=j;O>=0;O-=N){z.fill(C);for(let J=0;J<d;J++){const s0=v[J],o0=Number(s0>>BigInt(O)&U);z[o0]=z[o0].add(u[J])}let _=C;for(let J=z.length-1,s0=C;J>0;J--)s0=s0.add(z[J]),_=_.add(s0);if(q=q.add(_),O!==0)for(let J=0;J<N;J++)q=q.double()}return q}function au(l,f){if(f){if(f.ORDER!==l)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return Ym(f),f}else return xr(l)}function rb(l,f,u={}){if(!f||typeof f!="object")throw new Error(`expected valid ${l} CURVE object`);for(const B of["p","n","h"]){const N=f[B];if(!(typeof N=="bigint"&&N>ca))throw new Error(`CURVE.${B} must be positive bigint`)}const v=au(f.p,u.Fp),t=au(f.n,u.Fn),C=["Gx","Gy","a","b"];for(const B of C)if(!v.isValid(f[B]))throw new Error(`CURVE.${B} must be valid field element of CURVE.Fp`);return{Fp:v,Fn:t}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function ru(l){l.lowS!==void 0&&Y2("lowS",l.lowS),l.prehash!==void 0&&Y2("prehash",l.prehash)}class sb extends Error{constructor(f=""){super(f)}}const Yt={Err:sb,_tlv:{encode:(l,f)=>{const{Err:u}=Yt;if(l<0||l>256)throw new u("tlv.encode: wrong tag");if(f.length&1)throw new u("tlv.encode: unpadded data");const v=f.length/2,t=N2(v);if(t.length/2&128)throw new u("tlv.encode: long form length too big");const d=v>127?N2(t.length/2|128):"";return N2(l)+d+t+f},decode(l,f){const{Err:u}=Yt;let v=0;if(l<0||l>256)throw new u("tlv.encode: wrong tag");if(f.length<2||f[v++]!==l)throw new u("tlv.decode: wrong tlv");const t=f[v++],d=!!(t&128);let C=0;if(!d)C=t;else{const N=t&127;if(!N)throw new u("tlv.decode(long): indefinite length not supported");if(N>4)throw new u("tlv.decode(long): byte length is too big");const U=f.subarray(v,v+N);if(U.length!==N)throw new u("tlv.decode: length bytes not complete");if(U[0]===0)throw new u("tlv.decode(long): zero leftmost byte");for(const z of U)C=C<<8|z;if(v+=N,C<128)throw new u("tlv.decode(long): not minimal encoding")}const B=f.subarray(v,v+C);if(B.length!==C)throw new u("tlv.decode: wrong value length");return{v:B,l:f.subarray(v+C)}}},_int:{encode(l){const{Err:f}=Yt;if(l<Oa)throw new f("integer: negative integers are not allowed");let u=N2(l);if(Number.parseInt(u[0],16)&8&&(u="00"+u),u.length&1)throw new f("unexpected DER parsing assertion: unpadded hex");return u},decode(l){const{Err:f}=Yt;if(l[0]&128)throw new f("invalid signature integer: negative");if(l[0]===0&&!(l[1]&128))throw new f("invalid signature integer: unnecessary leading zero");return fr(l)}},toSig(l){const{Err:f,_int:u,_tlv:v}=Yt,t=dt("signature",l),{v:d,l:C}=v.decode(48,t);if(C.length)throw new f("invalid signature: left bytes after parsing");const{v:B,l:N}=v.decode(2,d),{v:U,l:z}=v.decode(2,N);if(z.length)throw new f("invalid signature: left bytes after parsing");return{r:u.decode(B),s:u.decode(U)}},hexFromSig(l){const{_tlv:f,_int:u}=Yt,v=f.encode(2,u.encode(l.r)),t=f.encode(2,u.encode(l.s)),d=v+t;return f.encode(48,d)}},Oa=BigInt(0),Da=BigInt(1),ib=BigInt(2),L2=BigInt(3),ob=BigInt(4);function ub(l,f,u){function v(t){const d=l.sqr(t),C=l.mul(d,t);return l.add(l.add(C,l.mul(t,f)),u)}return v}function Gp(l,f,u){const{BYTES:v}=l;function t(d){let C;if(typeof d=="bigint")C=d;else{let B=dt("private key",d);if(f){if(!f.includes(B.length*2))throw new Error("invalid private key");const N=new Uint8Array(v);N.set(B,N.length-B.length),B=N}try{C=l.fromBytes(B)}catch{throw new Error(`invalid private key: expected ui8a of size ${v}, got ${typeof d}`)}}if(u&&(C=l.create(C)),!l.isValidNot0(C))throw new Error("invalid private key: out of range [1..N-1]");return C}return t}function pb(l,f={}){const{Fp:u,Fn:v}=rb("weierstrass",l,f),{h:t,n:d}=l;Ti(f,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:C}=f;if(C&&(!u.is0(l.a)||typeof C.beta!="bigint"||typeof C.splitScalar!="function"))throw new Error('invalid endo: expected "beta": bigint and "splitScalar": function');function B(){if(!u.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function N(x0,e0,w0){const{x:d0,y:m0}=e0.toAffine(),A0=u.toBytes(d0);if(Y2("isCompressed",w0),w0){B();const N0=!u.isOdd(m0);return Pn(Wp(N0),A0)}else return Pn(Uint8Array.of(4),A0,u.toBytes(m0))}function U(x0){Bt(x0);const e0=u.BYTES,w0=e0+1,d0=2*e0+1,m0=x0.length,A0=x0[0],N0=x0.subarray(1);if(m0===w0&&(A0===2||A0===3)){const M0=u.fromBytes(N0);if(!u.isValid(M0))throw new Error("bad point: is not on curve, wrong x");const k0=q(M0);let j0;try{j0=u.sqrt(k0)}catch(Y0){const W0=Y0 instanceof Error?": "+Y0.message:"";throw new Error("bad point: is not on curve, sqrt error"+W0)}B();const h0=u.isOdd(j0);return(A0&1)===1!==h0&&(j0=u.neg(j0)),{x:M0,y:j0}}else if(m0===d0&&A0===4){const M0=u.fromBytes(N0.subarray(e0*0,e0*1)),k0=u.fromBytes(N0.subarray(e0*1,e0*2));if(!O(M0,k0))throw new Error("bad point: is not on curve");return{x:M0,y:k0}}else throw new Error(`bad point: got length ${m0}, expected compressed=${w0} or uncompressed=${d0}`)}const z=f.toBytes||N,j=f.fromBytes||U,q=ub(u,l.a,l.b);function O(x0,e0){const w0=u.sqr(e0),d0=q(x0);return u.eql(w0,d0)}if(!O(l.Gx,l.Gy))throw new Error("bad curve params: generator point");const _=u.mul(u.pow(l.a,L2),ob),J=u.mul(u.sqr(l.b),BigInt(27));if(u.is0(u.add(_,J)))throw new Error("bad curve params: a or b");function s0(x0,e0,w0=!1){if(!u.isValid(e0)||w0&&u.is0(e0))throw new Error(`bad point coordinate ${x0}`);return e0}function o0(x0){if(!(x0 instanceof b0))throw new Error("ProjectivePoint expected")}const p0=zo((x0,e0)=>{const{px:w0,py:d0,pz:m0}=x0;if(u.eql(m0,u.ONE))return{x:w0,y:d0};const A0=x0.is0();e0==null&&(e0=A0?u.ONE:u.inv(m0));const N0=u.mul(w0,e0),M0=u.mul(d0,e0),k0=u.mul(m0,e0);if(A0)return{x:u.ZERO,y:u.ZERO};if(!u.eql(k0,u.ONE))throw new Error("invZ was invalid");return{x:N0,y:M0}}),l0=zo(x0=>{if(x0.is0()){if(f.allowInfinityPoint&&!u.is0(x0.py))return;throw new Error("bad point: ZERO")}const{x:e0,y:w0}=x0.toAffine();if(!u.isValid(e0)||!u.isValid(w0))throw new Error("bad point: x or y not field elements");if(!O(e0,w0))throw new Error("bad point: equation left != right");if(!x0.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function v0(x0,e0,w0,d0,m0){return w0=new b0(u.mul(w0.px,x0),w0.py,w0.pz),e0=Na(d0,e0),w0=Na(m0,w0),e0.add(w0)}class b0{constructor(e0,w0,d0){this.px=s0("x",e0),this.py=s0("y",w0,!0),this.pz=s0("z",d0),Object.freeze(this)}static fromAffine(e0){const{x:w0,y:d0}=e0||{};if(!e0||!u.isValid(w0)||!u.isValid(d0))throw new Error("invalid affine point");if(e0 instanceof b0)throw new Error("projective point not allowed");return u.is0(w0)&&u.is0(d0)?b0.ZERO:new b0(w0,d0,u.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e0){return _m(b0,"pz",e0)}static fromBytes(e0){return Bt(e0),b0.fromHex(e0)}static fromHex(e0){const w0=b0.fromAffine(j(dt("pointHex",e0)));return w0.assertValidity(),w0}static fromPrivateKey(e0){const w0=Gp(v,f.allowedPrivateKeyLengths,f.wrapPrivateKey);return b0.BASE.multiply(w0(e0))}static msm(e0,w0){return ab(b0,v,e0,w0)}precompute(e0=8,w0=!0){return P0.setWindowSize(this,e0),w0||this.multiply(L2),this}_setWindowSize(e0){this.precompute(e0)}assertValidity(){l0(this)}hasEvenY(){const{y:e0}=this.toAffine();if(!u.isOdd)throw new Error("Field doesn't support isOdd");return!u.isOdd(e0)}equals(e0){o0(e0);const{px:w0,py:d0,pz:m0}=this,{px:A0,py:N0,pz:M0}=e0,k0=u.eql(u.mul(w0,M0),u.mul(A0,m0)),j0=u.eql(u.mul(d0,M0),u.mul(N0,m0));return k0&&j0}negate(){return new b0(this.px,u.neg(this.py),this.pz)}double(){const{a:e0,b:w0}=l,d0=u.mul(w0,L2),{px:m0,py:A0,pz:N0}=this;let M0=u.ZERO,k0=u.ZERO,j0=u.ZERO,h0=u.mul(m0,m0),q0=u.mul(A0,A0),Y0=u.mul(N0,N0),W0=u.mul(m0,A0);return W0=u.add(W0,W0),j0=u.mul(m0,N0),j0=u.add(j0,j0),M0=u.mul(e0,j0),k0=u.mul(d0,Y0),k0=u.add(M0,k0),M0=u.sub(q0,k0),k0=u.add(q0,k0),k0=u.mul(M0,k0),M0=u.mul(W0,M0),j0=u.mul(d0,j0),Y0=u.mul(e0,Y0),W0=u.sub(h0,Y0),W0=u.mul(e0,W0),W0=u.add(W0,j0),j0=u.add(h0,h0),h0=u.add(j0,h0),h0=u.add(h0,Y0),h0=u.mul(h0,W0),k0=u.add(k0,h0),Y0=u.mul(A0,N0),Y0=u.add(Y0,Y0),h0=u.mul(Y0,W0),M0=u.sub(M0,h0),j0=u.mul(Y0,q0),j0=u.add(j0,j0),j0=u.add(j0,j0),new b0(M0,k0,j0)}add(e0){o0(e0);const{px:w0,py:d0,pz:m0}=this,{px:A0,py:N0,pz:M0}=e0;let k0=u.ZERO,j0=u.ZERO,h0=u.ZERO;const q0=l.a,Y0=u.mul(l.b,L2);let W0=u.mul(w0,A0),he=u.mul(d0,N0),de=u.mul(m0,M0),Te=u.add(w0,d0),se=u.add(A0,N0);Te=u.mul(Te,se),se=u.add(W0,he),Te=u.sub(Te,se),se=u.add(w0,m0);let ce=u.add(A0,M0);return se=u.mul(se,ce),ce=u.add(W0,de),se=u.sub(se,ce),ce=u.add(d0,m0),k0=u.add(N0,M0),ce=u.mul(ce,k0),k0=u.add(he,de),ce=u.sub(ce,k0),h0=u.mul(q0,se),k0=u.mul(Y0,de),h0=u.add(k0,h0),k0=u.sub(he,h0),h0=u.add(he,h0),j0=u.mul(k0,h0),he=u.add(W0,W0),he=u.add(he,W0),de=u.mul(q0,de),se=u.mul(Y0,se),he=u.add(he,de),de=u.sub(W0,de),de=u.mul(q0,de),se=u.add(se,de),W0=u.mul(he,se),j0=u.add(j0,W0),W0=u.mul(ce,se),k0=u.mul(Te,k0),k0=u.sub(k0,W0),W0=u.mul(Te,he),h0=u.mul(ce,h0),h0=u.add(h0,W0),new b0(k0,j0,h0)}subtract(e0){return this.add(e0.negate())}is0(){return this.equals(b0.ZERO)}multiply(e0){const{endo:w0}=f;if(!v.isValidNot0(e0))throw new Error("invalid scalar: out of range");let d0,m0;const A0=N0=>P0.wNAFCached(this,N0,b0.normalizeZ);if(w0){const{k1neg:N0,k1:M0,k2neg:k0,k2:j0}=w0.splitScalar(e0),{p:h0,f:q0}=A0(M0),{p:Y0,f:W0}=A0(j0);m0=q0.add(W0),d0=v0(w0.beta,h0,Y0,N0,k0)}else{const{p:N0,f:M0}=A0(e0);d0=N0,m0=M0}return b0.normalizeZ([d0,m0])[0]}multiplyUnsafe(e0){const{endo:w0}=f,d0=this;if(!v.isValid(e0))throw new Error("invalid scalar: out of range");if(e0===Oa||d0.is0())return b0.ZERO;if(e0===Da)return d0;if(P0.hasPrecomputes(this))return this.multiply(e0);if(w0){const{k1neg:m0,k1:A0,k2neg:N0,k2:M0}=w0.splitScalar(e0),{p1:k0,p2:j0}=nb(b0,d0,A0,M0);return v0(w0.beta,k0,j0,m0,N0)}else return P0.wNAFCachedUnsafe(d0,e0)}multiplyAndAddUnsafe(e0,w0,d0){const m0=this.multiplyUnsafe(w0).add(e0.multiplyUnsafe(d0));return m0.is0()?void 0:m0}toAffine(e0){return p0(this,e0)}isTorsionFree(){const{isTorsionFree:e0}=f;return t===Da?!0:e0?e0(b0,this):P0.wNAFCachedUnsafe(this,d).is0()}clearCofactor(){const{clearCofactor:e0}=f;return t===Da?this:e0?e0(b0,this):this.multiplyUnsafe(t)}toBytes(e0=!0){return Y2("isCompressed",e0),this.assertValidity(),z(b0,this,e0)}toRawBytes(e0=!0){return this.toBytes(e0)}toHex(e0=!0){return za(this.toBytes(e0))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}b0.BASE=new b0(l.Gx,l.Gy,u.ONE),b0.ZERO=new b0(u.ZERO,u.ONE,u.ZERO),b0.Fp=u,b0.Fn=v;const R0=v.BITS,P0=tb(b0,f.endo?Math.ceil(R0/2):R0);return b0}function Wp(l){return Uint8Array.of(l?2:3)}function db(l,f,u={}){Ti(f,{hash:"function"},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const v=f.randomBytes||p6,t=f.hmac||((d0,...m0)=>Op(f.hash,d0,Pn(...m0))),{Fp:d,Fn:C}=l,{ORDER:B,BITS:N}=C;function U(d0){const m0=B>>Da;return d0>m0}function z(d0){return U(d0)?C.neg(d0):d0}function j(d0,m0){if(!C.isValidNot0(m0))throw new Error(`invalid signature ${d0}: out of range 1..CURVE.n`)}class q{constructor(m0,A0,N0){j("r",m0),j("s",A0),this.r=m0,this.s=A0,N0!=null&&(this.recovery=N0),Object.freeze(this)}static fromCompact(m0){const A0=C.BYTES,N0=dt("compactSignature",m0,A0*2);return new q(C.fromBytes(N0.subarray(0,A0)),C.fromBytes(N0.subarray(A0,A0*2)))}static fromDER(m0){const{r:A0,s:N0}=Yt.toSig(dt("DER",m0));return new q(A0,N0)}assertValidity(){}addRecoveryBit(m0){return new q(this.r,this.s,m0)}recoverPublicKey(m0){const A0=d.ORDER,{r:N0,s:M0,recovery:k0}=this;if(k0==null||![0,1,2,3].includes(k0))throw new Error("recovery id invalid");if(B*ib<A0&&k0>1)throw new Error("recovery id is ambiguous for h>1 curve");const h0=k0===2||k0===3?N0+B:N0;if(!d.isValid(h0))throw new Error("recovery id 2 or 3 invalid");const q0=d.toBytes(h0),Y0=l.fromHex(Pn(Wp((k0&1)===0),q0)),W0=C.inv(h0),he=l0(dt("msgHash",m0)),de=C.create(-he*W0),Te=C.create(M0*W0),se=l.BASE.multiplyUnsafe(de).add(Y0.multiplyUnsafe(Te));if(se.is0())throw new Error("point at infinify");return se.assertValidity(),se}hasHighS(){return U(this.s)}normalizeS(){return this.hasHighS()?new q(this.r,C.neg(this.s),this.recovery):this}toBytes(m0){if(m0==="compact")return Pn(C.toBytes(this.r),C.toBytes(this.s));if(m0==="der")return Qs(Yt.hexFromSig(this));throw new Error("invalid format")}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return za(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return za(this.toBytes("compact"))}}const O=Gp(C,u.allowedPrivateKeyLengths,u.wrapPrivateKey),_={isValidPrivateKey(d0){try{return O(d0),!0}catch{return!1}},normPrivateKeyToScalar:O,randomPrivateKey:()=>{const d0=B;return Jm(v(Hp(d0)),d0)},precompute(d0=8,m0=l.BASE){return m0.precompute(d0,!1)}};function J(d0,m0=!0){return l.fromPrivateKey(d0).toBytes(m0)}function s0(d0){if(typeof d0=="bigint")return!1;if(d0 instanceof l)return!0;const A0=dt("key",d0).length,N0=d.BYTES,M0=N0+1,k0=2*N0+1;if(!(u.allowedPrivateKeyLengths||C.BYTES===M0))return A0===M0||A0===k0}function o0(d0,m0,A0=!0){if(s0(d0)===!0)throw new Error("first arg must be private key");if(s0(m0)===!1)throw new Error("second arg must be public key");return l.fromHex(m0).multiply(O(d0)).toBytes(A0)}const p0=f.bits2int||function(d0){if(d0.length>8192)throw new Error("input is too large");const m0=fr(d0),A0=d0.length*8-N;return A0>0?m0>>BigInt(A0):m0},l0=f.bits2int_modN||function(d0){return C.create(p0(d0))},v0=mr(N);function b0(d0){return m5("num < 2^"+N,d0,Oa,v0),C.toBytes(d0)}function R0(d0,m0,A0=P0){if(["recovered","canonical"].some(Te=>Te in A0))throw new Error("sign() legacy options not supported");const{hash:N0}=f;let{lowS:M0,prehash:k0,extraEntropy:j0}=A0;M0==null&&(M0=!0),d0=dt("msgHash",d0),ru(A0),k0&&(d0=dt("prehashed msgHash",N0(d0)));const h0=l0(d0),q0=O(m0),Y0=[b0(q0),b0(h0)];if(j0!=null&&j0!==!1){const Te=j0===!0?v(d.BYTES):j0;Y0.push(dt("extraEntropy",Te))}const W0=Pn(...Y0),he=h0;function de(Te){const se=p0(Te);if(!C.isValidNot0(se))return;const ce=C.inv(se),An=l.BASE.multiply(se).toAffine(),rn=C.create(An.x);if(rn===Oa)return;const jt=C.create(ce*C.create(he+rn*q0));if(jt===Oa)return;let Aa=(An.x===rn?0:2)|Number(An.y&Da),sn=jt;return M0&&U(jt)&&(sn=z(jt),Aa^=1),new q(rn,sn,Aa)}return{seed:W0,k2sig:de}}const P0={lowS:f.lowS,prehash:!1},x0={lowS:f.lowS,prehash:!1};function e0(d0,m0,A0=P0){const{seed:N0,k2sig:M0}=R0(d0,m0,A0);return h5(f.hash.outputLen,C.BYTES,t)(N0,M0)}l.BASE.precompute(8);function w0(d0,m0,A0,N0=x0){const M0=d0;m0=dt("msgHash",m0),A0=dt("publicKey",A0),ru(N0);const{lowS:k0,prehash:j0,format:h0}=N0;if("strict"in N0)throw new Error("options.strict was renamed to lowS");if(h0!==void 0&&!["compact","der","js"].includes(h0))throw new Error('format must be "compact", "der" or "js"');const q0=typeof M0=="string"||Xs(M0),Y0=!q0&&!h0&&typeof M0=="object"&&M0!==null&&typeof M0.r=="bigint"&&typeof M0.s=="bigint";if(!q0&&!Y0)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let W0,he;try{if(Y0)if(h0===void 0||h0==="js")W0=new q(M0.r,M0.s);else throw new Error("invalid format");if(q0){try{h0!=="compact"&&(W0=q.fromDER(M0))}catch(sn){if(!(sn instanceof Yt.Err))throw sn}!W0&&h0!=="der"&&(W0=q.fromCompact(M0))}he=l.fromHex(A0)}catch{return!1}if(!W0||k0&&W0.hasHighS())return!1;j0&&(m0=f.hash(m0));const{r:de,s:Te}=W0,se=l0(m0),ce=C.inv(Te),An=C.create(se*ce),rn=C.create(de*ce),jt=l.BASE.multiplyUnsafe(An).add(he.multiplyUnsafe(rn));return jt.is0()?!1:C.create(jt.x)===de}return Object.freeze({getPublicKey:J,getSharedSecret:o0,sign:e0,verify:w0,utils:_,Point:l,Signature:q})}function cb(l){const f={a:l.a,b:l.b,p:l.Fp.ORDER,n:l.n,h:l.h,Gx:l.Gx,Gy:l.Gy},u=l.Fp,v=xr(f.n,l.nBitLength),t={Fp:u,Fn:v,allowedPrivateKeyLengths:l.allowedPrivateKeyLengths,allowInfinityPoint:l.allowInfinityPoint,endo:l.endo,wrapPrivateKey:l.wrapPrivateKey,isTorsionFree:l.isTorsionFree,clearCofactor:l.clearCofactor,fromBytes:l.fromBytes,toBytes:l.toBytes};return{CURVE:f,curveOpts:t}}function lb(l){const{CURVE:f,curveOpts:u}=cb(l),v={hash:l.hash,hmac:l.hmac,randomBytes:l.randomBytes,lowS:l.lowS,bits2int:l.bits2int,bits2int_modN:l.bits2int_modN};return{CURVE:f,curveOpts:u,ecdsaOpts:v}}function yb(l,f){return Object.assign({},f,{ProjectivePoint:f.Point,CURVE:l})}function fb(l){const{CURVE:f,curveOpts:u,ecdsaOpts:v}=lb(l),t=pb(f,u),d=db(t,v,u);return yb(l,d)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function mb(l,f){const u=v=>fb({...l,hash:v});return{...u(f),create:u}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const X2={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")};BigInt(0);const bb=BigInt(1),Ss=BigInt(2),su=(l,f)=>(l+f/Ss)/f;function hb(l){const f=X2.p,u=BigInt(3),v=BigInt(6),t=BigInt(11),d=BigInt(22),C=BigInt(23),B=BigInt(44),N=BigInt(88),U=l*l*l%f,z=U*U*l%f,j=ut(z,u,f)*z%f,q=ut(j,u,f)*z%f,O=ut(q,Ss,f)*U%f,_=ut(O,t,f)*O%f,J=ut(_,d,f)*_%f,s0=ut(J,B,f)*J%f,o0=ut(s0,N,f)*s0%f,p0=ut(o0,B,f)*J%f,l0=ut(p0,u,f)*z%f,v0=ut(l0,C,f)*_%f,b0=ut(v0,v,f)*U%f,R0=ut(b0,Ss,f);if(!Rs.eql(Rs.sqr(R0),l))throw new Error("Cannot find square root");return R0}const Rs=xr(X2.p,void 0,void 0,{sqrt:hb}),Zp=mb({...X2,Fp:Rs,lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:l=>{const f=X2.n,u=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),v=-bb*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),t=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),d=u,C=BigInt("0x100000000000000000000000000000000"),B=su(d*l,f),N=su(-v*l,f);let U=ct(l-B*u-N*t,f),z=ct(-B*v-N*d,f);const j=U>C,q=z>C;if(j&&(U=f-U),q&&(z=f-z),U>C||z>C)throw new Error("splitScalar: Endomorphism failed, k="+l);return{k1neg:j,k1:U,k2neg:q,k2:z}}}},Lu),Tb=Object.freeze(Object.defineProperty({__proto__:null,secp256k1:Zp},Symbol.toStringTag,{value:"Module"}));function gb({r:l,s:f,to:u="hex",v,yParity:t}){const d=(()=>{if(t===0||t===1)return t;if(v&&(v===27n||v===28n||v>=35n))return v%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),C=`0x${new Zp.Signature(Oe(l),Oe(f)).toCompactHex()}${d===0?"1b":"1c"}`;return u==="hex"?C:It(C)}async function Si(l,f){var j,q,O;const{address:u,factory:v,factoryData:t,hash:d,signature:C,universalSignatureVerifierAddress:B=(O=(q=(j=l.chain)==null?void 0:j.contracts)==null?void 0:q.universalSignatureVerifier)==null?void 0:O.address,...N}=f,U=kt(C)?C:typeof C=="object"&&"r"in C&&"s"in C?gb(C):Ie(C),z=await(async()=>!v&&!t||am(U)?U:rm({address:v,data:t,signature:U}))();try{const _=B?{to:B,data:wt({abi:Zo,functionName:"isValidSig",args:[u,d,z]}),...N}:{data:br({abi:Zo,args:[u,d,z],bytecode:G5}),...N},{data:J}=await H0(l,w2,"call")(_);return Fl(J??"0x0")}catch(_){try{if(g2(Ju(u),await B4({hash:d,signature:C})))return!0}catch{}if(_ instanceof k4)return!1;throw _}}async function wb(l,{address:f,message:u,factory:v,factoryData:t,signature:d,...C}){const B=vp(u);return Si(l,{address:f,factory:v,factoryData:t,hash:B,signature:d,...C})}async function vb(l,f){const{address:u,factory:v,factoryData:t,signature:d,message:C,primaryType:B,types:N,domain:U,...z}=f,j=Xf({message:C,primaryType:B,types:N,domain:U});return Si(l,{address:u,factory:v,factoryData:t,hash:j,signature:d,...z})}function Kp(l,{emitOnBegin:f=!1,emitMissed:u=!1,onBlockNumber:v,onError:t,poll:d,pollingInterval:C=l.pollingInterval}){const B=typeof d<"u"?d:!(l.transport.type==="webSocket"||l.transport.type==="ipc"||l.transport.type==="fallback"&&(l.transport.transports[0].config.type==="webSocket"||l.transport.transports[0].config.type==="ipc"));let N;return B?(()=>{const j=ke(["watchBlockNumber",l.uid,f,u,C]);return $t(j,{onBlockNumber:v,onError:t},q=>wa(async()=>{var O;try{const _=await H0(l,v2,"getBlockNumber")({cacheTime:0});if(N){if(_===N)return;if(_-N>1&&u)for(let J=N+1n;J<_;J++)q.onBlockNumber(J,N),N=J}(!N||_>N)&&(q.onBlockNumber(_,N),N=_)}catch(_){(O=q.onError)==null||O.call(q,_)}},{emitOnBegin:f,interval:C}))})():(()=>{const j=ke(["watchBlockNumber",l.uid,f,u]);return $t(j,{onBlockNumber:v,onError:t},q=>{let O=!0,_=()=>O=!1;return(async()=>{try{const J=(()=>{if(l.transport.type==="fallback"){const o0=l.transport.transports.find(p0=>p0.config.type==="webSocket"||p0.config.type==="ipc");return o0?o0.value:l.transport}return l.transport})(),{unsubscribe:s0}=await J.subscribe({params:["newHeads"],onData(o0){var l0;if(!O)return;const p0=Oe((l0=o0.result)==null?void 0:l0.number);q.onBlockNumber(p0,N),N=p0},onError(o0){var p0;(p0=q.onError)==null||p0.call(q,o0)}});_=s0,O||_()}catch(J){t==null||t(J)}})(),()=>_()})})()}async function Ab(l,{confirmations:f=1,hash:u,onReplaced:v,pollingInterval:t=l.pollingInterval,retryCount:d=6,retryDelay:C=({count:N})=>~~(1<<N)*200,timeout:B=18e4}){const N=ke(["waitForTransactionReceipt",l.uid,u]);let U,z,j,q=!1,O,_;const{promise:J,resolve:s0,reject:o0}=Ai(),p0=B?setTimeout(()=>{_(),O(),o0(new e6({hash:u}))},B):void 0;return O=$t(N,{onReplaced:v,resolve:s0,reject:o0},l0=>{_=H0(l,Kp,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:t,async onBlockNumber(v0){const b0=P0=>{clearTimeout(p0),_(),P0(),O()};let R0=v0;if(!q)try{if(j){if(f>1&&(!j.blockNumber||R0-j.blockNumber+1n<f))return;b0(()=>l0.resolve(j));return}if(U||(q=!0,await xs(async()=>{U=await H0(l,ki,"getTransaction")({hash:u}),U.blockNumber&&(R0=U.blockNumber)},{delay:C,retryCount:d}),q=!1),j=await H0(l,Es,"getTransactionReceipt")({hash:u}),f>1&&(!j.blockNumber||R0-j.blockNumber+1n<f))return;b0(()=>l0.resolve(j))}catch(P0){if(P0 instanceof Nu||P0 instanceof Ou){if(!U){q=!1;return}try{z=U,q=!0;const x0=await xs(()=>H0(l,Ut,"getBlock")({blockNumber:R0,includeTransactions:!0}),{delay:C,retryCount:d,shouldRetry:({error:d0})=>d0 instanceof R4});q=!1;const e0=x0.transactions.find(({from:d0,nonce:m0})=>d0===z.from&&m0===z.nonce);if(!e0||(j=await H0(l,Es,"getTransactionReceipt")({hash:e0.hash}),f>1&&(!j.blockNumber||R0-j.blockNumber+1n<f)))return;let w0="replaced";e0.to===z.to&&e0.value===z.value&&e0.input===z.input?w0="repriced":e0.from===e0.to&&e0.value===0n&&(w0="cancelled"),b0(()=>{var d0;(d0=l0.onReplaced)==null||d0.call(l0,{reason:w0,replacedTransaction:z,transaction:e0,transactionReceipt:j}),l0.resolve(j)})}catch(x0){b0(()=>l0.reject(x0))}}else b0(()=>l0.reject(P0))}}})}),J}function xb(l,{blockTag:f="latest",emitMissed:u=!1,emitOnBegin:v=!1,onBlock:t,onError:d,includeTransactions:C,poll:B,pollingInterval:N=l.pollingInterval}){const U=typeof B<"u"?B:!(l.transport.type==="webSocket"||l.transport.type==="ipc"||l.transport.type==="fallback"&&(l.transport.transports[0].config.type==="webSocket"||l.transport.transports[0].config.type==="ipc")),z=C??!1;let j;return U?(()=>{const _=ke(["watchBlocks",l.uid,f,u,v,z,N]);return $t(_,{onBlock:t,onError:d},J=>wa(async()=>{var s0;try{const o0=await H0(l,Ut,"getBlock")({blockTag:f,includeTransactions:z});if(o0.number!==null&&(j==null?void 0:j.number)!=null){if(o0.number===j.number)return;if(o0.number-j.number>1&&u)for(let p0=(j==null?void 0:j.number)+1n;p0<o0.number;p0++){const l0=await H0(l,Ut,"getBlock")({blockNumber:p0,includeTransactions:z});J.onBlock(l0,j),j=l0}}((j==null?void 0:j.number)==null||f==="pending"&&(o0==null?void 0:o0.number)==null||o0.number!==null&&o0.number>j.number)&&(J.onBlock(o0,j),j=o0)}catch(o0){(s0=J.onError)==null||s0.call(J,o0)}},{emitOnBegin:v,interval:N}))})():(()=>{let _=!0,J=!0,s0=()=>_=!1;return(async()=>{try{v&&H0(l,Ut,"getBlock")({blockTag:f,includeTransactions:z}).then(l0=>{_&&J&&(t(l0,void 0),J=!1)}).catch(d);const o0=(()=>{if(l.transport.type==="fallback"){const l0=l.transport.transports.find(v0=>v0.config.type==="webSocket"||v0.config.type==="ipc");return l0?l0.value:l.transport}return l.transport})(),{unsubscribe:p0}=await o0.subscribe({params:["newHeads"],async onData(l0){var b0;if(!_)return;const v0=await H0(l,Ut,"getBlock")({blockNumber:(b0=l0.result)==null?void 0:b0.number,includeTransactions:z}).catch(()=>{});_&&(t(v0,j),J=!1,j=v0)},onError(l0){d==null||d(l0)}});s0=p0,_||s0()}catch(o0){d==null||d(o0)}})(),()=>s0()})()}function Eb(l,{address:f,args:u,batch:v=!0,event:t,events:d,fromBlock:C,onError:B,onLogs:N,poll:U,pollingInterval:z=l.pollingInterval,strict:j}){const q=typeof U<"u"?U:typeof C=="bigint"?!0:!(l.transport.type==="webSocket"||l.transport.type==="ipc"||l.transport.type==="fallback"&&(l.transport.transports[0].config.type==="webSocket"||l.transport.transports[0].config.type==="ipc")),O=j??!1;return q?(()=>{const s0=ke(["watchEvent",f,u,v,l.uid,t,z,C]);return $t(s0,{onLogs:N,onError:B},o0=>{let p0;C!==void 0&&(p0=C-1n);let l0,v0=!1;const b0=wa(async()=>{var R0;if(!v0){try{l0=await H0(l,yp,"createEventFilter")({address:f,args:u,event:t,events:d,strict:O,fromBlock:C})}catch{}v0=!0;return}try{let P0;if(l0)P0=await H0(l,hr,"getFilterChanges")({filter:l0});else{const x0=await H0(l,v2,"getBlockNumber")({});p0&&p0!==x0?P0=await H0(l,fi,"getLogs")({address:f,args:u,event:t,events:d,fromBlock:p0+1n,toBlock:x0}):P0=[],p0=x0}if(P0.length===0)return;if(v)o0.onLogs(P0);else for(const x0 of P0)o0.onLogs([x0])}catch(P0){l0&&P0 instanceof Ln&&(v0=!1),(R0=o0.onError)==null||R0.call(o0,P0)}},{emitOnBegin:!0,interval:z});return async()=>{l0&&await H0(l,Tr,"uninstallFilter")({filter:l0}),b0()}})})():(()=>{let s0=!0,o0=()=>s0=!1;return(async()=>{try{const p0=(()=>{if(l.transport.type==="fallback"){const R0=l.transport.transports.find(P0=>P0.config.type==="webSocket"||P0.config.type==="ipc");return R0?R0.value:l.transport}return l.transport})(),l0=d??(t?[t]:void 0);let v0=[];l0&&(v0=[l0.flatMap(P0=>T2({abi:[P0],eventName:P0.name,args:u}))],t&&(v0=v0[0]));const{unsubscribe:b0}=await p0.subscribe({params:["logs",{address:f,topics:v0}],onData(R0){var x0;if(!s0)return;const P0=R0.result;try{const{eventName:e0,args:w0}=li({abi:l0??[],data:P0.data,topics:P0.topics,strict:O}),d0=_t(P0,{args:w0,eventName:e0});N([d0])}catch(e0){let w0,d0;if(e0 instanceof Ha||e0 instanceof ir){if(j)return;w0=e0.abiItem.name,d0=(x0=e0.abiItem.inputs)==null?void 0:x0.some(A0=>!("name"in A0&&A0.name))}const m0=_t(P0,{args:d0?[]:{},eventName:w0});N([m0])}},onError(R0){B==null||B(R0)}});o0=b0,s0||o0()}catch(p0){B==null||B(p0)}})(),()=>o0()})()}function Cb(l,{batch:f=!0,onError:u,onTransactions:v,poll:t,pollingInterval:d=l.pollingInterval}){return(typeof t<"u"?t:l.transport.type!=="webSocket"&&l.transport.type!=="ipc")?(()=>{const U=ke(["watchPendingTransactions",l.uid,f,d]);return $t(U,{onTransactions:v,onError:u},z=>{let j;const q=wa(async()=>{var O;try{if(!j)try{j=await H0(l,fp,"createPendingTransactionFilter")({});return}catch(J){throw q(),J}const _=await H0(l,hr,"getFilterChanges")({filter:j});if(_.length===0)return;if(f)z.onTransactions(_);else for(const J of _)z.onTransactions([J])}catch(_){(O=z.onError)==null||O.call(z,_)}},{emitOnBegin:!0,interval:d});return async()=>{j&&await H0(l,Tr,"uninstallFilter")({filter:j}),q()}})})():(()=>{let U=!0,z=()=>U=!1;return(async()=>{try{const{unsubscribe:j}=await l.transport.subscribe({params:["newPendingTransactions"],onData(q){if(!U)return;const O=q.result;v([O])},onError(q){u==null||u(q)}});z=j,U||z()}catch(j){u==null||u(j)}})(),()=>z()})()}function Pb(l){var j,q,O;const{scheme:f,statement:u,...v}=((j=l.match(Mb))==null?void 0:j.groups)??{},{chainId:t,expirationTime:d,issuedAt:C,notBefore:B,requestId:N,...U}=((q=l.match(kb))==null?void 0:q.groups)??{},z=(O=l.split("Resources:")[1])==null?void 0:O.split(`
45
- - `).slice(1);return{...v,...U,...t?{chainId:Number(t)}:{},...d?{expirationTime:new Date(d)}:{},...C?{issuedAt:new Date(C)}:{},...B?{notBefore:new Date(B)}:{},...N?{requestId:N}:{},...z?{resources:z}:{},...f?{scheme:f}:{},...u?{statement:u}:{}}}const Mb=/^(?:(?<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)?/,kb=/(?: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>.+))?/;function Ib(l){const{address:f,domain:u,message:v,nonce:t,scheme:d,time:C=new Date}=l;if(u&&v.domain!==u||t&&v.nonce!==t||d&&v.scheme!==d||v.expirationTime&&C>=v.expirationTime||v.notBefore&&C<v.notBefore)return!1;try{if(!v.address||!Re(v.address,{strict:!1})||f&&!g2(v.address,f))return!1}catch{return!1}return!0}async function Bb(l,f){const{address:u,domain:v,message:t,nonce:d,scheme:C,signature:B,time:N=new Date,...U}=f,z=Pb(t);if(!z.address||!Ib({address:u,domain:v,message:z,nonce:d,scheme:C,time:N}))return!1;const q=vp(t);return Si(l,{address:z.address,hash:q,signature:B,...U})}function Sb(l){return{call:f=>w2(l,f),createAccessList:f=>lp(l,f),createBlockFilter:()=>Uf(l),createContractEventFilter:f=>ii(l,f),createEventFilter:f=>yp(l,f),createPendingTransactionFilter:()=>fp(l),estimateContractGas:f=>F4(l,f),estimateGas:f=>ci(l,f),getBalance:f=>D4(l,f),getBlobBaseFee:()=>Lf(l),getBlock:f=>Ut(l,f),getBlockNumber:f=>v2(l,f),getBlockTransactionCount:f=>zf(l,f),getBytecode:f=>Jo(l,f),getChainId:()=>ga(l),getCode:f=>Jo(l,f),getContractEvents:f=>mi(l,f),getEip712Domain:f=>Hf(l,f),getEnsAddress:f=>vf(l,f),getEnsAvatar:f=>Of(l,f),getEnsName:f=>Df(l,f),getEnsResolver:f=>Ff(l,f),getEnsText:f=>cp(l,f),getFeeHistory:f=>Gf(l,f),estimateFeesPerGas:f=>c5(l,f),getFilterChanges:f=>hr(l,f),getFilterLogs:f=>Wf(l,f),getGasPrice:()=>pi(l),getLogs:f=>fi(l,f),getProof:f=>pm(l,f),estimateMaxPriorityFeePerGas:f=>d5(l,f),getStorageAt:f=>dm(l,f),getTransaction:f=>ki(l,f),getTransactionConfirmations:f=>cm(l,f),getTransactionCount:f=>di(l,f),getTransactionReceipt:f=>Es(l,f),multicall:f=>lm(l,f),prepareTransactionRequest:f=>yr(l,f),readContract:f=>zt(l,f),sendRawTransaction:f=>xi(l,f),simulate:f=>Cs(l,f),simulateBlocks:f=>Cs(l,f),simulateCalls:f=>jm(l,f),simulateContract:f=>_4(l,f),verifyMessage:f=>wb(l,f),verifySiweMessage:f=>Bb(l,f),verifyTypedData:f=>vb(l,f),uninstallFilter:f=>Tr(l,f),waitForTransactionReceipt:f=>Ab(l,f),watchBlocks:f=>xb(l,f),watchBlockNumber:f=>Kp(l,f),watchContractEvent:f=>$4(l,f),watchEvent:f=>Eb(l,f),watchPendingTransactions:f=>Cb(l,f)}}function Rb(l){const{key:f="public",name:u="Public Client"}=l;return ip({...l,key:f,name:u,type:"publicClient"}).extend(Sb)}async function Yp(l,{chain:f}){const{id:u,name:v,nativeCurrency:t,rpcUrls:d,blockExplorers:C}=f;await l.request({method:"wallet_addEthereumChain",params:[{chainId:E0(u),chainName:v,nativeCurrency:t,rpcUrls:d.default.http,blockExplorerUrls:C?Object.values(C).map(({url:B})=>B):void 0}]},{dedupe:!0,retryCount:0})}function Nb(l,f){const{abi:u,args:v,bytecode:t,...d}=f,C=br({abi:u,args:v,bytecode:t});return gr(l,{...d,...d.authorizationList?{to:null}:{},data:C})}async function Ob(l){var u;return((u=l.account)==null?void 0:u.type)==="local"?[l.account.address]:(await l.request({method:"eth_accounts"},{dedupe:!0})).map(v=>y2(v))}async function Db(l,f={}){const{account:u=l.account,chainId:v}=f,t=u?Ce(u):void 0,d=v?[t==null?void 0:t.address,[E0(v)]]:[t==null?void 0:t.address],C=await l.request({method:"wallet_getCapabilities",params:d}),B={};for(const[N,U]of Object.entries(C)){B[Number(N)]={};for(let[z,j]of Object.entries(U))z==="addSubAccount"&&(z="unstable_addSubAccount"),B[Number(N)][z]=j}return typeof v=="number"?B[v]:B}async function Fb(l){return await l.request({method:"wallet_getPermissions"},{dedupe:!0})}async function Xp(l,f){var N;const{account:u=l.account,chainId:v,nonce:t}=f;if(!u)throw new jn({docsPath:"/docs/eip7702/prepareAuthorization"});const d=Ce(u),C=(()=>{if(f.executor)return f.executor==="self"?f.executor:Ce(f.executor)})(),B={address:f.contractAddress??f.address,chainId:v,nonce:t};return typeof B.chainId>"u"&&(B.chainId=((N=l.chain)==null?void 0:N.id)??await H0(l,ga,"getChainId")({})),typeof B.nonce>"u"&&(B.nonce=await H0(l,di,"getTransactionCount")({address:d.address,blockTag:"pending"}),(C==="self"||C!=null&&C.address&&g2(C.address,d.address))&&(B.nonce+=1)),B}async function Ub(l){return(await l.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(u=>Ju(u))}async function Lb(l,f){return l.request({method:"wallet_requestPermissions",params:[f]},{retryCount:0})}async function zb(l,f){const{id:u}=f;await l.request({method:"wallet_showCallsStatus",params:[u]})}async function Vb(l,f){const{account:u=l.account}=f;if(!u)throw new jn({docsPath:"/docs/eip7702/signAuthorization"});const v=Ce(u);if(!v.signAuthorization)throw new j2({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:v.type});const t=await Xp(l,f);return v.signAuthorization(t)}async function Hb(l,{account:f=l.account,message:u}){if(!f)throw new jn({docsPath:"/docs/actions/wallet/signMessage"});const v=Ce(f);if(v.signMessage)return v.signMessage({message:u});const t=typeof u=="string"?aa(u):u.raw instanceof Uint8Array?Ue(u.raw):u.raw;return l.request({method:"personal_sign",params:[t,v.address]},{retryCount:0})}async function jb(l,f){var U,z,j,q;const{account:u=l.account,chain:v=l.chain,...t}=f;if(!u)throw new jn({docsPath:"/docs/actions/wallet/signTransaction"});const d=Ce(u);Gn({account:d,...f});const C=await H0(l,ga,"getChainId")({});v!==null&&n4({currentChainId:C,chain:v});const B=(v==null?void 0:v.formatters)||((U=l.chain)==null?void 0:U.formatters),N=((z=B==null?void 0:B.transactionRequest)==null?void 0:z.format)||ba;return d.signTransaction?d.signTransaction({...t,chainId:C},{serializer:(q=(j=l.chain)==null?void 0:j.serializers)==null?void 0:q.transaction}):await l.request({method:"eth_signTransaction",params:[{...N(t),chainId:E0(C),from:d.address}]},{retryCount:0})}async function qb(l,f){const{account:u=l.account,domain:v,message:t,primaryType:d}=f;if(!u)throw new jn({docsPath:"/docs/actions/wallet/signTypedData"});const C=Ce(u),B={EIP712Domain:wp({domain:v}),...f.types};if(gp({domain:v,message:t,primaryType:d,types:B}),C.signTypedData)return C.signTypedData({domain:v,message:t,primaryType:d,types:B});const N=$f({domain:v,message:t,primaryType:d,types:B});return l.request({method:"eth_signTypedData_v4",params:[C.address,N]},{retryCount:0})}async function Gb(l,{id:f}){await l.request({method:"wallet_switchEthereumChain",params:[{chainId:E0(f)}]},{retryCount:0})}async function Wb(l,f){return await l.request({method:"wallet_watchAsset",params:f},{retryCount:0})}function Zb(l){return{addChain:f=>Yp(l,f),deployContract:f=>Nb(l,f),getAddresses:()=>Ob(l),getCallsStatus:f=>rp(l,f),getCapabilities:f=>Db(l,f),getChainId:()=>ga(l),getPermissions:()=>Fb(l),prepareAuthorization:f=>Xp(l,f),prepareTransactionRequest:f=>yr(l,f),requestAddresses:()=>Ub(l),requestPermissions:f=>Lb(l,f),sendCalls:f=>nf(l,f),sendRawTransaction:f=>xi(l,f),sendTransaction:f=>gr(l,f),showCallsStatus:f=>zb(l,f),signAuthorization:f=>Vb(l,f),signMessage:f=>Hb(l,f),signTransaction:f=>jb(l,f),signTypedData:f=>qb(l,f),switchChain:f=>Gb(l,f),waitForCallsStatus:f=>af(l,f),watchAsset:f=>Wb(l,f),writeContract:f=>tp(l,f)}}function Kb(l){const{key:f="wallet",name:u="Wallet Client",transport:v}=l;return ip({...l,key:f,name:u,transport:v,type:"walletClient"}).extend(Zb)}function Qe({provider:l,chainId:f}){const u=gt[f],v=pf(l);return Kb({chain:u,transport:v})}const Qp=Ne({id:747474,name:"Katana",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.katana.network"],webSocket:["wss://rpc.katana.network"]}},blockExplorers:{default:{name:"Katana Explorer",url:"https://explorer.katanarpc.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1898013}}}),Jp=Ne({id:129399,name:"Tatara",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.tatara.katanarpc.com"]}},blockExplorers:{default:{name:"Tatara Explorer",url:"https://explorer.tatara.katana.network"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:7771207}}}),_p=Ne({id:239,name:"TAC",nativeCurrency:{decimals:18,name:"TAC",symbol:"TAC"},rpcUrls:{default:{http:["https://rpc.tac.build"]}},blockExplorers:{default:{name:"TAC Explorer",url:"https://explorer.tac.build"}}}),Yb="sui:devnet",Ri="sui:testnet",Xb="sui:localnet",Ni="sui:mainnet",Oi="solana:mainnet-beta",$p="solana:testnet",Di="solana:devnet",X={ethereum:1,base:8453,berachain:80094,binanceSmartChain:56,corn:21e6,etherlink:42793,katana:747474,morph:2818,sonic:146,swell:1923,tac:239,baseSepoliaTestnet:84532,berachainBartioTestnet:80084,binanceSmartChainTestnet:97,holesky:17e3,katanaTatara:129399,morphHolesky:2810,sepolia:11155111,sonicBlazeTestnet:57054},gt={[X.ethereum]:Z8,[X.base]:ry,[X.berachain]:iy,[X.binanceSmartChain]:uy,[X.corn]:cy,[X.etherlink]:ly,[X.katana]:Qp,[X.morph]:K8,[X.sonic]:Q8,[X.swell]:_8,[X.tac]:_p,[X.baseSepoliaTestnet]:sy,[X.berachainBartioTestnet]:oy,[X.binanceSmartChainTestnet]:py,[X.holesky]:yy,[X.katanaTatara]:Jp,[X.morphHolesky]:Y8,[X.sepolia]:X8,[X.sonicBlazeTestnet]:J8},o2=l=>[X.katana,X.katanaTatara].includes(l);function ed(l){return Object.values(X).includes(l)}async function Qb({provider:l,chainId:f}){const u=Qe({provider:l,chainId:X.ethereum});await Yp(u,{chain:gt[f]})}const me={eth:"DESTINATION_BLOCKCHAIN_ETHEREUM",ethOld:"BLOCKCHAIN_ETHEREUM",base:"DESTINATION_BLOCKCHAIN_BASE",baseOld:"BLOCKCHAIN_BASE",bsc:"DESTINATION_BLOCKCHAIN_BSC",bscOld:"BLOCKCHAIN_BSC",katana:"DESTINATION_BLOCKCHAIN_KATANA",katanaOld:"BLOCKCHAIN_KATANA",sui:"DESTINATION_BLOCKCHAIN_SUI",suiOld:"BLOCKCHAIN_SUI",sonic:"DESTINATION_BLOCKCHAIN_SONIC",sonicOld:"BLOCKCHAIN_SONIC",solana:"DESTINATION_BLOCKCHAIN_SOLANA",solanaOld:"BLOCKCHAIN_SOLANA"};function Er(l){if(l===X.ethereum||l===X.holesky||l===X.sepolia)return me.eth;if(l===X.base||l===X.baseSepoliaTestnet)return me.base;if(l===X.binanceSmartChain||l===X.binanceSmartChainTestnet)return me.bsc;if(l===X.katana||l===X.katanaTatara)return me.katana;if(l===X.sonic||l===X.sonicBlazeTestnet)return me.sonic;if(l===Ri||l===Ni)return me.sui;if(l===Di||l===$p||l===Oi)return me.solana;throw new Error(`Unknown chain ID: ${l}`)}const td=l=>l===ue.prod?X.ethereum:X.holesky,nd=l=>l===ue.prod?X.binanceSmartChain:X.binanceSmartChainTestnet,ad=l=>l===ue.prod?X.base:X.baseSepoliaTestnet,rd=l=>l===ue.prod?Ni:Ri,sd=l=>l===ue.prod?X.sonic:X.sonicBlazeTestnet,id=l=>l===ue.prod?Oi:Di;function Fi(l,f=gn){switch(l){case me.eth:case me.ethOld:return td(f);case me.base:case me.baseOld:return ad(f);case me.bsc:case me.bscOld:return nd(f);case me.katana:case me.katanaOld:return f==="prod"?X.katana:X.katanaTatara;case me.sui:case me.suiOld:return rd(f);case me.sonic:case me.sonicOld:return sd(f);case me.solana:case me.solanaOld:return id(f);default:return X.ethereum}}function Je(l){return typeof l=="string"?l:(u=>{var v;return!!(u&&typeof u=="object"&&"data"in u&&u.data&&typeof u.data=="object"&&"message"in u.data&&((v=u==null?void 0:u.data)!=null&&v.message)&&typeof u.data.message=="string")})(l)?l.data.message:l instanceof Error?Jb(l):_b(l)}function Jb(l){return l.response?l.response.data.message:l.message}function _b(l){return l&&typeof l=="object"&&"message"in l&&typeof l.message=="string"?l.message:"Unknown error"}class Ui extends Error{constructor(f,u,v){const t=`Could not determine the ${f} contract address for given chain id: ${u} (env: ${v||"undefined"})`;super(t),this.token=f,this.chainId=u}}var U0=(l=>(l.LBTC="LBTC",l.BTCK="BTCK",l.NativeLBTC="NativeLBTC",l.BTCB="BTCB",l.cbBTC="cbBTC",l.eBTC="eBTC",l.wBTC="wBTC",l.wBTCN="wBTCN",l))(U0||{});const od={TOKEN_SYMBOL_STLBTC:"LBTC"},Cr={LBTC:{[ue.prod]:{[X.ethereum]:"0x8236a87084f8b84306f72007f36f2618a5634494",[X.base]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.berachain]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.binanceSmartChain]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.corn]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.etherlink]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.katana]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.morph]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.sonic]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.swell]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.tac]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1"},[ue.stage]:{[X.baseSepoliaTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[X.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.binanceSmartChainTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[X.holesky]:"0xED7bfd5C1790576105Af4649817f6d35A75CD818",[X.katanaTatara]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[X.sepolia]:"0xc47e4b3124597fdf8dd07843d4a7052f2ee80c30",[X.sonicBlazeTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6"},[ue.testnet]:{[X.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.binanceSmartChainTestnet]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5",[X.holesky]:"0x38A13AB20D15ffbE5A7312d2336EF1552580a4E2",[X.sepolia]:"0xc47e4b3124597fdf8dd07843d4a7052f2ee80c30",[X.sonicBlazeTestnet]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5",[X.katanaTatara]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5"},[ue.dev]:{[X.sepolia]:"0x93283b6B889C591893dB0dc93baD71656D5d8923",[X.baseSepoliaTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.binanceSmartChainTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.katanaTatara]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30"}},BTCB:{[ue.prod]:{[X.binanceSmartChain]:"0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c"}},NativeLBTC:{[ue.dev]:{[X.binanceSmartChainTestnet]:"0xea3F66E5f2928dB9673103BfA01a2153A57a8050",[X.sepolia]:"0x195219A262423d209E126BD21cf4F4F9AA796927"},[ue.stage]:{[X.sepolia]:"0x600e4006278EB11FA1691cA0FE6C5fcfC4992d58"}},BTCK:{[ue.prod]:{[X.katana]:"0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072",[X.katanaTatara]:void 0},[ue.stage]:{[X.katana]:void 0,[X.katanaTatara]:"0x600e4006278EB11FA1691cA0FE6C5fcfC4992d58"},[ue.testnet]:{[X.katana]:void 0,[X.katanaTatara]:"0x20eA7b8ABb4B583788F1DFC738C709a2d9675681"},[ue.dev]:{[X.katana]:void 0,[X.katanaTatara]:"0xA74D838817f3098166d74a141b7d241efB15F42c"}},eBTC:{[ue.prod]:{[X.ethereum]:"0x657e8c867d8b37dcc18fa4caead9c45eb088c642"}},wBTC:{[ue.prod]:{[X.ethereum]:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599"}},wBTCN:{[ue.prod]:{[X.corn]:"0xda5dDd7270381A7C2717aD10D1c0ecB19e3CDFb2"}}},$b=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowDustLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[],name:"InvalidDustFeeRate",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidInputLength",type:"error"},{inputs:[],name:"InvalidUserSignature",type:"error"},{inputs:[],name:"KnownDestination",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"UnauthorizedAccount",type:"error"},{inputs:[{internalType:"bytes4",name:"action",type:"bytes4"}],name:"UnexpectedAction",type:"error"},{inputs:[],name:"UnknownDestination",type:"error"},{inputs:[{internalType:"uint256",name:"fromChainId",type:"uint256"},{internalType:"address",name:"fromContract",type:"address"}],name:"UnknownOriginContract",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WithdrawalsDisabled",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroChainId",type:"error"},{inputs:[],name:"ZeroContractHash",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BridgeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"claimer",type:"address"},{indexed:!1,internalType:"bool",name:"isClaimer",type:"bool"}],name:"ClaimerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"bool",name:"isMinter",type:"bool"}],name:"MinterUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousPauser",type:"address"},{indexed:!0,internalType:"address",name:"newPauser",type:"address"}],name:"PauserRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"fromAddress",type:"address"},{indexed:!1,internalType:"bytes",name:"scriptPubKey",type:"bytes"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"UnstakeRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"WithdrawalsEnabled",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newClaimer",type:"address"}],name:"addClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newMinter",type:"address"}],name:"addMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newBridge",type:"address"}],name:"changeBridge",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeBurnCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newRate",type:"uint256"}],name:"changeDustFeeRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBurnCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"uint64",name:"burnCommission_",type:"uint64"},{internalType:"address",name:"owner_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"claimer",type:"address"}],name:"isClaimer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"payload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"reinitialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldClaimer",type:"address"}],name:"removeClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldMinter",type:"address"}],name:"removeMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMintFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleWithdrawals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newPauser",type:"address"}],name:"transferPauserRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"fromChain",type:"uint256"},{internalType:"address",name:"fromContract",type:"address"},{internalType:"uint256",name:"toChain",type:"uint256"},{internalType:"address",name:"toContract",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint64",name:"amount",type:"uint64"},{internalType:"bytes32",name:"uniqueActionData",type:"bytes32"}],internalType:"struct Actions.DepositBridgeAction",name:"action",type:"tuple"},{internalType:"bytes32",name:"",type:"bytes32"},{internalType:"bytes",name:"",type:"bytes"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}],e3=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[],name:"Actions_ZeroAddress",type:"error"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowDustLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[{internalType:"address",name:"expected",type:"address"},{internalType:"address",name:"got",type:"address"}],name:"InvalidDestinationToken",type:"error"},{inputs:[],name:"InvalidDustFeeRate",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidInputLength",type:"error"},{inputs:[],name:"InvalidMintAmount",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"InvalidPayloadSize",type:"error"},{inputs:[],name:"InvalidUserSignature",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"bytes4",name:"action",type:"bytes4"}],name:"UnexpectedAction",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WithdrawalsDisabled",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"BatchMintSkipped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"fromAddress",type:"address"},{indexed:!1,internalType:"bytes",name:"scriptPubKey",type:"bytes"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"UnstakeRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"WithdrawalsEnabled",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"MINTER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PAUSER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeBurnCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newRate",type:"uint256"}],name:"changeDustFeeRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBurnCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"uint64",name:"burnCommission_",type:"uint64"},{internalType:"address",name:"treasury",type:"address"},{internalType:"address",name:"initialOwner",type:"address"},{internalType:"uint48",name:"initialOwnerDelay",type:"uint48"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"payloadHash",type:"bytes32"}],name:"isPayloadUsed",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"payload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMintFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleWithdrawals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],t3=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AssetRouterNotSet",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidMintAmount",type:"error"},{inputs:[{internalType:"uint256",name:"a",type:"uint256"},{internalType:"uint256",name:"b",type:"uint256"}],name:"NonEqualLength",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"RedeemForBtcDisabled",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"UnauthorizedAccount",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newVal",type:"address"},{indexed:!0,internalType:"address",name:"prevVal",type:"address"}],name:"AssetRouterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"BatchMintSkipped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"claimer",type:"address"},{indexed:!1,internalType:"bool",name:"isClaimer",type:"bool"}],name:"ClaimerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"bool",name:"isMinter",type:"bool"}],name:"MinterUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOperator",type:"address"},{indexed:!0,internalType:"address",name:"newOperator",type:"address"}],name:"OperatorRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousPauser",type:"address"},{indexed:!0,internalType:"address",name:"newPauser",type:"address"}],name:"PauserRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"RedeemFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"RedeemRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"RedeemsForBtcEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newClaimer",type:"address"}],name:"addClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newMinter",type:"address"}],name:"addMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeAssetRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOperator",type:"address"}],name:"changeOperator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newPauser",type:"address"}],name:"changePauser",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newVal",type:"uint256"}],name:"changeRedeemFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newVal",type:"uint256"}],name:"changeRedeemForBtcMinAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"contract INotaryConsortium",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAssetRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"}],name:"getFeeDigest",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRedeemFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRedeemForBtcMinAmount",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"address",name:"treasury",type:"address"},{internalType:"address",name:"owner_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"claimer",type:"address"}],name:"isClaimer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"isNative",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[],name:"isRedeemsEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"rawPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[{internalType:"address",name:"recipient",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"operator",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"ratio",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeemForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"reinitialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldClaimer",type:"address"}],name:"removeClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldMinter",type:"address"}],name:"removeMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toNativeCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleRedeemsForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],iu=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[],name:"Actions_ZeroAddress",type:"error"},{inputs:[],name:"AssetRouterNotSet",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[{internalType:"bytes4",name:"expected",type:"bytes4"},{internalType:"bytes4",name:"actual",type:"bytes4"}],name:"InvalidAction",type:"error"},{inputs:[{internalType:"address",name:"expected",type:"address"},{internalType:"address",name:"actual",type:"address"}],name:"InvalidDestinationToken",type:"error"},{inputs:[],name:"InvalidFeeApprovalSignature",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidMintAmount",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"InvalidPayloadSize",type:"error"},{inputs:[{internalType:"uint256",name:"a",type:"uint256"},{internalType:"uint256",name:"b",type:"uint256"}],name:"NonEqualLength",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"RedeemForBtcDisabled",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{inputs:[],name:"ZeroTxId",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newVal",type:"address"},{indexed:!0,internalType:"address",name:"prevVal",type:"address"}],name:"AssetRouterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"BatchMintSkipped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"RedeemFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"RedeemRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"RedeemsForBtcEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"MINTER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PAUSER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeAssetRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAssetRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"}],name:"getFeeDigest",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRedeemFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"address",name:"treasury",type:"address"},{internalType:"address",name:"initialOwner",type:"address"},{internalType:"uint48",name:"initialOwnerDelay",type:"uint48"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"isNative",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[],name:"isRedeemsEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"rawPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeemForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleRedeemsForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],n3=[X.ethereum,X.base,X.berachain,X.binanceSmartChain,X.corn,X.etherlink,X.katana,X.morph,X.sonic,X.swell],va=l=>n3.includes(l)?ue.prod:ue.stage,Pt="https://bff.prod.lombard-fi.com/multi-rpc/proxy";X.ethereum+"",`${Pt}`,X.base+"",`${Pt}`,X.binanceSmartChain+"",X.corn+"",`${Pt}`,X.katana+"",`${Pt}`,X.sonic+"",`${Pt}`,X.tac+"",`${Pt}`,X.baseSepoliaTestnet+"",`${Pt}`,X.binanceSmartChainTestnet+"",X.holesky+"",`${Pt}`,X.katanaTatara+"",`${Pt}`,X.sepolia+"",`${Pt}`,X.sonicBlazeTestnet+"",`${Pt}`;function a3(l){const{bffApiUrl:f}=fe(l),u=`${f}/multi-rpc/proxy`;return{[X.ethereum]:`${u}/eth`,[X.base]:`${u}/base`,[X.binanceSmartChain]:"https://bsc-dataseed.bnbchain.org",[X.corn]:`${u}/corn_maizenet`,[X.katana]:`${u}/katana`,[X.sonic]:`${u}/sonic_mainnet`,[X.tac]:`${u}/tac`,[X.baseSepoliaTestnet]:`${u}/base_sepolia`,[X.binanceSmartChainTestnet]:"https://bsc-testnet-dataseed.bnbchain.org",[X.holesky]:`${u}/eth_holesky`,[X.katanaTatara]:`${u}/katana_tatara`,[X.sepolia]:`${u}/eth_sepolia`,[X.sonicBlazeTestnet]:`${u}/sonic_blaze_testnet`}}function Pe({chainId:l,rpcUrl:f,env:u}){const v=f?{[l]:f}:void 0,t=u||va(l),C={...a3(t),...v},B=gt[l],N=ff(C[l]);return Rb({chain:B,transport:N})}const ud=[{inputs:[],name:"getAssetRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],pd=ud[0].name;async function ou(l,f,u,v){var B,N;const t=u||gn,d=(N=(B=Cr[l])==null?void 0:B[t])==null?void 0:N[f];if(!d)throw new Ui(l,f,t);const C=Pe({chainId:f,rpcUrl:v,env:t});try{return await C.readContract({abi:ud,address:d,functionName:pd})!==tt}catch{return!1}}const Pr=l=>l.find(u=>u.type==="function"&&u.name===pd)!=null;async function _e(l,f,u){var C,B;const v=u||gn;let t;l===U0.LBTC?await ou(U0.LBTC,f,v)?t=t3:t=$b:l===U0.BTCK?(t=e3,await ou(U0.BTCK,f,v)&&(t=iu)):l===U0.NativeLBTC?t=iu:t=X4;const d=(B=(C=Cr[l])==null?void 0:C[v])==null?void 0:B[f];if(!d)throw new Ui(l,f,v);return{abi:t,address:d,chainId:f}}const dd=async(l,f)=>{const[u,v]=await l.multicall({contracts:[{...f,functionName:"symbol"},{...f,functionName:"decimals"}]});if(u.status==="success"&&v.status==="success")return{address:f.address,abi:f.abi,symbol:String(u.result),decimals:Number(v.result)}};async function A2(l,f,u,v){const t=await _e(l,f,u);if(!t)return;const d=Pe({chainId:f,rpcUrl:v});return dd(d,t)}async function cd(l,f,u){const v=Pe({chainId:f,rpcUrl:u});return dd(v,{abi:X4,address:l,chainId:f})}function Mr(l,f){return V0(l).multipliedBy(V0(10).pow(f)).decimalPlaces(0,V0.ROUND_HALF_UP)}function Fe(l,f){return V0(l).dividedBy(V0(10).pow(f))}const ld="sanctioned_address",r3="api/v1/address/generate",s3="destination address is under sanctions",uu=[U0.LBTC,U0.BTCK,U0.NativeLBTC],i3=[U0.LBTC,U0.BTCK,U0.NativeLBTC];async function o3({address:l,token:f=U0.LBTC,chainId:u,signature:v,eip712Data:t,env:d,referrerCode:C,partnerId:B,captchaToken:N,signatureData:U}){const{baseApiUrl:z}=fe(d),j=Er(u);if(!i3.includes(f))throw new Error(`Unsupported token: ${f}`);let q={};try{uu.includes(f)&&![me.sui,me.solana].includes(j)&&(q={token_address:(await _e(f,u,d)).address})}catch(_){if(_ instanceof Error&&_ instanceof Ui&&uu.includes(f))throw new Error(`Unable to generate BTC deposit address for given token: ${f} in ${u}, reason: ${_.message}`)}const O={to_address:l,to_address_signature:v,to_chain:j,partner_id:B,nonce:0,captcha:N,referrer_code:C,eip_712_data:t,sb_signature_data:U,...q};try{const{data:_}=await ie.post(r3,O,{baseURL:z});return _.address}catch(_){const J=Je(_);if(u3(J))return ld;throw new Error(J)}}function u3(l){return l.includes(s3)}async function yd({address:l,chainId:f,env:u,limit:v,offset:t,partnerId:d}){var z;const{baseApiUrl:C}=fe(u),B=Er(f),N={asc:!1,limit:v,offset:t,referralId:d||"lombard"};for(const[j,q]of Object.entries(N))q===void 0&&delete N[j];const U=`api/v1/address/destination/${B}/${l}`;try{const{data:j}=await ie.get(U,{baseURL:C,params:N});return j.addresses||[]}catch(j){if(ie.isAxiosError(j)){const q=(z=j.response)==null?void 0:z.data.message;throw new Error(q)}}}async function p3({address:l,chainId:f,env:u,partnerId:v,token:t=U0.LBTC}){const d=await yd({address:l,chainId:f,env:u,partnerId:v});let C;if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(t))throw new Error("Unsupported token");let B;try{ed(f)&&(B={token_address:(await _e(t,f,u)).address.toLowerCase(),aux_version:t===U0.BTCK?1:void 0})}catch{}const N=(d||[]).filter(U=>{var j;if(!B)return!U.deposit_metadata.token_address;let z=((j=U.deposit_metadata.token_address)==null?void 0:j.toLowerCase())===B.token_address;return B.aux_version!=null&&(z=z&&U.deposit_metadata.aux_version===B.aux_version),t===U0.LBTC&&(z=z||!U.deposit_metadata.token_address),z});if(N&&N.length>0){const U=N.reduce((z,j)=>j.created_at>z.created_at?j:z,N[0]);U.deprecated||(C=U.btc_address)}if(!C)throw new Error(`No deposit address found for ${l} on chain ${f}`);return C}async function d3(l){return await yd(l)}const fd=8,Li=V0(10).pow(fd);function Ht(l){return V0(l).dividedBy(Li)}function u2(l){return V0(l).multipliedBy(Li).decimalPlaces(0,V0.ROUND_HALF_UP)}var md=(l=>(l.NOTARIZATION_STATUS_UNSPECIFIED="NOTARIZATION_STATUS_UNSPECIFIED",l.NOTARIZATION_STATUS_PENDING="NOTARIZATION_STATUS_PENDING",l.NOTARIZATION_STATUS_SUBMITTED="NOTARIZATION_STATUS_SUBMITTED",l.NOTARIZATION_STATUS_SESSION_APPROVED="NOTARIZATION_STATUS_SESSION_APPROVED",l.NOTARIZATION_STATUS_FAILED="NOTARIZATION_STATUS_FAILED",l))(md||{}),bd=(l=>(l.SESSION_STATE_UNSPECIFIED="SESSION_STATE_UNSPECIFIED",l.SESSION_STATE_PENDING="SESSION_STATE_PENDING",l.SESSION_STATE_COMPLETED="SESSION_STATE_COMPLETED",l.SESSION_STATE_EXPIRED="SESSION_STATE_EXPIRED",l))(bd||{});async function c3({address:l,env:f}){const{baseApiUrl:u}=fe(f),{data:v}=await ie.get(`api/v1/address/outputs-v2/${l}`,{baseURL:u});return((v==null?void 0:v.outputs)??[]).map(l3(f))}function l3(l){return f=>({txid:f.txid,index:f.index??0,blockHeight:f.block_height?Number(f.block_height):void 0,blockTime:f.block_time?Number(f.block_time):void 0,value:Ht(f.value),address:f.address,chainId:Fi(f.to_chain,l),claimedTxId:f.claim_tx,isClaimed:!!f.claim_tx,rawPayload:f.raw_payload,signature:f.proof,isRestricted:!!f.sanctioned,notarizationWaitDur:f.notarization_wait_dur?Number(f.notarization_wait_dur):void 0,payload:f.payload_hash,sessionId:f.session_id,notarizationStatus:f.notarization_status,sessionState:f.session_state,tokenAddress:f.token_address})}const y3=2e-4;async function f3({env:l,chainId:f=X.ethereum,amount:u=u2(1)}){const{baseApiUrl:v}=fe(l),t=Er(f),{data:d}=await ie.get(`api/v1/exchange/rate/${t}`,{baseURL:v,params:{amount:u}}),C=V0(d.amount_out).toNumber(),B=V0(u).dividedBy(d.amount_out).toNumber(),N=u2(y3).toNumber();return{amountOut:C,exchangeRate:B,minAmount:N}}const m3=[U0.LBTC];async function b3({env:l}){const{baseApiUrl:f}=fe(l),u=`${f}/api/v1/ratio`,{data:v}=await ie.get(u);return v.token_ratio.map(C=>({token:od[C.name],tokenBTCRatio:V0(C.ratio),BTCTokenRatio:V0(C.price)})).filter(C=>m3.includes(C.token)).reduce((C,B)=>{const{token:N,...U}=B;return C[B.token]=U,C},{})}async function h3({address:l,chainId:f,env:u}){const{baseApiUrl:v}=fe(u);try{const{data:t}=await ie.get(`${v}/api/v1/claimer/get-user-signature`,{params:{user_destination_address:l,chain_id:f}});return{expirationDate:t==null?void 0:t.expiration_date,hasSignature:t==null?void 0:t.has_signature,isDelayed:t==null?void 0:t.is_delayed}}catch(t){const d=Je(t);throw new Error(d)}}async function T3({address:l,env:f}){var R0,P0,x0,e0,w0,d0,m0,A0;const{baseApiUrl:u,bffApiUrl:v}=fe(f);if(!v||!u)throw new Error(`Could not determine the API endpoint for the provided environment: ${f||gn}`);const t=`${u}/api/v1/referral-system/season-1/points/${l}`,d=`${u}/api/v1/task/okx/user-task-verification?address=${l}&chain=1`,C=`${v}/sentio-api/flash-event-points/${l}`,B=ie.get(t),N=ie.get(d),U=ie.get(C),[{data:z},{data:j},{data:q}]=await Promise.all([B,N,U]),O=yn(j==null?void 0:j.points),_=yn((e0=(x0=(P0=(R0=q==null?void 0:q.flashEvent1Points)==null?void 0:R0.result)==null?void 0:P0.rows)==null?void 0:x0[0])==null?void 0:e0.points),J=yn((A0=(m0=(d0=(w0=q==null?void 0:q.flashEvent2Points)==null?void 0:w0.result)==null?void 0:d0.rows)==null?void 0:m0[0])==null?void 0:A0.totalPoints),s0=_+J,o0=yn(z.holding_points),p0=yn(z.protocol_points),l0=yn(z.referee_points)+yn(z.referrals_points),v0=o0+p0+l0+O+s0,b0=Object.entries(z.protocol_points_map||{}).reduce((N0,[M0,k0])=>(N0[M0]=yn(k0),N0),{});return{holdingPoints:o0,protocolPoints:p0,referralPoints:l0,okxPoints:O,flashEventPoints:s0,totalPoints:v0,protocolPointsBreakdown:b0}}function yn(l,f=0){return Number(l)||f}var hd=(l=>(l.Completed="Completed",l.Pending="Pending",l))(hd||{});async function g3({address:l,env:f="prod",options:u}){const{baseApiUrl:v}=fe(f);if(!l)throw new Error("No address specified.");const t=new URL(`/api/v1/address/unstakes/${l}`,v);u!=null&&u.limit&&t.searchParams.set("limit",u.limit.toString()),u!=null&&u.offset&&t.searchParams.set("offset",u.offset.toString());const{data:{unstakes:d=[]}}=await ie.get(t.toString());return d.map(C=>w3(C,f))}function w3(l,f){const u=Bn.address.fromOutputScript(Buffer.from(l.output_script.replace(/^0x/,""),"hex"),f==="prod"?Bn.networks.bitcoin:Bn.networks.testnet),v=l.payout_txid?"Completed":"Pending";return{txHash:l.tx_hash,chainId:Fi(l.blockchain,f),blockHeight:+l.block_height,unstakeDate:new Date(+l.block_time*1e3),fromAddress:l.from_address,toAddress:u,amount:Ht(l.amount),payoutTxHash:l.payout_txid,payoutTxIndex:l.payout_index?+l.payout_index:void 0,payoutTxStatus:v,sanctioned:l.sanctioned}}async function v3({userDestinationAddress:l,chainId:f,env:u}){const{baseApiUrl:v}=fe(u);try{const{data:t}=await ie.get(`${v}/api/v1/claimer/get-user-stake-and-bake-signature`,{params:{userDestinationAddress:l,chainId:f.toString()}});return{userDestinationAddress:t.user_destination_address,signature:t.signature,expirationDate:t.expiration_date,depositAmount:t.deposit_amount,chainId:t.chain_id}}catch(t){const d=Je(t);throw new Error(`Failed to get user stake and bake signature: ${d}`)}}const A3="api/v1/referral-system/referrer/";async function x3({address:l,signature:f,eip712Data:u,referrerCode:v,env:t}){const{baseApiUrl:d}=fe(t),C={referrer_code:v,signature:f,signature_typed_data:u};try{await ie.post(`${A3}${l}`,C,{baseURL:d});return}catch(B){const N=Je(B);throw new Error(N)}}async function E3({signature:l,typedData:f,address:u,env:v}){const{baseApiUrl:t}=fe(v);try{const{data:d}=await ie.post(`${t}/api/v1/claimer/save-user-signature`,null,{params:{typed_data:f,signature:l,user_destination_address:u}});return d.status}catch(d){const C=Je(d);throw new Error(C)}}async function C3({signature:l,typedData:f,env:u}){const{baseApiUrl:v}=fe(u);try{const{data:t}=await ie.post(`${v}/api/v1/claimer/save-stake-and-bake-signature`,null,{params:{typed_data:f,signature:l}});return t.status}catch(t){const d=Je(t);throw new Error(d)}}const P3=JSON.parse('[{"inputs":[{"internalType":"address","name":"aDefaultAdmin","type":"address"},{"internalType":"address","name":"aPauser","type":"address"},{"internalType":"address","name":"aDepositReporter","type":"address"},{"internalType":"address","name":"aWithdrawalValidator","type":"address"},{"internalType":"uint256","name":"aMaxDeposits","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"uint48","name":"schedule","type":"uint48"}],"name":"AccessControlEnforcedDefaultAdminDelay","type":"error"},{"inputs":[],"name":"AccessControlEnforcedDefaultAdminRules","type":"error"},{"inputs":[{"internalType":"address","name":"defaultAdmin","type":"address"}],"name":"AccessControlInvalidDefaultAdmin","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"}],"name":"AlreadyReported","type":"error"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"},{"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"AlreadyWithdrawn","type":"error"},{"inputs":[],"name":"BadDepositReport","type":"error"},{"inputs":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[],"name":"SameValidationThreshold","type":"error"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"},{"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"WithdrawalFailedValidation","type":"error"},{"anonymous":false,"inputs":[],"name":"DefaultAdminDelayChangeCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint48","name":"newDelay","type":"uint48"},{"indexed":false,"internalType":"uint48","name":"effectSchedule","type":"uint48"}],"name":"DefaultAdminDelayChangeScheduled","type":"event"},{"anonymous":false,"inputs":[],"name":"DefaultAdminTransferCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"},{"indexed":false,"internalType":"uint48","name":"acceptSchedule","type":"uint48"}],"name":"DefaultAdminTransferScheduled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"reportId","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"numDeposits","type":"uint256"}],"name":"DepositsReported","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"numDeposits","type":"uint256"}],"name":"MaxDepositsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldThreshold","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newThreshold","type":"uint256"}],"name":"UpdateValidateThreshold","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"depositID","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"WithdrawalNotValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"depositID","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"WithdrawalValidated","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEPOSIT_REPORTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VALIDATION_GUARDIAN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WITHDRAWAL_VALIDATOR_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"acceptDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"beginDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cancelDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint48","name":"newDelay","type":"uint48"}],"name":"changeDefaultAdminDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"defaultAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdminDelay","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdminDelayIncreaseWait","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"}],"name":"depositHistory","outputs":[{"internalType":"enum Bascule.DepositState","name":"status","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingDefaultAdmin","outputs":[{"internalType":"address","name":"newAdmin","type":"address"},{"internalType":"uint48","name":"schedule","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingDefaultAdminDelay","outputs":[{"internalType":"uint48","name":"newDelay","type":"uint48"},{"internalType":"uint48","name":"schedule","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"reportId","type":"bytes32"},{"internalType":"bytes32[]","name":"depositIDs","type":"bytes32[]"}],"name":"reportDeposits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rollbackDefaultAdminDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"aMaxDeposits","type":"uint256"}],"name":"setMaxDeposits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newThreshold","type":"uint256"}],"name":"updateValidateThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"validateThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"},{"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"validateWithdrawal","outputs":[],"stateMutability":"nonpayable","type":"function"}]');var Fa=(l=>(l[l.UNREPORTED=0]="UNREPORTED",l[l.REPORTED=1]="REPORTED",l[l.WITHDRAWN=2]="WITHDRAWN",l))(Fa||{});async function Td({deposit:l,rawPayload:f,provider:u,chainId:v,rpcUrl:t,env:d=gn,token:C=U0.LBTC}){const B=(l==null?void 0:l.rawPayload)||f;if(!B)throw new Error("No 'rawPayload' or 'deposit' data provided. Please provide 'rawPayload' or 'deposit' parameter.");if(C===U0.LBTC&&(v===X.katana||v===X.katanaTatara))return 1;const N=Pe({chainId:v,rpcUrl:t,env:d}),U=await _e(C,v,d),z=await N.readContract({abi:U.abi,address:U.address,functionName:"Bascule"});if(z===tt)return 1;let j;if(u?j=Qe({provider:u,chainId:v}):j=Pe({chainId:v,rpcUrl:t}),!j)throw new Error("Could not determine the client for the contract interactions. Please provide the 'provider' and 'chainId' parameters or 'chainId' and optionally the 'rpcUrl' parameter.");try{const q=wr({abi:P3,address:z,client:j}),O=De(Buffer.from(B.slice(8),"hex"));return await q.read.depositHistory([O])}catch(q){throw new Error(Je(q))}}const zi=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowMinLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"AssertRouter_UnauthorizedAccount",type:"error"},{inputs:[],name:"AssertRouter_WrongRedeemDestinationChain",type:"error"},{inputs:[],name:"AssertRouter_WrongRouteType",type:"error"},{inputs:[],name:"AssertRouter_WrongToken",type:"error"},{inputs:[],name:"AssetOperation_DepositNotAllowed",type:"error"},{inputs:[],name:"AssetOperation_RedeemNotAllowed",type:"error"},{inputs:[],name:"AssetRouter_FeeGreaterThanAmount",type:"error"},{inputs:[],name:"AssetRouter_MailboxExpected",type:"error"},{inputs:[],name:"AssetRouter_MintProcessingError",type:"error"},{inputs:[],name:"AssetRouter_PayloadAlreadyUsed",type:"error"},{inputs:[],name:"AssetRouter_Unauthorized",type:"error"},{inputs:[],name:"AssetRouter_WrongNativeToken",type:"error"},{inputs:[],name:"AssetRouter_WrongOperation",type:"error"},{inputs:[],name:"AssetRouter_WrongSender",type:"error"},{inputs:[],name:"AssetRouter_ZeroAddress",type:"error"},{inputs:[],name:"AssetRouter_ZeroMailbox",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"Assets_InvalidPayloadSize",type:"error"},{inputs:[{internalType:"bytes4",name:"expected",type:"bytes4"},{internalType:"bytes4",name:"actual",type:"bytes4"}],name:"Assets_InvalidSelector",type:"error"},{inputs:[],name:"Assets_ZeroAmount",type:"error"},{inputs:[],name:"Assets_ZeroRecipient",type:"error"},{inputs:[],name:"Assets_ZeroToToken",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[],name:"GMP_InvalidAddess",type:"error"},{inputs:[{internalType:"bytes4",name:"expected",type:"bytes4"},{internalType:"bytes4",name:"actual",type:"bytes4"}],name:"InvalidAction",type:"error"},{inputs:[],name:"InvalidFeeApprovalSignature",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"InvalidPayloadSize",type:"error"},{inputs:[{internalType:"uint256",name:"a",type:"uint256"},{internalType:"uint256",name:"b",type:"uint256"}],name:"NonEqualLength",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"NotStakingToken",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"AssetRouter_BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"string",name:"reason",type:"string"},{indexed:!1,internalType:"bytes",name:"customError",type:"bytes"}],name:"AssetRouter_BatchMintError",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"AssetRouter_DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"AssetRouter_FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"AssetRouter_MailboxChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"AssetRouter_MintFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldAddress",type:"address"},{indexed:!0,internalType:"address",name:"newAddress",type:"address"}],name:"AssetRouter_NativeTokenChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"AssetRouter_OracleChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"bool",name:"enabled",type:"bool"}],name:"AssetRouter_RedeemEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newFee",type:"uint256"}],name:"AssetRouter_RedeemFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"uint256",name:"oldMinAmount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newMinAmount",type:"uint256"}],name:"AssetRouter_RedeemForBtcMinAmountChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"fromToken",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"fromChainId",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"toToken",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"toChainId",type:"bytes32"}],name:"AssetRouter_RouteRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"fromToken",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"fromChainId",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"toToken",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"toChainId",type:"bytes32"},{indexed:!1,internalType:"enum IAssetRouter.RouteType",name:"routeType",type:"uint8"}],name:"AssetRouter_RouteSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldCommission",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newCommission",type:"uint256"}],name:"AssetRouter_ToNativeCommissionChanged",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{inputs:[],name:"CALLER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"bitcoinChainId",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveMinLimit",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeMailbox",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeNativeToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"newVal",type:"address"}],name:"changeOracle",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"fee",type:"uint256"}],name:"changeRedeemFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"changeRedeemFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"changeRedeemForBtcMinAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"changeRedeemForBtcMinAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeToNativeCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"redeemFee",type:"uint256"},{internalType:"uint256",name:"redeemForBtcMinAmount",type:"uint256"},{internalType:"bool",name:"redeemEnabled",type:"bool"}],name:"changeTokenConfig",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"redeemFee",type:"uint256"},{internalType:"uint256",name:"redeemForBtcMinAmount",type:"uint256"},{internalType:"address",name:"oracle_",type:"address"},{internalType:"uint256",name:"maximumMintCommission_",type:"uint256"},{internalType:"uint64",name:"toNativeCommission_",type:"uint64"}],name:"changeTokenConfigExt",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"tolChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"recipient",type:"bytes32"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"getRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"fromToken",type:"bytes32"},{internalType:"bytes32",name:"fromChainId",type:"bytes32"},{internalType:"bytes32",name:"toChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"}],name:"getRouteType",outputs:[{internalType:"enum IAssetRouter.RouteType",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"id",type:"bytes32"},{internalType:"bytes32",name:"msgPath",type:"bytes32"},{internalType:"uint256",name:"msgNonce",type:"uint256"},{internalType:"bytes32",name:"msgSender",type:"bytes32"},{internalType:"address",name:"msgRecipient",type:"address"},{internalType:"address",name:"msgDestinationCaller",type:"address"},{internalType:"bytes",name:"msgBody",type:"bytes"}],internalType:"struct GMPUtils.Payload",name:"payload",type:"tuple"}],name:"handlePayload",outputs:[{internalType:"bytes",name:"",type:"bytes"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner_",type:"address"},{internalType:"uint48",name:"initialOwnerDelay_",type:"uint48"},{internalType:"bytes32",name:"ledgerChainId_",type:"bytes32"},{internalType:"bytes32",name:"bitcoinChainId_",type:"bytes32"},{internalType:"address",name:"mailbox_",type:"address"},{internalType:"address",name:"bascule_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"mailbox",outputs:[{internalType:"contract IMailbox",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"maxMintCommission",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"rawPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"nativeToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"oracle",outputs:[{internalType:"contract IOracle",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"ratio",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"address",name:"fromToken",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"bytes32",name:"tolChainId",type:"bytes32"},{internalType:"address",name:"fromToken",type:"address"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"recipient",type:"bytes32"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"address",name:"fromToken",type:"address"},{internalType:"bytes",name:"recipient",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeemForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"fromToken",type:"bytes32"},{internalType:"bytes32",name:"fromChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"toChainId",type:"bytes32"}],name:"removeRoute",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMaxMintCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"fromToken",type:"bytes32"},{internalType:"bytes32",name:"fromChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"toChainId",type:"bytes32"},{internalType:"enum IAssetRouter.RouteType",name:"routeType",type:"uint8"}],name:"setRoute",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"toNativeCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleRedeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"tokenConfig",outputs:[{internalType:"uint256",name:"redeemFee",type:"uint256"},{internalType:"uint256",name:"redeemForBtcMinAmount",type:"uint256"},{internalType:"bool",name:"isRedeemEnabled",type:"bool"}],stateMutability:"view",type:"function"}];async function M3(l){return gd({token:U0.LBTC,...l})}async function k3(l){return wd({token:U0.LBTC,...l})}async function gd({token:l,chainId:f,rpcUrl:u,env:v}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(l))throw new Error(`Unsupported token: ${l}`);const t=v||va(f),d=Pe({chainId:f,rpcUrl:u,env:t}),C=await _e(l,f,t),B=C.abi;let N=0n;if(Pr(B)||l===U0.NativeLBTC){const U=await d.readContract({abi:B,address:C.address,functionName:"getAssetRouter"}),z={abi:zi,address:U};N=await d.readContract({abi:z.abi,address:z.address,functionName:"maxMintCommission",args:[C.address]})}else N=await d.readContract({abi:C.abi,address:C.address,functionName:"getMintFee"});return Ht(String(N))}async function wd({token:l,chainId:f,rpcUrl:u,env:v}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(l))throw new Error(`Unsupported token: ${l}`);const t=v||va(f),d=Pe({chainId:f,rpcUrl:u,env:t}),C=await _e(l,f,t);let B=0n;if(Pr(C.abi)||l===U0.NativeLBTC){const N=await d.readContract({abi:C.abi,address:C.address,functionName:"getAssetRouter"}),U={abi:zi,address:N},z=await d.readContract({abi:U.abi,address:U.address,functionName:"toNativeCommission",args:[C.address]}),[j]=await d.readContract({abi:U.abi,address:U.address,functionName:"tokenConfig",args:[C.address]});B=z+j}else B=await d.readContract({abi:C.abi,address:C.address,functionName:"getBurnCommission"});return Ht(String(B))}async function I3({token:l,chainId:f,rpcUrl:u,env:v}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(l))throw new Error(`Unsupported token: ${l}`);const t=v||va(f),d=Pe({chainId:f,rpcUrl:u,env:t}),C=await _e(l,f,t);let B=0n;if(Pr(C.abi)||l===U0.NativeLBTC){const N=await d.readContract({abi:C.abi,address:C.address,functionName:"getAssetRouter"}),U={abi:zi,address:N},[,z]=await d.readContract({abi:U.abi,address:U.address,functionName:"tokenConfig",args:[C.address]});B=z}else B=2000n;return Ht(String(B))}async function B3({chainId:l,rpcUrl:f,env:u}){const v=u||va(l),t=Pe({chainId:l,rpcUrl:f,env:v}),d=await _e(U0.LBTC,l,v),C=await t.readContract({abi:d.abi,address:d.address,functionName:"totalSupply"});return Ht(String(C))}async function vd({owner:l,chainId:f,rpcUrl:u,env:v=gn}){const t=v||va(f),d=Pe({chainId:f,rpcUrl:u}),C=await _e(U0.LBTC,f,t),B=await d.readContract({abi:C.abi,address:C.address,functionName:"nonces",args:[l]});return String(B)}const S3=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AddressInsufficientBalance","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Enter","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Exit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"uint256","name":"assetAmount","type":"uint256"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"shareAmount","type":"uint256"}],"name":"enter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"uint256","name":"assetAmount","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"shareAmount","type":"uint256"}],"name":"exit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"hook","outputs":[{"internalType":"contract BeforeTransferHook","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"targets","type":"address[]"},{"internalType":"bytes[]","name":"data","type":"bytes[]"},{"internalType":"uint256[]","name":"values","type":"uint256[]"}],"name":"manage","outputs":[{"internalType":"bytes[]","name":"results","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"manage","outputs":[{"internalType":"bytes","name":"result","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC1155BatchReceived","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC1155Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC721Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_hook","type":"address"}],"name":"setBeforeTransferHook","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]'),R3=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_vault","type":"address"},{"internalType":"address","name":"payoutAddress","type":"address"},{"internalType":"uint96","name":"startingExchangeRate","type":"uint96"},{"internalType":"address","name":"_base","type":"address"},{"internalType":"uint16","name":"allowedExchangeRateChangeUpper","type":"uint16"},{"internalType":"uint16","name":"allowedExchangeRateChangeLower","type":"uint16"},{"internalType":"uint24","name":"minimumUpdateDelayInSeconds","type":"uint24"},{"internalType":"uint16","name":"managementFee","type":"uint16"},{"internalType":"uint16","name":"performanceFee","type":"uint16"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccountantWithRateProviders__ExchangeRateAboveHighwaterMark","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__LowerBoundTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__ManagementFeeTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__OnlyCallableByBoringVault","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__Paused","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__PerformanceFeeTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__UpdateDelayTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__UpperBoundTooSmall","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__ZeroFeesOwed","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint24","name":"oldDelay","type":"uint24"},{"indexed":false,"internalType":"uint24","name":"newDelay","type":"uint24"}],"name":"DelayInSecondsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint96","name":"oldRate","type":"uint96"},{"indexed":false,"internalType":"uint96","name":"newRate","type":"uint96"},{"indexed":false,"internalType":"uint64","name":"currentTime","type":"uint64"}],"name":"ExchangeRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"feeAsset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FeesClaimed","type":"event"},{"anonymous":false,"inputs":[],"name":"HighwaterMarkReset","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldBound","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newBound","type":"uint16"}],"name":"LowerBoundUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldFee","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newFee","type":"uint16"}],"name":"ManagementFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldPayout","type":"address"},{"indexed":false,"internalType":"address","name":"newPayout","type":"address"}],"name":"PayoutAddressUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldFee","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newFee","type":"uint16"}],"name":"PerformanceFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"bool","name":"isPegged","type":"bool"},{"indexed":false,"internalType":"address","name":"rateProvider","type":"address"}],"name":"RateProviderUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldBound","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newBound","type":"uint16"}],"name":"UpperBoundUpdated","type":"event"},{"inputs":[],"name":"accountantState","outputs":[{"internalType":"address","name":"payoutAddress","type":"address"},{"internalType":"uint96","name":"highwaterMark","type":"uint96"},{"internalType":"uint128","name":"feesOwedInBase","type":"uint128"},{"internalType":"uint128","name":"totalSharesLastUpdate","type":"uint128"},{"internalType":"uint96","name":"exchangeRate","type":"uint96"},{"internalType":"uint16","name":"allowedExchangeRateChangeUpper","type":"uint16"},{"internalType":"uint16","name":"allowedExchangeRateChangeLower","type":"uint16"},{"internalType":"uint64","name":"lastUpdateTimestamp","type":"uint64"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"uint24","name":"minimumUpdateDelayInSeconds","type":"uint24"},{"internalType":"uint16","name":"managementFee","type":"uint16"},{"internalType":"uint16","name":"performanceFee","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"base","outputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"feeAsset","type":"address"}],"name":"claimFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRate","outputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"quote","type":"address"}],"name":"getRateInQuote","outputs":[{"internalType":"uint256","name":"rateInQuote","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"quote","type":"address"}],"name":"getRateInQuoteSafe","outputs":[{"internalType":"uint256","name":"rateInQuote","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRateSafe","outputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"name":"rateProviderData","outputs":[{"internalType":"bool","name":"isPeggedToBase","type":"bool"},{"internalType":"contract IRateProvider","name":"rateProvider","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"resetHighwaterMark","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"bool","name":"isPeggedToBase","type":"bool"},{"internalType":"address","name":"rateProvider","type":"address"}],"name":"setRateProviderData","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint24","name":"minimumUpdateDelayInSeconds","type":"uint24"}],"name":"updateDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint96","name":"newExchangeRate","type":"uint96"}],"name":"updateExchangeRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"allowedExchangeRateChangeLower","type":"uint16"}],"name":"updateLower","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"managementFee","type":"uint16"}],"name":"updateManagementFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payoutAddress","type":"address"}],"name":"updatePayoutAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"performanceFee","type":"uint16"}],"name":"updatePerformanceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"allowedExchangeRateChangeUpper","type":"uint16"}],"name":"updateUpper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"contract BoringVault","name":"","type":"address"}],"stateMutability":"view","type":"function"}]'),z2=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract Authority","name":"_auth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AtomicQueue__Paused","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__RequestDeadlineExceeded","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestAccountantOfferMismatch","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestCannotCastToUint88","type":"error"},{"inputs":[{"internalType":"uint256","name":"deadline","type":"uint256"}],"name":"AtomicQueue__SafeRequestDeadlineExceeded","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestDiscountTooLarge","type":"error"},{"inputs":[{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"uint256","name":"offerAllowance","type":"uint256"}],"name":"AtomicQueue__SafeRequestInsufficientOfferAllowance","type":"error"},{"inputs":[{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"uint256","name":"offerBalance","type":"uint256"}],"name":"AtomicQueue__SafeRequestOfferAmountGreaterThanOfferBalance","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestOfferAmountZero","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__UserNotInSolve","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__UserRepeated","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__ZeroOfferAmount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"offerToken","type":"address"},{"indexed":true,"internalType":"address","name":"wantToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"offerAmountSpent","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"wantAmountReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"AtomicRequestFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"offerToken","type":"address"},{"indexed":true,"internalType":"address","name":"wantToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"deadline","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"minPrice","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"AtomicRequestUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[],"name":"MAX_DISCOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"}],"name":"getUserAtomicRequest","outputs":[{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"address","name":"user","type":"address"},{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"userRequest","type":"tuple"}],"name":"isAtomicRequestValid","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"userRequest","type":"tuple"},{"internalType":"contract AccountantWithRateProviders","name":"accountant","type":"address"},{"internalType":"uint256","name":"discount","type":"uint256"}],"name":"safeUpdateAtomicRequest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"bytes","name":"runData","type":"bytes"},{"internalType":"address","name":"solver","type":"address"}],"name":"solve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"userRequest","type":"tuple"}],"name":"updateAtomicRequest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"contract ERC20","name":"","type":"address"},{"internalType":"contract ERC20","name":"","type":"address"}],"name":"userAtomicRequest","outputs":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"internalType":"address[]","name":"users","type":"address[]"}],"name":"viewSolveMetaData","outputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint8","name":"flags","type":"uint8"},{"internalType":"uint256","name":"assetsToOffer","type":"uint256"},{"internalType":"uint256","name":"assetsForWant","type":"uint256"}],"internalType":"struct AtomicQueue.SolveMetaData[]","name":"metaData","type":"tuple[]"},{"internalType":"uint256","name":"totalAssetsForWant","type":"uint256"},{"internalType":"uint256","name":"totalAssetsToOffer","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"internalType":"address[]","name":"users","type":"address[]"}],"name":"viewVerboseSolveMetaData","outputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"bool","name":"deadlineExceeded","type":"bool"},{"internalType":"bool","name":"zeroOfferAmount","type":"bool"},{"internalType":"bool","name":"insufficientOfferBalance","type":"bool"},{"internalType":"bool","name":"insufficientOfferAllowance","type":"bool"},{"internalType":"uint256","name":"assetsToOffer","type":"uint256"},{"internalType":"uint256","name":"assetsForWant","type":"uint256"}],"internalType":"struct AtomicQueue.VerboseSolveMetaData[]","name":"metaData","type":"tuple[]"},{"internalType":"uint256","name":"totalAssetsForWant","type":"uint256"},{"internalType":"uint256","name":"totalAssetsToOffer","type":"uint256"}],"stateMutability":"view","type":"function"}]'),N3=[{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract BoringVault",name:"boringVault",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"balanceOfInAssets",outputs:[{internalType:"uint256",name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"checkUserDeposit",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"checkUserDepositWithPermit",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"exchangeRate",outputs:[{internalType:"uint256",name:"rate",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"isTellerPaused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"previewDeposit",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"totalAssets",outputs:[{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"uint256",name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"userUnlockTime",outputs:[{internalType:"uint256",name:"time",type:"uint256"}],stateMutability:"view",type:"function"}],V2=JSON.parse('[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[],"name":"Actions_ZeroAddress","type":"error"},{"inputs":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[],"name":"FeeGreaterThanMaximum","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NoDepositorSet","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[],"name":"PayloadTooLarge","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[],"name":"WrongChainId","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"inputs":[],"name":"ZeroAmount","type":"error"},{"inputs":[],"name":"ZeroDepositAmount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"index","type":"uint256"},{"components":[{"internalType":"bytes","name":"permitPayload","type":"bytes"},{"internalType":"bytes","name":"depositPayload","type":"bytes"},{"internalType":"bytes","name":"mintPayload","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}],"indexed":false,"internalType":"struct StakeAndBake.StakeAndBakeData","name":"data","type":"tuple"}],"name":"BatchStakeAndBakeReverted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"depositor","type":"address"}],"name":"DepositorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"oldFee","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"newFee","type":"uint256"}],"name":"FeeChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"CLAIMER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FEE_OPERATOR_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAXIMUM_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"permitPayload","type":"bytes"},{"internalType":"bytes","name":"depositPayload","type":"bytes"},{"internalType":"bytes","name":"mintPayload","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}],"internalType":"struct StakeAndBake.StakeAndBakeData[]","name":"data","type":"tuple[]"}],"name":"batchStakeAndBake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getStakeAndBakeDepositor","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getStakeAndBakeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"lbtc_","type":"address"},{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"operator_","type":"address"},{"internalType":"uint256","name":"fee_","type":"uint256"},{"internalType":"address","name":"claimer_","type":"address"},{"internalType":"address","name":"pauser_","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"depositor","type":"address"}],"name":"setDepositor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"fee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"permitPayload","type":"bytes"},{"internalType":"bytes","name":"depositPayload","type":"bytes"},{"internalType":"bytes","name":"mintPayload","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}],"internalType":"struct StakeAndBake.StakeAndBakeData","name":"data","type":"tuple"}],"name":"stakeAndBake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"}]'),H2=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_vault","type":"address"},{"internalType":"address","name":"_accountant","type":"address"},{"internalType":"address","name":"_weth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"TellerWithMultiAssetSupport__AssetNotSupported","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__BadDepositHash","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__DualDeposit","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__MinimumAssetsNotMet","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__MinimumMintNotMet","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__Paused","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__PermitFailedAndAllowanceTooLow","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__ShareLockPeriodTooLong","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__SharePremiumTooLarge","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__SharesAreLocked","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__SharesAreUnLocked","type":"error"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"TellerWithMultiAssetSupport__TransferDenied","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__ZeroAssets","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__ZeroShares","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AllowFrom","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AllowOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AllowTo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"bool","name":"allowDeposits","type":"bool"},{"indexed":false,"internalType":"bool","name":"allowWithdraws","type":"bool"},{"indexed":false,"internalType":"uint16","name":"sharePremium","type":"uint16"}],"name":"AssetDataUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"depositAmount","type":"uint256"}],"name":"BulkDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"shareAmount","type":"uint256"}],"name":"BulkWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DenyFrom","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DenyOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DenyTo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"nonce","type":"uint256"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"depositAsset","type":"address"},{"indexed":false,"internalType":"uint256","name":"depositAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shareAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"depositTimestamp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shareLockPeriodAtTimeOfDeposit","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"nonce","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"depositHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DepositRefunded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[],"name":"accountant","outputs":[{"internalType":"contract AccountantWithRateProviders","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"name":"assetData","outputs":[{"internalType":"bool","name":"allowDeposits","type":"bool"},{"internalType":"bool","name":"allowWithdraws","type":"bool"},{"internalType":"uint16","name":"sharePremium","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"beforeTransfer","outputs":[],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"minimumMint","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"bulkDeposit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"withdrawAsset","type":"address"},{"internalType":"uint256","name":"shareAmount","type":"uint256"},{"internalType":"uint256","name":"minimumAssets","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"bulkWithdraw","outputs":[{"internalType":"uint256","name":"assetsOut","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"minimumMint","type":"uint256"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"depositNonce","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"minimumMint","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"depositWithPermit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"fromDenyList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nativeWrapper","outputs":[{"internalType":"contract WETH","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"operatorDenyList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"publicDepositHistory","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"shareAmount","type":"uint256"},{"internalType":"uint256","name":"depositTimestamp","type":"uint256"},{"internalType":"uint256","name":"shareLockUpPeriodAtTimeOfDeposit","type":"uint256"}],"name":"refundDeposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint64","name":"_shareLockPeriod","type":"uint64"}],"name":"setShareLockPeriod","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"shareLockPeriod","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"shareUnlockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"toDenyList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"bool","name":"allowDeposits","type":"bool"},{"internalType":"bool","name":"allowWithdraws","type":"bool"},{"internalType":"uint16","name":"sharePremium","type":"uint16"}],"name":"updateAssetData","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"contract BoringVault","name":"","type":"address"}],"stateMutability":"view","type":"function"}]'),Ns=[X.ethereum,X.base,X.binanceSmartChain,X.corn],vn=l=>Ns.includes(l),Ad={[X.ethereum]:"ethereum",[X.base]:"base",[X.corn]:"corn",[X.binanceSmartChain]:"bnb"},O3={ethereum:X.ethereum,base:X.base,corn:X.corn,bnb:X.binanceSmartChain},xd=[X.ethereum,X.binanceSmartChain,X.binanceSmartChainTestnet,X.holesky],Ed=l=>xd.includes(l),D3=X.ethereum,F3="0x5401b8620E5FB570064CA9114fd1e135fd77D57c",U3="0x28634D0c5edC67CF2450E74deA49B90a4FF93dCE",L3="0x5232bc0F5999f8dA604c42E1748A13a170F94A1B",z3={[X.ethereum]:{abi:H2,address:"0x4E8f5128F473C6948127f9Cbca474a6700F99bab",chainId:X.ethereum},[X.base]:{abi:H2,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:X.base},[X.binanceSmartChain]:{abi:H2,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:X.binanceSmartChain},[X.corn]:{abi:H2,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:X.corn}},V3={[X.ethereum]:{abi:V2,address:"0xC8bbF6153D7Ba105f1399D992ebd32B0541996ef",chainId:X.ethereum},[X.binanceSmartChain]:{abi:V2,address:"0xC8bbF6153D7Ba105f1399D992ebd32B0541996ef",chainId:X.binanceSmartChain},[X.holesky]:{abi:V2,address:"0x4A3cD83CEbb91E0Cd31EdA2Ee0F4AebfcCFCbBb6",chainId:X.holesky},[X.binanceSmartChainTestnet]:{abi:V2,address:"0x72143309A662bDB4aad5cA65Ab59eD8977D047C5",chainId:X.binanceSmartChainTestnet}},H3={[X.ethereum]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum},[X.base]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum},[X.binanceSmartChain]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum},[X.corn]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum}};var Ge=(l=>(l.Veda="veda",l))(Ge||{});const vt={veda:{defaultChainId:D3,chains:Ns,tokens:{[U0.LBTC]:Ns,[U0.BTCB]:[X.binanceSmartChain],[U0.cbBTC]:[X.ethereum,X.base],[U0.eBTC]:[X.ethereum],[U0.wBTC]:[X.ethereum],[U0.wBTCN]:[X.corn]},stakeAndBakeChains:xd,decimals:8,vaultContract:{abi:S3,address:F3},accountantContract:{abi:R3,address:U3},lensContract:{abi:N3,address:L3},spenderContracts:V3,tellerContracts:z3,withdrawQueueContracts:H3,queueWithdrawDiscountPercent:"0.01",queueWithdrawDaysValid:"3"}};async function j3({vaultKey:l=Ge.Veda,chainId:f,rpcUrl:u}){const v=vt[l];if(!v)throw new Error(`Unknown vault key: ${l}`);if(!Ed(f))throw new Error(`Unsupported chain id: ${f}. Please switch to one of the supported chains: ${v.stakeAndBakeChains.join(", ")}`);const t=v.spenderContracts[f];if(!t)throw new Error("Could not retrieve the stake and bake contract.");try{const d=Pe({chainId:f,rpcUrl:u}),B=await wr({abi:t.abi,address:t.address,client:d}).read.getStakeAndBakeFee();return Ht(String(B))}catch(d){const C=Je(d);throw new Error(C)}}async function Vi({account:l,spender:f,amount:u,chainId:v,provider:t,rpcUrl:d,env:C}){const B=Pe({chainId:v,rpcUrl:d}),N=Qe({chainId:v,provider:t}),U=await _e(U0.LBTC,v,C),z=u2(u).toNumber(),{request:j}=await B.simulateContract({address:U.address,account:l,chain:gt[v],abi:U.abi,functionName:"approve",args:[f,BigInt(z)]});return await N.writeContract(j)}const Cd=async(l,f,u)=>{const v=await l.estimateFeesPerGas(),t=V0(String(v.maxFeePerGas)).dividedBy(String(v.maxPriorityFeePerGas)),d=u||v.maxPriorityFeePerGas,C=u?BigInt(V0(String(d)).multipliedBy(t).toFixed(0)):v.maxFeePerGas;return{gas:await l.estimateContractGas(f),maxFeePerGas:C,maxPriorityFeePerGas:d}};function q3(l){return l.startsWith("0x")}function Be(l){return q3(l)?l:`0x${l}`}async function G3({data:l,proofSignature:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C}){return Pd({data:l,proofSignature:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:U0.LBTC})}async function Pd({data:l,proofSignature:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:B=U0.LBTC}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(B))throw new Error("Unsupported token");if(B===U0.BTCK&&!o2(v))throw new Error("Operation not permitted");const N=await _e(B,v,C),U=await Td({chainId:v,rawPayload:l,env:C,token:B});if(U!==Fa.REPORTED)switch(U){case Fa.UNREPORTED:throw new Error("The deposit cannot be claimed because it is unreported or potentially still pending, please try again later.");case Fa.WITHDRAWN:throw new Error("The deposit cannot be claimed because it is withdrawn already.");default:throw new Error("The deposit cannot be claimed because it is blocked by bridge security.")}const z=Pe({chainId:v,rpcUrl:d,env:C}),j=Qe({chainId:v,provider:t}),q={address:N.address,account:u,chain:gt[v],abi:N.abi,functionName:B===U0.BTCK||B===U0.NativeLBTC?"mintV1":"mint",args:[Be(l),Be(f)]},O=o2(v)?await Cd(z,q,xp("1")):{},{request:_}=await z.simulateContract({...q,...O});return await j.writeContract(_)}async function W3({account:l,chainId:f,provider:u}){const v=Qe({chainId:f,provider:u}),t=`destination chain id is ${f}`;return await v.signMessage({account:l,message:t})}const Z3=1e3,K3=60*Z3,Y3=60*K3,Hi=24*Y3;function Md(){return Date.now()}function kd(l){return Math.round(l/1e3)}async function X3({fee:l,expiry:f=kd(Md()+Hi),account:u,chainId:v,provider:t,env:d}){const C=await _e(U0.LBTC,v,d),B=Qe({chainId:v,provider:t}),N={account:u,domain:{name:"Lombard Staked Bitcoin",version:"1",chainId:v,verifyingContract:C.address},message:{chainId:v,fee:BigInt(V0(l).toFixed()),expiry:f},primaryType:"feeApproval",types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],feeApproval:[{name:"chainId",type:"uint256"},{name:"fee",type:"uint256"},{name:"expiry",type:"uint256"}]}};return{signature:await B.signTypedData(N),typedData:JSON.stringify(N,(z,j)=>typeof j=="bigint"?j.toString():j)}}async function Q3({account:l,expiry:f=kd(Md()+Hi),value:u,vaultKey:v=Ge.Veda,chainId:t,provider:d,rpcUrl:C,env:B}){const N=vt[v];if(!N)throw new Error(`Unknown vault key: ${v}`);if(!Ed(t))throw new Error(`Unsupported chain id: ${t}. Please switch to one of the supported chains: ${N.stakeAndBakeChains.join(", ")}`);const U=await _e(U0.LBTC,t,B),z=Qe({chainId:t,provider:d}),j=N.spenderContracts[t],q=await vd({owner:l,chainId:t,rpcUrl:C}),O={account:l,domain:{name:"Lombard Staked Bitcoin",version:"1",chainId:BigInt(t),verifyingContract:U.address},types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},primaryType:"Permit",message:{owner:l,spender:j.address,value:BigInt(V0(u).toFixed()),nonce:BigInt(q),deadline:BigInt(f)}};return{signature:await z.signTypedData(O),typedData:JSON.stringify(O,(J,s0)=>typeof s0=="bigint"?s0.toString():s0)}}async function J3({btcAddress:l,amount:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C}){return Id({btcAddress:l,amount:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:U0.LBTC})}async function Id({btcAddress:l,amount:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:B=U0.LBTC}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(B))throw new Error("Unsupported token");if(B===U0.BTCK&&!o2(v))throw new Error("Operation not permitted");const N=Al(l,C),U=u2(f).toNumber(),z=Pe({chainId:v,rpcUrl:d,env:C}),j=Qe({provider:t,chainId:v}),q=await _e(B,v,C),O={abi:q.abi,address:q.address,account:u,chain:gt[v],functionName:Pr(q.abi)||B===U0.NativeLBTC?"redeemForBtc":"redeem",args:[N,BigInt(U)]},_=o2(v)?await Cd(z,O,xp("1")):{},{request:J}=await z.simulateContract(O);return await j.writeContract({...J,..._})}async function Bd({chainId:l,rpcUrl:f,vaultKey:u=Ge.Veda}){const v=vt[u];if(!v)throw new Error(`Unknown vault key: ${u}`);if(!vn(l))throw new Error(`Unsupported chain id: ${l}. Please switch to one of the supported chains: ${v.chains.join(", ")}`);try{const t=Pe({chainId:l,rpcUrl:f}),C=await wr({abi:v.accountantContract.abi,address:v.accountantContract.address,client:t}).read.getRate();return Ht(String(C))}catch(t){const d=Je(t);throw new Error(d)}}async function _3({chainId:l,rpcUrl:f,address:u,vaultKey:v=Ge.Veda}){const t=vt[v];if(!t)throw new Error(`Unknown vault key: ${v}`);if(!vn(l))throw new Error(`Unsupported chain id: ${l}. Please switch to one of the supported chains: ${t.chains.join(", ")}`);try{const d=Pe({chainId:l,rpcUrl:f}),B=await wr({abi:t.lensContract.abi,address:t.lensContract.address,client:d}).read.balanceOf([u,t.vaultContract.address]),N=Ht(String(B)),U=await Bd({chainId:l,rpcUrl:f,vaultKey:v});return{balance:N,exchangeRate:U,balanceLbtc:N.multipliedBy(U)}}catch(d){const C=Je(d);throw new Error(C)}}V0(0);V0(1);function kr(l){return BigInt(V0(l).toFixed())}async function $3({amount:l,approve:f=!0,token:u=U0.LBTC,vaultKey:v=Ge.Veda,account:t,chainId:d,provider:C,rpcUrl:B,env:N}){const U=vt[v];if(!U)throw new Error(`Unknown vault key: ${v}`);if(!vn(d))throw new Error(`Unsupported chain id: ${d}. Please switch to one of the supported chains: ${U.chains.join(", ")}`);const z=Pe({chainId:d,rpcUrl:B}),j=Qe({provider:C,chainId:d}),q=await A2(u,d,N,B);if(!q)throw new Error(`Unknown deposit token: ${u}`);const O=V0(l),_=kr(Mr(O,q.decimals)),J=await z.readContract({address:q.address,abi:q.abi,functionName:"allowance",args:[t,U.vaultContract.address]}),s0=Fe(String(J),q.decimals),o0=await z.readContract({address:q.address,abi:q.abi,functionName:"balanceOf",args:[t]}),p0=Fe(String(o0),q.decimals);if(O.isGreaterThan(p0))throw new Error(`The deposit amount exceeds the account's balance.
45
+ - `).slice(1);return{...v,...U,...t?{chainId:Number(t)}:{},...d?{expirationTime:new Date(d)}:{},...C?{issuedAt:new Date(C)}:{},...B?{notBefore:new Date(B)}:{},...N?{requestId:N}:{},...z?{resources:z}:{},...f?{scheme:f}:{},...u?{statement:u}:{}}}const Mb=/^(?:(?<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)?/,kb=/(?: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>.+))?/;function Ib(l){const{address:f,domain:u,message:v,nonce:t,scheme:d,time:C=new Date}=l;if(u&&v.domain!==u||t&&v.nonce!==t||d&&v.scheme!==d||v.expirationTime&&C>=v.expirationTime||v.notBefore&&C<v.notBefore)return!1;try{if(!v.address||!Re(v.address,{strict:!1})||f&&!g2(v.address,f))return!1}catch{return!1}return!0}async function Bb(l,f){const{address:u,domain:v,message:t,nonce:d,scheme:C,signature:B,time:N=new Date,...U}=f,z=Pb(t);if(!z.address||!Ib({address:u,domain:v,message:z,nonce:d,scheme:C,time:N}))return!1;const q=vp(t);return Si(l,{address:z.address,hash:q,signature:B,...U})}function Sb(l){return{call:f=>w2(l,f),createAccessList:f=>lp(l,f),createBlockFilter:()=>Uf(l),createContractEventFilter:f=>ii(l,f),createEventFilter:f=>yp(l,f),createPendingTransactionFilter:()=>fp(l),estimateContractGas:f=>F4(l,f),estimateGas:f=>ci(l,f),getBalance:f=>D4(l,f),getBlobBaseFee:()=>Lf(l),getBlock:f=>Ut(l,f),getBlockNumber:f=>v2(l,f),getBlockTransactionCount:f=>zf(l,f),getBytecode:f=>Jo(l,f),getChainId:()=>ga(l),getCode:f=>Jo(l,f),getContractEvents:f=>mi(l,f),getEip712Domain:f=>Hf(l,f),getEnsAddress:f=>vf(l,f),getEnsAvatar:f=>Of(l,f),getEnsName:f=>Df(l,f),getEnsResolver:f=>Ff(l,f),getEnsText:f=>cp(l,f),getFeeHistory:f=>Gf(l,f),estimateFeesPerGas:f=>c5(l,f),getFilterChanges:f=>hr(l,f),getFilterLogs:f=>Wf(l,f),getGasPrice:()=>pi(l),getLogs:f=>fi(l,f),getProof:f=>pm(l,f),estimateMaxPriorityFeePerGas:f=>d5(l,f),getStorageAt:f=>dm(l,f),getTransaction:f=>ki(l,f),getTransactionConfirmations:f=>cm(l,f),getTransactionCount:f=>di(l,f),getTransactionReceipt:f=>Es(l,f),multicall:f=>lm(l,f),prepareTransactionRequest:f=>yr(l,f),readContract:f=>zt(l,f),sendRawTransaction:f=>xi(l,f),simulate:f=>Cs(l,f),simulateBlocks:f=>Cs(l,f),simulateCalls:f=>jm(l,f),simulateContract:f=>_4(l,f),verifyMessage:f=>wb(l,f),verifySiweMessage:f=>Bb(l,f),verifyTypedData:f=>vb(l,f),uninstallFilter:f=>Tr(l,f),waitForTransactionReceipt:f=>Ab(l,f),watchBlocks:f=>xb(l,f),watchBlockNumber:f=>Kp(l,f),watchContractEvent:f=>$4(l,f),watchEvent:f=>Eb(l,f),watchPendingTransactions:f=>Cb(l,f)}}function Rb(l){const{key:f="public",name:u="Public Client"}=l;return ip({...l,key:f,name:u,type:"publicClient"}).extend(Sb)}async function Yp(l,{chain:f}){const{id:u,name:v,nativeCurrency:t,rpcUrls:d,blockExplorers:C}=f;await l.request({method:"wallet_addEthereumChain",params:[{chainId:E0(u),chainName:v,nativeCurrency:t,rpcUrls:d.default.http,blockExplorerUrls:C?Object.values(C).map(({url:B})=>B):void 0}]},{dedupe:!0,retryCount:0})}function Nb(l,f){const{abi:u,args:v,bytecode:t,...d}=f,C=br({abi:u,args:v,bytecode:t});return gr(l,{...d,...d.authorizationList?{to:null}:{},data:C})}async function Ob(l){var u;return((u=l.account)==null?void 0:u.type)==="local"?[l.account.address]:(await l.request({method:"eth_accounts"},{dedupe:!0})).map(v=>y2(v))}async function Db(l,f={}){const{account:u=l.account,chainId:v}=f,t=u?Ce(u):void 0,d=v?[t==null?void 0:t.address,[E0(v)]]:[t==null?void 0:t.address],C=await l.request({method:"wallet_getCapabilities",params:d}),B={};for(const[N,U]of Object.entries(C)){B[Number(N)]={};for(let[z,j]of Object.entries(U))z==="addSubAccount"&&(z="unstable_addSubAccount"),B[Number(N)][z]=j}return typeof v=="number"?B[v]:B}async function Fb(l){return await l.request({method:"wallet_getPermissions"},{dedupe:!0})}async function Xp(l,f){var N;const{account:u=l.account,chainId:v,nonce:t}=f;if(!u)throw new jn({docsPath:"/docs/eip7702/prepareAuthorization"});const d=Ce(u),C=(()=>{if(f.executor)return f.executor==="self"?f.executor:Ce(f.executor)})(),B={address:f.contractAddress??f.address,chainId:v,nonce:t};return typeof B.chainId>"u"&&(B.chainId=((N=l.chain)==null?void 0:N.id)??await H0(l,ga,"getChainId")({})),typeof B.nonce>"u"&&(B.nonce=await H0(l,di,"getTransactionCount")({address:d.address,blockTag:"pending"}),(C==="self"||C!=null&&C.address&&g2(C.address,d.address))&&(B.nonce+=1)),B}async function Ub(l){return(await l.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(u=>Ju(u))}async function Lb(l,f){return l.request({method:"wallet_requestPermissions",params:[f]},{retryCount:0})}async function zb(l,f){const{id:u}=f;await l.request({method:"wallet_showCallsStatus",params:[u]})}async function Vb(l,f){const{account:u=l.account}=f;if(!u)throw new jn({docsPath:"/docs/eip7702/signAuthorization"});const v=Ce(u);if(!v.signAuthorization)throw new j2({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:v.type});const t=await Xp(l,f);return v.signAuthorization(t)}async function Hb(l,{account:f=l.account,message:u}){if(!f)throw new jn({docsPath:"/docs/actions/wallet/signMessage"});const v=Ce(f);if(v.signMessage)return v.signMessage({message:u});const t=typeof u=="string"?aa(u):u.raw instanceof Uint8Array?Ue(u.raw):u.raw;return l.request({method:"personal_sign",params:[t,v.address]},{retryCount:0})}async function jb(l,f){var U,z,j,q;const{account:u=l.account,chain:v=l.chain,...t}=f;if(!u)throw new jn({docsPath:"/docs/actions/wallet/signTransaction"});const d=Ce(u);Gn({account:d,...f});const C=await H0(l,ga,"getChainId")({});v!==null&&n4({currentChainId:C,chain:v});const B=(v==null?void 0:v.formatters)||((U=l.chain)==null?void 0:U.formatters),N=((z=B==null?void 0:B.transactionRequest)==null?void 0:z.format)||ba;return d.signTransaction?d.signTransaction({...t,chainId:C},{serializer:(q=(j=l.chain)==null?void 0:j.serializers)==null?void 0:q.transaction}):await l.request({method:"eth_signTransaction",params:[{...N(t),chainId:E0(C),from:d.address}]},{retryCount:0})}async function qb(l,f){const{account:u=l.account,domain:v,message:t,primaryType:d}=f;if(!u)throw new jn({docsPath:"/docs/actions/wallet/signTypedData"});const C=Ce(u),B={EIP712Domain:wp({domain:v}),...f.types};if(gp({domain:v,message:t,primaryType:d,types:B}),C.signTypedData)return C.signTypedData({domain:v,message:t,primaryType:d,types:B});const N=$f({domain:v,message:t,primaryType:d,types:B});return l.request({method:"eth_signTypedData_v4",params:[C.address,N]},{retryCount:0})}async function Gb(l,{id:f}){await l.request({method:"wallet_switchEthereumChain",params:[{chainId:E0(f)}]},{retryCount:0})}async function Wb(l,f){return await l.request({method:"wallet_watchAsset",params:f},{retryCount:0})}function Zb(l){return{addChain:f=>Yp(l,f),deployContract:f=>Nb(l,f),getAddresses:()=>Ob(l),getCallsStatus:f=>rp(l,f),getCapabilities:f=>Db(l,f),getChainId:()=>ga(l),getPermissions:()=>Fb(l),prepareAuthorization:f=>Xp(l,f),prepareTransactionRequest:f=>yr(l,f),requestAddresses:()=>Ub(l),requestPermissions:f=>Lb(l,f),sendCalls:f=>nf(l,f),sendRawTransaction:f=>xi(l,f),sendTransaction:f=>gr(l,f),showCallsStatus:f=>zb(l,f),signAuthorization:f=>Vb(l,f),signMessage:f=>Hb(l,f),signTransaction:f=>jb(l,f),signTypedData:f=>qb(l,f),switchChain:f=>Gb(l,f),waitForCallsStatus:f=>af(l,f),watchAsset:f=>Wb(l,f),writeContract:f=>tp(l,f)}}function Kb(l){const{key:f="wallet",name:u="Wallet Client",transport:v}=l;return ip({...l,key:f,name:u,transport:v,type:"walletClient"}).extend(Zb)}function Qe({provider:l,chainId:f}){const u=gt[f],v=pf(l);return Kb({chain:u,transport:v})}const Qp=Ne({id:747474,name:"Katana",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.katana.network"],webSocket:["wss://rpc.katana.network"]}},blockExplorers:{default:{name:"Katana Explorer",url:"https://explorer.katanarpc.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1898013}}}),Jp=Ne({id:129399,name:"Tatara",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.tatara.katanarpc.com"]}},blockExplorers:{default:{name:"Tatara Explorer",url:"https://explorer.tatara.katana.network"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:7771207}}}),_p=Ne({id:239,name:"TAC",nativeCurrency:{decimals:18,name:"TAC",symbol:"TAC"},rpcUrls:{default:{http:["https://rpc.tac.build"]}},blockExplorers:{default:{name:"TAC Explorer",url:"https://explorer.tac.build"}}}),Yb="sui:devnet",Ri="sui:testnet",Xb="sui:localnet",Ni="sui:mainnet",Oi="solana:mainnet-beta",$p="solana:testnet",Di="solana:devnet",X={ethereum:1,base:8453,berachain:80094,binanceSmartChain:56,corn:21e6,etherlink:42793,katana:747474,morph:2818,sonic:146,swell:1923,tac:239,baseSepoliaTestnet:84532,berachainBartioTestnet:80084,binanceSmartChainTestnet:97,holesky:17e3,katanaTatara:129399,morphHolesky:2810,sepolia:11155111,sonicBlazeTestnet:57054},gt={[X.ethereum]:Z8,[X.base]:ry,[X.berachain]:iy,[X.binanceSmartChain]:uy,[X.corn]:cy,[X.etherlink]:ly,[X.katana]:Qp,[X.morph]:K8,[X.sonic]:Q8,[X.swell]:_8,[X.tac]:_p,[X.baseSepoliaTestnet]:sy,[X.berachainBartioTestnet]:oy,[X.binanceSmartChainTestnet]:py,[X.holesky]:yy,[X.katanaTatara]:Jp,[X.morphHolesky]:Y8,[X.sepolia]:X8,[X.sonicBlazeTestnet]:J8},o2=l=>[X.katana,X.katanaTatara].includes(l);function ed(l){return Object.values(X).includes(l)}async function Qb({provider:l,chainId:f}){const u=Qe({provider:l,chainId:X.ethereum});await Yp(u,{chain:gt[f]})}const me={eth:"DESTINATION_BLOCKCHAIN_ETHEREUM",ethOld:"BLOCKCHAIN_ETHEREUM",base:"DESTINATION_BLOCKCHAIN_BASE",baseOld:"BLOCKCHAIN_BASE",bsc:"DESTINATION_BLOCKCHAIN_BSC",bscOld:"BLOCKCHAIN_BSC",katana:"DESTINATION_BLOCKCHAIN_KATANA",katanaOld:"BLOCKCHAIN_KATANA",sui:"DESTINATION_BLOCKCHAIN_SUI",suiOld:"BLOCKCHAIN_SUI",sonic:"DESTINATION_BLOCKCHAIN_SONIC",sonicOld:"BLOCKCHAIN_SONIC",solana:"DESTINATION_BLOCKCHAIN_SOLANA",solanaOld:"BLOCKCHAIN_SOLANA"};function Er(l){if(l===X.ethereum||l===X.holesky||l===X.sepolia)return me.eth;if(l===X.base||l===X.baseSepoliaTestnet)return me.base;if(l===X.binanceSmartChain||l===X.binanceSmartChainTestnet)return me.bsc;if(l===X.katana||l===X.katanaTatara)return me.katana;if(l===X.sonic||l===X.sonicBlazeTestnet)return me.sonic;if(l===Ri||l===Ni)return me.sui;if(l===Di||l===$p||l===Oi)return me.solana;throw new Error(`Unknown chain ID: ${l}`)}const td=l=>l===ue.prod?X.ethereum:X.holesky,nd=l=>l===ue.prod?X.binanceSmartChain:X.binanceSmartChainTestnet,ad=l=>l===ue.prod?X.base:X.baseSepoliaTestnet,rd=l=>l===ue.prod?Ni:Ri,sd=l=>l===ue.prod?X.sonic:X.sonicBlazeTestnet,id=l=>l===ue.prod?Oi:Di;function Fi(l,f=gn){switch(l){case me.eth:case me.ethOld:return td(f);case me.base:case me.baseOld:return ad(f);case me.bsc:case me.bscOld:return nd(f);case me.katana:case me.katanaOld:return f==="prod"?X.katana:X.katanaTatara;case me.sui:case me.suiOld:return rd(f);case me.sonic:case me.sonicOld:return sd(f);case me.solana:case me.solanaOld:return id(f);default:return X.ethereum}}function Je(l){return typeof l=="string"?l:(u=>{var v;return!!(u&&typeof u=="object"&&"data"in u&&u.data&&typeof u.data=="object"&&"message"in u.data&&((v=u==null?void 0:u.data)!=null&&v.message)&&typeof u.data.message=="string")})(l)?l.data.message:l instanceof Error?Jb(l):_b(l)}function Jb(l){return l.response?l.response.data.message:l.message}function _b(l){return l&&typeof l=="object"&&"message"in l&&typeof l.message=="string"?l.message:"Unknown error"}class Ui extends Error{constructor(f,u,v){const t=`Could not determine the ${f} contract address for given chain id: ${u} (env: ${v||"undefined"})`;super(t),this.token=f,this.chainId=u}}var U0=(l=>(l.LBTC="LBTC",l.BTCK="BTCK",l.NativeLBTC="NativeLBTC",l.BTCB="BTCB",l.cbBTC="cbBTC",l.eBTC="eBTC",l.wBTC="wBTC",l.wBTCN="wBTCN",l))(U0||{});const od={TOKEN_SYMBOL_STLBTC:"LBTC"},Cr={LBTC:{[ue.prod]:{[X.ethereum]:"0x8236a87084f8b84306f72007f36f2618a5634494",[X.base]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.berachain]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.binanceSmartChain]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.corn]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.etherlink]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.katana]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.morph]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.sonic]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.swell]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",[X.tac]:"0xecAc9C5F704e954931349Da37F60E39f515c11c1"},[ue.stage]:{[X.baseSepoliaTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[X.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.binanceSmartChainTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[X.holesky]:"0xED7bfd5C1790576105Af4649817f6d35A75CD818",[X.katanaTatara]:"0x731eFa688F3679688cf60A3993b8658138953ED6",[X.sepolia]:"0xc47e4b3124597fdf8dd07843d4a7052f2ee80c30",[X.sonicBlazeTestnet]:"0x731eFa688F3679688cf60A3993b8658138953ED6"},[ue.testnet]:{[X.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.binanceSmartChainTestnet]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5",[X.holesky]:"0x38A13AB20D15ffbE5A7312d2336EF1552580a4E2",[X.sepolia]:"0xc47e4b3124597fdf8dd07843d4a7052f2ee80c30",[X.sonicBlazeTestnet]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5",[X.katanaTatara]:"0x107Fc7d90484534704dD2A9e24c7BD45DB4dD1B5"},[ue.dev]:{[X.sepolia]:"0x93283b6B889C591893dB0dc93baD71656D5d8923",[X.baseSepoliaTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.berachainBartioTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.binanceSmartChainTestnet]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30",[X.katanaTatara]:"0xc47e4b3124597FDF8DD07843D4a7052F2eE80C30"}},BTCB:{[ue.prod]:{[X.binanceSmartChain]:"0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c"}},NativeLBTC:{[ue.dev]:{[X.binanceSmartChainTestnet]:"0xea3F66E5f2928dB9673103BfA01a2153A57a8050",[X.sepolia]:"0x195219A262423d209E126BD21cf4F4F9AA796927"},[ue.stage]:{[X.sepolia]:"0x600e4006278EB11FA1691cA0FE6C5fcfC4992d58"}},BTCK:{[ue.prod]:{[X.katana]:"0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072",[X.katanaTatara]:void 0},[ue.stage]:{[X.katana]:void 0,[X.katanaTatara]:"0x600e4006278EB11FA1691cA0FE6C5fcfC4992d58"},[ue.testnet]:{[X.katana]:void 0,[X.katanaTatara]:"0x20eA7b8ABb4B583788F1DFC738C709a2d9675681"},[ue.dev]:{[X.katana]:void 0,[X.katanaTatara]:"0xA74D838817f3098166d74a141b7d241efB15F42c"}},eBTC:{[ue.prod]:{[X.ethereum]:"0x657e8c867d8b37dcc18fa4caead9c45eb088c642"}},wBTC:{[ue.prod]:{[X.ethereum]:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599"}},wBTCN:{[ue.prod]:{[X.corn]:"0xda5dDd7270381A7C2717aD10D1c0ecB19e3CDFb2"}}},$b=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowDustLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[],name:"InvalidDustFeeRate",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidInputLength",type:"error"},{inputs:[],name:"InvalidUserSignature",type:"error"},{inputs:[],name:"KnownDestination",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"UnauthorizedAccount",type:"error"},{inputs:[{internalType:"bytes4",name:"action",type:"bytes4"}],name:"UnexpectedAction",type:"error"},{inputs:[],name:"UnknownDestination",type:"error"},{inputs:[{internalType:"uint256",name:"fromChainId",type:"uint256"},{internalType:"address",name:"fromContract",type:"address"}],name:"UnknownOriginContract",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WithdrawalsDisabled",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroChainId",type:"error"},{inputs:[],name:"ZeroContractHash",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BridgeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"claimer",type:"address"},{indexed:!1,internalType:"bool",name:"isClaimer",type:"bool"}],name:"ClaimerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"bool",name:"isMinter",type:"bool"}],name:"MinterUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousPauser",type:"address"},{indexed:!0,internalType:"address",name:"newPauser",type:"address"}],name:"PauserRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"fromAddress",type:"address"},{indexed:!1,internalType:"bytes",name:"scriptPubKey",type:"bytes"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"UnstakeRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"WithdrawalsEnabled",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newClaimer",type:"address"}],name:"addClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newMinter",type:"address"}],name:"addMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newBridge",type:"address"}],name:"changeBridge",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeBurnCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newRate",type:"uint256"}],name:"changeDustFeeRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBurnCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"uint64",name:"burnCommission_",type:"uint64"},{internalType:"address",name:"owner_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"claimer",type:"address"}],name:"isClaimer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"payload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"reinitialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldClaimer",type:"address"}],name:"removeClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldMinter",type:"address"}],name:"removeMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMintFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleWithdrawals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newPauser",type:"address"}],name:"transferPauserRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"fromChain",type:"uint256"},{internalType:"address",name:"fromContract",type:"address"},{internalType:"uint256",name:"toChain",type:"uint256"},{internalType:"address",name:"toContract",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint64",name:"amount",type:"uint64"},{internalType:"bytes32",name:"uniqueActionData",type:"bytes32"}],internalType:"struct Actions.DepositBridgeAction",name:"action",type:"tuple"},{internalType:"bytes32",name:"",type:"bytes32"},{internalType:"bytes",name:"",type:"bytes"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"}],e3=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[],name:"Actions_ZeroAddress",type:"error"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowDustLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[{internalType:"address",name:"expected",type:"address"},{internalType:"address",name:"got",type:"address"}],name:"InvalidDestinationToken",type:"error"},{inputs:[],name:"InvalidDustFeeRate",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidInputLength",type:"error"},{inputs:[],name:"InvalidMintAmount",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"InvalidPayloadSize",type:"error"},{inputs:[],name:"InvalidUserSignature",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"bytes4",name:"action",type:"bytes4"}],name:"UnexpectedAction",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WithdrawalsDisabled",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"BatchMintSkipped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"fromAddress",type:"address"},{indexed:!1,internalType:"bytes",name:"scriptPubKey",type:"bytes"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"UnstakeRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"WithdrawalsEnabled",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"MINTER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PAUSER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeBurnCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newRate",type:"uint256"}],name:"changeDustFeeRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBurnCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"uint64",name:"burnCommission_",type:"uint64"},{internalType:"address",name:"treasury",type:"address"},{internalType:"address",name:"initialOwner",type:"address"},{internalType:"uint48",name:"initialOwnerDelay",type:"uint48"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"payloadHash",type:"bytes32"}],name:"isPayloadUsed",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"payload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMintFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleWithdrawals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],t3=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AssetRouterNotSet",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidMintAmount",type:"error"},{inputs:[{internalType:"uint256",name:"a",type:"uint256"},{internalType:"uint256",name:"b",type:"uint256"}],name:"NonEqualLength",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"RedeemForBtcDisabled",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"UnauthorizedAccount",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newVal",type:"address"},{indexed:!0,internalType:"address",name:"prevVal",type:"address"}],name:"AssetRouterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"BatchMintSkipped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"claimer",type:"address"},{indexed:!1,internalType:"bool",name:"isClaimer",type:"bool"}],name:"ClaimerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"minter",type:"address"},{indexed:!1,internalType:"bool",name:"isMinter",type:"bool"}],name:"MinterUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOperator",type:"address"},{indexed:!0,internalType:"address",name:"newOperator",type:"address"}],name:"OperatorRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousPauser",type:"address"},{indexed:!0,internalType:"address",name:"newPauser",type:"address"}],name:"PauserRoleTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"RedeemFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"RedeemRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"RedeemsForBtcEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newClaimer",type:"address"}],name:"addClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newMinter",type:"address"}],name:"addMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeAssetRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOperator",type:"address"}],name:"changeOperator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newPauser",type:"address"}],name:"changePauser",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newVal",type:"uint256"}],name:"changeRedeemFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"newVal",type:"uint256"}],name:"changeRedeemForBtcMinAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"contract INotaryConsortium",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAssetRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"}],name:"getFeeDigest",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRedeemFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRedeemForBtcMinAmount",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"address",name:"treasury",type:"address"},{internalType:"address",name:"owner_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"claimer",type:"address"}],name:"isClaimer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"minter",type:"address"}],name:"isMinter",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"isNative",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[],name:"isRedeemsEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"rawPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[{internalType:"address",name:"recipient",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"operator",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pauser",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"ratio",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeemForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"reinitialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldClaimer",type:"address"}],name:"removeClaimer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"oldMinter",type:"address"}],name:"removeMinter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toNativeCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleRedeemsForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],iu=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[],name:"Actions_ZeroAddress",type:"error"},{inputs:[],name:"AssetRouterNotSet",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"ERC2612ExpiredSignature",type:"error"},{inputs:[{internalType:"address",name:"signer",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC2612InvalidSigner",type:"error"},{inputs:[],name:"EnforcedPause",type:"error"},{inputs:[],name:"ExpectedPause",type:"error"},{inputs:[],name:"FeeGreaterThanAmount",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"currentNonce",type:"uint256"}],name:"InvalidAccountNonce",type:"error"},{inputs:[{internalType:"bytes4",name:"expected",type:"bytes4"},{internalType:"bytes4",name:"actual",type:"bytes4"}],name:"InvalidAction",type:"error"},{inputs:[{internalType:"address",name:"expected",type:"address"},{internalType:"address",name:"actual",type:"address"}],name:"InvalidDestinationToken",type:"error"},{inputs:[],name:"InvalidFeeApprovalSignature",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[],name:"InvalidMintAmount",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"InvalidPayloadSize",type:"error"},{inputs:[{internalType:"uint256",name:"a",type:"uint256"},{internalType:"uint256",name:"b",type:"uint256"}],name:"NonEqualLength",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"PayloadAlreadyUsed",type:"error"},{inputs:[],name:"RedeemForBtcDisabled",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"WrongChainId",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroAmount",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{inputs:[],name:"ZeroTxId",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newVal",type:"address"},{indexed:!0,internalType:"address",name:"prevVal",type:"address"}],name:"AssetRouterChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"BatchMintSkipped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint64",name:"prevValue",type:"uint64"},{indexed:!0,internalType:"uint64",name:"newValue",type:"uint64"}],name:"BurnCommissionChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"ConsortiumChanged",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"FeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"MintProofConsumed",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"name",type:"string"},{indexed:!1,internalType:"string",name:"symbol",type:"string"}],name:"NameAndSymbolChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"RedeemFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"payload",type:"bytes"}],name:"RedeemRequest",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bool",name:"",type:"bool"}],name:"RedeemsForBtcEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevValue",type:"address"},{indexed:!0,internalType:"address",name:"newValue",type:"address"}],name:"TreasuryAddressChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{inputs:[],name:"Bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"MINTER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PAUSER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"to",type:"address[]"},{internalType:"uint256[]",name:"amount",type:"uint256[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveDust",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeAssetRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeConsortium",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"}],name:"changeNameAndSymbol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeTreasuryAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"consortium",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAssetRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getDustFeeRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"}],name:"getFeeDigest",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMintFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRedeemFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTreasury",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"consortium_",type:"address"},{internalType:"address",name:"treasury",type:"address"},{internalType:"address",name:"initialOwner",type:"address"},{internalType:"uint48",name:"initialOwnerDelay",type:"uint48"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"isNative",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[],name:"isRedeemsEnabled",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"rawPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mintV1",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintV1WithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeemForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleRedeemsForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"}],n3=[X.ethereum,X.base,X.berachain,X.binanceSmartChain,X.corn,X.etherlink,X.katana,X.morph,X.sonic,X.swell],va=l=>n3.includes(l)?ue.prod:ue.stage,Pt="https://bff.prod.lombard-fi.com/multi-rpc/proxy";X.ethereum+"",`${Pt}`,X.base+"",`${Pt}`,X.binanceSmartChain+"",X.corn+"",`${Pt}`,X.katana+"",`${Pt}`,X.sonic+"",`${Pt}`,X.tac+"",`${Pt}`,X.baseSepoliaTestnet+"",`${Pt}`,X.binanceSmartChainTestnet+"",X.holesky+"",`${Pt}`,X.katanaTatara+"",`${Pt}`,X.sepolia+"",`${Pt}`,X.sonicBlazeTestnet+"",`${Pt}`;function a3(l){const{bffApiUrl:f}=fe(l),u=`${f}/multi-rpc/proxy`;return{[X.ethereum]:`${u}/eth`,[X.base]:`${u}/base`,[X.binanceSmartChain]:"https://bsc-dataseed.bnbchain.org",[X.corn]:`${u}/corn_maizenet`,[X.katana]:`${u}/katana`,[X.sonic]:`${u}/sonic_mainnet`,[X.tac]:`${u}/tac`,[X.baseSepoliaTestnet]:`${u}/base_sepolia`,[X.binanceSmartChainTestnet]:"https://bsc-testnet-dataseed.bnbchain.org",[X.holesky]:`${u}/eth_holesky`,[X.katanaTatara]:`${u}/katana_tatara`,[X.sepolia]:`${u}/eth_sepolia`,[X.sonicBlazeTestnet]:`${u}/sonic_blaze_testnet`}}function Pe({chainId:l,rpcUrl:f,env:u}){const v=f?{[l]:f}:void 0,t=u||va(l),C={...a3(t),...v},B=gt[l],N=ff(C[l]);return Rb({chain:B,transport:N})}const ud=[{inputs:[],name:"getAssetRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],pd=ud[0].name;async function ou(l,f,u,v){var B,N;const t=u||gn,d=(N=(B=Cr[l])==null?void 0:B[t])==null?void 0:N[f];if(!d)throw new Ui(l,f,t);const C=Pe({chainId:f,rpcUrl:v,env:t});try{return await C.readContract({abi:ud,address:d,functionName:pd})!==tt}catch{return!1}}const Pr=l=>l.find(u=>u.type==="function"&&u.name===pd)!=null;async function _e(l,f,u){var C,B;const v=u||gn;let t;l===U0.LBTC?await ou(U0.LBTC,f,v)?t=t3:t=$b:l===U0.BTCK?(t=e3,await ou(U0.BTCK,f,v)&&(t=iu)):l===U0.NativeLBTC?t=iu:t=X4;const d=(B=(C=Cr[l])==null?void 0:C[v])==null?void 0:B[f];if(!d)throw new Ui(l,f,v);return{abi:t,address:d,chainId:f}}const dd=async(l,f)=>{const[u,v]=await l.multicall({contracts:[{...f,functionName:"symbol"},{...f,functionName:"decimals"}]});if(u.status==="success"&&v.status==="success")return{address:f.address,abi:f.abi,symbol:String(u.result),decimals:Number(v.result)}};async function A2(l,f,u,v){const t=await _e(l,f,u);if(!t)return;const d=Pe({chainId:f,rpcUrl:v});return dd(d,t)}async function cd(l,f,u){const v=Pe({chainId:f,rpcUrl:u});return dd(v,{abi:X4,address:l,chainId:f})}function Mr(l,f){return V0(l).multipliedBy(V0(10).pow(f)).decimalPlaces(0,V0.ROUND_HALF_UP)}function Fe(l,f){return V0(l).dividedBy(V0(10).pow(f))}const ld="sanctioned_address",r3="api/v1/address/generate",s3="destination address is under sanctions",uu=[U0.LBTC,U0.BTCK,U0.NativeLBTC],i3=[U0.LBTC,U0.BTCK,U0.NativeLBTC];async function o3({address:l,token:f=U0.LBTC,chainId:u,signature:v,eip712Data:t,env:d,referrerCode:C,partnerId:B,captchaToken:N,signatureData:U}){const{baseApiUrl:z}=fe(d),j=Er(u);if(!i3.includes(f))throw new Error(`Unsupported token: ${f}`);let q={};try{uu.includes(f)&&![me.sui,me.solana].includes(j)&&(q={token_address:(await _e(f,u,d)).address})}catch(_){if(_ instanceof Error&&_ instanceof Ui&&uu.includes(f))throw new Error(`Unable to generate BTC deposit address for given token: ${f} in ${u}, reason: ${_.message}`)}const O={to_address:l,to_address_signature:v,to_chain:j,partner_id:B,nonce:0,captcha:N,referrer_code:C,eip_712_data:t,sb_signature_data:U,...q};try{const{data:_}=await ie.post(r3,O,{baseURL:z});return _.address}catch(_){const J=Je(_);if(u3(J))return ld;throw new Error(J)}}function u3(l){return l.includes(s3)}async function yd({address:l,chainId:f,env:u,limit:v,offset:t,partnerId:d}){var z;const{baseApiUrl:C}=fe(u),B=Er(f),N={asc:!1,limit:v,offset:t,referralId:d||"lombard"};for(const[j,q]of Object.entries(N))q===void 0&&delete N[j];const U=`api/v1/address/destination/${B}/${l}`;try{const{data:j}=await ie.get(U,{baseURL:C,params:N});return j.addresses||[]}catch(j){if(ie.isAxiosError(j)){const q=(z=j.response)==null?void 0:z.data.message;throw new Error(q)}}}async function p3({address:l,chainId:f,env:u,partnerId:v,token:t=U0.LBTC}){const d=await yd({address:l,chainId:f,env:u,partnerId:v});let C;if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(t))throw new Error("Unsupported token");let B;try{ed(f)&&(B={token_address:(await _e(t,f,u)).address.toLowerCase(),aux_version:t===U0.BTCK?1:void 0})}catch{}const N=(d||[]).filter(U=>{var j;if(!B)return!U.deposit_metadata.token_address;let z=((j=U.deposit_metadata.token_address)==null?void 0:j.toLowerCase())===B.token_address;return B.aux_version!=null&&(z=z&&U.deposit_metadata.aux_version===B.aux_version),t===U0.LBTC&&(z=z||!U.deposit_metadata.token_address),z});if(N&&N.length>0){const U=N.reduce((z,j)=>j.created_at>z.created_at?j:z,N[0]);U.deprecated||(C=U.btc_address)}if(!C)throw new Error(`No deposit address found for ${l} on chain ${f}`);return C}async function d3(l){return await yd(l)}const fd=8,Li=V0(10).pow(fd);function Ht(l){return V0(l).dividedBy(Li)}function u2(l){return V0(l).multipliedBy(Li).decimalPlaces(0,V0.ROUND_HALF_UP)}var md=(l=>(l.NOTARIZATION_STATUS_UNSPECIFIED="NOTARIZATION_STATUS_UNSPECIFIED",l.NOTARIZATION_STATUS_PENDING="NOTARIZATION_STATUS_PENDING",l.NOTARIZATION_STATUS_SUBMITTED="NOTARIZATION_STATUS_SUBMITTED",l.NOTARIZATION_STATUS_SESSION_APPROVED="NOTARIZATION_STATUS_SESSION_APPROVED",l.NOTARIZATION_STATUS_FAILED="NOTARIZATION_STATUS_FAILED",l))(md||{}),bd=(l=>(l.SESSION_STATE_UNSPECIFIED="SESSION_STATE_UNSPECIFIED",l.SESSION_STATE_PENDING="SESSION_STATE_PENDING",l.SESSION_STATE_COMPLETED="SESSION_STATE_COMPLETED",l.SESSION_STATE_EXPIRED="SESSION_STATE_EXPIRED",l))(bd||{});async function c3({address:l,env:f}){const{baseApiUrl:u}=fe(f),{data:v}=await ie.get(`api/v1/address/outputs-v2/${l}`,{baseURL:u});return((v==null?void 0:v.outputs)??[]).map(l3(f))}function l3(l){return f=>({txid:f.txid,index:f.index??0,blockHeight:f.block_height?Number(f.block_height):void 0,blockTime:f.block_time?Number(f.block_time):void 0,value:Ht(f.value),address:f.address,chainId:Fi(f.to_chain,l),claimedTxId:f.claim_tx,isClaimed:!!f.claim_tx,rawPayload:f.raw_payload,signature:f.proof,isRestricted:!!f.sanctioned,notarizationWaitDur:f.notarization_wait_dur?Number(f.notarization_wait_dur):void 0,payload:f.payload_hash,sessionId:f.session_id,notarizationStatus:f.notarization_status,sessionState:f.session_state,tokenAddress:f.token_address})}const y3=2e-4;async function f3({env:l,chainId:f=X.ethereum,amount:u=u2(1)}){const{baseApiUrl:v}=fe(l),t=Er(f),{data:d}=await ie.get(`api/v1/exchange/rate/${t}`,{baseURL:v,params:{amount:u}}),C=V0(d.amount_out).toNumber(),B=V0(u).dividedBy(d.amount_out).toNumber(),N=u2(y3).toNumber();return{amountOut:C,exchangeRate:B,minAmount:N}}const m3=[U0.LBTC];async function b3({env:l}){const{baseApiUrl:f}=fe(l),u=`${f}/api/v1/ratio`,{data:v}=await ie.get(u);return v.token_ratio.map(C=>({token:od[C.name],tokenBTCRatio:V0(C.ratio),BTCTokenRatio:V0(C.price)})).filter(C=>m3.includes(C.token)).reduce((C,B)=>{const{token:N,...U}=B;return C[B.token]=U,C},{})}async function h3({address:l,chainId:f,env:u}){const{baseApiUrl:v}=fe(u);try{const{data:t}=await ie.get(`${v}/api/v1/claimer/get-user-signature`,{params:{user_destination_address:l,chain_id:f}});return{expirationDate:t==null?void 0:t.expiration_date,hasSignature:t==null?void 0:t.has_signature,isDelayed:t==null?void 0:t.is_delayed}}catch(t){const d=Je(t);throw new Error(d)}}async function T3({address:l,env:f}){var R0,P0,x0,e0,w0,d0,m0,A0;const{baseApiUrl:u,bffApiUrl:v}=fe(f);if(!v||!u)throw new Error(`Could not determine the API endpoint for the provided environment: ${f||gn}`);const t=`${u}/api/v1/referral-system/season-1/points/${l}`,d=`${u}/api/v1/task/okx/user-task-verification?address=${l}&chain=1`,C=`${v}/sentio-api/flash-event-points/${l}`,B=ie.get(t),N=ie.get(d),U=ie.get(C),[{data:z},{data:j},{data:q}]=await Promise.all([B,N,U]),O=yn(j==null?void 0:j.points),_=yn((e0=(x0=(P0=(R0=q==null?void 0:q.flashEvent1Points)==null?void 0:R0.result)==null?void 0:P0.rows)==null?void 0:x0[0])==null?void 0:e0.points),J=yn((A0=(m0=(d0=(w0=q==null?void 0:q.flashEvent2Points)==null?void 0:w0.result)==null?void 0:d0.rows)==null?void 0:m0[0])==null?void 0:A0.totalPoints),s0=_+J,o0=yn(z.holding_points),p0=yn(z.protocol_points),l0=yn(z.referee_points)+yn(z.referrals_points),v0=o0+p0+l0+O+s0,b0=Object.entries(z.protocol_points_map||{}).reduce((N0,[M0,k0])=>(N0[M0]=yn(k0),N0),{});return{holdingPoints:o0,protocolPoints:p0,referralPoints:l0,okxPoints:O,flashEventPoints:s0,totalPoints:v0,protocolPointsBreakdown:b0}}function yn(l,f=0){return Number(l)||f}var hd=(l=>(l.Completed="Completed",l.Pending="Pending",l))(hd||{});async function g3({address:l,env:f="prod",options:u}){const{baseApiUrl:v}=fe(f);if(!l)throw new Error("No address specified.");const t=new URL(`/api/v1/address/unstakes/${l}`,v);u!=null&&u.limit&&t.searchParams.set("limit",u.limit.toString()),u!=null&&u.offset&&t.searchParams.set("offset",u.offset.toString());const{data:{unstakes:d=[]}}=await ie.get(t.toString());return d.map(C=>w3(C,f))}function w3(l,f){const u=Bn.address.fromOutputScript(Buffer.from(l.output_script.replace(/^0x/,""),"hex"),f==="prod"?Bn.networks.bitcoin:Bn.networks.testnet),v=l.payout_txid?"Completed":"Pending";return{txHash:l.tx_hash,chainId:Fi(l.blockchain,f),blockHeight:+l.block_height,unstakeDate:new Date(+l.block_time*1e3),fromAddress:l.from_address,toAddress:u,amount:Ht(l.amount),payoutTxHash:l.payout_txid,payoutTxIndex:l.payout_index?+l.payout_index:void 0,payoutTxStatus:v,sanctioned:l.sanctioned}}async function v3({userDestinationAddress:l,chainId:f,env:u}){const{baseApiUrl:v}=fe(u);try{const{data:t}=await ie.get(`${v}/api/v1/claimer/get-user-stake-and-bake-signature`,{params:{userDestinationAddress:l,chainId:f.toString()}});return{userDestinationAddress:t.user_destination_address,signature:t.signature,expirationDate:t.expiration_date,depositAmount:t.deposit_amount,chainId:t.chain_id}}catch(t){const d=Je(t);throw new Error(`Failed to get user stake and bake signature: ${d}`)}}const A3="api/v1/referral-system/referrer/";async function x3({address:l,signature:f,eip712Data:u,referrerCode:v,env:t}){const{baseApiUrl:d}=fe(t),C={referrer_code:v,signature:f,signature_typed_data:u};try{await ie.post(`${A3}${l}`,C,{baseURL:d});return}catch(B){const N=Je(B);throw new Error(N)}}async function E3({signature:l,typedData:f,address:u,env:v}){const{baseApiUrl:t}=fe(v);try{const{data:d}=await ie.post(`${t}/api/v1/claimer/save-user-signature`,null,{params:{typed_data:f,signature:l,user_destination_address:u}});return d.status}catch(d){const C=Je(d);throw new Error(C)}}async function C3({signature:l,typedData:f,env:u}){const{baseApiUrl:v}=fe(u);try{const{data:t}=await ie.post(`${v}/api/v1/claimer/save-stake-and-bake-signature`,null,{params:{typed_data:f,signature:l}});return t.status}catch(t){const d=Je(t);throw new Error(d)}}const P3=JSON.parse('[{"inputs":[{"internalType":"address","name":"aDefaultAdmin","type":"address"},{"internalType":"address","name":"aPauser","type":"address"},{"internalType":"address","name":"aDepositReporter","type":"address"},{"internalType":"address","name":"aWithdrawalValidator","type":"address"},{"internalType":"uint256","name":"aMaxDeposits","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"uint48","name":"schedule","type":"uint48"}],"name":"AccessControlEnforcedDefaultAdminDelay","type":"error"},{"inputs":[],"name":"AccessControlEnforcedDefaultAdminRules","type":"error"},{"inputs":[{"internalType":"address","name":"defaultAdmin","type":"address"}],"name":"AccessControlInvalidDefaultAdmin","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"}],"name":"AlreadyReported","type":"error"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"},{"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"AlreadyWithdrawn","type":"error"},{"inputs":[],"name":"BadDepositReport","type":"error"},{"inputs":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[],"name":"SameValidationThreshold","type":"error"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"},{"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"WithdrawalFailedValidation","type":"error"},{"anonymous":false,"inputs":[],"name":"DefaultAdminDelayChangeCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint48","name":"newDelay","type":"uint48"},{"indexed":false,"internalType":"uint48","name":"effectSchedule","type":"uint48"}],"name":"DefaultAdminDelayChangeScheduled","type":"event"},{"anonymous":false,"inputs":[],"name":"DefaultAdminTransferCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAdmin","type":"address"},{"indexed":false,"internalType":"uint48","name":"acceptSchedule","type":"uint48"}],"name":"DefaultAdminTransferScheduled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"reportId","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"numDeposits","type":"uint256"}],"name":"DepositsReported","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"numDeposits","type":"uint256"}],"name":"MaxDepositsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldThreshold","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newThreshold","type":"uint256"}],"name":"UpdateValidateThreshold","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"depositID","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"WithdrawalNotValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"depositID","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"WithdrawalValidated","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEPOSIT_REPORTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VALIDATION_GUARDIAN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WITHDRAWAL_VALIDATOR_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"acceptDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"beginDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cancelDefaultAdminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint48","name":"newDelay","type":"uint48"}],"name":"changeDefaultAdminDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"defaultAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdminDelay","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultAdminDelayIncreaseWait","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"}],"name":"depositHistory","outputs":[{"internalType":"enum Bascule.DepositState","name":"status","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingDefaultAdmin","outputs":[{"internalType":"address","name":"newAdmin","type":"address"},{"internalType":"uint48","name":"schedule","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingDefaultAdminDelay","outputs":[{"internalType":"uint48","name":"newDelay","type":"uint48"},{"internalType":"uint48","name":"schedule","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"reportId","type":"bytes32"},{"internalType":"bytes32[]","name":"depositIDs","type":"bytes32[]"}],"name":"reportDeposits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rollbackDefaultAdminDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"aMaxDeposits","type":"uint256"}],"name":"setMaxDeposits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newThreshold","type":"uint256"}],"name":"updateValidateThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"validateThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"depositID","type":"bytes32"},{"internalType":"uint256","name":"withdrawalAmount","type":"uint256"}],"name":"validateWithdrawal","outputs":[],"stateMutability":"nonpayable","type":"function"}]');var Fa=(l=>(l[l.UNREPORTED=0]="UNREPORTED",l[l.REPORTED=1]="REPORTED",l[l.WITHDRAWN=2]="WITHDRAWN",l))(Fa||{});async function Td({deposit:l,rawPayload:f,provider:u,chainId:v,rpcUrl:t,env:d=gn,token:C=U0.LBTC}){const B=(l==null?void 0:l.rawPayload)||f;if(!B)throw new Error("No 'rawPayload' or 'deposit' data provided. Please provide 'rawPayload' or 'deposit' parameter.");const N=Pe({chainId:v,rpcUrl:t,env:d}),U=await _e(C,v,d),z=await N.readContract({abi:U.abi,address:U.address,functionName:"Bascule"});if(z===tt)return 1;let j;if(u?j=Qe({provider:u,chainId:v}):j=Pe({chainId:v,rpcUrl:t}),!j)throw new Error("Could not determine the client for the contract interactions. Please provide the 'provider' and 'chainId' parameters or 'chainId' and optionally the 'rpcUrl' parameter.");try{const q=wr({abi:P3,address:z,client:j}),O=De(Buffer.from(B.slice(8),"hex"));return await q.read.depositHistory([O])}catch(q){throw new Error(Je(q))}}const zi=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AccessControlBadConfirmation",type:"error"},{inputs:[{internalType:"uint48",name:"schedule",type:"uint48"}],name:"AccessControlEnforcedDefaultAdminDelay",type:"error"},{inputs:[],name:"AccessControlEnforcedDefaultAdminRules",type:"error"},{inputs:[{internalType:"address",name:"defaultAdmin",type:"address"}],name:"AccessControlInvalidDefaultAdmin",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"bytes32",name:"neededRole",type:"bytes32"}],name:"AccessControlUnauthorizedAccount",type:"error"},{inputs:[{internalType:"uint256",name:"dustLimit",type:"uint256"}],name:"AmountBelowMinLimit",type:"error"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"AmountLessThanCommission",type:"error"},{inputs:[],name:"AssertRouter_UnauthorizedAccount",type:"error"},{inputs:[],name:"AssertRouter_WrongRedeemDestinationChain",type:"error"},{inputs:[],name:"AssertRouter_WrongRouteType",type:"error"},{inputs:[],name:"AssertRouter_WrongToken",type:"error"},{inputs:[],name:"AssetOperation_DepositNotAllowed",type:"error"},{inputs:[],name:"AssetOperation_RedeemNotAllowed",type:"error"},{inputs:[],name:"AssetRouter_FeeGreaterThanAmount",type:"error"},{inputs:[],name:"AssetRouter_MailboxExpected",type:"error"},{inputs:[],name:"AssetRouter_MintProcessingError",type:"error"},{inputs:[],name:"AssetRouter_PayloadAlreadyUsed",type:"error"},{inputs:[],name:"AssetRouter_Unauthorized",type:"error"},{inputs:[],name:"AssetRouter_WrongNativeToken",type:"error"},{inputs:[],name:"AssetRouter_WrongOperation",type:"error"},{inputs:[],name:"AssetRouter_WrongSender",type:"error"},{inputs:[],name:"AssetRouter_ZeroAddress",type:"error"},{inputs:[],name:"AssetRouter_ZeroMailbox",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"Assets_InvalidPayloadSize",type:"error"},{inputs:[{internalType:"bytes4",name:"expected",type:"bytes4"},{internalType:"bytes4",name:"actual",type:"bytes4"}],name:"Assets_InvalidSelector",type:"error"},{inputs:[],name:"Assets_ZeroAmount",type:"error"},{inputs:[],name:"Assets_ZeroRecipient",type:"error"},{inputs:[],name:"Assets_ZeroToToken",type:"error"},{inputs:[],name:"ECDSAInvalidSignature",type:"error"},{inputs:[{internalType:"uint256",name:"length",type:"uint256"}],name:"ECDSAInvalidSignatureLength",type:"error"},{inputs:[{internalType:"bytes32",name:"s",type:"bytes32"}],name:"ECDSAInvalidSignatureS",type:"error"},{inputs:[],name:"GMP_InvalidAddess",type:"error"},{inputs:[{internalType:"bytes4",name:"expected",type:"bytes4"},{internalType:"bytes4",name:"actual",type:"bytes4"}],name:"InvalidAction",type:"error"},{inputs:[],name:"InvalidFeeApprovalSignature",type:"error"},{inputs:[],name:"InvalidInitialization",type:"error"},{inputs:[{internalType:"uint256",name:"expected",type:"uint256"},{internalType:"uint256",name:"actual",type:"uint256"}],name:"InvalidPayloadSize",type:"error"},{inputs:[{internalType:"uint256",name:"a",type:"uint256"},{internalType:"uint256",name:"b",type:"uint256"}],name:"NonEqualLength",type:"error"},{inputs:[],name:"NotInitializing",type:"error"},{inputs:[],name:"NotStakingToken",type:"error"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"uint8",name:"bits",type:"uint8"},{internalType:"uint256",name:"value",type:"uint256"}],name:"SafeCastOverflowedUintDowncast",type:"error"},{inputs:[],name:"ScriptPubkeyUnsupported",type:"error"},{inputs:[{internalType:"uint256",name:"expiry",type:"uint256"}],name:"UserSignatureExpired",type:"error"},{inputs:[],name:"ZeroFee",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"AssetRouter_BasculeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"payloadHash",type:"bytes32"},{indexed:!1,internalType:"string",name:"reason",type:"string"},{indexed:!1,internalType:"bytes",name:"customError",type:"bytes"}],name:"AssetRouter_BatchMintError",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldRate",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newRate",type:"uint256"}],name:"AssetRouter_DustFeeRateChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"fee",type:"uint256"},{indexed:!1,internalType:"bytes",name:"userSignature",type:"bytes"}],name:"AssetRouter_FeeCharged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"AssetRouter_MailboxChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newFee",type:"uint256"}],name:"AssetRouter_MintFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldAddress",type:"address"},{indexed:!0,internalType:"address",name:"newAddress",type:"address"}],name:"AssetRouter_NativeTokenChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"prevVal",type:"address"},{indexed:!0,internalType:"address",name:"newVal",type:"address"}],name:"AssetRouter_OracleChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"bool",name:"enabled",type:"bool"}],name:"AssetRouter_RedeemEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"uint256",name:"oldFee",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newFee",type:"uint256"}],name:"AssetRouter_RedeemFeeChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"uint256",name:"oldMinAmount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newMinAmount",type:"uint256"}],name:"AssetRouter_RedeemForBtcMinAmountChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"fromToken",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"fromChainId",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"toToken",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"toChainId",type:"bytes32"}],name:"AssetRouter_RouteRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"fromToken",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"fromChainId",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"toToken",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"toChainId",type:"bytes32"},{indexed:!1,internalType:"enum IAssetRouter.RouteType",name:"routeType",type:"uint8"}],name:"AssetRouter_RouteSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"oldCommission",type:"uint256"},{indexed:!0,internalType:"uint256",name:"newCommission",type:"uint256"}],name:"AssetRouter_ToNativeCommissionChanged",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminDelayChangeCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint48",name:"newDelay",type:"uint48"},{indexed:!1,internalType:"uint48",name:"effectSchedule",type:"uint48"}],name:"DefaultAdminDelayChangeScheduled",type:"event"},{anonymous:!1,inputs:[],name:"DefaultAdminTransferCanceled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"newAdmin",type:"address"},{indexed:!1,internalType:"uint48",name:"acceptSchedule",type:"uint48"}],name:"DefaultAdminTransferScheduled",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint64",name:"version",type:"uint64"}],name:"Initialized",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"previousAdminRole",type:"bytes32"},{indexed:!0,internalType:"bytes32",name:"newAdminRole",type:"bytes32"}],name:"RoleAdminChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleGranted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"bytes32",name:"role",type:"bytes32"},{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"}],name:"RoleRevoked",type:"event"},{inputs:[],name:"CALLER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"CLAIMER_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"DEFAULT_ADMIN_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"OPERATOR_ROLE",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"bascule",outputs:[{internalType:"contract IBascule",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes[]",name:"payload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"}],name:"batchMint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes[]",name:"mintPayload",type:"bytes[]"},{internalType:"bytes[]",name:"proof",type:"bytes[]"},{internalType:"bytes[]",name:"feePayload",type:"bytes[]"},{internalType:"bytes[]",name:"userSignature",type:"bytes[]"}],name:"batchMintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newAdmin",type:"address"}],name:"beginDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"bitcoinChainId",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"bytes",name:"scriptPubkey",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"calcUnstakeRequestAmount",outputs:[{internalType:"uint256",name:"amountAfterFee",type:"uint256"},{internalType:"bool",name:"isAboveMinLimit",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"cancelDefaultAdminTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeBascule",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint48",name:"newDelay",type:"uint48"}],name:"changeDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newVal",type:"address"}],name:"changeMailbox",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newValue",type:"address"}],name:"changeNativeToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"newVal",type:"address"}],name:"changeOracle",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"fee",type:"uint256"}],name:"changeRedeemFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"fee",type:"uint256"}],name:"changeRedeemFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"changeRedeemForBtcMinAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"changeRedeemForBtcMinAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint64",name:"newValue",type:"uint64"}],name:"changeToNativeCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"redeemFee",type:"uint256"},{internalType:"uint256",name:"redeemForBtcMinAmount",type:"uint256"},{internalType:"bool",name:"redeemEnabled",type:"bool"}],name:"changeTokenConfig",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"redeemFee",type:"uint256"},{internalType:"uint256",name:"redeemForBtcMinAmount",type:"uint256"},{internalType:"address",name:"oracle_",type:"address"},{internalType:"uint256",name:"maximumMintCommission_",type:"uint256"},{internalType:"uint64",name:"toNativeCommission_",type:"uint64"}],name:"changeTokenConfigExt",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"defaultAdmin",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelay",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"defaultAdminDelayIncreaseWait",outputs:[{internalType:"uint48",name:"",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"tolChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"recipient",type:"bytes32"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"getRate",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"}],name:"getRoleAdmin",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"fromToken",type:"bytes32"},{internalType:"bytes32",name:"fromChainId",type:"bytes32"},{internalType:"bytes32",name:"toChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"}],name:"getRouteType",outputs:[{internalType:"enum IAssetRouter.RouteType",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"grantRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"id",type:"bytes32"},{internalType:"bytes32",name:"msgPath",type:"bytes32"},{internalType:"uint256",name:"msgNonce",type:"uint256"},{internalType:"bytes32",name:"msgSender",type:"bytes32"},{internalType:"address",name:"msgRecipient",type:"address"},{internalType:"address",name:"msgDestinationCaller",type:"address"},{internalType:"bytes",name:"msgBody",type:"bytes"}],internalType:"struct GMPUtils.Payload",name:"payload",type:"tuple"}],name:"handlePayload",outputs:[{internalType:"bytes",name:"",type:"bytes"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"hasRole",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner_",type:"address"},{internalType:"uint48",name:"initialOwnerDelay_",type:"uint48"},{internalType:"bytes32",name:"ledgerChainId_",type:"bytes32"},{internalType:"bytes32",name:"bitcoinChainId_",type:"bytes32"},{internalType:"address",name:"mailbox_",type:"address"},{internalType:"address",name:"bascule_",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"mailbox",outputs:[{internalType:"contract IMailbox",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"maxMintCommission",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"rawPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"}],name:"mint",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"mintPayload",type:"bytes"},{internalType:"bytes",name:"proof",type:"bytes"},{internalType:"bytes",name:"feePayload",type:"bytes"},{internalType:"bytes",name:"userSignature",type:"bytes"}],name:"mintWithFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"nativeToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"oracle",outputs:[{internalType:"contract IOracle",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdmin",outputs:[{internalType:"address",name:"newAdmin",type:"address"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingDefaultAdminDelay",outputs:[{internalType:"uint48",name:"newDelay",type:"uint48"},{internalType:"uint48",name:"schedule",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"ratio",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"address",name:"fromToken",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"bytes32",name:"tolChainId",type:"bytes32"},{internalType:"address",name:"fromToken",type:"address"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"recipient",type:"bytes32"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"fromAddress",type:"address"},{internalType:"address",name:"fromToken",type:"address"},{internalType:"bytes",name:"recipient",type:"bytes"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"redeemForBtc",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"fromToken",type:"bytes32"},{internalType:"bytes32",name:"fromChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"toChainId",type:"bytes32"}],name:"removeRoute",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"renounceRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"role",type:"bytes32"},{internalType:"address",name:"account",type:"address"}],name:"revokeRole",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"rollbackDefaultAdminDelay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"fee",type:"uint256"}],name:"setMaxMintCommission",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"fromToken",type:"bytes32"},{internalType:"bytes32",name:"fromChainId",type:"bytes32"},{internalType:"bytes32",name:"toToken",type:"bytes32"},{internalType:"bytes32",name:"toChainId",type:"bytes32"},{internalType:"enum IAssetRouter.RouteType",name:"routeType",type:"uint8"}],name:"setRoute",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"toNativeCommission",outputs:[{internalType:"uint64",name:"",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[],name:"toggleRedeem",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"tokenConfig",outputs:[{internalType:"uint256",name:"redeemFee",type:"uint256"},{internalType:"uint256",name:"redeemForBtcMinAmount",type:"uint256"},{internalType:"bool",name:"isRedeemEnabled",type:"bool"}],stateMutability:"view",type:"function"}];async function M3(l){return gd({token:U0.LBTC,...l})}async function k3(l){return wd({token:U0.LBTC,...l})}async function gd({token:l,chainId:f,rpcUrl:u,env:v}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(l))throw new Error(`Unsupported token: ${l}`);const t=v||va(f),d=Pe({chainId:f,rpcUrl:u,env:t}),C=await _e(l,f,t),B=C.abi;let N=0n;if(Pr(B)||l===U0.NativeLBTC){const U=await d.readContract({abi:B,address:C.address,functionName:"getAssetRouter"}),z={abi:zi,address:U};N=await d.readContract({abi:z.abi,address:z.address,functionName:"maxMintCommission",args:[C.address]})}else N=await d.readContract({abi:C.abi,address:C.address,functionName:"getMintFee"});return Ht(String(N))}async function wd({token:l,chainId:f,rpcUrl:u,env:v}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(l))throw new Error(`Unsupported token: ${l}`);const t=v||va(f),d=Pe({chainId:f,rpcUrl:u,env:t}),C=await _e(l,f,t);let B=0n;if(Pr(C.abi)||l===U0.NativeLBTC){const N=await d.readContract({abi:C.abi,address:C.address,functionName:"getAssetRouter"}),U={abi:zi,address:N},z=await d.readContract({abi:U.abi,address:U.address,functionName:"toNativeCommission",args:[C.address]}),[j]=await d.readContract({abi:U.abi,address:U.address,functionName:"tokenConfig",args:[C.address]});B=z+j}else B=await d.readContract({abi:C.abi,address:C.address,functionName:"getBurnCommission"});return Ht(String(B))}async function I3({token:l,chainId:f,rpcUrl:u,env:v}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(l))throw new Error(`Unsupported token: ${l}`);const t=v||va(f),d=Pe({chainId:f,rpcUrl:u,env:t}),C=await _e(l,f,t);let B=0n;if(Pr(C.abi)||l===U0.NativeLBTC){const N=await d.readContract({abi:C.abi,address:C.address,functionName:"getAssetRouter"}),U={abi:zi,address:N},[,z]=await d.readContract({abi:U.abi,address:U.address,functionName:"tokenConfig",args:[C.address]});B=z}else B=2000n;return Ht(String(B))}async function B3({chainId:l,rpcUrl:f,env:u}){const v=u||va(l),t=Pe({chainId:l,rpcUrl:f,env:v}),d=await _e(U0.LBTC,l,v),C=await t.readContract({abi:d.abi,address:d.address,functionName:"totalSupply"});return Ht(String(C))}async function vd({owner:l,chainId:f,rpcUrl:u,env:v=gn}){const t=v||va(f),d=Pe({chainId:f,rpcUrl:u}),C=await _e(U0.LBTC,f,t),B=await d.readContract({abi:C.abi,address:C.address,functionName:"nonces",args:[l]});return String(B)}const S3=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AddressInsufficientBalance","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Enter","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Exit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"uint256","name":"assetAmount","type":"uint256"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"shareAmount","type":"uint256"}],"name":"enter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"uint256","name":"assetAmount","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"shareAmount","type":"uint256"}],"name":"exit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"hook","outputs":[{"internalType":"contract BeforeTransferHook","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"targets","type":"address[]"},{"internalType":"bytes[]","name":"data","type":"bytes[]"},{"internalType":"uint256[]","name":"values","type":"uint256[]"}],"name":"manage","outputs":[{"internalType":"bytes[]","name":"results","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"manage","outputs":[{"internalType":"bytes","name":"result","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC1155BatchReceived","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC1155Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC721Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_hook","type":"address"}],"name":"setBeforeTransferHook","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]'),R3=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_vault","type":"address"},{"internalType":"address","name":"payoutAddress","type":"address"},{"internalType":"uint96","name":"startingExchangeRate","type":"uint96"},{"internalType":"address","name":"_base","type":"address"},{"internalType":"uint16","name":"allowedExchangeRateChangeUpper","type":"uint16"},{"internalType":"uint16","name":"allowedExchangeRateChangeLower","type":"uint16"},{"internalType":"uint24","name":"minimumUpdateDelayInSeconds","type":"uint24"},{"internalType":"uint16","name":"managementFee","type":"uint16"},{"internalType":"uint16","name":"performanceFee","type":"uint16"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccountantWithRateProviders__ExchangeRateAboveHighwaterMark","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__LowerBoundTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__ManagementFeeTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__OnlyCallableByBoringVault","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__Paused","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__PerformanceFeeTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__UpdateDelayTooLarge","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__UpperBoundTooSmall","type":"error"},{"inputs":[],"name":"AccountantWithRateProviders__ZeroFeesOwed","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint24","name":"oldDelay","type":"uint24"},{"indexed":false,"internalType":"uint24","name":"newDelay","type":"uint24"}],"name":"DelayInSecondsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint96","name":"oldRate","type":"uint96"},{"indexed":false,"internalType":"uint96","name":"newRate","type":"uint96"},{"indexed":false,"internalType":"uint64","name":"currentTime","type":"uint64"}],"name":"ExchangeRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"feeAsset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FeesClaimed","type":"event"},{"anonymous":false,"inputs":[],"name":"HighwaterMarkReset","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldBound","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newBound","type":"uint16"}],"name":"LowerBoundUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldFee","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newFee","type":"uint16"}],"name":"ManagementFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldPayout","type":"address"},{"indexed":false,"internalType":"address","name":"newPayout","type":"address"}],"name":"PayoutAddressUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldFee","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newFee","type":"uint16"}],"name":"PerformanceFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"bool","name":"isPegged","type":"bool"},{"indexed":false,"internalType":"address","name":"rateProvider","type":"address"}],"name":"RateProviderUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldBound","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newBound","type":"uint16"}],"name":"UpperBoundUpdated","type":"event"},{"inputs":[],"name":"accountantState","outputs":[{"internalType":"address","name":"payoutAddress","type":"address"},{"internalType":"uint96","name":"highwaterMark","type":"uint96"},{"internalType":"uint128","name":"feesOwedInBase","type":"uint128"},{"internalType":"uint128","name":"totalSharesLastUpdate","type":"uint128"},{"internalType":"uint96","name":"exchangeRate","type":"uint96"},{"internalType":"uint16","name":"allowedExchangeRateChangeUpper","type":"uint16"},{"internalType":"uint16","name":"allowedExchangeRateChangeLower","type":"uint16"},{"internalType":"uint64","name":"lastUpdateTimestamp","type":"uint64"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"uint24","name":"minimumUpdateDelayInSeconds","type":"uint24"},{"internalType":"uint16","name":"managementFee","type":"uint16"},{"internalType":"uint16","name":"performanceFee","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"base","outputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"feeAsset","type":"address"}],"name":"claimFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRate","outputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"quote","type":"address"}],"name":"getRateInQuote","outputs":[{"internalType":"uint256","name":"rateInQuote","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"quote","type":"address"}],"name":"getRateInQuoteSafe","outputs":[{"internalType":"uint256","name":"rateInQuote","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRateSafe","outputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"name":"rateProviderData","outputs":[{"internalType":"bool","name":"isPeggedToBase","type":"bool"},{"internalType":"contract IRateProvider","name":"rateProvider","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"resetHighwaterMark","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"bool","name":"isPeggedToBase","type":"bool"},{"internalType":"address","name":"rateProvider","type":"address"}],"name":"setRateProviderData","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint24","name":"minimumUpdateDelayInSeconds","type":"uint24"}],"name":"updateDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint96","name":"newExchangeRate","type":"uint96"}],"name":"updateExchangeRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"allowedExchangeRateChangeLower","type":"uint16"}],"name":"updateLower","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"managementFee","type":"uint16"}],"name":"updateManagementFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payoutAddress","type":"address"}],"name":"updatePayoutAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"performanceFee","type":"uint16"}],"name":"updatePerformanceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"allowedExchangeRateChangeUpper","type":"uint16"}],"name":"updateUpper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"contract BoringVault","name":"","type":"address"}],"stateMutability":"view","type":"function"}]'),z2=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract Authority","name":"_auth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AtomicQueue__Paused","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__RequestDeadlineExceeded","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestAccountantOfferMismatch","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestCannotCastToUint88","type":"error"},{"inputs":[{"internalType":"uint256","name":"deadline","type":"uint256"}],"name":"AtomicQueue__SafeRequestDeadlineExceeded","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestDiscountTooLarge","type":"error"},{"inputs":[{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"uint256","name":"offerAllowance","type":"uint256"}],"name":"AtomicQueue__SafeRequestInsufficientOfferAllowance","type":"error"},{"inputs":[{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"uint256","name":"offerBalance","type":"uint256"}],"name":"AtomicQueue__SafeRequestOfferAmountGreaterThanOfferBalance","type":"error"},{"inputs":[],"name":"AtomicQueue__SafeRequestOfferAmountZero","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__UserNotInSolve","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__UserRepeated","type":"error"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"AtomicQueue__ZeroOfferAmount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"offerToken","type":"address"},{"indexed":true,"internalType":"address","name":"wantToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"offerAmountSpent","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"wantAmountReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"AtomicRequestFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"offerToken","type":"address"},{"indexed":true,"internalType":"address","name":"wantToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"deadline","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"minPrice","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"AtomicRequestUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[],"name":"MAX_DISCOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"}],"name":"getUserAtomicRequest","outputs":[{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"address","name":"user","type":"address"},{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"userRequest","type":"tuple"}],"name":"isAtomicRequestValid","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"userRequest","type":"tuple"},{"internalType":"contract AccountantWithRateProviders","name":"accountant","type":"address"},{"internalType":"uint256","name":"discount","type":"uint256"}],"name":"safeUpdateAtomicRequest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"bytes","name":"runData","type":"bytes"},{"internalType":"address","name":"solver","type":"address"}],"name":"solve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"components":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"internalType":"struct AtomicQueue.AtomicRequest","name":"userRequest","type":"tuple"}],"name":"updateAtomicRequest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"contract ERC20","name":"","type":"address"},{"internalType":"contract ERC20","name":"","type":"address"}],"name":"userAtomicRequest","outputs":[{"internalType":"uint64","name":"deadline","type":"uint64"},{"internalType":"uint88","name":"atomicPrice","type":"uint88"},{"internalType":"uint96","name":"offerAmount","type":"uint96"},{"internalType":"bool","name":"inSolve","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"internalType":"address[]","name":"users","type":"address[]"}],"name":"viewSolveMetaData","outputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint8","name":"flags","type":"uint8"},{"internalType":"uint256","name":"assetsToOffer","type":"uint256"},{"internalType":"uint256","name":"assetsForWant","type":"uint256"}],"internalType":"struct AtomicQueue.SolveMetaData[]","name":"metaData","type":"tuple[]"},{"internalType":"uint256","name":"totalAssetsForWant","type":"uint256"},{"internalType":"uint256","name":"totalAssetsToOffer","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"offer","type":"address"},{"internalType":"contract ERC20","name":"want","type":"address"},{"internalType":"address[]","name":"users","type":"address[]"}],"name":"viewVerboseSolveMetaData","outputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"bool","name":"deadlineExceeded","type":"bool"},{"internalType":"bool","name":"zeroOfferAmount","type":"bool"},{"internalType":"bool","name":"insufficientOfferBalance","type":"bool"},{"internalType":"bool","name":"insufficientOfferAllowance","type":"bool"},{"internalType":"uint256","name":"assetsToOffer","type":"uint256"},{"internalType":"uint256","name":"assetsForWant","type":"uint256"}],"internalType":"struct AtomicQueue.VerboseSolveMetaData[]","name":"metaData","type":"tuple[]"},{"internalType":"uint256","name":"totalAssetsForWant","type":"uint256"},{"internalType":"uint256","name":"totalAssetsToOffer","type":"uint256"}],"stateMutability":"view","type":"function"}]'),N3=[{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract BoringVault",name:"boringVault",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"balanceOfInAssets",outputs:[{internalType:"uint256",name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"checkUserDeposit",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"checkUserDepositWithPermit",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"exchangeRate",outputs:[{internalType:"uint256",name:"rate",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"isTellerPaused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ERC20",name:"depositAsset",type:"address"},{internalType:"uint256",name:"depositAmount",type:"uint256"},{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"previewDeposit",outputs:[{internalType:"uint256",name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract BoringVault",name:"boringVault",type:"address"},{internalType:"contract AccountantWithRateProviders",name:"accountant",type:"address"}],name:"totalAssets",outputs:[{internalType:"contract ERC20",name:"asset",type:"address"},{internalType:"uint256",name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"contract TellerWithMultiAssetSupport",name:"teller",type:"address"}],name:"userUnlockTime",outputs:[{internalType:"uint256",name:"time",type:"uint256"}],stateMutability:"view",type:"function"}],V2=JSON.parse('[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[],"name":"Actions_ZeroAddress","type":"error"},{"inputs":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[],"name":"FeeGreaterThanMaximum","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NoDepositorSet","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[],"name":"PayloadTooLarge","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[],"name":"WrongChainId","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"inputs":[],"name":"ZeroAmount","type":"error"},{"inputs":[],"name":"ZeroDepositAmount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"index","type":"uint256"},{"components":[{"internalType":"bytes","name":"permitPayload","type":"bytes"},{"internalType":"bytes","name":"depositPayload","type":"bytes"},{"internalType":"bytes","name":"mintPayload","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}],"indexed":false,"internalType":"struct StakeAndBake.StakeAndBakeData","name":"data","type":"tuple"}],"name":"BatchStakeAndBakeReverted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"depositor","type":"address"}],"name":"DepositorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"oldFee","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"newFee","type":"uint256"}],"name":"FeeChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"CLAIMER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FEE_OPERATOR_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAXIMUM_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"permitPayload","type":"bytes"},{"internalType":"bytes","name":"depositPayload","type":"bytes"},{"internalType":"bytes","name":"mintPayload","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}],"internalType":"struct StakeAndBake.StakeAndBakeData[]","name":"data","type":"tuple[]"}],"name":"batchStakeAndBake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getStakeAndBakeDepositor","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getStakeAndBakeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"lbtc_","type":"address"},{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"operator_","type":"address"},{"internalType":"uint256","name":"fee_","type":"uint256"},{"internalType":"address","name":"claimer_","type":"address"},{"internalType":"address","name":"pauser_","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"depositor","type":"address"}],"name":"setDepositor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"fee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"permitPayload","type":"bytes"},{"internalType":"bytes","name":"depositPayload","type":"bytes"},{"internalType":"bytes","name":"mintPayload","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}],"internalType":"struct StakeAndBake.StakeAndBakeData","name":"data","type":"tuple"}],"name":"stakeAndBake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"}]'),H2=JSON.parse('[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_vault","type":"address"},{"internalType":"address","name":"_accountant","type":"address"},{"internalType":"address","name":"_weth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"TellerWithMultiAssetSupport__AssetNotSupported","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__BadDepositHash","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__DualDeposit","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__MinimumAssetsNotMet","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__MinimumMintNotMet","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__Paused","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__PermitFailedAndAllowanceTooLow","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__ShareLockPeriodTooLong","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__SharePremiumTooLarge","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__SharesAreLocked","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__SharesAreUnLocked","type":"error"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"TellerWithMultiAssetSupport__TransferDenied","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__ZeroAssets","type":"error"},{"inputs":[],"name":"TellerWithMultiAssetSupport__ZeroShares","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AllowFrom","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AllowOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"AllowTo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"bool","name":"allowDeposits","type":"bool"},{"indexed":false,"internalType":"bool","name":"allowWithdraws","type":"bool"},{"indexed":false,"internalType":"uint16","name":"sharePremium","type":"uint16"}],"name":"AssetDataUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"depositAmount","type":"uint256"}],"name":"BulkDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"shareAmount","type":"uint256"}],"name":"BulkWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DenyFrom","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DenyOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DenyTo","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"nonce","type":"uint256"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"depositAsset","type":"address"},{"indexed":false,"internalType":"uint256","name":"depositAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shareAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"depositTimestamp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shareLockPeriodAtTimeOfDeposit","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"nonce","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"depositHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"DepositRefunded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[],"name":"accountant","outputs":[{"internalType":"contract AccountantWithRateProviders","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"allowTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"name":"assetData","outputs":[{"internalType":"bool","name":"allowDeposits","type":"bool"},{"internalType":"bool","name":"allowWithdraws","type":"bool"},{"internalType":"uint16","name":"sharePremium","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"beforeTransfer","outputs":[],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"minimumMint","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"bulkDeposit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"withdrawAsset","type":"address"},{"internalType":"uint256","name":"shareAmount","type":"uint256"},{"internalType":"uint256","name":"minimumAssets","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"bulkWithdraw","outputs":[{"internalType":"uint256","name":"assetsOut","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"denyTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"minimumMint","type":"uint256"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"depositNonce","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"minimumMint","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"depositWithPermit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"fromDenyList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nativeWrapper","outputs":[{"internalType":"contract WETH","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"operatorDenyList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"publicDepositHistory","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"depositAsset","type":"address"},{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"shareAmount","type":"uint256"},{"internalType":"uint256","name":"depositTimestamp","type":"uint256"},{"internalType":"uint256","name":"shareLockUpPeriodAtTimeOfDeposit","type":"uint256"}],"name":"refundDeposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint64","name":"_shareLockPeriod","type":"uint64"}],"name":"setShareLockPeriod","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"shareLockPeriod","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"shareUnlockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"toDenyList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"asset","type":"address"},{"internalType":"bool","name":"allowDeposits","type":"bool"},{"internalType":"bool","name":"allowWithdraws","type":"bool"},{"internalType":"uint16","name":"sharePremium","type":"uint16"}],"name":"updateAssetData","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"contract BoringVault","name":"","type":"address"}],"stateMutability":"view","type":"function"}]'),Ns=[X.ethereum,X.base,X.binanceSmartChain,X.corn],vn=l=>Ns.includes(l),Ad={[X.ethereum]:"ethereum",[X.base]:"base",[X.corn]:"corn",[X.binanceSmartChain]:"bnb"},O3={ethereum:X.ethereum,base:X.base,corn:X.corn,bnb:X.binanceSmartChain},xd=[X.ethereum,X.binanceSmartChain,X.binanceSmartChainTestnet,X.holesky],Ed=l=>xd.includes(l),D3=X.ethereum,F3="0x5401b8620E5FB570064CA9114fd1e135fd77D57c",U3="0x28634D0c5edC67CF2450E74deA49B90a4FF93dCE",L3="0x5232bc0F5999f8dA604c42E1748A13a170F94A1B",z3={[X.ethereum]:{abi:H2,address:"0x4E8f5128F473C6948127f9Cbca474a6700F99bab",chainId:X.ethereum},[X.base]:{abi:H2,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:X.base},[X.binanceSmartChain]:{abi:H2,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:X.binanceSmartChain},[X.corn]:{abi:H2,address:"0x2eA43384F1A98765257bc6Cb26c7131dEbdEB9B3",chainId:X.corn}},V3={[X.ethereum]:{abi:V2,address:"0xC8bbF6153D7Ba105f1399D992ebd32B0541996ef",chainId:X.ethereum},[X.binanceSmartChain]:{abi:V2,address:"0xC8bbF6153D7Ba105f1399D992ebd32B0541996ef",chainId:X.binanceSmartChain},[X.holesky]:{abi:V2,address:"0x4A3cD83CEbb91E0Cd31EdA2Ee0F4AebfcCFCbBb6",chainId:X.holesky},[X.binanceSmartChainTestnet]:{abi:V2,address:"0x72143309A662bDB4aad5cA65Ab59eD8977D047C5",chainId:X.binanceSmartChainTestnet}},H3={[X.ethereum]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum},[X.base]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum},[X.binanceSmartChain]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum},[X.corn]:{abi:z2,address:"0x3b4aCd8879fb60586cCd74bC2F831A4C5E7DbBf8",chainId:X.ethereum}};var Ge=(l=>(l.Veda="veda",l))(Ge||{});const vt={veda:{defaultChainId:D3,chains:Ns,tokens:{[U0.LBTC]:Ns,[U0.BTCB]:[X.binanceSmartChain],[U0.cbBTC]:[X.ethereum,X.base],[U0.eBTC]:[X.ethereum],[U0.wBTC]:[X.ethereum],[U0.wBTCN]:[X.corn]},stakeAndBakeChains:xd,decimals:8,vaultContract:{abi:S3,address:F3},accountantContract:{abi:R3,address:U3},lensContract:{abi:N3,address:L3},spenderContracts:V3,tellerContracts:z3,withdrawQueueContracts:H3,queueWithdrawDiscountPercent:"0.01",queueWithdrawDaysValid:"3"}};async function j3({vaultKey:l=Ge.Veda,chainId:f,rpcUrl:u}){const v=vt[l];if(!v)throw new Error(`Unknown vault key: ${l}`);if(!Ed(f))throw new Error(`Unsupported chain id: ${f}. Please switch to one of the supported chains: ${v.stakeAndBakeChains.join(", ")}`);const t=v.spenderContracts[f];if(!t)throw new Error("Could not retrieve the stake and bake contract.");try{const d=Pe({chainId:f,rpcUrl:u}),B=await wr({abi:t.abi,address:t.address,client:d}).read.getStakeAndBakeFee();return Ht(String(B))}catch(d){const C=Je(d);throw new Error(C)}}async function Vi({account:l,spender:f,amount:u,chainId:v,provider:t,rpcUrl:d,env:C}){const B=Pe({chainId:v,rpcUrl:d}),N=Qe({chainId:v,provider:t}),U=await _e(U0.LBTC,v,C),z=u2(u).toNumber(),{request:j}=await B.simulateContract({address:U.address,account:l,chain:gt[v],abi:U.abi,functionName:"approve",args:[f,BigInt(z)]});return await N.writeContract(j)}const Cd=async(l,f,u)=>{const v=await l.estimateFeesPerGas(),t=V0(String(v.maxFeePerGas)).dividedBy(String(v.maxPriorityFeePerGas)),d=u||v.maxPriorityFeePerGas,C=u?BigInt(V0(String(d)).multipliedBy(t).toFixed(0)):v.maxFeePerGas;return{gas:await l.estimateContractGas(f),maxFeePerGas:C,maxPriorityFeePerGas:d}};function q3(l){return l.startsWith("0x")}function Be(l){return q3(l)?l:`0x${l}`}async function G3({data:l,proofSignature:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C}){return Pd({data:l,proofSignature:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:U0.LBTC})}async function Pd({data:l,proofSignature:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:B=U0.LBTC}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(B))throw new Error("Unsupported token");if(B===U0.BTCK&&!o2(v))throw new Error("Operation not permitted");const N=await _e(B,v,C),U=await Td({chainId:v,rawPayload:l,env:C,token:B});if(U!==Fa.REPORTED)switch(U){case Fa.UNREPORTED:throw new Error("The deposit cannot be claimed because it is unreported or potentially still pending, please try again later.");case Fa.WITHDRAWN:throw new Error("The deposit cannot be claimed because it is withdrawn already.");default:throw new Error("The deposit cannot be claimed because it is blocked by bridge security.")}const z=Pe({chainId:v,rpcUrl:d,env:C}),j=Qe({chainId:v,provider:t}),q={address:N.address,account:u,chain:gt[v],abi:N.abi,functionName:B===U0.BTCK||B===U0.NativeLBTC?"mintV1":"mint",args:[Be(l),Be(f)]},O=o2(v)?await Cd(z,q,xp("1")):{},{request:_}=await z.simulateContract({...q,...O});return await j.writeContract(_)}async function W3({account:l,chainId:f,provider:u}){const v=Qe({chainId:f,provider:u}),t=`destination chain id is ${f}`;return await v.signMessage({account:l,message:t})}const Z3=1e3,K3=60*Z3,Y3=60*K3,Hi=24*Y3;function Md(){return Date.now()}function kd(l){return Math.round(l/1e3)}async function X3({fee:l,expiry:f=kd(Md()+Hi),account:u,chainId:v,provider:t,env:d}){const C=await _e(U0.LBTC,v,d),B=Qe({chainId:v,provider:t}),N={account:u,domain:{name:"Lombard Staked Bitcoin",version:"1",chainId:v,verifyingContract:C.address},message:{chainId:v,fee:BigInt(V0(l).toFixed()),expiry:f},primaryType:"feeApproval",types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],feeApproval:[{name:"chainId",type:"uint256"},{name:"fee",type:"uint256"},{name:"expiry",type:"uint256"}]}};return{signature:await B.signTypedData(N),typedData:JSON.stringify(N,(z,j)=>typeof j=="bigint"?j.toString():j)}}async function Q3({account:l,expiry:f=kd(Md()+Hi),value:u,vaultKey:v=Ge.Veda,chainId:t,provider:d,rpcUrl:C,env:B}){const N=vt[v];if(!N)throw new Error(`Unknown vault key: ${v}`);if(!Ed(t))throw new Error(`Unsupported chain id: ${t}. Please switch to one of the supported chains: ${N.stakeAndBakeChains.join(", ")}`);const U=await _e(U0.LBTC,t,B),z=Qe({chainId:t,provider:d}),j=N.spenderContracts[t],q=await vd({owner:l,chainId:t,rpcUrl:C}),O={account:l,domain:{name:"Lombard Staked Bitcoin",version:"1",chainId:BigInt(t),verifyingContract:U.address},types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},primaryType:"Permit",message:{owner:l,spender:j.address,value:BigInt(V0(u).toFixed()),nonce:BigInt(q),deadline:BigInt(f)}};return{signature:await z.signTypedData(O),typedData:JSON.stringify(O,(J,s0)=>typeof s0=="bigint"?s0.toString():s0)}}async function J3({btcAddress:l,amount:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C}){return Id({btcAddress:l,amount:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:U0.LBTC})}async function Id({btcAddress:l,amount:f,account:u,chainId:v,provider:t,rpcUrl:d,env:C,token:B=U0.LBTC}){if(![U0.LBTC,U0.BTCK,U0.NativeLBTC].includes(B))throw new Error("Unsupported token");if(B===U0.BTCK&&!o2(v))throw new Error("Operation not permitted");const N=Al(l,C),U=u2(f).toNumber(),z=Pe({chainId:v,rpcUrl:d,env:C}),j=Qe({provider:t,chainId:v}),q=await _e(B,v,C),O={abi:q.abi,address:q.address,account:u,chain:gt[v],functionName:Pr(q.abi)||B===U0.NativeLBTC?"redeemForBtc":"redeem",args:[N,BigInt(U)]},_=o2(v)?await Cd(z,O,xp("1")):{},{request:J}=await z.simulateContract(O);return await j.writeContract({...J,..._})}async function Bd({chainId:l,rpcUrl:f,vaultKey:u=Ge.Veda}){const v=vt[u];if(!v)throw new Error(`Unknown vault key: ${u}`);if(!vn(l))throw new Error(`Unsupported chain id: ${l}. Please switch to one of the supported chains: ${v.chains.join(", ")}`);try{const t=Pe({chainId:l,rpcUrl:f}),C=await wr({abi:v.accountantContract.abi,address:v.accountantContract.address,client:t}).read.getRate();return Ht(String(C))}catch(t){const d=Je(t);throw new Error(d)}}async function _3({chainId:l,rpcUrl:f,address:u,vaultKey:v=Ge.Veda}){const t=vt[v];if(!t)throw new Error(`Unknown vault key: ${v}`);if(!vn(l))throw new Error(`Unsupported chain id: ${l}. Please switch to one of the supported chains: ${t.chains.join(", ")}`);try{const d=Pe({chainId:l,rpcUrl:f}),B=await wr({abi:t.lensContract.abi,address:t.lensContract.address,client:d}).read.balanceOf([u,t.vaultContract.address]),N=Ht(String(B)),U=await Bd({chainId:l,rpcUrl:f,vaultKey:v});return{balance:N,exchangeRate:U,balanceLbtc:N.multipliedBy(U)}}catch(d){const C=Je(d);throw new Error(C)}}V0(0);V0(1);function kr(l){return BigInt(V0(l).toFixed())}async function $3({amount:l,approve:f=!0,token:u=U0.LBTC,vaultKey:v=Ge.Veda,account:t,chainId:d,provider:C,rpcUrl:B,env:N}){const U=vt[v];if(!U)throw new Error(`Unknown vault key: ${v}`);if(!vn(d))throw new Error(`Unsupported chain id: ${d}. Please switch to one of the supported chains: ${U.chains.join(", ")}`);const z=Pe({chainId:d,rpcUrl:B}),j=Qe({provider:C,chainId:d}),q=await A2(u,d,N,B);if(!q)throw new Error(`Unknown deposit token: ${u}`);const O=V0(l),_=kr(Mr(O,q.decimals)),J=await z.readContract({address:q.address,abi:q.abi,functionName:"allowance",args:[t,U.vaultContract.address]}),s0=Fe(String(J),q.decimals),o0=await z.readContract({address:q.address,abi:q.abi,functionName:"balanceOf",args:[t]}),p0=Fe(String(o0),q.decimals);if(O.isGreaterThan(p0))throw new Error(`The deposit amount exceeds the account's balance.
46
46
  Deposit amount: ${O.toFixed()}
47
47
  Balance: ${p0.toFixed()}`);if(O.isGreaterThan(s0)){const b0=`The deposit amount exceeds allowance.
48
48
  Deposit amount: ${O.toFixed()}