@ar.io/sdk 3.9.0-alpha.3 → 3.9.0-alpha.4

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.
@@ -186,7 +186,7 @@ nonce: bundlr`),Se.from(i))}};ie();ae();ne();var rd=class{_publicKey;ownerLength
186
186
  }
187
187
  }
188
188
  }
189
- }`,i=_t.object({data:_t.object({transactions:_t.object({edges:_t.array(_t.object({node:_t.record(_t.any())}))})})});return h=>jr(h).chain(Li(l=>t(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:o,variables:{transactionIds:[l]}})}).then(async v=>{if(v.ok)return v.json();throw r('Error Encountered when querying gateway for transaction "%s"',l),new Error(`${v.status}: ${await v.text()}`)}).then(i.parse).then(pxe(["data","transactions","edges","0","node"])))).toPromise()}var ESe=uI(O5e(),1),mte=(t="@permaweb/aoconnect")=>{let e=(0,ESe.default)(t);return e.child=r=>mte(`${e.namespace}:${r}`),e.tap=(r,...o)=>_xe((...i)=>e(r,...o,...i)),e},gte=({url:t,path:e})=>e?e.startsWith("/")?gte({url:t,path:e.slice(1)}):(t=new URL(t),t.pathname+=e,t.toString()):t;function ASe(t){return H1(xw([]),Z1((e,r)=>H1(gxe([],r.name),EI(r.value),Ds(r.name,jh,e))(e),{}),_w(e=>e.length>1?e:e[0]))(t)}function Ns(t,e){return r=>Uee(AMe([jQ(t,"name"),RI(SI(e),jQ(e,"value"),_I)]),r)}function HQ(t){return Yee([[Wg(String),N1(t)],[Wg(Array),axe(t)],[_I,L9e]])}function Td(t){let e;return Wg(Cs,t)?(e=new Error(RSe(t)),e.stack+=t.stack):Wg(Error,t)?e=t:rxe("message",t)?e=new Error(t.message):Wg(String,t)?e=new Error(t):e=new Error("An error occurred"),e}function RSe(t){return H1(e=>function r(o,i,h){return Z1((l,v)=>H1(Yee([[N1(Tt.invalid_arguments),()=>r(v.argumentsError,422,"Invalid Arguments")],[N1(Tt.invalid_return_type),()=>r(v.returnTypeError,500,"Invalid Return")],[N1(Tt.invalid_union),()=>jMe(b=>r(b,400,"Invalid Union"),v.unionErrors)],[_I,()=>[{...v,status:i,contextCode:h}]]]),AI(l))(v.code),[],o.issues)}(e,400,""),e=>Z1((r,o)=>{let{message:i,path:h,contextCode:l}=o,v=h[1]||h[0],b=l?`${l} `:"";return r.push(`${b}'${v}': ${i}.`),r},[],e),lxe(" | "))(t)}var TSe=_t.object({id:_t.string().min(1,{message:"message is required to be a message id"}),processId:_t.string().min(1,{message:"process is required to be a process id"})});function ISe(){return t=>jr(t).map(TSe.parse).map(()=>t)}var k2=_t.object({name:_t.string(),value:_t.string()}),kSe=_t.function().args(_t.object({Id:_t.string(),Target:_t.string(),Owner:_t.string(),Anchor:_t.string().optional(),Data:_t.any().default("1234"),Tags:_t.array(_t.object({name:_t.string(),value:_t.string()}))})).returns(_t.promise(_t.any())),BSe=_t.function().args(_t.object({id:_t.string().min(1,{message:"message id is required"}),processId:_t.string().min(1,{message:"process id is required"})})).returns(_t.promise(_t.any())),PSe=_t.function().args(_t.object({process:_t.string().min(1,{message:"process id is required"}),from:_t.string().optional(),to:_t.string().optional(),sort:_t.enum(["ASC","DESC"]).default("ASC"),limit:_t.number().optional()})).returns(_t.promise(_t.object({edges:_t.array(_t.object({cursor:_t.string(),node:_t.object({Output:_t.any().optional(),Messages:_t.array(_t.any()).optional(),Spawns:_t.array(_t.any()).optional(),Error:_t.any().optional()})}))}))),bte=_t.function().args(_t.object({processId:_t.string(),data:_t.any(),tags:_t.array(k2),anchor:_t.string().optional(),signer:_t.any()})).returns(_t.promise(_t.object({messageId:_t.string()}).passthrough())),OSe=_t.function().args(_t.object({data:_t.any(),tags:_t.array(k2),signer:_t.any()})).returns(_t.promise(_t.object({processId:_t.string()}).passthrough())),NSe=_t.function().args(_t.object({process:_t.string(),message:_t.string(),baseLayer:_t.boolean().optional(),exclude:_t.array(_t.string()).optional()})).returns(_t.promise(_t.object({assignmentId:_t.string()}).passthrough())),yte=bte,Tut=_t.function().args(_t.object({suUrl:_t.string().url(),processId:_t.string()})).returns(_t.promise(_t.object({tags:_t.array(k2)}).passthrough())),Iut=_t.function().args(_t.string()).returns(_t.promise(_t.object({url:_t.string()}))),CSe=_t.function().args(_t.string()).returns(_t.promise(_t.boolean())),LSe=_t.function().args(_t.string()).returns(_t.promise(_t.object({tags:_t.array(k2)}).passthrough())),Sw=_t.function().args(_t.object({data:_t.any(),tags:_t.array(k2),target:_t.string().optional(),anchor:_t.string().optional()})).returns(_t.promise(_t.object({id:_t.string(),raw:_t.any()})));function DSe({loadResult:t}){return t=Li(BSe.implement(t)),e=>jr({id:e.id,processId:e.processId}).chain(t)}function $Se(t){let e=ISe(t),r=DSe(t);return({message:o,process:i})=>jr({id:o,processId:i}).chain(e).chain(r).map(t.logger.tap('readResult result for message "%s": %O',o)).map(h=>h).bimap(Td,Rd).toPromise()}var qSe=_t.array(_t.object({name:_t.string(),value:_t.string()}));function USe(){return t=>jr(t.tags).map(xw([])).map(Ns("Data-Protocol","ao")).map(Ns("Variant")).map(Ns("Type")).map(Ns("SDK")).map(AI(jh,[{name:"Data-Protocol",value:"ao"},{name:"Variant",value:"ao.TN.1"},{name:"Type",value:"Message"},{name:"SDK",value:"aoconnect"}])).map(qSe.parse).map(Ds("tags",jh,t))}function FSe({logger:t}){return e=>jr(e).chain(RI(SI(e.data),()=>xd(e),()=>xd(Math.random().toString().slice(-4)).map(Ds("data",jh,e)).map(r=>H1(Ad("tags"),Ns("Content-Type"),EI({name:"Content-Type",value:"text/plain"}),Ds("tags",jh,r))(r)).map(t.tap('added pseudo-random string as message "data"'))))}function jSe(t){let e=USe(t),r=FSe(t),o=bte.implement(t.deployMessage);return i=>jr(i).chain(e).chain(r).chain(Li(({id:h,data:l,tags:v,anchor:b,signer:g})=>o({processId:h,data:l,tags:v,anchor:b,signer:Sw.implement(g)}))).map(h=>Ds("messageId",h.messageId,i))}function zSe(t){let e=jSe(t);return({process:r,data:o,tags:i,anchor:h,signer:l})=>jr({id:r,data:o,tags:i,anchor:h,signer:l}).chain(e).map(v=>v.messageId).bimap(Td,Rd).toPromise()}var Dg=(t,e,r)=>o=>e(o[t])?xd(o):Sl(`Tag '${t}': ${r}`);function ZSe({loadTransactionMeta:t,logger:e}){return t=Li(LSe.implement(t)),r=>jr(r).chain(t).map(Ad("tags")).map(ASe).chain(Dg("Data-Protocol",HQ("ao"),"value 'ao' was not found on module")).chain(Dg("Type",HQ("Module"),"value 'Module' was not found on module")).chain(Dg("Module-Format",NT,"was not found on module")).chain(Dg("Input-Encoding",NT,"was not found on module")).chain(Dg("Output-Encoding",NT,"was not found on module")).bimap(e.tap("Verifying module source failed: %s"),e.tap("Verified module source"))}function HSe({logger:t,validateScheduler:e}){return e=Li(CSe.implement(e)),r=>jr(r).chain(o=>e(o).chain(i=>i?xd(o):Sl(`Valid Scheduler-Location owned by ${o} not found`))).bimap(t.tap("Verifying scheduler failed: %s"),t.tap("Verified scheduler"))}function KSe({logger:t}){return e=>jr(e).map(t.tap("Checking for signer")).chain(r=>r?xd(r):Sl("signer not found"))}function WSe(t){let e=t.logger.child("verifyInput");t={...t,logger:e};let r=ZSe(t),o=HSe(t),i=KSe(t);return h=>jr(h).chain(l=>r(l.module).map(()=>l)).chain(l=>o(l.scheduler)).map(()=>h).chain(l=>i(l.signer).map(()=>l)).bimap(e.tap("Error when verify input: %s"),e.tap("Successfully verified inputs"))}var VSe=_t.array(_t.object({name:_t.string(),value:_t.string()}));function GSe(){return t=>jr(t).map(Ad("tags")).map(xw([])).map(Ns("Data-Protocol","ao")).map(Ns("Variant")).map(Ns("Type")).map(Ns("Module")).map(Ns("Scheduler")).map(Ns("SDK")).map(AI(jh,[{name:"Data-Protocol",value:"ao"},{name:"Variant",value:"ao.TN.1"},{name:"Type",value:"Process"},{name:"Module",value:t.module},{name:"Scheduler",value:t.scheduler},{name:"SDK",value:"aoconnect"}])).map(VSe.parse).map(Ds("tags",jh,t))}function YSe({logger:t}){return e=>jr(e).chain(RI(SI(e.data),()=>xd(e),()=>xd(Math.random().toString().slice(-4)).map(Ds("data",jh,e)).map(r=>H1(Ad("tags"),Ns("Content-Type"),EI({name:"Content-Type",value:"text/plain"}),Ds("tags",jh,r))(r)).map(t.tap('added pseudo-random string as process "data"'))))}function JSe(t){let e=t.logger.child("uploadProcess");t={...t,logger:e};let r=GSe(t),o=YSe(t),i=OSe.implement(t.deployProcess);return h=>jr(h).chain(r).chain(o).chain(Li(({data:l,tags:v,signer:b})=>i({data:l,tags:v,signer:Sw.implement(b)}))).map(l=>Ds("processId",l.processId,h))}function XSe(t){let e=WSe(t),r=JSe(t);return({module:o,scheduler:i,signer:h,tags:l,data:v})=>jr({module:o,scheduler:i,signer:h,tags:l,data:v}).chain(e).chain(r).map(b=>b.processId).bimap(Td,Rd).toPromise()}function QSe(t){let e=yte.implement(t.deployMonitor);return r=>jr(r).chain(Li(({id:o,signer:i})=>e({processId:o,signer:Sw.implement(i),data:Math.random().toString().slice(-4),tags:[]}))).map(o=>Ds("monitorId",o.messageId,r))}function eEe(t){let e=QSe(t);return({process:r,signer:o})=>jr({id:r,signer:o}).chain(e).map(i=>i.monitorId).bimap(Td,Rd).toPromise()}function tEe(t){let e=yte.implement(t.deployUnmonitor);return r=>jr(r).chain(Li(({id:o,signer:i})=>e({processId:o,signer:Sw.implement(i),data:Math.random().toString().slice(-4),tags:[]}))).map(o=>Ds("monitorId",o.messageId,r))}function rEe(t){let e=tEe(t);return({process:r,signer:o})=>jr({id:r,signer:o}).chain(e).map(i=>i.monitorId).bimap(Td,Rd).toPromise()}var iEe=_t.object({process:_t.string().min(1,{message:"process identifier is required"}),from:_t.string().optional(),to:_t.string().optional(),sort:_t.enum(["ASC","DESC"]).default("ASC"),limit:_t.number().optional()});function nEe(){return t=>jr(t).map(iEe.parse).map(()=>t)}function aEe({queryResults:t}){return t=Li(PSe.implement(t)),e=>jr({process:e.process,from:e.from,to:e.to,sort:e.sort,limit:e.limit}).chain(t)}function oEe(t){let e=nEe(t),r=aEe(t);return({process:o,from:i,to:h,sort:l,limit:v})=>jr({process:o,from:i,to:h,sort:l,limit:v}).chain(e).chain(r).map(t.logger.tap('readResults result for message "%s": %O',o)).map(b=>b).bimap(Td,Rd).toPromise()}var sEe=_t.object({Id:_t.string(),Target:_t.string(),Owner:_t.string(),Anchor:_t.string().optional(),Data:_t.any().default("1234"),Tags:_t.array(_t.object({name:_t.string(),value:_t.string()}))});function fEe(){return t=>jr(t).map(sEe.parse).map(e=>(e.Tags=e.Tags.concat([{name:"Data-Protocol",value:"ao"},{name:"Type",value:"Message"},{name:"Variant",value:"ao.TN.1"}]),e))}function uEe({dryrunFetch:t}){return Li(kSe.implement(t))}function hEe(t){let e=fEe(t),r=uEe(t);return o=>jr(o).map(lEe).chain(e).chain(r).toPromise()}function lEe({process:t,data:e,tags:r,anchor:o,...i}){return{Id:"1234",Owner:"1234",...i,Target:t,Data:e||"1234",Tags:r||[],Anchor:o||"0"}}function cEe(t){let e=NSe.implement(t.deployAssign);return r=>jr(r).chain(Li(({process:o,message:i,baseLayer:h,exclude:l})=>e({process:o,message:i,baseLayer:h,exclude:l}))).map(o=>Ds("assignmentId",o.assignmentId,r))}function dEe(t){let e=cEe(t);return({process:r,message:o,baseLayer:i,exclude:h})=>jr({process:r,message:o,baseLayer:i,exclude:h}).chain(e).map(l=>l.assignmentId).bimap(Td,Rd).toPromise()}var pEe="https://arweave.net",vEe="https://mu.ao-testnet.xyz",mEe="https://cu.ao-testnet.xyz";function El({GRAPHQL_URL:t,GATEWAY_URL:e=pEe,MU_URL:r=vEe,CU_URL:o=mEe}={}){let i=mte();t||(t=gte({url:e,path:"/graphql"}));let{validate:h}=Lee({cacheSize:100,GRAPHQL_URL:t}),l=N9e({MAX_SIZE:25}),v=i.child("result"),b=$Se({loadResult:B9e({fetch,CU_URL:o,logger:v}),logger:v}),g=i.child("message"),_=zSe({loadProcessMeta:BT({fetch,cache:l,logger:g}),deployMessage:E9e({fetch,MU_URL:r,logger:g}),logger:g}),M=i.child("spawn"),x=XSe({loadTransactionMeta:SSe({fetch,GRAPHQL_URL:t,logger:M}),validateScheduler:h,deployProcess:A9e({fetch,MU_URL:r,logger:M}),logger:M}),E=i.child("monitor"),A=eEe({loadProcessMeta:BT({fetch,cache:l,logger:E}),deployMonitor:R9e({fetch,MU_URL:r,logger:E}),logger:E}),I=i.child("unmonitor"),P=rEe({loadProcessMeta:BT({fetch,cache:l,logger:I}),deployUnmonitor:T9e({fetch,MU_URL:r,logger:I}),logger:E}),N=i.child("results"),L=oEe({queryResults:P9e({fetch,CU_URL:o,logger:N}),logger:N}),C=i.child("dryrun"),Y=hEe({dryrunFetch:k9e({fetch,CU_URL:o,logger:C}),logger:C}),G=i.child("assign"),te=dEe({deployAssign:I9e({fetch,MU_URL:r,logger:G}),logger:g});return{result:b,results:L,message:_,spawn:x,monitor:A,unmonitor:P,dryrun:Y,assign:te}}var wte={};VQ(wte,{createDataItemSigner:()=>FEe});var _te=uI(L5e(),1),Mte={};VQ(Mte,{AVSCTap:()=>B2,ArweaveSigner:()=>PI,DataItem:()=>A2,MAX_TAG_BYTES:()=>Ew,MIN_BINARY_SIZE:()=>CI,SIG_CONFIG:()=>Y1,SignatureConfig:()=>Os,Signer:()=>Ate,createData:()=>kte,default:()=>$Ee,deserializeTags:()=>vw,indexToType:()=>OI,serializeTags:()=>NI,tagsExceedLimit:()=>Ite,warparbundles:()=>qEe});var gEe=Object.create,kI=Object.defineProperty,bEe=Object.getOwnPropertyDescriptor,yEe=Object.getOwnPropertyNames,wEe=Object.getPrototypeOf,_Ee=Object.prototype.hasOwnProperty,Zh=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),MEe=(t,e)=>{for(var r in e)kI(t,r,{get:e[r],enumerable:!0})},xEe=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of yEe(e))!_Ee.call(t,i)&&i!==r&&kI(t,i,{get:()=>e[i],enumerable:!(o=bEe(e,i))||o.enumerable});return t},Id=(t,e,r)=>(r=t!=null?gEe(wEe(t)):{},xEe(e||!t||!t.__esModule?kI(r,"default",{value:t,enumerable:!0}):r,t)),SEe=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});function e(r){var o=4,i=r.length,h=i%o;if(!h)return r;var l=i,v=o-h,b=i+v,g=Se.alloc(b);for(g.write(r);v--;)g.write("=",l++);return g.toString()}t.default=e}),EEe=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var e=SEe();function r(b,g){return g===void 0&&(g="utf8"),Se.isBuffer(b)?h(b.toString("base64")):h(Se.from(b,g).toString("base64"))}function o(b,g){return g===void 0&&(g="utf8"),Se.from(i(b),"base64").toString(g)}function i(b){return b=b.toString(),e.default(b).replace(/\-/g,"+").replace(/_/g,"/")}function h(b){return b.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function l(b){return Se.from(i(b),"base64")}var v=r;v.encode=r,v.decode=o,v.toBase64=i,v.fromBase64=h,v.toBuffer=l,t.default=v}),BI=Zh((t,e)=>{e.exports=EEe().default,e.exports.default=e.exports}),xte=Zh(t=>{"use strict";t.byteLength=b,t.toByteArray=_,t.fromByteArray=E;var e=[],r=[],o=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(h=0,l=i.length;h<l;++h)e[h]=i[h],r[i.charCodeAt(h)]=h;var h,l;r[45]=62,r[95]=63;function v(A){var I=A.length;if(I%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var P=A.indexOf("=");P===-1&&(P=I);var N=P===I?0:4-P%4;return[P,N]}function b(A){var I=v(A),P=I[0],N=I[1];return(P+N)*3/4-N}function g(A,I,P){return(I+P)*3/4-P}function _(A){var I,P=v(A),N=P[0],L=P[1],C=new o(g(A,N,L)),Y=0,G=L>0?N-4:N,te;for(te=0;te<G;te+=4)I=r[A.charCodeAt(te)]<<18|r[A.charCodeAt(te+1)]<<12|r[A.charCodeAt(te+2)]<<6|r[A.charCodeAt(te+3)],C[Y++]=I>>16&255,C[Y++]=I>>8&255,C[Y++]=I&255;return L===2&&(I=r[A.charCodeAt(te)]<<2|r[A.charCodeAt(te+1)]>>4,C[Y++]=I&255),L===1&&(I=r[A.charCodeAt(te)]<<10|r[A.charCodeAt(te+1)]<<4|r[A.charCodeAt(te+2)]>>2,C[Y++]=I>>8&255,C[Y++]=I&255),C}function M(A){return e[A>>18&63]+e[A>>12&63]+e[A>>6&63]+e[A&63]}function x(A,I,P){for(var N,L=[],C=I;C<P;C+=3)N=(A[C]<<16&16711680)+(A[C+1]<<8&65280)+(A[C+2]&255),L.push(M(N));return L.join("")}function E(A){for(var I,P=A.length,N=P%3,L=[],C=16383,Y=0,G=P-N;Y<G;Y+=C)L.push(x(A,Y,Y+C>G?G:Y+C));return N===1?(I=A[P-1],L.push(e[I>>2]+e[I<<4&63]+"==")):N===2&&(I=(A[P-2]<<8)+A[P-1],L.push(e[I>>10]+e[I>>4&63]+e[I<<2&63]+"=")),L.join("")}}),Ste=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.b64UrlDecode=t.b64UrlEncode=t.bufferTob64Url=t.bufferTob64=t.b64UrlToBuffer=t.stringToB64Url=t.stringToBuffer=t.bufferToString=t.b64UrlToString=t.concatBuffers=void 0;var e=xte();function r(x){let E=0;for(let P=0;P<x.length;P++)E+=x[P].byteLength;let A=new Uint8Array(E),I=0;A.set(new Uint8Array(x[0]),I),I+=x[0].byteLength;for(let P=1;P<x.length;P++)A.set(new Uint8Array(x[P]),I),I+=x[P].byteLength;return A}t.concatBuffers=r;function o(x){let E=v(x);return i(E)}t.b64UrlToString=o;function i(x){return new TextDecoder("utf-8",{fatal:!0}).decode(x)}t.bufferToString=i;function h(x){return new TextEncoder().encode(x)}t.stringToBuffer=h;function l(x){return g(h(x))}t.stringToB64Url=l;function v(x){return new Uint8Array(e.toByteArray(M(x)))}t.b64UrlToBuffer=v;function b(x){return e.fromByteArray(new Uint8Array(x))}t.bufferTob64=b;function g(x){return _(b(x))}t.bufferTob64Url=g;function _(x){return x.replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}t.b64UrlEncode=_;function M(x){x=x.replace(/\-/g,"+").replace(/\_/g,"/");let E;return x.length%4==0?E=0:E=4-x.length%4,x.concat("=".repeat(E))}t.b64UrlDecode=M}),AEe=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var e=Ste(),r=class{keyLength=4096;publicExponent=65537;hashAlgorithm="sha256";driver;constructor(){if(!this.detectWebCrypto())throw new Error("SubtleCrypto not available!");this.driver=crypto.subtle}async generateJWK(){let o=await this.driver.generateKey({name:"RSA-PSS",modulusLength:4096,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign"]),i=await this.driver.exportKey("jwk",o.privateKey);return{kty:i.kty,e:i.e,n:i.n,d:i.d,p:i.p,q:i.q,dp:i.dp,dq:i.dq,qi:i.qi}}async sign(o,i,{saltLength:h}={}){let l=await this.driver.sign({name:"RSA-PSS",saltLength:32},await this.jwkToCryptoKey(o),i);return new Uint8Array(l)}async hash(o,i="SHA-256"){let h=await this.driver.digest(i,o);return new Uint8Array(h)}async verify(o,i,h){let l={kty:"RSA",e:"AQAB",n:o},v=await this.jwkToPublicCryptoKey(l),b=await this.driver.digest("SHA-256",i),g=await this.driver.verify({name:"RSA-PSS",saltLength:0},v,h,i),_=await this.driver.verify({name:"RSA-PSS",saltLength:32},v,h,i),M=await this.driver.verify({name:"RSA-PSS",saltLength:Math.ceil((v.algorithm.modulusLength-1)/8)-b.byteLength-2},v,h,i);return g||_||M}async jwkToCryptoKey(o){return this.driver.importKey("jwk",o,{name:"RSA-PSS",hash:{name:"SHA-256"}},!1,["sign"])}async jwkToPublicCryptoKey(o){return this.driver.importKey("jwk",o,{name:"RSA-PSS",hash:{name:"SHA-256"}},!1,["verify"])}detectWebCrypto(){if(typeof crypto>"u")return!1;let o=crypto?.subtle;return o===void 0?!1:["generateKey","importKey","exportKey","digest","sign"].every(i=>typeof o[i]=="function")}async encrypt(o,i,h){let l=await this.driver.importKey("raw",typeof i=="string"?e.stringToBuffer(i):i,{name:"PBKDF2",length:32},!1,["deriveKey"]),v=await this.driver.deriveKey({name:"PBKDF2",salt:h?e.stringToBuffer(h):e.stringToBuffer("salt"),iterations:1e5,hash:"SHA-256"},l,{name:"AES-CBC",length:256},!1,["encrypt","decrypt"]),b=new Uint8Array(16);crypto.getRandomValues(b);let g=await this.driver.encrypt({name:"AES-CBC",iv:b},v,o);return e.concatBuffers([b,g])}async decrypt(o,i,h){let l=await this.driver.importKey("raw",typeof i=="string"?e.stringToBuffer(i):i,{name:"PBKDF2",length:32},!1,["deriveKey"]),v=await this.driver.deriveKey({name:"PBKDF2",salt:h?e.stringToBuffer(h):e.stringToBuffer("salt"),iterations:1e5,hash:"SHA-256"},l,{name:"AES-CBC",length:256},!1,["encrypt","decrypt"]),b=o.slice(0,16),g=await this.driver.decrypt({name:"AES-CBC",iv:b},v,o.slice(16));return e.concatBuffers([g])}};t.default=r}),REe=Zh(t=>{t.read=function(e,r,o,i,h){var l,v,b=h*8-i-1,g=(1<<b)-1,_=g>>1,M=-7,x=o?h-1:0,E=o?-1:1,A=e[r+x];for(x+=E,l=A&(1<<-M)-1,A>>=-M,M+=b;M>0;l=l*256+e[r+x],x+=E,M-=8);for(v=l&(1<<-M)-1,l>>=-M,M+=i;M>0;v=v*256+e[r+x],x+=E,M-=8);if(l===0)l=1-_;else{if(l===g)return v?NaN:(A?-1:1)*(1/0);v=v+Math.pow(2,i),l=l-_}return(A?-1:1)*v*Math.pow(2,l-i)},t.write=function(e,r,o,i,h,l){var v,b,g,_=l*8-h-1,M=(1<<_)-1,x=M>>1,E=h===23?Math.pow(2,-24)-Math.pow(2,-77):0,A=i?0:l-1,I=i?1:-1,P=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(b=isNaN(r)?1:0,v=M):(v=Math.floor(Math.log(r)/Math.LN2),r*(g=Math.pow(2,-v))<1&&(v--,g*=2),v+x>=1?r+=E/g:r+=E*Math.pow(2,1-x),r*g>=2&&(v++,g/=2),v+x>=M?(b=0,v=M):v+x>=1?(b=(r*g-1)*Math.pow(2,h),v=v+x):(b=r*Math.pow(2,x-1)*Math.pow(2,h),v=0));h>=8;e[o+A]=b&255,A+=I,b/=256,h-=8);for(v=v<<h|b,_+=h;_>0;e[o+A]=v&255,A+=I,v/=256,_-=8);e[o+A-I]|=P*128}}),oI=Zh(t=>{"use strict";var e=xte(),r=REe(),o=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=v,t.SlowBuffer=L,t.INSPECT_MAX_BYTES=50;var i=2147483647;t.kMaxLength=i,v.TYPED_ARRAY_SUPPORT=h(),!v.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function h(){try{let T=new Uint8Array(1),k={foo:function(){return 42}};return Object.setPrototypeOf(k,Uint8Array.prototype),Object.setPrototypeOf(T,k),T.foo()===42}catch{return!1}}Object.defineProperty(v.prototype,"parent",{enumerable:!0,get:function(){if(v.isBuffer(this))return this.buffer}}),Object.defineProperty(v.prototype,"offset",{enumerable:!0,get:function(){if(v.isBuffer(this))return this.byteOffset}});function l(T){if(T>i)throw new RangeError('The value "'+T+'" is invalid for option "size"');let k=new Uint8Array(T);return Object.setPrototypeOf(k,v.prototype),k}function v(T,k,O){if(typeof T=="number"){if(typeof k=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return M(T)}return b(T,k,O)}v.poolSize=8192;function b(T,k,O){if(typeof T=="string")return x(T,k);if(ArrayBuffer.isView(T))return A(T);if(T==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof T);if(ut(T,ArrayBuffer)||T&&ut(T.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ut(T,SharedArrayBuffer)||T&&ut(T.buffer,SharedArrayBuffer)))return I(T,k,O);if(typeof T=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let q=T.valueOf&&T.valueOf();if(q!=null&&q!==T)return v.from(q,k,O);let H=P(T);if(H)return H;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof T[Symbol.toPrimitive]=="function")return v.from(T[Symbol.toPrimitive]("string"),k,O);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof T)}v.from=function(T,k,O){return b(T,k,O)},Object.setPrototypeOf(v.prototype,Uint8Array.prototype),Object.setPrototypeOf(v,Uint8Array);function g(T){if(typeof T!="number")throw new TypeError('"size" argument must be of type number');if(T<0)throw new RangeError('The value "'+T+'" is invalid for option "size"')}function _(T,k,O){return g(T),T<=0?l(T):k!==void 0?typeof O=="string"?l(T).fill(k,O):l(T).fill(k):l(T)}v.alloc=function(T,k,O){return _(T,k,O)};function M(T){return g(T),l(T<0?0:N(T)|0)}v.allocUnsafe=function(T){return M(T)},v.allocUnsafeSlow=function(T){return M(T)};function x(T,k){if((typeof k!="string"||k==="")&&(k="utf8"),!v.isEncoding(k))throw new TypeError("Unknown encoding: "+k);let O=C(T,k)|0,q=l(O),H=q.write(T,k);return H!==O&&(q=q.slice(0,H)),q}function E(T){let k=T.length<0?0:N(T.length)|0,O=l(k);for(let q=0;q<k;q+=1)O[q]=T[q]&255;return O}function A(T){if(ut(T,Uint8Array)){let k=new Uint8Array(T);return I(k.buffer,k.byteOffset,k.byteLength)}return E(T)}function I(T,k,O){if(k<0||T.byteLength<k)throw new RangeError('"offset" is outside of buffer bounds');if(T.byteLength<k+(O||0))throw new RangeError('"length" is outside of buffer bounds');let q;return k===void 0&&O===void 0?q=new Uint8Array(T):O===void 0?q=new Uint8Array(T,k):q=new Uint8Array(T,k,O),Object.setPrototypeOf(q,v.prototype),q}function P(T){if(v.isBuffer(T)){let k=N(T.length)|0,O=l(k);return O.length===0||T.copy(O,0,0,k),O}if(T.length!==void 0)return typeof T.length!="number"||Ae(T.length)?l(0):E(T);if(T.type==="Buffer"&&Array.isArray(T.data))return E(T.data)}function N(T){if(T>=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return T|0}function L(T){return+T!=T&&(T=0),v.alloc(+T)}v.isBuffer=function(T){return T!=null&&T._isBuffer===!0&&T!==v.prototype},v.compare=function(T,k){if(ut(T,Uint8Array)&&(T=v.from(T,T.offset,T.byteLength)),ut(k,Uint8Array)&&(k=v.from(k,k.offset,k.byteLength)),!v.isBuffer(T)||!v.isBuffer(k))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(T===k)return 0;let O=T.length,q=k.length;for(let H=0,W=Math.min(O,q);H<W;++H)if(T[H]!==k[H]){O=T[H],q=k[H];break}return O<q?-1:q<O?1:0},v.isEncoding=function(T){switch(String(T).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},v.concat=function(T,k){if(!Array.isArray(T))throw new TypeError('"list" argument must be an Array of Buffers');if(T.length===0)return v.alloc(0);let O;if(k===void 0)for(k=0,O=0;O<T.length;++O)k+=T[O].length;let q=v.allocUnsafe(k),H=0;for(O=0;O<T.length;++O){let W=T[O];if(ut(W,Uint8Array))H+W.length>q.length?(v.isBuffer(W)||(W=v.from(W)),W.copy(q,H)):Uint8Array.prototype.set.call(q,W,H);else if(v.isBuffer(W))W.copy(q,H);else throw new TypeError('"list" argument must be an Array of Buffers');H+=W.length}return q};function C(T,k){if(v.isBuffer(T))return T.length;if(ArrayBuffer.isView(T)||ut(T,ArrayBuffer))return T.byteLength;if(typeof T!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof T);let O=T.length,q=arguments.length>2&&arguments[2]===!0;if(!q&&O===0)return 0;let H=!1;for(;;)switch(k){case"ascii":case"latin1":case"binary":return O;case"utf8":case"utf-8":return oe(T).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O*2;case"hex":return O>>>1;case"base64":return ge(T).length;default:if(H)return q?-1:oe(T).length;k=(""+k).toLowerCase(),H=!0}}v.byteLength=C;function Y(T,k,O){let q=!1;if((k===void 0||k<0)&&(k=0),k>this.length||((O===void 0||O>this.length)&&(O=this.length),O<=0)||(O>>>=0,k>>>=0,O<=k))return"";for(T||(T="utf8");;)switch(T){case"hex":return a(this,k,O);case"utf8":case"utf-8":return u(this,k,O);case"ascii":return y(this,k,O);case"latin1":case"binary":return d(this,k,O);case"base64":return f(this,k,O);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return p(this,k,O);default:if(q)throw new TypeError("Unknown encoding: "+T);T=(T+"").toLowerCase(),q=!0}}v.prototype._isBuffer=!0;function G(T,k,O){let q=T[k];T[k]=T[O],T[O]=q}v.prototype.swap16=function(){let T=this.length;if(T%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let k=0;k<T;k+=2)G(this,k,k+1);return this},v.prototype.swap32=function(){let T=this.length;if(T%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let k=0;k<T;k+=4)G(this,k,k+3),G(this,k+1,k+2);return this},v.prototype.swap64=function(){let T=this.length;if(T%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let k=0;k<T;k+=8)G(this,k,k+7),G(this,k+1,k+6),G(this,k+2,k+5),G(this,k+3,k+4);return this},v.prototype.toString=function(){let T=this.length;return T===0?"":arguments.length===0?u(this,0,T):Y.apply(this,arguments)},v.prototype.toLocaleString=v.prototype.toString,v.prototype.equals=function(T){if(!v.isBuffer(T))throw new TypeError("Argument must be a Buffer");return this===T?!0:v.compare(this,T)===0},v.prototype.inspect=function(){let T="",k=t.INSPECT_MAX_BYTES;return T=this.toString("hex",0,k).replace(/(.{2})/g,"$1 ").trim(),this.length>k&&(T+=" ... "),"<Buffer "+T+">"},o&&(v.prototype[o]=v.prototype.inspect),v.prototype.compare=function(T,k,O,q,H){if(ut(T,Uint8Array)&&(T=v.from(T,T.offset,T.byteLength)),!v.isBuffer(T))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof T);if(k===void 0&&(k=0),O===void 0&&(O=T?T.length:0),q===void 0&&(q=0),H===void 0&&(H=this.length),k<0||O>T.length||q<0||H>this.length)throw new RangeError("out of range index");if(q>=H&&k>=O)return 0;if(q>=H)return-1;if(k>=O)return 1;if(k>>>=0,O>>>=0,q>>>=0,H>>>=0,this===T)return 0;let W=H-q,se=O-k,st=Math.min(W,se),ue=this.slice(q,H),pe=T.slice(k,O);for(let ve=0;ve<st;++ve)if(ue[ve]!==pe[ve]){W=ue[ve],se=pe[ve];break}return W<se?-1:se<W?1:0};function te(T,k,O,q,H){if(T.length===0)return-1;if(typeof O=="string"?(q=O,O=0):O>2147483647?O=2147483647:O<-2147483648&&(O=-2147483648),O=+O,Ae(O)&&(O=H?0:T.length-1),O<0&&(O=T.length+O),O>=T.length){if(H)return-1;O=T.length-1}else if(O<0)if(H)O=0;else return-1;if(typeof k=="string"&&(k=v.from(k,q)),v.isBuffer(k))return k.length===0?-1:$(T,k,O,q,H);if(typeof k=="number")return k=k&255,typeof Uint8Array.prototype.indexOf=="function"?H?Uint8Array.prototype.indexOf.call(T,k,O):Uint8Array.prototype.lastIndexOf.call(T,k,O):$(T,[k],O,q,H);throw new TypeError("val must be string, number or Buffer")}function $(T,k,O,q,H){let W=1,se=T.length,st=k.length;if(q!==void 0&&(q=String(q).toLowerCase(),q==="ucs2"||q==="ucs-2"||q==="utf16le"||q==="utf-16le")){if(T.length<2||k.length<2)return-1;W=2,se/=2,st/=2,O/=2}function ue(ve,be){return W===1?ve[be]:ve.readUInt16BE(be*W)}let pe;if(H){let ve=-1;for(pe=O;pe<se;pe++)if(ue(T,pe)===ue(k,ve===-1?0:pe-ve)){if(ve===-1&&(ve=pe),pe-ve+1===st)return ve*W}else ve!==-1&&(pe-=pe-ve),ve=-1}else for(O+st>se&&(O=se-st),pe=O;pe>=0;pe--){let ve=!0;for(let be=0;be<st;be++)if(ue(T,pe+be)!==ue(k,be)){ve=!1;break}if(ve)return pe}return-1}v.prototype.includes=function(T,k,O){return this.indexOf(T,k,O)!==-1},v.prototype.indexOf=function(T,k,O){return te(this,T,k,O,!0)},v.prototype.lastIndexOf=function(T,k,O){return te(this,T,k,O,!1)};function F(T,k,O,q){O=Number(O)||0;let H=T.length-O;q?(q=Number(q),q>H&&(q=H)):q=H;let W=k.length;q>W/2&&(q=W/2);let se;for(se=0;se<q;++se){let st=parseInt(k.substr(se*2,2),16);if(Ae(st))return se;T[O+se]=st}return se}function V(T,k,O,q){return xe(oe(k,T.length-O),T,O,q)}function w(T,k,O,q){return xe(le(k),T,O,q)}function n(T,k,O,q){return xe(ge(k),T,O,q)}function s(T,k,O,q){return xe(ot(k,T.length-O),T,O,q)}v.prototype.write=function(T,k,O,q){if(k===void 0)q="utf8",O=this.length,k=0;else if(O===void 0&&typeof k=="string")q=k,O=this.length,k=0;else if(isFinite(k))k=k>>>0,isFinite(O)?(O=O>>>0,q===void 0&&(q="utf8")):(q=O,O=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let H=this.length-k;if((O===void 0||O>H)&&(O=H),T.length>0&&(O<0||k<0)||k>this.length)throw new RangeError("Attempt to write outside buffer bounds");q||(q="utf8");let W=!1;for(;;)switch(q){case"hex":return F(this,T,k,O);case"utf8":case"utf-8":return V(this,T,k,O);case"ascii":case"latin1":case"binary":return w(this,T,k,O);case"base64":return n(this,T,k,O);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return s(this,T,k,O);default:if(W)throw new TypeError("Unknown encoding: "+q);q=(""+q).toLowerCase(),W=!0}},v.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(T,k,O){return k===0&&O===T.length?e.fromByteArray(T):e.fromByteArray(T.slice(k,O))}function u(T,k,O){O=Math.min(T.length,O);let q=[],H=k;for(;H<O;){let W=T[H],se=null,st=W>239?4:W>223?3:W>191?2:1;if(H+st<=O){let ue,pe,ve,be;switch(st){case 1:W<128&&(se=W);break;case 2:ue=T[H+1],(ue&192)===128&&(be=(W&31)<<6|ue&63,be>127&&(se=be));break;case 3:ue=T[H+1],pe=T[H+2],(ue&192)===128&&(pe&192)===128&&(be=(W&15)<<12|(ue&63)<<6|pe&63,be>2047&&(be<55296||be>57343)&&(se=be));break;case 4:ue=T[H+1],pe=T[H+2],ve=T[H+3],(ue&192)===128&&(pe&192)===128&&(ve&192)===128&&(be=(W&15)<<18|(ue&63)<<12|(pe&63)<<6|ve&63,be>65535&&be<1114112&&(se=be))}}se===null?(se=65533,st=1):se>65535&&(se-=65536,q.push(se>>>10&1023|55296),se=56320|se&1023),q.push(se),H+=st}return m(q)}var c=4096;function m(T){let k=T.length;if(k<=c)return String.fromCharCode.apply(String,T);let O="",q=0;for(;q<k;)O+=String.fromCharCode.apply(String,T.slice(q,q+=c));return O}function y(T,k,O){let q="";O=Math.min(T.length,O);for(let H=k;H<O;++H)q+=String.fromCharCode(T[H]&127);return q}function d(T,k,O){let q="";O=Math.min(T.length,O);for(let H=k;H<O;++H)q+=String.fromCharCode(T[H]);return q}function a(T,k,O){let q=T.length;(!k||k<0)&&(k=0),(!O||O<0||O>q)&&(O=q);let H="";for(let W=k;W<O;++W)H+=Ge[T[W]];return H}function p(T,k,O){let q=T.slice(k,O),H="";for(let W=0;W<q.length-1;W+=2)H+=String.fromCharCode(q[W]+q[W+1]*256);return H}v.prototype.slice=function(T,k){let O=this.length;T=~~T,k=k===void 0?O:~~k,T<0?(T+=O,T<0&&(T=0)):T>O&&(T=O),k<0?(k+=O,k<0&&(k=0)):k>O&&(k=O),k<T&&(k=T);let q=this.subarray(T,k);return Object.setPrototypeOf(q,v.prototype),q};function R(T,k,O){if(T%1!==0||T<0)throw new RangeError("offset is not uint");if(T+k>O)throw new RangeError("Trying to access beyond buffer length")}v.prototype.readUintLE=v.prototype.readUIntLE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=this[T],H=1,W=0;for(;++W<k&&(H*=256);)q+=this[T+W]*H;return q},v.prototype.readUintBE=v.prototype.readUIntBE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=this[T+--k],H=1;for(;k>0&&(H*=256);)q+=this[T+--k]*H;return q},v.prototype.readUint8=v.prototype.readUInt8=function(T,k){return T=T>>>0,k||R(T,1,this.length),this[T]},v.prototype.readUint16LE=v.prototype.readUInt16LE=function(T,k){return T=T>>>0,k||R(T,2,this.length),this[T]|this[T+1]<<8},v.prototype.readUint16BE=v.prototype.readUInt16BE=function(T,k){return T=T>>>0,k||R(T,2,this.length),this[T]<<8|this[T+1]},v.prototype.readUint32LE=v.prototype.readUInt32LE=function(T,k){return T=T>>>0,k||R(T,4,this.length),(this[T]|this[T+1]<<8|this[T+2]<<16)+this[T+3]*16777216},v.prototype.readUint32BE=v.prototype.readUInt32BE=function(T,k){return T=T>>>0,k||R(T,4,this.length),this[T]*16777216+(this[T+1]<<16|this[T+2]<<8|this[T+3])},v.prototype.readBigUInt64LE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=k+this[++T]*2**8+this[++T]*2**16+this[++T]*2**24,H=this[++T]+this[++T]*2**8+this[++T]*2**16+O*2**24;return BigInt(q)+(BigInt(H)<<BigInt(32))}),v.prototype.readBigUInt64BE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=k*2**24+this[++T]*2**16+this[++T]*2**8+this[++T],H=this[++T]*2**24+this[++T]*2**16+this[++T]*2**8+O;return(BigInt(q)<<BigInt(32))+BigInt(H)}),v.prototype.readIntLE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=this[T],H=1,W=0;for(;++W<k&&(H*=256);)q+=this[T+W]*H;return H*=128,q>=H&&(q-=Math.pow(2,8*k)),q},v.prototype.readIntBE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=k,H=1,W=this[T+--q];for(;q>0&&(H*=256);)W+=this[T+--q]*H;return H*=128,W>=H&&(W-=Math.pow(2,8*k)),W},v.prototype.readInt8=function(T,k){return T=T>>>0,k||R(T,1,this.length),this[T]&128?(255-this[T]+1)*-1:this[T]},v.prototype.readInt16LE=function(T,k){T=T>>>0,k||R(T,2,this.length);let O=this[T]|this[T+1]<<8;return O&32768?O|4294901760:O},v.prototype.readInt16BE=function(T,k){T=T>>>0,k||R(T,2,this.length);let O=this[T+1]|this[T]<<8;return O&32768?O|4294901760:O},v.prototype.readInt32LE=function(T,k){return T=T>>>0,k||R(T,4,this.length),this[T]|this[T+1]<<8|this[T+2]<<16|this[T+3]<<24},v.prototype.readInt32BE=function(T,k){return T=T>>>0,k||R(T,4,this.length),this[T]<<24|this[T+1]<<16|this[T+2]<<8|this[T+3]},v.prototype.readBigInt64LE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=this[T+4]+this[T+5]*2**8+this[T+6]*2**16+(O<<24);return(BigInt(q)<<BigInt(32))+BigInt(k+this[++T]*2**8+this[++T]*2**16+this[++T]*2**24)}),v.prototype.readBigInt64BE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=(k<<24)+this[++T]*2**16+this[++T]*2**8+this[++T];return(BigInt(q)<<BigInt(32))+BigInt(this[++T]*2**24+this[++T]*2**16+this[++T]*2**8+O)}),v.prototype.readFloatLE=function(T,k){return T=T>>>0,k||R(T,4,this.length),r.read(this,T,!0,23,4)},v.prototype.readFloatBE=function(T,k){return T=T>>>0,k||R(T,4,this.length),r.read(this,T,!1,23,4)},v.prototype.readDoubleLE=function(T,k){return T=T>>>0,k||R(T,8,this.length),r.read(this,T,!0,52,8)},v.prototype.readDoubleBE=function(T,k){return T=T>>>0,k||R(T,8,this.length),r.read(this,T,!1,52,8)};function S(T,k,O,q,H,W){if(!v.isBuffer(T))throw new TypeError('"buffer" argument must be a Buffer instance');if(k>H||k<W)throw new RangeError('"value" argument is out of bounds');if(O+q>T.length)throw new RangeError("Index out of range")}v.prototype.writeUintLE=v.prototype.writeUIntLE=function(T,k,O,q){if(T=+T,k=k>>>0,O=O>>>0,!q){let se=Math.pow(2,8*O)-1;S(this,T,k,O,se,0)}let H=1,W=0;for(this[k]=T&255;++W<O&&(H*=256);)this[k+W]=T/H&255;return k+O},v.prototype.writeUintBE=v.prototype.writeUIntBE=function(T,k,O,q){if(T=+T,k=k>>>0,O=O>>>0,!q){let se=Math.pow(2,8*O)-1;S(this,T,k,O,se,0)}let H=O-1,W=1;for(this[k+H]=T&255;--H>=0&&(W*=256);)this[k+H]=T/W&255;return k+O},v.prototype.writeUint8=v.prototype.writeUInt8=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,1,255,0),this[k]=T&255,k+1},v.prototype.writeUint16LE=v.prototype.writeUInt16LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,65535,0),this[k]=T&255,this[k+1]=T>>>8,k+2},v.prototype.writeUint16BE=v.prototype.writeUInt16BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,65535,0),this[k]=T>>>8,this[k+1]=T&255,k+2},v.prototype.writeUint32LE=v.prototype.writeUInt32LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,4294967295,0),this[k+3]=T>>>24,this[k+2]=T>>>16,this[k+1]=T>>>8,this[k]=T&255,k+4},v.prototype.writeUint32BE=v.prototype.writeUInt32BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,4294967295,0),this[k]=T>>>24,this[k+1]=T>>>16,this[k+2]=T>>>8,this[k+3]=T&255,k+4};function B(T,k,O,q,H){j(k,q,H,T,O,7);let W=Number(k&BigInt(4294967295));T[O++]=W,W=W>>8,T[O++]=W,W=W>>8,T[O++]=W,W=W>>8,T[O++]=W;let se=Number(k>>BigInt(32)&BigInt(4294967295));return T[O++]=se,se=se>>8,T[O++]=se,se=se>>8,T[O++]=se,se=se>>8,T[O++]=se,O}function U(T,k,O,q,H){j(k,q,H,T,O,7);let W=Number(k&BigInt(4294967295));T[O+7]=W,W=W>>8,T[O+6]=W,W=W>>8,T[O+5]=W,W=W>>8,T[O+4]=W;let se=Number(k>>BigInt(32)&BigInt(4294967295));return T[O+3]=se,se=se>>8,T[O+2]=se,se=se>>8,T[O+1]=se,se=se>>8,T[O]=se,O+8}v.prototype.writeBigUInt64LE=lt(function(T,k=0){return B(this,T,k,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeBigUInt64BE=lt(function(T,k=0){return U(this,T,k,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeIntLE=function(T,k,O,q){if(T=+T,k=k>>>0,!q){let st=Math.pow(2,8*O-1);S(this,T,k,O,st-1,-st)}let H=0,W=1,se=0;for(this[k]=T&255;++H<O&&(W*=256);)T<0&&se===0&&this[k+H-1]!==0&&(se=1),this[k+H]=(T/W>>0)-se&255;return k+O},v.prototype.writeIntBE=function(T,k,O,q){if(T=+T,k=k>>>0,!q){let st=Math.pow(2,8*O-1);S(this,T,k,O,st-1,-st)}let H=O-1,W=1,se=0;for(this[k+H]=T&255;--H>=0&&(W*=256);)T<0&&se===0&&this[k+H+1]!==0&&(se=1),this[k+H]=(T/W>>0)-se&255;return k+O},v.prototype.writeInt8=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,1,127,-128),T<0&&(T=255+T+1),this[k]=T&255,k+1},v.prototype.writeInt16LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,32767,-32768),this[k]=T&255,this[k+1]=T>>>8,k+2},v.prototype.writeInt16BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,32767,-32768),this[k]=T>>>8,this[k+1]=T&255,k+2},v.prototype.writeInt32LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,2147483647,-2147483648),this[k]=T&255,this[k+1]=T>>>8,this[k+2]=T>>>16,this[k+3]=T>>>24,k+4},v.prototype.writeInt32BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,2147483647,-2147483648),T<0&&(T=4294967295+T+1),this[k]=T>>>24,this[k+1]=T>>>16,this[k+2]=T>>>8,this[k+3]=T&255,k+4},v.prototype.writeBigInt64LE=lt(function(T,k=0){return B(this,T,k,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),v.prototype.writeBigInt64BE=lt(function(T,k=0){return U(this,T,k,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function D(T,k,O,q,H,W){if(O+q>T.length)throw new RangeError("Index out of range");if(O<0)throw new RangeError("Index out of range")}function re(T,k,O,q,H){return k=+k,O=O>>>0,H||D(T,k,O,4,34028234663852886e22,-34028234663852886e22),r.write(T,k,O,q,23,4),O+4}v.prototype.writeFloatLE=function(T,k,O){return re(this,T,k,!0,O)},v.prototype.writeFloatBE=function(T,k,O){return re(this,T,k,!1,O)};function Q(T,k,O,q,H){return k=+k,O=O>>>0,H||D(T,k,O,8,17976931348623157e292,-17976931348623157e292),r.write(T,k,O,q,52,8),O+8}v.prototype.writeDoubleLE=function(T,k,O){return Q(this,T,k,!0,O)},v.prototype.writeDoubleBE=function(T,k,O){return Q(this,T,k,!1,O)},v.prototype.copy=function(T,k,O,q){if(!v.isBuffer(T))throw new TypeError("argument should be a Buffer");if(O||(O=0),!q&&q!==0&&(q=this.length),k>=T.length&&(k=T.length),k||(k=0),q>0&&q<O&&(q=O),q===O||T.length===0||this.length===0)return 0;if(k<0)throw new RangeError("targetStart out of bounds");if(O<0||O>=this.length)throw new RangeError("Index out of range");if(q<0)throw new RangeError("sourceEnd out of bounds");q>this.length&&(q=this.length),T.length-k<q-O&&(q=T.length-k+O);let H=q-O;return this===T&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(k,O,q):Uint8Array.prototype.set.call(T,this.subarray(O,q),k),H},v.prototype.fill=function(T,k,O,q){if(typeof T=="string"){if(typeof k=="string"?(q=k,k=0,O=this.length):typeof O=="string"&&(q=O,O=this.length),q!==void 0&&typeof q!="string")throw new TypeError("encoding must be a string");if(typeof q=="string"&&!v.isEncoding(q))throw new TypeError("Unknown encoding: "+q);if(T.length===1){let W=T.charCodeAt(0);(q==="utf8"&&W<128||q==="latin1")&&(T=W)}}else typeof T=="number"?T=T&255:typeof T=="boolean"&&(T=Number(T));if(k<0||this.length<k||this.length<O)throw new RangeError("Out of range index");if(O<=k)return this;k=k>>>0,O=O===void 0?this.length:O>>>0,T||(T=0);let H;if(typeof T=="number")for(H=k;H<O;++H)this[H]=T;else{let W=v.isBuffer(T)?T:v.from(T,q),se=W.length;if(se===0)throw new TypeError('The value "'+T+'" is invalid for argument "value"');for(H=0;H<O-k;++H)this[H+k]=W[H%se]}return this};var Z={};function K(T,k,O){Z[T]=class extends O{constructor(){super(),Object.defineProperty(this,"message",{value:k.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${T}]`,this.stack,delete this.name}get code(){return T}set code(q){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:q,writable:!0})}toString(){return`${this.name} [${T}]: ${this.message}`}}}K("ERR_BUFFER_OUT_OF_BOUNDS",function(T){return T?`${T} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),K("ERR_INVALID_ARG_TYPE",function(T,k){return`The "${T}" argument must be of type number. Received type ${typeof k}`},TypeError),K("ERR_OUT_OF_RANGE",function(T,k,O){let q=`The value of "${T}" is out of range.`,H=O;return Number.isInteger(O)&&Math.abs(O)>2**32?H=ce(String(O)):typeof O=="bigint"&&(H=String(O),(O>BigInt(2)**BigInt(32)||O<-(BigInt(2)**BigInt(32)))&&(H=ce(H)),H+="n"),q+=` It must be ${k}. Received ${H}`,q},RangeError);function ce(T){let k="",O=T.length,q=T[0]==="-"?1:0;for(;O>=q+4;O-=3)k=`_${T.slice(O-3,O)}${k}`;return`${T.slice(0,O)}${k}`}function ee(T,k,O){J(k,"offset"),(T[k]===void 0||T[k+O]===void 0)&&X(k,T.length-(O+1))}function j(T,k,O,q,H,W){if(T>O||T<k){let se=typeof k=="bigint"?"n":"",st;throw W>3?k===0||k===BigInt(0)?st=`>= 0${se} and < 2${se} ** ${(W+1)*8}${se}`:st=`>= -(2${se} ** ${(W+1)*8-1}${se}) and < 2 ** ${(W+1)*8-1}${se}`:st=`>= ${k}${se} and <= ${O}${se}`,new Z.ERR_OUT_OF_RANGE("value",st,T)}ee(q,H,W)}function J(T,k){if(typeof T!="number")throw new Z.ERR_INVALID_ARG_TYPE(k,"number",T)}function X(T,k,O){throw Math.floor(T)!==T?(J(T,O),new Z.ERR_OUT_OF_RANGE(O||"offset","an integer",T)):k<0?new Z.ERR_BUFFER_OUT_OF_BOUNDS:new Z.ERR_OUT_OF_RANGE(O||"offset",`>= ${O?1:0} and <= ${k}`,T)}var he=/[^+/0-9A-Za-z-_]/g;function Ie(T){if(T=T.split("=")[0],T=T.trim().replace(he,""),T.length<2)return"";for(;T.length%4!==0;)T=T+"=";return T}function oe(T,k){k=k||1/0;let O,q=T.length,H=null,W=[];for(let se=0;se<q;++se){if(O=T.charCodeAt(se),O>55295&&O<57344){if(!H){if(O>56319){(k-=3)>-1&&W.push(239,191,189);continue}else if(se+1===q){(k-=3)>-1&&W.push(239,191,189);continue}H=O;continue}if(O<56320){(k-=3)>-1&&W.push(239,191,189),H=O;continue}O=(H-55296<<10|O-56320)+65536}else H&&(k-=3)>-1&&W.push(239,191,189);if(H=null,O<128){if((k-=1)<0)break;W.push(O)}else if(O<2048){if((k-=2)<0)break;W.push(O>>6|192,O&63|128)}else if(O<65536){if((k-=3)<0)break;W.push(O>>12|224,O>>6&63|128,O&63|128)}else if(O<1114112){if((k-=4)<0)break;W.push(O>>18|240,O>>12&63|128,O>>6&63|128,O&63|128)}else throw new Error("Invalid code point")}return W}function le(T){let k=[];for(let O=0;O<T.length;++O)k.push(T.charCodeAt(O)&255);return k}function ot(T,k){let O,q,H,W=[];for(let se=0;se<T.length&&!((k-=2)<0);++se)O=T.charCodeAt(se),q=O>>8,H=O%256,W.push(H),W.push(q);return W}function ge(T){return e.toByteArray(Ie(T))}function xe(T,k,O,q){let H;for(H=0;H<q&&!(H+O>=k.length||H>=T.length);++H)k[H+O]=T[H];return H}function ut(T,k){return T instanceof k||T!=null&&T.constructor!=null&&T.constructor.name!=null&&T.constructor.name===k.name}function Ae(T){return T!==T}var Ge=function(){let T="0123456789abcdef",k=new Array(256);for(let O=0;O<16;++O){let q=O*16;for(let H=0;H<16;++H)k[q+H]=T[O]+T[H]}return k}();function lt(T){return typeof BigInt>"u"?z:T}function z(){throw new Error("BigInt not supported")}}),TEe=Zh((t,e)=>{typeof window<"u"?(window.global=window,global.fetch=window.fetch,e.exports={Buffer:oI().Buffer,Crypto:window.crypto}):e.exports={Buffer:oI().Buffer,Crypto:crypto}}),Ete={};MEe(Ete,{AVSCTap:()=>B2,ArweaveSigner:()=>PI,DataItem:()=>A2,MAX_TAG_BYTES:()=>Ew,MIN_BINARY_SIZE:()=>CI,SIG_CONFIG:()=>Y1,SignatureConfig:()=>Os,Signer:()=>Ate,createData:()=>kte,deserializeTags:()=>vw,indexToType:()=>OI,serializeTags:()=>NI,tagsExceedLimit:()=>Ite});var Ate=class{signer;publicKey;signatureType;signatureLength;ownerLength;pem;static verify(t,e,r,o){throw new Error("You must implement verify method on child")}},IEe=Id(BI(),1),If=Id(Ste(),1);async function Rte(t){if(Array.isArray(t)){let i=(0,If.concatBuffers)([(0,If.stringToBuffer)("list"),(0,If.stringToBuffer)(t.length.toString())]);return await Tte(t,await Uh().hash(i,"SHA-384"))}let e=t,r=(0,If.concatBuffers)([(0,If.stringToBuffer)("blob"),(0,If.stringToBuffer)(e.byteLength.toString())]),o=(0,If.concatBuffers)([await Uh().hash(r,"SHA-384"),await Uh().hash(e,"SHA-384")]);return await Uh().hash(o,"SHA-384")}async function Tte(t,e){if(t.length<1)return e;let r=(0,If.concatBuffers)([e,await Rte(t[0])]),o=await Uh().hash(r,"SHA-384");return await Tte(t.slice(1),o)}var LT=Id(AEe(),1),kEe=LT.default.default?LT.default.default:LT.default,BEe=class extends kEe{getPublicKey(t){throw new Error("Unimplemented")}},PEe;function Uh(){return PEe??=new BEe}var Os;(function(t){t[t.ARWEAVE=1]="ARWEAVE",t[t.ED25519=2]="ED25519",t[t.ETHEREUM=3]="ETHEREUM",t[t.SOLANA=4]="SOLANA",t[t.INJECTEDAPTOS=5]="INJECTEDAPTOS",t[t.MULTIAPTOS=6]="MULTIAPTOS",t[t.TYPEDETHEREUM=7]="TYPEDETHEREUM"})(Os||(Os={}));var Y1={[Os.ARWEAVE]:{sigLength:512,pubLength:512,sigName:"arweave"},[Os.ED25519]:{sigLength:64,pubLength:32,sigName:"ed25519"},[Os.ETHEREUM]:{sigLength:65,pubLength:65,sigName:"ethereum"},[Os.SOLANA]:{sigLength:64,pubLength:32,sigName:"solana"},[Os.INJECTEDAPTOS]:{sigLength:64,pubLength:32,sigName:"injectedAptos"},[Os.MULTIAPTOS]:{sigLength:64*32+4,pubLength:32*32+1,sigName:"multiAptos"},[Os.TYPEDETHEREUM]:{sigLength:65,pubLength:42,sigName:"typedEthereum"}},PI=class{signatureType=1;ownerLength=Y1[1].pubLength;signatureLength=Y1[1].sigLength;jwk;pk;constructor(t){this.pk=t.n,this.jwk=t}get publicKey(){return IEe.default.toBuffer(this.pk)}sign(t){return Uh().sign(this.jwk,t)}static async verify(t,e,r){return await Uh().verify(t,e,r)}},OI={1:PI},Nu=Id(BI(),1);async function sI(t){return Rte([(0,If.stringToBuffer)("dataitem"),(0,If.stringToBuffer)("1"),(0,If.stringToBuffer)(t.signatureType.toString()),t.rawOwner,t.rawTarget,t.rawAnchor,t.rawTags,t.rawData])}async function OEe(t,e){let r=await sI(t),o=await e.sign(r),i=await Uh().hash(o);return{signature:Se.from(o),id:Se.from(i)}}async function NEe(t,e){let{signature:r,id:o}=await OEe(t,e);return t.getRaw().set(r,2),o}var B2=class{buf;pos;constructor(t=Se.alloc(Ew),e=0){this.buf=t,this.pos=e}writeTags(t){if(!Array.isArray(t))throw new Error("input must be array");let e=t.length,r;if(e)for(this.writeLong(e),r=0;r<e;r++){let o=t[r];if(o?.name===void 0||o?.value===void 0)throw new Error(`Invalid tag format for ${o}, expected {name:string, value: string}`);this.writeString(o.name),this.writeString(o.value)}this.writeLong(0)}toBuffer(){let t=Se.alloc(this.pos);if(this.pos>this.buf.length)throw new Error(`Too many tag bytes (${this.pos} > ${this.buf.length})`);return this.buf.copy(t,0,0,this.pos),t}tagsExceedLimit(){return this.pos>this.buf.length}writeLong(t){let e=this.buf,r,o;if(t>=-1073741824&&t<1073741824){o=t>=0?t<<1:~t<<1|1;do e[this.pos]=o&127,o>>=7;while(o&&(e[this.pos++]|=128))}else{r=t>=0?t*2:-t*2-1;do e[this.pos]=r&127,r/=128;while(r>=1&&(e[this.pos++]|=128))}this.pos++,this.buf=e}writeString(t){let e=Se.byteLength(t),r=this.buf;this.writeLong(e);let o=this.pos;if(this.pos+=e,!(this.pos>r.length)){if(e>64)this.buf.write(t,this.pos-e,e,"utf8");else{let i,h,l,v;for(i=0,h=e;i<h;i++)l=t.charCodeAt(i),l<128?r[o++]=l:l<2048?(r[o++]=l>>6|192,r[o++]=l&63|128):(l&64512)===55296&&((v=t.charCodeAt(i+1))&64512)===56320?(l=65536+((l&1023)<<10)+(v&1023),i++,r[o++]=l>>18|240,r[o++]=l>>12&63|128,r[o++]=l>>6&63|128,r[o++]=l&63|128):(r[o++]=l>>12|224,r[o++]=l>>6&63|128,r[o++]=l&63|128)}this.buf=r}}readLong(){let t=0,e=0,r=this.buf,o,i,h,l;do o=r[this.pos++],i=o&128,t|=(o&127)<<e,e+=7;while(i&&e<28);if(i){h=t,l=268435456;do o=r[this.pos++],h+=(o&127)*l,l*=128;while(o&128);return(h%2?-(h+1):h)/2}return t>>1^-(t&1)}skipLong(){let t=this.buf;for(;t[this.pos++]&128;);}readTags(){let t=[],e;for(;e=this.readLong();)for(e<0&&(e=-e,this.skipLong());e--;){let r=this.readString(),o=this.readString();t.push({name:r,value:o})}return t}readString(){let t=this.readLong(),e=this.pos,r=this.buf;if(this.pos+=t,!(this.pos>r.length))return this.buf.slice(e,e+t).toString()}};function NI(t){let e=new B2;return e.writeTags(t),e.toBuffer()}function Ite(t){let e=new B2;return e.writeTags(t),e.tagsExceedLimit()}function vw(t){return new B2(t).readTags()}function vl(t){let e=0;for(let r=t.length-1;r>=0;r--)e=e*256+t[r];return e}function CEe(t){if(t>29)throw new Error("Short too long");let e=[0,0];for(let r=0;r<e.length;r++){let o=t&255;e[r]=o,t=(t-o)/256}return Uint8Array.from(e)}function KQ(t){let e=[0,0,0,0,0,0,0,0];for(let r=0;r<e.length;r++){let o=t&255;e[r]=o,t=(t-o)/256}return Uint8Array.from(e)}var LEe=Id(TEe(),1),k1=Id(oI(),1),Ew=4096,CI=80,A2=class{binary;_id;constructor(t){this.binary=t}static isDataItem(t){return t.binary!==void 0}get signatureType(){let t=vl(this.binary.subarray(0,2));if(Os?.[t]!==void 0)return t;throw new Error("Unknown signature type: "+t)}async isValid(){return A2.verify(this.binary)}get id(){return(async()=>Nu.default.encode(await this.rawId))()}set id(t){this._id=Nu.default.toBuffer(t)}get rawId(){return(async()=>k1.Buffer.from(await LEe.Crypto.subtle.digest("SHA-256",this.rawSignature)))()}set rawId(t){this._id=t}get rawSignature(){return this.binary.subarray(2,2+this.signatureLength)}get signature(){return Nu.default.encode(this.rawSignature)}set rawOwner(t){if(t.byteLength!=this.ownerLength)throw new Error(`Expected raw owner (pubkey) to be ${this.ownerLength} bytes, got ${t.byteLength} bytes.`);this.binary.set(t,2+this.signatureLength)}get rawOwner(){return this.binary.subarray(2+this.signatureLength,2+this.signatureLength+this.ownerLength)}get signatureLength(){return Y1[this.signatureType].sigLength}get owner(){return Nu.default.encode(this.rawOwner)}get ownerLength(){return Y1[this.signatureType].pubLength}get rawTarget(){let t=this.getTargetStart();return this.binary[t]==1?this.binary.subarray(t+1,t+33):k1.Buffer.alloc(0)}get target(){return Nu.default.encode(this.rawTarget)}get rawAnchor(){let t=this.getAnchorStart();return this.binary[t]==1?this.binary.subarray(t+1,t+33):k1.Buffer.alloc(0)}get anchor(){return this.rawAnchor.toString()}get rawTags(){let t=this.getTagsStart(),e=vl(this.binary.subarray(t+8,t+16));return this.binary.subarray(t+16,t+16+e)}get tags(){let t=this.getTagsStart();if(vl(this.binary.subarray(t,t+8))==0)return[];let e=vl(this.binary.subarray(t+8,t+16));return vw(k1.Buffer.from(this.binary.subarray(t+16,t+16+e)))}get tagsB64Url(){return this.tags.map(t=>({name:Nu.default.encode(t.name),value:Nu.default.encode(t.value)}))}getStartOfData(){let t=this.getTagsStart(),e=this.binary.subarray(t+8,t+16),r=vl(e);return t+16+r}get rawData(){let t=this.getTagsStart(),e=this.binary.subarray(t+8,t+16),r=vl(e),o=t+16+r;return this.binary.subarray(o,this.binary.length)}get data(){return Nu.default.encode(this.rawData)}getRaw(){return this.binary}async sign(t){return this._id=await NEe(this,t),this.rawId}async setSignature(t){this.binary.set(t,2),this._id=k1.Buffer.from(await Uh().hash(t))}isSigned(){return(this._id?.length??0)>0}toJSON(){return{signature:this.signature,owner:this.owner,target:this.target,tags:this.tags.map(t=>({name:Nu.default.encode(t.name),value:Nu.default.encode(t.value)})),data:this.data}}static async verify(t){if(t.byteLength<CI)return!1;let e=new A2(t),r=e.signatureType,o=e.getTagsStart(),i=vl(t.subarray(o,o+8)),h=t.subarray(o+8,o+16),l=vl(h);if(l>Ew)return!1;if(i>0)try{if(vw(k1.Buffer.from(t.subarray(o+16,o+16+l))).length!==i)return!1}catch{return!1}let v=OI[r],b=await sI(e);return await v.verify(e.rawOwner,b,e.rawSignature)}async getSignatureData(){return sI(this)}getTagsStart(){let t=this.getTargetStart(),e=this.binary[t]==1,r=t+(e?33:1),o=this.binary[r]==1;return r+=o?33:1,r}getTargetStart(){return 2+this.signatureLength+this.ownerLength}getAnchorStart(){let t=this.getTargetStart()+1,e=this.binary[this.getTargetStart()]==1;return t+=e?32:0,t}},DEe=Id(BI(),1);function kte(t,e,r){let o=e.publicKey,i=r?.target?DEe.default.toBuffer(r.target):null,h=1+(i?.byteLength??0),l=r?.anchor?Se.from(r.anchor):null,v=1+(l?.byteLength??0),b=(r?.tags?.length??0)>0?NI(r.tags):null,g=16+(b?b.byteLength:0),_=Se.from(t),M=_.byteLength,x=2+e.signatureLength+e.ownerLength+h+v+g+M,E=Se.alloc(x);if(E.set(CEe(e.signatureType),0),E.set(new Uint8Array(e.signatureLength).fill(0),2),o.byteLength!==e.ownerLength)throw new Error(`Owner must be ${e.ownerLength} bytes, but was incorrectly ${o.byteLength}`);E.set(o,2+e.signatureLength);let A=2+e.signatureLength+e.ownerLength;if(E[A]=i?1:0,i){if(i.byteLength!==32)throw new Error(`Target must be 32 bytes but was incorrectly ${i.byteLength}`);E.set(i,A+1)}let I=A+h,P=I+1;if(E[I]=l?1:0,l){if(P+=l.byteLength,l.byteLength!==32)throw new Error("Anchor must be 32 bytes");E.set(l,I+1)}E.set(KQ(r?.tags?.length??0),P);let N=KQ(b?.byteLength??0);E.set(N,P+8),b&&E.set(b,P+16);let L=P+g;return E.set(_,L),new A2(E)}var LI={...Ete};globalThis.arbundles??=LI;var $Ee=LI,qEe=LI;globalThis.Buffer||(globalThis.Buffer=_te.Buffer);var{DataItem:UEe}=Mte;function FEe(t){return async({data:r,tags:o,target:i,anchor:h,createDataItem:l=v=>new UEe(v)})=>{let v=await t.signDataItem({data:r,tags:o,target:i,anchor:h}),b=l(_te.Buffer.from(v));return{id:await b.id,raw:await b.getRaw()}}}var jEe=globalThis.GATEWAY_URL||void 0,zEe=globalThis.MU_URL||void 0,ZEe=globalThis.CU_URL||void 0,HEe=globalThis.GRAPHQL_URL||void 0,{result:kut,results:But,message:Put,spawn:Out,monitor:Nut,unmonitor:Cut,dryrun:Lut,assign:Dut}=El({GATEWAY_URL:jEe,MU_URL:zEe,CU_URL:ZEe,GRAPHQL_URL:HEe}),Bte=wte.createDataItemSigner;ie();ae();ne();var Sre=mi(xre(),1),Nw=Sre.default.init({host:"arweave.net",port:443,protocol:"https"});ie();ae();ne();ie();ae();ne();var Lf=class extends Error{constructor(e){super(e),this.name=this.constructor.name}},Ere=class extends Lf{},Are=class extends Lf{},Rre=class extends Lf{constructor(e,r){super(`Failed request: ${e}: ${r}`)}},Tre=class extends Lf{},Cw=class extends Lf{},Ire=class extends Lf{constructor(){super("Invalid signer. Please provide a valid signer to interact with the contract.")}},ju=class extends Lf{constructor(){super("Invalid contract configuration")}},kre=class extends Lf{constructor(){super("Invalid process configuration")}},Bre=class extends Lf{};ie();ae();ne();var Hf=mi(Jfe(),1);ie();ae();ne();var j4="3.9.0-alpha.2";var Gu=class t{logger;silent=!1;static default=new t;constructor({level:e="info"}={}){e==="none"&&(this.silent=!0),typeof window<"u"?this.logger=console:this.logger=(0,Hf.createLogger)({level:e,silent:this.silent,defaultMeta:{name:"ar-io-sdk",version:j4},format:Hf.format.combine(Hf.format.timestamp(),Hf.format.json()),transports:[new Hf.transports.Console({format:Hf.format.combine(Hf.format.timestamp(),Hf.format.json())})]})}info(e,...r){this.silent||this.logger.info(e,...r)}warn(e,...r){this.silent||this.logger.warn(e,...r)}error(e,...r){this.silent||this.logger.error(e,...r)}debug(e,...r){this.silent||this.logger.debug(e,...r)}setLogLevel(e){this.silent=e==="none","silent"in this.logger&&(this.logger.silent=e==="none"),"level"in this.logger&&(this.logger.level=e)}};ie();ae();ne();ie();ae();ne();var Xfe=t=>{let e=Object.entries(t).sort(([r,o],[i,h])=>r==="@"?-1:i==="@"?1:"priority"in o&&!("priority"in h)?-1:!("priority"in o)&&"priority"in h?1:o.priority!==void 0&&h.priority!==void 0?o.priority===h.priority?r<i?-1:r>i?1:0:o.priority-h.priority:r<i?-1:r>i?1:0);return Object.fromEntries(e.map(([r,o],i)=>[r,{...o,index:i}]))};ie();ae();ne();function Pl(t,e){let r=t.safeParse(e);if(!r.success)throw new Error(JSON.stringify(r.error.format(),null,2));return r}ie();ae();ne();ie();ae();ne();ie();ae();ne();cu();var Qfe="+",eue="/",tue="-",rue="_",iue="=";function hUe(t){let e=t.length%4;return e&&(t+=iue.repeat(4-e)),t.replaceAll(tue,Qfe).replaceAll(rue,eue)}function lUe(t){return t.replaceAll(Qfe,tue).replaceAll(eue,rue).replaceAll(iue,"")}function Cbt(t){let e=hUe(t);return Se.from(e,"base64")}function cUe(t){let e=t.toString("base64");return lUe(e)}function Lbt(t){return cUe(cf("sha256").update(Uint8Array.from(t)).digest())}function nue(t=32){let e=fE(t);return Array.from(e,r=>r.toString(16).padStart(2,"0")).join("").slice(0,t)}ie();ae();ne();ie();ae();ne();function dP(t){try{return JSON.parse(t)}catch{return t}}ie();ae();ne();ie();ae();ne();var vP=mi(oue(),1);ie();ae();ne();var vUe=Object.defineProperty,mUe=(t,e,r)=>e in t?vUe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ab=(t,e,r)=>(mUe(t,typeof e!="symbol"?e+"":e,r),r),mP=class{constructor(e){Ab(this,"value"),Ab(this,"next"),this.value=e}},gP=class{constructor(){Ab(this,"head"),Ab(this,"tail"),Ab(this,"_size",0),this.clear()}clear(){this.head=void 0,this.tail=void 0,this._size=0}push(e){let r=new mP(e);return this.head&&this.tail?(this.tail.next=r,this.tail=r):(this.head=r,this.tail=r),this._size++,this._size}pop(){if(!this.head)return;let e=this.head;return this.head=this.head.next,this._size--,e.value}get size(){return this._size}*[Symbol.iterator](){let e=this.head;for(;e;)yield e.value,e=e.next}};function sue(t){if(!((Number.isInteger(t)||t===1/0)&&t>0))throw new TypeError("Expected `concurrency` to be a number greater than 1");let e=new gP,r=0,o=()=>{r--,e.size>0&&e.pop()()},i=async(v,b,g)=>{r++;let _=(async()=>v(...g))();b(_);try{await _}catch{}o()},h=(v,b,g)=>{e.push(i.bind(null,v,b,g)),(async()=>(await Promise.resolve(),r<t&&e.size>0&&e.pop()()))()},l=(v,...b)=>new Promise(g=>{h(v,g,b)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>e.size},clearQueue:{value:()=>{e.clear()}}}),l}ie();ae();ne();var Rb=class{static init(e){return e!==void 0&&"signer"in e?new bP(e):new Z4(e)}},Z4=class{process;constructor(e){if(e===void 0||Object.keys(e).length===0)this.process=new sa({processId:T1});else if(Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju}async accessControlList({address:e}){return this.process.read({tags:[{name:"Action",value:"Access-Control-List"},{name:"Address",value:e}]})}},bP=class extends Z4{signer;constructor({signer:e,...r}){super(r),this.signer=Ol(e)}async register({processId:e}){return this.process.send({tags:[{name:"Action",value:"Register"},{name:"Process-Id",value:e}],signer:this.signer})}};ie();ae();ne();var Tb=class{static init(e){return e!==void 0&&"signer"in e?new yP(e):new H4(e)}},H4=class{process;epochSettings;arweave;constructor(e){if(this.arweave=e?.arweave??Nw,e===void 0||Object.keys(e).length===0)this.process=new sa({processId:Dh});else if(Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju}async getInfo(){return this.process.read({tags:[{name:"Action",value:"Info"}]})}async getTokenSupply(){return this.process.read({tags:[{name:"Action",value:"Total-Token-Supply"}]})}async computeEpochIndexForTimestamp(e){let r=await this.getEpochSettings(),o=r.epochZeroStartTimestamp,i=r.durationMs;return Math.floor((e-o)/i)}async computeCurrentEpochIndex(){let e=await this.getEpochSettings(),r=e.epochZeroStartTimestamp,o=e.durationMs,i=Date.now();return Math.floor((i-r)/o)}async computeEpochIndex(e){let r=e?.epochIndex;if(r!==void 0)return r;let o=e?.timestamp;if(o!==void 0)return this.computeEpochIndexForTimestamp(o)}async getEpochSettings(){return this.epochSettings??=await this.process.read({tags:[{name:"Action",value:"Epoch-Settings"}]})}async getEpoch(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o){let h=await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId});return uue(h)}let i=[{name:"Action",value:"Epoch"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getArNSRecord({name:e}){return this.process.read({tags:[{name:"Action",value:"Record"},{name:"Name",value:e}]})}async getArNSRecords(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Records"},...Na(e)]})}async getArNSReservedNames(e){return this.process.read({tags:[{name:"Action",value:"Reserved-Names"},...Na(e)]})}async getArNSReservedName({name:e}){return this.process.read({tags:[{name:"Action",value:"Reserved-Name"},{name:"Name",value:e}]})}async getBalance({address:e}){return this.process.read({tags:[{name:"Action",value:"Balance"},{name:"Address",value:e}]})}async getBalances(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Balances"},...Na(e)]})}async getVault({address:e,vaultId:r}){return this.process.read({tags:[{name:"Action",value:"Vault"},{name:"Address",value:e},{name:"Vault-Id",value:r}]})}async getVaults(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Vaults"},...Na(e)]})}async getGateway({address:e}){return this.process.read({tags:[{name:"Action",value:"Gateway"},{name:"Address",value:e}]})}async getGatewayDelegates({address:e,...r}){return this.process.read({tags:[{name:"Action",value:"Paginated-Delegates"},{name:"Address",value:e},...Na(r)]})}async getGatewayDelegateAllowList({address:e,...r}){return this.process.read({tags:[{name:"Action",value:"Paginated-Allowed-Delegates"},{name:"Address",value:e},...Na(r)]})}async getGateways(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Gateways"},...Na(e)]})}async getCurrentEpoch(){return this.process.read({tags:[{name:"Action",value:"Epoch"}]})}async getPrescribedObservers(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.prescribedObservers;let i=[{name:"Action",value:"Epoch-Prescribed-Observers"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getPrescribedNames(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.prescribedNames;let i=[{name:"Action",value:"Epoch-Prescribed-Names"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getObservations(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.observations;let i=[{name:"Action",value:"Epoch-Observations"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getDistributions(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.distributions;let i=[{name:"Action",value:"Epoch-Distributions"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getEligibleEpochRewards(e,r){let o=await this.computeEpochIndex(e),i=await this.computeCurrentEpochIndex();if(o!==void 0&&o<i){let l=await Wd({arweave:this.arweave,epochIndex:o,processId:this.process.processId});return fue(l,r)}let h=[{name:"Action",value:"Epoch-Eligible-Rewards"},...Na(r)];return this.process.read({tags:en(h)})}async getTokenCost({intent:e,type:r,years:o,name:i,quantity:h,fromAddress:l}){let b=[{name:"Action",value:"Token-Cost"},{name:"Intent",value:e==="Buy-Record"?"Buy-Name":e},{name:"Name",value:i},{name:"Years",value:o?.toString()},{name:"Quantity",value:h?.toString()},{name:"Purchase-Type",value:r}];return this.process.read({tags:en(b),fromAddress:l})}async getCostDetails({intent:e,type:r,years:o,name:i,quantity:h,fromAddress:l,fundFrom:v}){let g=[{name:"Action",value:"Cost-Details"},{name:"Intent",value:e==="Buy-Record"?"Buy-Name":e},{name:"Name",value:i},{name:"Years",value:o?.toString()},{name:"Quantity",value:h?.toString()},{name:"Purchase-Type",value:r},{name:"Fund-From",value:v}];return this.process.read({tags:en(g),fromAddress:l})}async getRegistrationFees(){return this.process.read({tags:[{name:"Action",value:"Registration-Fees"}]})}async getDemandFactor(){return this.process.read({tags:[{name:"Action",value:"Demand-Factor"}]})}async getDemandFactorSettings(){return this.process.read({tags:[{name:"Action",value:"Demand-Factor-Settings"}]})}async getArNSReturnedNames(e){return this.process.read({tags:[{name:"Action",value:"Returned-Names"},...Na(e)]})}async getArNSReturnedName({name:e}){let r=[{name:"Action",value:"Returned-Name"},{name:"Name",value:e}];return this.process.read({tags:r})}async getDelegations(e){let r=[{name:"Action",value:"Paginated-Delegations"},{name:"Address",value:e.address},...Na(e)];return this.process.read({tags:en(r)})}async getAllowedDelegates(e){return this.getGatewayDelegateAllowList(e)}async getGatewayVaults(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Gateway-Vaults"},{name:"Address",value:e.address},...Na(e)]})}async getPrimaryNameRequest(e){let r=[{name:"Action",value:"Primary-Name-Request"},{name:"Initiator",value:e.initiator}];return this.process.read({tags:r})}async getPrimaryNameRequests(e){return this.process.read({tags:[{name:"Action",value:"Primary-Name-Requests"},...Na(e)]})}async getPrimaryName(e){let r=[{name:"Action",value:"Primary-Name"},{name:"Address",value:e?.address},{name:"Name",value:e?.name}];return this.process.read({tags:en(r)})}async getPrimaryNames(e){return this.process.read({tags:[{name:"Action",value:"Primary-Names"},...Na(e)]})}async getRedelegationFee(e){return this.process.read({tags:[{name:"Action",value:"Redelegation-Fee"},{name:"Address",value:e.address}]})}async getGatewayRegistrySettings(){return this.process.read({tags:[{name:"Action",value:"Gateway-Registry-Settings"}]})}async getAllDelegates(e){return this.process.read({tags:[{name:"Action",value:"All-Paginated-Delegates"},...Na(e)]})}async getAllGatewayVaults(e){return this.process.read({tags:[{name:"Action",value:"All-Gateway-Vaults"},...Na(e)]})}},yP=class extends H4{signer;constructor({signer:e,...r}){r===void 0?super({process:new sa({processId:Dh})}):super(r),this.signer=Ol(e)}async transfer({target:e,qty:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Transfer"},{name:"Recipient",value:e},{name:"Quantity",value:r.valueOf().toString()}],signer:this.signer})}async vaultedTransfer({recipient:e,quantity:r,lockLengthMs:o,revokable:i=!1},h){let{tags:l=[]}=h||{};return this.process.send({tags:[...l,{name:"Action",value:"Vaulted-Transfer"},{name:"Recipient",value:e},{name:"Quantity",value:r.toString()},{name:"Lock-Length",value:o.toString()},{name:"Revokable",value:`${i}`}],signer:this.signer})}async revokeVault({vaultId:e,recipient:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Revoke-Vault"},{name:"Vault-Id",value:e},{name:"Recipient",value:r}],signer:this.signer})}async createVault({lockLengthMs:e,quantity:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Create-Vault"},{name:"Lock-Length",value:e.toString()},{name:"Quantity",value:r.toString()}],signer:this.signer})}async extendVault({vaultId:e,extendLengthMs:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Extend-Vault"},{name:"Vault-Id",value:e},{name:"Extend-Length",value:r.toString()}],signer:this.signer})}async increaseVault({vaultId:e,quantity:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Increase-Vault"},{name:"Vault-Id",value:e},{name:"Quantity",value:r.toString()}],signer:this.signer})}async joinNetwork({operatorStake:e,allowDelegatedStaking:r,allowedDelegates:o,delegateRewardShareRatio:i,fqdn:h,label:l,minDelegatedStake:v,note:b,port:g,properties:_,protocol:M,autoStake:x,observerAddress:E},A){let{tags:I=[]}=A||{},P=[...I,{name:"Action",value:"Join-Network"},{name:"Operator-Stake",value:e.valueOf().toString()},{name:"Allow-Delegated-Staking",value:r?.toString()},{name:"Allowed-Delegates",value:o?.join(",")},{name:"Delegate-Reward-Share-Ratio",value:i?.toString()},{name:"FQDN",value:h},{name:"Label",value:l},{name:"Min-Delegated-Stake",value:v?.valueOf().toString()},{name:"Note",value:b},{name:"Port",value:g?.toString()},{name:"Properties",value:_},{name:"Protocol",value:M},{name:"Auto-Stake",value:x?.toString()},{name:"Observer-Address",value:E}];return this.process.send({signer:this.signer,tags:en(P)})}async leaveNetwork(e){let{tags:r=[]}=e||{};return this.process.send({signer:this.signer,tags:[...r,{name:"Action",value:"Leave-Network"}]})}async updateGatewaySettings({allowDelegatedStaking:e,allowedDelegates:r,delegateRewardShareRatio:o,fqdn:i,label:h,minDelegatedStake:l,note:v,port:b,properties:g,protocol:_,autoStake:M,observerAddress:x},E){let{tags:A=[]}=E||{},I=[...A,{name:"Action",value:"Update-Gateway-Settings"},{name:"Label",value:h},{name:"Note",value:v},{name:"FQDN",value:i},{name:"Port",value:b?.toString()},{name:"Properties",value:g},{name:"Protocol",value:_},{name:"Observer-Address",value:x},{name:"Allow-Delegated-Staking",value:e?.toString()},{name:"Allowed-Delegates",value:r?.join(",")},{name:"Delegate-Reward-Share-Ratio",value:o?.toString()},{name:"Min-Delegated-Stake",value:l?.valueOf().toString()},{name:"Auto-Stake",value:M?.toString()}];return this.process.send({signer:this.signer,tags:en(I)})}async delegateStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Delegate-Stake"},{name:"Target",value:e.target},{name:"Quantity",value:e.stakeQty.valueOf().toString()}]})}async decreaseDelegateStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Decrease-Delegate-Stake"},{name:"Target",value:e.target},{name:"Quantity",value:e.decreaseQty.valueOf().toString()},{name:"Instant",value:`${e.instant||!1}`}]})}async instantWithdrawal(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Instant-Withdrawal"},{name:"Vault-Id",value:e.vaultId},{name:"Address",value:e.gatewayAddress}];return this.process.send({signer:this.signer,tags:en(i)})}async increaseOperatorStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Increase-Operator-Stake"},{name:"Quantity",value:e.increaseQty.valueOf().toString()}]})}async decreaseOperatorStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Decrease-Operator-Stake"},{name:"Quantity",value:e.decreaseQty.valueOf().toString()},{name:"Instant",value:`${e.instant||!1}`}]})}async saveObservations(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Save-Observations"},{name:"Report-Tx-Id",value:e.reportTxId},{name:"Failed-Gateways",value:e.failedGateways.join(",")}]})}async buyRecord(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Buy-Name"},{name:"Name",value:e.name},{name:"Years",value:e.years?.toString()??"1"},{name:"Process-Id",value:e.processId},{name:"Purchase-Type",value:e.type||"lease"},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async upgradeRecord(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Upgrade-Name"},{name:"Name",value:e.name},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async extendLease(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Extend-Lease"},{name:"Name",value:e.name},{name:"Years",value:e.years.toString()},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async increaseUndernameLimit(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Increase-Undername-Limit"},{name:"Name",value:e.name},{name:"Quantity",value:e.increaseCount.toString()},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async cancelWithdrawal(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Cancel-Withdrawal"},{name:"Vault-Id",value:e.vaultId},{name:"Address",value:e.gatewayAddress}];return this.process.send({signer:this.signer,tags:en(i)})}async requestPrimaryName(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Request-Primary-Name"},{name:"Name",value:e.name},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async redelegateStake(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Redelegate-Stake"},{name:"Target",value:e.target},{name:"Source",value:e.source},{name:"Quantity",value:e.stakeQty.valueOf().toString()},{name:"Vault-Id",value:e.vaultId}];return this.process.send({signer:this.signer,tags:en(i)})}};var m6t=async({address:t,registry:e=Rb.init()})=>{let r=await e.accessControlList({address:t});return[...new Set([...r.Owned,...r.Controlled])]};function hue(t,e){return new Promise((r,o)=>{let i=setTimeout(()=>{o(new Error("Timeout"))},t);e.then(h=>{clearTimeout(i),r(h)}).catch(h=>{clearTimeout(i),o(h)})})}var lue=class extends vP.default{contract;timeoutMs;throttle;logger;strict;antAoClient;constructor({contract:e=Tb.init({processId:Dh}),timeoutMs:r=6e4,concurrency:o=30,logger:i=Gu.default,strict:h=!1,antAoClient:l=El()}={}){super(),this.contract=e,this.timeoutMs=r,this.throttle=sue(o),this.logger=i,this.strict=h,this.antAoClient=l}async fetchProcessesOwnedByWallet({address:e,pageSize:r,antRegistry:o=Rb.init()}){let i={},h=await o.accessControlList({address:e}),l=new Set([...h.Owned,...h.Controlled]);await hue(this.timeoutMs,gUe({contract:this.contract,emitter:this,pageSize:r})).catch(b=>(this.emit("error",`Error getting ArNS records: ${b}`),this.logger.error("Error getting ArNS records",{message:b?.message,stack:b?.stack}),{})).then(b=>{Object.entries(b).forEach(([g,_])=>{l.has(_.processId)&&(i[_.processId]==null&&(i[_.processId]={state:void 0,names:{}}),i[_.processId].names[g]=_)})});let v=Object.keys(i).length;this.emit("progress",0,v),await Promise.all(Object.keys(i).map(async(b,g)=>this.throttle(async()=>{if(i[b].state!==void 0){this.emit("progress",g+1,v);return}let _=K4.init({process:new sa({processId:b,ao:this.antAoClient}),strict:this.strict}),M=await hue(this.timeoutMs,_.getState()).catch(x=>{this.emit("error",`Error getting state for process ${b}: ${x}`)});(M?.Owner===e||M?.Controllers.includes(e))&&(i[b].state=M,this.emit("process",b,i[b])),this.emit("progress",g+1,v)}))),this.emit("end",i)}},gUe=async({contract:t=Tb.init({processId:Dh}),emitter:e,logger:r=Gu.default,pageSize:o=1e3})=>{let i,h=Date.now(),l={};do{let v=await t.getArNSRecords({cursor:i,limit:o}).catch(b=>{r?.error("Error getting ArNS records",{message:b?.message,stack:b?.stack}),e?.emit("arns:error",`Error getting ArNS records: ${b}`)});if(!v)return{};v.items.forEach(b=>{let{name:g,..._}=b;l[g]=_}),r.debug("Fetched page of ArNS records",{totalRecordCount:v.totalItems,fetchedRecordCount:Object.keys(l).length,cursor:v.nextCursor}),e?.emit("arns:pageLoaded",{totalRecordCount:v.totalItems,fetchedRecordCount:Object.keys(l).length,records:v.items,cursor:v.nextCursor}),i=v.nextCursor}while(i!==void 0);return e?.emit("arns:end",l),r.debug("Fetched all ArNS records",{totalRecordCount:Object.keys(l).length,durationMs:Date.now()-h}),l};var sa=class{logger;ao;processId;constructor({processId:e,ao:r=El(),logger:o=Gu.default}){this.processId=e,this.logger=o,this.ao=r}isMessageDataEmpty(e){return e===void 0||e==="null"||e===""||e===null}async read({tags:e,retries:r=3,fromAddress:o}){this.logger.debug("Evaluating read interaction on process",{tags:e,processId:this.processId});let i={process:this.processId,tags:e};o!==void 0&&(i.Owner=o);let h=0,l;for(;h<r;)try{l=await this.ao.dryrun(i);break}catch(_){if(h++,this.logger.debug(`Read attempt ${h} failed`,{error:_?.message,stack:_?.stack,tags:e,processId:this.processId}),h>=r)throw _;await new Promise(M=>setTimeout(M,2**h*1e3))}if(l===void 0)throw new Error("Unexpected error when evaluating read interaction");this.logger.debug("Read interaction result",{result:l,processId:this.processId});let v=wP(l);if(v!==void 0)throw new Error(v);if(l.Messages===void 0||l.Messages.length===0)throw this.logger.debug(`Process ${this.processId} does not support provided action.`,{result:l,tags:e,processId:this.processId}),new Error(`Process ${this.processId} does not support provided action.`);let b=l.Messages?.[0]?.Data;return this.isMessageDataEmpty(b)?void 0:dP(b)}async send({tags:e,data:r,signer:o,retries:i=3}){let h=0,l,v;for(;h<i;)try{this.logger.debug("Evaluating send interaction on contract",{tags:e,data:r,processId:this.processId});let _=nue(32);l=await this.ao.message({process:this.processId,tags:[...e,{name:"AR-IO-SDK",value:j4}],data:r,signer:o,anchor:_}),this.logger.debug("Sent message to process",{messageId:l,processId:this.processId,anchor:_}),v=await this.ao.result({message:l,process:this.processId}),this.logger.debug("Message result",{result:v,messageId:l,processId:this.processId});break}catch(_){if(this.logger.error("Error sending message to process",{error:_?.message,stack:_?.stack,processId:this.processId,tags:e}),h++,this.logger.debug("Retrying send interaction",{attempts:h,retries:i,error:_?.message,processId:this.processId}),h>=i)throw _;await new Promise(M=>setTimeout(M,2**h*2e3))}if(v===void 0||l===void 0)throw new Error("Unexpected error when evaluating write interaction");let b=wP(v);if(b!==void 0)throw new Cw(b);if(v.Messages?.length===0||v.Messages===void 0)return{id:l};if(v.Messages.length===0)throw new Error(`Process ${this.processId} does not support provided action.`);if(this.isMessageDataEmpty(v.Messages[0].Data))return{id:l};let g=dP(v.Messages[0].Data);return this.logger.debug("Message result data",{resultData:g,messageId:l,processId:this.processId}),{id:l,result:g}}};var W4=class{static init(e){return e!==void 0&&"signer"in e?new _P(e):new V4(e)}},V4=class{process;constructor(e){if(e===void 0||Object.keys(e).length===0)this.process=new sa({processId:T1});else if(Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju}async getANTVersions(){let e=await this.process.read({tags:[{name:"Action",value:"Get-Versions"}]});return Object.fromEntries(Object.entries(e).sort(([r],[o])=>r.localeCompare(o)))}async getLatestANTVersion(){let e=await this.getANTVersions(),r=Object.entries(e).at(-1);if(!r)throw new Error("No version found");return{version:r[0],...r[1]}}},_P=class extends V4{signer;constructor({signer:e,...r}){super(r),this.signer=Ol(e)}async addVersion(e,{tags:r}){return this.process.send({tags:en([{name:"Action",value:"Add-Version"},{name:"Version",value:e.version},{name:"Module-Id",value:e.moduleId},{name:"Lua-Source-Id",value:e.luaSourceId},{name:"Notes",value:e.notes},...r??[]]),signer:this.signer})}};var K4=class{static versions=W4.init();static init(e){return e!==void 0&&"signer"in e?new MP(e):new G4(e)}},G4=class{process;processId;strict;constructor(e){if(this.strict=e.strict||!1,Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju;this.processId=this.process.processId}async getState({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"State"}],o=await this.process.read({tags:r});return e&&Pl(RT.passthrough().and(Qt.object({Records:Qt.record(Qt.string(),q8.passthrough())})),o),o}async getInfo({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Info"}],o=await this.process.read({tags:r});return e&&Pl(_Q.passthrough(),o),o}async getLogo(){return(await this.getInfo()).Logo}async getRecord({undername:e},{strict:r}={strict:this.strict}){let o=[{name:"Sub-Domain",value:e},{name:"Action",value:"Record"}],i=await this.process.read({tags:o});return r&&Pl(q8.passthrough(),i),i}async getRecords({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Records"}],o=await this.process.read({tags:r});return e&&Pl(ST,o),Xfe(o)}async getOwner({strict:e}={strict:this.strict}){return(await this.getInfo({strict:e})).Owner}async getControllers({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Controllers"}],o=await this.process.read({tags:r});return e&&Pl(ET,o),o}async getName({strict:e}={strict:this.strict}){return(await this.getInfo({strict:e})).Name}async getTicker({strict:e}={strict:this.strict}){return(await this.getInfo({strict:e})).Ticker}async getBalances({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Balances"}],o=await this.process.read({tags:r});return e&&Pl(AT,o),o}async getBalance({address:e},{strict:r}={strict:this.strict}){let o=[{name:"Action",value:"Balance"},{name:"Recipient",value:e}],i=await this.process.read({tags:o});return r&&Pl(Qt.number(),i),i}async getHandlers(){let e=await this.getInfo();return e.Handlers??e.HandlerNames}},MP=class extends G4{signer;constructor({signer:e,...r}){super(r),this.signer=Ol(e)}async transfer({target:e},r){let o=[...r?.tags??[],{name:"Action",value:"Transfer"},{name:"Recipient",value:e}];return this.process.send({tags:o,signer:this.signer})}async addController({controller:e},r){let o=[...r?.tags??[],{name:"Action",value:"Add-Controller"},{name:"Controller",value:e}];return this.process.send({tags:o,signer:this.signer})}async removeController({controller:e},r){let o=[...r?.tags??[],{name:"Action",value:"Remove-Controller"},{name:"Controller",value:e}];return this.process.send({tags:o,signer:this.signer})}async setRecord({undername:e,transactionId:r,ttlSeconds:o},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Set-Record"},{name:"Sub-Domain",value:e},{name:"Transaction-Id",value:r},{name:"TTL-Seconds",value:o.toString()}],signer:this.signer})}async setBaseNameRecord({transactionId:e,ttlSeconds:r},o){return this.setRecord({transactionId:e,ttlSeconds:r,undername:"@"},o)}async setUndernameRecord({undername:e,transactionId:r,ttlSeconds:o},i){return this.setRecord({undername:e,transactionId:r,ttlSeconds:o},i)}async removeUndernameRecord({undername:e}){return this.removeRecord({undername:e})}async removeRecord({undername:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Remove-Record"},{name:"Sub-Domain",value:e}],signer:this.signer})}async setTicker({ticker:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Ticker"},{name:"Ticker",value:e}],signer:this.signer})}async setName({name:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Name"},{name:"Name",value:e}],signer:this.signer})}async setDescription({description:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Description"},{name:"Description",value:e}],signer:this.signer})}async setKeywords({keywords:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Keywords"},{name:"Keywords",value:JSON.stringify(e)}],signer:this.signer})}async setLogo({txId:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Logo"},{name:"Logo",value:e}],signer:this.signer})}async releaseName({name:e,arioProcessId:r},o){return this.process.send({tags:[...o?.tags??[],{name:"Action",value:"Release-Name"},{name:"Name",value:e},{name:"IO-Process-Id",value:r},{name:"ARIO-Process-Id",value:r}],signer:this.signer})}async reassignName({name:e,arioProcessId:r,antProcessId:o},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Reassign-Name"},{name:"Name",value:e},{name:"IO-Process-Id",value:r},{name:"ARIO-Process-Id",value:r},{name:"Process-Id",value:o}],signer:this.signer})}async approvePrimaryNameRequest({name:e,address:r,arioProcessId:o},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Approve-Primary-Name"},{name:"Name",value:e},{name:"Recipient",value:r},{name:"IO-Process-Id",value:o},{name:"ARIO-Process-Id",value:o}],signer:this.signer})}async removePrimaryNames({names:e,arioProcessId:r,notifyOwners:o=!1},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Remove-Primary-Names"},{name:"Names",value:e.join(",")},{name:"IO-Process-Id",value:r},{name:"ARIO-Process-Id",value:r},{name:"Notify-Owners",value:o.toString()}],signer:this.signer})}};async function V3t({signer:t,module:e=pQ,ao:r=El(),scheduler:o=gQ,state:i,antRegistryId:h=T1,logger:l=Gu.default,authority:v=mQ}){let b=await r.spawn({module:e,scheduler:o,signer:t,data:i?JSON.stringify(i):void 0,tags:[{name:"Authority",value:v},{name:"ANT-Registry-Id",value:h}]});return l.debug("Spawned ANT",{processId:b,module:e,scheduler:o}),b}async function G3t({signer:t,processId:e,luaCodeTxId:r=vQ,ao:o=El(),logger:i=Gu.default,arweave:h=Nw}){let l=new sa({processId:e,ao:o,logger:i}),{api:{host:v,port:b,protocol:g}}=h.getConfig(),_=await fetch(`${g}://${v}:${b}/${r}`).then(x=>x.text()),{id:M}=await l.send({tags:[{name:"Action",value:"Eval"},{name:"App-Name",value:"ArNS-ANT"},{name:"Source-Code-TX-ID",value:r}],data:_,signer:t});return i.debug("Evolved ANT",{processId:e,luaCodeTxId:r,evalMsgId:M}),M}function bUe(t){let e=Qt.object({name:Qt.string(),value:Qt.union([Qt.string(),Qt.number()])}),r=Qt.function().args(Qt.object({data:Qt.union([Qt.string(),Qt.instanceof(Se)]),tags:Qt.array(e).optional(),target:Qt.string().optional(),anchor:Qt.string().optional()})).returns(Qt.promise(Qt.object({id:Qt.string(),raw:Qt.instanceof(ArrayBuffer)})));try{return r.parse(t),!0}catch{return!1}}function Ol(t){return bUe(t)?t:"publicKey"in t?async({data:r,tags:o,target:i,anchor:h})=>{if(t.publicKey===void 0&&"setPublicKey"in t&&typeof t.setPublicKey=="function"&&await t.setPublicKey(),t instanceof hl){let b=await t.signer.signDataItem({data:r,tags:o,target:i,anchor:h}),g=new b1(Se.from(b));return{id:await g.id,raw:await g.getRaw()}}let l=Rg(r,t,{tags:o,target:i,anchor:h});return l.sign(t).then(async()=>({id:await l.id,raw:await l.getRaw()}))}:Bte(t)}var yUe="-k7t8xMoB8hW482609Z9F4bTFMC3MnuW8bTvTyT8pFI",wUe="Sie_26dvgyok0PZD_-iQAFOhOd5YxDTkczOLoqTTL_A";function Y3t({owner:t,targetId:e,ttlSeconds:r=3600,keywords:o=[],controllers:i=[],description:h="",ticker:l="aos",name:v="ANT",logo:b=wUe}){return{ticker:l,name:v,description:h,keywords:o,owner:t,controllers:[t,...i],balances:{[t]:1},records:{"@":{transactionId:e??yUe.toString(),ttlSeconds:r}},logo:b}}function due(t){return Qt.object({startTimestamp:Qt.number(),startHeight:Qt.number(),distributions:Qt.any(),endTimestamp:Qt.number(),prescribedObservers:Qt.any(),prescribedNames:Qt.array(Qt.string()),observations:Qt.any(),epochIndex:Qt.number()}).parse(t)}function wP(t){let r=t.Error??t.Messages?.[0]?.Tags?.find(o=>o.name==="Error")?.value;if(r!==void 0){let o=r.match(/\[string "aos"]:(\d+):\s*(.+)/);if(o){let[,i,h]=o;return`${cue(h).trim()} (line ${i.trim()})`.trim()}return cue(r)}}function cue(t){let e="\x1B";return t.replace(new RegExp(`${e}[\\[\\]()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]`,"g"),"").trim()}var pue=t=>D8.test(t);function u8t(t){return t!==void 0&&!isNaN(parseInt(t.toString()))}var en=t=>t.filter(e=>e.value!==void 0&&e.value!==""),Na=t=>{let e=[{name:"Cursor",value:t?.cursor?.toString()},{name:"Limit",value:t?.limit?.toString()},{name:"Sort-By",value:t?.sortBy?.toString()},{name:"Sort-Order",value:t?.sortOrder?.toString()}];return en(e)},Wd=async({arweave:t,epochIndex:e,processId:r=Dh,retries:o=3,gqlUrl:i="https://arweave-search.goldsky.com/graphql"})=>{let h=_Ue({epochIndex:e,processId:r});for(let l=0;l<o;l++)try{let v=await fetch(i,{method:"POST",body:h,headers:{"Content-Type":"application/json"}}).then(_=>_.json());if(v?.data?.transactions?.edges?.length===0)return;let b=v.data.transactions.edges[0].node.id,g=await t.api.get(b);return due(g.data)}catch(v){if(l===o-1)throw v;await new Promise(b=>setTimeout(b,Math.pow(2,l)*1e3))}},_Ue=({epochIndex:t,processId:e=Dh,authorities:r=["fcoN_xJeisVsPXA-trzVAuIiqO3ydLQxM-L4XbrQKzY"]})=>JSON.stringify({query:`
189
+ }`,i=_t.object({data:_t.object({transactions:_t.object({edges:_t.array(_t.object({node:_t.record(_t.any())}))})})});return h=>jr(h).chain(Li(l=>t(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:o,variables:{transactionIds:[l]}})}).then(async v=>{if(v.ok)return v.json();throw r('Error Encountered when querying gateway for transaction "%s"',l),new Error(`${v.status}: ${await v.text()}`)}).then(i.parse).then(pxe(["data","transactions","edges","0","node"])))).toPromise()}var ESe=uI(O5e(),1),mte=(t="@permaweb/aoconnect")=>{let e=(0,ESe.default)(t);return e.child=r=>mte(`${e.namespace}:${r}`),e.tap=(r,...o)=>_xe((...i)=>e(r,...o,...i)),e},gte=({url:t,path:e})=>e?e.startsWith("/")?gte({url:t,path:e.slice(1)}):(t=new URL(t),t.pathname+=e,t.toString()):t;function ASe(t){return H1(xw([]),Z1((e,r)=>H1(gxe([],r.name),EI(r.value),Ds(r.name,jh,e))(e),{}),_w(e=>e.length>1?e:e[0]))(t)}function Ns(t,e){return r=>Uee(AMe([jQ(t,"name"),RI(SI(e),jQ(e,"value"),_I)]),r)}function HQ(t){return Yee([[Wg(String),N1(t)],[Wg(Array),axe(t)],[_I,L9e]])}function Td(t){let e;return Wg(Cs,t)?(e=new Error(RSe(t)),e.stack+=t.stack):Wg(Error,t)?e=t:rxe("message",t)?e=new Error(t.message):Wg(String,t)?e=new Error(t):e=new Error("An error occurred"),e}function RSe(t){return H1(e=>function r(o,i,h){return Z1((l,v)=>H1(Yee([[N1(Tt.invalid_arguments),()=>r(v.argumentsError,422,"Invalid Arguments")],[N1(Tt.invalid_return_type),()=>r(v.returnTypeError,500,"Invalid Return")],[N1(Tt.invalid_union),()=>jMe(b=>r(b,400,"Invalid Union"),v.unionErrors)],[_I,()=>[{...v,status:i,contextCode:h}]]]),AI(l))(v.code),[],o.issues)}(e,400,""),e=>Z1((r,o)=>{let{message:i,path:h,contextCode:l}=o,v=h[1]||h[0],b=l?`${l} `:"";return r.push(`${b}'${v}': ${i}.`),r},[],e),lxe(" | "))(t)}var TSe=_t.object({id:_t.string().min(1,{message:"message is required to be a message id"}),processId:_t.string().min(1,{message:"process is required to be a process id"})});function ISe(){return t=>jr(t).map(TSe.parse).map(()=>t)}var k2=_t.object({name:_t.string(),value:_t.string()}),kSe=_t.function().args(_t.object({Id:_t.string(),Target:_t.string(),Owner:_t.string(),Anchor:_t.string().optional(),Data:_t.any().default("1234"),Tags:_t.array(_t.object({name:_t.string(),value:_t.string()}))})).returns(_t.promise(_t.any())),BSe=_t.function().args(_t.object({id:_t.string().min(1,{message:"message id is required"}),processId:_t.string().min(1,{message:"process id is required"})})).returns(_t.promise(_t.any())),PSe=_t.function().args(_t.object({process:_t.string().min(1,{message:"process id is required"}),from:_t.string().optional(),to:_t.string().optional(),sort:_t.enum(["ASC","DESC"]).default("ASC"),limit:_t.number().optional()})).returns(_t.promise(_t.object({edges:_t.array(_t.object({cursor:_t.string(),node:_t.object({Output:_t.any().optional(),Messages:_t.array(_t.any()).optional(),Spawns:_t.array(_t.any()).optional(),Error:_t.any().optional()})}))}))),bte=_t.function().args(_t.object({processId:_t.string(),data:_t.any(),tags:_t.array(k2),anchor:_t.string().optional(),signer:_t.any()})).returns(_t.promise(_t.object({messageId:_t.string()}).passthrough())),OSe=_t.function().args(_t.object({data:_t.any(),tags:_t.array(k2),signer:_t.any()})).returns(_t.promise(_t.object({processId:_t.string()}).passthrough())),NSe=_t.function().args(_t.object({process:_t.string(),message:_t.string(),baseLayer:_t.boolean().optional(),exclude:_t.array(_t.string()).optional()})).returns(_t.promise(_t.object({assignmentId:_t.string()}).passthrough())),yte=bte,Tut=_t.function().args(_t.object({suUrl:_t.string().url(),processId:_t.string()})).returns(_t.promise(_t.object({tags:_t.array(k2)}).passthrough())),Iut=_t.function().args(_t.string()).returns(_t.promise(_t.object({url:_t.string()}))),CSe=_t.function().args(_t.string()).returns(_t.promise(_t.boolean())),LSe=_t.function().args(_t.string()).returns(_t.promise(_t.object({tags:_t.array(k2)}).passthrough())),Sw=_t.function().args(_t.object({data:_t.any(),tags:_t.array(k2),target:_t.string().optional(),anchor:_t.string().optional()})).returns(_t.promise(_t.object({id:_t.string(),raw:_t.any()})));function DSe({loadResult:t}){return t=Li(BSe.implement(t)),e=>jr({id:e.id,processId:e.processId}).chain(t)}function $Se(t){let e=ISe(t),r=DSe(t);return({message:o,process:i})=>jr({id:o,processId:i}).chain(e).chain(r).map(t.logger.tap('readResult result for message "%s": %O',o)).map(h=>h).bimap(Td,Rd).toPromise()}var qSe=_t.array(_t.object({name:_t.string(),value:_t.string()}));function USe(){return t=>jr(t.tags).map(xw([])).map(Ns("Data-Protocol","ao")).map(Ns("Variant")).map(Ns("Type")).map(Ns("SDK")).map(AI(jh,[{name:"Data-Protocol",value:"ao"},{name:"Variant",value:"ao.TN.1"},{name:"Type",value:"Message"},{name:"SDK",value:"aoconnect"}])).map(qSe.parse).map(Ds("tags",jh,t))}function FSe({logger:t}){return e=>jr(e).chain(RI(SI(e.data),()=>xd(e),()=>xd(Math.random().toString().slice(-4)).map(Ds("data",jh,e)).map(r=>H1(Ad("tags"),Ns("Content-Type"),EI({name:"Content-Type",value:"text/plain"}),Ds("tags",jh,r))(r)).map(t.tap('added pseudo-random string as message "data"'))))}function jSe(t){let e=USe(t),r=FSe(t),o=bte.implement(t.deployMessage);return i=>jr(i).chain(e).chain(r).chain(Li(({id:h,data:l,tags:v,anchor:b,signer:g})=>o({processId:h,data:l,tags:v,anchor:b,signer:Sw.implement(g)}))).map(h=>Ds("messageId",h.messageId,i))}function zSe(t){let e=jSe(t);return({process:r,data:o,tags:i,anchor:h,signer:l})=>jr({id:r,data:o,tags:i,anchor:h,signer:l}).chain(e).map(v=>v.messageId).bimap(Td,Rd).toPromise()}var Dg=(t,e,r)=>o=>e(o[t])?xd(o):Sl(`Tag '${t}': ${r}`);function ZSe({loadTransactionMeta:t,logger:e}){return t=Li(LSe.implement(t)),r=>jr(r).chain(t).map(Ad("tags")).map(ASe).chain(Dg("Data-Protocol",HQ("ao"),"value 'ao' was not found on module")).chain(Dg("Type",HQ("Module"),"value 'Module' was not found on module")).chain(Dg("Module-Format",NT,"was not found on module")).chain(Dg("Input-Encoding",NT,"was not found on module")).chain(Dg("Output-Encoding",NT,"was not found on module")).bimap(e.tap("Verifying module source failed: %s"),e.tap("Verified module source"))}function HSe({logger:t,validateScheduler:e}){return e=Li(CSe.implement(e)),r=>jr(r).chain(o=>e(o).chain(i=>i?xd(o):Sl(`Valid Scheduler-Location owned by ${o} not found`))).bimap(t.tap("Verifying scheduler failed: %s"),t.tap("Verified scheduler"))}function KSe({logger:t}){return e=>jr(e).map(t.tap("Checking for signer")).chain(r=>r?xd(r):Sl("signer not found"))}function WSe(t){let e=t.logger.child("verifyInput");t={...t,logger:e};let r=ZSe(t),o=HSe(t),i=KSe(t);return h=>jr(h).chain(l=>r(l.module).map(()=>l)).chain(l=>o(l.scheduler)).map(()=>h).chain(l=>i(l.signer).map(()=>l)).bimap(e.tap("Error when verify input: %s"),e.tap("Successfully verified inputs"))}var VSe=_t.array(_t.object({name:_t.string(),value:_t.string()}));function GSe(){return t=>jr(t).map(Ad("tags")).map(xw([])).map(Ns("Data-Protocol","ao")).map(Ns("Variant")).map(Ns("Type")).map(Ns("Module")).map(Ns("Scheduler")).map(Ns("SDK")).map(AI(jh,[{name:"Data-Protocol",value:"ao"},{name:"Variant",value:"ao.TN.1"},{name:"Type",value:"Process"},{name:"Module",value:t.module},{name:"Scheduler",value:t.scheduler},{name:"SDK",value:"aoconnect"}])).map(VSe.parse).map(Ds("tags",jh,t))}function YSe({logger:t}){return e=>jr(e).chain(RI(SI(e.data),()=>xd(e),()=>xd(Math.random().toString().slice(-4)).map(Ds("data",jh,e)).map(r=>H1(Ad("tags"),Ns("Content-Type"),EI({name:"Content-Type",value:"text/plain"}),Ds("tags",jh,r))(r)).map(t.tap('added pseudo-random string as process "data"'))))}function JSe(t){let e=t.logger.child("uploadProcess");t={...t,logger:e};let r=GSe(t),o=YSe(t),i=OSe.implement(t.deployProcess);return h=>jr(h).chain(r).chain(o).chain(Li(({data:l,tags:v,signer:b})=>i({data:l,tags:v,signer:Sw.implement(b)}))).map(l=>Ds("processId",l.processId,h))}function XSe(t){let e=WSe(t),r=JSe(t);return({module:o,scheduler:i,signer:h,tags:l,data:v})=>jr({module:o,scheduler:i,signer:h,tags:l,data:v}).chain(e).chain(r).map(b=>b.processId).bimap(Td,Rd).toPromise()}function QSe(t){let e=yte.implement(t.deployMonitor);return r=>jr(r).chain(Li(({id:o,signer:i})=>e({processId:o,signer:Sw.implement(i),data:Math.random().toString().slice(-4),tags:[]}))).map(o=>Ds("monitorId",o.messageId,r))}function eEe(t){let e=QSe(t);return({process:r,signer:o})=>jr({id:r,signer:o}).chain(e).map(i=>i.monitorId).bimap(Td,Rd).toPromise()}function tEe(t){let e=yte.implement(t.deployUnmonitor);return r=>jr(r).chain(Li(({id:o,signer:i})=>e({processId:o,signer:Sw.implement(i),data:Math.random().toString().slice(-4),tags:[]}))).map(o=>Ds("monitorId",o.messageId,r))}function rEe(t){let e=tEe(t);return({process:r,signer:o})=>jr({id:r,signer:o}).chain(e).map(i=>i.monitorId).bimap(Td,Rd).toPromise()}var iEe=_t.object({process:_t.string().min(1,{message:"process identifier is required"}),from:_t.string().optional(),to:_t.string().optional(),sort:_t.enum(["ASC","DESC"]).default("ASC"),limit:_t.number().optional()});function nEe(){return t=>jr(t).map(iEe.parse).map(()=>t)}function aEe({queryResults:t}){return t=Li(PSe.implement(t)),e=>jr({process:e.process,from:e.from,to:e.to,sort:e.sort,limit:e.limit}).chain(t)}function oEe(t){let e=nEe(t),r=aEe(t);return({process:o,from:i,to:h,sort:l,limit:v})=>jr({process:o,from:i,to:h,sort:l,limit:v}).chain(e).chain(r).map(t.logger.tap('readResults result for message "%s": %O',o)).map(b=>b).bimap(Td,Rd).toPromise()}var sEe=_t.object({Id:_t.string(),Target:_t.string(),Owner:_t.string(),Anchor:_t.string().optional(),Data:_t.any().default("1234"),Tags:_t.array(_t.object({name:_t.string(),value:_t.string()}))});function fEe(){return t=>jr(t).map(sEe.parse).map(e=>(e.Tags=e.Tags.concat([{name:"Data-Protocol",value:"ao"},{name:"Type",value:"Message"},{name:"Variant",value:"ao.TN.1"}]),e))}function uEe({dryrunFetch:t}){return Li(kSe.implement(t))}function hEe(t){let e=fEe(t),r=uEe(t);return o=>jr(o).map(lEe).chain(e).chain(r).toPromise()}function lEe({process:t,data:e,tags:r,anchor:o,...i}){return{Id:"1234",Owner:"1234",...i,Target:t,Data:e||"1234",Tags:r||[],Anchor:o||"0"}}function cEe(t){let e=NSe.implement(t.deployAssign);return r=>jr(r).chain(Li(({process:o,message:i,baseLayer:h,exclude:l})=>e({process:o,message:i,baseLayer:h,exclude:l}))).map(o=>Ds("assignmentId",o.assignmentId,r))}function dEe(t){let e=cEe(t);return({process:r,message:o,baseLayer:i,exclude:h})=>jr({process:r,message:o,baseLayer:i,exclude:h}).chain(e).map(l=>l.assignmentId).bimap(Td,Rd).toPromise()}var pEe="https://arweave.net",vEe="https://mu.ao-testnet.xyz",mEe="https://cu.ao-testnet.xyz";function El({GRAPHQL_URL:t,GATEWAY_URL:e=pEe,MU_URL:r=vEe,CU_URL:o=mEe}={}){let i=mte();t||(t=gte({url:e,path:"/graphql"}));let{validate:h}=Lee({cacheSize:100,GRAPHQL_URL:t}),l=N9e({MAX_SIZE:25}),v=i.child("result"),b=$Se({loadResult:B9e({fetch,CU_URL:o,logger:v}),logger:v}),g=i.child("message"),_=zSe({loadProcessMeta:BT({fetch,cache:l,logger:g}),deployMessage:E9e({fetch,MU_URL:r,logger:g}),logger:g}),M=i.child("spawn"),x=XSe({loadTransactionMeta:SSe({fetch,GRAPHQL_URL:t,logger:M}),validateScheduler:h,deployProcess:A9e({fetch,MU_URL:r,logger:M}),logger:M}),E=i.child("monitor"),A=eEe({loadProcessMeta:BT({fetch,cache:l,logger:E}),deployMonitor:R9e({fetch,MU_URL:r,logger:E}),logger:E}),I=i.child("unmonitor"),P=rEe({loadProcessMeta:BT({fetch,cache:l,logger:I}),deployUnmonitor:T9e({fetch,MU_URL:r,logger:I}),logger:E}),N=i.child("results"),L=oEe({queryResults:P9e({fetch,CU_URL:o,logger:N}),logger:N}),C=i.child("dryrun"),Y=hEe({dryrunFetch:k9e({fetch,CU_URL:o,logger:C}),logger:C}),G=i.child("assign"),te=dEe({deployAssign:I9e({fetch,MU_URL:r,logger:G}),logger:g});return{result:b,results:L,message:_,spawn:x,monitor:A,unmonitor:P,dryrun:Y,assign:te}}var wte={};VQ(wte,{createDataItemSigner:()=>FEe});var _te=uI(L5e(),1),Mte={};VQ(Mte,{AVSCTap:()=>B2,ArweaveSigner:()=>PI,DataItem:()=>A2,MAX_TAG_BYTES:()=>Ew,MIN_BINARY_SIZE:()=>CI,SIG_CONFIG:()=>Y1,SignatureConfig:()=>Os,Signer:()=>Ate,createData:()=>kte,default:()=>$Ee,deserializeTags:()=>vw,indexToType:()=>OI,serializeTags:()=>NI,tagsExceedLimit:()=>Ite,warparbundles:()=>qEe});var gEe=Object.create,kI=Object.defineProperty,bEe=Object.getOwnPropertyDescriptor,yEe=Object.getOwnPropertyNames,wEe=Object.getPrototypeOf,_Ee=Object.prototype.hasOwnProperty,Zh=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),MEe=(t,e)=>{for(var r in e)kI(t,r,{get:e[r],enumerable:!0})},xEe=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of yEe(e))!_Ee.call(t,i)&&i!==r&&kI(t,i,{get:()=>e[i],enumerable:!(o=bEe(e,i))||o.enumerable});return t},Id=(t,e,r)=>(r=t!=null?gEe(wEe(t)):{},xEe(e||!t||!t.__esModule?kI(r,"default",{value:t,enumerable:!0}):r,t)),SEe=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});function e(r){var o=4,i=r.length,h=i%o;if(!h)return r;var l=i,v=o-h,b=i+v,g=Se.alloc(b);for(g.write(r);v--;)g.write("=",l++);return g.toString()}t.default=e}),EEe=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var e=SEe();function r(b,g){return g===void 0&&(g="utf8"),Se.isBuffer(b)?h(b.toString("base64")):h(Se.from(b,g).toString("base64"))}function o(b,g){return g===void 0&&(g="utf8"),Se.from(i(b),"base64").toString(g)}function i(b){return b=b.toString(),e.default(b).replace(/\-/g,"+").replace(/_/g,"/")}function h(b){return b.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function l(b){return Se.from(i(b),"base64")}var v=r;v.encode=r,v.decode=o,v.toBase64=i,v.fromBase64=h,v.toBuffer=l,t.default=v}),BI=Zh((t,e)=>{e.exports=EEe().default,e.exports.default=e.exports}),xte=Zh(t=>{"use strict";t.byteLength=b,t.toByteArray=_,t.fromByteArray=E;var e=[],r=[],o=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(h=0,l=i.length;h<l;++h)e[h]=i[h],r[i.charCodeAt(h)]=h;var h,l;r[45]=62,r[95]=63;function v(A){var I=A.length;if(I%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var P=A.indexOf("=");P===-1&&(P=I);var N=P===I?0:4-P%4;return[P,N]}function b(A){var I=v(A),P=I[0],N=I[1];return(P+N)*3/4-N}function g(A,I,P){return(I+P)*3/4-P}function _(A){var I,P=v(A),N=P[0],L=P[1],C=new o(g(A,N,L)),Y=0,G=L>0?N-4:N,te;for(te=0;te<G;te+=4)I=r[A.charCodeAt(te)]<<18|r[A.charCodeAt(te+1)]<<12|r[A.charCodeAt(te+2)]<<6|r[A.charCodeAt(te+3)],C[Y++]=I>>16&255,C[Y++]=I>>8&255,C[Y++]=I&255;return L===2&&(I=r[A.charCodeAt(te)]<<2|r[A.charCodeAt(te+1)]>>4,C[Y++]=I&255),L===1&&(I=r[A.charCodeAt(te)]<<10|r[A.charCodeAt(te+1)]<<4|r[A.charCodeAt(te+2)]>>2,C[Y++]=I>>8&255,C[Y++]=I&255),C}function M(A){return e[A>>18&63]+e[A>>12&63]+e[A>>6&63]+e[A&63]}function x(A,I,P){for(var N,L=[],C=I;C<P;C+=3)N=(A[C]<<16&16711680)+(A[C+1]<<8&65280)+(A[C+2]&255),L.push(M(N));return L.join("")}function E(A){for(var I,P=A.length,N=P%3,L=[],C=16383,Y=0,G=P-N;Y<G;Y+=C)L.push(x(A,Y,Y+C>G?G:Y+C));return N===1?(I=A[P-1],L.push(e[I>>2]+e[I<<4&63]+"==")):N===2&&(I=(A[P-2]<<8)+A[P-1],L.push(e[I>>10]+e[I>>4&63]+e[I<<2&63]+"=")),L.join("")}}),Ste=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.b64UrlDecode=t.b64UrlEncode=t.bufferTob64Url=t.bufferTob64=t.b64UrlToBuffer=t.stringToB64Url=t.stringToBuffer=t.bufferToString=t.b64UrlToString=t.concatBuffers=void 0;var e=xte();function r(x){let E=0;for(let P=0;P<x.length;P++)E+=x[P].byteLength;let A=new Uint8Array(E),I=0;A.set(new Uint8Array(x[0]),I),I+=x[0].byteLength;for(let P=1;P<x.length;P++)A.set(new Uint8Array(x[P]),I),I+=x[P].byteLength;return A}t.concatBuffers=r;function o(x){let E=v(x);return i(E)}t.b64UrlToString=o;function i(x){return new TextDecoder("utf-8",{fatal:!0}).decode(x)}t.bufferToString=i;function h(x){return new TextEncoder().encode(x)}t.stringToBuffer=h;function l(x){return g(h(x))}t.stringToB64Url=l;function v(x){return new Uint8Array(e.toByteArray(M(x)))}t.b64UrlToBuffer=v;function b(x){return e.fromByteArray(new Uint8Array(x))}t.bufferTob64=b;function g(x){return _(b(x))}t.bufferTob64Url=g;function _(x){return x.replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}t.b64UrlEncode=_;function M(x){x=x.replace(/\-/g,"+").replace(/\_/g,"/");let E;return x.length%4==0?E=0:E=4-x.length%4,x.concat("=".repeat(E))}t.b64UrlDecode=M}),AEe=Zh(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var e=Ste(),r=class{keyLength=4096;publicExponent=65537;hashAlgorithm="sha256";driver;constructor(){if(!this.detectWebCrypto())throw new Error("SubtleCrypto not available!");this.driver=crypto.subtle}async generateJWK(){let o=await this.driver.generateKey({name:"RSA-PSS",modulusLength:4096,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign"]),i=await this.driver.exportKey("jwk",o.privateKey);return{kty:i.kty,e:i.e,n:i.n,d:i.d,p:i.p,q:i.q,dp:i.dp,dq:i.dq,qi:i.qi}}async sign(o,i,{saltLength:h}={}){let l=await this.driver.sign({name:"RSA-PSS",saltLength:32},await this.jwkToCryptoKey(o),i);return new Uint8Array(l)}async hash(o,i="SHA-256"){let h=await this.driver.digest(i,o);return new Uint8Array(h)}async verify(o,i,h){let l={kty:"RSA",e:"AQAB",n:o},v=await this.jwkToPublicCryptoKey(l),b=await this.driver.digest("SHA-256",i),g=await this.driver.verify({name:"RSA-PSS",saltLength:0},v,h,i),_=await this.driver.verify({name:"RSA-PSS",saltLength:32},v,h,i),M=await this.driver.verify({name:"RSA-PSS",saltLength:Math.ceil((v.algorithm.modulusLength-1)/8)-b.byteLength-2},v,h,i);return g||_||M}async jwkToCryptoKey(o){return this.driver.importKey("jwk",o,{name:"RSA-PSS",hash:{name:"SHA-256"}},!1,["sign"])}async jwkToPublicCryptoKey(o){return this.driver.importKey("jwk",o,{name:"RSA-PSS",hash:{name:"SHA-256"}},!1,["verify"])}detectWebCrypto(){if(typeof crypto>"u")return!1;let o=crypto?.subtle;return o===void 0?!1:["generateKey","importKey","exportKey","digest","sign"].every(i=>typeof o[i]=="function")}async encrypt(o,i,h){let l=await this.driver.importKey("raw",typeof i=="string"?e.stringToBuffer(i):i,{name:"PBKDF2",length:32},!1,["deriveKey"]),v=await this.driver.deriveKey({name:"PBKDF2",salt:h?e.stringToBuffer(h):e.stringToBuffer("salt"),iterations:1e5,hash:"SHA-256"},l,{name:"AES-CBC",length:256},!1,["encrypt","decrypt"]),b=new Uint8Array(16);crypto.getRandomValues(b);let g=await this.driver.encrypt({name:"AES-CBC",iv:b},v,o);return e.concatBuffers([b,g])}async decrypt(o,i,h){let l=await this.driver.importKey("raw",typeof i=="string"?e.stringToBuffer(i):i,{name:"PBKDF2",length:32},!1,["deriveKey"]),v=await this.driver.deriveKey({name:"PBKDF2",salt:h?e.stringToBuffer(h):e.stringToBuffer("salt"),iterations:1e5,hash:"SHA-256"},l,{name:"AES-CBC",length:256},!1,["encrypt","decrypt"]),b=o.slice(0,16),g=await this.driver.decrypt({name:"AES-CBC",iv:b},v,o.slice(16));return e.concatBuffers([g])}};t.default=r}),REe=Zh(t=>{t.read=function(e,r,o,i,h){var l,v,b=h*8-i-1,g=(1<<b)-1,_=g>>1,M=-7,x=o?h-1:0,E=o?-1:1,A=e[r+x];for(x+=E,l=A&(1<<-M)-1,A>>=-M,M+=b;M>0;l=l*256+e[r+x],x+=E,M-=8);for(v=l&(1<<-M)-1,l>>=-M,M+=i;M>0;v=v*256+e[r+x],x+=E,M-=8);if(l===0)l=1-_;else{if(l===g)return v?NaN:(A?-1:1)*(1/0);v=v+Math.pow(2,i),l=l-_}return(A?-1:1)*v*Math.pow(2,l-i)},t.write=function(e,r,o,i,h,l){var v,b,g,_=l*8-h-1,M=(1<<_)-1,x=M>>1,E=h===23?Math.pow(2,-24)-Math.pow(2,-77):0,A=i?0:l-1,I=i?1:-1,P=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(b=isNaN(r)?1:0,v=M):(v=Math.floor(Math.log(r)/Math.LN2),r*(g=Math.pow(2,-v))<1&&(v--,g*=2),v+x>=1?r+=E/g:r+=E*Math.pow(2,1-x),r*g>=2&&(v++,g/=2),v+x>=M?(b=0,v=M):v+x>=1?(b=(r*g-1)*Math.pow(2,h),v=v+x):(b=r*Math.pow(2,x-1)*Math.pow(2,h),v=0));h>=8;e[o+A]=b&255,A+=I,b/=256,h-=8);for(v=v<<h|b,_+=h;_>0;e[o+A]=v&255,A+=I,v/=256,_-=8);e[o+A-I]|=P*128}}),oI=Zh(t=>{"use strict";var e=xte(),r=REe(),o=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=v,t.SlowBuffer=L,t.INSPECT_MAX_BYTES=50;var i=2147483647;t.kMaxLength=i,v.TYPED_ARRAY_SUPPORT=h(),!v.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function h(){try{let T=new Uint8Array(1),k={foo:function(){return 42}};return Object.setPrototypeOf(k,Uint8Array.prototype),Object.setPrototypeOf(T,k),T.foo()===42}catch{return!1}}Object.defineProperty(v.prototype,"parent",{enumerable:!0,get:function(){if(v.isBuffer(this))return this.buffer}}),Object.defineProperty(v.prototype,"offset",{enumerable:!0,get:function(){if(v.isBuffer(this))return this.byteOffset}});function l(T){if(T>i)throw new RangeError('The value "'+T+'" is invalid for option "size"');let k=new Uint8Array(T);return Object.setPrototypeOf(k,v.prototype),k}function v(T,k,O){if(typeof T=="number"){if(typeof k=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return M(T)}return b(T,k,O)}v.poolSize=8192;function b(T,k,O){if(typeof T=="string")return x(T,k);if(ArrayBuffer.isView(T))return A(T);if(T==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof T);if(ut(T,ArrayBuffer)||T&&ut(T.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ut(T,SharedArrayBuffer)||T&&ut(T.buffer,SharedArrayBuffer)))return I(T,k,O);if(typeof T=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let q=T.valueOf&&T.valueOf();if(q!=null&&q!==T)return v.from(q,k,O);let H=P(T);if(H)return H;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof T[Symbol.toPrimitive]=="function")return v.from(T[Symbol.toPrimitive]("string"),k,O);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof T)}v.from=function(T,k,O){return b(T,k,O)},Object.setPrototypeOf(v.prototype,Uint8Array.prototype),Object.setPrototypeOf(v,Uint8Array);function g(T){if(typeof T!="number")throw new TypeError('"size" argument must be of type number');if(T<0)throw new RangeError('The value "'+T+'" is invalid for option "size"')}function _(T,k,O){return g(T),T<=0?l(T):k!==void 0?typeof O=="string"?l(T).fill(k,O):l(T).fill(k):l(T)}v.alloc=function(T,k,O){return _(T,k,O)};function M(T){return g(T),l(T<0?0:N(T)|0)}v.allocUnsafe=function(T){return M(T)},v.allocUnsafeSlow=function(T){return M(T)};function x(T,k){if((typeof k!="string"||k==="")&&(k="utf8"),!v.isEncoding(k))throw new TypeError("Unknown encoding: "+k);let O=C(T,k)|0,q=l(O),H=q.write(T,k);return H!==O&&(q=q.slice(0,H)),q}function E(T){let k=T.length<0?0:N(T.length)|0,O=l(k);for(let q=0;q<k;q+=1)O[q]=T[q]&255;return O}function A(T){if(ut(T,Uint8Array)){let k=new Uint8Array(T);return I(k.buffer,k.byteOffset,k.byteLength)}return E(T)}function I(T,k,O){if(k<0||T.byteLength<k)throw new RangeError('"offset" is outside of buffer bounds');if(T.byteLength<k+(O||0))throw new RangeError('"length" is outside of buffer bounds');let q;return k===void 0&&O===void 0?q=new Uint8Array(T):O===void 0?q=new Uint8Array(T,k):q=new Uint8Array(T,k,O),Object.setPrototypeOf(q,v.prototype),q}function P(T){if(v.isBuffer(T)){let k=N(T.length)|0,O=l(k);return O.length===0||T.copy(O,0,0,k),O}if(T.length!==void 0)return typeof T.length!="number"||Ae(T.length)?l(0):E(T);if(T.type==="Buffer"&&Array.isArray(T.data))return E(T.data)}function N(T){if(T>=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return T|0}function L(T){return+T!=T&&(T=0),v.alloc(+T)}v.isBuffer=function(T){return T!=null&&T._isBuffer===!0&&T!==v.prototype},v.compare=function(T,k){if(ut(T,Uint8Array)&&(T=v.from(T,T.offset,T.byteLength)),ut(k,Uint8Array)&&(k=v.from(k,k.offset,k.byteLength)),!v.isBuffer(T)||!v.isBuffer(k))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(T===k)return 0;let O=T.length,q=k.length;for(let H=0,W=Math.min(O,q);H<W;++H)if(T[H]!==k[H]){O=T[H],q=k[H];break}return O<q?-1:q<O?1:0},v.isEncoding=function(T){switch(String(T).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},v.concat=function(T,k){if(!Array.isArray(T))throw new TypeError('"list" argument must be an Array of Buffers');if(T.length===0)return v.alloc(0);let O;if(k===void 0)for(k=0,O=0;O<T.length;++O)k+=T[O].length;let q=v.allocUnsafe(k),H=0;for(O=0;O<T.length;++O){let W=T[O];if(ut(W,Uint8Array))H+W.length>q.length?(v.isBuffer(W)||(W=v.from(W)),W.copy(q,H)):Uint8Array.prototype.set.call(q,W,H);else if(v.isBuffer(W))W.copy(q,H);else throw new TypeError('"list" argument must be an Array of Buffers');H+=W.length}return q};function C(T,k){if(v.isBuffer(T))return T.length;if(ArrayBuffer.isView(T)||ut(T,ArrayBuffer))return T.byteLength;if(typeof T!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof T);let O=T.length,q=arguments.length>2&&arguments[2]===!0;if(!q&&O===0)return 0;let H=!1;for(;;)switch(k){case"ascii":case"latin1":case"binary":return O;case"utf8":case"utf-8":return oe(T).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O*2;case"hex":return O>>>1;case"base64":return ge(T).length;default:if(H)return q?-1:oe(T).length;k=(""+k).toLowerCase(),H=!0}}v.byteLength=C;function Y(T,k,O){let q=!1;if((k===void 0||k<0)&&(k=0),k>this.length||((O===void 0||O>this.length)&&(O=this.length),O<=0)||(O>>>=0,k>>>=0,O<=k))return"";for(T||(T="utf8");;)switch(T){case"hex":return a(this,k,O);case"utf8":case"utf-8":return u(this,k,O);case"ascii":return y(this,k,O);case"latin1":case"binary":return d(this,k,O);case"base64":return f(this,k,O);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return p(this,k,O);default:if(q)throw new TypeError("Unknown encoding: "+T);T=(T+"").toLowerCase(),q=!0}}v.prototype._isBuffer=!0;function G(T,k,O){let q=T[k];T[k]=T[O],T[O]=q}v.prototype.swap16=function(){let T=this.length;if(T%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let k=0;k<T;k+=2)G(this,k,k+1);return this},v.prototype.swap32=function(){let T=this.length;if(T%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let k=0;k<T;k+=4)G(this,k,k+3),G(this,k+1,k+2);return this},v.prototype.swap64=function(){let T=this.length;if(T%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let k=0;k<T;k+=8)G(this,k,k+7),G(this,k+1,k+6),G(this,k+2,k+5),G(this,k+3,k+4);return this},v.prototype.toString=function(){let T=this.length;return T===0?"":arguments.length===0?u(this,0,T):Y.apply(this,arguments)},v.prototype.toLocaleString=v.prototype.toString,v.prototype.equals=function(T){if(!v.isBuffer(T))throw new TypeError("Argument must be a Buffer");return this===T?!0:v.compare(this,T)===0},v.prototype.inspect=function(){let T="",k=t.INSPECT_MAX_BYTES;return T=this.toString("hex",0,k).replace(/(.{2})/g,"$1 ").trim(),this.length>k&&(T+=" ... "),"<Buffer "+T+">"},o&&(v.prototype[o]=v.prototype.inspect),v.prototype.compare=function(T,k,O,q,H){if(ut(T,Uint8Array)&&(T=v.from(T,T.offset,T.byteLength)),!v.isBuffer(T))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof T);if(k===void 0&&(k=0),O===void 0&&(O=T?T.length:0),q===void 0&&(q=0),H===void 0&&(H=this.length),k<0||O>T.length||q<0||H>this.length)throw new RangeError("out of range index");if(q>=H&&k>=O)return 0;if(q>=H)return-1;if(k>=O)return 1;if(k>>>=0,O>>>=0,q>>>=0,H>>>=0,this===T)return 0;let W=H-q,se=O-k,st=Math.min(W,se),ue=this.slice(q,H),pe=T.slice(k,O);for(let ve=0;ve<st;++ve)if(ue[ve]!==pe[ve]){W=ue[ve],se=pe[ve];break}return W<se?-1:se<W?1:0};function te(T,k,O,q,H){if(T.length===0)return-1;if(typeof O=="string"?(q=O,O=0):O>2147483647?O=2147483647:O<-2147483648&&(O=-2147483648),O=+O,Ae(O)&&(O=H?0:T.length-1),O<0&&(O=T.length+O),O>=T.length){if(H)return-1;O=T.length-1}else if(O<0)if(H)O=0;else return-1;if(typeof k=="string"&&(k=v.from(k,q)),v.isBuffer(k))return k.length===0?-1:$(T,k,O,q,H);if(typeof k=="number")return k=k&255,typeof Uint8Array.prototype.indexOf=="function"?H?Uint8Array.prototype.indexOf.call(T,k,O):Uint8Array.prototype.lastIndexOf.call(T,k,O):$(T,[k],O,q,H);throw new TypeError("val must be string, number or Buffer")}function $(T,k,O,q,H){let W=1,se=T.length,st=k.length;if(q!==void 0&&(q=String(q).toLowerCase(),q==="ucs2"||q==="ucs-2"||q==="utf16le"||q==="utf-16le")){if(T.length<2||k.length<2)return-1;W=2,se/=2,st/=2,O/=2}function ue(ve,be){return W===1?ve[be]:ve.readUInt16BE(be*W)}let pe;if(H){let ve=-1;for(pe=O;pe<se;pe++)if(ue(T,pe)===ue(k,ve===-1?0:pe-ve)){if(ve===-1&&(ve=pe),pe-ve+1===st)return ve*W}else ve!==-1&&(pe-=pe-ve),ve=-1}else for(O+st>se&&(O=se-st),pe=O;pe>=0;pe--){let ve=!0;for(let be=0;be<st;be++)if(ue(T,pe+be)!==ue(k,be)){ve=!1;break}if(ve)return pe}return-1}v.prototype.includes=function(T,k,O){return this.indexOf(T,k,O)!==-1},v.prototype.indexOf=function(T,k,O){return te(this,T,k,O,!0)},v.prototype.lastIndexOf=function(T,k,O){return te(this,T,k,O,!1)};function F(T,k,O,q){O=Number(O)||0;let H=T.length-O;q?(q=Number(q),q>H&&(q=H)):q=H;let W=k.length;q>W/2&&(q=W/2);let se;for(se=0;se<q;++se){let st=parseInt(k.substr(se*2,2),16);if(Ae(st))return se;T[O+se]=st}return se}function V(T,k,O,q){return xe(oe(k,T.length-O),T,O,q)}function w(T,k,O,q){return xe(le(k),T,O,q)}function n(T,k,O,q){return xe(ge(k),T,O,q)}function s(T,k,O,q){return xe(ot(k,T.length-O),T,O,q)}v.prototype.write=function(T,k,O,q){if(k===void 0)q="utf8",O=this.length,k=0;else if(O===void 0&&typeof k=="string")q=k,O=this.length,k=0;else if(isFinite(k))k=k>>>0,isFinite(O)?(O=O>>>0,q===void 0&&(q="utf8")):(q=O,O=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let H=this.length-k;if((O===void 0||O>H)&&(O=H),T.length>0&&(O<0||k<0)||k>this.length)throw new RangeError("Attempt to write outside buffer bounds");q||(q="utf8");let W=!1;for(;;)switch(q){case"hex":return F(this,T,k,O);case"utf8":case"utf-8":return V(this,T,k,O);case"ascii":case"latin1":case"binary":return w(this,T,k,O);case"base64":return n(this,T,k,O);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return s(this,T,k,O);default:if(W)throw new TypeError("Unknown encoding: "+q);q=(""+q).toLowerCase(),W=!0}},v.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(T,k,O){return k===0&&O===T.length?e.fromByteArray(T):e.fromByteArray(T.slice(k,O))}function u(T,k,O){O=Math.min(T.length,O);let q=[],H=k;for(;H<O;){let W=T[H],se=null,st=W>239?4:W>223?3:W>191?2:1;if(H+st<=O){let ue,pe,ve,be;switch(st){case 1:W<128&&(se=W);break;case 2:ue=T[H+1],(ue&192)===128&&(be=(W&31)<<6|ue&63,be>127&&(se=be));break;case 3:ue=T[H+1],pe=T[H+2],(ue&192)===128&&(pe&192)===128&&(be=(W&15)<<12|(ue&63)<<6|pe&63,be>2047&&(be<55296||be>57343)&&(se=be));break;case 4:ue=T[H+1],pe=T[H+2],ve=T[H+3],(ue&192)===128&&(pe&192)===128&&(ve&192)===128&&(be=(W&15)<<18|(ue&63)<<12|(pe&63)<<6|ve&63,be>65535&&be<1114112&&(se=be))}}se===null?(se=65533,st=1):se>65535&&(se-=65536,q.push(se>>>10&1023|55296),se=56320|se&1023),q.push(se),H+=st}return m(q)}var c=4096;function m(T){let k=T.length;if(k<=c)return String.fromCharCode.apply(String,T);let O="",q=0;for(;q<k;)O+=String.fromCharCode.apply(String,T.slice(q,q+=c));return O}function y(T,k,O){let q="";O=Math.min(T.length,O);for(let H=k;H<O;++H)q+=String.fromCharCode(T[H]&127);return q}function d(T,k,O){let q="";O=Math.min(T.length,O);for(let H=k;H<O;++H)q+=String.fromCharCode(T[H]);return q}function a(T,k,O){let q=T.length;(!k||k<0)&&(k=0),(!O||O<0||O>q)&&(O=q);let H="";for(let W=k;W<O;++W)H+=Ge[T[W]];return H}function p(T,k,O){let q=T.slice(k,O),H="";for(let W=0;W<q.length-1;W+=2)H+=String.fromCharCode(q[W]+q[W+1]*256);return H}v.prototype.slice=function(T,k){let O=this.length;T=~~T,k=k===void 0?O:~~k,T<0?(T+=O,T<0&&(T=0)):T>O&&(T=O),k<0?(k+=O,k<0&&(k=0)):k>O&&(k=O),k<T&&(k=T);let q=this.subarray(T,k);return Object.setPrototypeOf(q,v.prototype),q};function R(T,k,O){if(T%1!==0||T<0)throw new RangeError("offset is not uint");if(T+k>O)throw new RangeError("Trying to access beyond buffer length")}v.prototype.readUintLE=v.prototype.readUIntLE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=this[T],H=1,W=0;for(;++W<k&&(H*=256);)q+=this[T+W]*H;return q},v.prototype.readUintBE=v.prototype.readUIntBE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=this[T+--k],H=1;for(;k>0&&(H*=256);)q+=this[T+--k]*H;return q},v.prototype.readUint8=v.prototype.readUInt8=function(T,k){return T=T>>>0,k||R(T,1,this.length),this[T]},v.prototype.readUint16LE=v.prototype.readUInt16LE=function(T,k){return T=T>>>0,k||R(T,2,this.length),this[T]|this[T+1]<<8},v.prototype.readUint16BE=v.prototype.readUInt16BE=function(T,k){return T=T>>>0,k||R(T,2,this.length),this[T]<<8|this[T+1]},v.prototype.readUint32LE=v.prototype.readUInt32LE=function(T,k){return T=T>>>0,k||R(T,4,this.length),(this[T]|this[T+1]<<8|this[T+2]<<16)+this[T+3]*16777216},v.prototype.readUint32BE=v.prototype.readUInt32BE=function(T,k){return T=T>>>0,k||R(T,4,this.length),this[T]*16777216+(this[T+1]<<16|this[T+2]<<8|this[T+3])},v.prototype.readBigUInt64LE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=k+this[++T]*2**8+this[++T]*2**16+this[++T]*2**24,H=this[++T]+this[++T]*2**8+this[++T]*2**16+O*2**24;return BigInt(q)+(BigInt(H)<<BigInt(32))}),v.prototype.readBigUInt64BE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=k*2**24+this[++T]*2**16+this[++T]*2**8+this[++T],H=this[++T]*2**24+this[++T]*2**16+this[++T]*2**8+O;return(BigInt(q)<<BigInt(32))+BigInt(H)}),v.prototype.readIntLE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=this[T],H=1,W=0;for(;++W<k&&(H*=256);)q+=this[T+W]*H;return H*=128,q>=H&&(q-=Math.pow(2,8*k)),q},v.prototype.readIntBE=function(T,k,O){T=T>>>0,k=k>>>0,O||R(T,k,this.length);let q=k,H=1,W=this[T+--q];for(;q>0&&(H*=256);)W+=this[T+--q]*H;return H*=128,W>=H&&(W-=Math.pow(2,8*k)),W},v.prototype.readInt8=function(T,k){return T=T>>>0,k||R(T,1,this.length),this[T]&128?(255-this[T]+1)*-1:this[T]},v.prototype.readInt16LE=function(T,k){T=T>>>0,k||R(T,2,this.length);let O=this[T]|this[T+1]<<8;return O&32768?O|4294901760:O},v.prototype.readInt16BE=function(T,k){T=T>>>0,k||R(T,2,this.length);let O=this[T+1]|this[T]<<8;return O&32768?O|4294901760:O},v.prototype.readInt32LE=function(T,k){return T=T>>>0,k||R(T,4,this.length),this[T]|this[T+1]<<8|this[T+2]<<16|this[T+3]<<24},v.prototype.readInt32BE=function(T,k){return T=T>>>0,k||R(T,4,this.length),this[T]<<24|this[T+1]<<16|this[T+2]<<8|this[T+3]},v.prototype.readBigInt64LE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=this[T+4]+this[T+5]*2**8+this[T+6]*2**16+(O<<24);return(BigInt(q)<<BigInt(32))+BigInt(k+this[++T]*2**8+this[++T]*2**16+this[++T]*2**24)}),v.prototype.readBigInt64BE=lt(function(T){T=T>>>0,J(T,"offset");let k=this[T],O=this[T+7];(k===void 0||O===void 0)&&X(T,this.length-8);let q=(k<<24)+this[++T]*2**16+this[++T]*2**8+this[++T];return(BigInt(q)<<BigInt(32))+BigInt(this[++T]*2**24+this[++T]*2**16+this[++T]*2**8+O)}),v.prototype.readFloatLE=function(T,k){return T=T>>>0,k||R(T,4,this.length),r.read(this,T,!0,23,4)},v.prototype.readFloatBE=function(T,k){return T=T>>>0,k||R(T,4,this.length),r.read(this,T,!1,23,4)},v.prototype.readDoubleLE=function(T,k){return T=T>>>0,k||R(T,8,this.length),r.read(this,T,!0,52,8)},v.prototype.readDoubleBE=function(T,k){return T=T>>>0,k||R(T,8,this.length),r.read(this,T,!1,52,8)};function S(T,k,O,q,H,W){if(!v.isBuffer(T))throw new TypeError('"buffer" argument must be a Buffer instance');if(k>H||k<W)throw new RangeError('"value" argument is out of bounds');if(O+q>T.length)throw new RangeError("Index out of range")}v.prototype.writeUintLE=v.prototype.writeUIntLE=function(T,k,O,q){if(T=+T,k=k>>>0,O=O>>>0,!q){let se=Math.pow(2,8*O)-1;S(this,T,k,O,se,0)}let H=1,W=0;for(this[k]=T&255;++W<O&&(H*=256);)this[k+W]=T/H&255;return k+O},v.prototype.writeUintBE=v.prototype.writeUIntBE=function(T,k,O,q){if(T=+T,k=k>>>0,O=O>>>0,!q){let se=Math.pow(2,8*O)-1;S(this,T,k,O,se,0)}let H=O-1,W=1;for(this[k+H]=T&255;--H>=0&&(W*=256);)this[k+H]=T/W&255;return k+O},v.prototype.writeUint8=v.prototype.writeUInt8=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,1,255,0),this[k]=T&255,k+1},v.prototype.writeUint16LE=v.prototype.writeUInt16LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,65535,0),this[k]=T&255,this[k+1]=T>>>8,k+2},v.prototype.writeUint16BE=v.prototype.writeUInt16BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,65535,0),this[k]=T>>>8,this[k+1]=T&255,k+2},v.prototype.writeUint32LE=v.prototype.writeUInt32LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,4294967295,0),this[k+3]=T>>>24,this[k+2]=T>>>16,this[k+1]=T>>>8,this[k]=T&255,k+4},v.prototype.writeUint32BE=v.prototype.writeUInt32BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,4294967295,0),this[k]=T>>>24,this[k+1]=T>>>16,this[k+2]=T>>>8,this[k+3]=T&255,k+4};function B(T,k,O,q,H){j(k,q,H,T,O,7);let W=Number(k&BigInt(4294967295));T[O++]=W,W=W>>8,T[O++]=W,W=W>>8,T[O++]=W,W=W>>8,T[O++]=W;let se=Number(k>>BigInt(32)&BigInt(4294967295));return T[O++]=se,se=se>>8,T[O++]=se,se=se>>8,T[O++]=se,se=se>>8,T[O++]=se,O}function U(T,k,O,q,H){j(k,q,H,T,O,7);let W=Number(k&BigInt(4294967295));T[O+7]=W,W=W>>8,T[O+6]=W,W=W>>8,T[O+5]=W,W=W>>8,T[O+4]=W;let se=Number(k>>BigInt(32)&BigInt(4294967295));return T[O+3]=se,se=se>>8,T[O+2]=se,se=se>>8,T[O+1]=se,se=se>>8,T[O]=se,O+8}v.prototype.writeBigUInt64LE=lt(function(T,k=0){return B(this,T,k,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeBigUInt64BE=lt(function(T,k=0){return U(this,T,k,BigInt(0),BigInt("0xffffffffffffffff"))}),v.prototype.writeIntLE=function(T,k,O,q){if(T=+T,k=k>>>0,!q){let st=Math.pow(2,8*O-1);S(this,T,k,O,st-1,-st)}let H=0,W=1,se=0;for(this[k]=T&255;++H<O&&(W*=256);)T<0&&se===0&&this[k+H-1]!==0&&(se=1),this[k+H]=(T/W>>0)-se&255;return k+O},v.prototype.writeIntBE=function(T,k,O,q){if(T=+T,k=k>>>0,!q){let st=Math.pow(2,8*O-1);S(this,T,k,O,st-1,-st)}let H=O-1,W=1,se=0;for(this[k+H]=T&255;--H>=0&&(W*=256);)T<0&&se===0&&this[k+H+1]!==0&&(se=1),this[k+H]=(T/W>>0)-se&255;return k+O},v.prototype.writeInt8=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,1,127,-128),T<0&&(T=255+T+1),this[k]=T&255,k+1},v.prototype.writeInt16LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,32767,-32768),this[k]=T&255,this[k+1]=T>>>8,k+2},v.prototype.writeInt16BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,2,32767,-32768),this[k]=T>>>8,this[k+1]=T&255,k+2},v.prototype.writeInt32LE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,2147483647,-2147483648),this[k]=T&255,this[k+1]=T>>>8,this[k+2]=T>>>16,this[k+3]=T>>>24,k+4},v.prototype.writeInt32BE=function(T,k,O){return T=+T,k=k>>>0,O||S(this,T,k,4,2147483647,-2147483648),T<0&&(T=4294967295+T+1),this[k]=T>>>24,this[k+1]=T>>>16,this[k+2]=T>>>8,this[k+3]=T&255,k+4},v.prototype.writeBigInt64LE=lt(function(T,k=0){return B(this,T,k,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),v.prototype.writeBigInt64BE=lt(function(T,k=0){return U(this,T,k,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function D(T,k,O,q,H,W){if(O+q>T.length)throw new RangeError("Index out of range");if(O<0)throw new RangeError("Index out of range")}function re(T,k,O,q,H){return k=+k,O=O>>>0,H||D(T,k,O,4,34028234663852886e22,-34028234663852886e22),r.write(T,k,O,q,23,4),O+4}v.prototype.writeFloatLE=function(T,k,O){return re(this,T,k,!0,O)},v.prototype.writeFloatBE=function(T,k,O){return re(this,T,k,!1,O)};function Q(T,k,O,q,H){return k=+k,O=O>>>0,H||D(T,k,O,8,17976931348623157e292,-17976931348623157e292),r.write(T,k,O,q,52,8),O+8}v.prototype.writeDoubleLE=function(T,k,O){return Q(this,T,k,!0,O)},v.prototype.writeDoubleBE=function(T,k,O){return Q(this,T,k,!1,O)},v.prototype.copy=function(T,k,O,q){if(!v.isBuffer(T))throw new TypeError("argument should be a Buffer");if(O||(O=0),!q&&q!==0&&(q=this.length),k>=T.length&&(k=T.length),k||(k=0),q>0&&q<O&&(q=O),q===O||T.length===0||this.length===0)return 0;if(k<0)throw new RangeError("targetStart out of bounds");if(O<0||O>=this.length)throw new RangeError("Index out of range");if(q<0)throw new RangeError("sourceEnd out of bounds");q>this.length&&(q=this.length),T.length-k<q-O&&(q=T.length-k+O);let H=q-O;return this===T&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(k,O,q):Uint8Array.prototype.set.call(T,this.subarray(O,q),k),H},v.prototype.fill=function(T,k,O,q){if(typeof T=="string"){if(typeof k=="string"?(q=k,k=0,O=this.length):typeof O=="string"&&(q=O,O=this.length),q!==void 0&&typeof q!="string")throw new TypeError("encoding must be a string");if(typeof q=="string"&&!v.isEncoding(q))throw new TypeError("Unknown encoding: "+q);if(T.length===1){let W=T.charCodeAt(0);(q==="utf8"&&W<128||q==="latin1")&&(T=W)}}else typeof T=="number"?T=T&255:typeof T=="boolean"&&(T=Number(T));if(k<0||this.length<k||this.length<O)throw new RangeError("Out of range index");if(O<=k)return this;k=k>>>0,O=O===void 0?this.length:O>>>0,T||(T=0);let H;if(typeof T=="number")for(H=k;H<O;++H)this[H]=T;else{let W=v.isBuffer(T)?T:v.from(T,q),se=W.length;if(se===0)throw new TypeError('The value "'+T+'" is invalid for argument "value"');for(H=0;H<O-k;++H)this[H+k]=W[H%se]}return this};var Z={};function K(T,k,O){Z[T]=class extends O{constructor(){super(),Object.defineProperty(this,"message",{value:k.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${T}]`,this.stack,delete this.name}get code(){return T}set code(q){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:q,writable:!0})}toString(){return`${this.name} [${T}]: ${this.message}`}}}K("ERR_BUFFER_OUT_OF_BOUNDS",function(T){return T?`${T} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),K("ERR_INVALID_ARG_TYPE",function(T,k){return`The "${T}" argument must be of type number. Received type ${typeof k}`},TypeError),K("ERR_OUT_OF_RANGE",function(T,k,O){let q=`The value of "${T}" is out of range.`,H=O;return Number.isInteger(O)&&Math.abs(O)>2**32?H=ce(String(O)):typeof O=="bigint"&&(H=String(O),(O>BigInt(2)**BigInt(32)||O<-(BigInt(2)**BigInt(32)))&&(H=ce(H)),H+="n"),q+=` It must be ${k}. Received ${H}`,q},RangeError);function ce(T){let k="",O=T.length,q=T[0]==="-"?1:0;for(;O>=q+4;O-=3)k=`_${T.slice(O-3,O)}${k}`;return`${T.slice(0,O)}${k}`}function ee(T,k,O){J(k,"offset"),(T[k]===void 0||T[k+O]===void 0)&&X(k,T.length-(O+1))}function j(T,k,O,q,H,W){if(T>O||T<k){let se=typeof k=="bigint"?"n":"",st;throw W>3?k===0||k===BigInt(0)?st=`>= 0${se} and < 2${se} ** ${(W+1)*8}${se}`:st=`>= -(2${se} ** ${(W+1)*8-1}${se}) and < 2 ** ${(W+1)*8-1}${se}`:st=`>= ${k}${se} and <= ${O}${se}`,new Z.ERR_OUT_OF_RANGE("value",st,T)}ee(q,H,W)}function J(T,k){if(typeof T!="number")throw new Z.ERR_INVALID_ARG_TYPE(k,"number",T)}function X(T,k,O){throw Math.floor(T)!==T?(J(T,O),new Z.ERR_OUT_OF_RANGE(O||"offset","an integer",T)):k<0?new Z.ERR_BUFFER_OUT_OF_BOUNDS:new Z.ERR_OUT_OF_RANGE(O||"offset",`>= ${O?1:0} and <= ${k}`,T)}var he=/[^+/0-9A-Za-z-_]/g;function Ie(T){if(T=T.split("=")[0],T=T.trim().replace(he,""),T.length<2)return"";for(;T.length%4!==0;)T=T+"=";return T}function oe(T,k){k=k||1/0;let O,q=T.length,H=null,W=[];for(let se=0;se<q;++se){if(O=T.charCodeAt(se),O>55295&&O<57344){if(!H){if(O>56319){(k-=3)>-1&&W.push(239,191,189);continue}else if(se+1===q){(k-=3)>-1&&W.push(239,191,189);continue}H=O;continue}if(O<56320){(k-=3)>-1&&W.push(239,191,189),H=O;continue}O=(H-55296<<10|O-56320)+65536}else H&&(k-=3)>-1&&W.push(239,191,189);if(H=null,O<128){if((k-=1)<0)break;W.push(O)}else if(O<2048){if((k-=2)<0)break;W.push(O>>6|192,O&63|128)}else if(O<65536){if((k-=3)<0)break;W.push(O>>12|224,O>>6&63|128,O&63|128)}else if(O<1114112){if((k-=4)<0)break;W.push(O>>18|240,O>>12&63|128,O>>6&63|128,O&63|128)}else throw new Error("Invalid code point")}return W}function le(T){let k=[];for(let O=0;O<T.length;++O)k.push(T.charCodeAt(O)&255);return k}function ot(T,k){let O,q,H,W=[];for(let se=0;se<T.length&&!((k-=2)<0);++se)O=T.charCodeAt(se),q=O>>8,H=O%256,W.push(H),W.push(q);return W}function ge(T){return e.toByteArray(Ie(T))}function xe(T,k,O,q){let H;for(H=0;H<q&&!(H+O>=k.length||H>=T.length);++H)k[H+O]=T[H];return H}function ut(T,k){return T instanceof k||T!=null&&T.constructor!=null&&T.constructor.name!=null&&T.constructor.name===k.name}function Ae(T){return T!==T}var Ge=function(){let T="0123456789abcdef",k=new Array(256);for(let O=0;O<16;++O){let q=O*16;for(let H=0;H<16;++H)k[q+H]=T[O]+T[H]}return k}();function lt(T){return typeof BigInt>"u"?z:T}function z(){throw new Error("BigInt not supported")}}),TEe=Zh((t,e)=>{typeof window<"u"?(window.global=window,global.fetch=window.fetch,e.exports={Buffer:oI().Buffer,Crypto:window.crypto}):e.exports={Buffer:oI().Buffer,Crypto:crypto}}),Ete={};MEe(Ete,{AVSCTap:()=>B2,ArweaveSigner:()=>PI,DataItem:()=>A2,MAX_TAG_BYTES:()=>Ew,MIN_BINARY_SIZE:()=>CI,SIG_CONFIG:()=>Y1,SignatureConfig:()=>Os,Signer:()=>Ate,createData:()=>kte,deserializeTags:()=>vw,indexToType:()=>OI,serializeTags:()=>NI,tagsExceedLimit:()=>Ite});var Ate=class{signer;publicKey;signatureType;signatureLength;ownerLength;pem;static verify(t,e,r,o){throw new Error("You must implement verify method on child")}},IEe=Id(BI(),1),If=Id(Ste(),1);async function Rte(t){if(Array.isArray(t)){let i=(0,If.concatBuffers)([(0,If.stringToBuffer)("list"),(0,If.stringToBuffer)(t.length.toString())]);return await Tte(t,await Uh().hash(i,"SHA-384"))}let e=t,r=(0,If.concatBuffers)([(0,If.stringToBuffer)("blob"),(0,If.stringToBuffer)(e.byteLength.toString())]),o=(0,If.concatBuffers)([await Uh().hash(r,"SHA-384"),await Uh().hash(e,"SHA-384")]);return await Uh().hash(o,"SHA-384")}async function Tte(t,e){if(t.length<1)return e;let r=(0,If.concatBuffers)([e,await Rte(t[0])]),o=await Uh().hash(r,"SHA-384");return await Tte(t.slice(1),o)}var LT=Id(AEe(),1),kEe=LT.default.default?LT.default.default:LT.default,BEe=class extends kEe{getPublicKey(t){throw new Error("Unimplemented")}},PEe;function Uh(){return PEe??=new BEe}var Os;(function(t){t[t.ARWEAVE=1]="ARWEAVE",t[t.ED25519=2]="ED25519",t[t.ETHEREUM=3]="ETHEREUM",t[t.SOLANA=4]="SOLANA",t[t.INJECTEDAPTOS=5]="INJECTEDAPTOS",t[t.MULTIAPTOS=6]="MULTIAPTOS",t[t.TYPEDETHEREUM=7]="TYPEDETHEREUM"})(Os||(Os={}));var Y1={[Os.ARWEAVE]:{sigLength:512,pubLength:512,sigName:"arweave"},[Os.ED25519]:{sigLength:64,pubLength:32,sigName:"ed25519"},[Os.ETHEREUM]:{sigLength:65,pubLength:65,sigName:"ethereum"},[Os.SOLANA]:{sigLength:64,pubLength:32,sigName:"solana"},[Os.INJECTEDAPTOS]:{sigLength:64,pubLength:32,sigName:"injectedAptos"},[Os.MULTIAPTOS]:{sigLength:64*32+4,pubLength:32*32+1,sigName:"multiAptos"},[Os.TYPEDETHEREUM]:{sigLength:65,pubLength:42,sigName:"typedEthereum"}},PI=class{signatureType=1;ownerLength=Y1[1].pubLength;signatureLength=Y1[1].sigLength;jwk;pk;constructor(t){this.pk=t.n,this.jwk=t}get publicKey(){return IEe.default.toBuffer(this.pk)}sign(t){return Uh().sign(this.jwk,t)}static async verify(t,e,r){return await Uh().verify(t,e,r)}},OI={1:PI},Nu=Id(BI(),1);async function sI(t){return Rte([(0,If.stringToBuffer)("dataitem"),(0,If.stringToBuffer)("1"),(0,If.stringToBuffer)(t.signatureType.toString()),t.rawOwner,t.rawTarget,t.rawAnchor,t.rawTags,t.rawData])}async function OEe(t,e){let r=await sI(t),o=await e.sign(r),i=await Uh().hash(o);return{signature:Se.from(o),id:Se.from(i)}}async function NEe(t,e){let{signature:r,id:o}=await OEe(t,e);return t.getRaw().set(r,2),o}var B2=class{buf;pos;constructor(t=Se.alloc(Ew),e=0){this.buf=t,this.pos=e}writeTags(t){if(!Array.isArray(t))throw new Error("input must be array");let e=t.length,r;if(e)for(this.writeLong(e),r=0;r<e;r++){let o=t[r];if(o?.name===void 0||o?.value===void 0)throw new Error(`Invalid tag format for ${o}, expected {name:string, value: string}`);this.writeString(o.name),this.writeString(o.value)}this.writeLong(0)}toBuffer(){let t=Se.alloc(this.pos);if(this.pos>this.buf.length)throw new Error(`Too many tag bytes (${this.pos} > ${this.buf.length})`);return this.buf.copy(t,0,0,this.pos),t}tagsExceedLimit(){return this.pos>this.buf.length}writeLong(t){let e=this.buf,r,o;if(t>=-1073741824&&t<1073741824){o=t>=0?t<<1:~t<<1|1;do e[this.pos]=o&127,o>>=7;while(o&&(e[this.pos++]|=128))}else{r=t>=0?t*2:-t*2-1;do e[this.pos]=r&127,r/=128;while(r>=1&&(e[this.pos++]|=128))}this.pos++,this.buf=e}writeString(t){let e=Se.byteLength(t),r=this.buf;this.writeLong(e);let o=this.pos;if(this.pos+=e,!(this.pos>r.length)){if(e>64)this.buf.write(t,this.pos-e,e,"utf8");else{let i,h,l,v;for(i=0,h=e;i<h;i++)l=t.charCodeAt(i),l<128?r[o++]=l:l<2048?(r[o++]=l>>6|192,r[o++]=l&63|128):(l&64512)===55296&&((v=t.charCodeAt(i+1))&64512)===56320?(l=65536+((l&1023)<<10)+(v&1023),i++,r[o++]=l>>18|240,r[o++]=l>>12&63|128,r[o++]=l>>6&63|128,r[o++]=l&63|128):(r[o++]=l>>12|224,r[o++]=l>>6&63|128,r[o++]=l&63|128)}this.buf=r}}readLong(){let t=0,e=0,r=this.buf,o,i,h,l;do o=r[this.pos++],i=o&128,t|=(o&127)<<e,e+=7;while(i&&e<28);if(i){h=t,l=268435456;do o=r[this.pos++],h+=(o&127)*l,l*=128;while(o&128);return(h%2?-(h+1):h)/2}return t>>1^-(t&1)}skipLong(){let t=this.buf;for(;t[this.pos++]&128;);}readTags(){let t=[],e;for(;e=this.readLong();)for(e<0&&(e=-e,this.skipLong());e--;){let r=this.readString(),o=this.readString();t.push({name:r,value:o})}return t}readString(){let t=this.readLong(),e=this.pos,r=this.buf;if(this.pos+=t,!(this.pos>r.length))return this.buf.slice(e,e+t).toString()}};function NI(t){let e=new B2;return e.writeTags(t),e.toBuffer()}function Ite(t){let e=new B2;return e.writeTags(t),e.tagsExceedLimit()}function vw(t){return new B2(t).readTags()}function vl(t){let e=0;for(let r=t.length-1;r>=0;r--)e=e*256+t[r];return e}function CEe(t){if(t>29)throw new Error("Short too long");let e=[0,0];for(let r=0;r<e.length;r++){let o=t&255;e[r]=o,t=(t-o)/256}return Uint8Array.from(e)}function KQ(t){let e=[0,0,0,0,0,0,0,0];for(let r=0;r<e.length;r++){let o=t&255;e[r]=o,t=(t-o)/256}return Uint8Array.from(e)}var LEe=Id(TEe(),1),k1=Id(oI(),1),Ew=4096,CI=80,A2=class{binary;_id;constructor(t){this.binary=t}static isDataItem(t){return t.binary!==void 0}get signatureType(){let t=vl(this.binary.subarray(0,2));if(Os?.[t]!==void 0)return t;throw new Error("Unknown signature type: "+t)}async isValid(){return A2.verify(this.binary)}get id(){return(async()=>Nu.default.encode(await this.rawId))()}set id(t){this._id=Nu.default.toBuffer(t)}get rawId(){return(async()=>k1.Buffer.from(await LEe.Crypto.subtle.digest("SHA-256",this.rawSignature)))()}set rawId(t){this._id=t}get rawSignature(){return this.binary.subarray(2,2+this.signatureLength)}get signature(){return Nu.default.encode(this.rawSignature)}set rawOwner(t){if(t.byteLength!=this.ownerLength)throw new Error(`Expected raw owner (pubkey) to be ${this.ownerLength} bytes, got ${t.byteLength} bytes.`);this.binary.set(t,2+this.signatureLength)}get rawOwner(){return this.binary.subarray(2+this.signatureLength,2+this.signatureLength+this.ownerLength)}get signatureLength(){return Y1[this.signatureType].sigLength}get owner(){return Nu.default.encode(this.rawOwner)}get ownerLength(){return Y1[this.signatureType].pubLength}get rawTarget(){let t=this.getTargetStart();return this.binary[t]==1?this.binary.subarray(t+1,t+33):k1.Buffer.alloc(0)}get target(){return Nu.default.encode(this.rawTarget)}get rawAnchor(){let t=this.getAnchorStart();return this.binary[t]==1?this.binary.subarray(t+1,t+33):k1.Buffer.alloc(0)}get anchor(){return this.rawAnchor.toString()}get rawTags(){let t=this.getTagsStart(),e=vl(this.binary.subarray(t+8,t+16));return this.binary.subarray(t+16,t+16+e)}get tags(){let t=this.getTagsStart();if(vl(this.binary.subarray(t,t+8))==0)return[];let e=vl(this.binary.subarray(t+8,t+16));return vw(k1.Buffer.from(this.binary.subarray(t+16,t+16+e)))}get tagsB64Url(){return this.tags.map(t=>({name:Nu.default.encode(t.name),value:Nu.default.encode(t.value)}))}getStartOfData(){let t=this.getTagsStart(),e=this.binary.subarray(t+8,t+16),r=vl(e);return t+16+r}get rawData(){let t=this.getTagsStart(),e=this.binary.subarray(t+8,t+16),r=vl(e),o=t+16+r;return this.binary.subarray(o,this.binary.length)}get data(){return Nu.default.encode(this.rawData)}getRaw(){return this.binary}async sign(t){return this._id=await NEe(this,t),this.rawId}async setSignature(t){this.binary.set(t,2),this._id=k1.Buffer.from(await Uh().hash(t))}isSigned(){return(this._id?.length??0)>0}toJSON(){return{signature:this.signature,owner:this.owner,target:this.target,tags:this.tags.map(t=>({name:Nu.default.encode(t.name),value:Nu.default.encode(t.value)})),data:this.data}}static async verify(t){if(t.byteLength<CI)return!1;let e=new A2(t),r=e.signatureType,o=e.getTagsStart(),i=vl(t.subarray(o,o+8)),h=t.subarray(o+8,o+16),l=vl(h);if(l>Ew)return!1;if(i>0)try{if(vw(k1.Buffer.from(t.subarray(o+16,o+16+l))).length!==i)return!1}catch{return!1}let v=OI[r],b=await sI(e);return await v.verify(e.rawOwner,b,e.rawSignature)}async getSignatureData(){return sI(this)}getTagsStart(){let t=this.getTargetStart(),e=this.binary[t]==1,r=t+(e?33:1),o=this.binary[r]==1;return r+=o?33:1,r}getTargetStart(){return 2+this.signatureLength+this.ownerLength}getAnchorStart(){let t=this.getTargetStart()+1,e=this.binary[this.getTargetStart()]==1;return t+=e?32:0,t}},DEe=Id(BI(),1);function kte(t,e,r){let o=e.publicKey,i=r?.target?DEe.default.toBuffer(r.target):null,h=1+(i?.byteLength??0),l=r?.anchor?Se.from(r.anchor):null,v=1+(l?.byteLength??0),b=(r?.tags?.length??0)>0?NI(r.tags):null,g=16+(b?b.byteLength:0),_=Se.from(t),M=_.byteLength,x=2+e.signatureLength+e.ownerLength+h+v+g+M,E=Se.alloc(x);if(E.set(CEe(e.signatureType),0),E.set(new Uint8Array(e.signatureLength).fill(0),2),o.byteLength!==e.ownerLength)throw new Error(`Owner must be ${e.ownerLength} bytes, but was incorrectly ${o.byteLength}`);E.set(o,2+e.signatureLength);let A=2+e.signatureLength+e.ownerLength;if(E[A]=i?1:0,i){if(i.byteLength!==32)throw new Error(`Target must be 32 bytes but was incorrectly ${i.byteLength}`);E.set(i,A+1)}let I=A+h,P=I+1;if(E[I]=l?1:0,l){if(P+=l.byteLength,l.byteLength!==32)throw new Error("Anchor must be 32 bytes");E.set(l,I+1)}E.set(KQ(r?.tags?.length??0),P);let N=KQ(b?.byteLength??0);E.set(N,P+8),b&&E.set(b,P+16);let L=P+g;return E.set(_,L),new A2(E)}var LI={...Ete};globalThis.arbundles??=LI;var $Ee=LI,qEe=LI;globalThis.Buffer||(globalThis.Buffer=_te.Buffer);var{DataItem:UEe}=Mte;function FEe(t){return async({data:r,tags:o,target:i,anchor:h,createDataItem:l=v=>new UEe(v)})=>{let v=await t.signDataItem({data:r,tags:o,target:i,anchor:h}),b=l(_te.Buffer.from(v));return{id:await b.id,raw:await b.getRaw()}}}var jEe=globalThis.GATEWAY_URL||void 0,zEe=globalThis.MU_URL||void 0,ZEe=globalThis.CU_URL||void 0,HEe=globalThis.GRAPHQL_URL||void 0,{result:kut,results:But,message:Put,spawn:Out,monitor:Nut,unmonitor:Cut,dryrun:Lut,assign:Dut}=El({GATEWAY_URL:jEe,MU_URL:zEe,CU_URL:ZEe,GRAPHQL_URL:HEe}),Bte=wte.createDataItemSigner;ie();ae();ne();var Sre=mi(xre(),1),Nw=Sre.default.init({host:"arweave.net",port:443,protocol:"https"});ie();ae();ne();ie();ae();ne();var Lf=class extends Error{constructor(e){super(e),this.name=this.constructor.name}},Ere=class extends Lf{},Are=class extends Lf{},Rre=class extends Lf{constructor(e,r){super(`Failed request: ${e}: ${r}`)}},Tre=class extends Lf{},Cw=class extends Lf{},Ire=class extends Lf{constructor(){super("Invalid signer. Please provide a valid signer to interact with the contract.")}},ju=class extends Lf{constructor(){super("Invalid contract configuration")}},kre=class extends Lf{constructor(){super("Invalid process configuration")}},Bre=class extends Lf{};ie();ae();ne();var Hf=mi(Jfe(),1);ie();ae();ne();var j4="3.9.0-alpha.3";var Gu=class t{logger;silent=!1;static default=new t;constructor({level:e="info"}={}){e==="none"&&(this.silent=!0),typeof window<"u"?this.logger=console:this.logger=(0,Hf.createLogger)({level:e,silent:this.silent,defaultMeta:{name:"ar-io-sdk",version:j4},format:Hf.format.combine(Hf.format.timestamp(),Hf.format.json()),transports:[new Hf.transports.Console({format:Hf.format.combine(Hf.format.timestamp(),Hf.format.json())})]})}info(e,...r){this.silent||this.logger.info(e,...r)}warn(e,...r){this.silent||this.logger.warn(e,...r)}error(e,...r){this.silent||this.logger.error(e,...r)}debug(e,...r){this.silent||this.logger.debug(e,...r)}setLogLevel(e){this.silent=e==="none","silent"in this.logger&&(this.logger.silent=e==="none"),"level"in this.logger&&(this.logger.level=e)}};ie();ae();ne();ie();ae();ne();var Xfe=t=>{let e=Object.entries(t).sort(([r,o],[i,h])=>r==="@"?-1:i==="@"?1:"priority"in o&&!("priority"in h)?-1:!("priority"in o)&&"priority"in h?1:o.priority!==void 0&&h.priority!==void 0?o.priority===h.priority?r<i?-1:r>i?1:0:o.priority-h.priority:r<i?-1:r>i?1:0);return Object.fromEntries(e.map(([r,o],i)=>[r,{...o,index:i}]))};ie();ae();ne();function Pl(t,e){let r=t.safeParse(e);if(!r.success)throw new Error(JSON.stringify(r.error.format(),null,2));return r}ie();ae();ne();ie();ae();ne();ie();ae();ne();cu();var Qfe="+",eue="/",tue="-",rue="_",iue="=";function hUe(t){let e=t.length%4;return e&&(t+=iue.repeat(4-e)),t.replaceAll(tue,Qfe).replaceAll(rue,eue)}function lUe(t){return t.replaceAll(Qfe,tue).replaceAll(eue,rue).replaceAll(iue,"")}function Cbt(t){let e=hUe(t);return Se.from(e,"base64")}function cUe(t){let e=t.toString("base64");return lUe(e)}function Lbt(t){return cUe(cf("sha256").update(Uint8Array.from(t)).digest())}function nue(t=32){let e=fE(t);return Array.from(e,r=>r.toString(16).padStart(2,"0")).join("").slice(0,t)}ie();ae();ne();ie();ae();ne();function dP(t){try{return JSON.parse(t)}catch{return t}}ie();ae();ne();ie();ae();ne();var vP=mi(oue(),1);ie();ae();ne();var vUe=Object.defineProperty,mUe=(t,e,r)=>e in t?vUe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ab=(t,e,r)=>(mUe(t,typeof e!="symbol"?e+"":e,r),r),mP=class{constructor(e){Ab(this,"value"),Ab(this,"next"),this.value=e}},gP=class{constructor(){Ab(this,"head"),Ab(this,"tail"),Ab(this,"_size",0),this.clear()}clear(){this.head=void 0,this.tail=void 0,this._size=0}push(e){let r=new mP(e);return this.head&&this.tail?(this.tail.next=r,this.tail=r):(this.head=r,this.tail=r),this._size++,this._size}pop(){if(!this.head)return;let e=this.head;return this.head=this.head.next,this._size--,e.value}get size(){return this._size}*[Symbol.iterator](){let e=this.head;for(;e;)yield e.value,e=e.next}};function sue(t){if(!((Number.isInteger(t)||t===1/0)&&t>0))throw new TypeError("Expected `concurrency` to be a number greater than 1");let e=new gP,r=0,o=()=>{r--,e.size>0&&e.pop()()},i=async(v,b,g)=>{r++;let _=(async()=>v(...g))();b(_);try{await _}catch{}o()},h=(v,b,g)=>{e.push(i.bind(null,v,b,g)),(async()=>(await Promise.resolve(),r<t&&e.size>0&&e.pop()()))()},l=(v,...b)=>new Promise(g=>{h(v,g,b)});return Object.defineProperties(l,{activeCount:{get:()=>r},pendingCount:{get:()=>e.size},clearQueue:{value:()=>{e.clear()}}}),l}ie();ae();ne();var Rb=class{static init(e){return e!==void 0&&"signer"in e?new bP(e):new Z4(e)}},Z4=class{process;constructor(e){if(e===void 0||Object.keys(e).length===0)this.process=new sa({processId:T1});else if(Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju}async accessControlList({address:e}){return this.process.read({tags:[{name:"Action",value:"Access-Control-List"},{name:"Address",value:e}]})}},bP=class extends Z4{signer;constructor({signer:e,...r}){super(r),this.signer=Ol(e)}async register({processId:e}){return this.process.send({tags:[{name:"Action",value:"Register"},{name:"Process-Id",value:e}],signer:this.signer})}};ie();ae();ne();var Tb=class{static init(e){return e!==void 0&&"signer"in e?new yP(e):new H4(e)}},H4=class{process;epochSettings;arweave;constructor(e){if(this.arweave=e?.arweave??Nw,e===void 0||Object.keys(e).length===0)this.process=new sa({processId:Dh});else if(Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju}async getInfo(){return this.process.read({tags:[{name:"Action",value:"Info"}]})}async getTokenSupply(){return this.process.read({tags:[{name:"Action",value:"Total-Token-Supply"}]})}async computeEpochIndexForTimestamp(e){let r=await this.getEpochSettings(),o=r.epochZeroStartTimestamp,i=r.durationMs;return Math.floor((e-o)/i)}async computeCurrentEpochIndex(){let e=await this.getEpochSettings(),r=e.epochZeroStartTimestamp,o=e.durationMs,i=Date.now();return Math.floor((i-r)/o)}async computeEpochIndex(e){let r=e?.epochIndex;if(r!==void 0)return r;let o=e?.timestamp;if(o!==void 0)return this.computeEpochIndexForTimestamp(o)}async getEpochSettings(){return this.epochSettings??=await this.process.read({tags:[{name:"Action",value:"Epoch-Settings"}]})}async getEpoch(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o){let h=await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId});return uue(h)}let i=[{name:"Action",value:"Epoch"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getArNSRecord({name:e}){return this.process.read({tags:[{name:"Action",value:"Record"},{name:"Name",value:e}]})}async getArNSRecords(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Records"},...Na(e)]})}async getArNSReservedNames(e){return this.process.read({tags:[{name:"Action",value:"Reserved-Names"},...Na(e)]})}async getArNSReservedName({name:e}){return this.process.read({tags:[{name:"Action",value:"Reserved-Name"},{name:"Name",value:e}]})}async getBalance({address:e}){return this.process.read({tags:[{name:"Action",value:"Balance"},{name:"Address",value:e}]})}async getBalances(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Balances"},...Na(e)]})}async getVault({address:e,vaultId:r}){return this.process.read({tags:[{name:"Action",value:"Vault"},{name:"Address",value:e},{name:"Vault-Id",value:r}]})}async getVaults(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Vaults"},...Na(e)]})}async getGateway({address:e}){return this.process.read({tags:[{name:"Action",value:"Gateway"},{name:"Address",value:e}]})}async getGatewayDelegates({address:e,...r}){return this.process.read({tags:[{name:"Action",value:"Paginated-Delegates"},{name:"Address",value:e},...Na(r)]})}async getGatewayDelegateAllowList({address:e,...r}){return this.process.read({tags:[{name:"Action",value:"Paginated-Allowed-Delegates"},{name:"Address",value:e},...Na(r)]})}async getGateways(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Gateways"},...Na(e)]})}async getCurrentEpoch(){return this.process.read({tags:[{name:"Action",value:"Epoch"}]})}async getPrescribedObservers(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.prescribedObservers;let i=[{name:"Action",value:"Epoch-Prescribed-Observers"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getPrescribedNames(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.prescribedNames;let i=[{name:"Action",value:"Epoch-Prescribed-Names"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getObservations(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.observations;let i=[{name:"Action",value:"Epoch-Observations"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getDistributions(e){let r=await this.computeEpochIndex(e),o=await this.computeCurrentEpochIndex();if(r!==void 0&&r<o)return(await Wd({arweave:this.arweave,epochIndex:r,processId:this.process.processId}))?.distributions;let i=[{name:"Action",value:"Epoch-Distributions"},{name:"Epoch-Index",value:o.toString()}];return this.process.read({tags:en(i)})}async getEligibleEpochRewards(e,r){let o=await this.computeEpochIndex(e),i=await this.computeCurrentEpochIndex();if(o!==void 0&&o<i){let l=await Wd({arweave:this.arweave,epochIndex:o,processId:this.process.processId});return fue(l,r)}let h=[{name:"Action",value:"Epoch-Eligible-Rewards"},...Na(r)];return this.process.read({tags:en(h)})}async getTokenCost({intent:e,type:r,years:o,name:i,quantity:h,fromAddress:l}){let b=[{name:"Action",value:"Token-Cost"},{name:"Intent",value:e==="Buy-Record"?"Buy-Name":e},{name:"Name",value:i},{name:"Years",value:o?.toString()},{name:"Quantity",value:h?.toString()},{name:"Purchase-Type",value:r}];return this.process.read({tags:en(b),fromAddress:l})}async getCostDetails({intent:e,type:r,years:o,name:i,quantity:h,fromAddress:l,fundFrom:v}){let g=[{name:"Action",value:"Cost-Details"},{name:"Intent",value:e==="Buy-Record"?"Buy-Name":e},{name:"Name",value:i},{name:"Years",value:o?.toString()},{name:"Quantity",value:h?.toString()},{name:"Purchase-Type",value:r},{name:"Fund-From",value:v}];return this.process.read({tags:en(g),fromAddress:l})}async getRegistrationFees(){return this.process.read({tags:[{name:"Action",value:"Registration-Fees"}]})}async getDemandFactor(){return this.process.read({tags:[{name:"Action",value:"Demand-Factor"}]})}async getDemandFactorSettings(){return this.process.read({tags:[{name:"Action",value:"Demand-Factor-Settings"}]})}async getArNSReturnedNames(e){return this.process.read({tags:[{name:"Action",value:"Returned-Names"},...Na(e)]})}async getArNSReturnedName({name:e}){let r=[{name:"Action",value:"Returned-Name"},{name:"Name",value:e}];return this.process.read({tags:r})}async getDelegations(e){let r=[{name:"Action",value:"Paginated-Delegations"},{name:"Address",value:e.address},...Na(e)];return this.process.read({tags:en(r)})}async getAllowedDelegates(e){return this.getGatewayDelegateAllowList(e)}async getGatewayVaults(e){return this.process.read({tags:[{name:"Action",value:"Paginated-Gateway-Vaults"},{name:"Address",value:e.address},...Na(e)]})}async getPrimaryNameRequest(e){let r=[{name:"Action",value:"Primary-Name-Request"},{name:"Initiator",value:e.initiator}];return this.process.read({tags:r})}async getPrimaryNameRequests(e){return this.process.read({tags:[{name:"Action",value:"Primary-Name-Requests"},...Na(e)]})}async getPrimaryName(e){let r=[{name:"Action",value:"Primary-Name"},{name:"Address",value:e?.address},{name:"Name",value:e?.name}];return this.process.read({tags:en(r)})}async getPrimaryNames(e){return this.process.read({tags:[{name:"Action",value:"Primary-Names"},...Na(e)]})}async getRedelegationFee(e){return this.process.read({tags:[{name:"Action",value:"Redelegation-Fee"},{name:"Address",value:e.address}]})}async getGatewayRegistrySettings(){return this.process.read({tags:[{name:"Action",value:"Gateway-Registry-Settings"}]})}async getAllDelegates(e){return this.process.read({tags:[{name:"Action",value:"All-Paginated-Delegates"},...Na(e)]})}async getAllGatewayVaults(e){return this.process.read({tags:[{name:"Action",value:"All-Gateway-Vaults"},...Na(e)]})}},yP=class extends H4{signer;constructor({signer:e,...r}){r===void 0?super({process:new sa({processId:Dh})}):super(r),this.signer=Ol(e)}async transfer({target:e,qty:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Transfer"},{name:"Recipient",value:e},{name:"Quantity",value:r.valueOf().toString()}],signer:this.signer})}async vaultedTransfer({recipient:e,quantity:r,lockLengthMs:o,revokable:i=!1},h){let{tags:l=[]}=h||{};return this.process.send({tags:[...l,{name:"Action",value:"Vaulted-Transfer"},{name:"Recipient",value:e},{name:"Quantity",value:r.toString()},{name:"Lock-Length",value:o.toString()},{name:"Revokable",value:`${i}`}],signer:this.signer})}async revokeVault({vaultId:e,recipient:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Revoke-Vault"},{name:"Vault-Id",value:e},{name:"Recipient",value:r}],signer:this.signer})}async createVault({lockLengthMs:e,quantity:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Create-Vault"},{name:"Lock-Length",value:e.toString()},{name:"Quantity",value:r.toString()}],signer:this.signer})}async extendVault({vaultId:e,extendLengthMs:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Extend-Vault"},{name:"Vault-Id",value:e},{name:"Extend-Length",value:r.toString()}],signer:this.signer})}async increaseVault({vaultId:e,quantity:r},o){let{tags:i=[]}=o||{};return this.process.send({tags:[...i,{name:"Action",value:"Increase-Vault"},{name:"Vault-Id",value:e},{name:"Quantity",value:r.toString()}],signer:this.signer})}async joinNetwork({operatorStake:e,allowDelegatedStaking:r,allowedDelegates:o,delegateRewardShareRatio:i,fqdn:h,label:l,minDelegatedStake:v,note:b,port:g,properties:_,protocol:M,autoStake:x,observerAddress:E},A){let{tags:I=[]}=A||{},P=[...I,{name:"Action",value:"Join-Network"},{name:"Operator-Stake",value:e.valueOf().toString()},{name:"Allow-Delegated-Staking",value:r?.toString()},{name:"Allowed-Delegates",value:o?.join(",")},{name:"Delegate-Reward-Share-Ratio",value:i?.toString()},{name:"FQDN",value:h},{name:"Label",value:l},{name:"Min-Delegated-Stake",value:v?.valueOf().toString()},{name:"Note",value:b},{name:"Port",value:g?.toString()},{name:"Properties",value:_},{name:"Protocol",value:M},{name:"Auto-Stake",value:x?.toString()},{name:"Observer-Address",value:E}];return this.process.send({signer:this.signer,tags:en(P)})}async leaveNetwork(e){let{tags:r=[]}=e||{};return this.process.send({signer:this.signer,tags:[...r,{name:"Action",value:"Leave-Network"}]})}async updateGatewaySettings({allowDelegatedStaking:e,allowedDelegates:r,delegateRewardShareRatio:o,fqdn:i,label:h,minDelegatedStake:l,note:v,port:b,properties:g,protocol:_,autoStake:M,observerAddress:x},E){let{tags:A=[]}=E||{},I=[...A,{name:"Action",value:"Update-Gateway-Settings"},{name:"Label",value:h},{name:"Note",value:v},{name:"FQDN",value:i},{name:"Port",value:b?.toString()},{name:"Properties",value:g},{name:"Protocol",value:_},{name:"Observer-Address",value:x},{name:"Allow-Delegated-Staking",value:e?.toString()},{name:"Allowed-Delegates",value:r?.join(",")},{name:"Delegate-Reward-Share-Ratio",value:o?.toString()},{name:"Min-Delegated-Stake",value:l?.valueOf().toString()},{name:"Auto-Stake",value:M?.toString()}];return this.process.send({signer:this.signer,tags:en(I)})}async delegateStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Delegate-Stake"},{name:"Target",value:e.target},{name:"Quantity",value:e.stakeQty.valueOf().toString()}]})}async decreaseDelegateStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Decrease-Delegate-Stake"},{name:"Target",value:e.target},{name:"Quantity",value:e.decreaseQty.valueOf().toString()},{name:"Instant",value:`${e.instant||!1}`}]})}async instantWithdrawal(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Instant-Withdrawal"},{name:"Vault-Id",value:e.vaultId},{name:"Address",value:e.gatewayAddress}];return this.process.send({signer:this.signer,tags:en(i)})}async increaseOperatorStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Increase-Operator-Stake"},{name:"Quantity",value:e.increaseQty.valueOf().toString()}]})}async decreaseOperatorStake(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Decrease-Operator-Stake"},{name:"Quantity",value:e.decreaseQty.valueOf().toString()},{name:"Instant",value:`${e.instant||!1}`}]})}async saveObservations(e,r){let{tags:o=[]}=r||{};return this.process.send({signer:this.signer,tags:[...o,{name:"Action",value:"Save-Observations"},{name:"Report-Tx-Id",value:e.reportTxId},{name:"Failed-Gateways",value:e.failedGateways.join(",")}]})}async buyRecord(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Buy-Name"},{name:"Name",value:e.name},{name:"Years",value:e.years?.toString()??"1"},{name:"Process-Id",value:e.processId},{name:"Purchase-Type",value:e.type||"lease"},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async upgradeRecord(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Upgrade-Name"},{name:"Name",value:e.name},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async extendLease(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Extend-Lease"},{name:"Name",value:e.name},{name:"Years",value:e.years.toString()},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async increaseUndernameLimit(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Increase-Undername-Limit"},{name:"Name",value:e.name},{name:"Quantity",value:e.increaseCount.toString()},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async cancelWithdrawal(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Cancel-Withdrawal"},{name:"Vault-Id",value:e.vaultId},{name:"Address",value:e.gatewayAddress}];return this.process.send({signer:this.signer,tags:en(i)})}async requestPrimaryName(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Request-Primary-Name"},{name:"Name",value:e.name},{name:"Fund-From",value:e.fundFrom}];return this.process.send({signer:this.signer,tags:en(i)})}async redelegateStake(e,r){let{tags:o=[]}=r||{},i=[...o,{name:"Action",value:"Redelegate-Stake"},{name:"Target",value:e.target},{name:"Source",value:e.source},{name:"Quantity",value:e.stakeQty.valueOf().toString()},{name:"Vault-Id",value:e.vaultId}];return this.process.send({signer:this.signer,tags:en(i)})}};var m6t=async({address:t,registry:e=Rb.init()})=>{let r=await e.accessControlList({address:t});return[...new Set([...r.Owned,...r.Controlled])]};function hue(t,e){return new Promise((r,o)=>{let i=setTimeout(()=>{o(new Error("Timeout"))},t);e.then(h=>{clearTimeout(i),r(h)}).catch(h=>{clearTimeout(i),o(h)})})}var lue=class extends vP.default{contract;timeoutMs;throttle;logger;strict;antAoClient;constructor({contract:e=Tb.init({processId:Dh}),timeoutMs:r=6e4,concurrency:o=30,logger:i=Gu.default,strict:h=!1,antAoClient:l=El()}={}){super(),this.contract=e,this.timeoutMs=r,this.throttle=sue(o),this.logger=i,this.strict=h,this.antAoClient=l}async fetchProcessesOwnedByWallet({address:e,pageSize:r,antRegistry:o=Rb.init()}){let i={},h=await o.accessControlList({address:e}),l=new Set([...h.Owned,...h.Controlled]);await hue(this.timeoutMs,gUe({contract:this.contract,emitter:this,pageSize:r})).catch(b=>(this.emit("error",`Error getting ArNS records: ${b}`),this.logger.error("Error getting ArNS records",{message:b?.message,stack:b?.stack}),{})).then(b=>{Object.entries(b).forEach(([g,_])=>{l.has(_.processId)&&(i[_.processId]==null&&(i[_.processId]={state:void 0,names:{}}),i[_.processId].names[g]=_)})});let v=Object.keys(i).length;this.emit("progress",0,v),await Promise.all(Object.keys(i).map(async(b,g)=>this.throttle(async()=>{if(i[b].state!==void 0){this.emit("progress",g+1,v);return}let _=K4.init({process:new sa({processId:b,ao:this.antAoClient}),strict:this.strict}),M=await hue(this.timeoutMs,_.getState()).catch(x=>{this.emit("error",`Error getting state for process ${b}: ${x}`)});(M?.Owner===e||M?.Controllers.includes(e))&&(i[b].state=M,this.emit("process",b,i[b])),this.emit("progress",g+1,v)}))),this.emit("end",i)}},gUe=async({contract:t=Tb.init({processId:Dh}),emitter:e,logger:r=Gu.default,pageSize:o=1e3})=>{let i,h=Date.now(),l={};do{let v=await t.getArNSRecords({cursor:i,limit:o}).catch(b=>{r?.error("Error getting ArNS records",{message:b?.message,stack:b?.stack}),e?.emit("arns:error",`Error getting ArNS records: ${b}`)});if(!v)return{};v.items.forEach(b=>{let{name:g,..._}=b;l[g]=_}),r.debug("Fetched page of ArNS records",{totalRecordCount:v.totalItems,fetchedRecordCount:Object.keys(l).length,cursor:v.nextCursor}),e?.emit("arns:pageLoaded",{totalRecordCount:v.totalItems,fetchedRecordCount:Object.keys(l).length,records:v.items,cursor:v.nextCursor}),i=v.nextCursor}while(i!==void 0);return e?.emit("arns:end",l),r.debug("Fetched all ArNS records",{totalRecordCount:Object.keys(l).length,durationMs:Date.now()-h}),l};var sa=class{logger;ao;processId;constructor({processId:e,ao:r=El(),logger:o=Gu.default}){this.processId=e,this.logger=o,this.ao=r}isMessageDataEmpty(e){return e===void 0||e==="null"||e===""||e===null}async read({tags:e,retries:r=3,fromAddress:o}){this.logger.debug("Evaluating read interaction on process",{tags:e,processId:this.processId});let i={process:this.processId,tags:e};o!==void 0&&(i.Owner=o);let h=0,l;for(;h<r;)try{l=await this.ao.dryrun(i);break}catch(_){if(h++,this.logger.debug(`Read attempt ${h} failed`,{error:_?.message,stack:_?.stack,tags:e,processId:this.processId}),h>=r)throw this.logger.error("Maximum read attempts exceeded",{error:_?.message,stack:_?.stack,tags:e,processId:this.processId}),new Error(`Maximum read attempts exceeded for process ${this.processId}`);await new Promise(M=>setTimeout(M,2**h*1e3))}if(l===void 0)throw new Error("Unexpected error when evaluating read interaction");this.logger.debug("Read interaction result",{result:l,processId:this.processId});let v=wP(l);if(v!==void 0)throw new Error(v);if(l.Messages===void 0||l.Messages.length===0)throw this.logger.debug(`Process ${this.processId} does not support provided action.`,{result:l,tags:e,processId:this.processId}),new Error(`Process ${this.processId} does not support provided action.`);let b=l.Messages?.[0]?.Data;return this.isMessageDataEmpty(b)?void 0:dP(b)}async send({tags:e,data:r,signer:o,retries:i=3}){let h=0,l,v,b=nue(32);for(;h<i;)try{this.logger.debug("Evaluating send interaction on contract",{tags:e,data:r,processId:this.processId}),l??=await this.ao.message({process:this.processId,tags:[...e,{name:"AR-IO-SDK",value:j4}],data:r,signer:o,anchor:b}),this.logger.debug("Sent message to process",{messageId:l,processId:this.processId,anchor:b}),v=await this.ao.result({message:l,process:this.processId}),this.logger.debug("Message result",{result:v,messageId:l,processId:this.processId});break}catch(M){if(this.logger.error("Error sending message to process",{error:M?.message,stack:M?.stack,processId:this.processId,tags:e}),h++,this.logger.debug("Retrying send interaction",{attempts:h,retries:i,error:M?.message,processId:this.processId}),h>=i)throw this.logger.error("Maximum read result attempts exceeded",{error:M?.message,stack:M?.stack,tags:e,processId:this.processId}),new Error(`Maximum read result attempts exceeded for process ${this.processId}.`);await new Promise(x=>setTimeout(x,2**h*2e3))}if(v===void 0||l===void 0)throw new Error("Unexpected error when evaluating write interaction");let g=wP(v);if(g!==void 0)throw new Cw(g);if(v.Messages?.length===0||v.Messages===void 0)return{id:l};if(v.Messages.length===0)throw new Error(`Process ${this.processId} does not support provided action.`);if(this.isMessageDataEmpty(v.Messages[0].Data))return{id:l};let _=dP(v.Messages[0].Data);return this.logger.debug("Message result data",{resultData:_,messageId:l,processId:this.processId}),{id:l,result:_}}};var W4=class{static init(e){return e!==void 0&&"signer"in e?new _P(e):new V4(e)}},V4=class{process;constructor(e){if(e===void 0||Object.keys(e).length===0)this.process=new sa({processId:T1});else if(Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju}async getANTVersions(){let e=await this.process.read({tags:[{name:"Action",value:"Get-Versions"}]});return Object.fromEntries(Object.entries(e).sort(([r],[o])=>r.localeCompare(o)))}async getLatestANTVersion(){let e=await this.getANTVersions(),r=Object.entries(e).at(-1);if(!r)throw new Error("No version found");return{version:r[0],...r[1]}}},_P=class extends V4{signer;constructor({signer:e,...r}){super(r),this.signer=Ol(e)}async addVersion(e,{tags:r}){return this.process.send({tags:en([{name:"Action",value:"Add-Version"},{name:"Version",value:e.version},{name:"Module-Id",value:e.moduleId},{name:"Lua-Source-Id",value:e.luaSourceId},{name:"Notes",value:e.notes},...r??[]]),signer:this.signer})}};var K4=class{static versions=W4.init();static init(e){return e!==void 0&&"signer"in e?new MP(e):new G4(e)}},G4=class{process;processId;strict;constructor(e){if(this.strict=e.strict||!1,Nl(e))this.process=e.process;else if(Cl(e))this.process=new sa({processId:e.processId});else throw new ju;this.processId=this.process.processId}async getState({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"State"}],o=await this.process.read({tags:r});return e&&Pl(RT.passthrough().and(Qt.object({Records:Qt.record(Qt.string(),q8.passthrough())})),o),o}async getInfo({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Info"}],o=await this.process.read({tags:r});return e&&Pl(_Q.passthrough(),o),o}async getLogo(){return(await this.getInfo()).Logo}async getRecord({undername:e},{strict:r}={strict:this.strict}){let o=[{name:"Sub-Domain",value:e},{name:"Action",value:"Record"}],i=await this.process.read({tags:o});return r&&Pl(q8.passthrough(),i),i}async getRecords({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Records"}],o=await this.process.read({tags:r});return e&&Pl(ST,o),Xfe(o)}async getOwner({strict:e}={strict:this.strict}){return(await this.getInfo({strict:e})).Owner}async getControllers({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Controllers"}],o=await this.process.read({tags:r});return e&&Pl(ET,o),o}async getName({strict:e}={strict:this.strict}){return(await this.getInfo({strict:e})).Name}async getTicker({strict:e}={strict:this.strict}){return(await this.getInfo({strict:e})).Ticker}async getBalances({strict:e}={strict:this.strict}){let r=[{name:"Action",value:"Balances"}],o=await this.process.read({tags:r});return e&&Pl(AT,o),o}async getBalance({address:e},{strict:r}={strict:this.strict}){let o=[{name:"Action",value:"Balance"},{name:"Recipient",value:e}],i=await this.process.read({tags:o});return r&&Pl(Qt.number(),i),i}async getHandlers(){let e=await this.getInfo();return e.Handlers??e.HandlerNames}},MP=class extends G4{signer;constructor({signer:e,...r}){super(r),this.signer=Ol(e)}async transfer({target:e},r){let o=[...r?.tags??[],{name:"Action",value:"Transfer"},{name:"Recipient",value:e}];return this.process.send({tags:o,signer:this.signer})}async addController({controller:e},r){let o=[...r?.tags??[],{name:"Action",value:"Add-Controller"},{name:"Controller",value:e}];return this.process.send({tags:o,signer:this.signer})}async removeController({controller:e},r){let o=[...r?.tags??[],{name:"Action",value:"Remove-Controller"},{name:"Controller",value:e}];return this.process.send({tags:o,signer:this.signer})}async setRecord({undername:e,transactionId:r,ttlSeconds:o},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Set-Record"},{name:"Sub-Domain",value:e},{name:"Transaction-Id",value:r},{name:"TTL-Seconds",value:o.toString()}],signer:this.signer})}async setBaseNameRecord({transactionId:e,ttlSeconds:r},o){return this.setRecord({transactionId:e,ttlSeconds:r,undername:"@"},o)}async setUndernameRecord({undername:e,transactionId:r,ttlSeconds:o},i){return this.setRecord({undername:e,transactionId:r,ttlSeconds:o},i)}async removeUndernameRecord({undername:e}){return this.removeRecord({undername:e})}async removeRecord({undername:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Remove-Record"},{name:"Sub-Domain",value:e}],signer:this.signer})}async setTicker({ticker:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Ticker"},{name:"Ticker",value:e}],signer:this.signer})}async setName({name:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Name"},{name:"Name",value:e}],signer:this.signer})}async setDescription({description:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Description"},{name:"Description",value:e}],signer:this.signer})}async setKeywords({keywords:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Keywords"},{name:"Keywords",value:JSON.stringify(e)}],signer:this.signer})}async setLogo({txId:e},r){return this.process.send({tags:[...r?.tags??[],{name:"Action",value:"Set-Logo"},{name:"Logo",value:e}],signer:this.signer})}async releaseName({name:e,arioProcessId:r},o){return this.process.send({tags:[...o?.tags??[],{name:"Action",value:"Release-Name"},{name:"Name",value:e},{name:"IO-Process-Id",value:r},{name:"ARIO-Process-Id",value:r}],signer:this.signer})}async reassignName({name:e,arioProcessId:r,antProcessId:o},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Reassign-Name"},{name:"Name",value:e},{name:"IO-Process-Id",value:r},{name:"ARIO-Process-Id",value:r},{name:"Process-Id",value:o}],signer:this.signer})}async approvePrimaryNameRequest({name:e,address:r,arioProcessId:o},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Approve-Primary-Name"},{name:"Name",value:e},{name:"Recipient",value:r},{name:"IO-Process-Id",value:o},{name:"ARIO-Process-Id",value:o}],signer:this.signer})}async removePrimaryNames({names:e,arioProcessId:r,notifyOwners:o=!1},i){return this.process.send({tags:[...i?.tags??[],{name:"Action",value:"Remove-Primary-Names"},{name:"Names",value:e.join(",")},{name:"IO-Process-Id",value:r},{name:"ARIO-Process-Id",value:r},{name:"Notify-Owners",value:o.toString()}],signer:this.signer})}};async function V3t({signer:t,module:e=pQ,ao:r=El(),scheduler:o=gQ,state:i,antRegistryId:h=T1,logger:l=Gu.default,authority:v=mQ}){let b=await r.spawn({module:e,scheduler:o,signer:t,data:i?JSON.stringify(i):void 0,tags:[{name:"Authority",value:v},{name:"ANT-Registry-Id",value:h}]});return l.debug("Spawned ANT",{processId:b,module:e,scheduler:o}),b}async function G3t({signer:t,processId:e,luaCodeTxId:r=vQ,ao:o=El(),logger:i=Gu.default,arweave:h=Nw}){let l=new sa({processId:e,ao:o,logger:i}),{api:{host:v,port:b,protocol:g}}=h.getConfig(),_=await fetch(`${g}://${v}:${b}/${r}`).then(x=>x.text()),{id:M}=await l.send({tags:[{name:"Action",value:"Eval"},{name:"App-Name",value:"ArNS-ANT"},{name:"Source-Code-TX-ID",value:r}],data:_,signer:t});return i.debug("Evolved ANT",{processId:e,luaCodeTxId:r,evalMsgId:M}),M}function bUe(t){let e=Qt.object({name:Qt.string(),value:Qt.union([Qt.string(),Qt.number()])}),r=Qt.function().args(Qt.object({data:Qt.union([Qt.string(),Qt.instanceof(Se)]),tags:Qt.array(e).optional(),target:Qt.string().optional(),anchor:Qt.string().optional()})).returns(Qt.promise(Qt.object({id:Qt.string(),raw:Qt.instanceof(ArrayBuffer)})));try{return r.parse(t),!0}catch{return!1}}function Ol(t){return bUe(t)?t:"publicKey"in t?async({data:r,tags:o,target:i,anchor:h})=>{if(t.publicKey===void 0&&"setPublicKey"in t&&typeof t.setPublicKey=="function"&&await t.setPublicKey(),t instanceof hl){let b=await t.signer.signDataItem({data:r,tags:o,target:i,anchor:h}),g=new b1(Se.from(b));return{id:await g.id,raw:await g.getRaw()}}let l=Rg(r,t,{tags:o,target:i,anchor:h});return l.sign(t).then(async()=>({id:await l.id,raw:await l.getRaw()}))}:Bte(t)}var yUe="-k7t8xMoB8hW482609Z9F4bTFMC3MnuW8bTvTyT8pFI",wUe="Sie_26dvgyok0PZD_-iQAFOhOd5YxDTkczOLoqTTL_A";function Y3t({owner:t,targetId:e,ttlSeconds:r=3600,keywords:o=[],controllers:i=[],description:h="",ticker:l="aos",name:v="ANT",logo:b=wUe}){return{ticker:l,name:v,description:h,keywords:o,owner:t,controllers:[t,...i],balances:{[t]:1},records:{"@":{transactionId:e??yUe.toString(),ttlSeconds:r}},logo:b}}function due(t){return Qt.object({startTimestamp:Qt.number(),startHeight:Qt.number(),distributions:Qt.any(),endTimestamp:Qt.number(),prescribedObservers:Qt.any(),prescribedNames:Qt.array(Qt.string()),observations:Qt.any(),epochIndex:Qt.number()}).parse(t)}function wP(t){let r=t.Error??t.Messages?.[0]?.Tags?.find(o=>o.name==="Error")?.value;if(r!==void 0){let o=r.match(/\[string "aos"]:(\d+):\s*(.+)/);if(o){let[,i,h]=o;return`${cue(h).trim()} (line ${i.trim()})`.trim()}return cue(r)}}function cue(t){let e="\x1B";return t.replace(new RegExp(`${e}[\\[\\]()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]`,"g"),"").trim()}var pue=t=>D8.test(t);function u8t(t){return t!==void 0&&!isNaN(parseInt(t.toString()))}var en=t=>t.filter(e=>e.value!==void 0&&e.value!==""),Na=t=>{let e=[{name:"Cursor",value:t?.cursor?.toString()},{name:"Limit",value:t?.limit?.toString()},{name:"Sort-By",value:t?.sortBy?.toString()},{name:"Sort-Order",value:t?.sortOrder?.toString()}];return en(e)},Wd=async({arweave:t,epochIndex:e,processId:r=Dh,retries:o=3,gqlUrl:i="https://arweave-search.goldsky.com/graphql"})=>{let h=_Ue({epochIndex:e,processId:r});for(let l=0;l<o;l++)try{let v=await fetch(i,{method:"POST",body:h,headers:{"Content-Type":"application/json"}}).then(_=>_.json());if(v?.data?.transactions?.edges?.length===0)return;let b=v.data.transactions.edges[0].node.id,g=await t.api.get(b);return due(g.data)}catch(v){if(l===o-1)throw v;await new Promise(b=>setTimeout(b,Math.pow(2,l)*1e3))}},_Ue=({epochIndex:t,processId:e=Dh,authorities:r=["fcoN_xJeisVsPXA-trzVAuIiqO3ydLQxM-L4XbrQKzY"]})=>JSON.stringify({query:`
190
190
  query {
191
191
  transactions(
192
192
  tags: [
@@ -68,7 +68,13 @@ class AOProcess {
68
68
  processId: this.processId,
69
69
  });
70
70
  if (attempts >= retries) {
71
- throw error;
71
+ this.logger.error(`Maximum read attempts exceeded`, {
72
+ error: error?.message,
73
+ stack: error?.stack,
74
+ tags,
75
+ processId: this.processId,
76
+ });
77
+ throw new Error(`Maximum read attempts exceeded for process ${this.processId}`);
72
78
  }
73
79
  // exponential backoff
74
80
  await new Promise((resolve) => setTimeout(resolve, 2 ** attempts * 1000));
@@ -106,6 +112,8 @@ class AOProcess {
106
112
  let attempts = 0;
107
113
  let messageId;
108
114
  let result = undefined;
115
+ // anchor is a random text produce non-deterministic messages IDs when deterministic signers are provided (ETH)
116
+ const anchor = (0, base64_js_1.getRandomText)(32);
109
117
  while (attempts < retries) {
110
118
  try {
111
119
  this.logger.debug(`Evaluating send interaction on contract`, {
@@ -113,12 +121,9 @@ class AOProcess {
113
121
  data,
114
122
  processId: this.processId,
115
123
  });
116
- // TODO: do a read as a dry run to check if the process supports the action
117
- // anchor is a random text produce non-deterministic messages IDs when deterministic signers are provided (ETH)
118
- const anchor = (0, base64_js_1.getRandomText)(32);
119
- messageId = await this.ao.message({
124
+ // MUST NOT retry messaging if a message was already sent. This could result in a double entry-like condition when sending tokens for example.
125
+ messageId ??= await this.ao.message({
120
126
  process: this.processId,
121
- // TODO: any other default tags we want to add?
122
127
  tags: [...tags, { name: 'AR-IO-SDK', value: version_js_1.version }],
123
128
  data,
124
129
  signer,
@@ -129,7 +134,6 @@ class AOProcess {
129
134
  processId: this.processId,
130
135
  anchor,
131
136
  });
132
- // check the result of the send interaction
133
137
  result = await this.ao.result({
134
138
  message: messageId,
135
139
  process: this.processId,
@@ -156,7 +160,13 @@ class AOProcess {
156
160
  processId: this.processId,
157
161
  });
158
162
  if (attempts >= retries) {
159
- throw error;
163
+ this.logger.error(`Maximum read result attempts exceeded`, {
164
+ error: error?.message,
165
+ stack: error?.stack,
166
+ tags,
167
+ processId: this.processId,
168
+ });
169
+ throw new Error(`Maximum read result attempts exceeded for process ${this.processId}.`);
160
170
  }
161
171
  // exponential backoff
162
172
  await new Promise((resolve) => setTimeout(resolve, 2 ** attempts * 2000));
@@ -17,4 +17,4 @@
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.version = void 0;
19
19
  // AUTOMATICALLY GENERATED FILE - DO NOT TOUCH
20
- exports.version = '3.9.0-alpha.3';
20
+ exports.version = '3.9.0-alpha.4';
@@ -65,7 +65,13 @@ export class AOProcess {
65
65
  processId: this.processId,
66
66
  });
67
67
  if (attempts >= retries) {
68
- throw error;
68
+ this.logger.error(`Maximum read attempts exceeded`, {
69
+ error: error?.message,
70
+ stack: error?.stack,
71
+ tags,
72
+ processId: this.processId,
73
+ });
74
+ throw new Error(`Maximum read attempts exceeded for process ${this.processId}`);
69
75
  }
70
76
  // exponential backoff
71
77
  await new Promise((resolve) => setTimeout(resolve, 2 ** attempts * 1000));
@@ -103,6 +109,8 @@ export class AOProcess {
103
109
  let attempts = 0;
104
110
  let messageId;
105
111
  let result = undefined;
112
+ // anchor is a random text produce non-deterministic messages IDs when deterministic signers are provided (ETH)
113
+ const anchor = getRandomText(32);
106
114
  while (attempts < retries) {
107
115
  try {
108
116
  this.logger.debug(`Evaluating send interaction on contract`, {
@@ -110,12 +118,9 @@ export class AOProcess {
110
118
  data,
111
119
  processId: this.processId,
112
120
  });
113
- // TODO: do a read as a dry run to check if the process supports the action
114
- // anchor is a random text produce non-deterministic messages IDs when deterministic signers are provided (ETH)
115
- const anchor = getRandomText(32);
116
- messageId = await this.ao.message({
121
+ // MUST NOT retry messaging if a message was already sent. This could result in a double entry-like condition when sending tokens for example.
122
+ messageId ??= await this.ao.message({
117
123
  process: this.processId,
118
- // TODO: any other default tags we want to add?
119
124
  tags: [...tags, { name: 'AR-IO-SDK', value: version }],
120
125
  data,
121
126
  signer,
@@ -126,7 +131,6 @@ export class AOProcess {
126
131
  processId: this.processId,
127
132
  anchor,
128
133
  });
129
- // check the result of the send interaction
130
134
  result = await this.ao.result({
131
135
  message: messageId,
132
136
  process: this.processId,
@@ -153,7 +157,13 @@ export class AOProcess {
153
157
  processId: this.processId,
154
158
  });
155
159
  if (attempts >= retries) {
156
- throw error;
160
+ this.logger.error(`Maximum read result attempts exceeded`, {
161
+ error: error?.message,
162
+ stack: error?.stack,
163
+ tags,
164
+ processId: this.processId,
165
+ });
166
+ throw new Error(`Maximum read result attempts exceeded for process ${this.processId}.`);
157
167
  }
158
168
  // exponential backoff
159
169
  await new Promise((resolve) => setTimeout(resolve, 2 ** attempts * 2000));
@@ -14,4 +14,4 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  // AUTOMATICALLY GENERATED FILE - DO NOT TOUCH
17
- export const version = '3.9.0-alpha.3';
17
+ export const version = '3.9.0-alpha.4';
@@ -13,4 +13,4 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export declare const version = "3.9.0-alpha.2";
16
+ export declare const version = "3.9.0-alpha.3";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ar.io/sdk",
3
- "version": "3.9.0-alpha.3",
3
+ "version": "3.9.0-alpha.4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/ar-io/ar-io-sdk.git"