@sentio/sdk-bundle 2.57.7 → 2.57.8-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/aptos/builtin/0x1.js +1 -1
- package/lib/aptos/builtin/0x3.js +1 -1
- package/lib/aptos/builtin/0x4.js +1 -1
- package/lib/aptos/builtin/index.js +1 -1
- package/lib/aptos/builtin/index.js.map +1 -1
- package/lib/aptos/ext/index.js +1 -1
- package/lib/aptos/ext/index.js.map +1 -1
- package/lib/aptos/index.js +1 -1
- package/lib/chunk-5AMCSNP7.js +7 -0
- package/lib/{chunk-WKFPJMXF.js.map → chunk-5AMCSNP7.js.map} +1 -1
- package/lib/{chunk-DWDJMSCJ.js → chunk-5F7WBLI4.js} +2 -2
- package/lib/{chunk-GXO7DCHZ.js → chunk-6CDEUHBK.js} +2 -2
- package/lib/{chunk-GXO7DCHZ.js.map → chunk-6CDEUHBK.js.map} +1 -1
- package/lib/chunk-AVNDNZMN.js +32 -0
- package/lib/{chunk-4XU3L3GP.js.map → chunk-AVNDNZMN.js.map} +1 -1
- package/lib/{chunk-AEDJCR64.js → chunk-B3F4WQRS.js} +2 -2
- package/lib/chunk-GTB5ZIMY.js +3 -0
- package/lib/{chunk-NRVSYA3B.js.map → chunk-GTB5ZIMY.js.map} +1 -1
- package/lib/{chunk-DJGKCH6U.js → chunk-GV7ZOJAQ.js} +2 -2
- package/lib/{chunk-DJGKCH6U.js.map → chunk-GV7ZOJAQ.js.map} +1 -1
- package/lib/{chunk-E4QNFY3U.js → chunk-LBW4DXQE.js} +2 -2
- package/lib/{chunk-LQC7CDVY.js → chunk-LWWZWZ4F.js} +2 -2
- package/lib/chunk-MPOOAJHZ.js +6 -0
- package/lib/{chunk-VJVZRE4N.js.map → chunk-MPOOAJHZ.js.map} +1 -1
- package/lib/{chunk-6NEMCBBH.js → chunk-OZNKQEYB.js} +2 -2
- package/lib/{chunk-6NEMCBBH.js.map → chunk-OZNKQEYB.js.map} +1 -1
- package/lib/{chunk-53EDEVTE.js → chunk-Q2FNRM5C.js} +2 -2
- package/lib/{chunk-53EDEVTE.js.map → chunk-Q2FNRM5C.js.map} +1 -1
- package/lib/{chunk-5HKPVFEF.js → chunk-QP5BWTK3.js} +2 -2
- package/lib/{chunk-6JYMR42Q.js → chunk-TJSPP6SM.js} +15 -15
- package/lib/{chunk-6JYMR42Q.js.map → chunk-TJSPP6SM.js.map} +1 -1
- package/lib/chunk-WO6IV4SO.js +499 -0
- package/lib/{chunk-WE2XH6H5.js.map → chunk-WO6IV4SO.js.map} +1 -1
- package/lib/chunk-WU52LDUL.js +6 -0
- package/lib/{chunk-UXGHKVAC.js.map → chunk-WU52LDUL.js.map} +1 -1
- package/lib/eth/builtin/eacaggregatorproxy.js +1 -1
- package/lib/eth/builtin/erc1155.js +1 -1
- package/lib/eth/builtin/erc20.js +1 -1
- package/lib/eth/builtin/erc721.js +1 -1
- package/lib/eth/builtin/index.js +1 -1
- package/lib/eth/builtin/index.js.map +1 -1
- package/lib/eth/builtin/weth9.js +1 -1
- package/lib/eth/index.js +1 -1
- package/lib/fuel/index.js +1 -1
- package/lib/solana/builtin/index.js +1 -1
- package/lib/solana/builtin/index.js.map +1 -1
- package/lib/solana/index.js +1 -1
- package/lib/stark/index.js +14 -14
- package/lib/stark/index.js.map +1 -1
- package/lib/sui/builtin/0x1.js +1 -1
- package/lib/sui/builtin/0x2.js +1 -1
- package/lib/sui/builtin/0x3.js +1 -1
- package/lib/sui/builtin/index.js +1 -1
- package/lib/sui/builtin/index.js.map +1 -1
- package/lib/sui/ext/index.js +1 -1
- package/lib/sui/ext/index.js.map +1 -1
- package/lib/sui/index.js +1 -1
- package/lib/testing/index.js +15 -15
- package/lib/testing/index.js.map +1 -1
- package/lib/utils/index.js +1 -1
- package/package.json +3 -2
- package/lib/chunk-4XU3L3GP.js +0 -32
- package/lib/chunk-NLNLOORO.js +0 -3
- package/lib/chunk-NLNLOORO.js.map +0 -1
- package/lib/chunk-NRVSYA3B.js +0 -3
- package/lib/chunk-UXGHKVAC.js +0 -6
- package/lib/chunk-VJVZRE4N.js +0 -6
- package/lib/chunk-WE2XH6H5.js +0 -499
- package/lib/chunk-WKFPJMXF.js +0 -7
- /package/lib/{chunk-DWDJMSCJ.js.map → chunk-5F7WBLI4.js.map} +0 -0
- /package/lib/{chunk-AEDJCR64.js.map → chunk-B3F4WQRS.js.map} +0 -0
- /package/lib/{chunk-E4QNFY3U.js.map → chunk-LBW4DXQE.js.map} +0 -0
- /package/lib/{chunk-LQC7CDVY.js.map → chunk-LWWZWZ4F.js.map} +0 -0
- /package/lib/{chunk-5HKPVFEF.js.map → chunk-QP5BWTK3.js.map} +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { createRequire as createRequireSdkShim } from 'module'; const require = createRequireSdkShim(import.meta.url);
|
|
2
|
+
import{a as ut,b as re,c as ne}from"./chunk-DS2LOABN.js";import{A as ya,D as ct,Ib as Te,Lb as ee,Ld as Ze,W as Ca,Zd as xa,ce as gs,fa as ms,he as vn,je as ve,oa as lt}from"./chunk-LZ2L3BVP.js";import{a as i,d as ti,e as hs,f as Tn}from"./chunk-G5BIPHMS.js";var jo=ti((qd,ea)=>{"use strict";(function(){"use strict";var n="input is invalid type",t="finalize already called",e=typeof window=="object",r=e?window:{};r.JS_SHA3_NO_WINDOW&&(e=!1);var a=!e&&typeof self=="object",s=!r.JS_SHA3_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;s?r=global:a&&(r=self);for(var o=!r.JS_SHA3_NO_COMMON_JS&&typeof ea=="object"&&ea.exports,l=typeof define=="function"&&define.amd,u=!r.JS_SHA3_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",p="0123456789abcdef".split(""),d=[31,7936,2031616,520093696],h=[4,1024,262144,67108864],f=[1,256,65536,16777216],y=[6,1536,393216,100663296],b=[0,8,16,24],B=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],F=[224,256,384,512],I=[128,256],G=["hex","buffer","arrayBuffer","array","digest"],$={128:168,256:136},W=r.JS_SHA3_NO_NODE_JS||!Array.isArray?function(c){return Object.prototype.toString.call(c)==="[object Array]"}:Array.isArray,Ee=u&&(r.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)?function(c){return typeof c=="object"&&c.buffer&&c.buffer.constructor===ArrayBuffer}:ArrayBuffer.isView,Rt=i(function(c){var g=typeof c;if(g==="string")return[c,!0];if(g!=="object"||c===null)throw new Error(n);if(u&&c.constructor===ArrayBuffer)return[new Uint8Array(c),!1];if(!W(c)&&!Ee(c))throw new Error(n);return[c,!1]},"formatMessage"),os=i(function(c){return Rt(c)[0].length===0},"empty"),ha=i(function(c){for(var g=[],C=0;C<c.length;++C)g[C]=c[C];return g},"cloneArray"),is=i(function(c,g,C){return function(x){return new Z(c,g,c).update(x)[C]()}},"createOutputMethod"),cs=i(function(c,g,C){return function(x,T){return new Z(c,g,T).update(x)[C]()}},"createShakeOutputMethod"),ls=i(function(c,g,C){return function(x,T,P,R){return It["cshake"+c].update(x,T,P,R)[C]()}},"createCshakeOutputMethod"),us=i(function(c,g,C){return function(x,T,P,R){return It["kmac"+c].update(x,T,P,R)[C]()}},"createKmacOutputMethod"),Er=i(function(c,g,C,x){for(var T=0;T<G.length;++T){var P=G[T];c[P]=g(C,x,P)}return c},"createOutputMethods"),ps=i(function(c,g){var C=is(c,g,"hex");return C.create=function(){return new Z(c,g,c)},C.update=function(x){return C.create().update(x)},Er(C,is,c,g)},"createMethod"),Yo=i(function(c,g){var C=cs(c,g,"hex");return C.create=function(x){return new Z(c,g,x)},C.update=function(x,T){return C.create(T).update(x)},Er(C,cs,c,g)},"createShakeMethod"),Qo=i(function(c,g){var C=$[c],x=ls(c,g,"hex");return x.create=function(T,P,R){return os(P)&&os(R)?It["shake"+c].create(T):new Z(c,g,T).bytepad([P,R],C)},x.update=function(T,P,R,k){return x.create(P,R,k).update(T)},Er(x,ls,c,g)},"createCshakeMethod"),qo=i(function(c,g){var C=$[c],x=us(c,g,"hex");return x.create=function(T,P,R){return new ga(c,g,P).bytepad(["KMAC",R],C).bytepad([T],C)},x.update=function(T,P,R,k){return x.create(T,R,k).update(P)},Er(x,us,c,g)},"createKmacMethod"),ds=[{name:"keccak",padding:f,bits:F,createMethod:ps},{name:"sha3",padding:y,bits:F,createMethod:ps},{name:"shake",padding:d,bits:I,createMethod:Yo},{name:"cshake",padding:h,bits:I,createMethod:Qo},{name:"kmac",padding:h,bits:I,createMethod:qo}],It={},We=[],Mt=0;Mt<ds.length;++Mt)for(var we=ds[Mt],wr=we.bits,Ke=0;Ke<wr.length;++Ke){var ma=we.name+"_"+wr[Ke];if(We.push(ma),It[ma]=we.createMethod(wr[Ke],we.padding),we.name!=="sha3"){var fs=we.name+wr[Ke];We.push(fs),It[fs]=It[ma]}}function Z(c,g,C){this.blocks=[],this.s=[],this.padding=g,this.outputBits=C,this.reset=!0,this.finalized=!1,this.block=0,this.start=0,this.blockCount=1600-(c<<1)>>5,this.byteCount=this.blockCount<<2,this.outputBlocks=C>>5,this.extraBytes=(C&31)>>3;for(var x=0;x<50;++x)this.s[x]=0}i(Z,"Keccak"),Z.prototype.update=function(c){if(this.finalized)throw new Error(t);var g=Rt(c);c=g[0];for(var C=g[1],x=this.blocks,T=this.byteCount,P=c.length,R=this.blockCount,k=0,Y=this.s,N,X;k<P;){if(this.reset)for(this.reset=!1,x[0]=this.block,N=1;N<R+1;++N)x[N]=0;if(C)for(N=this.start;k<P&&N<T;++k)X=c.charCodeAt(k),X<128?x[N>>2]|=X<<b[N++&3]:X<2048?(x[N>>2]|=(192|X>>6)<<b[N++&3],x[N>>2]|=(128|X&63)<<b[N++&3]):X<55296||X>=57344?(x[N>>2]|=(224|X>>12)<<b[N++&3],x[N>>2]|=(128|X>>6&63)<<b[N++&3],x[N>>2]|=(128|X&63)<<b[N++&3]):(X=65536+((X&1023)<<10|c.charCodeAt(++k)&1023),x[N>>2]|=(240|X>>18)<<b[N++&3],x[N>>2]|=(128|X>>12&63)<<b[N++&3],x[N>>2]|=(128|X>>6&63)<<b[N++&3],x[N>>2]|=(128|X&63)<<b[N++&3]);else for(N=this.start;k<P&&N<T;++k)x[N>>2]|=c[k]<<b[N++&3];if(this.lastByteIndex=N,N>=T){for(this.start=N-T,this.block=x[R],N=0;N<R;++N)Y[N]^=x[N];Xe(Y),this.reset=!0}else this.start=N}return this},Z.prototype.encode=function(c,g){var C=c&255,x=1,T=[C];for(c=c>>8,C=c&255;C>0;)T.unshift(C),c=c>>8,C=c&255,++x;return g?T.push(x):T.unshift(x),this.update(T),T.length},Z.prototype.encodeString=function(c){var g=Rt(c);c=g[0];var C=g[1],x=0,T=c.length;if(C)for(var P=0;P<c.length;++P){var R=c.charCodeAt(P);R<128?x+=1:R<2048?x+=2:R<55296||R>=57344?x+=3:(R=65536+((R&1023)<<10|c.charCodeAt(++P)&1023),x+=4)}else x=T;return x+=this.encode(x*8),this.update(c),x},Z.prototype.bytepad=function(c,g){for(var C=this.encode(g),x=0;x<c.length;++x)C+=this.encodeString(c[x]);var T=(g-C%g)%g,P=[];return P.length=T,this.update(P),this},Z.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var c=this.blocks,g=this.lastByteIndex,C=this.blockCount,x=this.s;if(c[g>>2]|=this.padding[g&3],this.lastByteIndex===this.byteCount)for(c[0]=c[C],g=1;g<C+1;++g)c[g]=0;for(c[C-1]|=2147483648,g=0;g<C;++g)x[g]^=c[g];Xe(x)}},Z.prototype.toString=Z.prototype.hex=function(){this.finalize();for(var c=this.blockCount,g=this.s,C=this.outputBlocks,x=this.extraBytes,T=0,P=0,R="",k;P<C;){for(T=0;T<c&&P<C;++T,++P)k=g[T],R+=p[k>>4&15]+p[k&15]+p[k>>12&15]+p[k>>8&15]+p[k>>20&15]+p[k>>16&15]+p[k>>28&15]+p[k>>24&15];P%c===0&&(g=ha(g),Xe(g),T=0)}return x&&(k=g[T],R+=p[k>>4&15]+p[k&15],x>1&&(R+=p[k>>12&15]+p[k>>8&15]),x>2&&(R+=p[k>>20&15]+p[k>>16&15])),R},Z.prototype.arrayBuffer=function(){this.finalize();var c=this.blockCount,g=this.s,C=this.outputBlocks,x=this.extraBytes,T=0,P=0,R=this.outputBits>>3,k;x?k=new ArrayBuffer(C+1<<2):k=new ArrayBuffer(R);for(var Y=new Uint32Array(k);P<C;){for(T=0;T<c&&P<C;++T,++P)Y[P]=g[T];P%c===0&&(g=ha(g),Xe(g))}return x&&(Y[P]=g[T],k=k.slice(0,R)),k},Z.prototype.buffer=Z.prototype.arrayBuffer,Z.prototype.digest=Z.prototype.array=function(){this.finalize();for(var c=this.blockCount,g=this.s,C=this.outputBlocks,x=this.extraBytes,T=0,P=0,R=[],k,Y;P<C;){for(T=0;T<c&&P<C;++T,++P)k=P<<2,Y=g[T],R[k]=Y&255,R[k+1]=Y>>8&255,R[k+2]=Y>>16&255,R[k+3]=Y>>24&255;P%c===0&&(g=ha(g),Xe(g))}return x&&(k=P<<2,Y=g[T],R[k]=Y&255,x>1&&(R[k+1]=Y>>8&255),x>2&&(R[k+2]=Y>>16&255)),R};function ga(c,g,C){Z.call(this,c,g,C)}i(ga,"Kmac"),ga.prototype=new Z,ga.prototype.finalize=function(){return this.encode(this.outputBits,!0),Z.prototype.finalize.call(this)};var Xe=i(function(c){var g,C,x,T,P,R,k,Y,N,X,Tr,vr,Pr,kr,Ar,Rr,Ir,Or,Br,Nr,Fr,Sr,Dr,_r,Lr,Hr,Ur,Vr,Mr,Gr,$r,jr,zr,Jr,Wr,Kr,Xr,Zr,Yr,Qr,qr,tn,en,rn,nn,an,sn,on,cn,ln,un,pn,dn,fn,hn,mn,gn,yn,Cn,xn,bn,En,wn;for(x=0;x<48;x+=2)T=c[0]^c[10]^c[20]^c[30]^c[40],P=c[1]^c[11]^c[21]^c[31]^c[41],R=c[2]^c[12]^c[22]^c[32]^c[42],k=c[3]^c[13]^c[23]^c[33]^c[43],Y=c[4]^c[14]^c[24]^c[34]^c[44],N=c[5]^c[15]^c[25]^c[35]^c[45],X=c[6]^c[16]^c[26]^c[36]^c[46],Tr=c[7]^c[17]^c[27]^c[37]^c[47],vr=c[8]^c[18]^c[28]^c[38]^c[48],Pr=c[9]^c[19]^c[29]^c[39]^c[49],g=vr^(R<<1|k>>>31),C=Pr^(k<<1|R>>>31),c[0]^=g,c[1]^=C,c[10]^=g,c[11]^=C,c[20]^=g,c[21]^=C,c[30]^=g,c[31]^=C,c[40]^=g,c[41]^=C,g=T^(Y<<1|N>>>31),C=P^(N<<1|Y>>>31),c[2]^=g,c[3]^=C,c[12]^=g,c[13]^=C,c[22]^=g,c[23]^=C,c[32]^=g,c[33]^=C,c[42]^=g,c[43]^=C,g=R^(X<<1|Tr>>>31),C=k^(Tr<<1|X>>>31),c[4]^=g,c[5]^=C,c[14]^=g,c[15]^=C,c[24]^=g,c[25]^=C,c[34]^=g,c[35]^=C,c[44]^=g,c[45]^=C,g=Y^(vr<<1|Pr>>>31),C=N^(Pr<<1|vr>>>31),c[6]^=g,c[7]^=C,c[16]^=g,c[17]^=C,c[26]^=g,c[27]^=C,c[36]^=g,c[37]^=C,c[46]^=g,c[47]^=C,g=X^(T<<1|P>>>31),C=Tr^(P<<1|T>>>31),c[8]^=g,c[9]^=C,c[18]^=g,c[19]^=C,c[28]^=g,c[29]^=C,c[38]^=g,c[39]^=C,c[48]^=g,c[49]^=C,kr=c[0],Ar=c[1],an=c[11]<<4|c[10]>>>28,sn=c[10]<<4|c[11]>>>28,Vr=c[20]<<3|c[21]>>>29,Mr=c[21]<<3|c[20]>>>29,xn=c[31]<<9|c[30]>>>23,bn=c[30]<<9|c[31]>>>23,tn=c[40]<<18|c[41]>>>14,en=c[41]<<18|c[40]>>>14,Jr=c[2]<<1|c[3]>>>31,Wr=c[3]<<1|c[2]>>>31,Rr=c[13]<<12|c[12]>>>20,Ir=c[12]<<12|c[13]>>>20,on=c[22]<<10|c[23]>>>22,cn=c[23]<<10|c[22]>>>22,Gr=c[33]<<13|c[32]>>>19,$r=c[32]<<13|c[33]>>>19,En=c[42]<<2|c[43]>>>30,wn=c[43]<<2|c[42]>>>30,fn=c[5]<<30|c[4]>>>2,hn=c[4]<<30|c[5]>>>2,Kr=c[14]<<6|c[15]>>>26,Xr=c[15]<<6|c[14]>>>26,Or=c[25]<<11|c[24]>>>21,Br=c[24]<<11|c[25]>>>21,ln=c[34]<<15|c[35]>>>17,un=c[35]<<15|c[34]>>>17,jr=c[45]<<29|c[44]>>>3,zr=c[44]<<29|c[45]>>>3,_r=c[6]<<28|c[7]>>>4,Lr=c[7]<<28|c[6]>>>4,mn=c[17]<<23|c[16]>>>9,gn=c[16]<<23|c[17]>>>9,Zr=c[26]<<25|c[27]>>>7,Yr=c[27]<<25|c[26]>>>7,Nr=c[36]<<21|c[37]>>>11,Fr=c[37]<<21|c[36]>>>11,pn=c[47]<<24|c[46]>>>8,dn=c[46]<<24|c[47]>>>8,rn=c[8]<<27|c[9]>>>5,nn=c[9]<<27|c[8]>>>5,Hr=c[18]<<20|c[19]>>>12,Ur=c[19]<<20|c[18]>>>12,yn=c[29]<<7|c[28]>>>25,Cn=c[28]<<7|c[29]>>>25,Qr=c[38]<<8|c[39]>>>24,qr=c[39]<<8|c[38]>>>24,Sr=c[48]<<14|c[49]>>>18,Dr=c[49]<<14|c[48]>>>18,c[0]=kr^~Rr&Or,c[1]=Ar^~Ir&Br,c[10]=_r^~Hr&Vr,c[11]=Lr^~Ur&Mr,c[20]=Jr^~Kr&Zr,c[21]=Wr^~Xr&Yr,c[30]=rn^~an&on,c[31]=nn^~sn&cn,c[40]=fn^~mn&yn,c[41]=hn^~gn&Cn,c[2]=Rr^~Or&Nr,c[3]=Ir^~Br&Fr,c[12]=Hr^~Vr&Gr,c[13]=Ur^~Mr&$r,c[22]=Kr^~Zr&Qr,c[23]=Xr^~Yr&qr,c[32]=an^~on&ln,c[33]=sn^~cn&un,c[42]=mn^~yn&xn,c[43]=gn^~Cn&bn,c[4]=Or^~Nr&Sr,c[5]=Br^~Fr&Dr,c[14]=Vr^~Gr&jr,c[15]=Mr^~$r&zr,c[24]=Zr^~Qr&tn,c[25]=Yr^~qr&en,c[34]=on^~ln&pn,c[35]=cn^~un&dn,c[44]=yn^~xn&En,c[45]=Cn^~bn&wn,c[6]=Nr^~Sr&kr,c[7]=Fr^~Dr&Ar,c[16]=Gr^~jr&_r,c[17]=$r^~zr&Lr,c[26]=Qr^~tn&Jr,c[27]=qr^~en&Wr,c[36]=ln^~pn&rn,c[37]=un^~dn&nn,c[46]=xn^~En&fn,c[47]=bn^~wn&hn,c[8]=Sr^~kr&Rr,c[9]=Dr^~Ar&Ir,c[18]=jr^~_r&Hr,c[19]=zr^~Lr&Ur,c[28]=tn^~Jr&Kr,c[29]=en^~Wr&Xr,c[38]=pn^~rn&an,c[39]=dn^~nn&sn,c[48]=En^~fn&mn,c[49]=wn^~hn&gn,c[0]^=B[x],c[1]^=B[x+1]},"f");if(o)ea.exports=It;else{for(Mt=0;Mt<We.length;++Mt)r[We[Mt]]=It[We[Mt]];l&&define(function(){return It})}})()});var Ac={};hs(Ac,{ERC721BoundContractView:()=>br,ERC721ContractView:()=>fa,ERC721Processor:()=>Ut,ERC721ProcessorTemplate:()=>as,ERC721__factory:()=>At,getERC721Contract:()=>be,getERC721ContractOnContext:()=>Tc,mockApprovalForAllLog:()=>Pc,mockApprovalLog:()=>vc,mockTransferLog:()=>kc});var Gt=class extends gs{static{i(this,"EthContext")}chainId;address;log;block;trace;blockNumber;transactionHash;transaction;transactionReceipt;timestamp;preparedData;constructor(t,e,r,a,s,o,l,u,p,d){super(p),this.chainId=t,this.log=s,this.block=a,this.trace=o,this.address=e.toLowerCase(),this.transaction=l,this.transactionReceipt=u,this.timestamp=r||new Date(0),this.preparedData=d,s?(this.blockNumber=s.blockNumber,this.transactionHash=s.transactionHash):a?this.blockNumber=a.number:o&&(this.blockNumber=o.blockNumber,this.transactionHash=o.transactionHash)}getChainId(){return this.chainId}getMetaDataInternal(t,e){if(this.log)return{address:this.address,contractName:this.getContractName(),blockNumber:BigInt(this.blockNumber),transactionIndex:this.log.transactionIndex,transactionHash:this.transactionHash||"",logIndex:this.log.index,chainId:this.chainId,name:t,labels:Ze(e)};if(this.trace)return{address:this.address,contractName:this.getContractName(),blockNumber:BigInt(this.blockNumber),transactionIndex:this.trace.transactionPosition,transactionHash:this.transactionHash||"",logIndex:-1,chainId:this.chainId.toString(),name:t,labels:Ze(e)};if(this.transaction)return{address:this.address,contractName:this.getContractName(),blockNumber:BigInt(this.blockNumber),transactionIndex:this.transaction.index||0,transactionHash:this.transaction.hash||"",logIndex:-1,chainId:this.chainId.toString(),name:t,labels:Ze(e)};if(this.block)return{address:this.address,contractName:this.getContractName(),blockNumber:BigInt(this.blockNumber),transactionIndex:-1,transactionHash:"",logIndex:-1,chainId:this.chainId.toString(),name:t,labels:Ze(e)};throw new Error("Invaid ctx argument can't happen")}getBlockTag(t){let e="0x"+this.blockNumber.toString(16);return t?.blockTag&&(e=typeof t.blockTag=="string"?t.blockTag:"0x"+t.blockTag.toString(16)),e}getEthCallContext(){return{chainId:this.chainId,blockTag:"0x"+this.blockNumber.toString(16),address:this.address}}},Pe=class extends Gt{static{i(this,"AccountContext")}getContractName(){return"account"}},wt=class extends Gt{static{i(this,"GlobalContext")}constructor(t,e,r,a,s,o,l,u,p,d){super(t,e,r,a,s,o,l,u,p,d)}getContractName(){return"*"}getMetaDataInternal(t,e){let r=this.address;this.address="*";let a=super.getMetaDataInternal(t,e);return this.address=r,a}},Tt=class extends Gt{static{i(this,"ContractContext")}contract;contractName;constructor(t,e,r,a,s,o,l,u,p,d,h){super(r,e.address,a,s,o,l,u,p,d,h),e.context=this,e.callStatic&&(e.callStatic.context=this),e.encodeCall&&(e.encodeCall.context=this),this.contractName=t,this.contract=e}getContractName(){return this.contractName}},Ot=class{constructor(t){this.contract=t}static{i(this,"ContractView")}get rawContract(){return this.contract}get provider(){if(this.contract.runner?.provider)return this.contract.runner.provider;throw Error("Can't find provider for contract"+this.contract.toString())}},Bt=class{static{i(this,"BoundContractView")}view;address;context;callStatic;encodeCall;constructor(t,e){this.address=t,this.view=e}get rawContract(){return this.view.rawContract}get provider(){return this.view.provider}get filters(){return this.view.rawContract.filters}};import("node:process").then(n=>n.stdout.write(""));var j=Tn(xa(),1);var ys="6.13.1";function ei(n,t,e){let r=t.split("|").map(s=>s.trim());for(let s=0;s<r.length;s++)switch(t){case"any":return;case"bigint":case"boolean":case"number":case"string":if(typeof n===t)return}let a=new Error(`invalid value for type ${t}`);throw a.code="INVALID_ARGUMENT",a.argument=`value.${e}`,a.value=n,a}i(ei,"checkType");async function ke(n){let t=Object.keys(n);return(await Promise.all(t.map(r=>Promise.resolve(n[r])))).reduce((r,a,s)=>(r[t[s]]=a,r),{})}i(ke,"resolveProperties");function v(n,t,e){for(let r in t){let a=t[r],s=e?e[r]:null;s&&ei(a,s,r),Object.defineProperty(n,r,{enumerable:!0,value:a,writable:!1})}}i(v,"defineProperties");function Ae(n){if(n==null)return"null";if(Array.isArray(n))return"[ "+n.map(Ae).join(", ")+" ]";if(n instanceof Uint8Array){let t="0123456789abcdef",e="0x";for(let r=0;r<n.length;r++)e+=t[n[r]>>4],e+=t[n[r]&15];return e}if(typeof n=="object"&&typeof n.toJSON=="function")return Ae(n.toJSON());switch(typeof n){case"boolean":case"symbol":return n.toString();case"bigint":return BigInt(n).toString();case"number":return n.toString();case"string":return JSON.stringify(n);case"object":{let t=Object.keys(n);return t.sort(),"{ "+t.map(e=>`${Ae(e)}: ${Ae(n[e])}`).join(", ")+" }"}}return"[ COULD NOT SERIALIZE ]"}i(Ae,"stringify");function vt(n,t){return n&&n.code===t}i(vt,"isError");function Pn(n){return vt(n,"CALL_EXCEPTION")}i(Pn,"isCallException");function Nt(n,t,e){let r=n;{let s=[];if(e){if("message"in e||"code"in e||"name"in e)throw new Error(`value will overwrite populated values: ${Ae(e)}`);for(let o in e){if(o==="shortMessage")continue;let l=e[o];s.push(o+"="+Ae(l))}}s.push(`code=${t}`),s.push(`version=${ys}`),s.length&&(n+=" ("+s.join(", ")+")")}let a;switch(t){case"INVALID_ARGUMENT":a=new TypeError(n);break;case"NUMERIC_FAULT":case"BUFFER_OVERRUN":a=new RangeError(n);break;default:a=new Error(n)}return v(a,{code:t}),e&&Object.assign(a,e),a.shortMessage==null&&v(a,{shortMessage:r}),a}i(Nt,"makeError");function w(n,t,e,r){if(!n)throw Nt(t,e,r)}i(w,"assert");function m(n,t,e,r){w(n,t,"INVALID_ARGUMENT",{argument:e,value:r})}i(m,"assertArgument");function Ye(n,t,e){e==null&&(e=""),e&&(e=": "+e),w(n>=t,"missing arguemnt"+e,"MISSING_ARGUMENT",{count:n,expectedCount:t}),w(n<=t,"too many arguments"+e,"UNEXPECTED_ARGUMENT",{count:n,expectedCount:t})}i(Ye,"assertArgumentCount");var ri=["NFD","NFC","NFKD","NFKC"].reduce((n,t)=>{try{if("test".normalize(t)!=="test")throw new Error("bad");if(t==="NFD"&&"\xE9".normalize("NFD")!=="e\u0301")throw new Error("broken");n.push(t)}catch{}return n},[]);function ba(n){w(ri.indexOf(n)>=0,"platform missing String.prototype.normalize","UNSUPPORTED_OPERATION",{operation:"String.prototype.normalize",info:{form:n}})}i(ba,"assertNormalize");function $t(n,t,e){if(e==null&&(e=""),n!==t){let r=e,a="new";e&&(r+=".",a+=" "+e),w(!1,`private constructor; use ${r}from* methods`,"UNSUPPORTED_OPERATION",{operation:a})}}i($t,"assertPrivate");function xs(n,t,e){if(n instanceof Uint8Array)return e?new Uint8Array(n):n;if(typeof n=="string"&&n.match(/^0x(?:[0-9a-f][0-9a-f])*$/i)){let r=new Uint8Array((n.length-2)/2),a=2;for(let s=0;s<r.length;s++)r[s]=parseInt(n.substring(a,a+2),16),a+=2;return r}m(!1,"invalid BytesLike value",t||"value",n)}i(xs,"_getBytes");function z(n,t){return xs(n,t,!1)}i(z,"getBytes");function at(n,t){return xs(n,t,!0)}i(at,"getBytesCopy");function Q(n,t){return!(typeof n!="string"||!n.match(/^0x[0-9A-Fa-f]*$/)||typeof t=="number"&&n.length!==2+2*t||t===!0&&n.length%2!==0)}i(Q,"isHexString");function Ea(n){return Q(n,!0)||n instanceof Uint8Array}i(Ea,"isBytesLike");var Cs="0123456789abcdef";function D(n){let t=z(n),e="0x";for(let r=0;r<t.length;r++){let a=t[r];e+=Cs[(a&240)>>4]+Cs[a&15]}return e}i(D,"hexlify");function pt(n){return"0x"+n.map(t=>D(t).substring(2)).join("")}i(pt,"concat");function kn(n){return Q(n,!0)?(n.length-2)/2:z(n).length}i(kn,"dataLength");function Pt(n,t,e){let r=z(n);return e!=null&&e>r.length&&w(!1,"cannot slice beyond data bounds","BUFFER_OVERRUN",{buffer:r,length:r.length,offset:e}),D(r.slice(t??0,e??r.length))}i(Pt,"dataSlice");function bs(n,t,e){let r=z(n);w(t>=r.length,"padding exceeds data length","BUFFER_OVERRUN",{buffer:new Uint8Array(r),length:t,offset:t+1});let a=new Uint8Array(t);return a.fill(0),e?a.set(r,t-r.length):a.set(r,0),D(a)}i(bs,"zeroPad");function Re(n,t){return bs(n,t,!0)}i(Re,"zeroPadValue");function An(n,t){return bs(n,t,!1)}i(An,"zeroPadBytes");var Rn=BigInt(0),Ct=BigInt(1),Ie=9007199254740991;function wa(n,t){let e=Qe(n,"value"),r=BigInt(_(t,"width"));if(w(e>>r===Rn,"overflow","NUMERIC_FAULT",{operation:"fromTwos",fault:"overflow",value:n}),e>>r-Ct){let a=(Ct<<r)-Ct;return-((~e&a)+Ct)}return e}i(wa,"fromTwos");function Ta(n,t){let e=A(n,"value"),r=BigInt(_(t,"width")),a=Ct<<r-Ct;if(e<Rn){e=-e,w(e<=a,"too low","NUMERIC_FAULT",{operation:"toTwos",fault:"overflow",value:n});let s=(Ct<<r)-Ct;return(~e&s)+Ct}else w(e<a,"too high","NUMERIC_FAULT",{operation:"toTwos",fault:"overflow",value:n});return e}i(Ta,"toTwos");function Oe(n,t){let e=Qe(n,"value"),r=BigInt(_(t,"bits"));return e&(Ct<<r)-Ct}i(Oe,"mask");function A(n,t){switch(typeof n){case"bigint":return n;case"number":return m(Number.isInteger(n),"underflow",t||"value",n),m(n>=-Ie&&n<=Ie,"overflow",t||"value",n),BigInt(n);case"string":try{if(n==="")throw new Error("empty string");return n[0]==="-"&&n[1]!=="-"?-BigInt(n.substring(1)):BigInt(n)}catch(e){m(!1,`invalid BigNumberish string: ${e.message}`,t||"value",n)}}m(!1,"invalid BigNumberish value",t||"value",n)}i(A,"getBigInt");function Qe(n,t){let e=A(n,t);return w(e>=Rn,"unsigned value cannot be negative","NUMERIC_FAULT",{fault:"overflow",operation:"getUint",value:n}),e}i(Qe,"getUint");var Es="0123456789abcdef";function In(n){if(n instanceof Uint8Array){let t="0x0";for(let e of n)t+=Es[e>>4],t+=Es[e&15];return BigInt(t)}return A(n)}i(In,"toBigInt");function _(n,t){switch(typeof n){case"bigint":return m(n>=-Ie&&n<=Ie,"overflow",t||"value",n),Number(n);case"number":return m(Number.isInteger(n),"underflow",t||"value",n),m(n>=-Ie&&n<=Ie,"overflow",t||"value",n),n;case"string":try{if(n==="")throw new Error("empty string");return _(BigInt(n),t)}catch(e){m(!1,`invalid numeric string: ${e.message}`,t||"value",n)}}m(!1,"invalid numeric value",t||"value",n)}i(_,"getNumber");function va(n){return _(In(n))}i(va,"toNumber");function qe(n,t){let r=Qe(n,"value").toString(16);if(t==null)r.length%2&&(r="0"+r);else{let a=_(t,"width");for(w(a*2>=r.length,`value exceeds width (${a} bytes)`,"NUMERIC_FAULT",{operation:"toBeHex",fault:"overflow",value:n});r.length<a*2;)r="0"+r}return"0x"+r}i(qe,"toBeHex");function tr(n){let t=Qe(n,"value");if(t===Rn)return new Uint8Array([]);let e=t.toString(16);e.length%2&&(e="0"+e);let r=new Uint8Array(e.length/2);for(let a=0;a<r.length;a++){let s=a*2;r[a]=parseInt(e.substring(s,s+2),16)}return r}i(tr,"toBeArray");var er=class{static{i(this,"EventPayload")}filter;emitter;#t;constructor(t,e,r){this.#t=e,v(this,{emitter:t,filter:r})}async removeListener(){this.#t!=null&&await this.emitter.off(this.filter,this.#t)}};function ni(n,t,e,r,a){m(!1,`invalid codepoint at offset ${t}; ${n}`,"bytes",e)}i(ni,"errorFunc");function ws(n,t,e,r,a){if(n==="BAD_PREFIX"||n==="UNEXPECTED_CONTINUE"){let s=0;for(let o=t+1;o<e.length&&e[o]>>6===2;o++)s++;return s}return n==="OVERRUN"?e.length-t-1:0}i(ws,"ignoreFunc");function ai(n,t,e,r,a){return n==="OVERLONG"?(m(typeof a=="number","invalid bad code point for replacement","badCodepoint",a),r.push(a),0):(r.push(65533),ws(n,t,e,r,a))}i(ai,"replaceFunc");var Ts=Object.freeze({error:ni,ignore:ws,replace:ai});function si(n,t){t==null&&(t=Ts.error);let e=z(n,"bytes"),r=[],a=0;for(;a<e.length;){let s=e[a++];if(!(s>>7)){r.push(s);continue}let o=null,l=null;if((s&224)===192)o=1,l=127;else if((s&240)===224)o=2,l=2047;else if((s&248)===240)o=3,l=65535;else{(s&192)===128?a+=t("UNEXPECTED_CONTINUE",a-1,e,r):a+=t("BAD_PREFIX",a-1,e,r);continue}if(a-1+o>=e.length){a+=t("OVERRUN",a-1,e,r);continue}let u=s&(1<<8-o-1)-1;for(let p=0;p<o;p++){let d=e[a];if((d&192)!=128){a+=t("MISSING_CONTINUE",a,e,r),u=null;break}u=u<<6|d&63,a++}if(u!==null){if(u>1114111){a+=t("OUT_OF_RANGE",a-1-o,e,r,u);continue}if(u>=55296&&u<=57343){a+=t("UTF16_SURROGATE",a-1-o,e,r,u);continue}if(u<=l){a+=t("OVERLONG",a-1-o,e,r,u);continue}r.push(u)}}return r}i(si,"getUtf8CodePoints");function Be(n,t){m(typeof n=="string","invalid string value","str",n),t!=null&&(ba(t),n=n.normalize(t));let e=[];for(let r=0;r<n.length;r++){let a=n.charCodeAt(r);if(a<128)e.push(a);else if(a<2048)e.push(a>>6|192),e.push(a&63|128);else if((a&64512)==55296){r++;let s=n.charCodeAt(r);m(r<n.length&&(s&64512)===56320,"invalid surrogate pair","str",n);let o=65536+((a&1023)<<10)+(s&1023);e.push(o>>18|240),e.push(o>>12&63|128),e.push(o>>6&63|128),e.push(o&63|128)}else e.push(a>>12|224),e.push(a>>6&63|128),e.push(a&63|128)}return new Uint8Array(e)}i(Be,"toUtf8Bytes");function oi(n){return n.map(t=>t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode((t>>10&1023)+55296,(t&1023)+56320))).join("")}i(oi,"_toUtf8String");function rr(n,t){return oi(si(n,t))}i(rr,"toUtf8String");function vs(n){let t=[];for(;n;)t.unshift(n&255),n>>=8;return t}i(vs,"arrayifyInteger");function ks(n){if(Array.isArray(n)){let r=[];if(n.forEach(function(s){r=r.concat(ks(s))}),r.length<=55)return r.unshift(192+r.length),r;let a=vs(r.length);return a.unshift(247+a.length),a.concat(r)}let t=Array.prototype.slice.call(z(n,"object"));if(t.length===1&&t[0]<=127)return t;if(t.length<=55)return t.unshift(128+t.length),t;let e=vs(t.length);return e.unshift(183+e.length),e.concat(t)}i(ks,"_encode");var Ps="0123456789abcdef";function Pa(n){let t="0x";for(let e of ks(n))t+=Ps[e>>4],t+=Ps[e&15];return t}i(Pa,"encodeRlp");function ka(n){if(!Number.isSafeInteger(n)||n<0)throw new Error(`Wrong positive integer: ${n}`)}i(ka,"number");function Aa(n,...t){if(!(n instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(n.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${n.length}`)}i(Aa,"bytes");function Ra(n,t=!0){if(n.destroyed)throw new Error("Hash instance has been destroyed");if(t&&n.finished)throw new Error("Hash#digest() has already been called")}i(Ra,"exists");function As(n,t){Aa(n);let e=t.outputLen;if(n.length<e)throw new Error(`digestInto() expects output buffer of length at least ${e}`)}i(As,"output");var On=BigInt(4294967295),Rs=BigInt(32);function ii(n,t=!1){return t?{h:Number(n&On),l:Number(n>>Rs&On)}:{h:Number(n>>Rs&On)|0,l:Number(n&On)|0}}i(ii,"fromBig");function Is(n,t=!1){let e=new Uint32Array(n.length),r=new Uint32Array(n.length);for(let a=0;a<n.length;a++){let{h:s,l:o}=ii(n[a],t);[e[a],r[a]]=[s,o]}return[e,r]}i(Is,"split");var Os=i((n,t,e)=>n<<e|t>>>32-e,"rotlSH"),Bs=i((n,t,e)=>t<<e|n>>>32-e,"rotlSL"),Ns=i((n,t,e)=>t<<e-32|n>>>64-e,"rotlBH"),Fs=i((n,t,e)=>n<<e-32|t>>>64-e,"rotlBL");var ci=i(n=>n instanceof Uint8Array,"u8a");var Ss=i(n=>new Uint32Array(n.buffer,n.byteOffset,Math.floor(n.byteLength/4)),"u32");var li=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!li)throw new Error("Non little-endian hardware is not supported");function ui(n){if(typeof n!="string")throw new Error(`utf8ToBytes expected string, got ${typeof n}`);return new Uint8Array(new TextEncoder().encode(n))}i(ui,"utf8ToBytes");function Nn(n){if(typeof n=="string"&&(n=ui(n)),!ci(n))throw new Error(`expected Uint8Array, got ${typeof n}`);return n}i(Nn,"toBytes");var Bn=class{static{i(this,"Hash")}clone(){return this._cloneInto()}},yl={}.toString;function Ds(n){let t=i(r=>n().update(Nn(r)).digest(),"hashC"),e=n();return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=()=>n(),t}i(Ds,"wrapConstructor");function _s(n){let t=i((r,a)=>n(a).update(Nn(r)).digest(),"hashC"),e=n({});return t.outputLen=e.outputLen,t.blockLen=e.blockLen,t.create=r=>n(r),t}i(_s,"wrapXOFConstructorWithOpts");var[Us,Vs,Ms]=[[],[],[]],pi=BigInt(0),nr=BigInt(1),di=BigInt(2),fi=BigInt(7),hi=BigInt(256),mi=BigInt(113);for(let n=0,t=nr,e=1,r=0;n<24;n++){[e,r]=[r,(2*e+3*r)%5],Us.push(2*(5*r+e)),Vs.push((n+1)*(n+2)/2%64);let a=pi;for(let s=0;s<7;s++)t=(t<<nr^(t>>fi)*mi)%hi,t&di&&(a^=nr<<(nr<<BigInt(s))-nr);Ms.push(a)}var[gi,yi]=Is(Ms,!0),Ls=i((n,t,e)=>e>32?Ns(n,t,e):Os(n,t,e),"rotlH"),Hs=i((n,t,e)=>e>32?Fs(n,t,e):Bs(n,t,e),"rotlL");function Ci(n,t=24){let e=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let o=0;o<10;o++)e[o]=n[o]^n[o+10]^n[o+20]^n[o+30]^n[o+40];for(let o=0;o<10;o+=2){let l=(o+8)%10,u=(o+2)%10,p=e[u],d=e[u+1],h=Ls(p,d,1)^e[l],f=Hs(p,d,1)^e[l+1];for(let y=0;y<50;y+=10)n[o+y]^=h,n[o+y+1]^=f}let a=n[2],s=n[3];for(let o=0;o<24;o++){let l=Vs[o],u=Ls(a,s,l),p=Hs(a,s,l),d=Us[o];a=n[d],s=n[d+1],n[d]=u,n[d+1]=p}for(let o=0;o<50;o+=10){for(let l=0;l<10;l++)e[l]=n[o+l];for(let l=0;l<10;l++)n[o+l]^=~e[(l+2)%10]&e[(l+4)%10]}n[0]^=gi[r],n[1]^=yi[r]}e.fill(0)}i(Ci,"keccakP");var Fn=class n extends Bn{static{i(this,"Keccak")}constructor(t,e,r,a=!1,s=24){if(super(),this.blockLen=t,this.suffix=e,this.outputLen=r,this.enableXOF=a,this.rounds=s,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,ka(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Ss(this.state)}keccak(){Ci(this.state32,this.rounds),this.posOut=0,this.pos=0}update(t){Ra(this);let{blockLen:e,state:r}=this;t=Nn(t);let a=t.length;for(let s=0;s<a;){let o=Math.min(e-this.pos,a-s);for(let l=0;l<o;l++)r[this.pos++]^=t[s++];this.pos===e&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:e,pos:r,blockLen:a}=this;t[r]^=e,e&128&&r===a-1&&this.keccak(),t[a-1]^=128,this.keccak()}writeInto(t){Ra(this,!1),Aa(t),this.finish();let e=this.state,{blockLen:r}=this;for(let a=0,s=t.length;a<s;){this.posOut>=r&&this.keccak();let o=Math.min(r-this.posOut,s-a);t.set(e.subarray(this.posOut,this.posOut+o),a),this.posOut+=o,a+=o}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return ka(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(As(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:e,suffix:r,outputLen:a,rounds:s,enableXOF:o}=this;return t||(t=new n(e,r,a,o,s)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=s,t.suffix=r,t.outputLen=a,t.enableXOF=o,t.destroyed=this.destroyed,t}},jt=i((n,t,e)=>Ds(()=>new Fn(t,n,e)),"gen"),Tl=jt(6,144,224/8),vl=jt(6,136,256/8),Pl=jt(6,104,384/8),kl=jt(6,72,512/8),Al=jt(1,144,224/8),Gs=jt(1,136,256/8),Rl=jt(1,104,384/8),Il=jt(1,72,512/8),$s=i((n,t,e)=>_s((r={})=>new Fn(t,n,r.dkLen===void 0?e:r.dkLen,!0)),"genShake"),Ol=$s(31,168,128/8),Bl=$s(31,136,256/8);var js=!1,zs=i(function(n){return Gs(n)},"_keccak256"),Js=zs;function ot(n){let t=z(n,"data");return D(Js(t))}i(ot,"keccak256");ot._=zs;ot.lock=function(){js=!0};ot.register=function(n){if(js)throw new TypeError("keccak256 is locked");Js=n};Object.freeze(ot);var Sn="0x0000000000000000000000000000000000000000000000000000000000000000";var Ws=BigInt(0),Ks=BigInt(1),Xs=BigInt(2),Zs=BigInt(27),Ys=BigInt(28),Dn=BigInt(35),Ne={};function Qs(n){return Re(tr(n),32)}i(Qs,"toUint256");var Fe=class n{static{i(this,"Signature")}#t;#e;#r;#n;get r(){return this.#t}set r(t){m(kn(t)===32,"invalid r","value",t),this.#t=D(t)}get s(){return this.#e}set s(t){m(kn(t)===32,"invalid s","value",t);let e=D(t);m(parseInt(e.substring(0,3))<8,"non-canonical s","value",e),this.#e=e}get v(){return this.#r}set v(t){let e=_(t,"value");m(e===27||e===28,"invalid v","v",t),this.#r=e}get networkV(){return this.#n}get legacyChainId(){let t=this.networkV;return t==null?null:n.getChainId(t)}get yParity(){return this.v===27?0:1}get yParityAndS(){let t=z(this.s);return this.yParity&&(t[0]|=128),D(t)}get compactSerialized(){return pt([this.r,this.yParityAndS])}get serialized(){return pt([this.r,this.s,this.yParity?"0x1c":"0x1b"])}constructor(t,e,r,a){$t(t,Ne,"Signature"),this.#t=e,this.#e=r,this.#r=a,this.#n=null}[Symbol.for("nodejs.util.inspect.custom")](){return`Signature { r: "${this.r}", s: "${this.s}", yParity: ${this.yParity}, networkV: ${this.networkV} }`}clone(){let t=new n(Ne,this.r,this.s,this.v);return this.networkV&&(t.#n=this.networkV),t}toJSON(){let t=this.networkV;return{_type:"signature",networkV:t!=null?t.toString():null,r:this.r,s:this.s,v:this.v}}static getChainId(t){let e=A(t,"v");return e==Zs||e==Ys?Ws:(m(e>=Dn,"invalid EIP-155 v","v",t),(e-Dn)/Xs)}static getChainIdV(t,e){return A(t)*Xs+BigInt(35+e-27)}static getNormalizedV(t){let e=A(t);return e===Ws||e===Zs?27:e===Ks||e===Ys?28:(m(e>=Dn,"invalid v","v",t),e&Ks?27:28)}static from(t){function e(p,d){m(p,d,"signature",t)}if(i(e,"assertError"),t==null)return new n(Ne,Sn,Sn,27);if(typeof t=="string"){let p=z(t,"signature");if(p.length===64){let d=D(p.slice(0,32)),h=p.slice(32,64),f=h[0]&128?28:27;return h[0]&=127,new n(Ne,d,D(h),f)}if(p.length===65){let d=D(p.slice(0,32)),h=p.slice(32,64);e((h[0]&128)===0,"non-canonical s");let f=n.getNormalizedV(p[64]);return new n(Ne,d,D(h),f)}e(!1,"invalid raw signature length")}if(t instanceof n)return t.clone();let r=t.r;e(r!=null,"missing r");let a=Qs(r),s=function(p,d){if(p!=null)return Qs(p);if(d!=null){e(Q(d,32),"invalid yParityAndS");let h=z(d);return h[0]&=127,D(h)}e(!1,"missing s")}(t.s,t.yParityAndS);e((z(s)[0]&128)==0,"non-canonical s");let{networkV:o,v:l}=function(p,d,h){if(p!=null){let f=A(p);return{networkV:f>=Dn?f:void 0,v:n.getNormalizedV(f)}}if(d!=null)return e(Q(d,32),"invalid yParityAndS"),{v:z(d)[0]&128?28:27};if(h!=null){switch(_(h,"sig.yParity")){case 0:return{v:27};case 1:return{v:28}}e(!1,"invalid yParity")}e(!1,"missing v")}(t.v,t.yParityAndS,t.yParity),u=new n(Ne,a,s,l);return o&&(u.#n=o),e(t.yParity==null||_(t.yParity,"sig.yParity")===u.yParity,"yParity mismatch"),e(t.yParityAndS==null||t.yParityAndS===u.yParityAndS,"yParityAndS mismatch"),u}};var xi=BigInt(0),bi=BigInt(36);function qs(n){n=n.toLowerCase();let t=n.substring(2).split(""),e=new Uint8Array(40);for(let a=0;a<40;a++)e[a]=t[a].charCodeAt(0);let r=z(ot(e));for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&(t[a]=t[a].toUpperCase()),(r[a>>1]&15)>=8&&(t[a+1]=t[a+1].toUpperCase());return"0x"+t.join("")}i(qs,"getChecksumAddress");var Ia={};for(let n=0;n<10;n++)Ia[String(n)]=String(n);for(let n=0;n<26;n++)Ia[String.fromCharCode(65+n)]=String(10+n);var to=15;function Ei(n){n=n.toUpperCase(),n=n.substring(4)+n.substring(0,2)+"00";let t=n.split("").map(r=>Ia[r]).join("");for(;t.length>=to;){let r=t.substring(0,to);t=parseInt(r,10)%97+t.substring(r.length)}let e=String(98-parseInt(t,10)%97);for(;e.length<2;)e="0"+e;return e}i(Ei,"ibanChecksum");var wi=function(){let n={};for(let t=0;t<36;t++){let e="0123456789abcdefghijklmnopqrstuvwxyz"[t];n[e]=BigInt(t)}return n}();function Ti(n){n=n.toLowerCase();let t=xi;for(let e=0;e<n.length;e++)t=t*bi+wi[n[e]];return t}i(Ti,"fromBase36");function M(n){if(m(typeof n=="string","invalid address","address",n),n.match(/^(0x)?[0-9a-fA-F]{40}$/)){n.startsWith("0x")||(n="0x"+n);let t=qs(n);return m(!n.match(/([A-F].*[a-f])|([a-f].*[A-F])/)||t===n,"bad address checksum","address",n),t}if(n.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){m(n.substring(2,4)===Ei(n),"bad icap checksum","address",n);let t=Ti(n.substring(4)).toString(16);for(;t.length<40;)t="0"+t;return qs("0x"+t)}m(!1,"invalid address","address",n)}i(M,"getAddress");function Oa(n){let t=M(n.from),r=A(n.nonce,"tx.nonce").toString(16);return r==="0"?r="0x":r.length%2?r="0x0"+r:r="0x"+r,M(Pt(ot(Pa([t,r])),12))}i(Oa,"getCreateAddress");function _n(n){return n&&typeof n.getAddress=="function"}i(_n,"isAddressable");async function Ba(n,t){let e=await t;return(e==null||e==="0x0000000000000000000000000000000000000000")&&(w(typeof n!="string","unconfigured name","UNCONFIGURED_NAME",{value:n}),m(!1,"invalid AddressLike value; did not resolve to a value address","target",n)),M(e)}i(Ba,"checkAddress");function ae(n,t){if(typeof n=="string")return n.match(/^0x[0-9a-f]{40}$/i)?M(n):(w(t!=null,"ENS resolution requires a provider","UNSUPPORTED_OPERATION",{operation:"resolveName"}),Ba(n,t.resolveName(n)));if(_n(n))return Ba(n,n.getAddress());if(n&&typeof n.then=="function")return Ba(n,n);m(!1,"unsupported addressable value","target",n)}i(ae,"resolveAddress");var rt=32,Na=new Uint8Array(rt),vi=["then"],Ln={},no=new WeakMap;function se(n){return no.get(n)}i(se,"getNames");function eo(n,t){no.set(n,t)}i(eo,"setNames");function ar(n,t){let e=new Error(`deferred error during ABI decoding triggered accessing ${n}`);throw e.error=t,e}i(ar,"throwError");function Fa(n,t,e){return n.indexOf(null)>=0?t.map((r,a)=>r instanceof ht?Fa(se(r),r,e):r):n.reduce((r,a,s)=>{let o=t.getValue(a);return a in r||(e&&o instanceof ht&&(o=Fa(se(o),o,e)),r[a]=o),r},{})}i(Fa,"toObject");var ht=class n extends Array{static{i(this,"Result")}#t;constructor(...t){let e=t[0],r=t[1],a=(t[2]||[]).slice(),s=!0;e!==Ln&&(r=t,a=[],s=!1),super(r.length),r.forEach((u,p)=>{this[p]=u});let o=a.reduce((u,p)=>(typeof p=="string"&&u.set(p,(u.get(p)||0)+1),u),new Map);if(eo(this,Object.freeze(r.map((u,p)=>{let d=a[p];return d!=null&&o.get(d)===1?d:null}))),this.#t=[],this.#t==null&&this.#t,!s)return;Object.freeze(this);let l=new Proxy(this,{get:i((u,p,d)=>{if(typeof p=="string"){if(p.match(/^[0-9]+$/)){let f=_(p,"%index");if(f<0||f>=this.length)throw new RangeError("out of result range");let y=u[f];return y instanceof Error&&ar(`index ${f}`,y),y}if(vi.indexOf(p)>=0)return Reflect.get(u,p,d);let h=u[p];if(h instanceof Function)return function(...f){return h.apply(this===d?u:this,f)};if(!(p in u))return u.getValue.apply(this===d?u:this,[p])}return Reflect.get(u,p,d)},"get")});return eo(l,se(this)),l}toArray(t){let e=[];return this.forEach((r,a)=>{r instanceof Error&&ar(`index ${a}`,r),t&&r instanceof n&&(r=r.toArray(t)),e.push(r)}),e}toObject(t){let e=se(this);return e.reduce((r,a,s)=>(w(a!=null,`value at index ${s} unnamed`,"UNSUPPORTED_OPERATION",{operation:"toObject()"}),Fa(e,this,t)),{})}slice(t,e){t==null&&(t=0),t<0&&(t+=this.length,t<0&&(t=0)),e==null&&(e=this.length),e<0&&(e+=this.length,e<0&&(e=0)),e>this.length&&(e=this.length);let r=se(this),a=[],s=[];for(let o=t;o<e;o++)a.push(this[o]),s.push(r[o]);return new n(Ln,a,s)}filter(t,e){let r=se(this),a=[],s=[];for(let o=0;o<this.length;o++){let l=this[o];l instanceof Error&&ar(`index ${o}`,l),t.call(e,l,o,this)&&(a.push(l),s.push(r[o]))}return new n(Ln,a,s)}map(t,e){let r=[];for(let a=0;a<this.length;a++){let s=this[a];s instanceof Error&&ar(`index ${a}`,s),r.push(t.call(e,s,a,this))}return r}getValue(t){let e=se(this).indexOf(t);if(e===-1)return;let r=this[e];return r instanceof Error&&ar(`property ${JSON.stringify(t)}`,r.error),r}static fromItems(t,e){return new n(Ln,t,e)}};function ro(n){let t=tr(n);return w(t.length<=rt,"value out-of-bounds","BUFFER_OVERRUN",{buffer:t,length:rt,offset:t.length}),t.length!==rt&&(t=at(pt([Na.slice(t.length%rt),t]))),t}i(ro,"getValue");var q=class{static{i(this,"Coder")}name;type;localName;dynamic;constructor(t,e,r,a){v(this,{name:t,type:e,localName:r,dynamic:a},{name:"string",type:"string",localName:"string",dynamic:"boolean"})}_throwError(t,e){m(!1,t,this.localName,e)}},oe=class{static{i(this,"Writer")}#t;#e;constructor(){this.#t=[],this.#e=0}get data(){return pt(this.#t)}get length(){return this.#e}#r(t){return this.#t.push(t),this.#e+=t.length,t.length}appendWriter(t){return this.#r(at(t.data))}writeBytes(t){let e=at(t),r=e.length%rt;return r&&(e=at(pt([e,Na.slice(r)]))),this.#r(e)}writeValue(t){return this.#r(ro(t))}writeUpdatableValue(){let t=this.#t.length;return this.#t.push(Na),this.#e+=rt,e=>{this.#t[t]=ro(e)}}},Hn=class n{static{i(this,"Reader")}allowLoose;#t;#e;#r;#n;#a;constructor(t,e,r){v(this,{allowLoose:!!e}),this.#t=at(t),this.#r=0,this.#n=null,this.#a=r??1024,this.#e=0}get data(){return D(this.#t)}get dataLength(){return this.#t.length}get consumed(){return this.#e}get bytes(){return new Uint8Array(this.#t)}#s(t){if(this.#n)return this.#n.#s(t);this.#r+=t,w(this.#a<1||this.#r<=this.#a*this.dataLength,`compressed ABI data exceeds inflation ratio of ${this.#a} ( see: https://github.com/ethers-io/ethers.js/issues/4537 )`,"BUFFER_OVERRUN",{buffer:at(this.#t),offset:this.#e,length:t,info:{bytesRead:this.#r,dataLength:this.dataLength}})}#o(t,e,r){let a=Math.ceil(e/rt)*rt;return this.#e+a>this.#t.length&&(this.allowLoose&&r&&this.#e+e<=this.#t.length?a=e:w(!1,"data out-of-bounds","BUFFER_OVERRUN",{buffer:at(this.#t),length:this.#t.length,offset:this.#e+a})),this.#t.slice(this.#e,this.#e+a)}subReader(t){let e=new n(this.#t.slice(this.#e+t),this.allowLoose,this.#a);return e.#n=this,e}readBytes(t,e){let r=this.#o(0,t,!!e);return this.#s(t),this.#e+=r.length,r.slice(0,t)}readValue(){return In(this.readBytes(rt))}readIndex(){return va(this.readBytes(rt))}};var xt={};function E(n,t){let e=!1;return t<0&&(e=!0,t*=-1),new J(xt,`${e?"":"u"}int${t}`,n,{signed:e,width:t})}i(E,"n");function V(n,t){return new J(xt,`bytes${t||""}`,n,{size:t})}i(V,"b");var ao=Symbol.for("_ethers_typed"),J=class n{static{i(this,"Typed")}type;value;#t;_typedSymbol;constructor(t,e,r,a){a==null&&(a=null),$t(xt,t,"Typed"),v(this,{_typedSymbol:ao,type:e,value:r}),this.#t=a,this.format()}format(){if(this.type==="array")throw new Error("");if(this.type==="dynamicArray")throw new Error("");return this.type==="tuple"?`tuple(${this.value.map(t=>t.format()).join(",")})`:this.type}defaultValue(){return 0}minValue(){return 0}maxValue(){return 0}isBigInt(){return!!this.type.match(/^u?int[0-9]+$/)}isData(){return this.type.startsWith("bytes")}isString(){return this.type==="string"}get tupleName(){if(this.type!=="tuple")throw TypeError("not a tuple");return this.#t}get arrayLength(){if(this.type!=="array")throw TypeError("not an array");return this.#t===!0?-1:this.#t===!1?this.value.length:null}static from(t,e){return new n(xt,t,e)}static uint8(t){return E(t,8)}static uint16(t){return E(t,16)}static uint24(t){return E(t,24)}static uint32(t){return E(t,32)}static uint40(t){return E(t,40)}static uint48(t){return E(t,48)}static uint56(t){return E(t,56)}static uint64(t){return E(t,64)}static uint72(t){return E(t,72)}static uint80(t){return E(t,80)}static uint88(t){return E(t,88)}static uint96(t){return E(t,96)}static uint104(t){return E(t,104)}static uint112(t){return E(t,112)}static uint120(t){return E(t,120)}static uint128(t){return E(t,128)}static uint136(t){return E(t,136)}static uint144(t){return E(t,144)}static uint152(t){return E(t,152)}static uint160(t){return E(t,160)}static uint168(t){return E(t,168)}static uint176(t){return E(t,176)}static uint184(t){return E(t,184)}static uint192(t){return E(t,192)}static uint200(t){return E(t,200)}static uint208(t){return E(t,208)}static uint216(t){return E(t,216)}static uint224(t){return E(t,224)}static uint232(t){return E(t,232)}static uint240(t){return E(t,240)}static uint248(t){return E(t,248)}static uint256(t){return E(t,256)}static uint(t){return E(t,256)}static int8(t){return E(t,-8)}static int16(t){return E(t,-16)}static int24(t){return E(t,-24)}static int32(t){return E(t,-32)}static int40(t){return E(t,-40)}static int48(t){return E(t,-48)}static int56(t){return E(t,-56)}static int64(t){return E(t,-64)}static int72(t){return E(t,-72)}static int80(t){return E(t,-80)}static int88(t){return E(t,-88)}static int96(t){return E(t,-96)}static int104(t){return E(t,-104)}static int112(t){return E(t,-112)}static int120(t){return E(t,-120)}static int128(t){return E(t,-128)}static int136(t){return E(t,-136)}static int144(t){return E(t,-144)}static int152(t){return E(t,-152)}static int160(t){return E(t,-160)}static int168(t){return E(t,-168)}static int176(t){return E(t,-176)}static int184(t){return E(t,-184)}static int192(t){return E(t,-192)}static int200(t){return E(t,-200)}static int208(t){return E(t,-208)}static int216(t){return E(t,-216)}static int224(t){return E(t,-224)}static int232(t){return E(t,-232)}static int240(t){return E(t,-240)}static int248(t){return E(t,-248)}static int256(t){return E(t,-256)}static int(t){return E(t,-256)}static bytes1(t){return V(t,1)}static bytes2(t){return V(t,2)}static bytes3(t){return V(t,3)}static bytes4(t){return V(t,4)}static bytes5(t){return V(t,5)}static bytes6(t){return V(t,6)}static bytes7(t){return V(t,7)}static bytes8(t){return V(t,8)}static bytes9(t){return V(t,9)}static bytes10(t){return V(t,10)}static bytes11(t){return V(t,11)}static bytes12(t){return V(t,12)}static bytes13(t){return V(t,13)}static bytes14(t){return V(t,14)}static bytes15(t){return V(t,15)}static bytes16(t){return V(t,16)}static bytes17(t){return V(t,17)}static bytes18(t){return V(t,18)}static bytes19(t){return V(t,19)}static bytes20(t){return V(t,20)}static bytes21(t){return V(t,21)}static bytes22(t){return V(t,22)}static bytes23(t){return V(t,23)}static bytes24(t){return V(t,24)}static bytes25(t){return V(t,25)}static bytes26(t){return V(t,26)}static bytes27(t){return V(t,27)}static bytes28(t){return V(t,28)}static bytes29(t){return V(t,29)}static bytes30(t){return V(t,30)}static bytes31(t){return V(t,31)}static bytes32(t){return V(t,32)}static address(t){return new n(xt,"address",t)}static bool(t){return new n(xt,"bool",!!t)}static bytes(t){return new n(xt,"bytes",t)}static string(t){return new n(xt,"string",t)}static array(t,e){throw new Error("not implemented yet")}static tuple(t,e){throw new Error("not implemented yet")}static overrides(t){return new n(xt,"overrides",Object.assign({},t))}static isTyped(t){return t&&typeof t=="object"&&"_typedSymbol"in t&&t._typedSymbol===ao}static dereference(t,e){if(n.isTyped(t)){if(t.type!==e)throw new Error(`invalid type: expecetd ${e}, got ${t.type}`);return t.value}return t}};var Un=class extends q{static{i(this,"AddressCoder")}constructor(t){super("address","address",t,!1)}defaultValue(){return"0x0000000000000000000000000000000000000000"}encode(t,e){let r=J.dereference(e,"string");try{r=M(r)}catch(a){return this._throwError(a.message,e)}return t.writeValue(r)}decode(t){return M(qe(t.readValue(),20))}};var Vn=class extends q{static{i(this,"AnonymousCoder")}coder;constructor(t){super(t.name,t.type,"_",t.dynamic),this.coder=t}defaultValue(){return this.coder.defaultValue()}encode(t,e){return this.coder.encode(t,e)}decode(t){return this.coder.decode(t)}};function Sa(n,t,e){let r=[];if(Array.isArray(e))r=e;else if(e&&typeof e=="object"){let u={};r=t.map(p=>{let d=p.localName;return w(d,"cannot encode object for signature with missing names","INVALID_ARGUMENT",{argument:"values",info:{coder:p},value:e}),w(!u[d],"cannot encode object for signature with duplicate names","INVALID_ARGUMENT",{argument:"values",info:{coder:p},value:e}),u[d]=!0,e[d]})}else m(!1,"invalid tuple value","tuple",e);m(t.length===r.length,"types/value length mismatch","tuple",e);let a=new oe,s=new oe,o=[];t.forEach((u,p)=>{let d=r[p];if(u.dynamic){let h=s.length;u.encode(s,d);let f=a.writeUpdatableValue();o.push(y=>{f(y+h)})}else u.encode(a,d)}),o.forEach(u=>{u(a.length)});let l=n.appendWriter(a);return l+=n.appendWriter(s),l}i(Sa,"pack");function Da(n,t){let e=[],r=[],a=n.subReader(0);return t.forEach(s=>{let o=null;if(s.dynamic){let l=n.readIndex(),u=a.subReader(l);try{o=s.decode(u)}catch(p){if(vt(p,"BUFFER_OVERRUN"))throw p;o=p,o.baseType=s.name,o.name=s.localName,o.type=s.type}}else try{o=s.decode(n)}catch(l){if(vt(l,"BUFFER_OVERRUN"))throw l;o=l,o.baseType=s.name,o.name=s.localName,o.type=s.type}if(o==null)throw new Error("investigate");e.push(o),r.push(s.localName||null)}),ht.fromItems(e,r)}i(Da,"unpack");var Mn=class extends q{static{i(this,"ArrayCoder")}coder;length;constructor(t,e,r){let a=t.type+"["+(e>=0?e:"")+"]",s=e===-1||t.dynamic;super("array",a,r,s),v(this,{coder:t,length:e})}defaultValue(){let t=this.coder.defaultValue(),e=[];for(let r=0;r<this.length;r++)e.push(t);return e}encode(t,e){let r=J.dereference(e,"array");Array.isArray(r)||this._throwError("expected array value",r);let a=this.length;a===-1&&(a=r.length,t.writeValue(r.length)),Ye(r.length,a,"coder array"+(this.localName?" "+this.localName:""));let s=[];for(let o=0;o<r.length;o++)s.push(this.coder);return Sa(t,s,r)}decode(t){let e=this.length;e===-1&&(e=t.readIndex(),w(e*rt<=t.dataLength,"insufficient data length","BUFFER_OVERRUN",{buffer:t.bytes,offset:e*rt,length:t.dataLength}));let r=[];for(let a=0;a<e;a++)r.push(new Vn(this.coder));return Da(t,r)}};var Gn=class extends q{static{i(this,"BooleanCoder")}constructor(t){super("bool","bool",t,!1)}defaultValue(){return!1}encode(t,e){let r=J.dereference(e,"bool");return t.writeValue(r?1:0)}decode(t){return!!t.readValue()}};var sr=class extends q{static{i(this,"DynamicBytesCoder")}constructor(t,e){super(t,t,e,!0)}defaultValue(){return"0x"}encode(t,e){e=at(e);let r=t.writeValue(e.length);return r+=t.writeBytes(e),r}decode(t){return t.readBytes(t.readIndex(),!0)}},$n=class extends sr{static{i(this,"BytesCoder")}constructor(t){super("bytes",t)}decode(t){return D(super.decode(t))}};var jn=class extends q{static{i(this,"FixedBytesCoder")}size;constructor(t,e){let r="bytes"+String(t);super(r,r,e,!1),v(this,{size:t},{size:"number"})}defaultValue(){return"0x0000000000000000000000000000000000000000000000000000000000000000".substring(0,2+this.size*2)}encode(t,e){let r=at(J.dereference(e,this.type));return r.length!==this.size&&this._throwError("incorrect data length",e),t.writeBytes(r)}decode(t){return D(t.readBytes(this.size))}};var Pi=new Uint8Array([]),zn=class extends q{static{i(this,"NullCoder")}constructor(t){super("null","",t,!1)}defaultValue(){return null}encode(t,e){return e!=null&&this._throwError("not null",e),t.writeBytes(Pi)}decode(t){return t.readBytes(0),null}};var ki=BigInt(0),Ai=BigInt(1),Ri=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),Jn=class extends q{static{i(this,"NumberCoder")}size;signed;constructor(t,e,r){let a=(e?"int":"uint")+t*8;super(a,a,r,!1),v(this,{size:t,signed:e},{size:"number",signed:"boolean"})}defaultValue(){return 0}encode(t,e){let r=A(J.dereference(e,this.type)),a=Oe(Ri,rt*8);if(this.signed){let s=Oe(a,this.size*8-1);(r>s||r<-(s+Ai))&&this._throwError("value out-of-bounds",e),r=Ta(r,8*rt)}else(r<ki||r>Oe(a,this.size*8))&&this._throwError("value out-of-bounds",e);return t.writeValue(r)}decode(t){let e=Oe(t.readValue(),this.size*8);return this.signed&&(e=wa(e,this.size*8)),e}};var Wn=class extends sr{static{i(this,"StringCoder")}constructor(t){super("string",t)}defaultValue(){return""}encode(t,e){return super.encode(t,Be(J.dereference(e,"string")))}decode(t){return rr(super.decode(t))}};var ie=class extends q{static{i(this,"TupleCoder")}coders;constructor(t,e){let r=!1,a=[];t.forEach(o=>{o.dynamic&&(r=!0),a.push(o.type)});let s="tuple("+a.join(",")+")";super("tuple",s,e,r),v(this,{coders:Object.freeze(t.slice())})}defaultValue(){let t=[];this.coders.forEach(r=>{t.push(r.defaultValue())});let e=this.coders.reduce((r,a)=>{let s=a.localName;return s&&(r[s]||(r[s]=0),r[s]++),r},{});return this.coders.forEach((r,a)=>{let s=r.localName;!s||e[s]!==1||(s==="length"&&(s="_length"),t[s]==null&&(t[s]=t[a]))}),Object.freeze(t)}encode(t,e){let r=J.dereference(e,"tuple");return Sa(t,this.coders,r)}decode(t){return Da(t,this.coders)}};function zt(n){return ot(Be(n))}i(zt,"id");function _a(n,t){return{address:M(n),storageKeys:t.map((e,r)=>(m(Q(e,32),"invalid slot",`storageKeys[${r}]`,e),e.toLowerCase()))}}i(_a,"accessSetify");function or(n){if(Array.isArray(n))return n.map((e,r)=>Array.isArray(e)?(m(e.length===2,"invalid slot set",`value[${r}]`,e),_a(e[0],e[1])):(m(e!=null&&typeof e=="object","invalid address-slot set","value",n),_a(e.address,e.storageKeys)));m(n!=null&&typeof n=="object","invalid access list","value",n);let t=Object.keys(n).map(e=>{let r=n[e].reduce((a,s)=>(a[s]=!0,a),{});return _a(e,Object.keys(r).sort())});return t.sort((e,r)=>e.address.localeCompare(r.address)),t}i(or,"accessListify");function st(n){let t=new Set;return n.forEach(e=>t.add(e)),Object.freeze(t)}i(st,"setify");var Ii="external public payable override",Oi=st(Ii.split(" ")),mo="constant external internal payable private public pure view override",Bi=st(mo.split(" ")),go="constructor error event fallback function receive struct",yo=st(go.split(" ")),Co="calldata memory storage payable indexed",Ni=st(Co.split(" ")),Fi="tuple returns",Si=[go,Co,Fi,mo].join(" "),Di=st(Si.split(" ")),_i={"(":"OPEN_PAREN",")":"CLOSE_PAREN","[":"OPEN_BRACKET","]":"CLOSE_BRACKET",",":"COMMA","@":"AT"},Li=new RegExp("^(\\s*)"),Hi=new RegExp("^([0-9]+)"),Ui=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)"),xo=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)$"),bo=new RegExp("^(address|bool|bytes([0-9]*)|string|u?int([0-9]*))$"),bt=class n{static{i(this,"TokenString")}#t;#e;get offset(){return this.#t}get length(){return this.#e.length-this.#t}constructor(t){this.#t=0,this.#e=t.slice()}clone(){return new n(this.#e)}reset(){this.#t=0}#r(t=0,e=0){return new n(this.#e.slice(t,e).map(r=>Object.freeze(Object.assign({},r,{match:r.match-t,linkBack:r.linkBack-t,linkNext:r.linkNext-t}))))}popKeyword(t){let e=this.peek();if(e.type!=="KEYWORD"||!t.has(e.text))throw new Error(`expected keyword ${e.text}`);return this.pop().text}popType(t){if(this.peek().type!==t){let e=this.peek();throw new Error(`expected ${t}; got ${e.type} ${JSON.stringify(e.text)}`)}return this.pop().text}popParen(){let t=this.peek();if(t.type!=="OPEN_PAREN")throw new Error("bad start");let e=this.#r(this.#t+1,t.match+1);return this.#t=t.match+1,e}popParams(){let t=this.peek();if(t.type!=="OPEN_PAREN")throw new Error("bad start");let e=[];for(;this.#t<t.match-1;){let r=this.peek().linkNext;e.push(this.#r(this.#t+1,r)),this.#t=r}return this.#t=t.match+1,e}peek(){if(this.#t>=this.#e.length)throw new Error("out-of-bounds");return this.#e[this.#t]}peekKeyword(t){let e=this.peekType("KEYWORD");return e!=null&&t.has(e)?e:null}peekType(t){if(this.length===0)return null;let e=this.peek();return e.type===t?e.text:null}pop(){let t=this.peek();return this.#t++,t}toString(){let t=[];for(let e=this.#t;e<this.#e.length;e++){let r=this.#e[e];t.push(`${r.type}:${r.text}`)}return`<TokenString ${t.join(" ")}>`}};function Zt(n){let t=[],e=i(o=>{let l=s<n.length?JSON.stringify(n[s]):"$EOI";throw new Error(`invalid token ${l} at ${s}: ${o}`)},"throwError"),r=[],a=[],s=0;for(;s<n.length;){let o=n.substring(s),l=o.match(Li);l&&(s+=l[1].length,o=n.substring(s));let u={depth:r.length,linkBack:-1,linkNext:-1,match:-1,type:"",text:"",offset:s,value:-1};t.push(u);let p=_i[o[0]]||"";if(p){if(u.type=p,u.text=o[0],s++,p==="OPEN_PAREN")r.push(t.length-1),a.push(t.length-1);else if(p=="CLOSE_PAREN")r.length===0&&e("no matching open bracket"),u.match=r.pop(),t[u.match].match=t.length-1,u.depth--,u.linkBack=a.pop(),t[u.linkBack].linkNext=t.length-1;else if(p==="COMMA")u.linkBack=a.pop(),t[u.linkBack].linkNext=t.length-1,a.push(t.length-1);else if(p==="OPEN_BRACKET")u.type="BRACKET";else if(p==="CLOSE_BRACKET"){let d=t.pop().text;if(t.length>0&&t[t.length-1].type==="NUMBER"){let h=t.pop().text;d=h+d,t[t.length-1].value=_(h)}if(t.length===0||t[t.length-1].type!=="BRACKET")throw new Error("missing opening bracket");t[t.length-1].text+=d}continue}if(l=o.match(Ui),l){if(u.text=l[1],s+=u.text.length,Di.has(u.text)){u.type="KEYWORD";continue}if(u.text.match(bo)){u.type="TYPE";continue}u.type="ID";continue}if(l=o.match(Hi),l){u.text=l[1],u.type="NUMBER",s+=u.text.length;continue}throw new Error(`unexpected token ${JSON.stringify(o[0])} at position ${s}`)}return new bt(t.map(o=>Object.freeze(o)))}i(Zt,"lex");function so(n,t){let e=[];for(let r in t.keys())n.has(r)&&e.push(r);if(e.length>1)throw new Error(`conflicting types: ${e.join(", ")}`)}i(so,"allowSingle");function Kn(n,t){if(t.peekKeyword(yo)){let e=t.pop().text;if(e!==n)throw new Error(`expected ${n}, got ${e}`)}return t.popType("ID")}i(Kn,"consumeName");function St(n,t){let e=new Set;for(;;){let r=n.peekType("KEYWORD");if(r==null||t&&!t.has(r))break;if(n.pop(),e.has(r))throw new Error(`duplicate keywords: ${JSON.stringify(r)}`);e.add(r)}return Object.freeze(e)}i(St,"consumeKeywords");function Eo(n){let t=St(n,Bi);return so(t,st("constant payable nonpayable".split(" "))),so(t,st("pure view payable nonpayable".split(" "))),t.has("view")?"view":t.has("pure")?"pure":t.has("payable")?"payable":t.has("nonpayable")?"nonpayable":t.has("constant")?"view":"nonpayable"}i(Eo,"consumeMutability");function Ft(n,t){return n.popParams().map(e=>tt.from(e,t))}i(Ft,"consumeParams");function wo(n){if(n.peekType("AT")){if(n.pop(),n.peekType("NUMBER"))return A(n.pop().text);throw new Error("invalid gas")}return null}i(wo,"consumeGas");function ce(n){if(n.length)throw new Error(`unexpected tokens at offset ${n.offset}: ${n.toString()}`)}i(ce,"consumeEoi");var Vi=new RegExp(/^(.*)\[([0-9]*)\]$/);function oo(n){let t=n.match(bo);if(m(t,"invalid type","type",n),n==="uint")return"uint256";if(n==="int")return"int256";if(t[2]){let e=parseInt(t[2]);m(e!==0&&e<=32,"invalid bytes length","type",n)}else if(t[3]){let e=parseInt(t[3]);m(e!==0&&e<=256&&e%8===0,"invalid numeric width","type",n)}return n}i(oo,"verifyBasicType");var K={},it=Symbol.for("_ethers_internal"),io="_ParamTypeInternal",co="_ErrorInternal",lo="_EventInternal",uo="_ConstructorInternal",po="_FallbackInternal",fo="_FunctionInternal",ho="_StructInternal",tt=class n{static{i(this,"ParamType")}name;type;baseType;indexed;components;arrayLength;arrayChildren;constructor(t,e,r,a,s,o,l,u){if($t(t,K,"ParamType"),Object.defineProperty(this,it,{value:io}),o&&(o=Object.freeze(o.slice())),a==="array"){if(l==null||u==null)throw new Error("")}else if(l!=null||u!=null)throw new Error("");if(a==="tuple"){if(o==null)throw new Error("")}else if(o!=null)throw new Error("");v(this,{name:e,type:r,baseType:a,indexed:s,components:o,arrayLength:l,arrayChildren:u})}format(t){if(t==null&&(t="sighash"),t==="json"){let r=this.name||"";if(this.isArray()){let s=JSON.parse(this.arrayChildren.format("json"));return s.name=r,s.type+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`,JSON.stringify(s)}let a={type:this.baseType==="tuple"?"tuple":this.type,name:r};return typeof this.indexed=="boolean"&&(a.indexed=this.indexed),this.isTuple()&&(a.components=this.components.map(s=>JSON.parse(s.format(t)))),JSON.stringify(a)}let e="";return this.isArray()?(e+=this.arrayChildren.format(t),e+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`):this.isTuple()?e+="("+this.components.map(r=>r.format(t)).join(t==="full"?", ":",")+")":e+=this.type,t!=="sighash"&&(this.indexed===!0&&(e+=" indexed"),t==="full"&&this.name&&(e+=" "+this.name)),e}isArray(){return this.baseType==="array"}isTuple(){return this.baseType==="tuple"}isIndexable(){return this.indexed!=null}walk(t,e){if(this.isArray()){if(!Array.isArray(t))throw new Error("invalid array value");if(this.arrayLength!==-1&&t.length!==this.arrayLength)throw new Error("array is wrong length");let r=this;return t.map(a=>r.arrayChildren.walk(a,e))}if(this.isTuple()){if(!Array.isArray(t))throw new Error("invalid tuple value");if(t.length!==this.components.length)throw new Error("array is wrong length");let r=this;return t.map((a,s)=>r.components[s].walk(a,e))}return e(this.type,t)}#t(t,e,r,a){if(this.isArray()){if(!Array.isArray(e))throw new Error("invalid array value");if(this.arrayLength!==-1&&e.length!==this.arrayLength)throw new Error("array is wrong length");let o=this.arrayChildren,l=e.slice();l.forEach((u,p)=>{o.#t(t,u,r,d=>{l[p]=d})}),a(l);return}if(this.isTuple()){let o=this.components,l;if(Array.isArray(e))l=e.slice();else{if(e==null||typeof e!="object")throw new Error("invalid tuple value");l=o.map(u=>{if(!u.name)throw new Error("cannot use object value with unnamed components");if(!(u.name in e))throw new Error(`missing value for component ${u.name}`);return e[u.name]})}if(l.length!==this.components.length)throw new Error("array is wrong length");l.forEach((u,p)=>{o[p].#t(t,u,r,d=>{l[p]=d})}),a(l);return}let s=r(this.type,e);s.then?t.push(async function(){a(await s)}()):a(s)}async walkAsync(t,e){let r=[],a=[t];return this.#t(r,t,e,s=>{a[0]=s}),r.length&&await Promise.all(r),a[0]}static from(t,e){if(n.isParamType(t))return t;if(typeof t=="string")try{return n.from(Zt(t),e)}catch{m(!1,"invalid param type","obj",t)}else if(t instanceof bt){let l="",u="",p=null;St(t,st(["tuple"])).has("tuple")||t.peekType("OPEN_PAREN")?(u="tuple",p=t.popParams().map(B=>n.from(B)),l=`tuple(${p.map(B=>B.format()).join(",")})`):(l=oo(t.popType("TYPE")),u=l);let d=null,h=null;for(;t.length&&t.peekType("BRACKET");){let B=t.pop();d=new n(K,"",l,u,null,p,h,d),h=B.value,l+=B.text,u="array",p=null}let f=null;if(St(t,Ni).has("indexed")){if(!e)throw new Error("");f=!0}let b=t.peekType("ID")?t.pop().text:"";if(t.length)throw new Error("leftover tokens");return new n(K,b,l,u,f,p,h,d)}let r=t.name;m(!r||typeof r=="string"&&r.match(xo),"invalid name","obj.name",r);let a=t.indexed;a==!0?(m(e,"parameter cannot be indexed","obj.indexed",t.indexed),a=!0):a=!1;let s=t.type,o=s.match(Vi);if(o){let l=parseInt(o[2]||"-1"),u=n.from({type:o[1],components:t.components});return new n(K,r||"",s,"array",a,null,l,u)}if(s==="tuple"||s.startsWith("tuple(")||s.startsWith("(")){let l=t.components!=null?t.components.map(p=>n.from(p)):null;return new n(K,r||"",s,"tuple",a,l,null,null)}return s=oo(t.type),new n(K,r||"",s,s,a,null,null,null)}static isParamType(t){return t&&t[it]===io}},Xt=class n{static{i(this,"Fragment")}type;inputs;constructor(t,e,r){$t(t,K,"Fragment"),r=Object.freeze(r.slice()),v(this,{type:e,inputs:r})}static from(t){if(typeof t=="string"){try{n.from(JSON.parse(t))}catch{}return n.from(Zt(t))}if(t instanceof bt)switch(t.peekKeyword(yo)){case"constructor":return Wt.from(t);case"error":return dt.from(t);case"event":return Jt.from(t);case"fallback":case"receive":return cr.from(t);case"function":return Kt.from(t);case"struct":return Se.from(t)}else if(typeof t=="object"){switch(t.type){case"constructor":return Wt.from(t);case"error":return dt.from(t);case"event":return Jt.from(t);case"fallback":case"receive":return cr.from(t);case"function":return Kt.from(t);case"struct":return Se.from(t)}w(!1,`unsupported type: ${t.type}`,"UNSUPPORTED_OPERATION",{operation:"Fragment.from"})}m(!1,"unsupported frgament object","obj",t)}static isConstructor(t){return Wt.isFragment(t)}static isError(t){return dt.isFragment(t)}static isEvent(t){return Jt.isFragment(t)}static isFunction(t){return Kt.isFragment(t)}static isStruct(t){return Se.isFragment(t)}},le=class extends Xt{static{i(this,"NamedFragment")}name;constructor(t,e,r,a){super(t,e,a),m(typeof r=="string"&&r.match(xo),"invalid identifier","name",r),a=Object.freeze(a.slice()),v(this,{name:r})}};function ir(n,t){return"("+t.map(e=>e.format(n)).join(n==="full"?", ":",")+")"}i(ir,"joinParams");var dt=class n extends le{static{i(this,"ErrorFragment")}constructor(t,e,r){super(t,"error",e,r),Object.defineProperty(this,it,{value:co})}get selector(){return zt(this.format("sighash")).substring(0,10)}format(t){if(t==null&&(t="sighash"),t==="json")return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map(r=>JSON.parse(r.format(t)))});let e=[];return t!=="sighash"&&e.push("error"),e.push(this.name+ir(t,this.inputs)),e.join(" ")}static from(t){if(n.isFragment(t))return t;if(typeof t=="string")return n.from(Zt(t));if(t instanceof bt){let e=Kn("error",t),r=Ft(t);return ce(t),new n(K,e,r)}return new n(K,t.name,t.inputs?t.inputs.map(tt.from):[])}static isFragment(t){return t&&t[it]===co}},Jt=class n extends le{static{i(this,"EventFragment")}anonymous;constructor(t,e,r,a){super(t,"event",e,r),Object.defineProperty(this,it,{value:lo}),v(this,{anonymous:a})}get topicHash(){return zt(this.format("sighash"))}format(t){if(t==null&&(t="sighash"),t==="json")return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map(r=>JSON.parse(r.format(t)))});let e=[];return t!=="sighash"&&e.push("event"),e.push(this.name+ir(t,this.inputs)),t!=="sighash"&&this.anonymous&&e.push("anonymous"),e.join(" ")}static getTopicHash(t,e){return e=(e||[]).map(a=>tt.from(a)),new n(K,t,e,!1).topicHash}static from(t){if(n.isFragment(t))return t;if(typeof t=="string")try{return n.from(Zt(t))}catch{m(!1,"invalid event fragment","obj",t)}else if(t instanceof bt){let e=Kn("event",t),r=Ft(t,!0),a=!!St(t,st(["anonymous"])).has("anonymous");return ce(t),new n(K,e,r,a)}return new n(K,t.name,t.inputs?t.inputs.map(e=>tt.from(e,!0)):[],!!t.anonymous)}static isFragment(t){return t&&t[it]===lo}},Wt=class n extends Xt{static{i(this,"ConstructorFragment")}payable;gas;constructor(t,e,r,a,s){super(t,e,r),Object.defineProperty(this,it,{value:uo}),v(this,{payable:a,gas:s})}format(t){if(w(t!=null&&t!=="sighash","cannot format a constructor for sighash","UNSUPPORTED_OPERATION",{operation:"format(sighash)"}),t==="json")return JSON.stringify({type:"constructor",stateMutability:this.payable?"payable":"undefined",payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(r=>JSON.parse(r.format(t)))});let e=[`constructor${ir(t,this.inputs)}`];return this.payable&&e.push("payable"),this.gas!=null&&e.push(`@${this.gas.toString()}`),e.join(" ")}static from(t){if(n.isFragment(t))return t;if(typeof t=="string")try{return n.from(Zt(t))}catch{m(!1,"invalid constuctor fragment","obj",t)}else if(t instanceof bt){St(t,st(["constructor"]));let e=Ft(t),r=!!St(t,Oi).has("payable"),a=wo(t);return ce(t),new n(K,"constructor",e,r,a)}return new n(K,"constructor",t.inputs?t.inputs.map(tt.from):[],!!t.payable,t.gas!=null?t.gas:null)}static isFragment(t){return t&&t[it]===uo}},cr=class n extends Xt{static{i(this,"FallbackFragment")}payable;constructor(t,e,r){super(t,"fallback",e),Object.defineProperty(this,it,{value:po}),v(this,{payable:r})}format(t){let e=this.inputs.length===0?"receive":"fallback";if(t==="json"){let r=this.payable?"payable":"nonpayable";return JSON.stringify({type:e,stateMutability:r})}return`${e}()${this.payable?" payable":""}`}static from(t){if(n.isFragment(t))return t;if(typeof t=="string")try{return n.from(Zt(t))}catch{m(!1,"invalid fallback fragment","obj",t)}else if(t instanceof bt){let e=t.toString(),r=t.peekKeyword(st(["fallback","receive"]));if(m(r,"type must be fallback or receive","obj",e),t.popKeyword(st(["fallback","receive"]))==="receive"){let l=Ft(t);return m(l.length===0,"receive cannot have arguments","obj.inputs",l),St(t,st(["payable"])),ce(t),new n(K,[],!0)}let s=Ft(t);s.length?m(s.length===1&&s[0].type==="bytes","invalid fallback inputs","obj.inputs",s.map(l=>l.format("minimal")).join(", ")):s=[tt.from("bytes")];let o=Eo(t);if(m(o==="nonpayable"||o==="payable","fallback cannot be constants","obj.stateMutability",o),St(t,st(["returns"])).has("returns")){let l=Ft(t);m(l.length===1&&l[0].type==="bytes","invalid fallback outputs","obj.outputs",l.map(u=>u.format("minimal")).join(", "))}return ce(t),new n(K,s,o==="payable")}if(t.type==="receive")return new n(K,[],!0);if(t.type==="fallback"){let e=[tt.from("bytes")],r=t.stateMutability==="payable";return new n(K,e,r)}m(!1,"invalid fallback description","obj",t)}static isFragment(t){return t&&t[it]===po}},Kt=class n extends le{static{i(this,"FunctionFragment")}constant;outputs;stateMutability;payable;gas;constructor(t,e,r,a,s,o){super(t,"function",e,a),Object.defineProperty(this,it,{value:fo}),s=Object.freeze(s.slice()),v(this,{constant:r==="view"||r==="pure",gas:o,outputs:s,payable:r==="payable",stateMutability:r})}get selector(){return zt(this.format("sighash")).substring(0,10)}format(t){if(t==null&&(t="sighash"),t==="json")return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:void 0,payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(r=>JSON.parse(r.format(t))),outputs:this.outputs.map(r=>JSON.parse(r.format(t)))});let e=[];return t!=="sighash"&&e.push("function"),e.push(this.name+ir(t,this.inputs)),t!=="sighash"&&(this.stateMutability!=="nonpayable"&&e.push(this.stateMutability),this.outputs&&this.outputs.length&&(e.push("returns"),e.push(ir(t,this.outputs))),this.gas!=null&&e.push(`@${this.gas.toString()}`)),e.join(" ")}static getSelector(t,e){return e=(e||[]).map(a=>tt.from(a)),new n(K,t,"view",e,[],null).selector}static from(t){if(n.isFragment(t))return t;if(typeof t=="string")try{return n.from(Zt(t))}catch{m(!1,"invalid function fragment","obj",t)}else if(t instanceof bt){let r=Kn("function",t),a=Ft(t),s=Eo(t),o=[];St(t,st(["returns"])).has("returns")&&(o=Ft(t));let l=wo(t);return ce(t),new n(K,r,s,a,o,l)}let e=t.stateMutability;return e==null&&(e="payable",typeof t.constant=="boolean"?(e="view",t.constant||(e="payable",typeof t.payable=="boolean"&&!t.payable&&(e="nonpayable"))):typeof t.payable=="boolean"&&!t.payable&&(e="nonpayable")),new n(K,t.name,e,t.inputs?t.inputs.map(tt.from):[],t.outputs?t.outputs.map(tt.from):[],t.gas!=null?t.gas:null)}static isFragment(t){return t&&t[it]===fo}},Se=class n extends le{static{i(this,"StructFragment")}constructor(t,e,r){super(t,"struct",e,r),Object.defineProperty(this,it,{value:ho})}format(){throw new Error("@TODO")}static from(t){if(typeof t=="string")try{return n.from(Zt(t))}catch{m(!1,"invalid struct fragment","obj",t)}else if(t instanceof bt){let e=Kn("struct",t),r=Ft(t);return ce(t),new n(K,e,r)}return new n(K,t.name,t.inputs?t.inputs.map(tt.from):[])}static isFragment(t){return t&&t[it]===ho}};var Et=new Map;Et.set(0,"GENERIC_PANIC");Et.set(1,"ASSERT_FALSE");Et.set(17,"OVERFLOW");Et.set(18,"DIVIDE_BY_ZERO");Et.set(33,"ENUM_RANGE_ERROR");Et.set(34,"BAD_STORAGE_DATA");Et.set(49,"STACK_UNDERFLOW");Et.set(50,"ARRAY_RANGE_ERROR");Et.set(65,"OUT_OF_MEMORY");Et.set(81,"UNINITIALIZED_FUNCTION_CALL");var Mi=new RegExp(/^bytes([0-9]*)$/),Gi=new RegExp(/^(u?int)([0-9]*)$/),La=null,To=1024;function $i(n,t,e,r){let a="missing revert data",s=null,o=null,l=null;if(e){a="execution reverted";let p=z(e);if(e=D(e),p.length===0)a+=" (no data present; likely require(false) occurred",s="require(false)";else if(p.length%32!==4)a+=" (could not decode reason; invalid data length)";else if(D(p.slice(0,4))==="0x08c379a0")try{s=r.decode(["string"],p.slice(4))[0],l={signature:"Error(string)",name:"Error",args:[s]},a+=`: ${JSON.stringify(s)}`}catch{a+=" (could not decode reason; invalid string data)"}else if(D(p.slice(0,4))==="0x4e487b71")try{let d=Number(r.decode(["uint256"],p.slice(4))[0]);l={signature:"Panic(uint256)",name:"Panic",args:[d]},s=`Panic due to ${Et.get(d)||"UNKNOWN"}(${d})`,a+=`: ${s}`}catch{a+=" (could not decode panic code)"}else a+=" (unknown custom error)"}let u={to:t.to?M(t.to):null,data:t.data||"0x"};return t.from&&(u.from=M(t.from)),Nt(a,"CALL_EXCEPTION",{action:n,data:e,reason:s,transaction:u,invocation:o,revert:l})}i($i,"getBuiltinCallException");var De=class n{static{i(this,"AbiCoder")}#t(t){if(t.isArray())return new Mn(this.#t(t.arrayChildren),t.arrayLength,t.name);if(t.isTuple())return new ie(t.components.map(r=>this.#t(r)),t.name);switch(t.baseType){case"address":return new Un(t.name);case"bool":return new Gn(t.name);case"string":return new Wn(t.name);case"bytes":return new $n(t.name);case"":return new zn(t.name)}let e=t.type.match(Gi);if(e){let r=parseInt(e[2]||"256");return m(r!==0&&r<=256&&r%8===0,"invalid "+e[1]+" bit length","param",t),new Jn(r/8,e[1]==="int",t.name)}if(e=t.type.match(Mi),e){let r=parseInt(e[1]);return m(r!==0&&r<=32,"invalid bytes length","param",t),new jn(r,t.name)}m(!1,"invalid type","type",t.type)}getDefaultValue(t){let e=t.map(a=>this.#t(tt.from(a)));return new ie(e,"_").defaultValue()}encode(t,e){Ye(e.length,t.length,"types/values length mismatch");let r=t.map(o=>this.#t(tt.from(o))),a=new ie(r,"_"),s=new oe;return a.encode(s,e),s.data}decode(t,e,r){let a=t.map(o=>this.#t(tt.from(o)));return new ie(a,"_").decode(new Hn(e,r,To))}static _setDefaultMaxInflation(t){m(typeof t=="number"&&Number.isInteger(t),"invalid defaultMaxInflation factor","value",t),To=t}static defaultAbiCoder(){return La==null&&(La=new n),La}static getBuiltinCallException(t,e,r){return $i(t,e,r,n.defaultAbiCoder())}};function vo(n){let t=z(n,"bytes");if(t.length!==32)throw new Error("invalid bytes32 - not 32 bytes long");if(t[31]!==0)throw new Error("invalid bytes32 string - no null terminator");let e=31;for(;t[e-1]===0;)e--;return rr(t.slice(0,e))}i(vo,"decodeBytes32String");var lr=class{static{i(this,"LogDescription")}fragment;name;signature;topic;args;constructor(t,e,r){let a=t.name,s=t.format();v(this,{fragment:t,name:a,signature:s,topic:e,args:r})}},ur=class{static{i(this,"TransactionDescription")}fragment;name;args;signature;selector;value;constructor(t,e,r,a){let s=t.name,o=t.format();v(this,{fragment:t,name:s,args:r,signature:o,selector:e,value:a})}},pr=class{static{i(this,"ErrorDescription")}fragment;name;args;signature;selector;constructor(t,e,r){let a=t.name,s=t.format();v(this,{fragment:t,name:a,args:r,signature:s,selector:e})}},_e=class{static{i(this,"Indexed")}hash;_isIndexed;static isIndexed(t){return!!(t&&t._isIndexed)}constructor(t){v(this,{hash:t,_isIndexed:!0})}},Po={0:"generic panic",1:"assert(false)",17:"arithmetic overflow",18:"division or modulo by zero",33:"enum overflow",34:"invalid encoded storage byte array accessed",49:"out-of-bounds array access; popping on an empty array",50:"out-of-bounds access of an array or bytesN",65:"out of memory",81:"uninitialized function"},ko={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:i(n=>`reverted with reason string ${JSON.stringify(n)}`,"reason")},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"],reason:i(n=>{let t="unknown panic code";return n>=0&&n<=255&&Po[n.toString()]&&(t=Po[n.toString()]),`reverted with panic code 0x${n.toString(16)} (${t})`},"reason")}},Dt=class n{static{i(this,"Interface")}fragments;deploy;fallback;receive;#t;#e;#r;#n;constructor(t){let e=[];typeof t=="string"?e=JSON.parse(t):e=t,this.#r=new Map,this.#t=new Map,this.#e=new Map;let r=[];for(let o of e)try{r.push(Xt.from(o))}catch(l){console.log(`[Warning] Invalid Fragment ${JSON.stringify(o)}:`,l.message)}v(this,{fragments:Object.freeze(r)});let a=null,s=!1;this.#n=this.getAbiCoder(),this.fragments.forEach((o,l)=>{let u;switch(o.type){case"constructor":if(this.deploy){console.log("duplicate definition - constructor");return}v(this,{deploy:o});return;case"fallback":o.inputs.length===0?s=!0:(m(!a||o.payable!==a.payable,"conflicting fallback fragments",`fragments[${l}]`,o),a=o,s=a.payable);return;case"function":u=this.#r;break;case"event":u=this.#e;break;case"error":u=this.#t;break;default:return}let p=o.format();u.has(p)||u.set(p,o)}),this.deploy||v(this,{deploy:Wt.from("constructor()")}),v(this,{fallback:a,receive:s})}format(t){let e=t?"minimal":"full";return this.fragments.map(a=>a.format(e))}formatJson(){let t=this.fragments.map(e=>e.format("json"));return JSON.stringify(t.map(e=>JSON.parse(e)))}getAbiCoder(){return De.defaultAbiCoder()}#a(t,e,r){if(Q(t)){let s=t.toLowerCase();for(let o of this.#r.values())if(s===o.selector)return o;return null}if(t.indexOf("(")===-1){let s=[];for(let[o,l]of this.#r)o.split("(")[0]===t&&s.push(l);if(e){let o=e.length>0?e[e.length-1]:null,l=e.length,u=!0;J.isTyped(o)&&o.type==="overrides"&&(u=!1,l--);for(let p=s.length-1;p>=0;p--){let d=s[p].inputs.length;d!==l&&(!u||d!==l-1)&&s.splice(p,1)}for(let p=s.length-1;p>=0;p--){let d=s[p].inputs;for(let h=0;h<e.length;h++)if(J.isTyped(e[h])){if(h>=d.length){if(e[h].type==="overrides")continue;s.splice(p,1);break}if(e[h].type!==d[h].baseType){s.splice(p,1);break}}}}if(s.length===1&&e&&e.length!==s[0].inputs.length){let o=e[e.length-1];(o==null||Array.isArray(o)||typeof o!="object")&&s.splice(0,1)}if(s.length===0)return null;if(s.length>1&&r){let o=s.map(l=>JSON.stringify(l.format())).join(", ");m(!1,`ambiguous function description (i.e. matches ${o})`,"key",t)}return s[0]}let a=this.#r.get(Kt.from(t).format());return a||null}getFunctionName(t){let e=this.#a(t,null,!1);return m(e,"no matching function","key",t),e.name}hasFunction(t){return!!this.#a(t,null,!1)}getFunction(t,e){return this.#a(t,e||null,!0)}forEachFunction(t){let e=Array.from(this.#r.keys());e.sort((r,a)=>r.localeCompare(a));for(let r=0;r<e.length;r++){let a=e[r];t(this.#r.get(a),r)}}#s(t,e,r){if(Q(t)){let s=t.toLowerCase();for(let o of this.#e.values())if(s===o.topicHash)return o;return null}if(t.indexOf("(")===-1){let s=[];for(let[o,l]of this.#e)o.split("(")[0]===t&&s.push(l);if(e){for(let o=s.length-1;o>=0;o--)s[o].inputs.length<e.length&&s.splice(o,1);for(let o=s.length-1;o>=0;o--){let l=s[o].inputs;for(let u=0;u<e.length;u++)if(J.isTyped(e[u])&&e[u].type!==l[u].baseType){s.splice(o,1);break}}}if(s.length===0)return null;if(s.length>1&&r){let o=s.map(l=>JSON.stringify(l.format())).join(", ");m(!1,`ambiguous event description (i.e. matches ${o})`,"key",t)}return s[0]}let a=this.#e.get(Jt.from(t).format());return a||null}getEventName(t){let e=this.#s(t,null,!1);return m(e,"no matching event","key",t),e.name}hasEvent(t){return!!this.#s(t,null,!1)}getEvent(t,e){return this.#s(t,e||null,!0)}forEachEvent(t){let e=Array.from(this.#e.keys());e.sort((r,a)=>r.localeCompare(a));for(let r=0;r<e.length;r++){let a=e[r];t(this.#e.get(a),r)}}getError(t,e){if(Q(t)){let a=t.toLowerCase();if(ko[a])return dt.from(ko[a].signature);for(let s of this.#t.values())if(a===s.selector)return s;return null}if(t.indexOf("(")===-1){let a=[];for(let[s,o]of this.#t)s.split("(")[0]===t&&a.push(o);if(a.length===0)return t==="Error"?dt.from("error Error(string)"):t==="Panic"?dt.from("error Panic(uint256)"):null;if(a.length>1){let s=a.map(o=>JSON.stringify(o.format())).join(", ");m(!1,`ambiguous error description (i.e. ${s})`,"name",t)}return a[0]}if(t=dt.from(t).format(),t==="Error(string)")return dt.from("error Error(string)");if(t==="Panic(uint256)")return dt.from("error Panic(uint256)");let r=this.#t.get(t);return r||null}forEachError(t){let e=Array.from(this.#t.keys());e.sort((r,a)=>r.localeCompare(a));for(let r=0;r<e.length;r++){let a=e[r];t(this.#t.get(a),r)}}_decodeParams(t,e){return this.#n.decode(t,e)}_encodeParams(t,e){return this.#n.encode(t,e)}encodeDeploy(t){return this._encodeParams(this.deploy.inputs,t||[])}decodeErrorResult(t,e){if(typeof t=="string"){let r=this.getError(t);m(r,"unknown error","fragment",t),t=r}return m(Pt(e,0,4)===t.selector,`data signature does not match error ${t.name}.`,"data",e),this._decodeParams(t.inputs,Pt(e,4))}encodeErrorResult(t,e){if(typeof t=="string"){let r=this.getError(t);m(r,"unknown error","fragment",t),t=r}return pt([t.selector,this._encodeParams(t.inputs,e||[])])}decodeFunctionData(t,e){if(typeof t=="string"){let r=this.getFunction(t);m(r,"unknown function","fragment",t),t=r}return m(Pt(e,0,4)===t.selector,`data signature does not match function ${t.name}.`,"data",e),this._decodeParams(t.inputs,Pt(e,4))}encodeFunctionData(t,e){if(typeof t=="string"){let r=this.getFunction(t);m(r,"unknown function","fragment",t),t=r}return pt([t.selector,this._encodeParams(t.inputs,e||[])])}decodeFunctionResult(t,e){if(typeof t=="string"){let s=this.getFunction(t);m(s,"unknown function","fragment",t),t=s}let r="invalid length for result data",a=at(e);if(a.length%32===0)try{return this.#n.decode(t.outputs,a)}catch{r="could not decode result data"}w(!1,r,"BAD_DATA",{value:D(a),info:{method:t.name,signature:t.format()}})}makeError(t,e){let r=z(t,"data"),a=De.getBuiltinCallException("call",e,r);if(a.message.startsWith("execution reverted (unknown custom error)")){let l=D(r.slice(0,4)),u=this.getError(l);if(u)try{let p=this.#n.decode(u.inputs,r.slice(4));a.revert={name:u.name,signature:u.format(),args:p},a.reason=a.revert.signature,a.message=`execution reverted: ${a.reason}`}catch{a.message="execution reverted (coult not decode custom error)"}}let o=this.parseTransaction(e);return o&&(a.invocation={method:o.name,signature:o.signature,args:o.args}),a}encodeFunctionResult(t,e){if(typeof t=="string"){let r=this.getFunction(t);m(r,"unknown function","fragment",t),t=r}return D(this.#n.encode(t.outputs,e||[]))}encodeFilterTopics(t,e){if(typeof t=="string"){let s=this.getEvent(t);m(s,"unknown event","eventFragment",t),t=s}w(e.length<=t.inputs.length,`too many arguments for ${t.format()}`,"UNEXPECTED_ARGUMENT",{count:e.length,expectedCount:t.inputs.length});let r=[];t.anonymous||r.push(t.topicHash);let a=i((s,o)=>s.type==="string"?zt(o):s.type==="bytes"?ot(D(o)):(s.type==="bool"&&typeof o=="boolean"?o=o?"0x01":"0x00":s.type.match(/^u?int/)?o=qe(o):s.type.match(/^bytes/)?o=An(o,32):s.type==="address"&&this.#n.encode(["address"],[o]),Re(D(o),32)),"encodeTopic");for(e.forEach((s,o)=>{let l=t.inputs[o];if(!l.indexed){m(s==null,"cannot filter non-indexed parameters; must be null","contract."+l.name,s);return}s==null?r.push(null):l.baseType==="array"||l.baseType==="tuple"?m(!1,"filtering with tuples or arrays not supported","contract."+l.name,s):Array.isArray(s)?r.push(s.map(u=>a(l,u))):r.push(a(l,s))});r.length&&r[r.length-1]===null;)r.pop();return r}encodeEventLog(t,e){if(typeof t=="string"){let o=this.getEvent(t);m(o,"unknown event","eventFragment",t),t=o}let r=[],a=[],s=[];return t.anonymous||r.push(t.topicHash),m(e.length===t.inputs.length,"event arguments/values mismatch","values",e),t.inputs.forEach((o,l)=>{let u=e[l];if(o.indexed)if(o.type==="string")r.push(zt(u));else if(o.type==="bytes")r.push(ot(u));else{if(o.baseType==="tuple"||o.baseType==="array")throw new Error("not implemented");r.push(this.#n.encode([o.type],[u]))}else a.push(o),s.push(u)}),{data:this.#n.encode(a,s),topics:r}}decodeEventLog(t,e,r){if(typeof t=="string"){let y=this.getEvent(t);m(y,"unknown event","eventFragment",t),t=y}if(r!=null&&!t.anonymous){let y=t.topicHash;m(Q(r[0],32)&&r[0].toLowerCase()===y,"fragment/topic mismatch","topics[0]",r[0]),r=r.slice(1)}let a=[],s=[],o=[];t.inputs.forEach((y,b)=>{y.indexed?y.type==="string"||y.type==="bytes"||y.baseType==="tuple"||y.baseType==="array"?(a.push(tt.from({type:"bytes32",name:y.name})),o.push(!0)):(a.push(y),o.push(!1)):(s.push(y),o.push(!1))});let l=r!=null?this.#n.decode(a,pt(r)):null,u=this.#n.decode(s,e,!0),p=[],d=[],h=0,f=0;return t.inputs.forEach((y,b)=>{let B=null;if(y.indexed)if(l==null)B=new _e(null);else if(o[b])B=new _e(l[f++]);else try{B=l[f++]}catch(F){B=F}else try{B=u[h++]}catch(F){B=F}p.push(B),d.push(y.name||null)}),ht.fromItems(p,d)}parseTransaction(t){let e=z(t.data,"tx.data"),r=A(t.value!=null?t.value:0,"tx.value"),a=this.getFunction(D(e.slice(0,4)));if(!a)return null;let s=this.#n.decode(a.inputs,e.slice(4));return new ur(a,a.selector,s,r)}parseCallResult(t){throw new Error("@TODO")}parseLog(t){let e=this.getEvent(t.topics[0]);return!e||e.anonymous?null:new lr(e,e.topicHash,this.decodeEventLog(e,t.data,t.topics))}parseError(t){let e=D(t),r=this.getError(Pt(e,0,4));if(!r)return null;let a=this.#n.decode(r.inputs,Pt(e,4));return new pr(r,r.selector,a)}static from(t){return t instanceof n?t:typeof t=="string"?new n(JSON.parse(t)):typeof t.formatJson=="function"?new n(t.formatJson()):typeof t.format=="function"?new n(t.format("json")):new n(t)}};var Ro=BigInt(0);function mt(n){return n==null?null:n.toString()}i(mt,"toJson");function Io(n){let t={};n.to&&(t.to=n.to),n.from&&(t.from=n.from),n.data&&(t.data=D(n.data));let e="chainId,gasLimit,gasPrice,maxFeePerBlobGas,maxFeePerGas,maxPriorityFeePerGas,value".split(/,/);for(let a of e)!(a in n)||n[a]==null||(t[a]=A(n[a],`request.${a}`));let r="type,nonce".split(/,/);for(let a of r)!(a in n)||n[a]==null||(t[a]=_(n[a],`request.${a}`));return n.accessList&&(t.accessList=or(n.accessList)),"blockTag"in n&&(t.blockTag=n.blockTag),"enableCcipRead"in n&&(t.enableCcipRead=!!n.enableCcipRead),"customData"in n&&(t.customData=n.customData),"blobVersionedHashes"in n&&n.blobVersionedHashes&&(t.blobVersionedHashes=n.blobVersionedHashes.slice()),"kzg"in n&&(t.kzg=n.kzg),"blobs"in n&&n.blobs&&(t.blobs=n.blobs.map(a=>Ea(a)?D(a):Object.assign({},a))),t}i(Io,"copyRequest");var Yt=class{static{i(this,"Log")}provider;transactionHash;blockHash;blockNumber;removed;address;data;topics;index;transactionIndex;constructor(t,e){this.provider=e;let r=Object.freeze(t.topics.slice());v(this,{transactionHash:t.transactionHash,blockHash:t.blockHash,blockNumber:t.blockNumber,removed:t.removed,address:t.address,data:t.data,topics:r,index:t.index,transactionIndex:t.transactionIndex})}toJSON(){let{address:t,blockHash:e,blockNumber:r,data:a,index:s,removed:o,topics:l,transactionHash:u,transactionIndex:p}=this;return{_type:"log",address:t,blockHash:e,blockNumber:r,data:a,index:s,removed:o,topics:l,transactionHash:u,transactionIndex:p}}async getBlock(){let t=await this.provider.getBlock(this.blockHash);return w(!!t,"failed to find transaction","UNKNOWN_ERROR",{}),t}async getTransaction(){let t=await this.provider.getTransaction(this.transactionHash);return w(!!t,"failed to find transaction","UNKNOWN_ERROR",{}),t}async getTransactionReceipt(){let t=await this.provider.getTransactionReceipt(this.transactionHash);return w(!!t,"failed to find transaction receipt","UNKNOWN_ERROR",{}),t}removedEvent(){return zi(this)}},Xn=class{static{i(this,"TransactionReceipt")}provider;to;from;contractAddress;hash;index;blockHash;blockNumber;logsBloom;gasUsed;blobGasUsed;cumulativeGasUsed;gasPrice;blobGasPrice;type;status;root;#t;constructor(t,e){this.#t=Object.freeze(t.logs.map(a=>new Yt(a,e)));let r=Ro;t.effectiveGasPrice!=null?r=t.effectiveGasPrice:t.gasPrice!=null&&(r=t.gasPrice),v(this,{provider:e,to:t.to,from:t.from,contractAddress:t.contractAddress,hash:t.hash,index:t.index,blockHash:t.blockHash,blockNumber:t.blockNumber,logsBloom:t.logsBloom,gasUsed:t.gasUsed,cumulativeGasUsed:t.cumulativeGasUsed,blobGasUsed:t.blobGasUsed,gasPrice:r,blobGasPrice:t.blobGasPrice,type:t.type,status:t.status,root:t.root})}get logs(){return this.#t}toJSON(){let{to:t,from:e,contractAddress:r,hash:a,index:s,blockHash:o,blockNumber:l,logsBloom:u,logs:p,status:d,root:h}=this;return{_type:"TransactionReceipt",blockHash:o,blockNumber:l,contractAddress:r,cumulativeGasUsed:mt(this.cumulativeGasUsed),from:e,gasPrice:mt(this.gasPrice),blobGasUsed:mt(this.blobGasUsed),blobGasPrice:mt(this.blobGasPrice),gasUsed:mt(this.gasUsed),hash:a,index:s,logs:p,logsBloom:u,root:h,status:d,to:t}}get length(){return this.logs.length}[Symbol.iterator](){let t=0;return{next:i(()=>t<this.length?{value:this.logs[t++],done:!1}:{value:void 0,done:!0},"next")}}get fee(){return this.gasUsed*this.gasPrice}async getBlock(){let t=await this.provider.getBlock(this.blockHash);if(t==null)throw new Error("TODO");return t}async getTransaction(){let t=await this.provider.getTransaction(this.hash);if(t==null)throw new Error("TODO");return t}async getResult(){return await this.provider.getTransactionResult(this.hash)}async confirmations(){return await this.provider.getBlockNumber()-this.blockNumber+1}removedEvent(){return Bo(this)}reorderedEvent(t){return w(!t||t.isMined(),"unmined 'other' transction cannot be orphaned","UNSUPPORTED_OPERATION",{operation:"reorderedEvent(other)"}),Oo(this,t)}},Zn=class n{static{i(this,"TransactionResponse")}provider;blockNumber;blockHash;index;hash;type;to;from;nonce;gasLimit;gasPrice;maxPriorityFeePerGas;maxFeePerGas;maxFeePerBlobGas;data;value;chainId;signature;accessList;blobVersionedHashes;#t;constructor(t,e){this.provider=e,this.blockNumber=t.blockNumber!=null?t.blockNumber:null,this.blockHash=t.blockHash!=null?t.blockHash:null,this.hash=t.hash,this.index=t.index,this.type=t.type,this.from=t.from,this.to=t.to||null,this.gasLimit=t.gasLimit,this.nonce=t.nonce,this.data=t.data,this.value=t.value,this.gasPrice=t.gasPrice,this.maxPriorityFeePerGas=t.maxPriorityFeePerGas!=null?t.maxPriorityFeePerGas:null,this.maxFeePerGas=t.maxFeePerGas!=null?t.maxFeePerGas:null,this.maxFeePerBlobGas=t.maxFeePerBlobGas!=null?t.maxFeePerBlobGas:null,this.chainId=t.chainId,this.signature=t.signature,this.accessList=t.accessList!=null?t.accessList:null,this.blobVersionedHashes=t.blobVersionedHashes!=null?t.blobVersionedHashes:null,this.#t=-1}toJSON(){let{blockNumber:t,blockHash:e,index:r,hash:a,type:s,to:o,from:l,nonce:u,data:p,signature:d,accessList:h,blobVersionedHashes:f}=this;return{_type:"TransactionResponse",accessList:h,blockNumber:t,blockHash:e,blobVersionedHashes:f,chainId:mt(this.chainId),data:p,from:l,gasLimit:mt(this.gasLimit),gasPrice:mt(this.gasPrice),hash:a,maxFeePerGas:mt(this.maxFeePerGas),maxPriorityFeePerGas:mt(this.maxPriorityFeePerGas),maxFeePerBlobGas:mt(this.maxFeePerBlobGas),nonce:u,signature:d,to:o,index:r,type:s,value:mt(this.value)}}async getBlock(){let t=this.blockNumber;if(t==null){let r=await this.getTransaction();r&&(t=r.blockNumber)}if(t==null)return null;let e=this.provider.getBlock(t);if(e==null)throw new Error("TODO");return e}async getTransaction(){return this.provider.getTransaction(this.hash)}async confirmations(){if(this.blockNumber==null){let{tx:e,blockNumber:r}=await ke({tx:this.getTransaction(),blockNumber:this.provider.getBlockNumber()});return e==null||e.blockNumber==null?0:r-e.blockNumber+1}return await this.provider.getBlockNumber()-this.blockNumber+1}async wait(t,e){let r=t??1,a=e??0,s=this.#t,o=-1,l=s===-1,u=i(async()=>{if(l)return null;let{blockNumber:f,nonce:y}=await ke({blockNumber:this.provider.getBlockNumber(),nonce:this.provider.getTransactionCount(this.from)});if(y<this.nonce){s=f;return}if(l)return null;let b=await this.getTransaction();if(!(b&&b.blockNumber!=null))for(o===-1&&(o=s-3,o<this.#t&&(o=this.#t));o<=f;){if(l)return null;let B=await this.provider.getBlock(o,!0);if(B==null)return;for(let F of B)if(F===this.hash)return;for(let F=0;F<B.length;F++){let I=await B.getTransaction(F);if(I.from===this.from&&I.nonce===this.nonce){if(l)return null;let G=await this.provider.getTransactionReceipt(I.hash);if(G==null||f-G.blockNumber+1<r)return;let $="replaced";I.data===this.data&&I.to===this.to&&I.value===this.value?$="repriced":I.data==="0x"&&I.from===I.to&&I.value===Ro&&($="cancelled"),w(!1,"transaction was replaced","TRANSACTION_REPLACED",{cancelled:$==="replaced"||$==="cancelled",reason:$,replacement:I.replaceableTransaction(s),hash:I.hash,receipt:G})}}o++}},"checkReplacement"),p=i(f=>{if(f==null||f.status!==0)return f;w(!1,"transaction execution reverted","CALL_EXCEPTION",{action:"sendTransaction",data:null,reason:null,invocation:null,revert:null,transaction:{to:f.to,from:f.from,data:""},receipt:f})},"checkReceipt"),d=await this.provider.getTransactionReceipt(this.hash);if(r===0)return p(d);if(d){if(await d.confirmations()>=r)return p(d)}else if(await u(),r===0)return null;return await new Promise((f,y)=>{let b=[],B=i(()=>{b.forEach(I=>I())},"cancel");if(b.push(()=>{l=!0}),a>0){let I=setTimeout(()=>{B(),y(Nt("wait for transaction timeout","TIMEOUT"))},a);b.push(()=>{clearTimeout(I)})}let F=i(async I=>{if(await I.confirmations()>=r){B();try{f(p(I))}catch(G){y(G)}}},"txListener");if(b.push(()=>{this.provider.off(this.hash,F)}),this.provider.on(this.hash,F),s>=0){let I=i(async()=>{try{await u()}catch(G){if(vt(G,"TRANSACTION_REPLACED")){B(),y(G);return}}l||this.provider.once("block",I)},"replaceListener");b.push(()=>{this.provider.off("block",I)}),this.provider.once("block",I)}})}isMined(){return this.blockHash!=null}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}isCancun(){return this.type===3}removedEvent(){return w(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),Bo(this)}reorderedEvent(t){return w(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),w(!t||t.isMined(),"unmined 'other' transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),Oo(this,t)}replaceableTransaction(t){m(Number.isInteger(t)&&t>=0,"invalid startBlock","startBlock",t);let e=new n(this,this.provider);return e.#t=t,e}};function Oo(n,t){return{orphan:"reorder-transaction",tx:n,other:t}}i(Oo,"createReorderedTransactionFilter");function Bo(n){return{orphan:"drop-transaction",tx:n}}i(Bo,"createRemovedTransactionFilter");function zi(n){return{orphan:"drop-log",log:{transactionHash:n.transactionHash,blockHash:n.blockHash,blockNumber:n.blockNumber,address:n.address,data:n.data,topics:Object.freeze(n.topics.slice()),index:n.index}}}i(zi,"createRemovedLogFilter");var ue=class extends Yt{static{i(this,"EventLog")}interface;fragment;args;constructor(t,e,r){super(t,t.provider);let a=e.decodeEventLog(r,t.data,t.topics);v(this,{args:a,fragment:r,interface:e})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}},Le=class extends Yt{static{i(this,"UndecodedEventLog")}error;constructor(t,e){super(t,t.provider),v(this,{error:e})}},Yn=class extends Xn{static{i(this,"ContractTransactionReceipt")}#t;constructor(t,e,r){super(r,e),this.#t=t}get logs(){return super.logs.map(t=>{let e=t.topics.length?this.#t.getEvent(t.topics[0]):null;if(e)try{return new ue(t,this.#t,e)}catch(r){return new Le(t,r)}return t})}},pe=class extends Zn{static{i(this,"ContractTransactionResponse")}#t;constructor(t,e,r){super(r,e),this.#t=t}async wait(t,e){let r=await super.wait(t,e);return r==null?null:new Yn(this.#t,this.provider,r)}},He=class extends er{static{i(this,"ContractUnknownEventPayload")}log;constructor(t,e,r,a){super(t,e,r),v(this,{log:a})}async getBlock(){return await this.log.getBlock()}async getTransaction(){return await this.log.getTransaction()}async getTransactionReceipt(){return await this.log.getTransactionReceipt()}},dr=class extends He{static{i(this,"ContractEventPayload")}constructor(t,e,r,a,s){super(t,e,r,new ue(s,t.interface,a));let o=t.interface.decodeEventLog(a,this.log.data,this.log.topics);v(this,{args:o,fragment:a})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}};var No=BigInt(0);function So(n){return n&&typeof n.call=="function"}i(So,"canCall");function Do(n){return n&&typeof n.estimateGas=="function"}i(Do,"canEstimate");function ta(n){return n&&typeof n.resolveName=="function"}i(ta,"canResolve");function _o(n){return n&&typeof n.sendTransaction=="function"}i(_o,"canSend");function Lo(n){if(n!=null){if(ta(n))return n;if(n.provider)return n.provider}}i(Lo,"getResolver");var Ha=class{static{i(this,"PreparedTopicFilter")}#t;fragment;constructor(t,e,r){if(v(this,{fragment:e}),e.inputs.length<r.length)throw new Error("too many arguments");let a=fe(t.runner,"resolveName"),s=ta(a)?a:null;this.#t=async function(){let o=await Promise.all(e.inputs.map((l,u)=>r[u]==null?null:l.walkAsync(r[u],(d,h)=>d==="address"?Array.isArray(h)?Promise.all(h.map(f=>ae(f,s))):ae(h,s):h)));return t.interface.encodeFilterTopics(e,o)}()}getTopicFilter(){return this.#t}};function fe(n,t){return n==null?null:typeof n[t]=="function"?n:n.provider&&typeof n.provider[t]=="function"?n.provider:null}i(fe,"getRunner");function de(n){return n==null?null:n.provider||null}i(de,"getProvider");async function Ho(n,t){let e=J.dereference(n,"overrides");m(typeof e=="object","invalid overrides parameter","overrides",n);let r=Io(e);return m(r.to==null||(t||[]).indexOf("to")>=0,"cannot override to","overrides.to",r.to),m(r.data==null||(t||[]).indexOf("data")>=0,"cannot override data","overrides.data",r.data),r.from&&(r.from=r.from),r}i(Ho,"copyOverrides");async function Ji(n,t,e){let r=fe(n,"resolveName"),a=ta(r)?r:null;return await Promise.all(t.map((s,o)=>s.walkAsync(e[o],(l,u)=>(u=J.dereference(u,l),l==="address"?ae(u,a):u))))}i(Ji,"resolveArgs");function Wi(n){let t=i(async function(o){let l=await Ho(o,["data"]);l.to=await n.getAddress(),l.from&&(l.from=await ae(l.from,Lo(n.runner)));let u=n.interface,p=A(l.value||No,"overrides.value")===No,d=(l.data||"0x")==="0x";u.fallback&&!u.fallback.payable&&u.receive&&!d&&!p&&m(!1,"cannot send data to receive or send value to non-payable fallback","overrides",o),m(u.fallback||d,"cannot send data to receive-only contract","overrides.data",l.data);let h=u.receive||u.fallback&&u.fallback.payable;return m(h||p,"cannot send value to non-payable fallback","overrides.value",l.value),m(u.fallback||d,"cannot send data to receive-only contract","overrides.data",l.data),l},"populateTransaction"),e=i(async function(o){let l=fe(n.runner,"call");w(So(l),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});let u=await t(o);try{return await l.call(u)}catch(p){throw Pn(p)&&p.data?n.interface.makeError(p.data,u):p}},"staticCall"),r=i(async function(o){let l=n.runner;w(_o(l),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});let u=await l.sendTransaction(await t(o)),p=de(n.runner);return new pe(n.interface,p,u)},"send"),a=i(async function(o){let l=fe(n.runner,"estimateGas");return w(Do(l),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await l.estimateGas(await t(o))},"estimateGas"),s=i(async o=>await r(o),"method");return v(s,{_contract:n,estimateGas:a,populateTransaction:t,send:r,staticCall:e}),s}i(Wi,"buildWrappedFallback");function Ki(n,t){let e=i(function(...p){let d=n.interface.getFunction(t,p);return w(d,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:t,args:p}}),d},"getFragment"),r=i(async function(...p){let d=e(...p),h={};if(d.inputs.length+1===p.length&&(h=await Ho(p.pop()),h.from&&(h.from=await ae(h.from,Lo(n.runner)))),d.inputs.length!==p.length)throw new Error("internal error: fragment inputs doesn't match arguments; should not happen");let f=await Ji(n.runner,d.inputs,p);return Object.assign({},h,await ke({to:n.getAddress(),data:n.interface.encodeFunctionData(d,f)}))},"populateTransaction"),a=i(async function(...p){let d=await l(...p);return d.length===1?d[0]:d},"staticCall"),s=i(async function(...p){let d=n.runner;w(_o(d),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});let h=await d.sendTransaction(await r(...p)),f=de(n.runner);return new pe(n.interface,f,h)},"send"),o=i(async function(...p){let d=fe(n.runner,"estimateGas");return w(Do(d),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await d.estimateGas(await r(...p))},"estimateGas"),l=i(async function(...p){let d=fe(n.runner,"call");w(So(d),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});let h;try{h=await r(...p)}catch(b){let B=p.at(-1).blockTag;throw B&&(b.blockNumber=B),b}let f="0x";try{f=await d.call(h)}catch(b){throw Pn(b)&&b.data?n.interface.makeError(b.data,h):b}let y=e(...p);return n.interface.decodeFunctionResult(y,f)},"staticCallResult"),u=i(async(...p)=>e(...p).constant?await a(...p):await s(...p),"method");return v(u,{name:n.interface.getFunctionName(t),_contract:n,_key:t,getFragment:e,estimateGas:o,populateTransaction:r,send:s,staticCall:a,staticCallResult:l}),Object.defineProperty(u,"fragment",{configurable:!1,enumerable:!0,get:i(()=>{let p=n.interface.getFunction(t);return w(p,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:t}}),p},"get")}),u}i(Ki,"buildWrappedMethod");function Xi(n,t){let e=i(function(...a){let s=n.interface.getEvent(t,a);return w(s,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:t,args:a}}),s},"getFragment"),r=i(function(...a){return new Ha(n,e(...a),a)},"method");return v(r,{name:n.interface.getEventName(t),_contract:n,_key:t,getFragment:e}),Object.defineProperty(r,"fragment",{configurable:!1,enumerable:!0,get:i(()=>{let a=n.interface.getEvent(t);return w(a,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:t}}),a},"get")}),r}i(Xi,"buildWrappedEvent");var qn=Symbol.for("_ethersInternal_contract"),Uo=new WeakMap;function Zi(n,t){Uo.set(n[qn],t)}i(Zi,"setInternal");function ft(n){return Uo.get(n[qn])}i(ft,"getInternal");function Yi(n){return n&&typeof n=="object"&&"getTopicFilter"in n&&typeof n.getTopicFilter=="function"&&n.fragment}i(Yi,"isDeferred");async function Ma(n,t){let e,r=null;if(Array.isArray(t)){let s=i(function(o){if(Q(o,32))return o;let l=n.interface.getEvent(o);return m(l,"unknown fragment","name",o),l.topicHash},"topicHashify");e=t.map(o=>o==null?null:Array.isArray(o)?o.map(s):s(o))}else t==="*"?e=[null]:typeof t=="string"?Q(t,32)?e=[t]:(r=n.interface.getEvent(t),m(r,"unknown fragment","event",t),e=[r.topicHash]):Yi(t)?e=await t.getTopicFilter():"fragment"in t?(r=t.fragment,e=[r.topicHash]):m(!1,"unknown event name","event",t);e=e.map(s=>{if(s==null)return null;if(Array.isArray(s)){let o=Array.from(new Set(s.map(l=>l.toLowerCase())).values());return o.length===1?o[0]:(o.sort(),o)}return s.toLowerCase()});let a=e.map(s=>s==null?"null":Array.isArray(s)?s.join("|"):s).join("&");return{fragment:r,tag:a,topics:e}}i(Ma,"getSubInfo");async function fr(n,t){let{subs:e}=ft(n);return e.get((await Ma(n,t)).tag)||null}i(fr,"hasSub");async function Fo(n,t,e){let r=de(n.runner);w(r,"contract runner does not support subscribing","UNSUPPORTED_OPERATION",{operation:t});let{fragment:a,tag:s,topics:o}=await Ma(n,e),{addr:l,subs:u}=ft(n),p=u.get(s);if(!p){let h={address:l||n,topics:o},f=i(F=>{let I=a;if(I==null)try{I=n.interface.getEvent(F.topics[0])}catch{}if(I){let G=I,$=a?n.interface.decodeEventLog(a,F.data,F.topics):[];Va(n,e,$,W=>new dr(n,W,e,G,F))}else Va(n,e,[],G=>new He(n,G,e,F))},"listener"),y=[];p={tag:s,listeners:[],start:i(()=>{y.length||y.push(r.on(h,f))},"start"),stop:i(async()=>{if(y.length==0)return;let F=y;y=[],await Promise.all(F),r.off(h,f)},"stop")},u.set(s,p)}return p}i(Fo,"getSub");var Ua=Promise.resolve();async function Qi(n,t,e,r){await Ua;let a=await fr(n,t);if(!a)return!1;let s=a.listeners.length;return a.listeners=a.listeners.filter(({listener:o,once:l})=>{let u=Array.from(e);r&&u.push(r(l?null:o));try{o.call(n,...u)}catch{}return!l}),a.listeners.length===0&&(a.stop(),ft(n).subs.delete(a.tag)),s>0}i(Qi,"_emit");async function Va(n,t,e,r){try{await Ua}catch{}let a=Qi(n,t,e,r);return Ua=a,await a}i(Va,"emit");var Qn=["then"],he=class n{static{i(this,"BaseContract")}target;interface;runner;filters;[qn];fallback;constructor(t,e,r,a){m(typeof t=="string"||_n(t),"invalid value for Contract target","target",t),r==null&&(r=null);let s=Dt.from(e);v(this,{target:t,runner:r,interface:s}),Object.defineProperty(this,qn,{value:{}});let o,l=null,u=null;if(a){let h=de(r);u=new pe(this.interface,h,a)}let p=new Map;if(typeof t=="string")if(Q(t))l=t,o=Promise.resolve(t);else{let h=fe(r,"resolveName");if(!ta(h))throw Nt("contract runner does not support name resolution","UNSUPPORTED_OPERATION",{operation:"resolveName"});o=h.resolveName(t).then(f=>{if(f==null)throw Nt("an ENS name used for a contract target must be correctly configured","UNCONFIGURED_NAME",{value:t});return ft(this).addr=f,f})}else o=t.getAddress().then(h=>{if(h==null)throw new Error("TODO");return ft(this).addr=h,h});Zi(this,{addrPromise:o,addr:l,deployTx:u,subs:p});let d=new Proxy({},{get:i((h,f,y)=>{if(typeof f=="symbol"||Qn.indexOf(f)>=0)return Reflect.get(h,f,y);try{return this.getEvent(f)}catch(b){if(!vt(b,"INVALID_ARGUMENT")||b.argument!=="key")throw b}},"get"),has:i((h,f)=>Qn.indexOf(f)>=0?Reflect.has(h,f):Reflect.has(h,f)||this.interface.hasEvent(String(f)),"has")});return v(this,{filters:d}),v(this,{fallback:s.receive||s.fallback?Wi(this):null}),new Proxy(this,{get:i((h,f,y)=>{if(typeof f=="symbol"||f in h||Qn.indexOf(f)>=0)return Reflect.get(h,f,y);try{return h.getFunction(f)}catch(b){if(!vt(b,"INVALID_ARGUMENT")||b.argument!=="key")throw b}},"get"),has:i((h,f)=>typeof f=="symbol"||f in h||Qn.indexOf(f)>=0?Reflect.has(h,f):h.interface.hasFunction(f),"has")})}connect(t){return new n(this.target,this.interface,t)}attach(t){return new n(t,this.interface,this.runner)}async getAddress(){return await ft(this).addrPromise}async getDeployedCode(){let t=de(this.runner);w(t,"runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"getDeployedCode"});let e=await t.getCode(await this.getAddress());return e==="0x"?null:e}async waitForDeployment(){let t=this.deploymentTransaction();if(t)return await t.wait(),this;if(await this.getDeployedCode()!=null)return this;let r=de(this.runner);return w(r!=null,"contract runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"waitForDeployment"}),new Promise((a,s)=>{let o=i(async()=>{try{if(await this.getDeployedCode()!=null)return a(this);r.once("block",o)}catch(l){s(l)}},"checkCode");o()})}deploymentTransaction(){return ft(this).deployTx}getFunction(t){return typeof t!="string"&&(t=t.format()),Ki(this,t)}getEvent(t){return typeof t!="string"&&(t=t.format()),Xi(this,t)}async queryTransaction(t){throw new Error("@TODO")}async queryFilter(t,e,r){e==null&&(e=0),r==null&&(r="latest");let{addr:a,addrPromise:s}=ft(this),o=a||await s,{fragment:l,topics:u}=await Ma(this,t),p={address:o,topics:u,fromBlock:e,toBlock:r},d=de(this.runner);return w(d,"contract runner does not have a provider","UNSUPPORTED_OPERATION",{operation:"queryFilter"}),(await d.getLogs(p)).map(h=>{let f=l;if(f==null)try{f=this.interface.getEvent(h.topics[0])}catch{}if(f)try{return new ue(h,this.interface,f)}catch(y){return new Le(h,y)}return new Yt(h,d)})}async on(t,e){let r=await Fo(this,"on",t);return r.listeners.push({listener:e,once:!1}),r.start(),this}async once(t,e){let r=await Fo(this,"once",t);return r.listeners.push({listener:e,once:!0}),r.start(),this}async emit(t,...e){return await Va(this,t,e,null)}async listenerCount(t){if(t){let a=await fr(this,t);return a?a.listeners.length:0}let{subs:e}=ft(this),r=0;for(let{listeners:a}of e.values())r+=a.length;return r}async listeners(t){if(t){let a=await fr(this,t);return a?a.listeners.map(({listener:s})=>s):[]}let{subs:e}=ft(this),r=[];for(let{listeners:a}of e.values())r=r.concat(a.map(({listener:s})=>s));return r}async off(t,e){let r=await fr(this,t);if(!r)return this;if(e){let a=r.listeners.map(({listener:s})=>s).indexOf(e);a>=0&&r.listeners.splice(a,1)}return(e==null||r.listeners.length===0)&&(r.stop(),ft(this).subs.delete(r.tag)),this}async removeAllListeners(t){if(t){let e=await fr(this,t);if(!e)return this;e.stop(),ft(this).subs.delete(e.tag)}else{let{subs:e}=ft(this);for(let{tag:r,stop:a}of e.values())a(),e.delete(r)}return this}async addListener(t,e){return await this.on(t,e)}async removeListener(t,e){return await this.off(t,e)}static buildClass(t){class e extends n{static{i(this,"CustomContract")}constructor(a,s=null){super(a,t,s)}}return e}static from(t,e,r){return r==null&&(r=null),new this(t,e,r)}};function qi(){return he}i(qi,"_ContractBase");var Ue=class extends qi(){static{i(this,"Contract")}};var Vo=BigInt(0);function O(n,t){return function(e){return e==null?t:n(e)}}i(O,"allowNull");function Ve(n,t){return e=>{if(t&&e==null)return null;if(!Array.isArray(e))throw new Error("not an array");return e.map(r=>n(r))}}i(Ve,"arrayOf");function me(n,t){return e=>{let r={};for(let a in n){let s=a;if(t&&a in t&&!(s in e)){for(let o of t[a])if(o in e){s=o;break}}try{let o=n[a](e[s]);o!==void 0&&(r[a]=o)}catch(o){let l=o instanceof Error?o.message:"not-an-error";w(!1,`invalid value for value.${a} (${l})`,"BAD_DATA",{value:e})}}return r}}i(me,"object");function tc(n){switch(n){case!0:case"true":return!0;case!1:case"false":return!1}m(!1,`invalid boolean; ${JSON.stringify(n)}`,"value",n)}i(tc,"formatBoolean");function Qt(n){return m(Q(n,!0),"invalid data","value",n),n}i(Qt,"formatData");function et(n){return m(Q(n,32),"invalid hash","value",n),n}i(et,"formatHash");var ec=me({address:M,blockHash:et,blockNumber:_,data:Qt,index:_,removed:O(tc,!1),topics:Ve(et),transactionHash:et,transactionIndex:_},{index:["logIndex"]});function Mo(n){return ec(n)}i(Mo,"formatLog");var rc=me({hash:O(et),parentHash:et,parentBeaconBlockRoot:O(et,null),number:_,timestamp:_,nonce:O(Qt),difficulty:A,gasLimit:A,gasUsed:A,stateRoot:O(et,null),receiptsRoot:O(et,null),blobGasUsed:O(A,null),excessBlobGas:O(A,null),miner:O(M),prevRandao:O(et,null),extraData:Qt,baseFeePerGas:O(A)},{prevRandao:["mixHash"]});function Go(n){let t=rc(n);return t.transactions=n.transactions.map(e=>typeof e=="string"?e:$a(e)),t}i(Go,"formatBlock");var nc=me({transactionIndex:_,blockNumber:_,transactionHash:et,address:M,topics:Ve(et),data:Qt,index:_,blockHash:et},{index:["logIndex"]});function Ga(n){return nc(n)}i(Ga,"formatReceiptLog");var Id=me({to:O(M,null),from:O(M,null),contractAddress:O(M,null),index:_,root:O(D),gasUsed:A,blobGasUsed:O(A,null),logsBloom:O(Qt),blockHash:et,hash:et,logs:Ve(Ga),blockNumber:_,cumulativeGasUsed:A,effectiveGasPrice:O(A),blobGasPrice:O(A,null),status:O(_),type:O(_,0)},{effectiveGasPrice:["gasPrice"],hash:["transactionHash"],index:["transactionIndex"]});function $a(n){n.to&&A(n.to)===Vo&&(n.to="0x0000000000000000000000000000000000000000");let t=me({hash:et,index:O(_,void 0),type:i(e=>e==="0x"||e==null?0:_(e),"type"),accessList:O(or,null),blobVersionedHashes:O(Ve(et,!0),null),blockHash:O(et,null),blockNumber:O(_,null),transactionIndex:O(_,null),from:M,gasPrice:O(A),maxPriorityFeePerGas:O(A),maxFeePerGas:O(A),maxFeePerBlobGas:O(A,null),gasLimit:A,to:O(M,null),value:A,nonce:_,data:Qt,creates:O(M,null),chainId:O(A,null)},{data:["input"],gasLimit:["gas"],index:["transactionIndex"]})(n);if(t.to==null&&t.creates==null&&(t.creates=Oa(t)),(n.type===1||n.type===2)&&n.accessList==null&&(t.accessList=[]),n.signature?t.signature=Fe.from(n.signature):t.signature=Fe.from(n),t.chainId==null){let e=t.signature.legacyChainId;e!=null&&(t.chainId=e)}return t.blockHash&&A(t.blockHash)===Vo&&(t.blockHash=null),t}i($a,"formatTransactionResponse");var hr=class extends Error{static{i(this,"SimpleEthersError")}e;constructor(t,e,r){super(t),this.stack=r}toString(){return this.message+`
|
|
3
|
+
`+this.stack?.toString()}};function H(n,t,e){if(n instanceof hr)return n;let r="Check here for possible cause and fix: https://docs.sentio.xyz/docs/handling-errors#ethers-error",a="",s=n;return s.code==="CALL_EXCEPTION"||s.code==="BAD_DATA"?s.data==="0x"?(t?a=`jsonrpc eth_call return '0x' (likely contract not existed) at chain ${t.chainId}, ${r}:
|
|
4
|
+
${n.message}`:a=`jsonrpc eth_call return '0x' (likely contract not existed), ${r}:
|
|
5
|
+
${n.message}`,new hr(a,s,e)):new hr(`eth call error ${s.message}, ${r}:
|
|
6
|
+
${JSON.stringify(s)}`,s,e):(a="other error during call error ${e.message}\n"+JSON.stringify(n)+`
|
|
7
|
+
`+e?.toString()+`
|
|
8
|
+
`+r,new Error(a))}i(H,"transformEtherError");function Me(n){let t=[];for(let[e,r]of n.fragment.inputs.entries())r.name===""?t.push("arg"+e):t.push(r.name);return ht.fromItems(Array.from(n.args.values()),t)}i(Me,"fixEmptyKey");var ac=me({to:O(M,null),from:O(M,null),contractAddress:O(M,null),index:_,root:O(D),gasUsed:A,logsBloom:O(Qt),blockHash:et,hash:et,logs:O(Ve(Ga)),blockNumber:_,cumulativeGasUsed:A,effectiveGasPrice:O(A),gasPrice:O(A),status:O(_),type:O(_,0)},{hash:["transactionHash"],index:["transactionIndex"]});function $o(n){return ac(n)}i($o,"formatTransactionReceipt");function nt(n){let t=n.log?Mo(n.log):void 0;n.block&&!n.block.transactions&&(n.block.transactions=[]);let e=n.block?sc(n.block):void 0,r=n.trace?n.trace:void 0,a;n.transaction&&(n.transaction.v||(n.transaction.v="0x1c",n.transaction.r="0x88ff6cf0fefd94db46111149ae4bfc179e9b94721fffd821d38d16464b3f71d0",n.transaction.s="0x45e0aff800961cfce805daef7016b9b675c137a6a41a548f7b60a3484c06a33a"),a=$a(n.transaction));let s=n.transactionReceipt?$o(n.transactionReceipt):void 0;return{log:t,block:e,trace:r,transaction:a,transactionReceipt:s}}i(nt,"formatEthData");function sc(n){return n={...n,...Go(n)},n.transactionReceipts&&(n.transactionReceipts=n.transactionReceipts.map(t=>$o(t))),n}i(sc,"formatRichBlock");function Zd(n){try{return M(n)==="0x0000000000000000000000000000000000000000"}catch{return!1}}i(Zd,"isNullAddress");function Ge(n){return n===ve?n:M(n).toLowerCase()}i(Ge,"validateAndNormalizeAddress");function U(n,t,e,r){try{let s=new Dt([e]).encodeFunctionData(t,r);return{context:n,calldata:s}}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}i(U,"encodeCallData");function gt(n,t,e){return new Ue(n,t,e)}i(gt,"newContract");function yt(n){return new Dt(n)}i(yt,"newInterface");import("node:process").then(n=>n.stdout.write(""));var zo=Tn(jo(),1);import{ListStateStorage as oc}from"@sentio/runtime";import{EthChainId as Jo}from"@sentio/chain";var L=i(()=>({ethCallParams:[]}),"defaultPreprocessHandler");var mr=class n extends oc{static{i(this,"GlobalProcessorState")}static INSTANCE=new n},ja=class n{static{i(this,"GlobalProcessor")}config;blockHandlers=ne([]);transactionHandler=ne([]);traceHandlers=ne([]);static bind(t){let e=new n(t);return mr.INSTANCE.addValue(e),e}constructor(t){return this.config={address:ve,name:t.name||"Global",network:t.network||Jo.ETHEREUM,startBlock:0n},t.startBlock&&(this.config.startBlock=BigInt(t.startBlock)),t.endBlock&&(this.config.endBlock=BigInt(t.endBlock)),re(this)}onBlockInterval(t,e=250,r=1e3,a,s=L){return this.onInterval(t,void 0,{recentInterval:e,backfillInterval:r},a,s)}onTimeInterval(t,e=60,r=240,a,s=L){return this.onInterval(t,{recentInterval:e,backfillInterval:r},void 0,a,s)}getChainId(){return this.config.network}onInterval(t,e,r,a,s=L){let o=this.getChainId();e&&e.backfillInterval<e.recentInterval&&(e.backfillInterval=e.recentInterval);let l=this;return this.blockHandlers.push({handlerName:ut(),handler:i(async function(u){let{block:p}=nt(u);if(!p)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"Block is empty");let d=new wt(o,ve,new Date(p.timestamp*1e3),p,void 0,void 0,void 0,void 0,l.config.baseLabels);return await t(p,d),d.stopAndGetResult()},"handler"),preprocessHandler:i(async function(u,p){let{block:d}=nt(u);if(!d)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"Block is empty");let h=new wt(o,ve,new Date(d.timestamp*1e3),d,void 0,void 0,void 0,void 0,l.config.baseLabels);return s(d,h,p)},"preprocessHandler"),timeIntervalInMinutes:e,blockInterval:r,fetchConfig:lt.fromPartial(a||{})}),this}onTransaction(t,e,r=L){let a=this.getChainId(),s=this;return this.transactionHandler.push({handlerName:ut(),handler:i(async function(o){let{trace:l,block:u,transaction:p,transactionReceipt:d}=nt(o);if(!p)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"transaction is empty");let h=p.to;h===l?.action.from&&(h="*");let f=new wt(a,h||"*",o.timestamp,u,void 0,l,p,d,s.config.baseLabels);return await t(p,f),f.stopAndGetResult()},"handler"),preprocessHandler:i(async function(o,l){let{trace:u,block:p,transaction:d,transactionReceipt:h}=nt(o);if(!d)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"transaction is empty");let f=d.to;f===u?.action.from&&(f="*");let y=new wt(a,f||"*",o.timestamp,p,void 0,u,d,h,s.config.baseLabels);return r(d,y,l)},"preprocessHandler"),fetchConfig:lt.fromPartial(e||{})}),this}onTrace(t,e,r,a=L){let s=this.getChainId();typeof t=="string"&&(t=[t]);for(let l of t)if(l.length<=2)throw new Error("Invalid signature length, must start with 0x");let o=this;return this.traceHandlers.push({signatures:t,fetchConfig:lt.fromPartial(r||{}),handlerName:ut(),handler:i(async function(l){let{trace:u,block:p,transaction:d,transactionReceipt:h}=nt(l);if(!u)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"trace is null");let f=new wt(s,u.action.to||"*",l.timestamp,p,void 0,u,d,h,o.config.baseLabels);return await e(u,f),f.stopAndGetResult()},"handler"),preprocessHandler:i(async function(l,u){let{trace:p,block:d,transaction:h,transactionReceipt:f}=nt(l);if(!p)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"trace is null");let y=new wt(s,p.action.to||"*",l.timestamp,d,void 0,p,h,f,o.config.baseLabels);return a(p,y,u)},"preprocessHandler")}),this}},_t=class{static{i(this,"BaseProcessor")}blockHandlers=ne([]);eventHandlers=ne([]);traceHandlers=ne([]);config;constructor(t){return this.config={address:t.address,name:t.name||"",network:t.network||Jo.ETHEREUM,startBlock:0n,baseLabels:t.baseLabels},t.startBlock&&(this.config.startBlock=BigInt(t.startBlock)),t.endBlock&&(this.config.endBlock=BigInt(t.endBlock)),re(this)}getChainId(){return this.config.network}onEvent(t,e,r=L){let a=[],s=this.CreateBoundContractView();for(let o of s.rawContract.interface.fragments)if(o.type==="event"){let l=s.rawContract.filters[o.format()];a.push(l())}return this.onEthEvent(t,a,e,r)}onEthEvent(t,e,r,a=L,s=ut()){let o=this.getChainId(),l=[];Array.isArray(e)?l=e:l.push(e);let u=this.config.name,p=this;return this.eventHandlers.push({filters:l,fetchConfig:lt.fromPartial(r||{}),handlerName:s,handler:i(async function(d,h){let{log:f,block:y,transaction:b,transactionReceipt:B}=nt(d);if(!f)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"Log is empty");let F;try{F=p.CreateBoundContractView()}catch(W){throw W}p.config.address==="*"&&(F.address=f.address);let I=new Tt(u,F,o,d.timestamp,y,f,void 0,b,B,p.config.baseLabels,h),G=f,$=null;try{$=F.rawContract.interface.parseLog(G)}catch(W){if(W instanceof Error&&W.message.includes("data out-of-bounds"))return console.error("Can't decode",f,"may because of incompatible ABIs, e.g. string vs indexed string",W),Te.fromPartial({});throw W}if($){let W={...f,name:$.name,args:Me($)};return await t(W,I),I.stopAndGetResult()}return Te.fromPartial({})},"handler"),preprocessHandler:i(async function(d,h){let{log:f,block:y,transaction:b,transactionReceipt:B}=nt(d);if(!f)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"Log is empty");let F;try{F=p.CreateBoundContractView()}catch(W){throw W}p.config.address==="*"&&(F.address=f.address);let I=new Tt(u,F,o,d.timestamp,y,f,void 0,b,B,p.config.baseLabels),G=f,$=null;try{$=F.rawContract.interface.parseLog(G)}catch(W){if(W instanceof Error&&W.message.includes("data out-of-bounds"))return console.error("Can't decode",f,"may because of incompatible ABIs, e.g. string vs indexed string",W),ee.fromPartial({});throw W}if($){let W={...f,name:$.name,args:Me($)};return a(W,I,h)}return ee.fromPartial({})},"preprocessHandler")}),this}onBlockInterval(t,e=250,r=1e3,a,s=L){return this.onInterval(t,void 0,{recentInterval:e,backfillInterval:r},a,s)}onTimeInterval(t,e=60,r=240,a,s=L){return this.onInterval(t,{recentInterval:e,backfillInterval:r},void 0,a,s)}onInterval(t,e,r,a,s=L,o=ut()){let l=this.getChainId(),u=this,p=this.config.name;return this.blockHandlers.push({handlerName:o,handler:i(async function(d,h){let{block:f}=nt(d);if(!f)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"Block is empty");let y=u.CreateBoundContractView(),b=new Tt(p,y,l,new Date(f.timestamp*1e3),f,void 0,void 0,void 0,void 0,u.config.baseLabels,h);return await t(f,b),b.stopAndGetResult()},"handler"),preprocessHandler:i(async function(d,h){let{block:f}=nt(d);if(!f)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"Block is empty");let y=u.CreateBoundContractView(),b=new Tt(p,y,l,new Date(f.timestamp*1e3),f,void 0,void 0,void 0,void 0,u.config.baseLabels);return s(f,b,h)},"preprocessHandler"),timeIntervalInMinutes:e,blockInterval:r,fetchConfig:lt.fromPartial(a||{})}),this}onEthTrace(t,e,r,a=L,s=ut()){let o=this.getChainId(),l=this.config.name,u=this;return typeof t=="string"&&(t=[t]),this.traceHandlers.push({signatures:t,fetchConfig:lt.fromPartial(r||{}),handlerName:s,handler:i(async function(p,d){let h=u.CreateBoundContractView(),f=h.rawContract.interface,{trace:y,block:b,transaction:B,transactionReceipt:F}=nt(p),I=y?.action.input?.slice(0,10);if(!I)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"trace has no sighash");let G=f.getFunction(I);if(!y||!G)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"trace is null");let $=y;if($.name=G.name,$.functionSignature=G.format(),!y?.action.input)return Te.fromPartial({});let W="0x"+y.action.input.slice(10);try{$.args=f.getAbiCoder().decode(G.inputs,W,!0)}catch(Rt){if(!y.error)throw Rt;console.error("Failed to decode successful trace",Rt)}let Ee=new Tt(l,h,o,p.timestamp,b,void 0,y,B,F,u.config.baseLabels,d);return await e($,Ee),Ee.stopAndGetResult()},"handler"),preprocessHandler:i(async function(p,d){let h=u.CreateBoundContractView(),f=h.rawContract.interface,{trace:y,block:b,transaction:B,transactionReceipt:F}=nt(p),I=y?.action.input?.slice(0,10);if(!I)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"trace has no sighash");let G=f.getFunction(I);if(!y||!G)throw new j.ServerError(j.Status.INVALID_ARGUMENT,"trace is null");let $=y;if($.name=G.name,$.functionSignature=G.format(),!y?.action.input)return ee.fromPartial({});let W="0x"+y.action.input.slice(10);try{$.args=f.getAbiCoder().decode(G.inputs,W,!0)}catch(Rt){if(!y.error)throw Rt;console.error("Failed to decode successful trace",Rt)}let Ee=new Tt(l,h,o,p.timestamp,b,void 0,y,B,F,u.config.baseLabels);return a($,Ee,d)},"preprocessHandler")}),this}onTrace(t,e,r=L){let a=this.CreateBoundContractView(),s=[];for(let o of a.rawContract.interface.fragments)if(o.type==="function"){let l=o.format(),u=new TextEncoder().encode(l),p="0x"+zo.default.keccak_256(u).substring(0,8);s.push(p)}return this.onEthTrace(s,t,e,r)}};import("node:process").then(n=>n.stdout.write(""));import{getProvider as lc}from"@sentio/runtime";import{EthChainId as ic}from"@sentio/chain";var za=class{static{i(this,"BindOptions")}address;network=ic.ETHEREUM;name;startBlock;endBlock;baseLabels};function gr(n){let t=[n.address];return n.network&&t.push(n.network),n.name&&t.push(n.name),n.startBlock&&t.push(n.startBlock.toString()),n.endBlock&&t.push(n.endBlock.toString()),t.join("_")}i(gr,"getOptionsSignature");var Ja=class{static{i(this,"AccountBindOptions")}address;network;startBlock;baseLabels};import("node:process").then(n=>n.stdout.write(""));import{MapStateStorage as cc}from"@sentio/runtime";var $e=class n extends cc{static{i(this,"EthProcessorState")}static INSTANCE=new n},Wo=new Map;function Ko(n,t,e){return[n,t.toLowerCase(),e].join("_")}i(Ko,"getKey");function ge(n){let t=gr(n);return $e.INSTANCE.getValue(t)}i(ge,"getProcessor");function Lt(n,t){let e=gr(n);$e.INSTANCE.getOrSetValue(e,t)}i(Lt,"addProcessor");function yr(n,t,e){let r=Ko(n,t,e);return Wo.get(r)}i(yr,"getContractByABI");function Cr(n,t,e,r){let a=Ko(n,t,e);return Wo.set(a,r)}i(Cr,"addContractByABI");import("node:process").then(n=>n.stdout.write(""));var Wa=class n extends _t{static{i(this,"GenericProcessor")}eventABI;constructor(t,e){super(e),this.eventABI=t}CreateBoundContractView(){let t=new he(this.config.address,this.eventABI,lc(this.config.network));return new Bt(this.config.address,new Ot(t))}static bind(t,e){Array.isArray(t)||(t=[t]),e.name||(e.name="Generic");let r=new n(t,e);return Lt(e,r),r}};import("node:process").then(n=>n.stdout.write(""));import{ListStateStorage as uc,processMetrics as pc}from"@sentio/runtime";var je=class n extends uc{static{i(this,"ProcessorTemplateProcessorState")}static INSTANCE=new n},ye=class{static{i(this,"BaseProcessorTemplate")}id;binds=new Set;blockHandlers=[];traceHandlers=[];eventHandlers=[];constructor(){return this.id=je.INSTANCE.getValues().length,je.INSTANCE.addValue(this),re(this)}bind(t,e){let r=gr({address:t.address,network:e.chainId});if(this.binds.has(r)){console.log(`Same address can be bind to one template only once, ignore duplicate bind: ${r}`);return}this.binds.add(r);let a=this.bindInternal({...t,network:e.chainId});for(let o of this.eventHandlers)a.onEthEvent(o.handler,o.filter,o.fetchConfig,o.preprocessHandler,o.handlerName);for(let o of this.traceHandlers)a.onEthTrace(o.signature,o.handler,o.fetchConfig,o.preprocessHandler,o.handlerName);for(let o of this.blockHandlers)a.onInterval(o.handler,o.timeIntervalInMinutes,o.blockInterval,o.fetchConfig,o.preprocessHandler,o.handlerName);let s={templateId:this.id,contract:{address:t.address,name:t.name||"",chainId:e.chainId,abi:""},startBlock:BigInt(t.startBlock||0),endBlock:BigInt(t.endBlock||0),baseLabels:t.baseLabels};vn.INSTANCE.addValue(s),e.update({states:{configUpdated:!0}}),pc.processor_template_instance_count.add(1,{chain_id:e.chainId,template:this.constructor.name})}onEthEvent(t,e,r,a=L){return this.eventHandlers.push({handlerName:ut(),handler:t,preprocessHandler:a,filter:e,fetchConfig:lt.fromPartial(r||{})}),this}onBlockInterval(t,e=1e3,r=4e3,a,s=L){return this.onInterval(t,void 0,{recentInterval:e,backfillInterval:r},a,s)}onTimeInterval(t,e=60,r=240,a,s=L){return this.onInterval(t,{recentInterval:e,backfillInterval:r},void 0,a,s)}onInterval(t,e,r,a,s=L){return this.blockHandlers.push({handlerName:ut(),handler:t,preprocessHandler:s,timeIntervalInMinutes:e,blockInterval:r,fetchConfig:a}),this}onTrace(t,e,r,a=L){return this.traceHandlers.push({signature:t,handlerName:ut(),handler:e,preprocessHandler:a,fetchConfig:lt.fromPartial(r||{})}),this}};import("node:process").then(n=>n.stdout.write(""));var Ka=[{inputs:[{internalType:"address",name:"_aggregator",type:"address"},{internalType:"address",name:"_accessController",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"int256",name:"current",type:"int256"},{indexed:!0,internalType:"uint256",name:"roundId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"updatedAt",type:"uint256"}],name:"AnswerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"roundId",type:"uint256"},{indexed:!0,internalType:"address",name:"startedBy",type:"address"},{indexed:!1,internalType:"uint256",name:"startedAt",type:"uint256"}],name:"NewRound",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"}],name:"OwnershipTransferRequested",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"}],name:"OwnershipTransferred",type:"event"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"accessController",outputs:[{internalType:"contract AccessControllerInterface",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"aggregator",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_aggregator",type:"address"}],name:"confirmAggregator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[],name:"description",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_roundId",type:"uint256"}],name:"getAnswer",outputs:[{internalType:"int256",name:"",type:"int256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint80",name:"_roundId",type:"uint80"}],name:"getRoundData",outputs:[{internalType:"uint80",name:"roundId",type:"uint80"},{internalType:"int256",name:"answer",type:"int256"},{internalType:"uint256",name:"startedAt",type:"uint256"},{internalType:"uint256",name:"updatedAt",type:"uint256"},{internalType:"uint80",name:"answeredInRound",type:"uint80"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_roundId",type:"uint256"}],name:"getTimestamp",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"latestAnswer",outputs:[{internalType:"int256",name:"",type:"int256"}],stateMutability:"view",type:"function"},{inputs:[],name:"latestRound",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"latestRoundData",outputs:[{internalType:"uint80",name:"roundId",type:"uint80"},{internalType:"int256",name:"answer",type:"int256"},{internalType:"uint256",name:"startedAt",type:"uint256"},{internalType:"uint256",name:"updatedAt",type:"uint256"},{internalType:"uint80",name:"answeredInRound",type:"uint80"}],stateMutability:"view",type:"function"},{inputs:[],name:"latestTimestamp",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address payable",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"}],name:"phaseAggregators",outputs:[{internalType:"contract AggregatorV2V3Interface",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"phaseId",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_aggregator",type:"address"}],name:"proposeAggregator",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"proposedAggregator",outputs:[{internalType:"contract AggregatorV2V3Interface",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint80",name:"_roundId",type:"uint80"}],name:"proposedGetRoundData",outputs:[{internalType:"uint80",name:"roundId",type:"uint80"},{internalType:"int256",name:"answer",type:"int256"},{internalType:"uint256",name:"startedAt",type:"uint256"},{internalType:"uint256",name:"updatedAt",type:"uint256"},{internalType:"uint80",name:"answeredInRound",type:"uint80"}],stateMutability:"view",type:"function"},{inputs:[],name:"proposedLatestRoundData",outputs:[{internalType:"uint80",name:"roundId",type:"uint80"},{internalType:"int256",name:"answer",type:"int256"},{internalType:"uint256",name:"startedAt",type:"uint256"},{internalType:"uint256",name:"updatedAt",type:"uint256"},{internalType:"uint80",name:"answeredInRound",type:"uint80"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_accessController",type:"address"}],name:"setController",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_to",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"version",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}],ra=class{static{i(this,"EACAggregatorProxy__factory")}static abi=Ka;static createInterface(){return yt(Ka)}static connect(t,e){return gt(t,Ka,e)}};import("node:process").then(n=>n.stdout.write(""));var Xa=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!1,internalType:"bool",name:"approved",type:"bool"}],name:"ApprovalForAll",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"uint256[]",name:"values",type:"uint256[]"}],name:"TransferBatch",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"id",type:"uint256"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"TransferSingle",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"value",type:"string"},{indexed:!0,internalType:"uint256",name:"id",type:"uint256"}],name:"URI",type:"event"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"id",type:"uint256"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"accounts",type:"address[]"},{internalType:"uint256[]",name:"ids",type:"uint256[]"}],name:"balanceOfBatch",outputs:[{internalType:"uint256[]",name:"",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"address",name:"operator",type:"address"}],name:"isApprovedForAll",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"bytes",name:"data",type:"bytes"}],name:"safeBatchTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"id",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"safeTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"operator",type:"address"},{internalType:"bool",name:"approved",type:"bool"}],name:"setApprovalForAll",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:"uint256",name:"id",type:"uint256"}],name:"uri",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}],na=class{static{i(this,"ERC1155__factory")}static abi=Xa;static createInterface(){return yt(Xa)}static connect(t,e){return gt(t,Xa,e)}};import("node:process").then(n=>n.stdout.write(""));var Za=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{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:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",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"},{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:"amount",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:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"burnFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"subtractedValue",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"locker",outputs:[{internalType:"contract ILocker",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_locker",type:"address"}],name:"setLocker",outputs:[],stateMutability:"nonpayable",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:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"address",name:"recipient",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"}],kt=class{static{i(this,"ERC20__factory")}static abi=Za;static createInterface(){return yt(Za)}static connect(t,e){return gt(t,Za,e)}};import("node:process").then(n=>n.stdout.write(""));var Ya=[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"spender",type:"address"},{name:"value",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"value",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"who",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"to",type:"address"},{name:"value",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{inputs:[{name:"_name",type:"string"},{name:"_symbol",type:"string"},{name:"_decimals",type:"uint8"}],payable:!1,stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"}],aa=class{static{i(this,"ERC20Bytes__factory")}static abi=Ya;static createInterface(){return yt(Ya)}static connect(t,e){return gt(t,Ya,e)}};import("node:process").then(n=>n.stdout.write(""));var Qa=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"approved",type:"address"},{indexed:!0,internalType:"uint256",name:"tokenId",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!1,internalType:"bool",name:"approved",type:"bool"}],name:"ApprovalForAll",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"uint256",name:"tokenId",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"approve",outputs:[],stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"getApproved",outputs:[{internalType:"address",name:"operator",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"operator",type:"address"}],name:"isApprovedForAll",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"ownerOf",outputs:[{internalType:"address",name:"owner",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"safeTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"safeTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"operator",type:"address"},{internalType:"bool",name:"_approved",type:"bool"}],name:"setApprovalForAll",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:[{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"tokenURI",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"}],At=class{static{i(this,"ERC721__factory")}static abi=Qa;static createInterface(){return yt(Qa)}static connect(t,e){return gt(t,Qa,e)}};import("node:process").then(n=>n.stdout.write(""));var qa=[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"guy",type:"address"},{name:"wad",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"src",type:"address"},{name:"dst",type:"address"},{name:"wad",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{name:"wad",type:"uint256"}],name:"withdraw",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"dst",type:"address"},{name:"wad",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[],name:"deposit",outputs:[],payable:!0,stateMutability:"payable",type:"function"},{constant:!0,inputs:[{name:"",type:"address"},{name:"",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{payable:!0,stateMutability:"payable",type:"fallback"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!0,name:"guy",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!0,name:"dst",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"dst",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Withdrawal",type:"event"}],sa=class{static{i(this,"WETH9__factory")}static abi=qa;static createInterface(){return yt(qa)}static connect(t,e){return gt(t,qa,e)}};import("node:process").then(n=>n.stdout.write(""));import("node:process").then(n=>n.stdout.write(""));import("node:process").then(n=>n.stdout.write(""));var yc={};hs(yc,{ERC20BoundContractView:()=>xr,ERC20ContractView:()=>oa,ERC20Processor:()=>Ce,ERC20ProcessorTemplate:()=>ts,ERC20__factory:()=>kt,getERC20Contract:()=>xe,getERC20ContractOnContext:()=>fc,mockApprovalLog:()=>hc,mockOwnershipTransferredLog:()=>mc,mockTransferLog:()=>gc});var Ht=kt.connect("0x0",ca),oa=class extends Ot{static{i(this,"ERC20ContractView")}constructor(t){super(t),this.callStatic.contract=t}async allowance(t,e,r,a,s){try{return await this.contract.getFunction("allowance(address,address)")(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}}async balanceOf(t,e,r,a){try{return await this.contract.getFunction("balanceOf(address)")(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}async decimals(t,e,r){try{return await this.contract.getFunction("decimals()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async locker(t,e,r){try{return await this.contract.getFunction("locker()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async name(t,e,r){try{return await this.contract.getFunction("name()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async owner(t,e,r){try{return await this.contract.getFunction("owner()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async symbol(t,e,r){try{return await this.contract.getFunction("symbol()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async totalSupply(t,e,r){try{return await this.contract.getFunction("totalSupply()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}callStatic={contract:this.contract,async approve(t,e,r,a,s){try{return await this.contract.getFunction("approve(address,uint256)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async burn(t,e,r,a){try{return await this.contract.getFunction("burn(uint256)").staticCall(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}},async burnFrom(t,e,r,a,s){try{return await this.contract.getFunction("burnFrom(address,uint256)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async decreaseAllowance(t,e,r,a,s){try{return await this.contract.getFunction("decreaseAllowance(address,uint256)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async increaseAllowance(t,e,r,a,s){try{return await this.contract.getFunction("increaseAllowance(address,uint256)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async renounceOwnership(t,e,r){try{return await this.contract.getFunction("renounceOwnership()").staticCall(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}},async setLocker(t,e,r,a){try{return await this.contract.getFunction("setLocker(address)").staticCall(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}},async transfer(t,e,r,a,s){try{return await this.contract.getFunction("transfer(address,uint256)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async transferFrom(t,e,r,a,s,o){try{return await this.contract.getFunction("transferFrom(address,address,uint256)").staticCall(t,e,r,a||{})}catch(l){let u=new Error().stack;throw H(l,void 0,u)}},async transferOwnership(t,e,r,a){try{return await this.contract.getFunction("transferOwnership(address)").staticCall(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}};encodeCall={allowance(t,e,r){return U(r,"allowance","function allowance(address,address)",[t,e])},approve(t,e,r){return U(r,"approve","function approve(address,uint256)",[t,e])},balanceOf(t,e){return U(e,"balanceOf","function balanceOf(address)",[t])},burn(t,e){return U(e,"burn","function burn(uint256)",[t])},burnFrom(t,e,r){return U(r,"burnFrom","function burnFrom(address,uint256)",[t,e])},decimals(t){return U(t,"decimals","function decimals()",[])},decreaseAllowance(t,e,r){return U(r,"decreaseAllowance","function decreaseAllowance(address,uint256)",[t,e])},increaseAllowance(t,e,r){return U(r,"increaseAllowance","function increaseAllowance(address,uint256)",[t,e])},locker(t){return U(t,"locker","function locker()",[])},name(t){return U(t,"name","function name()",[])},owner(t){return U(t,"owner","function owner()",[])},renounceOwnership(t){return U(t,"renounceOwnership","function renounceOwnership()",[])},setLocker(t,e){return U(e,"setLocker","function setLocker(address)",[t])},symbol(t){return U(t,"symbol","function symbol()",[])},totalSupply(t){return U(t,"totalSupply","function totalSupply()",[])},transfer(t,e,r){return U(r,"transfer","function transfer(address,uint256)",[t,e])},transferFrom(t,e,r,a){return U(a,"transferFrom","function transferFrom(address,address,uint256)",[t,e,r])},transferOwnership(t,e){return U(e,"transferOwnership","function transferOwnership(address)",[t])}}},xr=class extends Bt{static{i(this,"ERC20BoundContractView")}async allowance(t,e,r){return await this.view.allowance(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())}async balanceOf(t,e){return await this.view.balanceOf(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}async decimals(t){return await this.view.decimals({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async locker(t){return await this.view.locker({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async name(t){return await this.view.name({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async owner(t){return await this.view.owner({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async symbol(t){return await this.view.symbol({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async totalSupply(t){return await this.view.totalSupply({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}callStatic={view:this.view,context:this.context,async approve(t,e,r){return await this.view.callStatic.approve(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async burn(t,e){return await this.view.callStatic.burn(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())},async burnFrom(t,e,r){return await this.view.callStatic.burnFrom(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async decreaseAllowance(t,e,r){return await this.view.callStatic.decreaseAllowance(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async increaseAllowance(t,e,r){return await this.view.callStatic.increaseAllowance(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async renounceOwnership(t){return await this.view.callStatic.renounceOwnership({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())},async setLocker(t,e){return await this.view.callStatic.setLocker(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())},async transfer(t,e,r){return await this.view.callStatic.transfer(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async transferFrom(t,e,r,a){return await this.view.callStatic.transferFrom(t,e,r,{blockTag:this.context.blockNumber,...a},this.context.preparedData,this.context.getEthCallContext())},async transferOwnership(t,e){return await this.view.callStatic.transferOwnership(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}};encodeCall={view:this.view,context:this.context,allowance(t,e,r){return this.view.encodeCall.allowance(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},approve(t,e,r){return this.view.encodeCall.approve(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},balanceOf(t,e){return this.view.encodeCall.balanceOf(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},burn(t,e){return this.view.encodeCall.burn(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},burnFrom(t,e,r){return this.view.encodeCall.burnFrom(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},decimals(t){return this.view.encodeCall.decimals({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},decreaseAllowance(t,e,r){return this.view.encodeCall.decreaseAllowance(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},increaseAllowance(t,e,r){return this.view.encodeCall.increaseAllowance(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},locker(t){return this.view.encodeCall.locker({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},name(t){return this.view.encodeCall.name({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},owner(t){return this.view.encodeCall.owner({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},renounceOwnership(t){return this.view.encodeCall.renounceOwnership({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},setLocker(t,e){return this.view.encodeCall.setLocker(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},symbol(t){return this.view.encodeCall.symbol({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},totalSupply(t){return this.view.encodeCall.totalSupply({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},transfer(t,e,r){return this.view.encodeCall.transfer(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},transferFrom(t,e,r,a){return this.view.encodeCall.transferFrom(t,e,r,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(a)})},transferOwnership(t,e){return this.view.encodeCall.transferOwnership(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})}}},Ce=class n extends _t{static{i(this,"ERC20Processor")}onEventApproval(t,e,r,a){return e||(e=Ht.filters["Approval(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}onEventOwnershipTransferred(t,e,r,a){return e||(e=Ht.filters["OwnershipTransferred(address,address)"](null,null)),super.onEthEvent(t,e,r,a)}onEventTransfer(t,e,r,a){return e||(e=Ht.filters["Transfer(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}onCallAllowance(t,e,r){return super.onEthTrace("0xdd62ed3e",t,e,r)}onCallApprove(t,e,r){return super.onEthTrace("0x095ea7b3",t,e,r)}onCallBalanceOf(t,e,r){return super.onEthTrace("0x70a08231",t,e,r)}onCallBurn(t,e,r){return super.onEthTrace("0x42966c68",t,e,r)}onCallBurnFrom(t,e,r){return super.onEthTrace("0x79cc6790",t,e,r)}onCallDecimals(t,e,r){return super.onEthTrace("0x313ce567",t,e,r)}onCallDecreaseAllowance(t,e,r){return super.onEthTrace("0xa457c2d7",t,e,r)}onCallIncreaseAllowance(t,e,r){return super.onEthTrace("0x39509351",t,e,r)}onCallLocker(t,e,r){return super.onEthTrace("0xd7b96d4e",t,e,r)}onCallName(t,e,r){return super.onEthTrace("0x06fdde03",t,e,r)}onCallOwner(t,e,r){return super.onEthTrace("0x8da5cb5b",t,e,r)}onCallRenounceOwnership(t,e,r){return super.onEthTrace("0x715018a6",t,e,r)}onCallSetLocker(t,e,r){return super.onEthTrace("0x171060ec",t,e,r)}onCallSymbol(t,e,r){return super.onEthTrace("0x95d89b41",t,e,r)}onCallTotalSupply(t,e,r){return super.onEthTrace("0x18160ddd",t,e,r)}onCallTransfer(t,e,r){return super.onEthTrace("0xa9059cbb",t,e,r)}onCallTransferFrom(t,e,r){return super.onEthTrace("0x23b872dd",t,e,r)}onCallTransferOwnership(t,e,r){return super.onEthTrace("0xf2fde38b",t,e,r)}static filters={Approval(t,e,r){return Ht.filters["Approval(address,address,uint256)"](t,e,r)},OwnershipTransferred(t,e){return Ht.filters["OwnershipTransferred(address,address)"](t,e)},Transfer(t,e,r){return Ht.filters["Transfer(address,address,uint256)"](t,e,r)}};CreateBoundContractView(){let t=xe(this.config.network,this.config.address);return new xr(this.config.address,t)}static bind(t){t.name||(t.name="ERC20");let e=ge(t);return e||(e=new n(t),Lt(t,e)),e}},ts=class extends ye{static{i(this,"ERC20ProcessorTemplate")}bindInternal(t){t.name||(t.name="ERC20");let e=ge(t);return e||(e=new Ce(t),Lt(t,e)),e}onEventApproval(t,e,r,a){return e||(e=Ht.filters["Approval(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}onEventOwnershipTransferred(t,e,r,a){return e||(e=Ht.filters["OwnershipTransferred(address,address)"](null,null)),super.onEthEvent(t,e,r,a)}onEventTransfer(t,e,r,a){return e||(e=Ht.filters["Transfer(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}};function xe(n,t){let e=yr("ERC20",t,n);if(!e){let r=kt.connect(t,ia(n));e=new oa(r),Cr("ERC20",t,n,e)}return e}i(xe,"getERC20Contract");function fc(n,t){let e=xe(n.getChainId(),t),r=new xr(t,e);return r.context=n,r.callStatic&&(r.callStatic.context=n),r}i(fc,"getERC20ContractOnContext");import("node:process").then(n=>n.stdout.write(""));var es={blockHash:"0x0000000000000000000000000000000000000000000000000000000000000000",blockNumber:0,logIndex:0,removed:!1,transactionHash:"0x0000000000000000000000000000000000000000000000000000000000000000",transactionIndex:0};function hc(n,t){let r=xe(qt.ETHEREUM,n).rawContract.interface.encodeEventLog("Approval(address,address,uint256)",[t.owner,t.spender,t.value]);return{...es,index:0,address:n,data:r.data,topics:r.topics}}i(hc,"mockApprovalLog");function mc(n,t){let r=xe(qt.ETHEREUM,n).rawContract.interface.encodeEventLog("OwnershipTransferred(address,address)",[t.previousOwner,t.newOwner]);return{...es,index:0,address:n,data:r.data,topics:r.topics}}i(mc,"mockOwnershipTransferredLog");function gc(n,t){let r=xe(qt.ETHEREUM,n).rawContract.interface.encodeEventLog("Transfer(address,address,uint256)",[t.from,t.to,t.value]);return{...es,index:0,address:n,data:r.data,topics:r.topics}}i(gc,"mockTransferLog");import("node:process").then(n=>n.stdout.write(""));import("node:process").then(n=>n.stdout.write(""));import("node:process").then(n=>n.stdout.write(""));import{ListStateStorage as Cc}from"@sentio/runtime";var ze=class n extends Cc{static{i(this,"AccountProcessorState")}static INSTANCE=new n};import("node:process").then(n=>n.stdout.write(""));var Je=Tn(xa(),1);import{EthChainId as xc}from"@sentio/chain";var Xo=kt.createInterface(),dm=At.createInterface(),rs=class n{static{i(this,"AccountProcessor")}config;eventHandlers=[];static bind(t){let e=new n(t);return ze.INSTANCE.addValue(e),e}constructor(t){return this.config={...t,network:t.network||xc.ETHEREUM},re(this)}getChainId(){return this.config.network}onERC20TransferIn(t,e=[],r,a=L){return this.onERC20(t,e,s=>Ut.filters.Transfer(null,this.config.address),r,a)}onERC20TransferOut(t,e=[],r,a=L){return this.onERC20(t,e,s=>Ce.filters.Transfer(this.config.address),r,a)}onERC20Minted(t,e=[],r,a=L){return this.onERC20(t,e,s=>Ce.filters.Transfer("0x0000000000000000000000000000000000000000",this.config.address),r,a)}onERC20(t,e=[],r,a,s=L){return this.onERC(t,e,r,ya.ERC20,a,s)}onERC721TransferIn(t,e,r,a=L){return this.onERC721(t,e,s=>Ut.filters.Transfer(null,this.config.address),r,a)}onERC721TransferOut(t,e,r,a=L){return this.onERC721(t,e,s=>Ut.filters.Transfer(this.config.address),r,a)}onERC721Minted(t,e=[],r,a=L){return this.onERC721(t,e,s=>Ut.filters.Transfer("0x0000000000000000000000000000000000000000",this.config.address),r,a)}onERC721(t,e,r,a,s=L){return this.onERC(t,e,r,ya.ERC721,a,s)}onERC(t,e,r,a,s,o=L){let l=[];for(let u of e){let p=r(this.config.address);p.address=u,l.push(p)}if(!l.length){let u=r(this.config.address);u.address=void 0,u.addressType=a,l.push(u)}return this.onEvent(t,l,s,o)}onEvent(t,e,r,a=L){let s=this.getChainId(),o=[];Array.isArray(e)?o=e:o.push(e);let l=this.config;return this.eventHandlers.push({filters:o,fetchConfig:lt.fromPartial(r||{}),handlerName:ut(),handler:i(async function(u){let{log:p,block:d,transaction:h,transactionReceipt:f}=nt(u);if(!p)throw new Je.ServerError(Je.Status.INVALID_ARGUMENT,"Log is empty");let y=new Pe(s,l.address,u.timestamp,u.block,p,void 0,h,f),b=p,B=Xo.parseLog(b);if(B){let F={...p,name:B.name,args:Me(B)};return await t(F,y),y.stopAndGetResult()}return Te.fromPartial({})},"handler"),preprocessHandler:i(async function(u,p){let{log:d,block:h,transaction:f,transactionReceipt:y}=nt(u);if(!d)throw new Je.ServerError(Je.Status.INVALID_ARGUMENT,"Log is empty");let b=new Pe(s,l.address,u.timestamp,u.block,d,void 0,f,y),B=d,F=Xo.parseLog(B);if(F){let I={...d,name:F.name,args:Me(F)};return a(I,b,p)}return ee.fromPartial({})},"preprocessHandler")}),this}};import("node:process").then(n=>n.stdout.write(""));import{getProvider as ia,DummyProvider as ca}from"@sentio/runtime";import{errorString as te,mergeProcessResults as la,Plugin as bc,PluginManager as Ec,USER_PROCESSOR as Zo,GLOBAL_CONFIG as ua}from"@sentio/runtime";var S=Tn(xa(),1);import{EthChainId as wc}from"@sentio/chain";var da=class extends bc{static{i(this,"EthPlugin")}name="EthPlugin";handlers={blockHandlers:[],eventHandlers:[],traceHandlers:[],transactionHandlers:[]};preprocessHandlers={blockHandlers:[],eventHandlers:[],traceHandlers:[],transactionHandlers:[]};async configure(t){let e={blockHandlers:[],eventHandlers:[],traceHandlers:[],transactionHandlers:[]},r={blockHandlers:[],eventHandlers:[],traceHandlers:[],transactionHandlers:[]};for(let a of $e.INSTANCE.getValues()){let s=a.getChainId(),o=Ca.fromPartial({processorType:Zo,contract:{name:a.config.name,chainId:s.toString(),address:Ge(a.config.address),abi:""},startBlock:a.config.startBlock,endBlock:a.config.endBlock});for(let l of a.blockHandlers){r.blockHandlers.push(l.preprocessHandler??L);let u=e.blockHandlers.push(l.handler)-1;o.intervalConfigs.push({slot:0,slotInterval:l.blockInterval,minutes:0,minutesInterval:l.timeIntervalInMinutes,handlerId:u,handlerName:l.handlerName,fetchConfig:l.fetchConfig})}for(let l of a.traceHandlers){r.traceHandlers.push(l.preprocessHandler??L);let u=e.traceHandlers.push(l.handler)-1;for(let p of l.signatures)o.traceConfigs.push({signature:p,handlerId:u,handlerName:l.handlerName,fetchConfig:l.fetchConfig})}for(let l of a.eventHandlers){r.eventHandlers.push(l.preprocessHandler??L);let p={handlerId:e.eventHandlers.push(l.handler)-1,handlerName:l.handlerName,filters:[],fetchConfig:l.fetchConfig};for(let d of l.filters){let h=await d.getTopicFilter(),f={addressType:void 0,address:o.contract?.address&&Ge(o.contract.address),topics:[]};for(let y of h){let b=[];Array.isArray(y)?b=b.concat(y):y&&b.push(y),f.topics.push({hashes:b})}p.filters.push(f)}o.logConfigs.push(p)}t.contractConfigs.push(o)}for(let a of mr.INSTANCE.getValues()){let s=a.getChainId(),o=Ca.fromPartial({processorType:Zo,contract:{name:a.config.name,chainId:s.toString(),address:a.config.address,abi:""},startBlock:a.config.startBlock,endBlock:a.config.endBlock});for(let l of a.blockHandlers){r.blockHandlers.push(l.preprocessHandler??L);let u=e.blockHandlers.push(l.handler)-1;o.intervalConfigs.push({slot:0,slotInterval:l.blockInterval,minutes:0,minutesInterval:l.timeIntervalInMinutes,handlerId:u,handlerName:l.handlerName,fetchConfig:l.fetchConfig})}for(let l of a.transactionHandler){r.transactionHandlers.push(l.preprocessHandler??L);let u=e.transactionHandlers.push(l.handler)-1;o.transactionConfig.push({handlerId:u,handlerName:l.handlerName,fetchConfig:l.fetchConfig})}for(let l of a.traceHandlers){r.traceHandlers.push(l.preprocessHandler??L);let u=e.traceHandlers.push(l.handler)-1;for(let p of l.signatures)o.traceConfigs.push({signature:p,handlerId:u,handlerName:l.handlerName,fetchConfig:l.fetchConfig})}t.contractConfigs.push(o)}for(let a of ze.INSTANCE.getValues()){let s=ms.fromPartial({address:Ge(a.config.address),chainId:a.getChainId().toString(),startBlock:a.config.startBlock?BigInt(a.config.startBlock):0n});for(let o of a.eventHandlers){r.eventHandlers.push(o.preprocessHandler??L);let u={handlerId:e.eventHandlers.push(o.handler)-1,handlerName:o.handlerName,filters:[],fetchConfig:o.fetchConfig};for(let p of o.filters){let d=await p.getTopicFilter(),h;p.address&&(h=p.address.toString());let f={addressType:p.addressType,address:h&&Ge(h),topics:[]};for(let y of d){let b=[];Array.isArray(y)?b=b.concat(y):y&&b.push(y),f.topics.push({hashes:b})}u.filters.push(f)}s.logConfigs.push(u)}t.accountConfigs.push(s)}this.handlers=e,this.preprocessHandlers=r}supportedHandlers=[ct.ETH_LOG,ct.ETH_BLOCK,ct.ETH_TRACE,ct.ETH_TRANSACTION];processBinding(t,e){switch(t.handlerType){case ct.ETH_LOG:return this.processLog(t,e);case ct.ETH_TRACE:return this.processTrace(t,e);case ct.ETH_BLOCK:return this.processBlock(t,e);case ct.ETH_TRANSACTION:return this.processTransaction(t,e);default:throw new S.ServerError(S.Status.INVALID_ARGUMENT,"No handle type registered "+t.handlerType)}}preprocessBinding(t,e){switch(t.handlerType){case ct.ETH_LOG:return this.preprocessLog(t,e);case ct.ETH_TRACE:return this.preprocessTrace(t,e);case ct.ETH_BLOCK:return this.preprocessBlock(t,e);case ct.ETH_TRANSACTION:return this.preprocessTransaction(t,e);default:throw new S.ServerError(S.Status.INVALID_ARGUMENT,"No handle type registered "+t.handlerType)}}async start(t){let e=new Set(Object.values(wc));for(let r of t.templateInstances){if(!e.has(r.contract?.chainId||""))continue;let a=je.INSTANCE.getValues()[r.templateId];if(!a)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Invalid template contract:"+r);if(!r.contract)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Contract Empty from:"+r);let s=new ns(r.contract.chainId);a.bind({name:r.contract.name,address:Ge(r.contract.address),startBlock:r.startBlock,endBlock:r.endBlock,baseLabels:r.baseLabels},s)}}stateDiff(t){return vn.INSTANCE.getValues().length!==t.templateInstances.length}async preprocessLog(t,e){if(!t.data?.ethLog?.log)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Log can't be null");let r=t.data.ethLog,a=[];for(let s of t.handlerIds){let o=this.preprocessHandlers.eventHandlers[s],l=o(r,e).catch(u=>{throw new S.ServerError(S.Status.INTERNAL,"error processing log: "+JSON.stringify(r.log)+`
|
|
9
|
+
`+te(u))});a.push(l)}return pa(await Promise.all(a))}async preprocessTrace(t,e){if(!t.data?.ethTrace?.trace)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Trace can't be null");let r=t.data.ethTrace,a=[];for(let s of t.handlerIds){let o=this.preprocessHandlers.traceHandlers[s](r,e).catch(l=>{throw new S.ServerError(S.Status.INTERNAL,"error processing trace: "+JSON.stringify(r.trace)+`
|
|
10
|
+
`+te(l))});a.push(o)}return pa(await Promise.all(a))}async preprocessBlock(t,e){if(!t.data?.ethBlock?.block)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Block can't be empty");let r=t.data.ethBlock,a=[];for(let s of t.handlerIds){let o=this.preprocessHandlers.blockHandlers[s](r,e).catch(l=>{throw new S.ServerError(S.Status.INTERNAL,"error processing block: "+r.block?.number+`
|
|
11
|
+
`+te(l))});a.push(o)}return pa(await Promise.all(a))}async preprocessTransaction(t,e){if(!t.data?.ethTransaction?.transaction)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"transaction can't be null");let r=t.data.ethTransaction,a=[];for(let s of t.handlerIds){let o=this.preprocessHandlers.transactionHandlers[s](r,e).catch(l=>{throw new S.ServerError(S.Status.INTERNAL,"error processing transaction: "+JSON.stringify(r.transaction)+`
|
|
12
|
+
`+te(l))});a.push(o)}return pa(await Promise.all(a))}async processLog(t,e){if(!t.data?.ethLog?.log)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Log can't be null");let r=t.data.ethLog,a=[];for(let s of t.handlerIds){let o=this.handlers.eventHandlers[s],l=o(r,e).catch(u=>{throw console.error("error processing log: ",u),new S.ServerError(S.Status.INTERNAL,"error processing log: "+JSON.stringify(r.log)+`
|
|
13
|
+
`+te(u))});ua.execution.sequential&&await l,a.push(l)}return la(await Promise.all(a))}async processTrace(t,e){if(!t.data?.ethTrace?.trace)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Trace can't be null");let r=t.data.ethTrace,a=[];for(let s of t.handlerIds){let o=this.handlers.traceHandlers[s](r,e).catch(l=>{throw console.error("error processing trace: ",l),new S.ServerError(S.Status.INTERNAL,"error processing trace: "+JSON.stringify(r.trace)+`
|
|
14
|
+
`+te(l))});ua.execution.sequential&&await o,a.push(o)}return la(await Promise.all(a))}async processBlock(t,e){if(!t.data?.ethBlock?.block)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"Block can't be empty");let r=t.data.ethBlock,a=[];for(let s of t.handlerIds){let o=this.handlers.blockHandlers[s](r,e).catch(l=>{throw console.error("error processing block: ",l),new S.ServerError(S.Status.INTERNAL,"error processing block: "+r.block?.number+`
|
|
15
|
+
`+te(l))});ua.execution.sequential&&await o,a.push(o)}return la(await Promise.all(a))}async processTransaction(t,e){if(!t.data?.ethTransaction?.transaction)throw new S.ServerError(S.Status.INVALID_ARGUMENT,"transaction can't be null");let r=t.data.ethTransaction,a=[];for(let s of t.handlerIds){let o=this.handlers.transactionHandlers[s](r,e).catch(l=>{throw new S.ServerError(S.Status.INTERNAL,"error processing transaction: "+JSON.stringify(r.transaction)+`
|
|
16
|
+
`+te(l))});ua.execution.sequential&&await o,a.push(o)}return la(await Promise.all(a))}};Ec.INSTANCE.register(new da);var ns=class extends Gt{static{i(this,"NoopContext")}constructor(t){super(t,"")}getContractName(){return""}};function pa(n){let t={ethCallParams:[]};for(let e of n)t.ethCallParams=t.ethCallParams.concat(e.ethCallParams);return t}i(pa,"mergePreprocessResults");import("node:process").then(n=>n.stdout.write(""));import{EthChainId as qt}from"@sentio/chain";import{makeEthCallKey as tg}from"@sentio/runtime";import("node:process").then(n=>n.stdout.write(""));var Vt=At.connect("0x0",ca),fa=class extends Ot{static{i(this,"ERC721ContractView")}constructor(t){super(t),this.callStatic.contract=t}async totalSupply(t,e,r){try{return await this.contract.getFunction("totalSupply()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async balanceOf(t,e,r,a){try{return await this.contract.getFunction("balanceOf(address)")(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}async getApproved(t,e,r,a){try{return await this.contract.getFunction("getApproved(uint256)")(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}async isApprovedForAll(t,e,r,a,s){try{return await this.contract.getFunction("isApprovedForAll(address,address)")(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}}async name(t,e,r){try{return await this.contract.getFunction("name()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async ownerOf(t,e,r,a){try{return await this.contract.getFunction("ownerOf(uint256)")(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}async supportsInterface(t,e,r,a){try{return await this.contract.getFunction("supportsInterface(bytes4)")(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}async symbol(t,e,r){try{return await this.contract.getFunction("symbol()")(t||{})}catch(a){let s=new Error().stack;throw H(a,void 0,s)}}async tokenURI(t,e,r,a){try{return await this.contract.getFunction("tokenURI(uint256)")(t,e||{})}catch(s){let o=new Error().stack;throw H(s,void 0,o)}}callStatic={contract:this.contract,async approve(t,e,r,a,s){try{return await this.contract.getFunction("approve(address,uint256)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async safeTransferFrom_address_address_uint256(t,e,r,a,s,o){try{return await this.contract.getFunction("safeTransferFrom(address,address,uint256)").staticCall(t,e,r,a||{})}catch(l){let u=new Error().stack;throw H(l,void 0,u)}},async safeTransferFrom_address_address_uint256_bytes(t,e,r,a,s,o,l){try{return await this.contract.getFunction("safeTransferFrom(address,address,uint256,bytes)").staticCall(t,e,r,a,s||{})}catch(u){let p=new Error().stack;throw H(u,void 0,p)}},async setApprovalForAll(t,e,r,a,s){try{return await this.contract.getFunction("setApprovalForAll(address,bool)").staticCall(t,e,r||{})}catch(o){let l=new Error().stack;throw H(o,void 0,l)}},async transferFrom(t,e,r,a,s,o){try{return await this.contract.getFunction("transferFrom(address,address,uint256)").staticCall(t,e,r,a||{})}catch(l){let u=new Error().stack;throw H(l,void 0,u)}}};encodeCall={approve(t,e,r){return U(r,"approve","function approve(address,uint256)",[t,e])},totalSupply(t){return U(t,"totalSupply","function totalSupply()",[])},balanceOf(t,e){return U(e,"balanceOf","function balanceOf(address)",[t])},getApproved(t,e){return U(e,"getApproved","function getApproved(uint256)",[t])},isApprovedForAll(t,e,r){return U(r,"isApprovedForAll","function isApprovedForAll(address,address)",[t,e])},name(t){return U(t,"name","function name()",[])},ownerOf(t,e){return U(e,"ownerOf","function ownerOf(uint256)",[t])},safeTransferFrom_address_address_uint256(t,e,r,a){return U(a,"safeTransferFrom","function safeTransferFrom(address,address,uint256)",[t,e,r])},safeTransferFrom_address_address_uint256_bytes(t,e,r,a,s){return U(s,"safeTransferFrom","function safeTransferFrom(address,address,uint256,bytes)",[t,e,r,a])},setApprovalForAll(t,e,r){return U(r,"setApprovalForAll","function setApprovalForAll(address,bool)",[t,e])},supportsInterface(t,e){return U(e,"supportsInterface","function supportsInterface(bytes4)",[t])},symbol(t){return U(t,"symbol","function symbol()",[])},tokenURI(t,e){return U(e,"tokenURI","function tokenURI(uint256)",[t])},transferFrom(t,e,r,a){return U(a,"transferFrom","function transferFrom(address,address,uint256)",[t,e,r])}}},br=class extends Bt{static{i(this,"ERC721BoundContractView")}async totalSupply(t){return await this.view.totalSupply({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async balanceOf(t,e){return await this.view.balanceOf(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}async getApproved(t,e){return await this.view.getApproved(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}async isApprovedForAll(t,e,r){return await this.view.isApprovedForAll(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())}async name(t){return await this.view.name({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async ownerOf(t,e){return await this.view.ownerOf(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}async supportsInterface(t,e){return await this.view.supportsInterface(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}async symbol(t){return await this.view.symbol({blockTag:this.context.blockNumber,...t},this.context.preparedData,this.context.getEthCallContext())}async tokenURI(t,e){return await this.view.tokenURI(t,{blockTag:this.context.blockNumber,...e},this.context.preparedData,this.context.getEthCallContext())}callStatic={view:this.view,context:this.context,async approve(t,e,r){return await this.view.callStatic.approve(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async safeTransferFrom_address_address_uint256(t,e,r,a){return await this.view.callStatic.safeTransferFrom_address_address_uint256(t,e,r,{blockTag:this.context.blockNumber,...a},this.context.preparedData,this.context.getEthCallContext())},async safeTransferFrom_address_address_uint256_bytes(t,e,r,a,s){return await this.view.callStatic.safeTransferFrom_address_address_uint256_bytes(t,e,r,a,{blockTag:this.context.blockNumber,...s},this.context.preparedData,this.context.getEthCallContext())},async setApprovalForAll(t,e,r){return await this.view.callStatic.setApprovalForAll(t,e,{blockTag:this.context.blockNumber,...r},this.context.preparedData,this.context.getEthCallContext())},async transferFrom(t,e,r,a){return await this.view.callStatic.transferFrom(t,e,r,{blockTag:this.context.blockNumber,...a},this.context.preparedData,this.context.getEthCallContext())}};encodeCall={view:this.view,context:this.context,approve(t,e,r){return this.view.encodeCall.approve(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},totalSupply(t){return this.view.encodeCall.totalSupply({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},balanceOf(t,e){return this.view.encodeCall.balanceOf(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},getApproved(t,e){return this.view.encodeCall.getApproved(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},isApprovedForAll(t,e,r){return this.view.encodeCall.isApprovedForAll(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},name(t){return this.view.encodeCall.name({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},ownerOf(t,e){return this.view.encodeCall.ownerOf(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},safeTransferFrom_address_address_uint256(t,e,r,a){return this.view.encodeCall.safeTransferFrom_address_address_uint256(t,e,r,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(a)})},safeTransferFrom_address_address_uint256_bytes(t,e,r,a,s){return this.view.encodeCall.safeTransferFrom_address_address_uint256_bytes(t,e,r,a,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(s)})},setApprovalForAll(t,e,r){return this.view.encodeCall.setApprovalForAll(t,e,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(r)})},supportsInterface(t,e){return this.view.encodeCall.supportsInterface(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},symbol(t){return this.view.encodeCall.symbol({chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(t)})},tokenURI(t,e){return this.view.encodeCall.tokenURI(t,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(e)})},transferFrom(t,e,r,a){return this.view.encodeCall.transferFrom(t,e,r,{chainId:this.context.chainId.toString(),address:this.context.address,blockTag:this.context.getBlockTag(a)})}}},Ut=class n extends _t{static{i(this,"ERC721Processor")}onEventApproval(t,e,r,a){return e||(e=Vt.filters["Approval(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}onEventApprovalForAll(t,e,r,a){return e||(e=Vt.filters["ApprovalForAll(address,address,bool)"](null,null,null)),super.onEthEvent(t,e,r,a)}onEventTransfer(t,e,r,a){return e||(e=Vt.filters["Transfer(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}onCallApprove(t,e,r){return super.onEthTrace("0x095ea7b3",t,e,r)}onCallTotalSupply(t,e,r){return super.onEthTrace("0x18160ddd",t,e,r)}onCallBalanceOf(t,e,r){return super.onEthTrace("0x70a08231",t,e,r)}onCallGetApproved(t,e,r){return super.onEthTrace("0x081812fc",t,e,r)}onCallIsApprovedForAll(t,e,r){return super.onEthTrace("0xe985e9c5",t,e,r)}onCallName(t,e,r){return super.onEthTrace("0x06fdde03",t,e,r)}onCallOwnerOf(t,e,r){return super.onEthTrace("0x6352211e",t,e,r)}onCallSafeTransferFrom_address_address_uint256(t,e,r){return super.onEthTrace("0x42842e0e",t,e,r)}onCallSafeTransferFrom_address_address_uint256_bytes(t,e,r){return super.onEthTrace("0xb88d4fde",t,e,r)}onCallSetApprovalForAll(t,e,r){return super.onEthTrace("0xa22cb465",t,e,r)}onCallSupportsInterface(t,e,r){return super.onEthTrace("0x01ffc9a7",t,e,r)}onCallSymbol(t,e,r){return super.onEthTrace("0x95d89b41",t,e,r)}onCallTokenURI(t,e,r){return super.onEthTrace("0xc87b56dd",t,e,r)}onCallTransferFrom(t,e,r){return super.onEthTrace("0x23b872dd",t,e,r)}static filters={Approval(t,e,r){return Vt.filters["Approval(address,address,uint256)"](t,e,r)},ApprovalForAll(t,e,r){return Vt.filters["ApprovalForAll(address,address,bool)"](t,e,r)},Transfer(t,e,r){return Vt.filters["Transfer(address,address,uint256)"](t,e,r)}};CreateBoundContractView(){let t=be(this.config.network,this.config.address);return new br(this.config.address,t)}static bind(t){t.name||(t.name="ERC721");let e=ge(t);return e||(e=new n(t),Lt(t,e)),e}},as=class extends ye{static{i(this,"ERC721ProcessorTemplate")}bindInternal(t){t.name||(t.name="ERC721");let e=ge(t);return e||(e=new Ut(t),Lt(t,e)),e}onEventApproval(t,e,r,a){return e||(e=Vt.filters["Approval(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}onEventApprovalForAll(t,e,r,a){return e||(e=Vt.filters["ApprovalForAll(address,address,bool)"](null,null,null)),super.onEthEvent(t,e,r,a)}onEventTransfer(t,e,r,a){return e||(e=Vt.filters["Transfer(address,address,uint256)"](null,null,null)),super.onEthEvent(t,e,r,a)}};function be(n,t){let e=yr("ERC721",t,n);if(!e){let r=At.connect(t,ia(n));e=new fa(r),Cr("ERC721",t,n,e)}return e}i(be,"getERC721Contract");function Tc(n,t){let e=be(n.getChainId(),t),r=new br(t,e);return r.context=n,r.callStatic&&(r.callStatic.context=n),r}i(Tc,"getERC721ContractOnContext");import("node:process").then(n=>n.stdout.write(""));var ss={blockHash:"0x0000000000000000000000000000000000000000000000000000000000000000",blockNumber:0,logIndex:0,removed:!1,transactionHash:"0x0000000000000000000000000000000000000000000000000000000000000000",transactionIndex:0};function vc(n,t){let r=be(qt.ETHEREUM,n).rawContract.interface.encodeEventLog("Approval(address,address,uint256)",[t.owner,t.approved,t.tokenId]);return{...ss,index:0,address:n,data:r.data,topics:r.topics}}i(vc,"mockApprovalLog");function Pc(n,t){let r=be(qt.ETHEREUM,n).rawContract.interface.encodeEventLog("ApprovalForAll(address,address,bool)",[t.owner,t.operator,t.approved]);return{...ss,index:0,address:n,data:r.data,topics:r.topics}}i(Pc,"mockApprovalForAllLog");function kc(n,t){let r=be(qt.ETHEREUM,n).rawContract.interface.encodeEventLog("Transfer(address,address,uint256)",[t.from,t.to,t.tokenId]);return{...ss,index:0,address:n,data:r.data,topics:r.topics}}i(kc,"mockTransferLog");import("node:process").then(n=>n.stdout.write(""));import("node:process").then(n=>n.stdout.write(""));import("node:process").then(n=>n.stdout.write(""));export{Gt as a,Pe as b,wt as c,Tt as d,Ot as e,Bt as f,vo as g,hr as h,H as i,Me as j,nt as k,sc as l,Zd as m,Ge as n,U as o,gt as p,yt as q,L as r,ja as s,_t as t,za as u,Ja as v,ge as w,Lt as x,yr as y,Cr as z,Wa as A,ye as B,ra as C,na as D,kt as E,aa as F,At as G,sa as H,fa as I,br as J,Ut as K,as as L,be as M,Tc as N,vc as O,Pc as P,kc as Q,Ac as R,rs as S,da as T,ia as U,ca as V,qt as W,tg as X,oa as Y,xr as Z,Ce as _,ts as $,xe as aa,fc as ba,hc as ca,mc as da,gc as ea,yc as fa};
|
|
17
|
+
/*! Bundled license information:
|
|
18
|
+
|
|
19
|
+
js-sha3/src/sha3.js:
|
|
20
|
+
(**
|
|
21
|
+
* [js-sha3]{@link https://github.com/emn178/js-sha3}
|
|
22
|
+
*
|
|
23
|
+
* @version 0.9.3
|
|
24
|
+
* @author Chen, Yi-Cyuan [emn178@gmail.com]
|
|
25
|
+
* @copyright Chen, Yi-Cyuan 2015-2023
|
|
26
|
+
* @license MIT
|
|
27
|
+
*)
|
|
28
|
+
|
|
29
|
+
@noble/hashes/esm/utils.js:
|
|
30
|
+
(*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
31
|
+
*/
|
|
32
|
+
//# sourceMappingURL=chunk-AVNDNZMN.js.map
|