@bonfida/spl-name-service 2.0.5 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -21,7 +21,7 @@ function(t){const e=Rt(t);ft(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"
21
21
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
22
22
  function vo(t){return{hash:t,hmac:(e,...r)=>bo(t,e,A(...r)),randomBytes:B}}bo.create=(t,e)=>new wo(t,e);
23
23
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
24
- const _o=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),ko=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Eo=BigInt(1),So=BigInt(2),Ao=(t,e)=>(t+e/So)/e;const xo=Bt(_o,void 0,void 0,{sqrt:function(t){const e=_o,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),u=BigInt(88),c=t*t*t%e,h=c*c*t%e,l=Et(h,r,e)*h%e,f=Et(l,r,e)*h%e,d=Et(f,So,e)*c%e,p=Et(d,i,e)*d%e,y=Et(p,o,e)*p%e,g=Et(y,a,e)*y%e,m=Et(g,u,e)*g%e,w=Et(m,a,e)*y%e,b=Et(w,r,e)*h%e,v=Et(b,s,e)*p%e,_=Et(v,n,e)*c%e,k=Et(_,So,e);if(!xo.eql(xo.sqr(k),t))throw new Error("Cannot find square root");return k}}),Io=function(t,e){const r=e=>mo({...t,...vo(e)});return Object.freeze({...r(e),create:r})}({a:BigInt(0),b:BigInt(7),Fp:xo,n:ko,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=ko,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Eo*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Ao(o*t,e),u=Ao(-n*t,e);let c=_t(t-a*r-u*i,e),h=_t(-a*n-u*o,e);const l=c>s,f=h>s;if(l&&(c=e-c),f&&(h=e-h),c>s||h>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:c,k2neg:f,k2:h}}}},pe);BigInt(0),Io.ProjectivePoint;const Bo=Xt.utils.randomPrivateKey,Mo=()=>{const t=Xt.utils.randomPrivateKey(),e=Po(t),r=new Uint8Array(64);return r.set(t),r.set(e,32),{publicKey:e,secretKey:r}},Po=Xt.getPublicKey;function Lo(t){try{return Xt.ExtendedPoint.fromHex(t),!0}catch{return!1}}const Oo=(t,e)=>Xt.sign(t,e.slice(0,32)),To=Xt.verify,Ro=t=>n.Buffer.isBuffer(t)?t:t instanceof Uint8Array?n.Buffer.from(t.buffer,t.byteOffset,t.byteLength):n.Buffer.from(t);class Uo{constructor(t){Object.assign(this,t)}encode(){return n.Buffer.from(He(Co,this))}static decode(t){return Ge(Co,this,t)}static decodeUnchecked(t){return Te(Co,this,t)}}const Co=new Map;var No;let zo;const Do=32;let jo=1;zo=Symbol.toStringTag;class Wo extends Uo{constructor(t){if(super({}),this._bn=void 0,function(t){return void 0!==t._bn}(t))this._bn=t._bn;else{if("string"==typeof t){const e=ae.decode(t);if(e.length!=Do)throw new Error("Invalid public key input");this._bn=new ne(e)}else this._bn=new ne(t);if(this._bn.byteLength()>Do)throw new Error("Invalid public key input")}}static unique(){const t=new Wo(jo);return jo+=1,new Wo(t.toBuffer())}equals(t){return this._bn.eq(t._bn)}toBase58(){return ae.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){const t=this.toBuffer();return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}toBuffer(){const t=this._bn.toArrayLike(n.Buffer);if(t.length===Do)return t;const e=n.Buffer.alloc(32);return t.copy(e,32-t.length),e}get[zo](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(t,e,r){const i=n.Buffer.concat([t.toBuffer(),n.Buffer.from(e),r.toBuffer()]),o=pe(i);return new Wo(o)}static createProgramAddressSync(t,e){let r=n.Buffer.alloc(0);t.forEach((function(t){if(t.length>32)throw new TypeError("Max seed length exceeded");r=n.Buffer.concat([r,Ro(t)])})),r=n.Buffer.concat([r,e.toBuffer(),n.Buffer.from("ProgramDerivedAddress")]);const i=pe(r);if(Lo(i))throw new Error("Invalid seeds, address must fall off the curve");return new Wo(i)}static async createProgramAddress(t,e){return this.createProgramAddressSync(t,e)}static findProgramAddressSync(t,e){let r,i=255;for(;0!=i;){try{const o=t.concat(n.Buffer.from([i]));r=this.createProgramAddressSync(o,e)}catch(t){if(t instanceof TypeError)throw t;i--;continue}return[r,i]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(t,e){return this.findProgramAddressSync(t,e)}static isOnCurve(t){return Lo(new Wo(t).toBytes())}}No=Wo,Wo.default=new No("11111111111111111111111111111111"),Co.set(Wo,{kind:"struct",fields:[["_bn","u256"]]});const Fo=new Wo("BPFLoader1111111111111111111111111111111111"),Ko=1232,qo=127,Vo=64;class Ho extends Error{constructor(t){super(`Signature ${t} has expired: block height exceeded.`),this.signature=void 0,this.signature=t}}Object.defineProperty(Ho.prototype,"name",{value:"TransactionExpiredBlockheightExceededError"});class $o extends Error{constructor(t,e){super(`Transaction was not confirmed in ${e.toFixed(2)} seconds. It is unknown if it succeeded or failed. Check signature ${t} using the Solana Explorer or CLI tools.`),this.signature=void 0,this.signature=t}}Object.defineProperty($o.prototype,"name",{value:"TransactionExpiredTimeoutError"});class Zo extends Error{constructor(t){super(`Signature ${t} has expired: the nonce is no longer valid.`),this.signature=void 0,this.signature=t}}Object.defineProperty(Zo.prototype,"name",{value:"TransactionExpiredNonceInvalidError"});class Go{constructor(t,e){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=t,this.accountKeysFromLookups=e}keySegments(){const t=[this.staticAccountKeys];return this.accountKeysFromLookups&&(t.push(this.accountKeysFromLookups.writable),t.push(this.accountKeysFromLookups.readonly)),t}get(t){for(const e of this.keySegments()){if(t<e.length)return e[t];t-=e.length}}get length(){return this.keySegments().flat().length}compileInstructions(t){if(this.length>256)throw new Error("Account index overflow encountered during compilation");const e=new Map;this.keySegments().flat().forEach(((t,r)=>{e.set(t.toBase58(),r)}));const r=t=>{const r=e.get(t.toBase58());if(void 0===r)throw new Error("Encountered an unknown instruction account key during compilation");return r};return t.map((t=>({programIdIndex:r(t.programId),accountKeyIndexes:t.keys.map((t=>r(t.pubkey))),data:t.data})))}}const Yo=(t="publicKey")=>Fr(32,t),Jo=(t="signature")=>Fr(64,t),Xo=(t="string")=>{const e=jr([Nr("length"),Nr("lengthPadding"),Fr(Rr(Nr(),-8),"chars")],t),r=e.decode.bind(e),i=e.encode.bind(e),o=e;return o.decode=(t,e)=>r(t,e).chars.toString(),o.encode=(t,e,r)=>{const o={chars:n.Buffer.from(t,"utf8")};return i(o,e,r)},o.alloc=t=>Nr().span+Nr().span+n.Buffer.from(t,"utf8").length,o};function Qo(t,e){const r=t=>{if(t.span>=0)return t.span;if("function"==typeof t.alloc)return t.alloc(e[t.property]);if("count"in t&&"elementLayout"in t){const n=e[t.property];if(Array.isArray(n))return n.length*r(t.elementLayout)}else if("fields"in t)return Qo({layout:t},e[t.property]);return 0};let n=0;return t.layout.fields.forEach((t=>{n+=r(t)})),n}function ts(t){let e=0,r=0;for(;;){let n=t.shift();if(e|=(127&n)<<7*r,r+=1,0==(128&n))break}return e}function es(t,e){let r=e;for(;;){let e=127&r;if(r>>=7,0==r){t.push(e);break}e|=128,t.push(e)}}function rs(t,e){if(!t)throw new Error(e||"Assertion failed")}class ns{constructor(t,e){this.payer=void 0,this.keyMetaMap=void 0,this.payer=t,this.keyMetaMap=e}static compile(t,e){const r=new Map,n=t=>{const e=t.toBase58();let n=r.get(e);return void 0===n&&(n={isSigner:!1,isWritable:!1,isInvoked:!1},r.set(e,n)),n},i=n(e);i.isSigner=!0,i.isWritable=!0;for(const e of t){n(e.programId).isInvoked=!0;for(const t of e.keys){const e=n(t.pubkey);e.isSigner||=t.isSigner,e.isWritable||=t.isWritable}}return new ns(e,r)}getMessageComponents(){const t=[...this.keyMetaMap.entries()];rs(t.length<=256,"Max static account keys length exceeded");const e=t.filter((([,t])=>t.isSigner&&t.isWritable)),r=t.filter((([,t])=>t.isSigner&&!t.isWritable)),n=t.filter((([,t])=>!t.isSigner&&t.isWritable)),i=t.filter((([,t])=>!t.isSigner&&!t.isWritable)),o={numRequiredSignatures:e.length+r.length,numReadonlySignedAccounts:r.length,numReadonlyUnsignedAccounts:i.length};{rs(e.length>0,"Expected at least one writable signer key");const[t]=e[0];rs(t===this.payer.toBase58(),"Expected first writable signer key to be the fee payer")}return[o,[...e.map((([t])=>new Wo(t))),...r.map((([t])=>new Wo(t))),...n.map((([t])=>new Wo(t))),...i.map((([t])=>new Wo(t)))]]}extractTableLookup(t){const[e,r]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&t.isWritable)),[n,i]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&!t.isWritable));if(0!==e.length||0!==n.length)return[{accountKey:t.key,writableIndexes:e,readonlyIndexes:n},{writable:r,readonly:i}]}drainKeysFoundInLookupTable(t,e){const r=new Array,n=new Array;for(const[i,o]of this.keyMetaMap.entries())if(e(o)){const e=new Wo(i),o=t.findIndex((t=>t.equals(e)));o>=0&&(rs(o<256,"Max lookup table index exceeded"),r.push(o),n.push(e),this.keyMetaMap.delete(i))}return[r,n]}}class is{constructor(t){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=t.header,this.accountKeys=t.accountKeys.map((t=>new Wo(t))),this.recentBlockhash=t.recentBlockhash,this.instructions=t.instructions,this.instructions.forEach((t=>this.indexToProgramIds.set(t.programIdIndex,this.accountKeys[t.programIdIndex])))}get version(){return"legacy"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map((t=>({programIdIndex:t.programIdIndex,accountKeyIndexes:t.accounts,data:ae.decode(t.data)})))}get addressTableLookups(){return[]}getAccountKeys(){return new Go(this.staticAccountKeys)}static compile(t){const e=ns.compile(t.instructions,t.payerKey),[r,n]=e.getMessageComponents(),i=new Go(n).compileInstructions(t.instructions).map((t=>({programIdIndex:t.programIdIndex,accounts:t.accountKeyIndexes,data:ae.encode(t.data)})));return new is({header:r,accountKeys:n,recentBlockhash:t.recentBlockhash,instructions:i})}isAccountSigner(t){return t<this.header.numRequiredSignatures}isAccountWritable(t){const e=this.header.numRequiredSignatures;if(t>=this.header.numRequiredSignatures){return t-e<this.accountKeys.length-e-this.header.numReadonlyUnsignedAccounts}return t<e-this.header.numReadonlySignedAccounts}isProgramId(t){return this.indexToProgramIds.has(t)}programIds(){return[...this.indexToProgramIds.values()]}nonProgramIds(){return this.accountKeys.filter(((t,e)=>!this.isProgramId(e)))}serialize(){const t=this.accountKeys.length;let e=[];es(e,t);const r=this.instructions.map((t=>{const{accounts:e,programIdIndex:r}=t,i=Array.from(ae.decode(t.data));let o=[];es(o,e.length);let s=[];return es(s,i.length),{programIdIndex:r,keyIndicesCount:n.Buffer.from(o),keyIndices:e,dataLength:n.Buffer.from(s),data:i}}));let i=[];es(i,r.length);let o=n.Buffer.alloc(Ko);n.Buffer.from(i).copy(o);let s=i.length;r.forEach((t=>{const e=jr([Ur("programIdIndex"),Fr(t.keyIndicesCount.length,"keyIndicesCount"),Wr(Ur("keyIndex"),t.keyIndices.length,"keyIndices"),Fr(t.dataLength.length,"dataLength"),Wr(Ur("userdatum"),t.data.length,"data")]).encode(t,o,s);s+=e})),o=o.slice(0,s);const a=jr([Fr(1,"numRequiredSignatures"),Fr(1,"numReadonlySignedAccounts"),Fr(1,"numReadonlyUnsignedAccounts"),Fr(e.length,"keyCount"),Wr(Yo("key"),t,"keys"),Yo("recentBlockhash")]),u={numRequiredSignatures:n.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:n.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:n.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:n.Buffer.from(e),keys:this.accountKeys.map((t=>Ro(t.toBytes()))),recentBlockhash:ae.decode(this.recentBlockhash)};let c=n.Buffer.alloc(2048);const h=a.encode(u,c);return o.copy(c,h),c.slice(0,h+o.length)}static from(t){let e=[...t];const r=e.shift();if(r!==(r&qo))throw new Error("Versioned messages must be deserialized with VersionedMessage.deserialize()");const i=e.shift(),o=e.shift(),s=ts(e);let a=[];for(let t=0;t<s;t++){const t=e.slice(0,Do);e=e.slice(Do),a.push(new Wo(n.Buffer.from(t)))}const u=e.slice(0,Do);e=e.slice(Do);const c=ts(e);let h=[];for(let t=0;t<c;t++){const t=e.shift(),r=ts(e),i=e.slice(0,r);e=e.slice(r);const o=ts(e),s=e.slice(0,o),a=ae.encode(n.Buffer.from(s));e=e.slice(o),h.push({programIdIndex:t,accounts:i,data:a})}const l={header:{numRequiredSignatures:r,numReadonlySignedAccounts:i,numReadonlyUnsignedAccounts:o},recentBlockhash:ae.encode(n.Buffer.from(u)),accountKeys:a,instructions:h};return new is(l)}}class os{constructor(t){this.header=void 0,this.staticAccountKeys=void 0,this.recentBlockhash=void 0,this.compiledInstructions=void 0,this.addressTableLookups=void 0,this.header=t.header,this.staticAccountKeys=t.staticAccountKeys,this.recentBlockhash=t.recentBlockhash,this.compiledInstructions=t.compiledInstructions,this.addressTableLookups=t.addressTableLookups}get version(){return 0}get numAccountKeysFromLookups(){let t=0;for(const e of this.addressTableLookups)t+=e.readonlyIndexes.length+e.writableIndexes.length;return t}getAccountKeys(t){let e;if(t&&"accountKeysFromLookups"in t&&t.accountKeysFromLookups){if(this.numAccountKeysFromLookups!=t.accountKeysFromLookups.writable.length+t.accountKeysFromLookups.readonly.length)throw new Error("Failed to get account keys because of a mismatch in the number of account keys from lookups");e=t.accountKeysFromLookups}else if(t&&"addressLookupTableAccounts"in t&&t.addressLookupTableAccounts)e=this.resolveAddressTableLookups(t.addressLookupTableAccounts);else if(this.addressTableLookups.length>0)throw new Error("Failed to get account keys because address table lookups were not resolved");return new Go(this.staticAccountKeys,e)}isAccountSigner(t){return t<this.header.numRequiredSignatures}isAccountWritable(t){const e=this.header.numRequiredSignatures,r=this.staticAccountKeys.length;if(t>=r){const e=t-r,n=this.addressTableLookups.reduce(((t,e)=>t+e.writableIndexes.length),0);return e<n}if(t>=this.header.numRequiredSignatures){return t-e<r-e-this.header.numReadonlyUnsignedAccounts}return t<e-this.header.numReadonlySignedAccounts}resolveAddressTableLookups(t){const e={writable:[],readonly:[]};for(const r of this.addressTableLookups){const n=t.find((t=>t.key.equals(r.accountKey)));if(!n)throw new Error(`Failed to find address lookup table account for table key ${r.accountKey.toBase58()}`);for(const t of r.writableIndexes){if(!(t<n.state.addresses.length))throw new Error(`Failed to find address for index ${t} in address lookup table ${r.accountKey.toBase58()}`);e.writable.push(n.state.addresses[t])}for(const t of r.readonlyIndexes){if(!(t<n.state.addresses.length))throw new Error(`Failed to find address for index ${t} in address lookup table ${r.accountKey.toBase58()}`);e.readonly.push(n.state.addresses[t])}}return e}static compile(t){const e=ns.compile(t.instructions,t.payerKey),r=new Array,n={writable:new Array,readonly:new Array},i=t.addressLookupTableAccounts||[];for(const t of i){const i=e.extractTableLookup(t);if(void 0!==i){const[t,{writable:e,readonly:o}]=i;r.push(t),n.writable.push(...e),n.readonly.push(...o)}}const[o,s]=e.getMessageComponents(),a=new Go(s,n).compileInstructions(t.instructions);return new os({header:o,staticAccountKeys:s,recentBlockhash:t.recentBlockhash,compiledInstructions:a,addressTableLookups:r})}serialize(){const t=Array();es(t,this.staticAccountKeys.length);const e=this.serializeInstructions(),r=Array();es(r,this.compiledInstructions.length);const n=this.serializeAddressTableLookups(),i=Array();es(i,this.addressTableLookups.length);const o=jr([Ur("prefix"),jr([Ur("numRequiredSignatures"),Ur("numReadonlySignedAccounts"),Ur("numReadonlyUnsignedAccounts")],"header"),Fr(t.length,"staticAccountKeysLength"),Wr(Yo(),this.staticAccountKeys.length,"staticAccountKeys"),Yo("recentBlockhash"),Fr(r.length,"instructionsLength"),Fr(e.length,"serializedInstructions"),Fr(i.length,"addressTableLookupsLength"),Fr(n.length,"serializedAddressTableLookups")]),s=new Uint8Array(Ko),a=o.encode({prefix:128,header:this.header,staticAccountKeysLength:new Uint8Array(t),staticAccountKeys:this.staticAccountKeys.map((t=>t.toBytes())),recentBlockhash:ae.decode(this.recentBlockhash),instructionsLength:new Uint8Array(r),serializedInstructions:e,addressTableLookupsLength:new Uint8Array(i),serializedAddressTableLookups:n},s);return s.slice(0,a)}serializeInstructions(){let t=0;const e=new Uint8Array(Ko);for(const r of this.compiledInstructions){const n=Array();es(n,r.accountKeyIndexes.length);const i=Array();es(i,r.data.length);t+=jr([Ur("programIdIndex"),Fr(n.length,"encodedAccountKeyIndexesLength"),Wr(Ur(),r.accountKeyIndexes.length,"accountKeyIndexes"),Fr(i.length,"encodedDataLength"),Fr(r.data.length,"data")]).encode({programIdIndex:r.programIdIndex,encodedAccountKeyIndexesLength:new Uint8Array(n),accountKeyIndexes:r.accountKeyIndexes,encodedDataLength:new Uint8Array(i),data:r.data},e,t)}return e.slice(0,t)}serializeAddressTableLookups(){let t=0;const e=new Uint8Array(Ko);for(const r of this.addressTableLookups){const n=Array();es(n,r.writableIndexes.length);const i=Array();es(i,r.readonlyIndexes.length);t+=jr([Yo("accountKey"),Fr(n.length,"encodedWritableIndexesLength"),Wr(Ur(),r.writableIndexes.length,"writableIndexes"),Fr(i.length,"encodedReadonlyIndexesLength"),Wr(Ur(),r.readonlyIndexes.length,"readonlyIndexes")]).encode({accountKey:r.accountKey.toBytes(),encodedWritableIndexesLength:new Uint8Array(n),writableIndexes:r.writableIndexes,encodedReadonlyIndexesLength:new Uint8Array(i),readonlyIndexes:r.readonlyIndexes},e,t)}return e.slice(0,t)}static deserialize(t){let e=[...t];const r=e.shift(),n=r&qo;rs(r!==n,"Expected versioned message but received legacy message");rs(0===n,`Expected versioned message with version 0 but found version ${n}`);const i={numRequiredSignatures:e.shift(),numReadonlySignedAccounts:e.shift(),numReadonlyUnsignedAccounts:e.shift()},o=[],s=ts(e);for(let t=0;t<s;t++)o.push(new Wo(e.splice(0,Do)));const a=ae.encode(e.splice(0,Do)),u=ts(e),c=[];for(let t=0;t<u;t++){const t=e.shift(),r=ts(e),n=e.splice(0,r),i=ts(e),o=new Uint8Array(e.splice(0,i));c.push({programIdIndex:t,accountKeyIndexes:n,data:o})}const h=ts(e),l=[];for(let t=0;t<h;t++){const t=new Wo(e.splice(0,Do)),r=ts(e),n=e.splice(0,r),i=ts(e),o=e.splice(0,i);l.push({accountKey:t,writableIndexes:n,readonlyIndexes:o})}return new os({header:i,staticAccountKeys:o,recentBlockhash:a,compiledInstructions:c,addressTableLookups:l})}}const ss={deserializeMessageVersion(t){const e=t[0],r=e&qo;return r===e?"legacy":r},deserialize:t=>{const e=ss.deserializeMessageVersion(t);if("legacy"===e)return is.from(t);if(0===e)return os.deserialize(t);throw new Error(`Transaction message version ${e} deserialization is not supported`)}};let as=function(t){return t[t.BLOCKHEIGHT_EXCEEDED=0]="BLOCKHEIGHT_EXCEEDED",t[t.PROCESSED=1]="PROCESSED",t[t.TIMED_OUT=2]="TIMED_OUT",t[t.NONCE_INVALID=3]="NONCE_INVALID",t}({});const us=n.Buffer.alloc(Vo).fill(0);class cs{constructor(t){this.keys=void 0,this.programId=void 0,this.data=n.Buffer.alloc(0),this.programId=t.programId,this.keys=t.keys,t.data&&(this.data=t.data)}toJSON(){return{keys:this.keys.map((({pubkey:t,isSigner:e,isWritable:r})=>({pubkey:t.toJSON(),isSigner:e,isWritable:r}))),programId:this.programId.toJSON(),data:[...this.data]}}}class hs{get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(t){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,t)if(t.feePayer&&(this.feePayer=t.feePayer),t.signatures&&(this.signatures=t.signatures),Object.prototype.hasOwnProperty.call(t,"nonceInfo")){const{minContextSlot:e,nonceInfo:r}=t;this.minNonceContextSlot=e,this.nonceInfo=r}else if(Object.prototype.hasOwnProperty.call(t,"lastValidBlockHeight")){const{blockhash:e,lastValidBlockHeight:r}=t;this.recentBlockhash=e,this.lastValidBlockHeight=r}else{const{recentBlockhash:e,nonceInfo:r}=t;r&&(this.nonceInfo=r),this.recentBlockhash=e}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map((t=>t.toJSON())),signers:this.signatures.map((({publicKey:t})=>t.toJSON()))}}add(...t){if(0===t.length)throw new Error("No instructions");return t.forEach((t=>{"instructions"in t?this.instructions=this.instructions.concat(t.instructions):"data"in t&&"programId"in t&&"keys"in t?this.instructions.push(t):this.instructions.push(new cs(t))})),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let t,e,r;if(this.nonceInfo?(t=this.nonceInfo.nonce,e=this.instructions[0]!=this.nonceInfo.nonceInstruction?[this.nonceInfo.nonceInstruction,...this.instructions]:this.instructions):(t=this.recentBlockhash,e=this.instructions),!t)throw new Error("Transaction recentBlockhash required");if(e.length<1&&console.warn("No instructions provided"),this.feePayer)r=this.feePayer;else{if(!(this.signatures.length>0&&this.signatures[0].publicKey))throw new Error("Transaction fee payer required");r=this.signatures[0].publicKey}for(let t=0;t<e.length;t++)if(void 0===e[t].programId)throw new Error(`Transaction instruction index ${t} has undefined program id`);const n=[],i=[];e.forEach((t=>{t.keys.forEach((t=>{i.push({...t})}));const e=t.programId.toString();n.includes(e)||n.push(e)})),n.forEach((t=>{i.push({pubkey:new Wo(t),isSigner:!1,isWritable:!1})}));const o=[];i.forEach((t=>{const e=t.pubkey.toString(),r=o.findIndex((t=>t.pubkey.toString()===e));r>-1?(o[r].isWritable=o[r].isWritable||t.isWritable,o[r].isSigner=o[r].isSigner||t.isSigner):o.push(t)})),o.sort((function(t,e){if(t.isSigner!==e.isSigner)return t.isSigner?-1:1;if(t.isWritable!==e.isWritable)return t.isWritable?-1:1;return t.pubkey.toBase58().localeCompare(e.pubkey.toBase58(),"en",{localeMatcher:"best fit",usage:"sort",sensitivity:"variant",ignorePunctuation:!1,numeric:!1,caseFirst:"lower"})}));const s=o.findIndex((t=>t.pubkey.equals(r)));if(s>-1){const[t]=o.splice(s,1);t.isSigner=!0,t.isWritable=!0,o.unshift(t)}else o.unshift({pubkey:r,isSigner:!0,isWritable:!0});for(const t of this.signatures){const e=o.findIndex((e=>e.pubkey.equals(t.publicKey)));if(!(e>-1))throw new Error(`unknown signer: ${t.publicKey.toString()}`);o[e].isSigner||(o[e].isSigner=!0,console.warn("Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release."))}let a=0,u=0,c=0;const h=[],l=[];o.forEach((({pubkey:t,isSigner:e,isWritable:r})=>{e?(h.push(t.toString()),a+=1,r||(u+=1)):(l.push(t.toString()),r||(c+=1))}));const f=h.concat(l),d=e.map((t=>{const{data:e,programId:r}=t;return{programIdIndex:f.indexOf(r.toString()),accounts:t.keys.map((t=>f.indexOf(t.pubkey.toString()))),data:ae.encode(e)}}));return d.forEach((t=>{rs(t.programIdIndex>=0),t.accounts.forEach((t=>rs(t>=0)))})),new is({header:{numRequiredSignatures:a,numReadonlySignedAccounts:u,numReadonlyUnsignedAccounts:c},accountKeys:f,recentBlockhash:t,instructions:d})}_compile(){const t=this.compileMessage(),e=t.accountKeys.slice(0,t.header.numRequiredSignatures);if(this.signatures.length===e.length){const r=this.signatures.every(((t,r)=>e[r].equals(t.publicKey)));if(r)return t}return this.signatures=e.map((t=>({signature:null,publicKey:t}))),t}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(t){return(await t.getFeeForMessage(this.compileMessage())).value}setSigners(...t){if(0===t.length)throw new Error("No signers");const e=new Set;this.signatures=t.filter((t=>{const r=t.toString();return!e.has(r)&&(e.add(r),!0)})).map((t=>({signature:null,publicKey:t})))}sign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}this.signatures=r.map((t=>({signature:null,publicKey:t.publicKey})));const n=this._compile();this._partialSign(n,...r)}partialSign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}const n=this._compile();this._partialSign(n,...r)}_partialSign(t,...e){const r=t.serialize();e.forEach((t=>{const e=Oo(r,t.secretKey);this._addSignature(t.publicKey,Ro(e))}))}addSignature(t,e){this._compile(),this._addSignature(t,e)}_addSignature(t,e){rs(64===e.length);const r=this.signatures.findIndex((e=>t.equals(e.publicKey)));if(r<0)throw new Error(`unknown signer: ${t.toString()}`);this.signatures[r].signature=n.Buffer.from(e)}verifySignatures(t){return this._verifySignatures(this.serializeMessage(),void 0===t||t)}_verifySignatures(t,e){for(const{signature:r,publicKey:n}of this.signatures)if(null===r){if(e)return!1}else if(!To(r,t,n.toBytes()))return!1;return!0}serialize(t){const{requireAllSignatures:e,verifySignatures:r}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},t),n=this.serializeMessage();if(r&&!this._verifySignatures(n,e))throw new Error("Signature verification failed");return this._serialize(n)}_serialize(t){const{signatures:e}=this,r=[];es(r,e.length);const i=r.length+64*e.length+t.length,o=n.Buffer.alloc(i);return rs(e.length<256),n.Buffer.from(r).copy(o,0),e.forEach((({signature:t},e)=>{null!==t&&(rs(64===t.length,"signature has invalid length"),n.Buffer.from(t).copy(o,r.length+64*e))})),t.copy(o,r.length+64*e.length),rs(o.length<=Ko,`Transaction too large: ${o.length} > 1232`),o}get keys(){return rs(1===this.instructions.length),this.instructions[0].keys.map((t=>t.pubkey))}get programId(){return rs(1===this.instructions.length),this.instructions[0].programId}get data(){return rs(1===this.instructions.length),this.instructions[0].data}static from(t){let e=[...t];const r=ts(e);let i=[];for(let t=0;t<r;t++){const t=e.slice(0,Vo);e=e.slice(Vo),i.push(ae.encode(n.Buffer.from(t)))}return hs.populate(is.from(e),i)}static populate(t,e=[]){const r=new hs;return r.recentBlockhash=t.recentBlockhash,t.header.numRequiredSignatures>0&&(r.feePayer=t.accountKeys[0]),e.forEach(((e,n)=>{const i={signature:e==ae.encode(us)?null:ae.decode(e),publicKey:t.accountKeys[n]};r.signatures.push(i)})),t.instructions.forEach((e=>{const n=e.accounts.map((e=>{const n=t.accountKeys[e];return{pubkey:n,isSigner:r.signatures.some((t=>t.publicKey.toString()===n.toString()))||t.isAccountSigner(e),isWritable:t.isAccountWritable(e)}}));r.instructions.push(new cs({keys:n,programId:t.accountKeys[e.programIdIndex],data:ae.decode(e.data)}))})),r._message=t,r._json=r.toJSON(),r}}class ls{constructor(t){this.payerKey=void 0,this.instructions=void 0,this.recentBlockhash=void 0,this.payerKey=t.payerKey,this.instructions=t.instructions,this.recentBlockhash=t.recentBlockhash}static decompile(t,e){const{header:r,compiledInstructions:n,recentBlockhash:i}=t,{numRequiredSignatures:o,numReadonlySignedAccounts:s,numReadonlyUnsignedAccounts:a}=r,u=o-s;rs(u>0,"Message header is invalid");const c=t.staticAccountKeys.length-o-a;rs(c>=0,"Message header is invalid");const h=t.getAccountKeys(e),l=h.get(0);if(void 0===l)throw new Error("Failed to decompile message because no account keys were found");const f=[];for(const t of n){const e=[];for(const n of t.accountKeyIndexes){const t=h.get(n);if(void 0===t)throw new Error(`Failed to find key for account key index ${n}`);let i;i=n<o?n<u:n<h.staticAccountKeys.length?n-o<c:n-h.staticAccountKeys.length<h.accountKeysFromLookups.writable.length,e.push({pubkey:t,isSigner:n<r.numRequiredSignatures,isWritable:i})}const n=h.get(t.programIdIndex);if(void 0===n)throw new Error(`Failed to find program id for program id index ${t.programIdIndex}`);f.push(new cs({programId:n,data:Ro(t.data),keys:e}))}return new ls({payerKey:l,instructions:f,recentBlockhash:i})}compileToLegacyMessage(){return is.compile({payerKey:this.payerKey,recentBlockhash:this.recentBlockhash,instructions:this.instructions})}compileToV0Message(t){return os.compile({payerKey:this.payerKey,recentBlockhash:this.recentBlockhash,instructions:this.instructions,addressLookupTableAccounts:t})}}class fs{get version(){return this.message.version}constructor(t,e){if(this.signatures=void 0,this.message=void 0,void 0!==e)rs(e.length===t.header.numRequiredSignatures,"Expected signatures length to be equal to the number of required signatures"),this.signatures=e;else{const e=[];for(let r=0;r<t.header.numRequiredSignatures;r++)e.push(new Uint8Array(Vo));this.signatures=e}this.message=t}serialize(){const t=this.message.serialize(),e=Array();es(e,this.signatures.length);const r=jr([Fr(e.length,"encodedSignaturesLength"),Wr(Jo(),this.signatures.length,"signatures"),Fr(t.length,"serializedMessage")]),n=new Uint8Array(2048),i=r.encode({encodedSignaturesLength:new Uint8Array(e),signatures:this.signatures,serializedMessage:t},n);return n.slice(0,i)}static deserialize(t){let e=[...t];const r=[],n=ts(e);for(let t=0;t<n;t++)r.push(new Uint8Array(e.splice(0,Vo)));const i=ss.deserialize(new Uint8Array(e));return new fs(i,r)}sign(t){const e=this.message.serialize(),r=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures);for(const n of t){const t=r.findIndex((t=>t.equals(n.publicKey)));rs(t>=0,`Cannot sign with non signer key ${n.publicKey.toBase58()}`),this.signatures[t]=Oo(e,n.secretKey)}}addSignature(t,e){rs(64===e.byteLength,"Signature must be 64 bytes long");const r=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures).findIndex((e=>e.equals(t)));rs(r>=0,`Can not add signature; \`${t.toBase58()}\` is not required to sign this transaction`),this.signatures[r]=e}}const ds=new Wo("SysvarC1ock11111111111111111111111111111111"),ps=new Wo("SysvarEpochSchedu1e111111111111111111111111"),ys=new Wo("Sysvar1nstructions1111111111111111111111111"),gs=new Wo("SysvarRecentB1ockHashes11111111111111111111"),ms=new Wo("SysvarRent111111111111111111111111111111111"),ws=new Wo("SysvarRewards111111111111111111111111111111"),bs=new Wo("SysvarS1otHashes111111111111111111111111111"),vs=new Wo("SysvarS1otHistory11111111111111111111111111"),_s=new Wo("SysvarStakeHistory1111111111111111111111111");async function ks(t,e,r,n){const i=n&&{skipPreflight:n.skipPreflight,preflightCommitment:n.preflightCommitment||n.commitment,maxRetries:n.maxRetries,minContextSlot:n.minContextSlot},o=await t.sendTransaction(e,r,i);let s;if(null!=e.recentBlockhash&&null!=e.lastValidBlockHeight)s=(await t.confirmTransaction({abortSignal:n?.abortSignal,signature:o,blockhash:e.recentBlockhash,lastValidBlockHeight:e.lastValidBlockHeight},n&&n.commitment)).value;else if(null!=e.minNonceContextSlot&&null!=e.nonceInfo){const{nonceInstruction:r}=e.nonceInfo,i=r.keys[0].pubkey;s=(await t.confirmTransaction({abortSignal:n?.abortSignal,minContextSlot:e.minNonceContextSlot,nonceAccountPubkey:i,nonceValue:e.nonceInfo.nonce,signature:o},n&&n.commitment)).value}else null!=n?.abortSignal&&console.warn("sendAndConfirmTransaction(): A transaction with a deprecated confirmation strategy was supplied along with an `abortSignal`. Only transactions having `lastValidBlockHeight` or a combination of `nonceInfo` and `minNonceContextSlot` are abortable."),s=(await t.confirmTransaction(o,n&&n.commitment)).value;if(s.err)throw new Error(`Transaction ${o} failed (${JSON.stringify(s)})`);return o}function Es(t){return new Promise((e=>setTimeout(e,t)))}function Ss(t,e){const r=t.layout.span>=0?t.layout.span:Qo(t,e),i=n.Buffer.alloc(r),o=Object.assign({instruction:t.index},e);return t.layout.encode(o,i),i}function As(t,e){let r;try{r=t.layout.decode(e)}catch(t){throw new Error("invalid instruction; "+t)}if(r.instruction!==t.index)throw new Error(`invalid instruction; instruction index mismatch ${r.instruction} != ${t.index}`);return r}const xs=zr("lamportsPerSignature"),Is=jr([Nr("version"),Nr("state"),Yo("authorizedPubkey"),Yo("nonce"),jr([xs],"feeCalculator")]),Bs=Is.span;class Ms{constructor(t){this.authorizedPubkey=void 0,this.nonce=void 0,this.feeCalculator=void 0,this.authorizedPubkey=t.authorizedPubkey,this.nonce=t.nonce,this.feeCalculator=t.feeCalculator}static fromAccountData(t){const e=Is.decode(Ro(t),0);return new Ms({authorizedPubkey:new Wo(e.authorizedPubkey),nonce:new Wo(e.nonce).toString(),feeCalculator:e.feeCalculator})}}const Ps=(Ls=8,t=>{const e=Fr(Ls,t),{encode:r,decode:i}=(t=>({decode:t.decode.bind(t),encode:t.encode.bind(t)}))(e),o=e;return o.decode=(t,e)=>{const r=i(t,e);return qr(n.Buffer.from(r))},o.encode=(t,e,n)=>{const i=Hr(t,Ls);return r(i,e,n)},o});var Ls;const Os=Object.freeze({Create:{index:0,layout:jr([Nr("instruction"),Dr("lamports"),Dr("space"),Yo("programId")])},Assign:{index:1,layout:jr([Nr("instruction"),Yo("programId")])},Transfer:{index:2,layout:jr([Nr("instruction"),Ps("lamports")])},CreateWithSeed:{index:3,layout:jr([Nr("instruction"),Yo("base"),Xo("seed"),Dr("lamports"),Dr("space"),Yo("programId")])},AdvanceNonceAccount:{index:4,layout:jr([Nr("instruction")])},WithdrawNonceAccount:{index:5,layout:jr([Nr("instruction"),Dr("lamports")])},InitializeNonceAccount:{index:6,layout:jr([Nr("instruction"),Yo("authorized")])},AuthorizeNonceAccount:{index:7,layout:jr([Nr("instruction"),Yo("authorized")])},Allocate:{index:8,layout:jr([Nr("instruction"),Dr("space")])},AllocateWithSeed:{index:9,layout:jr([Nr("instruction"),Yo("base"),Xo("seed"),Dr("space"),Yo("programId")])},AssignWithSeed:{index:10,layout:jr([Nr("instruction"),Yo("base"),Xo("seed"),Yo("programId")])},TransferWithSeed:{index:11,layout:jr([Nr("instruction"),Ps("lamports"),Xo("seed"),Yo("programId")])},UpgradeNonceAccount:{index:12,layout:jr([Nr("instruction")])}});class Ts{constructor(){}static createAccount(t){const e=Ss(Os.Create,{lamports:t.lamports,space:t.space,programId:Ro(t.programId.toBuffer())});return new cs({keys:[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!0,isWritable:!0}],programId:this.programId,data:e})}static transfer(t){let e,r;if("basePubkey"in t){e=Ss(Os.TransferWithSeed,{lamports:BigInt(t.lamports),seed:t.seed,programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.fromPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]}else{e=Ss(Os.Transfer,{lamports:BigInt(t.lamports)}),r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]}return new cs({keys:r,programId:this.programId,data:e})}static assign(t){let e,r;if("basePubkey"in t){e=Ss(Os.AssignWithSeed,{base:Ro(t.basePubkey.toBuffer()),seed:t.seed,programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]}else{e=Ss(Os.Assign,{programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]}return new cs({keys:r,programId:this.programId,data:e})}static createAccountWithSeed(t){const e=Ss(Os.CreateWithSeed,{base:Ro(t.basePubkey.toBuffer()),seed:t.seed,lamports:t.lamports,space:t.space,programId:Ro(t.programId.toBuffer())});let r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!1,isWritable:!0}];return t.basePubkey!=t.fromPubkey&&r.push({pubkey:t.basePubkey,isSigner:!0,isWritable:!1}),new cs({keys:r,programId:this.programId,data:e})}static createNonceAccount(t){const e=new hs;"basePubkey"in t&&"seed"in t?e.add(Ts.createAccountWithSeed({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,basePubkey:t.basePubkey,seed:t.seed,lamports:t.lamports,space:Bs,programId:this.programId})):e.add(Ts.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,lamports:t.lamports,space:Bs,programId:this.programId}));const r={noncePubkey:t.noncePubkey,authorizedPubkey:t.authorizedPubkey};return e.add(this.nonceInitialize(r)),e}static nonceInitialize(t){const e=Ss(Os.InitializeNonceAccount,{authorized:Ro(t.authorizedPubkey.toBuffer())}),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:gs,isSigner:!1,isWritable:!1},{pubkey:ms,isSigner:!1,isWritable:!1}],programId:this.programId,data:e};return new cs(r)}static nonceAdvance(t){const e=Ss(Os.AdvanceNonceAccount),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:gs,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e};return new cs(r)}static nonceWithdraw(t){const e=Ss(Os.WithdrawNonceAccount,{lamports:t.lamports});return new cs({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0},{pubkey:gs,isSigner:!1,isWritable:!1},{pubkey:ms,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static nonceAuthorize(t){const e=Ss(Os.AuthorizeNonceAccount,{authorized:Ro(t.newAuthorizedPubkey.toBuffer())});return new cs({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static allocate(t){let e,r;if("basePubkey"in t){e=Ss(Os.AllocateWithSeed,{base:Ro(t.basePubkey.toBuffer()),seed:t.seed,space:t.space,programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]}else{e=Ss(Os.Allocate,{space:t.space}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]}return new cs({keys:r,programId:this.programId,data:e})}}Ts.programId=new Wo("11111111111111111111111111111111");class Rs{constructor(){}static getMinNumSignatures(t){return 2*(Math.ceil(t/Rs.chunkSize)+1+1)}static async load(t,e,r,i,o){{const n=await t.getMinimumBalanceForRentExemption(o.length),s=await t.getAccountInfo(r.publicKey,"confirmed");let a=null;if(null!==s){if(s.executable)return console.error("Program load failed, account is already executable"),!1;s.data.length!==o.length&&(a=a||new hs,a.add(Ts.allocate({accountPubkey:r.publicKey,space:o.length}))),s.owner.equals(i)||(a=a||new hs,a.add(Ts.assign({accountPubkey:r.publicKey,programId:i}))),s.lamports<n&&(a=a||new hs,a.add(Ts.transfer({fromPubkey:e.publicKey,toPubkey:r.publicKey,lamports:n-s.lamports})))}else a=(new hs).add(Ts.createAccount({fromPubkey:e.publicKey,newAccountPubkey:r.publicKey,lamports:n>0?n:1,space:o.length,programId:i}));null!==a&&await ks(t,a,[e,r],{commitment:"confirmed"})}const s=jr([Nr("instruction"),Nr("offset"),Nr("bytesLength"),Nr("bytesLengthPadding"),Wr(Ur("byte"),Rr(Nr(),-8),"bytes")]),a=Rs.chunkSize;let u=0,c=o,h=[];for(;c.length>0;){const o=c.slice(0,a),l=n.Buffer.alloc(a+16);s.encode({instruction:0,offset:u,bytes:o,bytesLength:0,bytesLengthPadding:0},l);const f=(new hs).add({keys:[{pubkey:r.publicKey,isSigner:!0,isWritable:!0}],programId:i,data:l});if(h.push(ks(t,f,[e,r],{commitment:"confirmed"})),t._rpcEndpoint.includes("solana.com")){const t=4;await Es(1e3/t)}u+=a,c=c.slice(a)}await Promise.all(h);{const o=jr([Nr("instruction")]),s=n.Buffer.alloc(o.span);o.encode({instruction:1},s);const a=(new hs).add({keys:[{pubkey:r.publicKey,isSigner:!0,isWritable:!0},{pubkey:ms,isSigner:!1,isWritable:!1}],programId:i,data:s}),u="processed",c=await t.sendTransaction(a,[e,r],{preflightCommitment:u}),{context:h,value:l}=await t.confirmTransaction({signature:c,lastValidBlockHeight:a.lastValidBlockHeight,blockhash:a.recentBlockhash},u);if(l.err)throw new Error(`Transaction ${c} failed (${JSON.stringify(l)})`);for(;;){try{if(await t.getSlot({commitment:u})>h.slot)break}catch{}await new Promise((t=>setTimeout(t,Math.round(200))))}}return!0}}Rs.chunkSize=932;const Us=new Wo("BPFLoader2111111111111111111111111111111111");function Cs(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ns=Object.prototype.toString,zs=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};function Ds(t,e){var r,n,i,o,s,a,u;if(!0===t)return"true";if(!1===t)return"false";switch(typeof t){case"object":if(null===t)return null;if(t.toJSON&&"function"==typeof t.toJSON)return Ds(t.toJSON(),e);if("[object Array]"===(u=Ns.call(t))){for(i="[",n=t.length-1,r=0;r<n;r++)i+=Ds(t[r],!0)+",";return n>-1&&(i+=Ds(t[r],!0)),i+"]"}if("[object Object]"===u){for(n=(o=zs(t).sort()).length,i="",r=0;r<n;)void 0!==(a=Ds(t[s=o[r]],!1))&&(i&&(i+=","),i+=JSON.stringify(s)+":"+a),r++;return"{"+i+"}"}return JSON.stringify(t);case"function":case"undefined":return e?null:void 0;case"string":return JSON.stringify(t);default:return isFinite(t)?t:null}}var js=Cs((function(t){var e=Ds(t,!1);if(void 0!==e)return""+e}));function Ws(t){let e=0;for(;t>1;)t/=2,e++;return e}class Fs{constructor(t,e,r,n,i){this.slotsPerEpoch=void 0,this.leaderScheduleSlotOffset=void 0,this.warmup=void 0,this.firstNormalEpoch=void 0,this.firstNormalSlot=void 0,this.slotsPerEpoch=t,this.leaderScheduleSlotOffset=e,this.warmup=r,this.firstNormalEpoch=n,this.firstNormalSlot=i}getEpoch(t){return this.getEpochAndSlotIndex(t)[0]}getEpochAndSlotIndex(t){if(t<this.firstNormalSlot){const e=Ws(function(t){return 0===t?1:(t--,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,1+(t|=t>>32))}(t+32+1))-Ws(32)-1;return[e,t-(this.getSlotsInEpoch(e)-32)]}{const e=t-this.firstNormalSlot,r=Math.floor(e/this.slotsPerEpoch);return[this.firstNormalEpoch+r,e%this.slotsPerEpoch]}}getFirstSlotInEpoch(t){return t<=this.firstNormalEpoch?32*(Math.pow(2,t)-1):(t-this.firstNormalEpoch)*this.slotsPerEpoch+this.firstNormalSlot}getLastSlotInEpoch(t){return this.getFirstSlotInEpoch(t)+this.getSlotsInEpoch(t)-1}getSlotsInEpoch(t){return t<this.firstNormalEpoch?Math.pow(2,t+Ws(32)):this.slotsPerEpoch}}class Ks extends Error{constructor(t,e){super(t),this.logs=void 0,this.logs=e}}class qs extends Error{constructor({code:t,message:e,data:r},n){super(null!=n?`${n}: ${e}`:e),this.code=void 0,this.data=void 0,this.code=t,this.data=r,this.name="SolanaJSONRPCError"}}var Vs=globalThis.fetch;class Hs extends Vi{constructor(t,e,r){super((t=>{const r=$i(t,{autoconnect:!0,max_reconnects:5,reconnect:!0,reconnect_interval:1e3,...e});return this.underlyingSocket="socket"in r?r.socket:r,r}),t,e,r),this.underlyingSocket=void 0}call(...t){const e=this.underlyingSocket?.readyState;return 1===e?super.call(...t):Promise.reject(new Error("Tried to call a JSON-RPC method `"+t[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+e+")"))}notify(...t){const e=this.underlyingSocket?.readyState;return 1===e?super.notify(...t):Promise.reject(new Error("Tried to send a JSON-RPC notification `"+t[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+e+")"))}}class $s{constructor(t){this.key=void 0,this.state=void 0,this.key=t.key,this.state=t.state}isActive(){const t=BigInt("0xffffffffffffffff");return this.state.deactivationSlot===t}static deserialize(t){const e=function(t,e){let r;try{r=t.layout.decode(e)}catch(t){throw new Error("invalid instruction; "+t)}if(r.typeIndex!==t.index)throw new Error(`invalid account data; account type mismatch ${r.typeIndex} != ${t.index}`);return r}(Zs,t),r=t.length-56;rs(r>=0,"lookup table is invalid"),rs(r%32==0,"lookup table is invalid");const n=r/32,{addresses:i}=jr([Wr(Yo(),n,"addresses")]).decode(t.slice(56));return{deactivationSlot:e.deactivationSlot,lastExtendedSlot:e.lastExtendedSlot,lastExtendedSlotStartIndex:e.lastExtendedStartIndex,authority:0!==e.authority.length?new Wo(e.authority[0]):void 0,addresses:i.map((t=>new Wo(t)))}}}const Zs={index:1,layout:jr([Nr("typeIndex"),Ps("deactivationSlot"),zr("lastExtendedSlot"),Ur("lastExtendedStartIndex"),Ur(),Wr(Yo(),Rr(Ur(),-1),"authority")])},Gs=/^[^:]+:\/\/([^:[]+|\[[^\]]+\])(:\d+)?(.*)/i;const Ys=bn(un(Wo),pn(),(t=>new Wo(t))),Js=yn([pn(),cn("base64")]),Xs=bn(un(n.Buffer),Js,(t=>n.Buffer.from(t[0],"base64")));function Qs(t){let e,r;if("string"==typeof t)e=t;else if(t){const{commitment:n,...i}=t;e=n,r=i}return{commitment:e,config:r}}function ta(t){return mn([gn({jsonrpc:cn("2.0"),id:pn(),result:t}),gn({jsonrpc:cn("2.0"),id:pn(),error:gn({code:wn(),message:pn(),data:fn(on("any",(()=>!0)))})})])}const ea=ta(wn());function ra(t){return bn(ta(t),ea,(e=>"error"in e?e:{...e,result:en(e.result,t)}))}function na(t){return ra(gn({context:gn({slot:ln()}),value:t}))}function ia(t){return gn({context:gn({slot:ln()}),value:t})}function oa(t,e){return 0===t?new os({header:e.header,staticAccountKeys:e.accountKeys.map((t=>new Wo(t))),recentBlockhash:e.recentBlockhash,compiledInstructions:e.instructions.map((t=>({programIdIndex:t.programIdIndex,accountKeyIndexes:t.accounts,data:ae.decode(t.data)}))),addressTableLookups:e.addressTableLookups}):new is(e)}const sa=gn({foundation:ln(),foundationTerm:ln(),initial:ln(),taper:ln(),terminal:ln()}),aa=ra(sn(hn(gn({epoch:ln(),effectiveSlot:ln(),amount:ln(),postBalance:ln(),commission:fn(hn(ln()))})))),ua=sn(gn({slot:ln(),prioritizationFee:ln()})),ca=gn({total:ln(),validator:ln(),foundation:ln(),epoch:ln()}),ha=gn({epoch:ln(),slotIndex:ln(),slotsInEpoch:ln(),absoluteSlot:ln(),blockHeight:fn(ln()),transactionCount:fn(ln())}),la=gn({slotsPerEpoch:ln(),leaderScheduleSlotOffset:ln(),warmup:an(),firstNormalEpoch:ln(),firstNormalSlot:ln()}),fa=dn(pn(),sn(ln())),da=hn(mn([gn({}),pn()])),pa=gn({err:da}),ya=cn("receivedSignature"),ga=gn({"solana-core":pn(),"feature-set":fn(ln())}),ma=na(gn({err:hn(mn([gn({}),pn()])),logs:hn(sn(pn())),accounts:fn(hn(sn(hn(gn({executable:an(),owner:pn(),lamports:ln(),data:sn(pn()),rentEpoch:fn(ln())}))))),unitsConsumed:fn(ln()),returnData:fn(hn(gn({programId:pn(),data:yn([pn(),cn("base64")])})))})),wa=na(gn({byIdentity:dn(pn(),sn(ln())),range:gn({firstSlot:ln(),lastSlot:ln()})}));const ba=ra(sa),va=ra(ca),_a=ra(ua),ka=ra(ha),Ea=ra(la),Sa=ra(fa),Aa=ra(ln()),xa=na(gn({total:ln(),circulating:ln(),nonCirculating:ln(),nonCirculatingAccounts:sn(Ys)})),Ia=gn({amount:pn(),uiAmount:hn(ln()),decimals:ln(),uiAmountString:fn(pn())}),Ba=na(sn(gn({address:Ys,amount:pn(),uiAmount:hn(ln()),decimals:ln(),uiAmountString:fn(pn())}))),Ma=na(sn(gn({pubkey:Ys,account:gn({executable:an(),owner:Ys,lamports:ln(),data:Xs,rentEpoch:ln()})}))),Pa=gn({program:pn(),parsed:wn(),space:ln()}),La=na(sn(gn({pubkey:Ys,account:gn({executable:an(),owner:Ys,lamports:ln(),data:Pa,rentEpoch:ln()})}))),Oa=na(sn(gn({lamports:ln(),address:Ys}))),Ta=gn({executable:an(),owner:Ys,lamports:ln(),data:Xs,rentEpoch:ln()}),Ra=gn({pubkey:Ys,account:Ta}),Ua=bn(mn([un(n.Buffer),Pa]),mn([Js,Pa]),(t=>Array.isArray(t)?en(t,Xs):t)),Ca=gn({executable:an(),owner:Ys,lamports:ln(),data:Ua,rentEpoch:ln()}),Na=gn({pubkey:Ys,account:Ca}),za=gn({state:mn([cn("active"),cn("inactive"),cn("activating"),cn("deactivating")]),active:ln(),inactive:ln()}),Da=ra(sn(gn({signature:pn(),slot:ln(),err:da,memo:hn(pn()),blockTime:fn(hn(ln()))}))),ja=ra(sn(gn({signature:pn(),slot:ln(),err:da,memo:hn(pn()),blockTime:fn(hn(ln()))}))),Wa=gn({subscription:ln(),result:ia(Ta)}),Fa=gn({pubkey:Ys,account:Ta}),Ka=gn({subscription:ln(),result:ia(Fa)}),qa=gn({parent:ln(),slot:ln(),root:ln()}),Va=gn({subscription:ln(),result:qa}),Ha=mn([gn({type:mn([cn("firstShredReceived"),cn("completed"),cn("optimisticConfirmation"),cn("root")]),slot:ln(),timestamp:ln()}),gn({type:cn("createdBank"),parent:ln(),slot:ln(),timestamp:ln()}),gn({type:cn("frozen"),slot:ln(),timestamp:ln(),stats:gn({numTransactionEntries:ln(),numSuccessfulTransactions:ln(),numFailedTransactions:ln(),maxTransactionsPerEntry:ln()})}),gn({type:cn("dead"),slot:ln(),timestamp:ln(),err:pn()})]),$a=gn({subscription:ln(),result:Ha}),Za=gn({subscription:ln(),result:ia(mn([pa,ya]))}),Ga=gn({subscription:ln(),result:ln()}),Ya=gn({pubkey:pn(),gossip:hn(pn()),tpu:hn(pn()),rpc:hn(pn()),version:hn(pn())}),Ja=gn({votePubkey:pn(),nodePubkey:pn(),activatedStake:ln(),epochVoteAccount:an(),epochCredits:sn(yn([ln(),ln(),ln()])),commission:ln(),lastVote:ln(),rootSlot:hn(ln())}),Xa=ra(gn({current:sn(Ja),delinquent:sn(Ja)})),Qa=mn([cn("processed"),cn("confirmed"),cn("finalized")]),tu=gn({slot:ln(),confirmations:hn(ln()),err:da,confirmationStatus:fn(Qa)}),eu=na(sn(hn(tu))),ru=ra(ln()),nu=gn({accountKey:Ys,writableIndexes:sn(ln()),readonlyIndexes:sn(ln())}),iu=gn({signatures:sn(pn()),message:gn({accountKeys:sn(pn()),header:gn({numRequiredSignatures:ln(),numReadonlySignedAccounts:ln(),numReadonlyUnsignedAccounts:ln()}),instructions:sn(gn({accounts:sn(ln()),data:pn(),programIdIndex:ln()})),recentBlockhash:pn(),addressTableLookups:fn(sn(nu))})}),ou=gn({pubkey:Ys,signer:an(),writable:an(),source:fn(mn([cn("transaction"),cn("lookupTable")]))}),su=gn({accountKeys:sn(ou),signatures:sn(pn())}),au=gn({parsed:wn(),program:pn(),programId:Ys}),uu=gn({accounts:sn(Ys),data:pn(),programId:Ys}),cu=bn(mn([uu,au]),mn([gn({parsed:wn(),program:pn(),programId:pn()}),gn({accounts:sn(pn()),data:pn(),programId:pn()})]),(t=>en(t,"accounts"in t?uu:au))),hu=gn({signatures:sn(pn()),message:gn({accountKeys:sn(ou),instructions:sn(cu),recentBlockhash:pn(),addressTableLookups:fn(hn(sn(nu)))})}),lu=gn({accountIndex:ln(),mint:pn(),owner:fn(pn()),uiTokenAmount:Ia}),fu=gn({writable:sn(Ys),readonly:sn(Ys)}),du=gn({err:da,fee:ln(),innerInstructions:fn(hn(sn(gn({index:ln(),instructions:sn(gn({accounts:sn(ln()),data:pn(),programIdIndex:ln()}))})))),preBalances:sn(ln()),postBalances:sn(ln()),logMessages:fn(hn(sn(pn()))),preTokenBalances:fn(hn(sn(lu))),postTokenBalances:fn(hn(sn(lu))),loadedAddresses:fn(fu),computeUnitsConsumed:fn(ln())}),pu=gn({err:da,fee:ln(),innerInstructions:fn(hn(sn(gn({index:ln(),instructions:sn(cu)})))),preBalances:sn(ln()),postBalances:sn(ln()),logMessages:fn(hn(sn(pn()))),preTokenBalances:fn(hn(sn(lu))),postTokenBalances:fn(hn(sn(lu))),loadedAddresses:fn(fu),computeUnitsConsumed:fn(ln())}),yu=mn([cn(0),cn("legacy")]),gu=gn({pubkey:pn(),lamports:ln(),postBalance:hn(ln()),rewardType:hn(pn()),commission:fn(hn(ln()))}),mu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:iu,meta:hn(du),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),wu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),bu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:su,meta:hn(du),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),vu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:hu,meta:hn(pu),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),_u=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:su,meta:hn(pu),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),ku=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),Eu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:iu,meta:hn(du)})),rewards:fn(sn(gu)),blockTime:hn(ln())}))),Su=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),signatures:sn(pn()),blockTime:hn(ln())}))),Au=ra(hn(gn({slot:ln(),meta:hn(du),blockTime:fn(hn(ln())),transaction:iu,version:fn(yu)}))),xu=ra(hn(gn({slot:ln(),transaction:hu,meta:hn(pu),blockTime:fn(hn(ln())),version:fn(yu)}))),Iu=na(gn({blockhash:pn(),feeCalculator:gn({lamportsPerSignature:ln()})})),Bu=na(gn({blockhash:pn(),lastValidBlockHeight:ln()})),Mu=na(an()),Pu=ra(sn(gn({slot:ln(),numTransactions:ln(),numSlots:ln(),samplePeriodSecs:ln()}))),Lu=na(hn(gn({feeCalculator:gn({lamportsPerSignature:ln()})}))),Ou=ra(pn()),Tu=ra(pn()),Ru=gn({err:da,logs:sn(pn()),signature:pn()}),Uu=gn({result:ia(Ru),subscription:ln()}),Cu={"solana-client":"js/0.0.0-development"};class Nu{constructor(t){this._keypair=void 0,this._keypair=t??Mo()}static generate(){return new Nu(Mo())}static fromSecretKey(t,e){if(64!==t.byteLength)throw new Error("bad secret key size");const r=t.slice(32,64);if(!e||!e.skipValidation){const e=t.slice(0,32),n=Po(e);for(let t=0;t<32;t++)if(r[t]!==n[t])throw new Error("provided secretKey is invalid")}return new Nu({publicKey:r,secretKey:t})}static fromSeed(t){const e=Po(t),r=new Uint8Array(64);return r.set(t),r.set(e,32),new Nu({publicKey:e,secretKey:r})}get publicKey(){return new Wo(this._keypair.publicKey)}get secretKey(){return new Uint8Array(this._keypair.secretKey)}}const zu=Object.freeze({CreateLookupTable:{index:0,layout:jr([Nr("instruction"),Ps("recentSlot"),Ur("bumpSeed")])},FreezeLookupTable:{index:1,layout:jr([Nr("instruction")])},ExtendLookupTable:{index:2,layout:jr([Nr("instruction"),Ps(),Wr(Yo(),Rr(Nr(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:jr([Nr("instruction")])},CloseLookupTable:{index:4,layout:jr([Nr("instruction")])}});class Du{constructor(){}static createLookupTable(t){const[e,r]=Wo.findProgramAddressSync([t.authority.toBuffer(),Hr(BigInt(t.recentSlot),8)],this.programId),n=Ss(zu.CreateLookupTable,{recentSlot:BigInt(t.recentSlot),bumpSeed:r}),i=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1},{pubkey:t.payer,isSigner:!0,isWritable:!0},{pubkey:Ts.programId,isSigner:!1,isWritable:!1}];return[new cs({programId:this.programId,keys:i,data:n}),e]}static freezeLookupTable(t){const e=Ss(zu.FreezeLookupTable),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1}];return new cs({programId:this.programId,keys:r,data:e})}static extendLookupTable(t){const e=Ss(zu.ExtendLookupTable,{addresses:t.addresses.map((t=>t.toBytes()))}),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1}];return t.payer&&r.push({pubkey:t.payer,isSigner:!0,isWritable:!0},{pubkey:Ts.programId,isSigner:!1,isWritable:!1}),new cs({programId:this.programId,keys:r,data:e})}static deactivateLookupTable(t){const e=Ss(zu.DeactivateLookupTable),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1}];return new cs({programId:this.programId,keys:r,data:e})}static closeLookupTable(t){const e=Ss(zu.CloseLookupTable),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1},{pubkey:t.recipient,isSigner:!1,isWritable:!0}];return new cs({programId:this.programId,keys:r,data:e})}}Du.programId=new Wo("AddressLookupTab1e1111111111111111111111111");const ju=Object.freeze({RequestUnits:{index:0,layout:jr([Ur("instruction"),Nr("units"),Nr("additionalFee")])},RequestHeapFrame:{index:1,layout:jr([Ur("instruction"),Nr("bytes")])},SetComputeUnitLimit:{index:2,layout:jr([Ur("instruction"),Nr("units")])},SetComputeUnitPrice:{index:3,layout:jr([Ur("instruction"),Ps("microLamports")])}});class Wu{constructor(){}static requestUnits(t){const e=Ss(ju.RequestUnits,t);return new cs({keys:[],programId:this.programId,data:e})}static requestHeapFrame(t){const e=Ss(ju.RequestHeapFrame,t);return new cs({keys:[],programId:this.programId,data:e})}static setComputeUnitLimit(t){const e=Ss(ju.SetComputeUnitLimit,t);return new cs({keys:[],programId:this.programId,data:e})}static setComputeUnitPrice(t){const e=Ss(ju.SetComputeUnitPrice,{microLamports:BigInt(t.microLamports)});return new cs({keys:[],programId:this.programId,data:e})}}Wu.programId=new Wo("ComputeBudget111111111111111111111111111111");const Fu=jr([Ur("numSignatures"),Ur("padding"),Cr("signatureOffset"),Cr("signatureInstructionIndex"),Cr("publicKeyOffset"),Cr("publicKeyInstructionIndex"),Cr("messageDataOffset"),Cr("messageDataSize"),Cr("messageInstructionIndex")]);class Ku{constructor(){}static createInstructionWithPublicKey(t){const{publicKey:e,message:r,signature:i,instructionIndex:o}=t;rs(32===e.length,`Public Key must be 32 bytes but received ${e.length} bytes`),rs(64===i.length,`Signature must be 64 bytes but received ${i.length} bytes`);const s=Fu.span,a=s+e.length,u=a+i.length,c=n.Buffer.alloc(u+r.length),h=null==o?65535:o;return Fu.encode({numSignatures:1,padding:0,signatureOffset:a,signatureInstructionIndex:h,publicKeyOffset:s,publicKeyInstructionIndex:h,messageDataOffset:u,messageDataSize:r.length,messageInstructionIndex:h},c),c.fill(e,s),c.fill(i,a),c.fill(r,u),new cs({keys:[],programId:Ku.programId,data:c})}static createInstructionWithPrivateKey(t){const{privateKey:e,message:r,instructionIndex:n}=t;rs(64===e.length,`Private key must be 64 bytes but received ${e.length} bytes`);try{const t=Nu.fromSecretKey(e),i=t.publicKey.toBytes(),o=Oo(r,t.secretKey);return this.createInstructionWithPublicKey({publicKey:i,message:r,signature:o,instructionIndex:n})}catch(t){throw new Error(`Error creating instruction; ${t}`)}}}Ku.programId=new Wo("Ed25519SigVerify111111111111111111111111111");Io.utils.isValidPrivateKey;const qu=Io.getPublicKey,Vu=jr([Ur("numSignatures"),Cr("signatureOffset"),Ur("signatureInstructionIndex"),Cr("ethAddressOffset"),Ur("ethAddressInstructionIndex"),Cr("messageDataOffset"),Cr("messageDataSize"),Ur("messageInstructionIndex"),Fr(20,"ethAddress"),Fr(64,"signature"),Ur("recoveryId")]);class Hu{constructor(){}static publicKeyToEthAddress(t){rs(64===t.length,`Public key must be 64 bytes but received ${t.length} bytes`);try{return n.Buffer.from(uo(Ro(t))).slice(-20)}catch(t){throw new Error(`Error constructing Ethereum address: ${t}`)}}static createInstructionWithPublicKey(t){const{publicKey:e,message:r,signature:n,recoveryId:i,instructionIndex:o}=t;return Hu.createInstructionWithEthAddress({ethAddress:Hu.publicKeyToEthAddress(e),message:r,signature:n,recoveryId:i,instructionIndex:o})}static createInstructionWithEthAddress(t){const{ethAddress:e,message:r,signature:i,recoveryId:o,instructionIndex:s=0}=t;let a;a="string"==typeof e?e.startsWith("0x")?n.Buffer.from(e.substr(2),"hex"):n.Buffer.from(e,"hex"):e,rs(20===a.length,`Address must be 20 bytes but received ${a.length} bytes`);const u=12+a.length,c=u+i.length+1,h=n.Buffer.alloc(Vu.span+r.length);return Vu.encode({numSignatures:1,signatureOffset:u,signatureInstructionIndex:s,ethAddressOffset:12,ethAddressInstructionIndex:s,messageDataOffset:c,messageDataSize:r.length,messageInstructionIndex:s,signature:Ro(i),ethAddress:Ro(a),recoveryId:o},h),h.fill(Ro(r),Vu.span),new cs({keys:[],programId:Hu.programId,data:h})}static createInstructionWithPrivateKey(t){const{privateKey:e,message:r,instructionIndex:i}=t;rs(32===e.length,`Private key must be 32 bytes but received ${e.length} bytes`);try{const t=Ro(e),o=qu(t,!1).slice(1),s=n.Buffer.from(uo(Ro(r))),[a,u]=((t,e)=>{const r=Io.sign(t,e);return[r.toCompactRawBytes(),r.recovery]})(s,t);return this.createInstructionWithPublicKey({publicKey:o,message:r,signature:a,recoveryId:u,instructionIndex:i})}catch(t){throw new Error(`Error creating instruction; ${t}`)}}}var $u;Hu.programId=new Wo("KeccakSecp256k11111111111111111111111111111");const Zu=new Wo("StakeConfig11111111111111111111111111111111");class Gu{constructor(t,e){this.staker=void 0,this.withdrawer=void 0,this.staker=t,this.withdrawer=e}}class Yu{constructor(t,e,r){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=t,this.epoch=e,this.custodian=r}}$u=Yu,Yu.default=new $u(0,0,Wo.default);const Ju=Object.freeze({Initialize:{index:0,layout:jr([Nr("instruction"),((t="authorized")=>jr([Yo("staker"),Yo("withdrawer")],t))(),((t="lockup")=>jr([Dr("unixTimestamp"),Dr("epoch"),Yo("custodian")],t))()])},Authorize:{index:1,layout:jr([Nr("instruction"),Yo("newAuthorized"),Nr("stakeAuthorizationType")])},Delegate:{index:2,layout:jr([Nr("instruction")])},Split:{index:3,layout:jr([Nr("instruction"),Dr("lamports")])},Withdraw:{index:4,layout:jr([Nr("instruction"),Dr("lamports")])},Deactivate:{index:5,layout:jr([Nr("instruction")])},Merge:{index:7,layout:jr([Nr("instruction")])},AuthorizeWithSeed:{index:8,layout:jr([Nr("instruction"),Yo("newAuthorized"),Nr("stakeAuthorizationType"),Xo("authoritySeed"),Yo("authorityOwner")])}}),Xu=Object.freeze({Staker:{index:0},Withdrawer:{index:1}});class Qu{constructor(){}static initialize(t){const{stakePubkey:e,authorized:r,lockup:n}=t,i=n||Yu.default,o=Ss(Ju.Initialize,{authorized:{staker:Ro(r.staker.toBuffer()),withdrawer:Ro(r.withdrawer.toBuffer())},lockup:{unixTimestamp:i.unixTimestamp,epoch:i.epoch,custodian:Ro(i.custodian.toBuffer())}}),s={keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ms,isSigner:!1,isWritable:!1}],programId:this.programId,data:o};return new cs(s)}static createAccountWithSeed(t){const e=new hs;e.add(Ts.createAccountWithSeed({fromPubkey:t.fromPubkey,newAccountPubkey:t.stakePubkey,basePubkey:t.basePubkey,seed:t.seed,lamports:t.lamports,space:this.space,programId:this.programId}));const{stakePubkey:r,authorized:n,lockup:i}=t;return e.add(this.initialize({stakePubkey:r,authorized:n,lockup:i}))}static createAccount(t){const e=new hs;e.add(Ts.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.stakePubkey,lamports:t.lamports,space:this.space,programId:this.programId}));const{stakePubkey:r,authorized:n,lockup:i}=t;return e.add(this.initialize({stakePubkey:r,authorized:n,lockup:i}))}static delegate(t){const{stakePubkey:e,authorizedPubkey:r,votePubkey:n}=t,i=Ss(Ju.Delegate);return(new hs).add({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:_s,isSigner:!1,isWritable:!1},{pubkey:Zu,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:i})}static authorize(t){const{stakePubkey:e,authorizedPubkey:r,newAuthorizedPubkey:n,stakeAuthorizationType:i,custodianPubkey:o}=t,s=Ss(Ju.Authorize,{newAuthorized:Ro(n.toBuffer()),stakeAuthorizationType:i.index}),a=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}];return o&&a.push({pubkey:o,isSigner:!1,isWritable:!1}),(new hs).add({keys:a,programId:this.programId,data:s})}static authorizeWithSeed(t){const{stakePubkey:e,authorityBase:r,authoritySeed:n,authorityOwner:i,newAuthorizedPubkey:o,stakeAuthorizationType:s,custodianPubkey:a}=t,u=Ss(Ju.AuthorizeWithSeed,{newAuthorized:Ro(o.toBuffer()),stakeAuthorizationType:s.index,authoritySeed:n,authorityOwner:Ro(i.toBuffer())}),c=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1},{pubkey:ds,isSigner:!1,isWritable:!1}];return a&&c.push({pubkey:a,isSigner:!1,isWritable:!1}),(new hs).add({keys:c,programId:this.programId,data:u})}static splitInstruction(t){const{stakePubkey:e,authorizedPubkey:r,splitStakePubkey:n,lamports:i}=t,o=Ss(Ju.Split,{lamports:i});return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:o})}static split(t){const e=new hs;return e.add(Ts.createAccount({fromPubkey:t.authorizedPubkey,newAccountPubkey:t.splitStakePubkey,lamports:0,space:this.space,programId:this.programId})),e.add(this.splitInstruction(t))}static splitWithSeed(t){const{stakePubkey:e,authorizedPubkey:r,splitStakePubkey:n,basePubkey:i,seed:o,lamports:s}=t,a=new hs;return a.add(Ts.allocate({accountPubkey:n,basePubkey:i,seed:o,space:this.space,programId:this.programId})),a.add(this.splitInstruction({stakePubkey:e,authorizedPubkey:r,splitStakePubkey:n,lamports:s}))}static merge(t){const{stakePubkey:e,sourceStakePubKey:r,authorizedPubkey:n}=t,i=Ss(Ju.Merge);return(new hs).add({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:_s,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!0,isWritable:!1}],programId:this.programId,data:i})}static withdraw(t){const{stakePubkey:e,authorizedPubkey:r,toPubkey:n,lamports:i,custodianPubkey:o}=t,s=Ss(Ju.Withdraw,{lamports:i}),a=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:_s,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return o&&a.push({pubkey:o,isSigner:!1,isWritable:!1}),(new hs).add({keys:a,programId:this.programId,data:s})}static deactivate(t){const{stakePubkey:e,authorizedPubkey:r}=t,n=Ss(Ju.Deactivate);return(new hs).add({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:n})}}Qu.programId=new Wo("Stake11111111111111111111111111111111111111"),Qu.space=200;class tc{constructor(t,e,r,n){this.nodePubkey=void 0,this.authorizedVoter=void 0,this.authorizedWithdrawer=void 0,this.commission=void 0,this.nodePubkey=t,this.authorizedVoter=e,this.authorizedWithdrawer=r,this.commission=n}}const ec=Object.freeze({InitializeAccount:{index:0,layout:jr([Nr("instruction"),((t="voteInit")=>jr([Yo("nodePubkey"),Yo("authorizedVoter"),Yo("authorizedWithdrawer"),Ur("commission")],t))()])},Authorize:{index:1,layout:jr([Nr("instruction"),Yo("newAuthorized"),Nr("voteAuthorizationType")])},Withdraw:{index:3,layout:jr([Nr("instruction"),Dr("lamports")])},AuthorizeWithSeed:{index:10,layout:jr([Nr("instruction"),((t="voteAuthorizeWithSeedArgs")=>jr([Nr("voteAuthorizationType"),Yo("currentAuthorityDerivedKeyOwnerPubkey"),Xo("currentAuthorityDerivedKeySeed"),Yo("newAuthorized")],t))()])}}),rc=Object.freeze({Voter:{index:0},Withdrawer:{index:1}});class nc{constructor(){}static initializeAccount(t){const{votePubkey:e,nodePubkey:r,voteInit:n}=t,i=Ss(ec.InitializeAccount,{voteInit:{nodePubkey:Ro(n.nodePubkey.toBuffer()),authorizedVoter:Ro(n.authorizedVoter.toBuffer()),authorizedWithdrawer:Ro(n.authorizedWithdrawer.toBuffer()),commission:n.commission}}),o={keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ms,isSigner:!1,isWritable:!1},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:i};return new cs(o)}static createAccount(t){const e=new hs;return e.add(Ts.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.votePubkey,lamports:t.lamports,space:this.space,programId:this.programId})),e.add(this.initializeAccount({votePubkey:t.votePubkey,nodePubkey:t.voteInit.nodePubkey,voteInit:t.voteInit}))}static authorize(t){const{votePubkey:e,authorizedPubkey:r,newAuthorizedPubkey:n,voteAuthorizationType:i}=t,o=Ss(ec.Authorize,{newAuthorized:Ro(n.toBuffer()),voteAuthorizationType:i.index}),s=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return(new hs).add({keys:s,programId:this.programId,data:o})}static authorizeWithSeed(t){const{currentAuthorityDerivedKeyBasePubkey:e,currentAuthorityDerivedKeyOwnerPubkey:r,currentAuthorityDerivedKeySeed:n,newAuthorizedPubkey:i,voteAuthorizationType:o,votePubkey:s}=t,a=Ss(ec.AuthorizeWithSeed,{voteAuthorizeWithSeedArgs:{currentAuthorityDerivedKeyOwnerPubkey:Ro(r.toBuffer()),currentAuthorityDerivedKeySeed:n,newAuthorized:Ro(i.toBuffer()),voteAuthorizationType:o.index}}),u=[{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:e,isSigner:!0,isWritable:!1}];return(new hs).add({keys:u,programId:this.programId,data:a})}static withdraw(t){const{votePubkey:e,authorizedWithdrawerPubkey:r,lamports:n,toPubkey:i}=t,o=Ss(ec.Withdraw,{lamports:n}),s=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}];return(new hs).add({keys:s,programId:this.programId,data:o})}static safeWithdraw(t,e,r){if(t.lamports>e-r)throw new Error("Withdraw will leave vote account with insuffcient funds.");return nc.withdraw(t)}}nc.programId=new Wo("Vote111111111111111111111111111111111111111"),nc.space=3731;const ic=new Wo("Va1idator1nfo111111111111111111111111111111"),oc=gn({name:pn(),website:fn(pn()),details:fn(pn()),keybaseUsername:fn(pn())});class sc{constructor(t,e){this.key=void 0,this.info=void 0,this.key=t,this.info=e}static fromConfigData(t){let e=[...t];if(2!==ts(e))return null;const r=[];for(let t=0;t<2;t++){const t=new Wo(e.slice(0,Do));e=e.slice(Do);const n=1===e.slice(0,1)[0];e=e.slice(1),r.push({publicKey:t,isSigner:n})}if(r[0].publicKey.equals(ic)&&r[1].isSigner){const t=Xo().decode(n.Buffer.from(e)),i=JSON.parse(t);return tn(i,oc),new sc(r[1].publicKey,i)}return null}}const ac=new Wo("Vote111111111111111111111111111111111111111"),uc=jr([Yo("nodePubkey"),Yo("authorizedWithdrawer"),Ur("commission"),zr(),Wr(jr([zr("slot"),Nr("confirmationCount")]),Rr(Nr(),-8),"votes"),Ur("rootSlotValid"),zr("rootSlot"),zr(),Wr(jr([zr("epoch"),Yo("authorizedVoter")]),Rr(Nr(),-8),"authorizedVoters"),jr([Wr(jr([Yo("authorizedPubkey"),zr("epochOfLastAuthorizedSwitch"),zr("targetEpoch")]),32,"buf"),zr("idx"),Ur("isEmpty")],"priorVoters"),zr(),Wr(jr([zr("epoch"),zr("credits"),zr("prevCredits")]),Rr(Nr(),-8),"epochCredits"),jr([zr("slot"),zr("timestamp")],"lastTimestamp")]);class cc{constructor(t){this.nodePubkey=void 0,this.authorizedWithdrawer=void 0,this.commission=void 0,this.rootSlot=void 0,this.votes=void 0,this.authorizedVoters=void 0,this.priorVoters=void 0,this.epochCredits=void 0,this.lastTimestamp=void 0,this.nodePubkey=t.nodePubkey,this.authorizedWithdrawer=t.authorizedWithdrawer,this.commission=t.commission,this.rootSlot=t.rootSlot,this.votes=t.votes,this.authorizedVoters=t.authorizedVoters,this.priorVoters=t.priorVoters,this.epochCredits=t.epochCredits,this.lastTimestamp=t.lastTimestamp}static fromAccountData(t){const e=uc.decode(Ro(t),4);let r=e.rootSlot;return e.rootSlotValid||(r=null),new cc({nodePubkey:new Wo(e.nodePubkey),authorizedWithdrawer:new Wo(e.authorizedWithdrawer),commission:e.commission,votes:e.votes,rootSlot:r,authorizedVoters:e.authorizedVoters.map(hc),priorVoters:fc(e.priorVoters),epochCredits:e.epochCredits,lastTimestamp:e.lastTimestamp})}}function hc({authorizedVoter:t,epoch:e}){return{epoch:e,authorizedVoter:new Wo(t)}}function lc({authorizedPubkey:t,epochOfLastAuthorizedSwitch:e,targetEpoch:r}){return{authorizedPubkey:new Wo(t),epochOfLastAuthorizedSwitch:e,targetEpoch:r}}function fc({buf:t,idx:e,isEmpty:r}){return r?[]:[...t.slice(e+1).map(lc),...t.slice(0,e).map(lc)]}const dc={http:{devnet:"http://api.devnet.solana.com",testnet:"http://api.testnet.solana.com","mainnet-beta":"http://api.mainnet-beta.solana.com/"},https:{devnet:"https://api.devnet.solana.com",testnet:"https://api.testnet.solana.com","mainnet-beta":"https://api.mainnet-beta.solana.com/"}};var pc=Object.freeze({__proto__:null,Account:class{constructor(t){if(this._publicKey=void 0,this._secretKey=void 0,t){const e=Ro(t);if(64!==t.length)throw new Error("bad secret key size");this._publicKey=e.slice(32,64),this._secretKey=e.slice(0,32)}else this._secretKey=Ro(Bo()),this._publicKey=Ro(Po(this._secretKey))}get publicKey(){return new Wo(this._publicKey)}get secretKey(){return n.Buffer.concat([this._secretKey,this._publicKey],64)}},AddressLookupTableAccount:$s,AddressLookupTableInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(zu))if(n.index==e){r=t;break}if(!r)throw new Error("Invalid Instruction. Should be a LookupTable Instruction");return r}static decodeCreateLookupTable(t){this.checkProgramId(t.programId),this.checkKeysLength(t.keys,4);const{recentSlot:e}=As(zu.CreateLookupTable,t.data);return{authority:t.keys[1].pubkey,payer:t.keys[2].pubkey,recentSlot:Number(e)}}static decodeExtendLookupTable(t){if(this.checkProgramId(t.programId),t.keys.length<2)throw new Error(`invalid instruction; found ${t.keys.length} keys, expected at least 2`);const{addresses:e}=As(zu.ExtendLookupTable,t.data);return{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey,payer:t.keys.length>2?t.keys[2].pubkey:void 0,addresses:e.map((t=>new Wo(t)))}}static decodeCloseLookupTable(t){return this.checkProgramId(t.programId),this.checkKeysLength(t.keys,3),{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey,recipient:t.keys[2].pubkey}}static decodeFreezeLookupTable(t){return this.checkProgramId(t.programId),this.checkKeysLength(t.keys,2),{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey}}static decodeDeactivateLookupTable(t){return this.checkProgramId(t.programId),this.checkKeysLength(t.keys,2),{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey}}static checkProgramId(t){if(!t.equals(Du.programId))throw new Error("invalid instruction; programId is not AddressLookupTable Program")}static checkKeysLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},AddressLookupTableProgram:Du,Authorized:Gu,BLOCKHASH_CACHE_TIMEOUT_MS:3e4,BPF_LOADER_DEPRECATED_PROGRAM_ID:Fo,BPF_LOADER_PROGRAM_ID:Us,BpfLoader:class{static getMinNumSignatures(t){return Rs.getMinNumSignatures(t)}static load(t,e,r,n,i){return Rs.load(t,e,r,i,n)}},COMPUTE_BUDGET_INSTRUCTION_LAYOUTS:ju,ComputeBudgetInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Ur("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(ju))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a ComputeBudgetInstruction");return r}static decodeRequestUnits(t){this.checkProgramId(t.programId);const{units:e,additionalFee:r}=As(ju.RequestUnits,t.data);return{units:e,additionalFee:r}}static decodeRequestHeapFrame(t){this.checkProgramId(t.programId);const{bytes:e}=As(ju.RequestHeapFrame,t.data);return{bytes:e}}static decodeSetComputeUnitLimit(t){this.checkProgramId(t.programId);const{units:e}=As(ju.SetComputeUnitLimit,t.data);return{units:e}}static decodeSetComputeUnitPrice(t){this.checkProgramId(t.programId);const{microLamports:e}=As(ju.SetComputeUnitPrice,t.data);return{microLamports:e}}static checkProgramId(t){if(!t.equals(Wu.programId))throw new Error("invalid instruction; programId is not ComputeBudgetProgram")}},ComputeBudgetProgram:Wu,Connection:class{constructor(t,e){let r,n,i,o,s,a;this._commitment=void 0,this._confirmTransactionInitialTimeout=void 0,this._rpcEndpoint=void 0,this._rpcWsEndpoint=void 0,this._rpcClient=void 0,this._rpcRequest=void 0,this._rpcBatchRequest=void 0,this._rpcWebSocket=void 0,this._rpcWebSocketConnected=!1,this._rpcWebSocketHeartbeat=null,this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketGeneration=0,this._disableBlockhashCaching=!1,this._pollingBlockhash=!1,this._blockhashInfo={latestBlockhash:null,lastFetch:0,transactionSignatures:[],simulatedSignatures:[]},this._nextClientSubscriptionId=0,this._subscriptionDisposeFunctionsByClientSubscriptionId={},this._subscriptionHashByClientSubscriptionId={},this._subscriptionStateChangeCallbacksByHash={},this._subscriptionCallbacksByServerSubscriptionId={},this._subscriptionsByHash={},this._subscriptionsAutoDisposedByRpc=new Set,this.getBlockHeight=(()=>{const t={};return async e=>{const{commitment:r,config:n}=Qs(e),i=this._buildArgs([],r,void 0,n),o=js(i);return t[o]=t[o]??(async()=>{try{const t=en(await this._rpcRequest("getBlockHeight",i),ra(ln()));if("error"in t)throw new qs(t.error,"failed to get block height information");return t.result}finally{delete t[o]}})(),await t[o]}})(),e&&"string"==typeof e?this._commitment=e:e&&(this._commitment=e.commitment,this._confirmTransactionInitialTimeout=e.confirmTransactionInitialTimeout,r=e.wsEndpoint,n=e.httpHeaders,i=e.fetch,o=e.fetchMiddleware,s=e.disableRetryOnRateLimit,a=e.httpAgent),this._rpcEndpoint=function(t){if(!1===/^https?:/.test(t))throw new TypeError("Endpoint URL must start with `http:` or `https:`.");return t}(t),this._rpcWsEndpoint=r||function(t){const e=t.match(Gs);if(null==e)throw TypeError(`Failed to validate endpoint URL \`${t}\``);const[r,n,i,o]=e,s=t.startsWith("https:")?"wss:":"ws:",a=null==i?null:parseInt(i.slice(1),10);return`${s}//${n}${null==a?"":`:${a+1}`}${o}`}(t),this._rpcClient=function(t,e,r,n,i,o){const s=r||Vs;let a;null!=o&&console.warn("You have supplied an `httpAgent` when creating a `Connection` in a browser environment.It has been ignored; `httpAgent` is only used in Node environments."),n&&(a=async(t,e)=>{const r=await new Promise(((r,i)=>{try{n(t,e,((t,e)=>r([t,e])))}catch(t){i(t)}}));return await s(...r)});const u=new ei((async(r,n)=>{const o={method:"POST",body:r,agent:void 0,headers:Object.assign({"Content-Type":"application/json"},e||{},Cu)};try{let e,r=5,u=500;for(;e=a?await a(t,o):await s(t,o),429===e.status&&!0!==i&&(r-=1,0!==r);)console.log(`Server responded with ${e.status} ${e.statusText}. Retrying after ${u}ms delay...`),await Es(u),u*=2;const c=await e.text();e.ok?n(null,c):n(new Error(`${e.status} ${e.statusText}: ${c}`))}catch(t){t instanceof Error&&n(t)}}),{});return u}(t,n,i,o,s,a),this._rpcRequest=function(t){return(e,r)=>new Promise(((n,i)=>{t.request(e,r,((t,e)=>{t?i(t):n(e)}))}))}(this._rpcClient),this._rpcBatchRequest=function(t){return e=>new Promise(((r,n)=>{0===e.length&&r([]);const i=e.map((e=>t.request(e.methodName,e.args)));t.request(i,((t,e)=>{t?n(t):r(e)}))}))}(this._rpcClient),this._rpcWebSocket=new Hs(this._rpcWsEndpoint,{autoconnect:!1,max_reconnects:1/0}),this._rpcWebSocket.on("open",this._wsOnOpen.bind(this)),this._rpcWebSocket.on("error",this._wsOnError.bind(this)),this._rpcWebSocket.on("close",this._wsOnClose.bind(this)),this._rpcWebSocket.on("accountNotification",this._wsOnAccountNotification.bind(this)),this._rpcWebSocket.on("programNotification",this._wsOnProgramAccountNotification.bind(this)),this._rpcWebSocket.on("slotNotification",this._wsOnSlotNotification.bind(this)),this._rpcWebSocket.on("slotsUpdatesNotification",this._wsOnSlotUpdatesNotification.bind(this)),this._rpcWebSocket.on("signatureNotification",this._wsOnSignatureNotification.bind(this)),this._rpcWebSocket.on("rootNotification",this._wsOnRootNotification.bind(this)),this._rpcWebSocket.on("logsNotification",this._wsOnLogsNotification.bind(this))}get commitment(){return this._commitment}get rpcEndpoint(){return this._rpcEndpoint}async getBalanceAndContext(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,void 0,n),o=en(await this._rpcRequest("getBalance",i),na(ln()));if("error"in o)throw new qs(o.error,`failed to get balance for ${t.toBase58()}`);return o.result}async getBalance(t,e){return await this.getBalanceAndContext(t,e).then((t=>t.value)).catch((e=>{throw new Error("failed to get balance of account "+t.toBase58()+": "+e)}))}async getBlockTime(t){const e=en(await this._rpcRequest("getBlockTime",[t]),ra(hn(ln())));if("error"in e)throw new qs(e.error,`failed to get block time for slot ${t}`);return e.result}async getMinimumLedgerSlot(){const t=en(await this._rpcRequest("minimumLedgerSlot",[]),ra(ln()));if("error"in t)throw new qs(t.error,"failed to get minimum ledger slot");return t.result}async getFirstAvailableBlock(){const t=en(await this._rpcRequest("getFirstAvailableBlock",[]),Aa);if("error"in t)throw new qs(t.error,"failed to get first available block");return t.result}async getSupply(t){let e={};e="string"==typeof t?{commitment:t}:t?{...t,commitment:t&&t.commitment||this.commitment}:{commitment:this.commitment};const r=en(await this._rpcRequest("getSupply",[e]),xa);if("error"in r)throw new qs(r.error,"failed to get supply");return r.result}async getTokenSupply(t,e){const r=this._buildArgs([t.toBase58()],e),n=en(await this._rpcRequest("getTokenSupply",r),na(Ia));if("error"in n)throw new qs(n.error,"failed to get token supply");return n.result}async getTokenAccountBalance(t,e){const r=this._buildArgs([t.toBase58()],e),n=en(await this._rpcRequest("getTokenAccountBalance",r),na(Ia));if("error"in n)throw new qs(n.error,"failed to get token account balance");return n.result}async getTokenAccountsByOwner(t,e,r){const{commitment:n,config:i}=Qs(r);let o=[t.toBase58()];"mint"in e?o.push({mint:e.mint.toBase58()}):o.push({programId:e.programId.toBase58()});const s=this._buildArgs(o,n,"base64",i),a=en(await this._rpcRequest("getTokenAccountsByOwner",s),Ma);if("error"in a)throw new qs(a.error,`failed to get token accounts owned by account ${t.toBase58()}`);return a.result}async getParsedTokenAccountsByOwner(t,e,r){let n=[t.toBase58()];"mint"in e?n.push({mint:e.mint.toBase58()}):n.push({programId:e.programId.toBase58()});const i=this._buildArgs(n,r,"jsonParsed"),o=en(await this._rpcRequest("getTokenAccountsByOwner",i),La);if("error"in o)throw new qs(o.error,`failed to get token accounts owned by account ${t.toBase58()}`);return o.result}async getLargestAccounts(t){const e={...t,commitment:t&&t.commitment||this.commitment},r=e.filter||e.commitment?[e]:[],n=en(await this._rpcRequest("getLargestAccounts",r),Oa);if("error"in n)throw new qs(n.error,"failed to get largest accounts");return n.result}async getTokenLargestAccounts(t,e){const r=this._buildArgs([t.toBase58()],e),n=en(await this._rpcRequest("getTokenLargestAccounts",r),Ba);if("error"in n)throw new qs(n.error,"failed to get token largest accounts");return n.result}async getAccountInfoAndContext(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,"base64",n),o=en(await this._rpcRequest("getAccountInfo",i),na(hn(Ta)));if("error"in o)throw new qs(o.error,`failed to get info about account ${t.toBase58()}`);return o.result}async getParsedAccountInfo(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,"jsonParsed",n),o=en(await this._rpcRequest("getAccountInfo",i),na(hn(Ca)));if("error"in o)throw new qs(o.error,`failed to get info about account ${t.toBase58()}`);return o.result}async getAccountInfo(t,e){try{return(await this.getAccountInfoAndContext(t,e)).value}catch(e){throw new Error("failed to get info about account "+t.toBase58()+": "+e)}}async getMultipleParsedAccounts(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>t.toBase58())),o=this._buildArgs([i],r,"jsonParsed",n),s=en(await this._rpcRequest("getMultipleAccounts",o),na(sn(hn(Ca))));if("error"in s)throw new qs(s.error,`failed to get info for accounts ${i}`);return s.result}async getMultipleAccountsInfoAndContext(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>t.toBase58())),o=this._buildArgs([i],r,"base64",n),s=en(await this._rpcRequest("getMultipleAccounts",o),na(sn(hn(Ta))));if("error"in s)throw new qs(s.error,`failed to get info for accounts ${i}`);return s.result}async getMultipleAccountsInfo(t,e){return(await this.getMultipleAccountsInfoAndContext(t,e)).value}async getStakeActivation(t,e,r){const{commitment:n,config:i}=Qs(e),o=this._buildArgs([t.toBase58()],n,void 0,{...i,epoch:null!=r?r:i?.epoch}),s=en(await this._rpcRequest("getStakeActivation",o),ra(za));if("error"in s)throw new qs(s.error,`failed to get Stake Activation ${t.toBase58()}`);return s.result}async getProgramAccounts(t,e){const{commitment:r,config:n}=Qs(e),{encoding:i,...o}=n||{},s=this._buildArgs([t.toBase58()],r,i||"base64",o),a=await this._rpcRequest("getProgramAccounts",s),u=sn(Ra),c=!0===o.withContext?en(a,na(u)):en(a,ra(u));if("error"in c)throw new qs(c.error,`failed to get accounts owned by program ${t.toBase58()}`);return c.result}async getParsedProgramAccounts(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,"jsonParsed",n),o=en(await this._rpcRequest("getProgramAccounts",i),ra(sn(Na)));if("error"in o)throw new qs(o.error,`failed to get accounts owned by program ${t.toBase58()}`);return o.result}async confirmTransaction(t,e){let r,n;if("string"==typeof t)r=t;else{const e=t;if(e.abortSignal?.aborted)return Promise.reject(e.abortSignal.reason);r=e.signature}try{n=ae.decode(r)}catch(t){throw new Error("signature must be base58 encoded: "+r)}return rs(64===n.length,"signature has invalid length"),"string"==typeof t?await this.confirmTransactionUsingLegacyTimeoutStrategy({commitment:e||this.commitment,signature:r}):"lastValidBlockHeight"in t?await this.confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:e||this.commitment,strategy:t}):await this.confirmTransactionUsingDurableNonceStrategy({commitment:e||this.commitment,strategy:t})}getCancellationPromise(t){return new Promise(((e,r)=>{null!=t&&(t.aborted?r(t.reason):t.addEventListener("abort",(()=>{r(t.reason)})))}))}getTransactionConfirmationPromise({commitment:t,signature:e}){let r,n,i=!1;const o=new Promise(((o,s)=>{try{r=this.onSignature(e,((t,e)=>{r=void 0;const n={context:e,value:t};o({__type:as.PROCESSED,response:n})}),t);const a=new Promise((t=>{null==r?t():n=this._onSubscriptionStateChange(r,(e=>{"subscribed"===e&&t()}))}));(async()=>{if(await a,i)return;const r=await this.getSignatureStatus(e);if(i)return;if(null==r)return;const{context:n,value:u}=r;if(null!=u)if(u?.err)s(u.err);else{switch(t){case"confirmed":case"single":case"singleGossip":if("processed"===u.confirmationStatus)return;break;case"finalized":case"max":case"root":if("processed"===u.confirmationStatus||"confirmed"===u.confirmationStatus)return}i=!0,o({__type:as.PROCESSED,response:{context:n,value:u}})}})()}catch(t){s(t)}}));return{abortConfirmation:()=>{n&&(n(),n=void 0),null!=r&&(this.removeSignatureListener(r),r=void 0)},confirmationPromise:o}}async confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:t,strategy:{abortSignal:e,lastValidBlockHeight:r,signature:n}}){let i=!1;const o=new Promise((e=>{const n=async()=>{try{return await this.getBlockHeight(t)}catch(t){return-1}};(async()=>{let t=await n();if(!i){for(;t<=r;){if(await Es(1e3),i)return;if(t=await n(),i)return}e({__type:as.BLOCKHEIGHT_EXCEEDED})}})()})),{abortConfirmation:s,confirmationPromise:a}=this.getTransactionConfirmationPromise({commitment:t,signature:n}),u=this.getCancellationPromise(e);let c;try{const t=await Promise.race([u,a,o]);if(t.__type!==as.PROCESSED)throw new Ho(n);c=t.response}finally{i=!0,s()}return c}async confirmTransactionUsingDurableNonceStrategy({commitment:t,strategy:{abortSignal:e,minContextSlot:r,nonceAccountPubkey:n,nonceValue:i,signature:o}}){let s=!1;const a=new Promise((e=>{let o=i,a=null;const u=async()=>{try{const{context:e,value:i}=await this.getNonceAndContext(n,{commitment:t,minContextSlot:r});return a=e.slot,i?.nonce}catch(t){return o}};(async()=>{if(o=await u(),!s)for(;;){if(i!==o)return void e({__type:as.NONCE_INVALID,slotInWhichNonceDidAdvance:a});if(await Es(2e3),s)return;if(o=await u(),s)return}})()})),{abortConfirmation:u,confirmationPromise:c}=this.getTransactionConfirmationPromise({commitment:t,signature:o}),h=this.getCancellationPromise(e);let l;try{const e=await Promise.race([h,c,a]);if(e.__type===as.PROCESSED)l=e.response;else{let n;for(;;){const t=await this.getSignatureStatus(o);if(null==t)break;if(!(t.context.slot<(e.slotInWhichNonceDidAdvance??r))){n=t;break}await Es(400)}if(!n?.value)throw new Zo(o);{const e=t||"finalized",{confirmationStatus:r}=n.value;switch(e){case"processed":case"recent":if("processed"!==r&&"confirmed"!==r&&"finalized"!==r)throw new Zo(o);break;case"confirmed":case"single":case"singleGossip":if("confirmed"!==r&&"finalized"!==r)throw new Zo(o);break;case"finalized":case"max":case"root":if("finalized"!==r)throw new Zo(o)}l={context:n.context,value:{err:n.value.err}}}}}finally{s=!0,u()}return l}async confirmTransactionUsingLegacyTimeoutStrategy({commitment:t,signature:e}){let r;const n=new Promise((e=>{let n=this._confirmTransactionInitialTimeout||6e4;switch(t){case"processed":case"recent":case"single":case"confirmed":case"singleGossip":n=this._confirmTransactionInitialTimeout||3e4}r=setTimeout((()=>e({__type:as.TIMED_OUT,timeoutMs:n})),n)})),{abortConfirmation:i,confirmationPromise:o}=this.getTransactionConfirmationPromise({commitment:t,signature:e});let s;try{const t=await Promise.race([o,n]);if(t.__type!==as.PROCESSED)throw new $o(e,t.timeoutMs/1e3);s=t.response}finally{clearTimeout(r),i()}return s}async getClusterNodes(){const t=en(await this._rpcRequest("getClusterNodes",[]),ra(sn(Ya)));if("error"in t)throw new qs(t.error,"failed to get cluster nodes");return t.result}async getVoteAccounts(t){const e=this._buildArgs([],t),r=en(await this._rpcRequest("getVoteAccounts",e),Xa);if("error"in r)throw new qs(r.error,"failed to get vote accounts");return r.result}async getSlot(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getSlot",n),ra(ln()));if("error"in i)throw new qs(i.error,"failed to get slot");return i.result}async getSlotLeader(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getSlotLeader",n),ra(pn()));if("error"in i)throw new qs(i.error,"failed to get slot leader");return i.result}async getSlotLeaders(t,e){const r=[t,e],n=en(await this._rpcRequest("getSlotLeaders",r),ra(sn(Ys)));if("error"in n)throw new qs(n.error,"failed to get slot leaders");return n.result}async getSignatureStatus(t,e){const{context:r,value:n}=await this.getSignatureStatuses([t],e);rs(1===n.length);return{context:r,value:n[0]}}async getSignatureStatuses(t,e){const r=[t];e&&r.push(e);const n=en(await this._rpcRequest("getSignatureStatuses",r),eu);if("error"in n)throw new qs(n.error,"failed to get signature status");return n.result}async getTransactionCount(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getTransactionCount",n),ra(ln()));if("error"in i)throw new qs(i.error,"failed to get transaction count");return i.result}async getTotalSupply(t){return(await this.getSupply({commitment:t,excludeNonCirculatingAccountsList:!0})).value.total}async getInflationGovernor(t){const e=this._buildArgs([],t),r=en(await this._rpcRequest("getInflationGovernor",e),ba);if("error"in r)throw new qs(r.error,"failed to get inflation");return r.result}async getInflationReward(t,e,r){const{commitment:n,config:i}=Qs(r),o=this._buildArgs([t.map((t=>t.toBase58()))],n,void 0,{...i,epoch:null!=e?e:i?.epoch}),s=en(await this._rpcRequest("getInflationReward",o),aa);if("error"in s)throw new qs(s.error,"failed to get inflation reward");return s.result}async getInflationRate(){const t=en(await this._rpcRequest("getInflationRate",[]),va);if("error"in t)throw new qs(t.error,"failed to get inflation rate");return t.result}async getEpochInfo(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getEpochInfo",n),ka);if("error"in i)throw new qs(i.error,"failed to get epoch info");return i.result}async getEpochSchedule(){const t=en(await this._rpcRequest("getEpochSchedule",[]),Ea);if("error"in t)throw new qs(t.error,"failed to get epoch schedule");const e=t.result;return new Fs(e.slotsPerEpoch,e.leaderScheduleSlotOffset,e.warmup,e.firstNormalEpoch,e.firstNormalSlot)}async getLeaderSchedule(){const t=en(await this._rpcRequest("getLeaderSchedule",[]),Sa);if("error"in t)throw new qs(t.error,"failed to get leader schedule");return t.result}async getMinimumBalanceForRentExemption(t,e){const r=this._buildArgs([t],e),n=en(await this._rpcRequest("getMinimumBalanceForRentExemption",r),ru);return"error"in n?(console.warn("Unable to fetch minimum balance for rent exemption"),0):n.result}async getRecentBlockhashAndContext(t){const e=this._buildArgs([],t),r=en(await this._rpcRequest("getRecentBlockhash",e),Iu);if("error"in r)throw new qs(r.error,"failed to get recent blockhash");return r.result}async getRecentPerformanceSamples(t){const e=en(await this._rpcRequest("getRecentPerformanceSamples",t?[t]:[]),Pu);if("error"in e)throw new qs(e.error,"failed to get recent performance samples");return e.result}async getFeeCalculatorForBlockhash(t,e){const r=this._buildArgs([t],e),n=en(await this._rpcRequest("getFeeCalculatorForBlockhash",r),Lu);if("error"in n)throw new qs(n.error,"failed to get fee calculator");const{context:i,value:o}=n.result;return{context:i,value:null!==o?o.feeCalculator:null}}async getFeeForMessage(t,e){const r=Ro(t.serialize()).toString("base64"),n=this._buildArgs([r],e),i=en(await this._rpcRequest("getFeeForMessage",n),na(hn(ln())));if("error"in i)throw new qs(i.error,"failed to get fee for message");if(null===i.result)throw new Error("invalid blockhash");return i.result}async getRecentPrioritizationFees(t){const e=t?.lockedWritableAccounts?.map((t=>t.toBase58())),r=e?.length?[e]:[],n=en(await this._rpcRequest("getRecentPrioritizationFees",r),_a);if("error"in n)throw new qs(n.error,"failed to get recent prioritization fees");return n.result}async getRecentBlockhash(t){try{return(await this.getRecentBlockhashAndContext(t)).value}catch(t){throw new Error("failed to get recent blockhash: "+t)}}async getLatestBlockhash(t){try{return(await this.getLatestBlockhashAndContext(t)).value}catch(t){throw new Error("failed to get recent blockhash: "+t)}}async getLatestBlockhashAndContext(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getLatestBlockhash",n),Bu);if("error"in i)throw new qs(i.error,"failed to get latest blockhash");return i.result}async isBlockhashValid(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t],r,void 0,n),o=en(await this._rpcRequest("isBlockhashValid",i),Mu);if("error"in o)throw new qs(o.error,"failed to determine if the blockhash `"+t+"`is valid");return o.result}async getVersion(){const t=en(await this._rpcRequest("getVersion",[]),ra(ga));if("error"in t)throw new qs(t.error,"failed to get version");return t.result}async getGenesisHash(){const t=en(await this._rpcRequest("getGenesisHash",[]),ra(pn()));if("error"in t)throw new qs(t.error,"failed to get genesis hash");return t.result}async getBlock(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,void 0,n),o=await this._rpcRequest("getBlock",i);try{switch(n?.transactionDetails){case"accounts":{const t=en(o,bu);if("error"in t)throw t.error;return t.result}case"none":{const t=en(o,wu);if("error"in t)throw t.error;return t.result}default:{const t=en(o,mu);if("error"in t)throw t.error;const{result:e}=t;return e?{...e,transactions:e.transactions.map((({transaction:t,meta:e,version:r})=>({meta:e,transaction:{...t,message:oa(r,t.message)},version:r})))}:null}}}catch(t){throw new qs(t,"failed to get confirmed block")}}async getParsedBlock(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,"jsonParsed",n),o=await this._rpcRequest("getBlock",i);try{switch(n?.transactionDetails){case"accounts":{const t=en(o,_u);if("error"in t)throw t.error;return t.result}case"none":{const t=en(o,ku);if("error"in t)throw t.error;return t.result}default:{const t=en(o,vu);if("error"in t)throw t.error;return t.result}}}catch(t){throw new qs(t,"failed to get block")}}async getBlockProduction(t){let e,r;if("string"==typeof t)r=t;else if(t){const{commitment:n,...i}=t;r=n,e=i}const n=this._buildArgs([],r,"base64",e),i=en(await this._rpcRequest("getBlockProduction",n),wa);if("error"in i)throw new qs(i.error,"failed to get block production information");return i.result}async getTransaction(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,void 0,n),o=en(await this._rpcRequest("getTransaction",i),Au);if("error"in o)throw new qs(o.error,"failed to get transaction");const s=o.result;return s?{...s,transaction:{...s.transaction,message:oa(s.version,s.transaction.message)}}:s}async getParsedTransaction(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,"jsonParsed",n),o=en(await this._rpcRequest("getTransaction",i),xu);if("error"in o)throw new qs(o.error,"failed to get transaction");return o.result}async getParsedTransactions(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([t],r,"jsonParsed",n)})));return(await this._rpcBatchRequest(i)).map((t=>{const e=en(t,xu);if("error"in e)throw new qs(e.error,"failed to get transactions");return e.result}))}async getTransactions(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([t],r,void 0,n)})));return(await this._rpcBatchRequest(i)).map((t=>{const e=en(t,Au);if("error"in e)throw new qs(e.error,"failed to get transactions");const r=e.result;return r?{...r,transaction:{...r.transaction,message:oa(r.version,r.transaction.message)}}:r}))}async getConfirmedBlock(t,e){const r=this._buildArgsAtLeastConfirmed([t],e),n=en(await this._rpcRequest("getConfirmedBlock",r),Eu);if("error"in n)throw new qs(n.error,"failed to get confirmed block");const i=n.result;if(!i)throw new Error("Confirmed block "+t+" not found");const o={...i,transactions:i.transactions.map((({transaction:t,meta:e})=>{const r=new is(t.message);return{meta:e,transaction:{...t,message:r}}}))};return{...o,transactions:o.transactions.map((({transaction:t,meta:e})=>({meta:e,transaction:hs.populate(t.message,t.signatures)})))}}async getBlocks(t,e,r){const n=this._buildArgsAtLeastConfirmed(void 0!==e?[t,e]:[t],r),i=en(await this._rpcRequest("getBlocks",n),ra(sn(ln())));if("error"in i)throw new qs(i.error,"failed to get blocks");return i.result}async getBlockSignatures(t,e){const r=this._buildArgsAtLeastConfirmed([t],e,void 0,{transactionDetails:"signatures",rewards:!1}),n=en(await this._rpcRequest("getBlock",r),Su);if("error"in n)throw new qs(n.error,"failed to get block");const i=n.result;if(!i)throw new Error("Block "+t+" not found");return i}async getConfirmedBlockSignatures(t,e){const r=this._buildArgsAtLeastConfirmed([t],e,void 0,{transactionDetails:"signatures",rewards:!1}),n=en(await this._rpcRequest("getConfirmedBlock",r),Su);if("error"in n)throw new qs(n.error,"failed to get confirmed block");const i=n.result;if(!i)throw new Error("Confirmed block "+t+" not found");return i}async getConfirmedTransaction(t,e){const r=this._buildArgsAtLeastConfirmed([t],e),n=en(await this._rpcRequest("getConfirmedTransaction",r),Au);if("error"in n)throw new qs(n.error,"failed to get transaction");const i=n.result;if(!i)return i;const o=new is(i.transaction.message),s=i.transaction.signatures;return{...i,transaction:hs.populate(o,s)}}async getParsedConfirmedTransaction(t,e){const r=this._buildArgsAtLeastConfirmed([t],e,"jsonParsed"),n=en(await this._rpcRequest("getConfirmedTransaction",r),xu);if("error"in n)throw new qs(n.error,"failed to get confirmed transaction");return n.result}async getParsedConfirmedTransactions(t,e){const r=t.map((t=>({methodName:"getConfirmedTransaction",args:this._buildArgsAtLeastConfirmed([t],e,"jsonParsed")})));return(await this._rpcBatchRequest(r)).map((t=>{const e=en(t,xu);if("error"in e)throw new qs(e.error,"failed to get confirmed transactions");return e.result}))}async getConfirmedSignaturesForAddress(t,e,r){let n={},i=await this.getFirstAvailableBlock();for(;!("until"in n)&&!(--e<=0||e<i);)try{const t=await this.getConfirmedBlockSignatures(e,"finalized");t.signatures.length>0&&(n.until=t.signatures[t.signatures.length-1].toString())}catch(t){if(t instanceof Error&&t.message.includes("skipped"))continue;throw t}let o=await this.getSlot("finalized");for(;!("before"in n||++r>o);)try{const t=await this.getConfirmedBlockSignatures(r);t.signatures.length>0&&(n.before=t.signatures[t.signatures.length-1].toString())}catch(t){if(t instanceof Error&&t.message.includes("skipped"))continue;throw t}return(await this.getConfirmedSignaturesForAddress2(t,n)).map((t=>t.signature))}async getConfirmedSignaturesForAddress2(t,e,r){const n=this._buildArgsAtLeastConfirmed([t.toBase58()],r,void 0,e),i=en(await this._rpcRequest("getConfirmedSignaturesForAddress2",n),Da);if("error"in i)throw new qs(i.error,"failed to get confirmed signatures for address");return i.result}async getSignaturesForAddress(t,e,r){const n=this._buildArgsAtLeastConfirmed([t.toBase58()],r,void 0,e),i=en(await this._rpcRequest("getSignaturesForAddress",n),ja);if("error"in i)throw new qs(i.error,"failed to get signatures for address");return i.result}async getAddressLookupTable(t,e){const{context:r,value:n}=await this.getAccountInfoAndContext(t,e);let i=null;return null!==n&&(i=new $s({key:t,state:$s.deserialize(n.data)})),{context:r,value:i}}async getNonceAndContext(t,e){const{context:r,value:n}=await this.getAccountInfoAndContext(t,e);let i=null;return null!==n&&(i=Ms.fromAccountData(n.data)),{context:r,value:i}}async getNonce(t,e){return await this.getNonceAndContext(t,e).then((t=>t.value)).catch((e=>{throw new Error("failed to get nonce for account "+t.toBase58()+": "+e)}))}async requestAirdrop(t,e){const r=en(await this._rpcRequest("requestAirdrop",[t.toBase58(),e]),Ou);if("error"in r)throw new qs(r.error,`airdrop to ${t.toBase58()} failed`);return r.result}async _blockhashWithExpiryBlockHeight(t){if(!t){for(;this._pollingBlockhash;)await Es(100);const t=Date.now()-this._blockhashInfo.lastFetch>=3e4;if(null!==this._blockhashInfo.latestBlockhash&&!t)return this._blockhashInfo.latestBlockhash}return await this._pollNewBlockhash()}async _pollNewBlockhash(){this._pollingBlockhash=!0;try{const t=Date.now(),e=this._blockhashInfo.latestBlockhash,r=e?e.blockhash:null;for(let t=0;t<50;t++){const t=await this.getLatestBlockhash("finalized");if(r!==t.blockhash)return this._blockhashInfo={latestBlockhash:t,lastFetch:Date.now(),transactionSignatures:[],simulatedSignatures:[]},t;await Es(200)}throw new Error(`Unable to obtain a new blockhash after ${Date.now()-t}ms`)}finally{this._pollingBlockhash=!1}}async getStakeMinimumDelegation(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,"base64",r),i=en(await this._rpcRequest("getStakeMinimumDelegation",n),na(ln()));if("error"in i)throw new qs(i.error,"failed to get stake minimum delegation");return i.result}async simulateTransaction(t,e,r){if("message"in t){const i=t.serialize(),o=n.Buffer.from(i).toString("base64");if(Array.isArray(e)||void 0!==r)throw new Error("Invalid arguments");const s=e||{};s.encoding="base64","commitment"in s||(s.commitment=this.commitment);const a=[o,s],u=en(await this._rpcRequest("simulateTransaction",a),ma);if("error"in u)throw new Error("failed to simulate transaction: "+u.error.message);return u.result}let i;if(t instanceof hs){let e=t;i=new hs,i.feePayer=e.feePayer,i.instructions=t.instructions,i.nonceInfo=e.nonceInfo,i.signatures=e.signatures}else i=hs.populate(t),i._message=i._json=void 0;if(void 0!==e&&!Array.isArray(e))throw new Error("Invalid arguments");const o=e;if(i.nonceInfo&&o)i.sign(...o);else{let t=this._disableBlockhashCaching;for(;;){const e=await this._blockhashWithExpiryBlockHeight(t);if(i.lastValidBlockHeight=e.lastValidBlockHeight,i.recentBlockhash=e.blockhash,!o)break;if(i.sign(...o),!i.signature)throw new Error("!signature");const r=i.signature.toString("base64");if(!this._blockhashInfo.simulatedSignatures.includes(r)&&!this._blockhashInfo.transactionSignatures.includes(r)){this._blockhashInfo.simulatedSignatures.push(r);break}t=!0}}const s=i._compile(),a=s.serialize(),u=i._serialize(a).toString("base64"),c={encoding:"base64",commitment:this.commitment};if(r){const t=(Array.isArray(r)?r:s.nonProgramIds()).map((t=>t.toBase58()));c.accounts={encoding:"base64",addresses:t}}o&&(c.sigVerify=!0);const h=[u,c],l=en(await this._rpcRequest("simulateTransaction",h),ma);if("error"in l){let t;if("data"in l.error&&(t=l.error.data.logs,t&&Array.isArray(t))){const e="\n ",r=e+t.join(e);console.error(l.error.message,r)}throw new Ks("failed to simulate transaction: "+l.error.message,t)}return l.result}async sendTransaction(t,e,r){if("version"in t){if(e&&Array.isArray(e))throw new Error("Invalid arguments");const r=t.serialize();return await this.sendRawTransaction(r,e)}if(void 0===e||!Array.isArray(e))throw new Error("Invalid arguments");const n=e;if(t.nonceInfo)t.sign(...n);else{let e=this._disableBlockhashCaching;for(;;){const r=await this._blockhashWithExpiryBlockHeight(e);if(t.lastValidBlockHeight=r.lastValidBlockHeight,t.recentBlockhash=r.blockhash,t.sign(...n),!t.signature)throw new Error("!signature");const i=t.signature.toString("base64");if(!this._blockhashInfo.transactionSignatures.includes(i)){this._blockhashInfo.transactionSignatures.push(i);break}e=!0}}const i=t.serialize();return await this.sendRawTransaction(i,r)}async sendRawTransaction(t,e){const r=Ro(t).toString("base64");return await this.sendEncodedTransaction(r,e)}async sendEncodedTransaction(t,e){const r={encoding:"base64"},n=e&&e.skipPreflight,i=e&&e.preflightCommitment||this.commitment;e&&null!=e.maxRetries&&(r.maxRetries=e.maxRetries),e&&null!=e.minContextSlot&&(r.minContextSlot=e.minContextSlot),n&&(r.skipPreflight=n),i&&(r.preflightCommitment=i);const o=[t,r],s=en(await this._rpcRequest("sendTransaction",o),Tu);if("error"in s){let t;throw"data"in s.error&&(t=s.error.data.logs),new Ks("failed to send transaction: "+s.error.message,t)}return s.result}_wsOnOpen(){this._rpcWebSocketConnected=!0,this._rpcWebSocketHeartbeat=setInterval((()=>{(async()=>{try{await this._rpcWebSocket.notify("ping")}catch{}})()}),5e3),this._updateSubscriptions()}_wsOnError(t){this._rpcWebSocketConnected=!1,console.error("ws error:",t.message)}_wsOnClose(t){this._rpcWebSocketConnected=!1,this._rpcWebSocketGeneration=(this._rpcWebSocketGeneration+1)%Number.MAX_SAFE_INTEGER,this._rpcWebSocketIdleTimeout&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null),this._rpcWebSocketHeartbeat&&(clearInterval(this._rpcWebSocketHeartbeat),this._rpcWebSocketHeartbeat=null),1e3!==t?(this._subscriptionCallbacksByServerSubscriptionId={},Object.entries(this._subscriptionsByHash).forEach((([t,e])=>{this._setSubscription(t,{...e,state:"pending"})}))):this._updateSubscriptions()}_setSubscription(t,e){const r=this._subscriptionsByHash[t]?.state;if(this._subscriptionsByHash[t]=e,r!==e.state){const r=this._subscriptionStateChangeCallbacksByHash[t];r&&r.forEach((t=>{try{t(e.state)}catch{}}))}}_onSubscriptionStateChange(t,e){const r=this._subscriptionHashByClientSubscriptionId[t];if(null==r)return()=>{};const n=this._subscriptionStateChangeCallbacksByHash[r]||=new Set;return n.add(e),()=>{n.delete(e),0===n.size&&delete this._subscriptionStateChangeCallbacksByHash[r]}}async _updateSubscriptions(){if(0===Object.keys(this._subscriptionsByHash).length)return void(this._rpcWebSocketConnected&&(this._rpcWebSocketConnected=!1,this._rpcWebSocketIdleTimeout=setTimeout((()=>{this._rpcWebSocketIdleTimeout=null;try{this._rpcWebSocket.close()}catch(t){t instanceof Error&&console.log(`Error when closing socket connection: ${t.message}`)}}),500)));if(null!==this._rpcWebSocketIdleTimeout&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketConnected=!0),!this._rpcWebSocketConnected)return void this._rpcWebSocket.connect();const t=this._rpcWebSocketGeneration,e=()=>t===this._rpcWebSocketGeneration;await Promise.all(Object.keys(this._subscriptionsByHash).map((async t=>{const r=this._subscriptionsByHash[t];if(void 0!==r)switch(r.state){case"pending":case"unsubscribed":if(0===r.callbacks.size)return delete this._subscriptionsByHash[t],"unsubscribed"===r.state&&delete this._subscriptionCallbacksByServerSubscriptionId[r.serverSubscriptionId],void await this._updateSubscriptions();await(async()=>{const{args:n,method:i}=r;try{this._setSubscription(t,{...r,state:"subscribing"});const e=await this._rpcWebSocket.call(i,n);this._setSubscription(t,{...r,serverSubscriptionId:e,state:"subscribed"}),this._subscriptionCallbacksByServerSubscriptionId[e]=r.callbacks,await this._updateSubscriptions()}catch(o){if(o instanceof Error&&console.error(`${i} error for argument`,n,o.message),!e())return;this._setSubscription(t,{...r,state:"pending"}),await this._updateSubscriptions()}})();break;case"subscribed":0===r.callbacks.size&&await(async()=>{const{serverSubscriptionId:n,unsubscribeMethod:i}=r;if(this._subscriptionsAutoDisposedByRpc.has(n))this._subscriptionsAutoDisposedByRpc.delete(n);else{this._setSubscription(t,{...r,state:"unsubscribing"}),this._setSubscription(t,{...r,state:"unsubscribing"});try{await this._rpcWebSocket.call(i,[n])}catch(n){if(n instanceof Error&&console.error(`${i} error:`,n.message),!e())return;return this._setSubscription(t,{...r,state:"subscribed"}),void await this._updateSubscriptions()}}this._setSubscription(t,{...r,state:"unsubscribed"}),await this._updateSubscriptions()})()}})))}_handleServerNotification(t,e){const r=this._subscriptionCallbacksByServerSubscriptionId[t];void 0!==r&&r.forEach((t=>{try{t(...e)}catch(t){console.error(t)}}))}_wsOnAccountNotification(t){const{result:e,subscription:r}=en(t,Wa);this._handleServerNotification(r,[e.value,e.context])}_makeSubscription(t,e){const r=this._nextClientSubscriptionId++,n=js([t.method,e],!0),i=this._subscriptionsByHash[n];return void 0===i?this._subscriptionsByHash[n]={...t,args:e,callbacks:new Set([t.callback]),state:"pending"}:i.callbacks.add(t.callback),this._subscriptionHashByClientSubscriptionId[r]=n,this._subscriptionDisposeFunctionsByClientSubscriptionId[r]=async()=>{delete this._subscriptionDisposeFunctionsByClientSubscriptionId[r],delete this._subscriptionHashByClientSubscriptionId[r];const e=this._subscriptionsByHash[n];rs(void 0!==e,`Could not find a \`Subscription\` when tearing down client subscription #${r}`),e.callbacks.delete(t.callback),await this._updateSubscriptions()},this._updateSubscriptions(),r}onAccountChange(t,e,r){const n=this._buildArgs([t.toBase58()],r||this._commitment||"finalized","base64");return this._makeSubscription({callback:e,method:"accountSubscribe",unsubscribeMethod:"accountUnsubscribe"},n)}async removeAccountChangeListener(t){await this._unsubscribeClientSubscription(t,"account change")}_wsOnProgramAccountNotification(t){const{result:e,subscription:r}=en(t,Ka);this._handleServerNotification(r,[{accountId:e.value.pubkey,accountInfo:e.value.account},e.context])}onProgramAccountChange(t,e,r,n){const i=this._buildArgs([t.toBase58()],r||this._commitment||"finalized","base64",n?{filters:n}:void 0);return this._makeSubscription({callback:e,method:"programSubscribe",unsubscribeMethod:"programUnsubscribe"},i)}async removeProgramAccountChangeListener(t){await this._unsubscribeClientSubscription(t,"program account change")}onLogs(t,e,r){const n=this._buildArgs(["object"==typeof t?{mentions:[t.toString()]}:t],r||this._commitment||"finalized");return this._makeSubscription({callback:e,method:"logsSubscribe",unsubscribeMethod:"logsUnsubscribe"},n)}async removeOnLogsListener(t){await this._unsubscribeClientSubscription(t,"logs")}_wsOnLogsNotification(t){const{result:e,subscription:r}=en(t,Uu);this._handleServerNotification(r,[e.value,e.context])}_wsOnSlotNotification(t){const{result:e,subscription:r}=en(t,Va);this._handleServerNotification(r,[e])}onSlotChange(t){return this._makeSubscription({callback:t,method:"slotSubscribe",unsubscribeMethod:"slotUnsubscribe"},[])}async removeSlotChangeListener(t){await this._unsubscribeClientSubscription(t,"slot change")}_wsOnSlotUpdatesNotification(t){const{result:e,subscription:r}=en(t,$a);this._handleServerNotification(r,[e])}onSlotUpdate(t){return this._makeSubscription({callback:t,method:"slotsUpdatesSubscribe",unsubscribeMethod:"slotsUpdatesUnsubscribe"},[])}async removeSlotUpdateListener(t){await this._unsubscribeClientSubscription(t,"slot update")}async _unsubscribeClientSubscription(t,e){const r=this._subscriptionDisposeFunctionsByClientSubscriptionId[t];r?await r():console.warn(`Ignored unsubscribe request because an active subscription with id \`${t}\` for '${e}' events could not be found.`)}_buildArgs(t,e,r,n){const i=e||this._commitment;if(i||r||n){let e={};r&&(e.encoding=r),i&&(e.commitment=i),n&&(e=Object.assign(e,n)),t.push(e)}return t}_buildArgsAtLeastConfirmed(t,e,r,n){const i=e||this._commitment;if(i&&!["confirmed","finalized"].includes(i))throw new Error("Using Connection with default commitment: `"+this._commitment+"`, but method requires at least `confirmed`");return this._buildArgs(t,e,r,n)}_wsOnSignatureNotification(t){const{result:e,subscription:r}=en(t,Za);"receivedSignature"!==e.value&&this._subscriptionsAutoDisposedByRpc.add(r),this._handleServerNotification(r,"receivedSignature"===e.value?[{type:"received"},e.context]:[{type:"status",result:e.value},e.context])}onSignature(t,e,r){const n=this._buildArgs([t],r||this._commitment||"finalized"),i=this._makeSubscription({callback:(t,r)=>{if("status"===t.type){e(t.result,r);try{this.removeSignatureListener(i)}catch(t){}}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},n);return i}onSignatureWithOptions(t,e,r){const{commitment:n,...i}={...r,commitment:r&&r.commitment||this._commitment||"finalized"},o=this._buildArgs([t],n,void 0,i),s=this._makeSubscription({callback:(t,r)=>{e(t,r);try{this.removeSignatureListener(s)}catch(t){}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},o);return s}async removeSignatureListener(t){await this._unsubscribeClientSubscription(t,"signature result")}_wsOnRootNotification(t){const{result:e,subscription:r}=en(t,Ga);this._handleServerNotification(r,[e])}onRootChange(t){return this._makeSubscription({callback:t,method:"rootSubscribe",unsubscribeMethod:"rootUnsubscribe"},[])}async removeRootChangeListener(t){await this._unsubscribeClientSubscription(t,"root change")}},Ed25519Program:Ku,Enum:class extends Uo{constructor(t){if(super(t),this.enum="",1!==Object.keys(t).length)throw new Error("Enum can only take single value");Object.keys(t).map((t=>{this.enum=t}))}},EpochSchedule:Fs,FeeCalculatorLayout:xs,Keypair:Nu,LAMPORTS_PER_SOL:1e9,LOOKUP_TABLE_INSTRUCTION_LAYOUTS:zu,Loader:Rs,Lockup:Yu,MAX_SEED_LENGTH:32,Message:is,MessageAccountKeys:Go,MessageV0:os,NONCE_ACCOUNT_LENGTH:Bs,NonceAccount:Ms,PACKET_DATA_SIZE:Ko,PUBLIC_KEY_LENGTH:Do,PublicKey:Wo,SIGNATURE_LENGTH_IN_BYTES:Vo,SOLANA_SCHEMA:Co,STAKE_CONFIG_ID:Zu,STAKE_INSTRUCTION_LAYOUTS:Ju,SYSTEM_INSTRUCTION_LAYOUTS:Os,SYSVAR_CLOCK_PUBKEY:ds,SYSVAR_EPOCH_SCHEDULE_PUBKEY:ps,SYSVAR_INSTRUCTIONS_PUBKEY:ys,SYSVAR_RECENT_BLOCKHASHES_PUBKEY:gs,SYSVAR_RENT_PUBKEY:ms,SYSVAR_REWARDS_PUBKEY:ws,SYSVAR_SLOT_HASHES_PUBKEY:bs,SYSVAR_SLOT_HISTORY_PUBKEY:vs,SYSVAR_STAKE_HISTORY_PUBKEY:_s,Secp256k1Program:Hu,SendTransactionError:Ks,SolanaJSONRPCError:qs,SolanaJSONRPCErrorCode:{JSON_RPC_SERVER_ERROR_BLOCK_CLEANED_UP:-32001,JSON_RPC_SERVER_ERROR_SEND_TRANSACTION_PREFLIGHT_FAILURE:-32002,JSON_RPC_SERVER_ERROR_TRANSACTION_SIGNATURE_VERIFICATION_FAILURE:-32003,JSON_RPC_SERVER_ERROR_BLOCK_NOT_AVAILABLE:-32004,JSON_RPC_SERVER_ERROR_NODE_UNHEALTHY:-32005,JSON_RPC_SERVER_ERROR_TRANSACTION_PRECOMPILE_VERIFICATION_FAILURE:-32006,JSON_RPC_SERVER_ERROR_SLOT_SKIPPED:-32007,JSON_RPC_SERVER_ERROR_NO_SNAPSHOT:-32008,JSON_RPC_SERVER_ERROR_LONG_TERM_STORAGE_SLOT_SKIPPED:-32009,JSON_RPC_SERVER_ERROR_KEY_EXCLUDED_FROM_SECONDARY_INDEX:-32010,JSON_RPC_SERVER_ERROR_TRANSACTION_HISTORY_NOT_AVAILABLE:-32011,JSON_RPC_SCAN_ERROR:-32012,JSON_RPC_SERVER_ERROR_TRANSACTION_SIGNATURE_LEN_MISMATCH:-32013,JSON_RPC_SERVER_ERROR_BLOCK_STATUS_NOT_AVAILABLE_YET:-32014,JSON_RPC_SERVER_ERROR_UNSUPPORTED_TRANSACTION_VERSION:-32015,JSON_RPC_SERVER_ERROR_MIN_CONTEXT_SLOT_NOT_REACHED:-32016},StakeAuthorizationLayout:Xu,StakeInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(Ju))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a StakeInstruction");return r}static decodeInitialize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{authorized:e,lockup:r}=As(Ju.Initialize,t.data);return{stakePubkey:t.keys[0].pubkey,authorized:new Gu(new Wo(e.staker),new Wo(e.withdrawer)),lockup:new Yu(r.unixTimestamp,r.epoch,new Wo(r.custodian))}}static decodeDelegate(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,6),As(Ju.Delegate,t.data),{stakePubkey:t.keys[0].pubkey,votePubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[5].pubkey}}static decodeAuthorize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{newAuthorized:e,stakeAuthorizationType:r}=As(Ju.Authorize,t.data),n={stakePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey,newAuthorizedPubkey:new Wo(e),stakeAuthorizationType:{index:r}};return t.keys.length>3&&(n.custodianPubkey=t.keys[3].pubkey),n}static decodeAuthorizeWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{newAuthorized:e,stakeAuthorizationType:r,authoritySeed:n,authorityOwner:i}=As(Ju.AuthorizeWithSeed,t.data),o={stakePubkey:t.keys[0].pubkey,authorityBase:t.keys[1].pubkey,authoritySeed:n,authorityOwner:new Wo(i),newAuthorizedPubkey:new Wo(e),stakeAuthorizationType:{index:r}};return t.keys.length>3&&(o.custodianPubkey=t.keys[3].pubkey),o}static decodeSplit(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{lamports:e}=As(Ju.Split,t.data);return{stakePubkey:t.keys[0].pubkey,splitStakePubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[2].pubkey,lamports:e}}static decodeMerge(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3),As(Ju.Merge,t.data),{stakePubkey:t.keys[0].pubkey,sourceStakePubKey:t.keys[1].pubkey,authorizedPubkey:t.keys[4].pubkey}}static decodeWithdraw(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,5);const{lamports:e}=As(Ju.Withdraw,t.data),r={stakePubkey:t.keys[0].pubkey,toPubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[4].pubkey,lamports:e};return t.keys.length>5&&(r.custodianPubkey=t.keys[5].pubkey),r}static decodeDeactivate(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3),As(Ju.Deactivate,t.data),{stakePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey}}static checkProgramId(t){if(!t.equals(Qu.programId))throw new Error("invalid instruction; programId is not StakeProgram")}static checkKeyLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},StakeProgram:Qu,Struct:Uo,SystemInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(Os))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a SystemInstruction");return r}static decodeCreateAccount(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{lamports:e,space:r,programId:n}=As(Os.Create,t.data);return{fromPubkey:t.keys[0].pubkey,newAccountPubkey:t.keys[1].pubkey,lamports:e,space:r,programId:new Wo(n)}}static decodeTransfer(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{lamports:e}=As(Os.Transfer,t.data);return{fromPubkey:t.keys[0].pubkey,toPubkey:t.keys[1].pubkey,lamports:e}}static decodeTransferWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{lamports:e,seed:r,programId:n}=As(Os.TransferWithSeed,t.data);return{fromPubkey:t.keys[0].pubkey,basePubkey:t.keys[1].pubkey,toPubkey:t.keys[2].pubkey,lamports:e,seed:r,programId:new Wo(n)}}static decodeAllocate(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{space:e}=As(Os.Allocate,t.data);return{accountPubkey:t.keys[0].pubkey,space:e}}static decodeAllocateWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{base:e,seed:r,space:n,programId:i}=As(Os.AllocateWithSeed,t.data);return{accountPubkey:t.keys[0].pubkey,basePubkey:new Wo(e),seed:r,space:n,programId:new Wo(i)}}static decodeAssign(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{programId:e}=As(Os.Assign,t.data);return{accountPubkey:t.keys[0].pubkey,programId:new Wo(e)}}static decodeAssignWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{base:e,seed:r,programId:n}=As(Os.AssignWithSeed,t.data);return{accountPubkey:t.keys[0].pubkey,basePubkey:new Wo(e),seed:r,programId:new Wo(n)}}static decodeCreateWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{base:e,seed:r,lamports:n,space:i,programId:o}=As(Os.CreateWithSeed,t.data);return{fromPubkey:t.keys[0].pubkey,newAccountPubkey:t.keys[1].pubkey,basePubkey:new Wo(e),seed:r,lamports:n,space:i,programId:new Wo(o)}}static decodeNonceInitialize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{authorized:e}=As(Os.InitializeNonceAccount,t.data);return{noncePubkey:t.keys[0].pubkey,authorizedPubkey:new Wo(e)}}static decodeNonceAdvance(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3),As(Os.AdvanceNonceAccount,t.data),{noncePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey}}static decodeNonceWithdraw(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,5);const{lamports:e}=As(Os.WithdrawNonceAccount,t.data);return{noncePubkey:t.keys[0].pubkey,toPubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[4].pubkey,lamports:e}}static decodeNonceAuthorize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{authorized:e}=As(Os.AuthorizeNonceAccount,t.data);return{noncePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[1].pubkey,newAuthorizedPubkey:new Wo(e)}}static checkProgramId(t){if(!t.equals(Ts.programId))throw new Error("invalid instruction; programId is not SystemProgram")}static checkKeyLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},SystemProgram:Ts,Transaction:hs,TransactionExpiredBlockheightExceededError:Ho,TransactionExpiredNonceInvalidError:Zo,TransactionExpiredTimeoutError:$o,TransactionInstruction:cs,TransactionMessage:ls,TransactionStatus:as,VALIDATOR_INFO_KEY:ic,VERSION_PREFIX_MASK:qo,VOTE_PROGRAM_ID:ac,ValidatorInfo:sc,VersionedMessage:ss,VersionedTransaction:fs,VoteAccount:cc,VoteAuthorizationLayout:rc,VoteInit:tc,VoteInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(ec))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a VoteInstruction");return r}static decodeInitializeAccount(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,4);const{voteInit:e}=As(ec.InitializeAccount,t.data);return{votePubkey:t.keys[0].pubkey,nodePubkey:t.keys[3].pubkey,voteInit:new tc(new Wo(e.nodePubkey),new Wo(e.authorizedVoter),new Wo(e.authorizedWithdrawer),e.commission)}}static decodeAuthorize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{newAuthorized:e,voteAuthorizationType:r}=As(ec.Authorize,t.data);return{votePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey,newAuthorizedPubkey:new Wo(e),voteAuthorizationType:{index:r}}}static decodeAuthorizeWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{voteAuthorizeWithSeedArgs:{currentAuthorityDerivedKeyOwnerPubkey:e,currentAuthorityDerivedKeySeed:r,newAuthorized:n,voteAuthorizationType:i}}=As(ec.AuthorizeWithSeed,t.data);return{currentAuthorityDerivedKeyBasePubkey:t.keys[2].pubkey,currentAuthorityDerivedKeyOwnerPubkey:new Wo(e),currentAuthorityDerivedKeySeed:r,newAuthorizedPubkey:new Wo(n),voteAuthorizationType:{index:i},votePubkey:t.keys[0].pubkey}}static decodeWithdraw(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{lamports:e}=As(ec.Withdraw,t.data);return{votePubkey:t.keys[0].pubkey,authorizedWithdrawerPubkey:t.keys[2].pubkey,lamports:e,toPubkey:t.keys[1].pubkey}}static checkProgramId(t){if(!t.equals(nc.programId))throw new Error("invalid instruction; programId is not VoteProgram")}static checkKeyLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},VoteProgram:nc,clusterApiUrl:function(t,e){const r=!1===e?"http":"https";if(!t)return dc[r].devnet;const n=dc[r][t];if(!n)throw new Error(`Unknown ${r} cluster: ${t}`);return n},sendAndConfirmRawTransaction:async function(t,e,r,n){let i,o;r&&Object.prototype.hasOwnProperty.call(r,"lastValidBlockHeight")||r&&Object.prototype.hasOwnProperty.call(r,"nonceValue")?(i=r,o=n):o=r;const s=o&&{skipPreflight:o.skipPreflight,preflightCommitment:o.preflightCommitment||o.commitment,minContextSlot:o.minContextSlot},a=await t.sendRawTransaction(e,s),u=o&&o.commitment,c=i?t.confirmTransaction(i,u):t.confirmTransaction(a,u),h=(await c).value;if(h.err)throw new Error(`Raw transaction ${a} failed (${JSON.stringify(h)})`);return a},sendAndConfirmTransaction:ks});const yc=new Wo("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");new Wo("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb");const gc=new Wo("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");new Wo("So11111111111111111111111111111111111111112"),new Wo("9pan9bMn5HatX4EJdBwg9VgCa7Uz5HL8N1m5D3NdXejP");const mc=t=>({decode:t.decode.bind(t),encode:t.encode.bind(t)}),wc=(t=>e=>{const r=Fr(t,e),{encode:n,decode:i}=mc(r),o=r;return o.decode=(t,e)=>{const r=i(t,e);return qr(Buffer.from(r))},o.encode=(e,r,i)=>{const o=Hr(e,t);return n(o,r,i)},o})(8),bc=t=>{const e=Ur(t),{encode:r,decode:n}=mc(e),i=e;return i.decode=(t,e)=>!!n(t,e),i.encode=(t,e,n)=>{const i=Number(t);return r(i,e,n)},i},vc=t=>{const e=Fr(32,t),{encode:r,decode:n}=mc(e),i=e;return i.decode=(t,e)=>{const r=n(t,e);return new Wo(r)},i.encode=(t,e,n)=>{const i=t.toBuffer();return r(i,e,n)},i};class _c extends Error{constructor(t){super(t)}}class kc extends _c{constructor(){super(...arguments),this.name="TokenAccountNotFoundError"}}class Ec extends _c{constructor(){super(...arguments),this.name="TokenInvalidAccountOwnerError"}}class Sc extends _c{constructor(){super(...arguments),this.name="TokenInvalidAccountSizeError"}}class Ac extends _c{constructor(){super(...arguments),this.name="TokenInvalidMintError"}}class xc extends _c{constructor(){super(...arguments),this.name="TokenOwnerOffCurveError"}}var Ic;!function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Mint=1]="Mint",t[t.Account=2]="Account"}(Ic||(Ic={}));const Bc=1,Mc=jr([Ur("m"),Ur("n"),bc("isInitialized"),vc("signer1"),vc("signer2"),vc("signer3"),vc("signer4"),vc("signer5"),vc("signer6"),vc("signer7"),vc("signer8"),vc("signer9"),vc("signer10"),vc("signer11")]).span;var Pc;!function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Initialized=1]="Initialized",t[t.Frozen=2]="Frozen"}(Pc||(Pc={}));const Lc=jr([vc("mint"),vc("owner"),wc("amount"),Nr("delegateOption"),vc("delegate"),Ur("state"),Nr("isNativeOption"),wc("isNative"),wc("delegatedAmount"),Nr("closeAuthorityOption"),vc("closeAuthority")]),Oc=Lc.span,Tc=jr([Nr("mintAuthorityOption"),vc("mintAuthority"),wc("supply"),Ur("decimals"),bc("isInitialized"),Nr("freezeAuthorityOption"),vc("freezeAuthority")]),Rc=Tc.span;async function Uc(t,e,r,n=yc){return function(t,e,r=yc){if(!e)throw new kc;if(!e.owner.equals(r))throw new Ec;if(e.data.length<Rc)throw new Sc;const n=Tc.decode(e.data.slice(0,Rc));let i=Buffer.alloc(0);if(e.data.length>Rc){if(e.data.length<=Oc)throw new Sc;if(e.data.length===Mc)throw new Sc;if(e.data[Oc]!=Ic.Mint)throw new Ac;i=e.data.slice(Oc+Bc)}return{address:t,mintAuthority:n.mintAuthorityOption?n.mintAuthority:null,supply:n.supply,decimals:n.decimals,isInitialized:n.isInitialized,freezeAuthority:n.freezeAuthorityOption?n.freezeAuthority:null,tlvData:i}}(e,await t.getAccountInfo(e,r),n)}function Cc(t,e,r=!1,n=yc,i=gc){if(!r&&!Wo.isOnCurve(e.toBuffer()))throw new xc;const[o]=Wo.findProgramAddressSync([e.toBuffer(),n.toBuffer(),t.toBuffer()],i);return o}function Nc(t,e,r,n,i=yc,o=gc){return function(t,e,r,n,i,o=yc,s=gc){const a=[{pubkey:t,isSigner:!0,isWritable:!0},{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:Ts.programId,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!1,isWritable:!1}];return new cs({keys:a,programId:s,data:i})}(t,e,r,n,Buffer.alloc(0),i,o)}var zc;!function(t){t.SymbolNotFound="SymbolNotFound",t.InvalidSubdomain="InvalidSubdomain",t.FavouriteDomainNotFound="FavouriteDomainNotFound",t.MissingParentOwner="MissingParentOwner",t.U32Overflow="U32Overflow",t.InvalidBufferLength="InvalidBufferLength",t.U64Overflow="U64Overflow",t.NoRecordData="NoRecordData",t.InvalidRecordData="InvalidRecordData",t.UnsupportedRecord="UnsupportedRecord",t.InvalidEvmAddress="InvalidEvmAddress",t.InvalidInjectiveAddress="InvalidInjectiveAddress",t.InvalidARecord="InvalidARecord",t.InvalidAAAARecord="InvalidAAAARecord",t.InvalidRecordInput="InvalidRecordInput",t.InvalidSignature="InvalidSignature",t.AccountDoesNotExist="AccountDoesNotExist",t.MultipleRegistries="MultipleRegistries",t.InvalidReverseTwitter="InvalidReverseTwitter",t.NoAccountData="NoAccountData",t.InvalidInput="InvalidInput",t.InvalidDomain="InvalidDomain",t.InvalidCustomBg="InvalidCustomBackground",t.UnsupportedSignature="UnsupportedSignature",t.RecordDoestNotSupportGuardianSig="RecordDoestNotSupportGuardianSig",t.RecordIsNotSigned="RecordIsNotSigned",t.UnsupportedSignatureType="UnsupportedSignatureType",t.InvalidSolRecordV2="InvalidSolRecordV2",t.MissingVerifier="MissingVerifier"}(zc||(zc={}));class Dc extends Error{constructor(t,e){super(e),this.name="SNSError",this.type=t,Error.captureStackTrace&&Error.captureStackTrace(this,Dc)}}class jc extends ne{toBuffer(){const t=super.toArray().reverse(),e=n.Buffer.from(t);if(4===e.length)return e;if(e.length>4)throw new Dc(zc.U32Overflow);const r=n.Buffer.alloc(4);return e.copy(r),r}static fromBuffer(t){if(4!==t.length)throw new Dc(zc.InvalidBufferLength,`Invalid buffer length: ${t.length}`);return new ne([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}class Wc extends ne{toBuffer(){const t=super.toArray().reverse(),e=n.Buffer.from(t);if(8===e.length)return e;if(e.length>8)throw new Dc(zc.U64Overflow);const r=n.Buffer.alloc(8);return e.copy(r),r}static fromBuffer(t){if(8!==t.length)throw new Dc(zc.U64Overflow,`Invalid buffer length: ${t.length}`);return new ne([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}function Fc(t,e,r,i,o,s,a,u,c,h,l){const f=[n.Buffer.from(Int8Array.from([0])),new jc(s.length).toBuffer(),s,a.toBuffer(),u.toBuffer()],d=n.Buffer.concat(f),p=[{pubkey:e,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!0,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!1}];return c?p.push({pubkey:c,isSigner:!0,isWritable:!1}):p.push({pubkey:new Wo(n.Buffer.alloc(32)),isSigner:!1,isWritable:!1}),h?p.push({pubkey:h,isSigner:!1,isWritable:!1}):p.push({pubkey:new Wo(n.Buffer.alloc(32)),isSigner:!1,isWritable:!1}),l&&p.push({pubkey:l,isSigner:!0,isWritable:!1}),new cs({keys:p,programId:t,data:d})}function Kc(t,e,r,i,o){const s=[n.Buffer.from(Int8Array.from([1])),r.toBuffer(),new jc(i.length).toBuffer(),i],a=n.Buffer.concat(s);return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!0,isWritable:!1}],programId:t,data:a})}function qc(t,e,r,i,o,s,a){const u=[n.Buffer.from(Int8Array.from([2])),r.toBuffer()],c=n.Buffer.concat(u),h=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:a||i,isSigner:!0,isWritable:!1}];return o&&h.push({pubkey:o,isSigner:!0,isWritable:!1}),a&&s&&(o||h.push({pubkey:Wo.default,isSigner:!1,isWritable:!1}),h.push({pubkey:s,isSigner:!1,isWritable:!1})),new cs({keys:h,programId:t,data:c})}function Vc(t,e,r,i){const o=[n.Buffer.from(Int8Array.from([3]))],s=n.Buffer.concat(o);return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!0,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0}],programId:t,data:s})}class Hc{constructor(t){this.tag=9,this.name=t.name,this.space=t.space}serialize(){return He(Hc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h,l){const f=n.Buffer.from(this.serialize()),d=[{pubkey:e,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:Ts.programId,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!1},{pubkey:u,isSigner:!0,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:h,isSigner:!1,isWritable:!0},{pubkey:yc,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1}];return new cs({keys:d,programId:t,data:f})}}Hc.schema=new Map([[Hc,{kind:"struct",fields:[["tag","u8"],["name","string"],["space","u32"]]}]]);class $c{constructor(t){this.tag=12,this.name=t.name}serialize(){return He($c.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h){const l=n.Buffer.from(this.serialize());let f=[];return f.push({pubkey:e,isSigner:!1,isWritable:!1}),f.push({pubkey:r,isSigner:!1,isWritable:!1}),f.push({pubkey:i,isSigner:!1,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!1,isWritable:!1}),f.push({pubkey:a,isSigner:!0,isWritable:!0}),f.push({pubkey:u,isSigner:!1,isWritable:!1}),c&&f.push({pubkey:c,isSigner:!1,isWritable:!0}),h&&f.push({pubkey:h,isSigner:!0,isWritable:!0}),new cs({keys:f,programId:t,data:l})}}$c.schema=new Map([[$c,{kind:"struct",fields:[["tag","u8"],["name","string"]]}]]);class Zc{constructor(t){this.tag=13,this.name=t.name,this.space=t.space,this.referrerIdxOpt=t.referrerIdxOpt}serialize(){return He(Zc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h,l,f,d,p,y,g,m){const w=n.Buffer.from(this.serialize());let b=[];return b.push({pubkey:e,isSigner:!1,isWritable:!1}),b.push({pubkey:r,isSigner:!1,isWritable:!1}),b.push({pubkey:i,isSigner:!1,isWritable:!0}),b.push({pubkey:o,isSigner:!1,isWritable:!0}),b.push({pubkey:s,isSigner:!1,isWritable:!1}),b.push({pubkey:a,isSigner:!1,isWritable:!1}),b.push({pubkey:u,isSigner:!0,isWritable:!0}),b.push({pubkey:c,isSigner:!1,isWritable:!0}),b.push({pubkey:h,isSigner:!1,isWritable:!1}),b.push({pubkey:l,isSigner:!1,isWritable:!1}),b.push({pubkey:f,isSigner:!1,isWritable:!1}),b.push({pubkey:d,isSigner:!1,isWritable:!0}),b.push({pubkey:p,isSigner:!1,isWritable:!1}),b.push({pubkey:y,isSigner:!1,isWritable:!1}),b.push({pubkey:g,isSigner:!1,isWritable:!1}),m&&b.push({pubkey:m,isSigner:!1,isWritable:!0}),new cs({keys:b,programId:t,data:w})}}Zc.schema=new Map([[Zc,{kind:"struct",fields:[["tag","u8"],["name","string"],["space","u32"],["referrerIdxOpt",{kind:"option",type:"u16"}]]}]]);class Gc{constructor(t){this.tag=17,this.name=t.name,this.space=t.space}serialize(){return He(Gc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h,l,f,d,p,y,g,m){const w=n.Buffer.from(this.serialize());let b=[];return b.push({pubkey:e,isSigner:!1,isWritable:!1}),b.push({pubkey:r,isSigner:!1,isWritable:!1}),b.push({pubkey:i,isSigner:!1,isWritable:!0}),b.push({pubkey:o,isSigner:!1,isWritable:!0}),b.push({pubkey:s,isSigner:!1,isWritable:!1}),b.push({pubkey:a,isSigner:!1,isWritable:!1}),b.push({pubkey:u,isSigner:!0,isWritable:!0}),b.push({pubkey:c,isSigner:!1,isWritable:!0}),b.push({pubkey:h,isSigner:!1,isWritable:!0}),b.push({pubkey:l,isSigner:!1,isWritable:!0}),b.push({pubkey:f,isSigner:!1,isWritable:!0}),b.push({pubkey:d,isSigner:!1,isWritable:!0}),b.push({pubkey:p,isSigner:!1,isWritable:!1}),b.push({pubkey:y,isSigner:!1,isWritable:!1}),b.push({pubkey:g,isSigner:!1,isWritable:!1}),b.push({pubkey:m,isSigner:!1,isWritable:!1}),new cs({keys:b,programId:t,data:w})}}Gc.schema=new Map([[Gc,{kind:"struct",fields:[["tag","u8"],["name","string"],["space","u32"]]}]]);class Yc{constructor(){this.tag=16}serialize(){return He(Yc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h){const l=n.Buffer.from(this.serialize());let f=[];return f.push({pubkey:e,isSigner:!1,isWritable:!1}),f.push({pubkey:r,isSigner:!1,isWritable:!1}),f.push({pubkey:i,isSigner:!1,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:s,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!1,isWritable:!1}),f.push({pubkey:c,isSigner:!0,isWritable:!1}),f.push({pubkey:h,isSigner:!1,isWritable:!0}),new cs({keys:f,programId:t,data:l})}}function Jc(t,e,r,i,o,s){const a=[n.Buffer.from(Int8Array.from([4])),s.toBuffer()],u=n.Buffer.concat(a);return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!0,isWritable:!1}],programId:t,data:u})}Yc.schema=new Map([[Yc,{kind:"struct",fields:[["tag","u8"]]}]]);const Xc=new Wo("nftD3vbNkNqfj2Sd3HZwbpw4BxxKWr4AjGb9X38JeZk"),Qc=n.Buffer.from("tokenized_name");var th;!function(t){t[t.Uninitialized=0]="Uninitialized",t[t.CentralState=1]="CentralState",t[t.ActiveRecord=2]="ActiveRecord",t[t.InactiveRecord=3]="InactiveRecord"}(th||(th={}));class eh{constructor(t){this.tag=t.tag,this.nonce=t.nonce,this.nameAccount=new Wo(t.nameAccount),this.owner=new Wo(t.owner),this.nftMint=new Wo(t.nftMint)}static deserialize(t){return Ge(this.schema,eh,t)}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Error("NFT record not found");return this.deserialize(r.data)}static async findKey(t,e){return await Wo.findProgramAddress([n.Buffer.from("nft_record"),t.toBuffer()],e)}}eh.schema=new Map([[eh,{kind:"struct",fields:[["tag","u8"],["nonce","u8"],["nameAccount",[32]],["owner",[32]],["nftMint",[32]]]}]]);const rh=async(t,e)=>{try{const[r]=await Wo.findProgramAddress([Qc,e.toBuffer()],Xc);if("0"===(await Uc(t,r)).supply.toString())return;const n=[{memcmp:{offset:0,bytes:r.toBase58()}},{memcmp:{offset:64,bytes:"2"}},{dataSize:165}],i=await t.getProgramAccounts(yc,{filters:n});if(1!=i.length)return;return new Wo(i[0].account.data.slice(32,64))}catch{return}},nh=async t=>{const e=await t.getProgramAccounts(Xc,{filters:[{memcmp:{offset:0,bytes:"3"}}]});return e.map((t=>new Wo(t.account.data.slice(66,98))))},ih=t=>[{memcmp:{offset:32,bytes:t}},{memcmp:{offset:64,bytes:"2"}}],oh=async(t,e)=>{const r=await(async(t,e)=>{const r=[{memcmp:{offset:0,bytes:"3"}},{memcmp:{offset:66,bytes:e.toBase58()}}];return await t.getProgramAccounts(Xc,{filters:r})})(t,e.mint);if(1===r.length)return eh.deserialize(r[0].account.data)},sh=async(t,e)=>{const r=[...ih(e.toBase58()),{dataSize:165}],n=(await t.getProgramAccounts(yc,{filters:r})).map((t=>Lc.decode(t.account.data))),i=n.map((e=>oh(t,e)));return(await Promise.all(i)).filter((t=>void 0!==t))};class ah{constructor(t){this.parentName=new Wo(t.parentName),this.owner=new Wo(t.owner),this.class=new Wo(t.class)}static async retrieve(t,e){var r;const n=await t.getAccountInfo(e);if(!n)throw new Dc(zc.AccountDoesNotExist);let i=Te(this.schema,ah,n.data);i.data=null===(r=n.data)||void 0===r?void 0:r.slice(this.HEADER_LEN);return{registry:i,nftOwner:await rh(t,e)}}static async _retrieveBatch(t,e){const r=await t.getMultipleAccountsInfo(e),n=t=>{if(!t)return;const e=Te(this.schema,ah,t);return e.data=null==t?void 0:t.slice(this.HEADER_LEN),e};return r.map((t=>n(null==t?void 0:t.data)))}static async retrieveBatch(t,e){let r=[];const n=[...e];for(;n.length>0;)r.push(...await this._retrieveBatch(t,n.splice(0,100)));return r}}ah.HEADER_LEN=96,ah.schema=new Map([[ah,{kind:"struct",fields:[["parentName",[32]],["owner",[32]],["class",[32]]]}]]);var uh={},ch={},hh=lh;function lh(t,e){if(!t)throw new Error(e||"Assertion failed")}lh.equal=function(t,e,r){if(t!=e)throw new Error(r||"Assertion failed: "+t+" != "+e)};var fh={exports:{}};"function"==typeof Object.create?fh.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:fh.exports=function(t,e){if(e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}};var dh=fh.exports,ph=hh,yh=dh;function gh(t,e){return 55296==(64512&t.charCodeAt(e))&&(!(e<0||e+1>=t.length)&&56320==(64512&t.charCodeAt(e+1)))}function mh(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function wh(t){return 1===t.length?"0"+t:t}function bh(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}ch.inherits=yh,ch.toArray=function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var r=[];if("string"==typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(t="0"+t),i=0;i<t.length;i+=2)r.push(parseInt(t[i]+t[i+1],16))}else for(var n=0,i=0;i<t.length;i++){var o=t.charCodeAt(i);o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=63&o|128):gh(t,i)?(o=65536+((1023&o)<<10)+(1023&t.charCodeAt(++i)),r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=63&o|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=63&o|128)}else for(i=0;i<t.length;i++)r[i]=0|t[i];return r},ch.toHex=function(t){for(var e="",r=0;r<t.length;r++)e+=wh(t[r].toString(16));return e},ch.htonl=mh,ch.toHex32=function(t,e){for(var r="",n=0;n<t.length;n++){var i=t[n];"little"===e&&(i=mh(i)),r+=bh(i.toString(16))}return r},ch.zero2=wh,ch.zero8=bh,ch.join32=function(t,e,r,n){var i=r-e;ph(i%4==0);for(var o=new Array(i/4),s=0,a=e;s<o.length;s++,a+=4){var u;u="big"===n?t[a]<<24|t[a+1]<<16|t[a+2]<<8|t[a+3]:t[a+3]<<24|t[a+2]<<16|t[a+1]<<8|t[a],o[s]=u>>>0}return o},ch.split32=function(t,e){for(var r=new Array(4*t.length),n=0,i=0;n<t.length;n++,i+=4){var o=t[n];"big"===e?(r[i]=o>>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},ch.rotr32=function(t,e){return t>>>e|t<<32-e},ch.rotl32=function(t,e){return t<<e|t>>>32-e},ch.sum32=function(t,e){return t+e>>>0},ch.sum32_3=function(t,e,r){return t+e+r>>>0},ch.sum32_4=function(t,e,r,n){return t+e+r+n>>>0},ch.sum32_5=function(t,e,r,n,i){return t+e+r+n+i>>>0},ch.sum64=function(t,e,r,n){var i=t[e],o=n+t[e+1]>>>0,s=(o<n?1:0)+r+i;t[e]=s>>>0,t[e+1]=o},ch.sum64_hi=function(t,e,r,n){return(e+n>>>0<e?1:0)+t+r>>>0},ch.sum64_lo=function(t,e,r,n){return e+n>>>0},ch.sum64_4_hi=function(t,e,r,n,i,o,s,a){var u=0,c=e;return u+=(c=c+n>>>0)<e?1:0,u+=(c=c+o>>>0)<o?1:0,t+r+i+s+(u+=(c=c+a>>>0)<a?1:0)>>>0},ch.sum64_4_lo=function(t,e,r,n,i,o,s,a){return e+n+o+a>>>0},ch.sum64_5_hi=function(t,e,r,n,i,o,s,a,u,c){var h=0,l=e;return h+=(l=l+n>>>0)<e?1:0,h+=(l=l+o>>>0)<o?1:0,h+=(l=l+a>>>0)<a?1:0,t+r+i+s+u+(h+=(l=l+c>>>0)<c?1:0)>>>0},ch.sum64_5_lo=function(t,e,r,n,i,o,s,a,u,c){return e+n+o+a+c>>>0},ch.rotr64_hi=function(t,e,r){return(e<<32-r|t>>>r)>>>0},ch.rotr64_lo=function(t,e,r){return(t<<32-r|e>>>r)>>>0},ch.shr64_hi=function(t,e,r){return t>>>r},ch.shr64_lo=function(t,e,r){return(t<<32-r|e>>>r)>>>0};var vh={},_h=ch,kh=hh;function Eh(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}vh.BlockHash=Eh,Eh.prototype.update=function(t,e){if(t=_h.toArray(t,e),this.pending?this.pending=this.pending.concat(t):this.pending=t,this.pendingTotal+=t.length,this.pending.length>=this._delta8){var r=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-r,t.length),0===this.pending.length&&(this.pending=null),t=_h.join32(t,0,t.length-r,this.endian);for(var n=0;n<t.length;n+=this._delta32)this._update(t,n,n+this._delta32)}return this},Eh.prototype.digest=function(t){return this.update(this._pad()),kh(null===this.pending),this._digest(t)},Eh.prototype._pad=function(){var t=this.pendingTotal,e=this._delta8,r=e-(t+this.padLength)%e,n=new Array(r+this.padLength);n[0]=128;for(var i=1;i<r;i++)n[i]=0;if(t<<=3,"big"===this.endian){for(var o=8;o<this.padLength;o++)n[i++]=0;n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=t>>>24&255,n[i++]=t>>>16&255,n[i++]=t>>>8&255,n[i++]=255&t}else for(n[i++]=255&t,n[i++]=t>>>8&255,n[i++]=t>>>16&255,n[i++]=t>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o<this.padLength;o++)n[i++]=0;return n};var Sh={},Ah={},xh=ch.rotr32;function Ih(t,e,r){return t&e^~t&r}function Bh(t,e,r){return t&e^t&r^e&r}function Mh(t,e,r){return t^e^r}Ah.ft_1=function(t,e,r,n){return 0===t?Ih(e,r,n):1===t||3===t?Mh(e,r,n):2===t?Bh(e,r,n):void 0},Ah.ch32=Ih,Ah.maj32=Bh,Ah.p32=Mh,Ah.s0_256=function(t){return xh(t,2)^xh(t,13)^xh(t,22)},Ah.s1_256=function(t){return xh(t,6)^xh(t,11)^xh(t,25)},Ah.g0_256=function(t){return xh(t,7)^xh(t,18)^t>>>3},Ah.g1_256=function(t){return xh(t,17)^xh(t,19)^t>>>10};var Ph=ch,Lh=vh,Oh=Ah,Th=Ph.rotl32,Rh=Ph.sum32,Uh=Ph.sum32_5,Ch=Oh.ft_1,Nh=Lh.BlockHash,zh=[1518500249,1859775393,2400959708,3395469782];function Dh(){if(!(this instanceof Dh))return new Dh;Nh.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}Ph.inherits(Dh,Nh);var jh=Dh;Dh.blockSize=512,Dh.outSize=160,Dh.hmacStrength=80,Dh.padLength=64,Dh.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;n<r.length;n++)r[n]=Th(r[n-3]^r[n-8]^r[n-14]^r[n-16],1);var i=this.h[0],o=this.h[1],s=this.h[2],a=this.h[3],u=this.h[4];for(n=0;n<r.length;n++){var c=~~(n/20),h=Uh(Th(i,5),Ch(c,o,s,a),u,r[n],zh[c]);u=a,a=s,s=Th(o,30),o=i,i=h}this.h[0]=Rh(this.h[0],i),this.h[1]=Rh(this.h[1],o),this.h[2]=Rh(this.h[2],s),this.h[3]=Rh(this.h[3],a),this.h[4]=Rh(this.h[4],u)},Dh.prototype._digest=function(t){return"hex"===t?Ph.toHex32(this.h,"big"):Ph.split32(this.h,"big")};var Wh=ch,Fh=vh,Kh=Ah,qh=hh,Vh=Wh.sum32,Hh=Wh.sum32_4,$h=Wh.sum32_5,Zh=Kh.ch32,Gh=Kh.maj32,Yh=Kh.s0_256,Jh=Kh.s1_256,Xh=Kh.g0_256,Qh=Kh.g1_256,tl=Fh.BlockHash,el=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function rl(){if(!(this instanceof rl))return new rl;tl.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=el,this.W=new Array(64)}Wh.inherits(rl,tl);var nl=rl;rl.blockSize=512,rl.outSize=256,rl.hmacStrength=192,rl.padLength=64,rl.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;n<r.length;n++)r[n]=Hh(Qh(r[n-2]),r[n-7],Xh(r[n-15]),r[n-16]);var i=this.h[0],o=this.h[1],s=this.h[2],a=this.h[3],u=this.h[4],c=this.h[5],h=this.h[6],l=this.h[7];for(qh(this.k.length===r.length),n=0;n<r.length;n++){var f=$h(l,Jh(u),Zh(u,c,h),this.k[n],r[n]),d=Vh(Yh(i),Gh(i,o,s));l=h,h=c,c=u,u=Vh(a,f),a=s,s=o,o=i,i=Vh(f,d)}this.h[0]=Vh(this.h[0],i),this.h[1]=Vh(this.h[1],o),this.h[2]=Vh(this.h[2],s),this.h[3]=Vh(this.h[3],a),this.h[4]=Vh(this.h[4],u),this.h[5]=Vh(this.h[5],c),this.h[6]=Vh(this.h[6],h),this.h[7]=Vh(this.h[7],l)},rl.prototype._digest=function(t){return"hex"===t?Wh.toHex32(this.h,"big"):Wh.split32(this.h,"big")};var il=ch,ol=nl;function sl(){if(!(this instanceof sl))return new sl;ol.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}il.inherits(sl,ol);var al=sl;sl.blockSize=512,sl.outSize=224,sl.hmacStrength=192,sl.padLength=64,sl.prototype._digest=function(t){return"hex"===t?il.toHex32(this.h.slice(0,7),"big"):il.split32(this.h.slice(0,7),"big")};var ul=ch,cl=vh,hl=hh,ll=ul.rotr64_hi,fl=ul.rotr64_lo,dl=ul.shr64_hi,pl=ul.shr64_lo,yl=ul.sum64,gl=ul.sum64_hi,ml=ul.sum64_lo,wl=ul.sum64_4_hi,bl=ul.sum64_4_lo,vl=ul.sum64_5_hi,_l=ul.sum64_5_lo,kl=cl.BlockHash,El=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function Sl(){if(!(this instanceof Sl))return new Sl;kl.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=El,this.W=new Array(160)}ul.inherits(Sl,kl);var Al=Sl;function xl(t,e,r,n,i){var o=t&r^~t&i;return o<0&&(o+=4294967296),o}function Il(t,e,r,n,i,o){var s=e&n^~e&o;return s<0&&(s+=4294967296),s}function Bl(t,e,r,n,i){var o=t&r^t&i^r&i;return o<0&&(o+=4294967296),o}function Ml(t,e,r,n,i,o){var s=e&n^e&o^n&o;return s<0&&(s+=4294967296),s}function Pl(t,e){var r=ll(t,e,28)^ll(e,t,2)^ll(e,t,7);return r<0&&(r+=4294967296),r}function Ll(t,e){var r=fl(t,e,28)^fl(e,t,2)^fl(e,t,7);return r<0&&(r+=4294967296),r}function Ol(t,e){var r=ll(t,e,14)^ll(t,e,18)^ll(e,t,9);return r<0&&(r+=4294967296),r}function Tl(t,e){var r=fl(t,e,14)^fl(t,e,18)^fl(e,t,9);return r<0&&(r+=4294967296),r}function Rl(t,e){var r=ll(t,e,1)^ll(t,e,8)^dl(t,e,7);return r<0&&(r+=4294967296),r}function Ul(t,e){var r=fl(t,e,1)^fl(t,e,8)^pl(t,e,7);return r<0&&(r+=4294967296),r}function Cl(t,e){var r=ll(t,e,19)^ll(e,t,29)^dl(t,e,6);return r<0&&(r+=4294967296),r}function Nl(t,e){var r=fl(t,e,19)^fl(e,t,29)^pl(t,e,6);return r<0&&(r+=4294967296),r}Sl.blockSize=1024,Sl.outSize=512,Sl.hmacStrength=192,Sl.padLength=128,Sl.prototype._prepareBlock=function(t,e){for(var r=this.W,n=0;n<32;n++)r[n]=t[e+n];for(;n<r.length;n+=2){var i=Cl(r[n-4],r[n-3]),o=Nl(r[n-4],r[n-3]),s=r[n-14],a=r[n-13],u=Rl(r[n-30],r[n-29]),c=Ul(r[n-30],r[n-29]),h=r[n-32],l=r[n-31];r[n]=wl(i,o,s,a,u,c,h,l),r[n+1]=bl(i,o,s,a,u,c,h,l)}},Sl.prototype._update=function(t,e){this._prepareBlock(t,e);var r=this.W,n=this.h[0],i=this.h[1],o=this.h[2],s=this.h[3],a=this.h[4],u=this.h[5],c=this.h[6],h=this.h[7],l=this.h[8],f=this.h[9],d=this.h[10],p=this.h[11],y=this.h[12],g=this.h[13],m=this.h[14],w=this.h[15];hl(this.k.length===r.length);for(var b=0;b<r.length;b+=2){var v=m,_=w,k=Ol(l,f),E=Tl(l,f),S=xl(l,f,d,p,y),A=Il(l,f,d,p,y,g),x=this.k[b],I=this.k[b+1],B=r[b],M=r[b+1],P=vl(v,_,k,E,S,A,x,I,B,M),L=_l(v,_,k,E,S,A,x,I,B,M);v=Pl(n,i),_=Ll(n,i),k=Bl(n,i,o,s,a),E=Ml(n,i,o,s,a,u);var O=gl(v,_,k,E),T=ml(v,_,k,E);m=y,w=g,y=d,g=p,d=l,p=f,l=gl(c,h,P,L),f=ml(h,h,P,L),c=a,h=u,a=o,u=s,o=n,s=i,n=gl(P,L,O,T),i=ml(P,L,O,T)}yl(this.h,0,n,i),yl(this.h,2,o,s),yl(this.h,4,a,u),yl(this.h,6,c,h),yl(this.h,8,l,f),yl(this.h,10,d,p),yl(this.h,12,y,g),yl(this.h,14,m,w)},Sl.prototype._digest=function(t){return"hex"===t?ul.toHex32(this.h,"big"):ul.split32(this.h,"big")};var zl=ch,Dl=Al;function jl(){if(!(this instanceof jl))return new jl;Dl.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}zl.inherits(jl,Dl);var Wl=jl;jl.blockSize=1024,jl.outSize=384,jl.hmacStrength=192,jl.padLength=128,jl.prototype._digest=function(t){return"hex"===t?zl.toHex32(this.h.slice(0,12),"big"):zl.split32(this.h.slice(0,12),"big")},Sh.sha1=jh,Sh.sha224=al,Sh.sha256=nl,Sh.sha384=Wl,Sh.sha512=Al;var Fl={},Kl=ch,ql=vh,Vl=Kl.rotl32,Hl=Kl.sum32,$l=Kl.sum32_3,Zl=Kl.sum32_4,Gl=ql.BlockHash;function Yl(){if(!(this instanceof Yl))return new Yl;Gl.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function Jl(t,e,r,n){return t<=15?e^r^n:t<=31?e&r|~e&n:t<=47?(e|~r)^n:t<=63?e&n|r&~n:e^(r|~n)}function Xl(t){return t<=15?0:t<=31?1518500249:t<=47?1859775393:t<=63?2400959708:2840853838}function Ql(t){return t<=15?1352829926:t<=31?1548603684:t<=47?1836072691:t<=63?2053994217:0}Kl.inherits(Yl,Gl),Fl.ripemd160=Yl,Yl.blockSize=512,Yl.outSize=160,Yl.hmacStrength=192,Yl.padLength=64,Yl.prototype._update=function(t,e){for(var r=this.h[0],n=this.h[1],i=this.h[2],o=this.h[3],s=this.h[4],a=r,u=n,c=i,h=o,l=s,f=0;f<80;f++){var d=Hl(Vl(Zl(r,Jl(f,n,i,o),t[tf[f]+e],Xl(f)),rf[f]),s);r=s,s=o,o=Vl(i,10),i=n,n=d,d=Hl(Vl(Zl(a,Jl(79-f,u,c,h),t[ef[f]+e],Ql(f)),nf[f]),l),a=l,l=h,h=Vl(c,10),c=u,u=d}d=$l(this.h[1],i,h),this.h[1]=$l(this.h[2],o,l),this.h[2]=$l(this.h[3],s,a),this.h[3]=$l(this.h[4],r,u),this.h[4]=$l(this.h[0],n,c),this.h[0]=d},Yl.prototype._digest=function(t){return"hex"===t?Kl.toHex32(this.h,"little"):Kl.split32(this.h,"little")};var tf=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],ef=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],rf=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],nf=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],of=ch,sf=hh;function af(t,e,r){if(!(this instanceof af))return new af(t,e,r);this.Hash=t,this.blockSize=t.blockSize/8,this.outSize=t.outSize/8,this.inner=null,this.outer=null,this._init(of.toArray(e,r))}var uf=af;af.prototype._init=function(t){t.length>this.blockSize&&(t=(new this.Hash).update(t).digest()),sf(t.length<=this.blockSize);for(var e=t.length;e<this.blockSize;e++)t.push(0);for(e=0;e<t.length;e++)t[e]^=54;for(this.inner=(new this.Hash).update(t),e=0;e<t.length;e++)t[e]^=106;this.outer=(new this.Hash).update(t)},af.prototype.update=function(t,e){return this.inner.update(t,e),this},af.prototype.digest=function(t){return this.outer.update(this.inner.digest()),this.outer.digest(t)},function(t){var e=uh;e.utils=ch,e.common=vh,e.sha=Sh,e.ripemd=Fl,e.hmac=uf,e.sha1=e.sha.sha1,e.sha256=e.sha.sha256,e.sha224=e.sha.sha224,e.sha384=e.sha.sha384,e.sha512=e.sha.sha512,e.ripemd160=e.ripemd.ripemd160}();var cf=e(uh);let hf=!1,lf=!1;const ff={debug:1,default:2,info:2,warning:3,error:4,off:5};let df=ff.default,pf=null;const yf=function(){try{const t=[];if(["NFD","NFC","NFKD","NFKC"].forEach((e=>{try{if("test"!=="test".normalize(e))throw new Error("bad normalize")}catch(r){t.push(e)}})),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}();var gf,mf;!function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"}(gf||(gf={})),function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",t.TRANSACTION_REPLACED="TRANSACTION_REPLACED",t.ACTION_REJECTED="ACTION_REJECTED"}(mf||(mf={}));const wf="0123456789abcdef";class bf{constructor(t){Object.defineProperty(this,"version",{enumerable:!0,value:t,writable:!1})}_log(t,e){const r=t.toLowerCase();null==ff[r]&&this.throwArgumentError("invalid log level name","logLevel",t),df>ff[r]||console.log.apply(console,e)}debug(...t){this._log(bf.levels.DEBUG,t)}info(...t){this._log(bf.levels.INFO,t)}warn(...t){this._log(bf.levels.WARNING,t)}makeError(t,e,r){if(lf)return this.makeError("censored error",e,{});e||(e=bf.errors.UNKNOWN_ERROR),r||(r={});const n=[];Object.keys(r).forEach((t=>{const e=r[t];try{if(e instanceof Uint8Array){let r="";for(let t=0;t<e.length;t++)r+=wf[e[t]>>4],r+=wf[15&e[t]];n.push(t+"=Uint8Array(0x"+r+")")}else n.push(t+"="+JSON.stringify(e))}catch(e){n.push(t+"="+JSON.stringify(r[t].toString()))}})),n.push(`code=${e}`),n.push(`version=${this.version}`);const i=t;let o="";switch(e){case mf.NUMERIC_FAULT:{o="NUMERIC_FAULT";const e=t;switch(e){case"overflow":case"underflow":case"division-by-zero":o+="-"+e;break;case"negative-power":case"negative-width":o+="-unsupported";break;case"unbound-bitwise-result":o+="-unbound-result"}break}case mf.CALL_EXCEPTION:case mf.INSUFFICIENT_FUNDS:case mf.MISSING_NEW:case mf.NONCE_EXPIRED:case mf.REPLACEMENT_UNDERPRICED:case mf.TRANSACTION_REPLACED:case mf.UNPREDICTABLE_GAS_LIMIT:o=e}o&&(t+=" [ See: https://links.ethers.org/v5-errors-"+o+" ]"),n.length&&(t+=" ("+n.join(", ")+")");const s=new Error(t);return s.reason=i,s.code=e,Object.keys(r).forEach((function(t){s[t]=r[t]})),s}throwError(t,e,r){throw this.makeError(t,e,r)}throwArgumentError(t,e,r){return this.throwError(t,bf.errors.INVALID_ARGUMENT,{argument:e,value:r})}assert(t,e,r,n){t||this.throwError(e,r,n)}assertArgument(t,e,r,n){t||this.throwArgumentError(e,r,n)}checkNormalize(t){yf&&this.throwError("platform missing String.prototype.normalize",bf.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:yf})}checkSafeUint53(t,e){"number"==typeof t&&(null==e&&(e="value not safe"),(t<0||t>=9007199254740991)&&this.throwError(e,bf.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:t}),t%1&&this.throwError(e,bf.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:t}))}checkArgumentCount(t,e,r){r=r?": "+r:"",t<e&&this.throwError("missing argument"+r,bf.errors.MISSING_ARGUMENT,{count:t,expectedCount:e}),t>e&&this.throwError("too many arguments"+r,bf.errors.UNEXPECTED_ARGUMENT,{count:t,expectedCount:e})}checkNew(t,e){t!==Object&&null!=t||this.throwError("missing new",bf.errors.MISSING_NEW,{name:e.name})}checkAbstract(t,e){t===e?this.throwError("cannot instantiate abstract class "+JSON.stringify(e.name)+" directly; use a sub-class",bf.errors.UNSUPPORTED_OPERATION,{name:t.name,operation:"new"}):t!==Object&&null!=t||this.throwError("missing new",bf.errors.MISSING_NEW,{name:e.name})}static globalLogger(){return pf||(pf=new bf("logger/5.7.0")),pf}static setCensorship(t,e){if(!t&&e&&this.globalLogger().throwError("cannot permanently disable censorship",bf.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),hf){if(!t)return;this.globalLogger().throwError("error censorship permanent",bf.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}lf=!!t,hf=!!e}static setLogLevel(t){const e=ff[t.toLowerCase()];null!=e?df=e:bf.globalLogger().warn("invalid log level - "+t)}static from(t){return new bf(t)}}bf.errors=mf,bf.levels=gf;const vf=new bf("bytes/5.7.0");function _f(t){return t.slice||(t.slice=function(){const e=Array.prototype.slice.call(arguments);return _f(new Uint8Array(Array.prototype.slice.apply(t,e)))}),t}function kf(t){return"number"==typeof t&&t==t&&t%1==0}function Ef(t,e){if(e||(e={}),"number"==typeof t){vf.checkSafeUint53(t,"invalid arrayify value");const e=[];for(;t;)e.unshift(255&t),t=parseInt(String(t/256));return 0===e.length&&e.push(0),_f(new Uint8Array(e))}if(e.allowMissingPrefix&&"string"==typeof t&&"0x"!==t.substring(0,2)&&(t="0x"+t),function(t){return!!t.toHexString}(t)&&(t=t.toHexString()),function(t,e){if("string"!=typeof t||!t.match(/^0x[0-9A-Fa-f]*$/))return!1;if(e&&t.length!==2+2*e)return!1;return!0}(t)){let r=t.substring(2);r.length%2&&("left"===e.hexPad?r="0"+r:"right"===e.hexPad?r+="0":vf.throwArgumentError("hex data is odd-length","value",t));const n=[];for(let t=0;t<r.length;t+=2)n.push(parseInt(r.substring(t,t+2),16));return _f(new Uint8Array(n))}return function(t){if(null==t)return!1;if(t.constructor===Uint8Array)return!0;if("string"==typeof t)return!1;if(!kf(t.length)||t.length<0)return!1;for(let e=0;e<t.length;e++){const r=t[e];if(!kf(r)||r<0||r>=256)return!1}return!0}(t)?_f(new Uint8Array(t)):vf.throwArgumentError("invalid arrayify value","value",t)}function Sf(t){return"0x"+cf.sha256().update(Ef(t)).digest("hex")}new bf("sha2/5.7.0");const Af=new Wo("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX"),xf="SPL Name Service",If=new Wo("58PwtjSDuFHuUkYjH9BYnnQKHfwo9reZhC2zMJv9JPkx"),Bf=new Wo("jCebN34bUfdeUYJT13J1yG16XWQpt5PDx6Mse9GUqhR"),Mf=new Wo("ETp9eKXVv1dWwHSpsXRUuXHmw24PwRkttCGVgpZEY9zF"),Pf=new Wo("AUoZ3YAhV3b2rZeEH93UMZHXUZcTramBvb4d9YEVySkc"),Lf=new Wo("33m47vH6Eav6jr5Ry86XjhRft2jRBLDnDgPSHoquXi2Z"),Of=new Wo("FvPH7PrVrLGKPfqaf3xJodFTjZriqrAXXLTVWEorTFBi"),Tf=new Wo("4YcexoW3r78zz16J2aqmukBLRwGq6rAvWzJpkYAXqebv"),Rf=96,Uf=new Wo("DmSyHDSM9eSLyvoLsPvDr5fRRFZ7Bfr3h3ULvWpgQaq7"),Cf=new Wo("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),Nf=[new Wo("3ogYncmMM5CmytsGCqKHydmXmKUZ6sGWvizkzqwT7zb1"),new Wo("DM1jJCkZZEwY5tmWbgvKRxsDFzXCdbfrYCCH1CtwguEs"),new Wo("ADCp4QXFajHrhy4f43pD6GJFtQLkdBY2mjS9DfCk7tNW"),new Wo("2XTgjw8yi1E3Etgj4CUyRD7Zk49gynH2U9gA5N2MY4NP"),new Wo("5oDWj8vr3vbcq9JZTtwXqrkCMZggMsDzNietvbr1BNfe"),new Wo("8kJqxAbqbPLGLMgB6FhLcnw2SiUEavx2aEGM3WQGhtJF"),new Wo("HemvJzwxvVpWBjPETpaseAH395WAxb2G73MeUfjVkK1u")],zf=new Map([["EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","USDC"],["Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB","USDT"],["So11111111111111111111111111111111111111112","SOL"],["EchesyfXePKdLtoiZSL8pBe8Myagyy8ZRqsACNCFGnvp","FIDA"],["FeGn77dhg1KXRRFeSwwMiykZnZPw5JXW6naf2aQgZDQf","ETH"],["7i5KKsX2weiTkry7jA4ZwSuXGhs5eJBEjY8vVxR4pfRx","GMT"],["AFbX8oGjGpmVFywbVouvhQSRmiW2aR1mohfahi4Y2AdB","GST"],["mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So","MSOL"],["DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263","BONK"],["EPeUFDgHRxs9xxEPVaL6kfGQvCon7jmAWKVUHuux1Tpz","BAT"],["HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3","PYTH"],["bSo13r4TkiE4KumL71LsHTPpL2euBYLFx6h9HP3piy1","BSOL"]]),Df=new Wo("AHtgzX45WTKfkPG53L6WYhGEXwQkN1BVknET3sVsLL8J"),jf=new Wo("GcWEQ9K78FV7LEHteFVciYApERk5YvQuFDQPk1yYJVXi"),Wf=new Wo("BPeXUQDqGbzxeK1LJby6ugvCBuo7kRSEUkjD726mUVsz"),Ff=new Wo("72aLKvXeV4aansAQtxKymeXDevT5ed6sCuz9iN62ugPT"),Kf=new Wo("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");async function qf(t,e){if(!await t.getAccountInfo(e))throw new Dc(zc.AccountDoesNotExist);return ah.retrieve(t,e)}async function Vf(t){const e=xf+t,r=Sf(n.Buffer.from(e,"utf8")).slice(2);return n.Buffer.from(r,"hex")}async function Hf(t,e,r){const i=[t];e?i.push(e.toBuffer()):i.push(n.Buffer.alloc(32)),r?i.push(r.toBuffer()):i.push(n.Buffer.alloc(32));const[o]=await Wo.findProgramAddress(i,Af);return o}async function $f(t,e){const r=await Vf(e.toBase58()),n=await Hf(r,Lf),{registry:i}=await ah.retrieve(t,n);if(!i.data)throw new Dc(zc.NoAccountData);const o=new ne(i.data.slice(0,4),"le").toNumber();return i.data.slice(4,4+o).toString()}async function Zf(t,e){let r=[];for(let t of e){const e=await Vf(t.toBase58()),n=await Hf(e,Lf);r.push(n)}return(await ah.retrieveBatch(t,r)).map((t=>{if(void 0===t||void 0===t.data)return;let e=new ne(t.data.slice(0,4),"le").toNumber();return t.data.slice(4,4+e).toString()}))}const Gf=async(t,e=If)=>{let r=await Vf(t);return{pubkey:await Hf(r,void 0,e),hashed:r}},Yf=async(t,e=!1)=>{t.endsWith(".sol")&&(t=t.slice(0,-4));const r=t.split(".");if(2===r.length){const t=n.Buffer.from([e?1:0]).toString().concat(r[0]),{pubkey:i}=await Gf(r[1]);return{...await Gf(t,i),isSub:!0,parent:i}}if(3===r.length&&e){const{pubkey:t}=await Gf(r[2]),{pubkey:e}=await Gf("\0".concat(r[1]),t),i=n.Buffer.from([1]).toString();return{...await Gf(i.concat(r[0]),e),isSub:!0,parent:t,isSubRecord:!0}}if(r.length>=3)throw new Dc(zc.InvalidInput);return{...await Gf(t,If),isSub:!1,parent:void 0}},Jf=async(t,e)=>{const{pubkey:r,parent:n}=await Yf(t),i=await Vf(r.toBase58());return await Hf(i,Lf,e?n:void 0)};var Xf={},Qf=r(pc),td={};Object.defineProperty(td,"__esModule",{value:!0}),td.readBigUInt64LE=td.readBigInt64LE=void 0;var ed=function(){return new Error("Attempt to access memory outside buffer bounds")},rd=function(t,e,r){return new Error('The "'+t+'" argument must be of type '+e+". Received "+r)},nd=function(t,e,r){return new Error('The value of "'+t+" is out of range. It must be "+e+". Received "+r)};function id(t,e){if("number"!=typeof t)throw rd(e,"number",t)}function od(t,e){if(Math.floor(t)!==t)throw id(t,"offset"),nd("offset","an integer",t);if(e<0)throw ed();throw nd("offset",">= 0 and <= "+e,t)}td.readBigInt64LE=function(t,e){void 0===e&&(e=0),id(e,"offset");var r=t[e],n=t[e+7];void 0!==r&&void 0!==n||od(e,t.length-8);var i=t[e+4]+t[e+5]*Math.pow(2,8)+t[e+6]*Math.pow(2,16)+(n<<24);return(BigInt(i)<<BigInt(32))+BigInt(r+t[++e]*Math.pow(2,8)+t[++e]*Math.pow(2,16)+t[++e]*Math.pow(2,24))},td.readBigUInt64LE=function(t,e){void 0===e&&(e=0),id(e,"offset");var r=t[e],n=t[e+7];void 0!==r&&void 0!==n||od(e,t.length-8);var i=r+t[++e]*Math.pow(2,8)+t[++e]*Math.pow(2,16)+t[++e]*Math.pow(2,24),o=t[++e]+t[++e]*Math.pow(2,8)+t[++e]*Math.pow(2,16)+n*Math.pow(2,24);return BigInt(i)+(BigInt(o)<<BigInt(32))};var sd,ad={};function ud(){if(sd)return ad;sd=1;var e=t&&t.__assign||function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)},r=t&&t.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},n=t&&t.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};Object.defineProperty(ad,"__esModule",{value:!0}),ad.PythConnection=void 0;var i=e_(),o=function(){function t(t,e,r,n){void 0===r&&(r="finalized"),this.productAccountKeyToProduct={},this.priceAccountKeyToProductAccountKey={},this.callbacks=[],this.connection=t,this.pythProgramKey=e,this.commitment=r,this.feedIds=n}return t.prototype.handleProductAccount=function(t,r,n){var o=i.parseProductData(r.data);this.productAccountKeyToProduct[t.toString()]={key:t,slot:n,accountInfo:e(e({},r),{data:o})},o.priceAccountKey&&(this.priceAccountKeyToProductAccountKey[o.priceAccountKey.toString()]=t.toString())},t.prototype.handlePriceAccount=function(t,r,n){var o=this.productAccountKeyToProduct[this.priceAccountKeyToProductAccountKey[t.toString()]];if(void 0===o)throw new Error("Got a price update for an unknown product. This is a bug in the library, please report it to the developers.");for(var s=i.parsePriceData(r.data,n),a={key:t,slot:n,accountInfo:e(e({},r),{data:s})},u=0,c=this.callbacks;u<c.length;u++){(0,c[u])(o,a)}},t.prototype.handleAccount=function(t,e,r,n){var o=i.parseBaseData(e.data);if(o)switch(o.type){case i.AccountType.Mapping:break;case i.AccountType.Product:this.handleProductAccount(t,e,n);break;case i.AccountType.Price:r||this.handlePriceAccount(t,e,n);break;case i.AccountType.Test:case i.AccountType.Permission:break;default:throw new Error("Unknown account type: "+o.type+". Try upgrading pyth-client.")}},t.prototype.start=function(){return r(this,void 0,void 0,(function(){var t,e,r,i,o,s,a,u,c,h,l,f=this;return n(this,(function(n){switch(n.label){case 0:return[4,Promise.all([this.connection.getProgramAccounts(this.pythProgramKey,this.commitment),this.connection.getSlot(this.commitment)])];case 1:for(t=n.sent(),e=t[0],r=t[1],i=0,o=e;i<o.length;i++)l=o[i],this.handleAccount(l.pubkey,l.account,!0,r);if(this.feedIds)for(s=this.feedIds.map((function(t){return t.toString()})),e=e.filter((function(t){return s.includes(t.pubkey.toString())})),a=function(t){u.connection.onAccountChange(t.pubkey,(function(e,r){f.handleAccount(t.pubkey,e,!1,r.slot)}),u.commitment)},u=this,c=0,h=e;c<h.length;c++)l=h[c],a(l);else this.connection.onProgramAccountChange(this.pythProgramKey,(function(t,e){f.handleAccount(t.accountId,t.accountInfo,!1,e.slot)}),this.commitment);return[2]}}))}))},t.prototype.onPriceChange=function(t){this.callbacks.push((function(e,r){return t(e.accountInfo.data.product,r.accountInfo.data)}))},t.prototype.onPriceChangeVerbose=function(t){this.callbacks.push(t)},t.prototype.stop=function(){return r(this,void 0,void 0,(function(){return n(this,(function(t){return this.callbacks=[],[2]}))}))},t}();return ad.PythConnection=o,ad}var cd,hd={};function ld(){if(cd)return hd;cd=1;var e=t&&t.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},r=t&&t.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};Object.defineProperty(hd,"__esModule",{value:!0}),hd.PythHttpClient=void 0;var n=e_(),i=function(){function t(t,e,r){void 0===r&&(r="finalized"),this.connection=t,this.pythProgramKey=e,this.commitment=r}return t.prototype.getData=function(){return e(this,void 0,void 0,(function(){var t,e,i,o,s,a,u,c,h,l,f,d;return r(this,(function(r){switch(r.label){case 0:return t=new Set,e=new Set,i=new Set,o=new Map,s=new Map,a=new Array,[4,Promise.all([this.connection.getProgramAccounts(this.pythProgramKey,this.commitment),this.connection.getSlot(this.commitment)])];case 1:return u=r.sent(),c=u[0],h=u[1],l=new Array,f=new Map,c.forEach((function(r){var s=n.parseBaseData(r.account.data);if(s)switch(s.type){case n.AccountType.Mapping:break;case n.AccountType.Product:var a=n.parseProductData(r.account.data);f.set(r.pubkey.toBase58(),a.product),t.add(a.product.asset_type),e.add(a.product.symbol),i.add(a.product),o.set(a.product.symbol,a.product);break;case n.AccountType.Price:var u=n.parsePriceData(r.account.data,h);l.push(u);break;case n.AccountType.Test:break;case n.AccountType.Permission:d=n.parsePermissionData(r.account.data);break;default:throw new Error("Unknown account type: "+s.type+". Try upgrading pyth-client.")}})),l.forEach((function(t){var e=f.get(t.productAccountKey.toBase58());e&&(s.set(e.symbol,t),a.push(t))})),[2,{assetTypes:Array.from(t),symbols:Array.from(e),products:Array.from(i),productFromSymbol:o,productPrice:s,prices:a,permissionData:d}]}}))}))},t.prototype.getAssetPricesFromAccounts=function(t){return e(this,void 0,void 0,(function(){var e,i,o,s,a,u,c,h;return r(this,(function(r){switch(r.label){case 0:return e=[],[4,Promise.all([this.connection.getMultipleAccountsInfo(t,this.commitment),this.connection.getSlot(this.commitment)])];case 1:for(i=r.sent(),o=i[0],s=i[1],a=0;a<t.length;a++){if(!(u=o[a]))throw new Error("Could not get account info for account "+t[a].toBase58());if(void 0===(c=n.parseBaseData(u.data))||c.type!==n.AccountType.Price)throw new Error("Account "+t[a].toBase58()+" is not a price account");h=n.parsePriceData(u.data,s),e.push(h)}return[2,e]}}))}))},t}();return hd.PythHttpClient=i,hd}var fd,dd={};var pd,yd={},gd={},md=e(se("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")),wd={exports:{}};function bd(){if(pd)return wd.exports;pd=1;const t=/[\p{Lu}]/u,e=/[\p{Ll}]/u,r=/^[\p{Lu}](?![\p{Lu}])/gu,n=/([\p{Alpha}\p{N}_]|$)/u,i=/[_.\- ]+/,o=new RegExp("^"+i.source),s=new RegExp(i.source+n.source,"gu"),a=new RegExp("\\d+"+n.source,"gu"),u=(n,i)=>{if("string"!=typeof n&&!Array.isArray(n))throw new TypeError("Expected the input to be `string | string[]`");if(i={pascalCase:!1,preserveConsecutiveUppercase:!1,...i},n=Array.isArray(n)?n.map((t=>t.trim())).filter((t=>t.length)).join("-"):n.trim(),0===n.length)return"";const u=!1===i.locale?t=>t.toLowerCase():t=>t.toLocaleLowerCase(i.locale),c=!1===i.locale?t=>t.toUpperCase():t=>t.toLocaleUpperCase(i.locale);if(1===n.length)return i.pascalCase?c(n):u(n);return n!==u(n)&&(n=((r,n,i)=>{let o=!1,s=!1,a=!1;for(let u=0;u<r.length;u++){const c=r[u];o&&t.test(c)?(r=r.slice(0,u)+"-"+r.slice(u),o=!1,a=s,s=!0,u++):s&&a&&e.test(c)?(r=r.slice(0,u-1)+"-"+r.slice(u-1),a=s,s=!1,o=!0):(o=n(c)===c&&i(c)!==c,a=s,s=i(c)===c&&n(c)!==c)}return r})(n,u,c)),n=n.replace(o,""),n=i.preserveConsecutiveUppercase?((t,e)=>(r.lastIndex=0,t.replace(r,(t=>e(t)))))(n,u):u(n),i.pascalCase&&(n=c(n.charAt(0))+n.slice(1)),((t,e)=>(s.lastIndex=0,a.lastIndex=0,t.replace(s,((t,r)=>e(r))).replace(a,(t=>e(t)))))(n,c)};return wd.exports=u,wd.exports.default=u,wd.exports}var vd=e(bd()),_d={},kd={};class Ed{constructor(t,e){if(!Number.isInteger(t))throw new TypeError("span must be an integer");this.span=t,this.property=e}makeDestinationObject(){return{}}decode(t,e){throw new Error("Layout is abstract")}encode(t,e,r){throw new Error("Layout is abstract")}getSpan(t,e){if(0>this.span)throw new RangeError("indeterminate span");return this.span}replicate(t){const e=Object.create(this.constructor.prototype);return Object.assign(e,this),e.property=t,e}fromArray(t){}}function Sd(t,e){return e.property?t+"["+e.property+"]":t}kd.Layout=Ed,kd.nameWithProperty=Sd,kd.bindConstructorLayout=function(t,e){if("function"!=typeof t)throw new TypeError("Class must be constructor");if(t.hasOwnProperty("layout_"))throw new Error("Class is already bound to a layout");if(!(e&&e instanceof Ed))throw new TypeError("layout must be a Layout");if(e.hasOwnProperty("boundConstructor_"))throw new Error("layout is already bound to a constructor");t.layout_=e,e.boundConstructor_=t,e.makeDestinationObject=()=>new t,Object.defineProperty(t.prototype,"encode",{value:function(t,r){return e.encode(this,t,r)},writable:!0}),Object.defineProperty(t,"decode",{value:function(t,r){return e.decode(t,r)},writable:!0})};class Ad extends Ed{isCount(){throw new Error("ExternalLayout is abstract")}}class xd extends Ad{constructor(t,e){if(void 0===t&&(t=1),!Number.isInteger(t)||0>=t)throw new TypeError("elementSpan must be a (positive) integer");super(-1,e),this.elementSpan=t}isCount(){return!0}decode(t,e){void 0===e&&(e=0);const r=t.length-e;return Math.floor(r/this.elementSpan)}encode(t,e,r){return 0}}class Id extends Ad{constructor(t,e,r){if(!(t instanceof Ed))throw new TypeError("layout must be a Layout");if(void 0===e)e=0;else if(!Number.isInteger(e))throw new TypeError("offset must be integer or undefined");super(t.span,r||t.property),this.layout=t,this.offset=e}isCount(){return this.layout instanceof Bd||this.layout instanceof Md}decode(t,e){return void 0===e&&(e=0),this.layout.decode(t,e+this.offset)}encode(t,e,r){return void 0===r&&(r=0),this.layout.encode(t,e,r+this.offset)}}class Bd extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntLE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntLE(t,r,this.span),this.span}}class Md extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntBE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntBE(t,r,this.span),this.span}}class Pd extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readIntLE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeIntLE(t,r,this.span),this.span}}class Ld extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readIntBE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeIntBE(t,r,this.span),this.span}}const Od=Math.pow(2,32);function Td(t){const e=Math.floor(t/Od);return{hi32:e,lo32:t-e*Od}}function Rd(t,e){return t*Od+e}class Ud extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return Rd(t.readUInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeUInt32LE(n.lo32,r),e.writeUInt32LE(n.hi32,r+4),8}}class Cd extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);return Rd(t.readUInt32BE(e),t.readUInt32BE(e+4))}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeUInt32BE(n.hi32,r),e.writeUInt32BE(n.lo32,r+4),8}}class Nd extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return Rd(t.readInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeUInt32LE(n.lo32,r),e.writeInt32LE(n.hi32,r+4),8}}class zd extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);return Rd(t.readInt32BE(e),t.readUInt32BE(e+4))}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeInt32BE(n.hi32,r),e.writeUInt32BE(n.lo32,r+4),8}}class Dd extends Ed{constructor(t){super(4,t)}decode(t,e){return void 0===e&&(e=0),t.readFloatLE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeFloatLE(t,r),4}}class jd extends Ed{constructor(t){super(4,t)}decode(t,e){return void 0===e&&(e=0),t.readFloatBE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeFloatBE(t,r),4}}class Wd extends Ed{constructor(t){super(8,t)}decode(t,e){return void 0===e&&(e=0),t.readDoubleLE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeDoubleLE(t,r),8}}class Fd extends Ed{constructor(t){super(8,t)}decode(t,e){return void 0===e&&(e=0),t.readDoubleBE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeDoubleBE(t,r),8}}class Kd extends Ed{constructor(t,e,r){if(!(t instanceof Ed))throw new TypeError("elementLayout must be a Layout");if(!(e instanceof Ad&&e.isCount()||Number.isInteger(e)&&0<=e))throw new TypeError("count must be non-negative integer or an unsigned integer ExternalLayout");let n=-1;!(e instanceof Ad)&&0<t.span&&(n=e*t.span),super(n,r),this.elementLayout=t,this.count=e}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0,n=this.count;if(n instanceof Ad&&(n=n.decode(t,e)),0<this.elementLayout.span)r=n*this.elementLayout.span;else{let i=0;for(;i<n;)r+=this.elementLayout.getSpan(t,e+r),++i}return r}decode(t,e){void 0===e&&(e=0);const r=[];let n=0,i=this.count;for(i instanceof Ad&&(i=i.decode(t,e));n<i;)r.push(this.elementLayout.decode(t,e)),e+=this.elementLayout.getSpan(t,e),n+=1;return r}encode(t,e,r){void 0===r&&(r=0);const n=this.elementLayout,i=t.reduce(((t,i)=>t+n.encode(i,e,r+t)),0);return this.count instanceof Ad&&this.count.encode(t.length,e,r),i}}class qd extends Ed{constructor(t,e,r){if(!Array.isArray(t)||!t.reduce(((t,e)=>t&&e instanceof Ed),!0))throw new TypeError("fields must be array of Layout instances");"boolean"==typeof e&&void 0===r&&(r=e,e=void 0);for(const e of t)if(0>e.span&&void 0===e.property)throw new Error("fields cannot contain unnamed variable-length layout");let n=-1;try{n=t.reduce(((t,e)=>t+e.getSpan()),0)}catch(t){}super(n,e),this.fields=t,this.decodePrefixes=!!r}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;try{r=this.fields.reduce(((r,n)=>{const i=n.getSpan(t,e);return e+=i,r+i}),0)}catch(t){throw new RangeError("indeterminate span")}return r}decode(t,e){void 0===e&&(e=0);const r=this.makeDestinationObject();for(const n of this.fields)if(void 0!==n.property&&(r[n.property]=n.decode(t,e)),e+=n.getSpan(t,e),this.decodePrefixes&&t.length===e)break;return r}encode(t,e,r){void 0===r&&(r=0);const n=r;let i=0,o=0;for(const n of this.fields){let s=n.span;if(o=0<s?s:0,void 0!==n.property){const i=t[n.property];void 0!==i&&(o=n.encode(i,e,r),0>s&&(s=n.getSpan(e,r)))}i=r,r+=s}return i+o-n}fromArray(t){const e=this.makeDestinationObject();for(const r of this.fields)void 0!==r.property&&0<t.length&&(e[r.property]=t.shift());return e}layoutFor(t){if("string"!=typeof t)throw new TypeError("property must be string");for(const e of this.fields)if(e.property===t)return e}offsetOf(t){if("string"!=typeof t)throw new TypeError("property must be string");let e=0;for(const r of this.fields){if(r.property===t)return e;0>r.span?e=-1:0<=e&&(e+=r.span)}}}class Vd{constructor(t){this.property=t}decode(){throw new Error("UnionDiscriminator is abstract")}encode(){throw new Error("UnionDiscriminator is abstract")}}class Hd extends Vd{constructor(t,e){if(!(t instanceof Ad&&t.isCount()))throw new TypeError("layout must be an unsigned integer ExternalLayout");super(e||t.property||"variant"),this.layout=t}decode(t,e){return this.layout.decode(t,e)}encode(t,e,r){return this.layout.encode(t,e,r)}}class $d extends Ed{constructor(t,e,r){const n=t instanceof Bd||t instanceof Md;if(n)t=new Hd(new Id(t));else if(t instanceof Ad&&t.isCount())t=new Hd(t);else if(!(t instanceof Vd))throw new TypeError("discr must be a UnionDiscriminator or an unsigned integer layout");if(void 0===e&&(e=null),!(null===e||e instanceof Ed))throw new TypeError("defaultLayout must be null or a Layout");if(null!==e){if(0>e.span)throw new Error("defaultLayout must have constant span");void 0===e.property&&(e=e.replicate("content"))}let i=-1;e&&(i=e.span,0<=i&&n&&(i+=t.layout.span)),super(i,r),this.discriminator=t,this.usesPrefixDiscriminator=n,this.defaultLayout=e,this.registry={};let o=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(t){return o(t)},this.configGetSourceVariant=function(t){o=t.bind(this)}}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);const r=this.getVariant(t,e);if(!r)throw new Error("unable to determine span for unrecognized variant");return r.getSpan(t,e)}defaultGetSourceVariant(t){if(t.hasOwnProperty(this.discriminator.property)){if(this.defaultLayout&&t.hasOwnProperty(this.defaultLayout.property))return;const e=this.registry[t[this.discriminator.property]];if(e&&(!e.layout||t.hasOwnProperty(e.property)))return e}else for(const e in this.registry){const r=this.registry[e];if(t.hasOwnProperty(r.property))return r}throw new Error("unable to infer src variant")}decode(t,e){let r;void 0===e&&(e=0);const n=this.discriminator,i=n.decode(t,e);let o=this.registry[i];if(void 0===o){let s=0;o=this.defaultLayout,this.usesPrefixDiscriminator&&(s=n.layout.span),r=this.makeDestinationObject(),r[n.property]=i,r[o.property]=this.defaultLayout.decode(t,e+s)}else r=o.decode(t,e);return r}encode(t,e,r){void 0===r&&(r=0);const n=this.getSourceVariant(t);if(void 0===n){const n=this.discriminator,i=this.defaultLayout;let o=0;return this.usesPrefixDiscriminator&&(o=n.layout.span),n.encode(t[n.property],e,r),o+i.encode(t[i.property],e,r+o)}return n.encode(t,e,r)}addVariant(t,e,r){const n=new Zd(this,t,e,r);return this.registry[t]=n,n}getVariant(t,e){let r=t;return Buffer.isBuffer(t)&&(void 0===e&&(e=0),r=this.discriminator.decode(t,e)),this.registry[r]}}class Zd extends Ed{constructor(t,e,r,n){if(!(t instanceof $d))throw new TypeError("union must be a Union");if(!Number.isInteger(e)||0>e)throw new TypeError("variant must be a (non-negative) integer");if("string"==typeof r&&void 0===n&&(n=r,r=null),r){if(!(r instanceof Ed))throw new TypeError("layout must be a Layout");if(null!==t.defaultLayout&&0<=r.span&&r.span>t.defaultLayout.span)throw new Error("variant span exceeds span of containing union");if("string"!=typeof n)throw new TypeError("variant must have a String property")}let i=t.span;0>t.span&&(i=r?r.span:0,0<=i&&t.usesPrefixDiscriminator&&(i+=t.discriminator.layout.span)),super(i,n),this.union=t,this.variant=e,this.layout=r||null}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;return this.union.usesPrefixDiscriminator&&(r=this.union.discriminator.layout.span),r+this.layout.getSpan(t,e+r)}decode(t,e){const r=this.makeDestinationObject();if(void 0===e&&(e=0),this!==this.union.getVariant(t,e))throw new Error("variant mismatch");let n=0;return this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout?r[this.property]=this.layout.decode(t,e+n):this.property?r[this.property]=!0:this.union.usesPrefixDiscriminator&&(r[this.union.discriminator.property]=this.variant),r}encode(t,e,r){void 0===r&&(r=0);let n=0;if(this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout&&!t.hasOwnProperty(this.property))throw new TypeError("variant lacks property "+this.property);this.union.discriminator.encode(this.variant,e,r);let i=n;if(this.layout&&(this.layout.encode(t[this.property],e,r+n),i+=this.layout.getSpan(e,r+n),0<=this.union.span&&i>this.union.span))throw new Error("encoded variant overruns containing union");return i}fromArray(t){if(this.layout)return this.layout.fromArray(t)}}function Gd(t){return 0>t&&(t+=4294967296),t}class Yd extends Ed{constructor(t,e,r){if(!(t instanceof Bd||t instanceof Md))throw new TypeError("word must be a UInt or UIntBE layout");if("string"==typeof e&&void 0===r&&(r=e,e=void 0),4<t.span)throw new RangeError("word cannot exceed 32 bits");super(t.span,r),this.word=t,this.msb=!!e,this.fields=[];let n=0;this._packedSetValue=function(t){return n=Gd(t),this},this._packedGetValue=function(){return n}}decode(t,e){const r=this.makeDestinationObject();void 0===e&&(e=0);const n=this.word.decode(t,e);this._packedSetValue(n);for(const t of this.fields)void 0!==t.property&&(r[t.property]=t.decode(n));return r}encode(t,e,r){void 0===r&&(r=0);const n=this.word.decode(e,r);this._packedSetValue(n);for(const e of this.fields)if(void 0!==e.property){const r=t[e.property];void 0!==r&&e.encode(r)}return this.word.encode(this._packedGetValue(),e,r)}addField(t,e){const r=new Jd(this,t,e);return this.fields.push(r),r}addBoolean(t){const e=new Xd(this,t);return this.fields.push(e),e}fieldFor(t){if("string"!=typeof t)throw new TypeError("property must be string");for(const e of this.fields)if(e.property===t)return e}}class Jd{constructor(t,e,r){if(!(t instanceof Yd))throw new TypeError("container must be a BitStructure");if(!Number.isInteger(e)||0>=e)throw new TypeError("bits must be positive integer");const n=8*t.span,i=t.fields.reduce(((t,e)=>t+e.bits),0);if(e+i>n)throw new Error("bits too long for span remainder ("+(n-i)+" of "+n+" remain)");this.container=t,this.bits=e,this.valueMask=(1<<e)-1,32===e&&(this.valueMask=4294967295),this.start=i,this.container.msb&&(this.start=n-i-e),this.wordMask=Gd(this.valueMask<<this.start),this.property=r}decode(){return Gd(this.container._packedGetValue()&this.wordMask)>>>this.start}encode(t){if(!Number.isInteger(t)||t!==Gd(t&this.valueMask))throw new TypeError(Sd("BitField.encode",this)+" value must be integer not exceeding "+this.valueMask);const e=this.container._packedGetValue(),r=Gd(t<<this.start);this.container._packedSetValue(Gd(e&~this.wordMask)|r)}}class Xd extends Jd{constructor(t,e){super(t,1,e)}decode(t,e){return!!Jd.prototype.decode.call(this,t,e)}encode(t){return"boolean"==typeof t&&(t=+t),Jd.prototype.encode.call(this,t)}}class Qd extends Ed{constructor(t,e){if(!(t instanceof Ad&&t.isCount()||Number.isInteger(t)&&0<=t))throw new TypeError("length must be positive integer or an unsigned integer ExternalLayout");let r=-1;t instanceof Ad||(r=t),super(r,e),this.length=t}getSpan(t,e){let r=this.span;return 0>r&&(r=this.length.decode(t,e)),r}decode(t,e){void 0===e&&(e=0);let r=this.span;return 0>r&&(r=this.length.decode(t,e)),t.slice(e,e+r)}encode(t,e,r){let n=this.length;if(this.length instanceof Ad&&(n=t.length),!Buffer.isBuffer(t)||n!==t.length)throw new TypeError(Sd("Blob.encode",this)+" requires (length "+n+") Buffer as src");if(r+n>e.length)throw new RangeError("encoding overruns Buffer");return e.write(t.toString("hex"),r,n,"hex"),this.length instanceof Ad&&this.length.encode(n,e,r),n}}class tp extends Ed{constructor(t){super(-1,t)}getSpan(t,e){if(!Buffer.isBuffer(t))throw new TypeError("b must be a Buffer");void 0===e&&(e=0);let r=e;for(;r<t.length&&0!==t[r];)r+=1;return 1+r-e}decode(t,e,r){void 0===e&&(e=0);let n=this.getSpan(t,e);return t.slice(e,e+n-1).toString("utf-8")}encode(t,e,r){void 0===r&&(r=0),"string"!=typeof t&&(t=t.toString());const n=new Buffer(t,"utf8"),i=n.length;if(r+i>e.length)throw new RangeError("encoding overruns Buffer");return n.copy(e,r),e[r+i]=0,i+1}}class ep extends Ed{constructor(t,e){if("string"==typeof t&&void 0===e&&(e=t,t=void 0),void 0===t)t=-1;else if(!Number.isInteger(t))throw new TypeError("maxSpan must be an integer");super(-1,e),this.maxSpan=t}getSpan(t,e){if(!Buffer.isBuffer(t))throw new TypeError("b must be a Buffer");return void 0===e&&(e=0),t.length-e}decode(t,e,r){void 0===e&&(e=0);let n=this.getSpan(t,e);if(0<=this.maxSpan&&this.maxSpan<n)throw new RangeError("text length exceeds maxSpan");return t.slice(e,e+n).toString("utf-8")}encode(t,e,r){void 0===r&&(r=0),"string"!=typeof t&&(t=t.toString());const n=new Buffer(t,"utf8"),i=n.length;if(0<=this.maxSpan&&this.maxSpan<i)throw new RangeError("text length exceeds maxSpan");if(r+i>e.length)throw new RangeError("encoding overruns Buffer");return n.copy(e,r),i}}class rp extends Ed{constructor(t,e){super(0,e),this.value=t}decode(t,e,r){return this.value}encode(t,e,r){return 0}}kd.ExternalLayout=Ad,kd.GreedyCount=xd,kd.OffsetLayout=Id,kd.UInt=Bd,kd.UIntBE=Md,kd.Int=Pd,kd.IntBE=Ld,kd.Float=Dd,kd.FloatBE=jd,kd.Double=Wd,kd.DoubleBE=Fd,kd.Sequence=Kd,kd.Structure=qd,kd.UnionDiscriminator=Vd,kd.UnionLayoutDiscriminator=Hd,kd.Union=$d,kd.VariantLayout=Zd,kd.BitStructure=Yd,kd.BitField=Jd,kd.Boolean=Xd,kd.Blob=Qd,kd.CString=tp,kd.UTF8=ep,kd.Constant=rp,kd.greedy=(t,e)=>new xd(t,e),kd.offset=(t,e,r)=>new Id(t,e,r),kd.u8=t=>new Bd(1,t),kd.u16=t=>new Bd(2,t),kd.u24=t=>new Bd(3,t),kd.u32=t=>new Bd(4,t),kd.u40=t=>new Bd(5,t),kd.u48=t=>new Bd(6,t),kd.nu64=t=>new Ud(t),kd.u16be=t=>new Md(2,t),kd.u24be=t=>new Md(3,t),kd.u32be=t=>new Md(4,t),kd.u40be=t=>new Md(5,t),kd.u48be=t=>new Md(6,t),kd.nu64be=t=>new Cd(t),kd.s8=t=>new Pd(1,t),kd.s16=t=>new Pd(2,t),kd.s24=t=>new Pd(3,t),kd.s32=t=>new Pd(4,t),kd.s40=t=>new Pd(5,t),kd.s48=t=>new Pd(6,t),kd.ns64=t=>new Nd(t),kd.s16be=t=>new Ld(2,t),kd.s24be=t=>new Ld(3,t),kd.s32be=t=>new Ld(4,t),kd.s40be=t=>new Ld(5,t),kd.s48be=t=>new Ld(6,t),kd.ns64be=t=>new zd(t),kd.f32=t=>new Dd(t),kd.f32be=t=>new jd(t),kd.f64=t=>new Wd(t),kd.f64be=t=>new Fd(t),kd.struct=(t,e,r)=>new qd(t,e,r),kd.bits=(t,e,r)=>new Yd(t,e,r),kd.seq=(t,e,r)=>new Kd(t,e,r),kd.union=(t,e,r)=>new $d(t,e,r),kd.unionLayoutDiscriminator=(t,e)=>new Hd(t,e),kd.blob=(t,e)=>new Qd(t,e),kd.cstr=t=>new tp(t),kd.utf8=(t,e)=>new ep(t,e),kd.const=(t,e)=>new rp(t,e),function(e){var r=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.map=e.array=e.rustEnum=e.str=e.vecU8=e.tagged=e.vec=e.bool=e.option=e.publicKey=e.i256=e.u256=e.i128=e.u128=e.i64=e.u64=e.struct=e.f64=e.f32=e.i32=e.u32=e.i16=e.u16=e.i8=e.u8=void 0;const n=kd,i=Qf,o=r(re);var s=kd;Object.defineProperty(e,"u8",{enumerable:!0,get:function(){return s.u8}}),Object.defineProperty(e,"i8",{enumerable:!0,get:function(){return s.s8}}),Object.defineProperty(e,"u16",{enumerable:!0,get:function(){return s.u16}}),Object.defineProperty(e,"i16",{enumerable:!0,get:function(){return s.s16}}),Object.defineProperty(e,"u32",{enumerable:!0,get:function(){return s.u32}}),Object.defineProperty(e,"i32",{enumerable:!0,get:function(){return s.s32}}),Object.defineProperty(e,"f32",{enumerable:!0,get:function(){return s.f32}}),Object.defineProperty(e,"f64",{enumerable:!0,get:function(){return s.f64}}),Object.defineProperty(e,"struct",{enumerable:!0,get:function(){return s.struct}});class a extends n.Layout{constructor(t,e,r){super(t,r),this.blob=(0,n.blob)(t),this.signed=e}decode(t,e=0){const r=new o.default(this.blob.decode(t,e),10,"le");return this.signed?r.fromTwos(8*this.span).clone():r}encode(t,e,r=0){return this.signed&&(t=t.toTwos(8*this.span)),this.blob.encode(t.toArrayLike(Buffer,"le",this.span),e,r)}}function u(t){return new a(8,!1,t)}e.u64=u,e.i64=function(t){return new a(8,!0,t)},e.u128=function(t){return new a(16,!1,t)},e.i128=function(t){return new a(16,!0,t)},e.u256=function(t){return new a(32,!1,t)},e.i256=function(t){return new a(32,!0,t)};class c extends n.Layout{constructor(t,e,r,n){super(t.span,n),this.layout=t,this.decoder=e,this.encoder=r}decode(t,e){return this.decoder(this.layout.decode(t,e))}encode(t,e,r){return this.layout.encode(this.encoder(t),e,r)}getSpan(t,e){return this.layout.getSpan(t,e)}}e.publicKey=function(t){return new c((0,n.blob)(32),(t=>new i.PublicKey(t)),(t=>t.toBuffer()),t)};class h extends n.Layout{constructor(t,e){super(-1,e),this.layout=t,this.discriminator=(0,n.u8)()}encode(t,e,r=0){return null==t?this.discriminator.encode(0,e,r):(this.discriminator.encode(1,e,r),this.layout.encode(t,e,r+1)+1)}decode(t,e=0){const r=this.discriminator.decode(t,e);if(0===r)return null;if(1===r)return this.layout.decode(t,e+1);throw new Error("Invalid option "+this.property)}getSpan(t,e=0){const r=this.discriminator.decode(t,e);if(0===r)return 1;if(1===r)return this.layout.getSpan(t,e+1)+1;throw new Error("Invalid option "+this.property)}}function l(t){if(0===t)return!1;if(1===t)return!0;throw new Error("Invalid bool: "+t)}function f(t){return t?1:0}function d(t){const e=(0,n.u32)("length"),r=(0,n.struct)([e,(0,n.blob)((0,n.offset)(e,-e.span),"data")]);return new c(r,(({data:t})=>t),(t=>({data:t})),t)}e.option=function(t,e){return new h(t,e)},e.bool=function(t){return new c((0,n.u8)(),l,f,t)},e.vec=function(t,e){const r=(0,n.u32)("length"),i=(0,n.struct)([r,(0,n.seq)(t,(0,n.offset)(r,-r.span),"values")]);return new c(i,(({values:t})=>t),(t=>({values:t})),e)},e.tagged=function(t,e,r){const i=(0,n.struct)([u("tag"),e.replicate("data")]);return new c(i,(function({tag:e,data:r}){if(!e.eq(t))throw new Error("Invalid tag, expected: "+t.toString("hex")+", got: "+e.toString("hex"));return r}),(e=>({tag:t,data:e})),r)},e.vecU8=d,e.str=function(t){return new c(d(),(t=>t.toString("utf-8")),(t=>Buffer.from(t,"utf-8")),t)},e.rustEnum=function(t,e,r){const i=(0,n.union)(null!=r?r:(0,n.u8)(),e);return t.forEach(((t,e)=>i.addVariant(e,t,t.property))),i},e.array=function(t,e,r){const i=(0,n.struct)([(0,n.seq)(t,e,"values")]);return new c(i,(({values:t})=>t),(t=>({values:t})),r)};class p extends n.Layout{constructor(t,e,r){super(t.span+e.span,r),this.keyLayout=t,this.valueLayout=e}decode(t,e){e=e||0;return[this.keyLayout.decode(t,e),this.valueLayout.decode(t,e+this.keyLayout.getSpan(t,e))]}encode(t,e,r){r=r||0;const n=this.keyLayout.encode(t[0],e,r);return n+this.valueLayout.encode(t[1],e,r+n)}getSpan(t,e){return this.keyLayout.getSpan(t,e)+this.valueLayout.getSpan(t,e)}}e.map=function(t,e,r){const i=(0,n.u32)("length"),o=(0,n.struct)([i,(0,n.seq)(new p(t,e),(0,n.offset)(i,-i.span),"values")]);return new c(o,(({values:t})=>new Map(t)),(t=>({values:Array.from(t.entries())})),r)}}(_d);function np(t){let e=t.length;for(;--e>=0;)t[e]=0}const ip=256,op=286,sp=30,ap=15,up=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),cp=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),hp=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),lp=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),fp=new Array(576);np(fp);const dp=new Array(60);np(dp);const pp=new Array(512);np(pp);const yp=new Array(256);np(yp);const gp=new Array(29);np(gp);const mp=new Array(sp);function wp(t,e,r,n,i){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=t&&t.length}let bp,vp,_p;function kp(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}np(mp);const Ep=t=>t<256?pp[t]:pp[256+(t>>>7)],Sp=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},Ap=(t,e,r)=>{t.bi_valid>16-r?(t.bi_buf|=e<<t.bi_valid&65535,Sp(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=r-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=r)},xp=(t,e,r)=>{Ap(t,r[2*e],r[2*e+1])},Ip=(t,e)=>{let r=0;do{r|=1&t,t>>>=1,r<<=1}while(--e>0);return r>>>1},Bp=(t,e,r)=>{const n=new Array(16);let i,o,s=0;for(i=1;i<=ap;i++)s=s+r[i-1]<<1,n[i]=s;for(o=0;o<=e;o++){let e=t[2*o+1];0!==e&&(t[2*o]=Ip(n[e]++,e))}},Mp=t=>{let e;for(e=0;e<op;e++)t.dyn_ltree[2*e]=0;for(e=0;e<sp;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},Pp=t=>{t.bi_valid>8?Sp(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},Lp=(t,e,r,n)=>{const i=2*e,o=2*r;return t[i]<t[o]||t[i]===t[o]&&n[e]<=n[r]},Op=(t,e,r)=>{const n=t.heap[r];let i=r<<1;for(;i<=t.heap_len&&(i<t.heap_len&&Lp(e,t.heap[i+1],t.heap[i],t.depth)&&i++,!Lp(e,n,t.heap[i],t.depth));)t.heap[r]=t.heap[i],r=i,i<<=1;t.heap[r]=n},Tp=(t,e,r)=>{let n,i,o,s,a=0;if(0!==t.sym_next)do{n=255&t.pending_buf[t.sym_buf+a++],n+=(255&t.pending_buf[t.sym_buf+a++])<<8,i=t.pending_buf[t.sym_buf+a++],0===n?xp(t,i,e):(o=yp[i],xp(t,o+ip+1,e),s=up[o],0!==s&&(i-=gp[o],Ap(t,i,s)),n--,o=Ep(n),xp(t,o,r),s=cp[o],0!==s&&(n-=mp[o],Ap(t,n,s)))}while(a<t.sym_next);xp(t,256,e)},Rp=(t,e)=>{const r=e.dyn_tree,n=e.stat_desc.static_tree,i=e.stat_desc.has_stree,o=e.stat_desc.elems;let s,a,u,c=-1;for(t.heap_len=0,t.heap_max=573,s=0;s<o;s++)0!==r[2*s]?(t.heap[++t.heap_len]=c=s,t.depth[s]=0):r[2*s+1]=0;for(;t.heap_len<2;)u=t.heap[++t.heap_len]=c<2?++c:0,r[2*u]=1,t.depth[u]=0,t.opt_len--,i&&(t.static_len-=n[2*u+1]);for(e.max_code=c,s=t.heap_len>>1;s>=1;s--)Op(t,r,s);u=o;do{s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],Op(t,r,1),a=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=a,r[2*u]=r[2*s]+r[2*a],t.depth[u]=(t.depth[s]>=t.depth[a]?t.depth[s]:t.depth[a])+1,r[2*s+1]=r[2*a+1]=u,t.heap[1]=u++,Op(t,r,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const r=e.dyn_tree,n=e.max_code,i=e.stat_desc.static_tree,o=e.stat_desc.has_stree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,u=e.stat_desc.max_length;let c,h,l,f,d,p,y=0;for(f=0;f<=ap;f++)t.bl_count[f]=0;for(r[2*t.heap[t.heap_max]+1]=0,c=t.heap_max+1;c<573;c++)h=t.heap[c],f=r[2*r[2*h+1]+1]+1,f>u&&(f=u,y++),r[2*h+1]=f,h>n||(t.bl_count[f]++,d=0,h>=a&&(d=s[h-a]),p=r[2*h],t.opt_len+=p*(f+d),o&&(t.static_len+=p*(i[2*h+1]+d)));if(0!==y){do{for(f=u-1;0===t.bl_count[f];)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[u]--,y-=2}while(y>0);for(f=u;0!==f;f--)for(h=t.bl_count[f];0!==h;)l=t.heap[--c],l>n||(r[2*l+1]!==f&&(t.opt_len+=(f-r[2*l+1])*r[2*l],r[2*l+1]=f),h--)}})(t,e),Bp(r,c,t.bl_count)},Up=(t,e,r)=>{let n,i,o=-1,s=e[1],a=0,u=7,c=4;for(0===s&&(u=138,c=3),e[2*(r+1)+1]=65535,n=0;n<=r;n++)i=s,s=e[2*(n+1)+1],++a<u&&i===s||(a<c?t.bl_tree[2*i]+=a:0!==i?(i!==o&&t.bl_tree[2*i]++,t.bl_tree[32]++):a<=10?t.bl_tree[34]++:t.bl_tree[36]++,a=0,o=i,0===s?(u=138,c=3):i===s?(u=6,c=3):(u=7,c=4))},Cp=(t,e,r)=>{let n,i,o=-1,s=e[1],a=0,u=7,c=4;for(0===s&&(u=138,c=3),n=0;n<=r;n++)if(i=s,s=e[2*(n+1)+1],!(++a<u&&i===s)){if(a<c)do{xp(t,i,t.bl_tree)}while(0!=--a);else 0!==i?(i!==o&&(xp(t,i,t.bl_tree),a--),xp(t,16,t.bl_tree),Ap(t,a-3,2)):a<=10?(xp(t,17,t.bl_tree),Ap(t,a-3,3)):(xp(t,18,t.bl_tree),Ap(t,a-11,7));a=0,o=i,0===s?(u=138,c=3):i===s?(u=6,c=3):(u=7,c=4)}};let Np=!1;const zp=(t,e,r,n)=>{Ap(t,0+(n?1:0),3),Pp(t),Sp(t,r),Sp(t,~r),r&&t.pending_buf.set(t.window.subarray(e,e+r),t.pending),t.pending+=r};var Dp=t=>{Np||((()=>{let t,e,r,n,i;const o=new Array(16);for(r=0,n=0;n<28;n++)for(gp[n]=r,t=0;t<1<<up[n];t++)yp[r++]=n;for(yp[r-1]=n,i=0,n=0;n<16;n++)for(mp[n]=i,t=0;t<1<<cp[n];t++)pp[i++]=n;for(i>>=7;n<sp;n++)for(mp[n]=i<<7,t=0;t<1<<cp[n]-7;t++)pp[256+i++]=n;for(e=0;e<=ap;e++)o[e]=0;for(t=0;t<=143;)fp[2*t+1]=8,t++,o[8]++;for(;t<=255;)fp[2*t+1]=9,t++,o[9]++;for(;t<=279;)fp[2*t+1]=7,t++,o[7]++;for(;t<=287;)fp[2*t+1]=8,t++,o[8]++;for(Bp(fp,287,o),t=0;t<sp;t++)dp[2*t+1]=5,dp[2*t]=Ip(t,5);bp=new wp(fp,up,257,op,ap),vp=new wp(dp,cp,0,sp,ap),_p=new wp(new Array(0),hp,0,19,7)})(),Np=!0),t.l_desc=new kp(t.dyn_ltree,bp),t.d_desc=new kp(t.dyn_dtree,vp),t.bl_desc=new kp(t.bl_tree,_p),t.bi_buf=0,t.bi_valid=0,Mp(t)},jp=(t,e,r,n)=>{let i,o,s=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,r=4093624447;for(e=0;e<=31;e++,r>>>=1)if(1&r&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<ip;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),Rp(t,t.l_desc),Rp(t,t.d_desc),s=(t=>{let e;for(Up(t,t.dyn_ltree,t.l_desc.max_code),Up(t,t.dyn_dtree,t.d_desc.max_code),Rp(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*lp[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),i=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,o<=i&&(i=o)):i=o=r+5,r+4<=i&&-1!==e?zp(t,e,r,n):4===t.strategy||o===i?(Ap(t,2+(n?1:0),3),Tp(t,fp,dp)):(Ap(t,4+(n?1:0),3),((t,e,r,n)=>{let i;for(Ap(t,e-257,5),Ap(t,r-1,5),Ap(t,n-4,4),i=0;i<n;i++)Ap(t,t.bl_tree[2*lp[i]+1],3);Cp(t,t.dyn_ltree,e-1),Cp(t,t.dyn_dtree,r-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),Tp(t,t.dyn_ltree,t.dyn_dtree)),Mp(t),n&&Pp(t)},Wp=(t,e,r)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=r,0===e?t.dyn_ltree[2*r]++:(t.matches++,e--,t.dyn_ltree[2*(yp[r]+ip+1)]++,t.dyn_dtree[2*Ep(e)]++),t.sym_next===t.sym_end),Fp=t=>{Ap(t,2,3),xp(t,256,fp),(t=>{16===t.bi_valid?(Sp(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)},Kp={_tr_init:Dp,_tr_stored_block:zp,_tr_flush_block:jp,_tr_tally:Wp,_tr_align:Fp};var qp=(t,e,r,n)=>{let i=65535&t|0,o=t>>>16&65535|0,s=0;for(;0!==r;){s=r>2e3?2e3:r,r-=s;do{i=i+e[n++]|0,o=o+i|0}while(--s);i%=65521,o%=65521}return i|o<<16|0};const Vp=new Uint32Array((()=>{let t,e=[];for(var r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e})());var Hp=(t,e,r,n)=>{const i=Vp,o=n+r;t^=-1;for(let r=n;r<o;r++)t=t>>>8^i[255&(t^e[r])];return-1^t},$p={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Zp={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:Gp,_tr_stored_block:Yp,_tr_flush_block:Jp,_tr_tally:Xp,_tr_align:Qp}=Kp,{Z_NO_FLUSH:ty,Z_PARTIAL_FLUSH:ey,Z_FULL_FLUSH:ry,Z_FINISH:ny,Z_BLOCK:iy,Z_OK:oy,Z_STREAM_END:sy,Z_STREAM_ERROR:ay,Z_DATA_ERROR:uy,Z_BUF_ERROR:cy,Z_DEFAULT_COMPRESSION:hy,Z_FILTERED:ly,Z_HUFFMAN_ONLY:fy,Z_RLE:dy,Z_FIXED:py,Z_DEFAULT_STRATEGY:yy,Z_UNKNOWN:gy,Z_DEFLATED:my}=Zp,wy=258,by=262,vy=42,_y=113,ky=666,Ey=(t,e)=>(t.msg=$p[e],e),Sy=t=>2*t-(t>4?9:0),Ay=t=>{let e=t.length;for(;--e>=0;)t[e]=0},xy=t=>{let e,r,n,i=t.w_size;e=t.hash_size,n=e;do{r=t.head[--n],t.head[n]=r>=i?r-i:0}while(--e);e=i,n=e;do{r=t.prev[--n],t.prev[n]=r>=i?r-i:0}while(--e)};let Iy=(t,e,r)=>(e<<t.hash_shift^r)&t.hash_mask;const By=t=>{const e=t.state;let r=e.pending;r>t.avail_out&&(r=t.avail_out),0!==r&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+r),t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,0===e.pending&&(e.pending_out=0))},My=(t,e)=>{Jp(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,By(t.strm)},Py=(t,e)=>{t.pending_buf[t.pending++]=e},Ly=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Oy=(t,e,r,n)=>{let i=t.avail_in;return i>n&&(i=n),0===i?0:(t.avail_in-=i,e.set(t.input.subarray(t.next_in,t.next_in+i),r),1===t.state.wrap?t.adler=qp(t.adler,e,i,r):2===t.state.wrap&&(t.adler=Hp(t.adler,e,i,r)),t.next_in+=i,t.total_in+=i,i)},Ty=(t,e)=>{let r,n,i=t.max_chain_length,o=t.strstart,s=t.prev_length,a=t.nice_match;const u=t.strstart>t.w_size-by?t.strstart-(t.w_size-by):0,c=t.window,h=t.w_mask,l=t.prev,f=t.strstart+wy;let d=c[o+s-1],p=c[o+s];t.prev_length>=t.good_match&&(i>>=2),a>t.lookahead&&(a=t.lookahead);do{if(r=e,c[r+s]===p&&c[r+s-1]===d&&c[r]===c[o]&&c[++r]===c[o+1]){o+=2,r++;do{}while(c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&o<f);if(n=wy-(f-o),o=f-wy,n>s){if(t.match_start=e,s=n,n>=a)break;d=c[o+s-1],p=c[o+s]}}}while((e=l[e&h])>u&&0!=--i);return s<=t.lookahead?s:t.lookahead},Ry=t=>{const e=t.w_size;let r,n,i;do{if(n=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-by)&&(t.window.set(t.window.subarray(e,e+e-n),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),xy(t),n+=e),0===t.strm.avail_in)break;if(r=Oy(t.strm,t.window,t.strstart+t.lookahead,n),t.lookahead+=r,t.lookahead+t.insert>=3)for(i=t.strstart-t.insert,t.ins_h=t.window[i],t.ins_h=Iy(t,t.ins_h,t.window[i+1]);t.insert&&(t.ins_h=Iy(t,t.ins_h,t.window[i+3-1]),t.prev[i&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=i,i++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<by&&0!==t.strm.avail_in)},Uy=(t,e)=>{let r,n,i,o=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,s=0,a=t.strm.avail_in;do{if(r=65535,i=t.bi_valid+42>>3,t.strm.avail_out<i)break;if(i=t.strm.avail_out-i,n=t.strstart-t.block_start,r>n+t.strm.avail_in&&(r=n+t.strm.avail_in),r>i&&(r=i),r<o&&(0===r&&e!==ny||e===ty||r!==n+t.strm.avail_in))break;s=e===ny&&r===n+t.strm.avail_in?1:0,Yp(t,0,0,s),t.pending_buf[t.pending-4]=r,t.pending_buf[t.pending-3]=r>>8,t.pending_buf[t.pending-2]=~r,t.pending_buf[t.pending-1]=~r>>8,By(t.strm),n&&(n>r&&(n=r),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+n),t.strm.next_out),t.strm.next_out+=n,t.strm.avail_out-=n,t.strm.total_out+=n,t.block_start+=n,r-=n),r&&(Oy(t.strm,t.strm.output,t.strm.next_out,r),t.strm.next_out+=r,t.strm.avail_out-=r,t.strm.total_out+=r)}while(0===s);return a-=t.strm.avail_in,a&&(a>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=a&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-a,t.strm.next_in),t.strstart),t.strstart+=a,t.insert+=a>t.w_size-t.insert?t.w_size-t.insert:a),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),s?4:e!==ty&&e!==ny&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(i=t.window_size-t.strstart,t.strm.avail_in>i&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,i+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),i>t.strm.avail_in&&(i=t.strm.avail_in),i&&(Oy(t.strm,t.window,t.strstart,i),t.strstart+=i,t.insert+=i>t.w_size-t.insert?t.w_size-t.insert:i),t.high_water<t.strstart&&(t.high_water=t.strstart),i=t.bi_valid+42>>3,i=t.pending_buf_size-i>65535?65535:t.pending_buf_size-i,o=i>t.w_size?t.w_size:i,n=t.strstart-t.block_start,(n>=o||(n||e===ny)&&e!==ty&&0===t.strm.avail_in&&n<=i)&&(r=n>i?i:n,s=e===ny&&0===t.strm.avail_in&&r===n?1:0,Yp(t,t.block_start,r,s),t.block_start+=r,By(t.strm)),s?3:1)},Cy=(t,e)=>{let r,n;for(;;){if(t.lookahead<by){if(Ry(t),t.lookahead<by&&e===ty)return 1;if(0===t.lookahead)break}if(r=0,t.lookahead>=3&&(t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==r&&t.strstart-r<=t.w_size-by&&(t.match_length=Ty(t,r)),t.match_length>=3)if(n=Xp(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+1]);else n=Xp(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(My(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2},Ny=(t,e)=>{let r,n,i;for(;;){if(t.lookahead<by){if(Ry(t),t.lookahead<by&&e===ty)return 1;if(0===t.lookahead)break}if(r=0,t.lookahead>=3&&(t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==r&&t.prev_length<t.max_lazy_match&&t.strstart-r<=t.w_size-by&&(t.match_length=Ty(t,r),t.match_length<=5&&(t.strategy===ly||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-3,n=Xp(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=i&&(t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,n&&(My(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(n=Xp(t,0,t.window[t.strstart-1]),n&&My(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=Xp(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2};function zy(t,e,r,n,i){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=n,this.func=i}const Dy=[new zy(0,0,0,0,Uy),new zy(4,4,8,4,Cy),new zy(4,5,16,8,Cy),new zy(4,6,32,32,Cy),new zy(4,4,16,16,Ny),new zy(8,16,32,32,Ny),new zy(8,16,128,128,Ny),new zy(8,32,128,256,Ny),new zy(32,128,258,1024,Ny),new zy(32,258,258,4096,Ny)];function jy(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=my,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),Ay(this.dyn_ltree),Ay(this.dyn_dtree),Ay(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),Ay(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),Ay(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Wy=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==vy&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==_y&&e.status!==ky?1:0},Fy=t=>{if(Wy(t))return Ey(t,ay);t.total_in=t.total_out=0,t.data_type=gy;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?vy:_y,t.adler=2===e.wrap?0:1,e.last_flush=-2,Gp(e),oy},Ky=t=>{const e=Fy(t);return e===oy&&(t=>{t.window_size=2*t.w_size,Ay(t.head),t.max_lazy_match=Dy[t.level].max_lazy,t.good_match=Dy[t.level].good_length,t.nice_match=Dy[t.level].nice_length,t.max_chain_length=Dy[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0})(t.state),e},qy=(t,e,r,n,i,o)=>{if(!t)return ay;let s=1;if(e===hy&&(e=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>9||r!==my||n<8||n>15||e<0||e>9||o<0||o>py||8===n&&1!==s)return Ey(t,ay);8===n&&(n=9);const a=new jy;return t.state=a,a.strm=t,a.status=vy,a.wrap=s,a.gzhead=null,a.w_bits=n,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=i+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+3-1)/3),a.window=new Uint8Array(2*a.w_size),a.head=new Uint16Array(a.hash_size),a.prev=new Uint16Array(a.w_size),a.lit_bufsize=1<<i+6,a.pending_buf_size=4*a.lit_bufsize,a.pending_buf=new Uint8Array(a.pending_buf_size),a.sym_buf=a.lit_bufsize,a.sym_end=3*(a.lit_bufsize-1),a.level=e,a.strategy=o,a.method=r,Ky(t)};var Vy=(t,e)=>{if(Wy(t)||e>iy||e<0)return t?Ey(t,ay):ay;const r=t.state;if(!t.output||0!==t.avail_in&&!t.input||r.status===ky&&e!==ny)return Ey(t,0===t.avail_out?cy:ay);const n=r.last_flush;if(r.last_flush=e,0!==r.pending){if(By(t),0===t.avail_out)return r.last_flush=-1,oy}else if(0===t.avail_in&&Sy(e)<=Sy(n)&&e!==ny)return Ey(t,cy);if(r.status===ky&&0!==t.avail_in)return Ey(t,cy);if(r.status===vy&&0===r.wrap&&(r.status=_y),r.status===vy){let e=my+(r.w_bits-8<<4)<<8,n=-1;if(n=r.strategy>=fy||r.level<2?0:r.level<6?1:6===r.level?2:3,e|=n<<6,0!==r.strstart&&(e|=32),e+=31-e%31,Ly(r,e),0!==r.strstart&&(Ly(r,t.adler>>>16),Ly(r,65535&t.adler)),t.adler=1,r.status=_y,By(t),0!==r.pending)return r.last_flush=-1,oy}if(57===r.status)if(t.adler=0,Py(r,31),Py(r,139),Py(r,8),r.gzhead)Py(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Py(r,255&r.gzhead.time),Py(r,r.gzhead.time>>8&255),Py(r,r.gzhead.time>>16&255),Py(r,r.gzhead.time>>24&255),Py(r,9===r.level?2:r.strategy>=fy||r.level<2?4:0),Py(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(Py(r,255&r.gzhead.extra.length),Py(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(t.adler=Hp(t.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69;else if(Py(r,0),Py(r,0),Py(r,0),Py(r,0),Py(r,0),Py(r,9===r.level?2:r.strategy>=fy||r.level<2?4:0),Py(r,3),r.status=_y,By(t),0!==r.pending)return r.last_flush=-1,oy;if(69===r.status){if(r.gzhead.extra){let e=r.pending,n=(65535&r.gzhead.extra.length)-r.gzindex;for(;r.pending+n>r.pending_buf_size;){let i=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>e&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-e,e)),r.gzindex+=i,By(t),0!==r.pending)return r.last_flush=-1,oy;e=0,n-=i}let i=new Uint8Array(r.gzhead.extra);r.pending_buf.set(i.subarray(r.gzindex,r.gzindex+n),r.pending),r.pending+=n,r.gzhead.hcrc&&r.pending>e&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-e,e)),r.gzindex=0}r.status=73}if(73===r.status){if(r.gzhead.name){let e,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n)),By(t),0!==r.pending)return r.last_flush=-1,oy;n=0}e=r.gzindex<r.gzhead.name.length?255&r.gzhead.name.charCodeAt(r.gzindex++):0,Py(r,e)}while(0!==e);r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n)),r.gzindex=0}r.status=91}if(91===r.status){if(r.gzhead.comment){let e,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n)),By(t),0!==r.pending)return r.last_flush=-1,oy;n=0}e=r.gzindex<r.gzhead.comment.length?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,Py(r,e)}while(0!==e);r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n))}r.status=103}if(103===r.status){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(By(t),0!==r.pending))return r.last_flush=-1,oy;Py(r,255&t.adler),Py(r,t.adler>>8&255),t.adler=0}if(r.status=_y,By(t),0!==r.pending)return r.last_flush=-1,oy}if(0!==t.avail_in||0!==r.lookahead||e!==ty&&r.status!==ky){let n=0===r.level?Uy(r,e):r.strategy===fy?((t,e)=>{let r;for(;;){if(0===t.lookahead&&(Ry(t),0===t.lookahead)){if(e===ty)return 1;break}if(t.match_length=0,r=Xp(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(My(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2})(r,e):r.strategy===dy?((t,e)=>{let r,n,i,o;const s=t.window;for(;;){if(t.lookahead<=wy){if(Ry(t),t.lookahead<=wy&&e===ty)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(i=t.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){o=t.strstart+wy;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);t.match_length=wy-(o-i),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(r=Xp(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=Xp(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(My(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2})(r,e):Dy[r.level].func(r,e);if(3!==n&&4!==n||(r.status=ky),1===n||3===n)return 0===t.avail_out&&(r.last_flush=-1),oy;if(2===n&&(e===ey?Qp(r):e!==iy&&(Yp(r,0,0,!1),e===ry&&(Ay(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),By(t),0===t.avail_out))return r.last_flush=-1,oy}return e!==ny?oy:r.wrap<=0?sy:(2===r.wrap?(Py(r,255&t.adler),Py(r,t.adler>>8&255),Py(r,t.adler>>16&255),Py(r,t.adler>>24&255),Py(r,255&t.total_in),Py(r,t.total_in>>8&255),Py(r,t.total_in>>16&255),Py(r,t.total_in>>24&255)):(Ly(r,t.adler>>>16),Ly(r,65535&t.adler)),By(t),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?oy:sy)},Hy=(t,e)=>{let r=e.length;if(Wy(t))return ay;const n=t.state,i=n.wrap;if(2===i||1===i&&n.status!==vy||n.lookahead)return ay;if(1===i&&(t.adler=qp(t.adler,e,r,0)),n.wrap=0,r>=n.w_size){0===i&&(Ay(n.head),n.strstart=0,n.block_start=0,n.insert=0);let t=new Uint8Array(n.w_size);t.set(e.subarray(r-n.w_size,r),0),e=t,r=n.w_size}const o=t.avail_in,s=t.next_in,a=t.input;for(t.avail_in=r,t.next_in=0,t.input=e,Ry(n);n.lookahead>=3;){let t=n.strstart,e=n.lookahead-2;do{n.ins_h=Iy(n,n.ins_h,n.window[t+3-1]),n.prev[t&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=t,t++}while(--e);n.strstart=t,n.lookahead=2,Ry(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,t.next_in=s,t.input=a,t.avail_in=o,n.wrap=i,oy},$y={deflateInit:(t,e)=>qy(t,e,my,15,8,yy),deflateInit2:qy,deflateReset:Ky,deflateResetKeep:Fy,deflateSetHeader:(t,e)=>Wy(t)||2!==t.state.wrap?ay:(t.state.gzhead=e,oy),deflate:Vy,deflateEnd:t=>{if(Wy(t))return ay;const e=t.state.status;return t.state=null,e===_y?Ey(t,uy):oy},deflateSetDictionary:Hy,deflateInfo:"pako deflate (from Nodeca project)"};const Zy=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Gy={assign:function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const r=e.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(const e in r)Zy(r,e)&&(t[e]=r[e])}}return t},flattenChunks:t=>{let e=0;for(let r=0,n=t.length;r<n;r++)e+=t[r].length;const r=new Uint8Array(e);for(let e=0,n=0,i=t.length;e<i;e++){let i=t[e];r.set(i,n),n+=i.length}return r}};let Yy=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Yy=!1}const Jy=new Uint8Array(256);for(let t=0;t<256;t++)Jy[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Jy[254]=Jy[254]=1;var Xy={string2buf:t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,r,n,i,o,s=t.length,a=0;for(i=0;i<s;i++)r=t.charCodeAt(i),55296==(64512&r)&&i+1<s&&(n=t.charCodeAt(i+1),56320==(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),i++)),a+=r<128?1:r<2048?2:r<65536?3:4;for(e=new Uint8Array(a),o=0,i=0;o<a;i++)r=t.charCodeAt(i),55296==(64512&r)&&i+1<s&&(n=t.charCodeAt(i+1),56320==(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),i++)),r<128?e[o++]=r:r<2048?(e[o++]=192|r>>>6,e[o++]=128|63&r):r<65536?(e[o++]=224|r>>>12,e[o++]=128|r>>>6&63,e[o++]=128|63&r):(e[o++]=240|r>>>18,e[o++]=128|r>>>12&63,e[o++]=128|r>>>6&63,e[o++]=128|63&r);return e},buf2string:(t,e)=>{const r=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let n,i;const o=new Array(2*r);for(i=0,n=0;n<r;){let e=t[n++];if(e<128){o[i++]=e;continue}let s=Jy[e];if(s>4)o[i++]=65533,n+=s-1;else{for(e&=2===s?31:3===s?15:7;s>1&&n<r;)e=e<<6|63&t[n++],s--;s>1?o[i++]=65533:e<65536?o[i++]=e:(e-=65536,o[i++]=55296|e>>10&1023,o[i++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Yy)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let r="";for(let n=0;n<e;n++)r+=String.fromCharCode(t[n]);return r})(o,i)},utf8border:(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let r=e-1;for(;r>=0&&128==(192&t[r]);)r--;return r<0||0===r?e:r+Jy[t[r]]>e?r:e}};var Qy=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const tg=Object.prototype.toString,{Z_NO_FLUSH:eg,Z_SYNC_FLUSH:rg,Z_FULL_FLUSH:ng,Z_FINISH:ig,Z_OK:og,Z_STREAM_END:sg,Z_DEFAULT_COMPRESSION:ag,Z_DEFAULT_STRATEGY:ug,Z_DEFLATED:cg}=Zp;function hg(t){this.options=Gy.assign({level:ag,method:cg,chunkSize:16384,windowBits:15,memLevel:8,strategy:ug},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qy,this.strm.avail_out=0;let r=$y.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==og)throw new Error($p[r]);if(e.header&&$y.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Xy.string2buf(e.dictionary):"[object ArrayBuffer]"===tg.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,r=$y.deflateSetDictionary(this.strm,t),r!==og)throw new Error($p[r]);this._dict_set=!0}}hg.prototype.push=function(t,e){const r=this.strm,n=this.options.chunkSize;let i,o;if(this.ended)return!1;for(o=e===~~e?e:!0===e?ig:eg,"string"==typeof t?r.input=Xy.string2buf(t):"[object ArrayBuffer]"===tg.call(t)?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;;)if(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(o===rg||o===ng)&&r.avail_out<=6)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else{if(i=$y.deflate(r,o),i===sg)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=$y.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===og;if(0!==r.avail_out){if(o>0&&r.next_out>0)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else if(0===r.avail_in)break}else this.onData(r.output)}return!0},hg.prototype.onData=function(t){this.chunks.push(t)},hg.prototype.onEnd=function(t){t===og&&(this.result=Gy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const lg=16209;var fg=function(t,e){let r,n,i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k,E,S,A;const x=t.state;r=t.next_in,S=t.input,n=r+(t.avail_in-5),i=t.next_out,A=t.output,o=i-(e-t.avail_out),s=i+(t.avail_out-257),a=x.dmax,u=x.wsize,c=x.whave,h=x.wnext,l=x.window,f=x.hold,d=x.bits,p=x.lencode,y=x.distcode,g=(1<<x.lenbits)-1,m=(1<<x.distbits)-1;t:do{d<15&&(f+=S[r++]<<d,d+=8,f+=S[r++]<<d,d+=8),w=p[f&g];e:for(;;){if(b=w>>>24,f>>>=b,d-=b,b=w>>>16&255,0===b)A[i++]=65535&w;else{if(!(16&b)){if(0==(64&b)){w=p[(65535&w)+(f&(1<<b)-1)];continue e}if(32&b){x.mode=16191;break t}t.msg="invalid literal/length code",x.mode=lg;break t}v=65535&w,b&=15,b&&(d<b&&(f+=S[r++]<<d,d+=8),v+=f&(1<<b)-1,f>>>=b,d-=b),d<15&&(f+=S[r++]<<d,d+=8,f+=S[r++]<<d,d+=8),w=y[f&m];r:for(;;){if(b=w>>>24,f>>>=b,d-=b,b=w>>>16&255,!(16&b)){if(0==(64&b)){w=y[(65535&w)+(f&(1<<b)-1)];continue r}t.msg="invalid distance code",x.mode=lg;break t}if(_=65535&w,b&=15,d<b&&(f+=S[r++]<<d,d+=8,d<b&&(f+=S[r++]<<d,d+=8)),_+=f&(1<<b)-1,_>a){t.msg="invalid distance too far back",x.mode=lg;break t}if(f>>>=b,d-=b,b=i-o,_>b){if(b=_-b,b>c&&x.sane){t.msg="invalid distance too far back",x.mode=lg;break t}if(k=0,E=l,0===h){if(k+=u-b,b<v){v-=b;do{A[i++]=l[k++]}while(--b);k=i-_,E=A}}else if(h<b){if(k+=u+h-b,b-=h,b<v){v-=b;do{A[i++]=l[k++]}while(--b);if(k=0,h<v){b=h,v-=b;do{A[i++]=l[k++]}while(--b);k=i-_,E=A}}}else if(k+=h-b,b<v){v-=b;do{A[i++]=l[k++]}while(--b);k=i-_,E=A}for(;v>2;)A[i++]=E[k++],A[i++]=E[k++],A[i++]=E[k++],v-=3;v&&(A[i++]=E[k++],v>1&&(A[i++]=E[k++]))}else{k=i-_;do{A[i++]=A[k++],A[i++]=A[k++],A[i++]=A[k++],v-=3}while(v>2);v&&(A[i++]=A[k++],v>1&&(A[i++]=A[k++]))}break}}break}}while(r<n&&i<s);v=d>>3,r-=v,d-=v<<3,f&=(1<<d)-1,t.next_in=r,t.next_out=i,t.avail_in=r<n?n-r+5:5-(r-n),t.avail_out=i<s?s-i+257:257-(i-s),x.hold=f,x.bits=d};const dg=15,pg=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),yg=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),gg=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),mg=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var wg=(t,e,r,n,i,o,s,a)=>{const u=a.bits;let c,h,l,f,d,p,y=0,g=0,m=0,w=0,b=0,v=0,_=0,k=0,E=0,S=0,A=null;const x=new Uint16Array(16),I=new Uint16Array(16);let B,M,P,L=null;for(y=0;y<=dg;y++)x[y]=0;for(g=0;g<n;g++)x[e[r+g]]++;for(b=u,w=dg;w>=1&&0===x[w];w--);if(b>w&&(b=w),0===w)return i[o++]=20971520,i[o++]=20971520,a.bits=1,0;for(m=1;m<w&&0===x[m];m++);for(b<m&&(b=m),k=1,y=1;y<=dg;y++)if(k<<=1,k-=x[y],k<0)return-1;if(k>0&&(0===t||1!==w))return-1;for(I[1]=0,y=1;y<dg;y++)I[y+1]=I[y]+x[y];for(g=0;g<n;g++)0!==e[r+g]&&(s[I[e[r+g]]++]=g);if(0===t?(A=L=s,p=20):1===t?(A=pg,L=yg,p=257):(A=gg,L=mg,p=0),S=0,g=0,y=m,d=o,v=b,_=0,l=-1,E=1<<b,f=E-1,1===t&&E>852||2===t&&E>592)return 1;for(;;){B=y-_,s[g]+1<p?(M=0,P=s[g]):s[g]>=p?(M=L[s[g]-p],P=A[s[g]-p]):(M=96,P=0),c=1<<y-_,h=1<<v,m=h;do{h-=c,i[d+(S>>_)+h]=B<<24|M<<16|P|0}while(0!==h);for(c=1<<y-1;S&c;)c>>=1;if(0!==c?(S&=c-1,S+=c):S=0,g++,0==--x[y]){if(y===w)break;y=e[r+s[g]]}if(y>b&&(S&f)!==l){for(0===_&&(_=b),d+=m,v=y-_,k=1<<v;v+_<w&&(k-=x[v+_],!(k<=0));)v++,k<<=1;if(E+=1<<v,1===t&&E>852||2===t&&E>592)return 1;l=S&f,i[l]=b<<24|v<<16|d-o|0}}return 0!==S&&(i[d+S]=y-_<<24|64<<16|0),a.bits=b,0};const{Z_FINISH:bg,Z_BLOCK:vg,Z_TREES:_g,Z_OK:kg,Z_STREAM_END:Eg,Z_NEED_DICT:Sg,Z_STREAM_ERROR:Ag,Z_DATA_ERROR:xg,Z_MEM_ERROR:Ig,Z_BUF_ERROR:Bg,Z_DEFLATED:Mg}=Zp,Pg=16180,Lg=16190,Og=16191,Tg=16192,Rg=16194,Ug=16199,Cg=16200,Ng=16206,zg=16209,Dg=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function jg(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Wg=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<Pg||e.mode>16211?1:0},Fg=t=>{if(Wg(t))return Ag;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=Pg,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,kg},Kg=t=>{if(Wg(t))return Ag;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,Fg(t)},qg=(t,e)=>{let r;if(Wg(t))return Ag;const n=t.state;return e<0?(r=0,e=-e):(r=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?Ag:(null!==n.window&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,Kg(t))},Vg=(t,e)=>{if(!t)return Ag;const r=new jg;t.state=r,r.strm=t,r.window=null,r.mode=Pg;const n=qg(t,e);return n!==kg&&(t.state=null),n};let Hg,$g,Zg=!0;const Gg=t=>{if(Zg){Hg=new Int32Array(512),$g=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(wg(1,t.lens,0,288,Hg,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;wg(2,t.lens,0,32,$g,0,t.work,{bits:5}),Zg=!1}t.lencode=Hg,t.lenbits=9,t.distcode=$g,t.distbits=5},Yg=(t,e,r,n)=>{let i;const o=t.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new Uint8Array(o.wsize)),n>=o.wsize?(o.window.set(e.subarray(r-o.wsize,r),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>n&&(i=n),o.window.set(e.subarray(r-n,r-n+i),o.wnext),(n-=i)?(o.window.set(e.subarray(r-n,r),0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=i))),0};var Jg=(t,e)=>{let r,n,i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k,E,S=0;const A=new Uint8Array(4);let x,I;const B=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Wg(t)||!t.output||!t.input&&0!==t.avail_in)return Ag;r=t.state,r.mode===Og&&(r.mode=Tg),s=t.next_out,i=t.output,u=t.avail_out,o=t.next_in,n=t.input,a=t.avail_in,c=r.hold,h=r.bits,l=a,f=u,E=kg;t:for(;;)switch(r.mode){case Pg:if(0===r.wrap){r.mode=Tg;break}for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(2&r.wrap&&35615===c){0===r.wbits&&(r.wbits=15),r.check=0,A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0),c=0,h=0,r.mode=16181;break}if(r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&c)<<8)+(c>>8))%31){t.msg="incorrect header check",r.mode=zg;break}if((15&c)!==Mg){t.msg="unknown compression method",r.mode=zg;break}if(c>>>=4,h-=4,k=8+(15&c),0===r.wbits&&(r.wbits=k),k>15||k>r.wbits){t.msg="invalid window size",r.mode=zg;break}r.dmax=1<<r.wbits,r.flags=0,t.adler=r.check=1,r.mode=512&c?16189:Og,c=0,h=0;break;case 16181:for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(r.flags=c,(255&r.flags)!==Mg){t.msg="unknown compression method",r.mode=zg;break}if(57344&r.flags){t.msg="unknown header flags set",r.mode=zg;break}r.head&&(r.head.text=c>>8&1),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0)),c=0,h=0,r.mode=16182;case 16182:for(;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.head&&(r.head.time=c),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,A[2]=c>>>16&255,A[3]=c>>>24&255,r.check=Hp(r.check,A,4,0)),c=0,h=0,r.mode=16183;case 16183:for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.head&&(r.head.xflags=255&c,r.head.os=c>>8),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0)),c=0,h=0,r.mode=16184;case 16184:if(1024&r.flags){for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.length=c,r.head&&(r.head.extra_len=c),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0)),c=0,h=0}else r.head&&(r.head.extra=null);r.mode=16185;case 16185:if(1024&r.flags&&(d=r.length,d>a&&(d=a),d&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(o,o+d),k)),512&r.flags&&4&r.wrap&&(r.check=Hp(r.check,n,d,o)),a-=d,o+=d,r.length-=d),r.length))break t;r.length=0,r.mode=16186;case 16186:if(2048&r.flags){if(0===a)break t;d=0;do{k=n[o+d++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k))}while(k&&d<a);if(512&r.flags&&4&r.wrap&&(r.check=Hp(r.check,n,d,o)),a-=d,o+=d,k)break t}else r.head&&(r.head.name=null);r.length=0,r.mode=16187;case 16187:if(4096&r.flags){if(0===a)break t;d=0;do{k=n[o+d++],r.head&&k&&r.length<65536&&(r.head.comment+=String.fromCharCode(k))}while(k&&d<a);if(512&r.flags&&4&r.wrap&&(r.check=Hp(r.check,n,d,o)),a-=d,o+=d,k)break t}else r.head&&(r.head.comment=null);r.mode=16188;case 16188:if(512&r.flags){for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(4&r.wrap&&c!==(65535&r.check)){t.msg="header crc mismatch",r.mode=zg;break}c=0,h=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=Og;break;case 16189:for(;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}t.adler=r.check=Dg(c),c=0,h=0,r.mode=Lg;case Lg:if(0===r.havedict)return t.next_out=s,t.avail_out=u,t.next_in=o,t.avail_in=a,r.hold=c,r.bits=h,Sg;t.adler=r.check=1,r.mode=Og;case Og:if(e===vg||e===_g)break t;case Tg:if(r.last){c>>>=7&h,h-=7&h,r.mode=Ng;break}for(;h<3;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}switch(r.last=1&c,c>>>=1,h-=1,3&c){case 0:r.mode=16193;break;case 1:if(Gg(r),r.mode=Ug,e===_g){c>>>=2,h-=2;break t}break;case 2:r.mode=16196;break;case 3:t.msg="invalid block type",r.mode=zg}c>>>=2,h-=2;break;case 16193:for(c>>>=7&h,h-=7&h;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if((65535&c)!=(c>>>16^65535)){t.msg="invalid stored block lengths",r.mode=zg;break}if(r.length=65535&c,c=0,h=0,r.mode=Rg,e===_g)break t;case Rg:r.mode=16195;case 16195:if(d=r.length,d){if(d>a&&(d=a),d>u&&(d=u),0===d)break t;i.set(n.subarray(o,o+d),s),a-=d,o+=d,u-=d,s+=d,r.length-=d;break}r.mode=Og;break;case 16196:for(;h<14;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(r.nlen=257+(31&c),c>>>=5,h-=5,r.ndist=1+(31&c),c>>>=5,h-=5,r.ncode=4+(15&c),c>>>=4,h-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=zg;break}r.have=0,r.mode=16197;case 16197:for(;r.have<r.ncode;){for(;h<3;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.lens[B[r.have++]]=7&c,c>>>=3,h-=3}for(;r.have<19;)r.lens[B[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,x={bits:r.lenbits},E=wg(0,r.lens,0,19,r.lencode,0,r.work,x),r.lenbits=x.bits,E){t.msg="invalid code lengths set",r.mode=zg;break}r.have=0,r.mode=16198;case 16198:for(;r.have<r.nlen+r.ndist;){for(;S=r.lencode[c&(1<<r.lenbits)-1],g=S>>>24,m=S>>>16&255,w=65535&S,!(g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(w<16)c>>>=g,h-=g,r.lens[r.have++]=w;else{if(16===w){for(I=g+2;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(c>>>=g,h-=g,0===r.have){t.msg="invalid bit length repeat",r.mode=zg;break}k=r.lens[r.have-1],d=3+(3&c),c>>>=2,h-=2}else if(17===w){for(I=g+3;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=g,h-=g,k=0,d=3+(7&c),c>>>=3,h-=3}else{for(I=g+7;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=g,h-=g,k=0,d=11+(127&c),c>>>=7,h-=7}if(r.have+d>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=zg;break}for(;d--;)r.lens[r.have++]=k}}if(r.mode===zg)break;if(0===r.lens[256]){t.msg="invalid code -- missing end-of-block",r.mode=zg;break}if(r.lenbits=9,x={bits:r.lenbits},E=wg(1,r.lens,0,r.nlen,r.lencode,0,r.work,x),r.lenbits=x.bits,E){t.msg="invalid literal/lengths set",r.mode=zg;break}if(r.distbits=6,r.distcode=r.distdyn,x={bits:r.distbits},E=wg(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,x),r.distbits=x.bits,E){t.msg="invalid distances set",r.mode=zg;break}if(r.mode=Ug,e===_g)break t;case Ug:r.mode=Cg;case Cg:if(a>=6&&u>=258){t.next_out=s,t.avail_out=u,t.next_in=o,t.avail_in=a,r.hold=c,r.bits=h,fg(t,f),s=t.next_out,i=t.output,u=t.avail_out,o=t.next_in,n=t.input,a=t.avail_in,c=r.hold,h=r.bits,r.mode===Og&&(r.back=-1);break}for(r.back=0;S=r.lencode[c&(1<<r.lenbits)-1],g=S>>>24,m=S>>>16&255,w=65535&S,!(g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(m&&0==(240&m)){for(b=g,v=m,_=w;S=r.lencode[_+((c&(1<<b+v)-1)>>b)],g=S>>>24,m=S>>>16&255,w=65535&S,!(b+g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=b,h-=b,r.back+=b}if(c>>>=g,h-=g,r.back+=g,r.length=w,0===m){r.mode=16205;break}if(32&m){r.back=-1,r.mode=Og;break}if(64&m){t.msg="invalid literal/length code",r.mode=zg;break}r.extra=15&m,r.mode=16201;case 16201:if(r.extra){for(I=r.extra;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.length+=c&(1<<r.extra)-1,c>>>=r.extra,h-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=16202;case 16202:for(;S=r.distcode[c&(1<<r.distbits)-1],g=S>>>24,m=S>>>16&255,w=65535&S,!(g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(0==(240&m)){for(b=g,v=m,_=w;S=r.distcode[_+((c&(1<<b+v)-1)>>b)],g=S>>>24,m=S>>>16&255,w=65535&S,!(b+g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=b,h-=b,r.back+=b}if(c>>>=g,h-=g,r.back+=g,64&m){t.msg="invalid distance code",r.mode=zg;break}r.offset=w,r.extra=15&m,r.mode=16203;case 16203:if(r.extra){for(I=r.extra;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.offset+=c&(1<<r.extra)-1,c>>>=r.extra,h-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=zg;break}r.mode=16204;case 16204:if(0===u)break t;if(d=f-u,r.offset>d){if(d=r.offset-d,d>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=zg;break}d>r.wnext?(d-=r.wnext,p=r.wsize-d):p=r.wnext-d,d>r.length&&(d=r.length),y=r.window}else y=i,p=s-r.offset,d=r.length;d>u&&(d=u),u-=d,r.length-=d;do{i[s++]=y[p++]}while(--d);0===r.length&&(r.mode=Cg);break;case 16205:if(0===u)break t;i[s++]=r.length,u--,r.mode=Cg;break;case Ng:if(r.wrap){for(;h<32;){if(0===a)break t;a--,c|=n[o++]<<h,h+=8}if(f-=u,t.total_out+=f,r.total+=f,4&r.wrap&&f&&(t.adler=r.check=r.flags?Hp(r.check,i,f,s-f):qp(r.check,i,f,s-f)),f=u,4&r.wrap&&(r.flags?c:Dg(c))!==r.check){t.msg="incorrect data check",r.mode=zg;break}c=0,h=0}r.mode=16207;case 16207:if(r.wrap&&r.flags){for(;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(4&r.wrap&&c!==(4294967295&r.total)){t.msg="incorrect length check",r.mode=zg;break}c=0,h=0}r.mode=16208;case 16208:E=Eg;break t;case zg:E=xg;break t;case 16210:return Ig;default:return Ag}return t.next_out=s,t.avail_out=u,t.next_in=o,t.avail_in=a,r.hold=c,r.bits=h,(r.wsize||f!==t.avail_out&&r.mode<zg&&(r.mode<Ng||e!==bg))&&Yg(t,t.output,t.next_out,f-t.avail_out),l-=t.avail_in,f-=t.avail_out,t.total_in+=l,t.total_out+=f,r.total+=f,4&r.wrap&&f&&(t.adler=r.check=r.flags?Hp(r.check,i,f,t.next_out-f):qp(r.check,i,f,t.next_out-f)),t.data_type=r.bits+(r.last?64:0)+(r.mode===Og?128:0)+(r.mode===Ug||r.mode===Rg?256:0),(0===l&&0===f||e===bg)&&E===kg&&(E=Bg),E},Xg=t=>{if(Wg(t))return Ag;let e=t.state;return e.window&&(e.window=null),t.state=null,kg},Qg=(t,e)=>{if(Wg(t))return Ag;const r=t.state;return 0==(2&r.wrap)?Ag:(r.head=e,e.done=!1,kg)},tm=(t,e)=>{const r=e.length;let n,i,o;return Wg(t)?Ag:(n=t.state,0!==n.wrap&&n.mode!==Lg?Ag:n.mode===Lg&&(i=1,i=qp(i,e,r,0),i!==n.check)?xg:(o=Yg(t,e,r,r),o?(n.mode=16210,Ig):(n.havedict=1,kg)))},em={inflateReset:Kg,inflateReset2:qg,inflateResetKeep:Fg,inflateInit:t=>Vg(t,15),inflateInit2:Vg,inflate:Jg,inflateEnd:Xg,inflateGetHeader:Qg,inflateSetDictionary:tm,inflateInfo:"pako inflate (from Nodeca project)"};var rm=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const nm=Object.prototype.toString,{Z_NO_FLUSH:im,Z_FINISH:om,Z_OK:sm,Z_STREAM_END:am,Z_NEED_DICT:um,Z_STREAM_ERROR:cm,Z_DATA_ERROR:hm,Z_MEM_ERROR:lm}=Zp;function fm(t){this.options=Gy.assign({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qy,this.strm.avail_out=0;let r=em.inflateInit2(this.strm,e.windowBits);if(r!==sm)throw new Error($p[r]);if(this.header=new rm,em.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Xy.string2buf(e.dictionary):"[object ArrayBuffer]"===nm.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(r=em.inflateSetDictionary(this.strm,e.dictionary),r!==sm)))throw new Error($p[r])}function dm(t,e){const r=new fm(e);if(r.push(t),r.err)throw r.msg||$p[r.err];return r.result}fm.prototype.push=function(t,e){const r=this.strm,n=this.options.chunkSize,i=this.options.dictionary;let o,s,a;if(this.ended)return!1;for(s=e===~~e?e:!0===e?om:im,"[object ArrayBuffer]"===nm.call(t)?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;;){for(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),o=em.inflate(r,s),o===um&&i&&(o=em.inflateSetDictionary(r,i),o===sm?o=em.inflate(r,s):o===hm&&(o=um));r.avail_in>0&&o===am&&r.state.wrap>0&&0!==t[r.next_in];)em.inflateReset(r),o=em.inflate(r,s);switch(o){case cm:case hm:case um:case lm:return this.onEnd(o),this.ended=!0,!1}if(a=r.avail_out,r.next_out&&(0===r.avail_out||o===am))if("string"===this.options.to){let t=Xy.utf8border(r.output,r.next_out),e=r.next_out-t,i=Xy.buf2string(r.output,t);r.next_out=e,r.avail_out=n-e,e&&r.output.set(r.output.subarray(t,t+e),0),this.onData(i)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(o!==sm||0!==a){if(o===am)return o=em.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(0===r.avail_in)break}}return!0},fm.prototype.onData=function(t){this.chunks.push(t)},fm.prototype.onEnd=function(t){t===sm&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Gy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var pm={Inflate:fm,inflate:dm,inflateRaw:function(t,e){return(e=e||{}).raw=!0,dm(t,e)},ungzip:dm,constants:Zp};const{Inflate:ym,inflate:gm,inflateRaw:mm,ungzip:wm}=pm;var bm=gm,vm=e(qi());const _m=t=>"version"in t;var km=Object.freeze({__proto__:null,encode:function(t){return t.reduce(((t,e)=>t+e.toString(16).padStart(2,"0")),"0x")},decode:function(t){0===t.indexOf("0x")&&(t=t.substr(2)),t.length%2==1&&(t="0"+t);let e=t.match(/.{2}/g);return null===e?n.Buffer.from([]):n.Buffer.from(e.map((t=>parseInt(t,16))))}});function Em(t){return new TextDecoder("utf-8").decode(t)}function Sm(t){return(new TextEncoder).encode(t)}var Am=Object.freeze({__proto__:null,decode:Em,encode:Sm});function xm(t){return md.encode(t)}var Im=Object.freeze({__proto__:null,encode:xm,decode:function(t){return md.decode(t)}});function Bm(t){return n.Buffer.from(o(t))}var Mm=Object.freeze({__proto__:null,encode:function(t){return s(t)},decode:Bm}),Pm=Object.freeze({__proto__:null,hex:km,utf8:Am,bs58:Im,base64:Mm});function Lm(t){const e=new Map;return t.errors&&t.errors.forEach((t=>{var r;let n=null!==(r=t.msg)&&void 0!==r?r:t.name;e.set(t.code,n)})),e}function Om(t,...e){if(t.args.length!=e.length)throw new Error("Invalid argument length");const r={};let n=0;return t.args.forEach((t=>{r[t.name]=e[n],n+=1})),r}function Tm(t,e={}){t.forEach((t=>{if("accounts"in t)Tm(t.accounts,e[t.name]);else if(void 0===e[t.name])throw new Error(`Invalid arguments: ${t.name} not provided.`)}))}function Rm(t){return t instanceof Wo?t:new Wo(t)}class Um extends TypeError{constructor(t,e){let r;const{message:n,...i}=t,{path:o}=t;super(0===o.length?n:"At path: "+o.join(".")+" -- "+n),this.value=void 0,this.key=void 0,this.type=void 0,this.refinement=void 0,this.path=void 0,this.branch=void 0,this.failures=void 0,Object.assign(this,i),this.name=this.constructor.name,this.failures=()=>{var n;return null!=(n=r)?n:r=[t,...e()]}}}function Cm(t){return"object"==typeof t&&null!=t}function Nm(t){return"string"==typeof t?JSON.stringify(t):""+t}function zm(t,e,r,n){if(!0===t)return;!1===t?t={}:"string"==typeof t&&(t={message:t});const{path:i,branch:o}=e,{type:s}=r,{refinement:a,message:u="Expected a value of type `"+s+"`"+(a?" with refinement `"+a+"`":"")+", but received: `"+Nm(n)+"`"}=t;return{value:n,type:s,refinement:a,key:i[i.length-1],path:i,branch:o,...t,message:u}}function*Dm(t,e,r,n){(function(t){return Cm(t)&&"function"==typeof t[Symbol.iterator]})(t)||(t=[t]);for(const i of t){const t=zm(i,e,r,n);t&&(yield t)}}function*jm(t,e,r){void 0===r&&(r={});const{path:n=[],branch:i=[t],coerce:o=!1,mask:s=!1}=r,a={path:n,branch:i};if(o&&(t=e.coercer(t,a),s&&"type"!==e.type&&Cm(e.schema)&&Cm(t)&&!Array.isArray(t)))for(const r in t)void 0===e.schema[r]&&delete t[r];let u=!0;for(const r of e.validator(t,a))u=!1,yield[r,void 0];for(let[r,c,h]of e.entries(t,a)){const e=jm(c,h,{path:void 0===r?n:[...n,r],branch:void 0===r?i:[...i,c],coerce:o,mask:s});for(const n of e)n[0]?(u=!1,yield[n[0],void 0]):o&&(c=n[1],void 0===r?t=c:t instanceof Map?t.set(r,c):t instanceof Set?t.add(c):Cm(t)&&(t[r]=c))}if(u)for(const r of e.refiner(t,a))u=!1,yield[r,void 0];u&&(yield[void 0,t])}class Wm{constructor(t){this.TYPE=void 0,this.type=void 0,this.schema=void 0,this.coercer=void 0,this.validator=void 0,this.refiner=void 0,this.entries=void 0;const{type:e,schema:r,validator:n,refiner:i,coercer:o=(t=>t),entries:s=function*(){}}=t;this.type=e,this.schema=r,this.entries=s,this.coercer=o,this.validator=n?(t,e)=>Dm(n(t,e),e,this,t):()=>[],this.refiner=i?(t,e)=>Dm(i(t,e),e,this,t):()=>[]}assert(t){return function(t,e){const r=qm(t,e);if(r[0])throw r[0]}(t,this)}create(t){return Fm(t,this)}is(t){return Km(t,this)}mask(t){return function(t,e){const r=qm(t,e,{coerce:!0,mask:!0});if(r[0])throw r[0];return r[1]}(t,this)}validate(t,e){return void 0===e&&(e={}),qm(t,this,e)}}function Fm(t,e){const r=qm(t,e,{coerce:!0});if(r[0])throw r[0];return r[1]}function Km(t,e){return!qm(t,e)[0]}function qm(t,e,r){void 0===r&&(r={});const n=jm(t,e,r),i=function(t){const{done:e,value:r}=t.next();return e?void 0:r}(n);if(i[0]){const t=new Um(i[0],(function*(){for(const t of n)t[0]&&(yield t[0])}));return[t,void 0]}return[void 0,i[1]]}function Vm(t,e){return new Wm({type:t,schema:null,validator:e})}function Hm(t){return new Wm({type:"array",schema:t,*entries(e){if(t&&Array.isArray(e))for(const[r,n]of e.entries())yield[r,n,t]},coercer:t=>Array.isArray(t)?t.slice():t,validator:t=>Array.isArray(t)||"Expected an array value, but received: "+Nm(t)})}function $m(t){const e=Nm(t),r=typeof t;return new Wm({type:"literal",schema:"string"===r||"number"===r||"boolean"===r?t:null,validator:r=>r===t||"Expected the literal `"+e+"`, but received: "+Nm(r)})}function Zm(t){return new Wm({...t,validator:(e,r)=>null===e||t.validator(e,r),refiner:(e,r)=>null===e||t.refiner(e,r)})}function Gm(){return Vm("number",(t=>"number"==typeof t&&!isNaN(t)||"Expected a number, but received: "+Nm(t)))}function Ym(t){return new Wm({...t,validator:(e,r)=>void 0===e||t.validator(e,r),refiner:(e,r)=>void 0===e||t.refiner(e,r)})}function Jm(){return Vm("string",(t=>"string"==typeof t||"Expected a string, but received: "+Nm(t)))}function Xm(t){const e=Object.keys(t);return new Wm({type:"type",schema:t,*entries(r){if(Cm(r))for(const n of e)yield[n,r[n],t[n]]},validator:t=>Cm(t)||"Expected an object, but received: "+Nm(t)})}function Qm(t){const e=t.map((t=>t.type)).join(" | ");return new Wm({type:"union",schema:null,coercer(e,r){const n=t.find((t=>{const[r]=t.validate(e,{coerce:!0});return!r}))||tw();return n.coercer(e,r)},validator(r,n){const i=[];for(const e of t){const[...t]=jm(r,e,n),[o]=t;if(!o[0])return[];for(const[e]of t)e&&i.push(e)}return["Expected the value to satisfy a union of `"+e+"`, but received: "+Nm(r),...i]}})}function tw(){return Vm("unknown",(()=>!0))}const ew=99;async function rw(t,e,r){if(e.length<=ew)return await nw(t,e,r);{const n=function(t,e){return Array.apply(0,new Array(Math.ceil(t.length/e))).map(((r,n)=>t.slice(n*e,(n+1)*e)))}(e,ew);return(await Promise.all(n.map((e=>nw(t,e,r))))).flat()}}async function nw(t,e,r){const n=null!=r?r:t.commitment,{value:i,context:o}=await t.getMultipleAccountsInfoAndContext(e,n);return i.map(((t,r)=>null===t?null:{publicKey:e[r],account:t,context:o}))}async function iw(t,e,r,n,i){var o;r&&r.length>0&&e.sign(...r);const s=e._compile(),a=s.serialize(),u=e._serialize(a).toString("base64"),c={encoding:"base64",commitment:null!=n?n:t.commitment};if(i){const t=(Array.isArray(i)?i:s.nonProgramIds()).map((t=>t.toBase58()));c.accounts={encoding:"base64",addresses:t}}r&&(c.sigVerify=!0);const h=[u,c],l=Fm(await t._rpcRequest("simulateTransaction",h),uw);if("error"in l){let t;if("data"in l.error&&(t=null===(o=l.error.data)||void 0===o?void 0:o.logs,t&&Array.isArray(t))){const e="\n ",r=e+t.join(e);console.error(l.error.message,r)}throw new Ks("failed to simulate transaction: "+l.error.message,t)}return l.result}function ow(t){return function(t,e,r){return new Wm({...t,coercer:(n,i)=>Km(n,e)?t.coercer(r(n,i),i):t.coercer(n,i)})}(aw(t),sw,(e=>"error"in e?e:{...e,result:Fm(e.result,t)}))}const sw=aw(tw());function aw(t){return Qm([Xm({jsonrpc:$m("2.0"),id:Jm(),result:t}),Xm({jsonrpc:$m("2.0"),id:Jm(),error:Xm({code:tw(),message:Jm(),data:Ym(Vm("any",(()=>!0)))})})])}const uw=(cw=Xm({err:Zm(Qm([Xm({}),Jm()])),logs:Zm(Hm(Jm())),accounts:Ym(Zm(Hm(Zm(Xm({executable:Vm("boolean",(t=>"boolean"==typeof t)),owner:Jm(),lamports:Gm(),data:Hm(Jm()),rentEpoch:Ym(Gm())}))))),unitsConsumed:Ym(Gm())}),ow(Xm({context:Xm({slot:Gm()}),value:cw})));var cw,hw=Object.freeze({__proto__:null,invoke:async function(t,e,r,n){t=Rm(t),n||(n=yw());const i=new hs;if(i.add(new cs({programId:t,keys:null!=e?e:[],data:r})),void 0===n.sendAndConfirm)throw new Error("This function requires 'Provider.sendAndConfirm' to be implemented.");return await n.sendAndConfirm(i,[])},getMultipleAccounts:async function(t,e,r){return(await rw(t,e,r)).map((t=>t?{publicKey:t.publicKey,account:t.account}:null))},getMultipleAccountsAndContext:rw,simulateTransaction:iw});class lw{constructor(t,e,r){this.connection=t,this.wallet=e,this.opts=r,this.publicKey=null==e?void 0:e.publicKey}static defaultOptions(){return{preflightCommitment:"processed",commitment:"processed"}}static local(t,e){throw new Error("Provider local is not available on browser.")}static env(){throw new Error("Provider env is not available on browser.")}async sendAndConfirm(t,e,r){var n,i,o,s;if(void 0===r&&(r=this.opts),_m(t))e&&t.sign(e);else if(t.feePayer=null!==(n=t.feePayer)&&void 0!==n?n:this.wallet.publicKey,t.recentBlockhash=(await this.connection.getLatestBlockhash(r.preflightCommitment)).blockhash,e)for(const r of e)t.partialSign(r);const a=(t=await this.wallet.signTransaction(t)).serialize();try{return await dw(this.connection,a,r)}catch(e){if(e instanceof pw){const r=xm(_m(t)?(null===(i=t.signatures)||void 0===i?void 0:i[0])||new Uint8Array:null!==(o=t.signature)&&void 0!==o?o:new Uint8Array),n=await this.connection.getTransaction(r,{commitment:"confirmed"});if(n){const t=null===(s=n.meta)||void 0===s?void 0:s.logMessages;throw t?new Ks(e.message,t):e}throw e}throw e}}async sendAll(t,e){var r,n,i;void 0===e&&(e=this.opts);const o=(await this.connection.getLatestBlockhash(e.preflightCommitment)).blockhash;let s=t.map((t=>{var e,r;if(_m(t.tx)){let e=t.tx;return t.signers&&e.sign(t.signers),e}{let n=t.tx,i=null!==(e=t.signers)&&void 0!==e?e:[];return n.feePayer=null!==(r=n.feePayer)&&void 0!==r?r:this.wallet.publicKey,n.recentBlockhash=o,i.forEach((t=>{n.partialSign(t)})),n}}));const a=await this.wallet.signAllTransactions(s),u=[];for(let t=0;t<s.length;t+=1){const o=a[t],s=o.serialize();try{u.push(await dw(this.connection,s,e))}catch(t){if(t instanceof pw){const e=xm(_m(o)?(null===(r=o.signatures)||void 0===r?void 0:r[0])||new Uint8Array:null!==(n=o.signature)&&void 0!==n?n:new Uint8Array),s=await this.connection.getTransaction(e,{commitment:"confirmed"});if(s){const e=null===(i=s.meta)||void 0===i?void 0:i.logMessages;throw e?new Ks(t.message,e):t}throw t}throw t}}return u}async simulate(t,e,r,n){let i,o=(await this.connection.getLatestBlockhash(null!=r?r:this.connection.commitment)).blockhash;if(_m(t)?(e&&(t.sign(e),t=await this.wallet.signTransaction(t)),i=await this.connection.simulateTransaction(t,{commitment:r})):(t.feePayer=t.feePayer||this.wallet.publicKey,t.recentBlockhash=o,e&&(t=await this.wallet.signTransaction(t)),i=await iw(this.connection,t,e,r,n)),i.value.err)throw new fw(i.value);return i.value}}class fw extends Error{constructor(t,e){super(e),this.simulationResponse=t}}async function dw(t,e,r){const n=r&&{skipPreflight:r.skipPreflight,preflightCommitment:r.preflightCommitment||r.commitment},i=await t.sendRawTransaction(e,n),o=(await t.confirmTransaction(i,r&&r.commitment)).value;if(o.err)throw new pw(`Raw transaction ${i} failed (${JSON.stringify(o)})`);return i}class pw extends Error{constructor(t){super(t)}}function yw(){return null===gw?lw.local():gw}let gw=null;const mw=new Set(["anchor-deprecated-state","debug-logs"]),ww=new Map;function bw(t){return void 0!==ww.get(t)}var vw=Object.freeze({__proto__:null,set:function(t){if(!mw.has(t))throw new Error("Invalid feature");ww.set(t,!0)},isSet:bw});class _w extends Error{constructor(t){super(t),this.name="IdlError"}}class kw{constructor(t){this.stack=t}static parse(t){var e;const r=/^Program (\w*) invoke/,n=/^Program \w* success/,i=[];for(let o=0;o<t.length;o++){if(n.exec(t[o])){i.pop();continue}const s=null===(e=r.exec(t[o]))||void 0===e?void 0:e[1];s&&i.push(new Wo(s))}return new kw(i)}}class Ew extends Error{constructor(t,e,r,n,i,o){super(r.join("\n").replace("Program log: ","")),this.errorLogs=r,this.logs=n,this.error={errorCode:t,errorMessage:e,comparedValues:o,origin:i},this._programErrorStack=kw.parse(n)}static parse(t){if(!t)return null;const e=t.findIndex((t=>t.startsWith("Program log: AnchorError")));if(-1===e)return null;const r=t[e],n=[r];let i;if(e+1<t.length)if("Program log: Left:"===t[e+1]){const r=/^Program log: (.*)$/,o=r.exec(t[e+2])[1],s=r.exec(t[e+4])[1];i=[new Wo(o),new Wo(s)],n.push(...t.slice(e+1,e+5))}else if(t[e+1].startsWith("Program log: Left:")){const r=/^Program log: (Left|Right): (.*)$/,o=r.exec(t[e+1])[2],s=r.exec(t[e+2])[2];n.push(...t.slice(e+1,e+3)),i=[o,s]}const o=/^Program log: AnchorError occurred\. Error Code: (.*)\. Error Number: (\d*)\. Error Message: (.*)\./.exec(r),s=/^Program log: AnchorError thrown in (.*):(\d*)\. Error Code: (.*)\. Error Number: (\d*)\. Error Message: (.*)\./.exec(r),a=/^Program log: AnchorError caused by account: (.*)\. Error Code: (.*)\. Error Number: (\d*)\. Error Message: (.*)\./.exec(r);if(o){const[e,r,s]=o.slice(1,4),a={code:e,number:parseInt(r)};return new Ew(a,s,n,t,void 0,i)}if(s){const[e,r,o,a,u]=s.slice(1,6),c={code:o,number:parseInt(a)},h={file:e,line:parseInt(r)};return new Ew(c,u,n,t,h,i)}if(a){const[e,r,o,s]=a.slice(1,5),u=e,c={code:r,number:parseInt(o)};return new Ew(c,s,n,t,u,i)}return null}get program(){return this._programErrorStack.stack[this._programErrorStack.stack.length-1]}get programErrorStack(){return this._programErrorStack.stack}toString(){return this.message}}class Sw extends Error{constructor(t,e,r){super(),this.code=t,this.msg=e,this.logs=r,r&&(this._programErrorStack=kw.parse(r))}static parse(t,e){const r=t.toString();let n,i;if(r.includes("custom program error:")){let t=r.split("custom program error: ");if(2!==t.length)return null;n=t[1]}else{const t=r.match(/"Custom":([0-9]+)}/g);if(!t||t.length>1)return null;n=t[0].match(/([0-9]+)/g)[0]}try{i=parseInt(n)}catch(t){return null}let o=e.get(i);return void 0!==o?new Sw(i,o,t.logs):(o=Iw.get(i),void 0!==o?new Sw(i,o,t.logs):null)}get program(){var t;return null===(t=this._programErrorStack)||void 0===t?void 0:t.stack[this._programErrorStack.stack.length-1]}get programErrorStack(){var t;return null===(t=this._programErrorStack)||void 0===t?void 0:t.stack}toString(){return this.msg}}function Aw(t,e){bw("debug-logs")&&console.log("Translating error:",t);const r=Ew.parse(t.logs);if(r)return r;const n=Sw.parse(t,e);if(n)return n;if(t.logs){const e={get:function(e,r){return"programErrorStack"===r?e.programErrorStack.stack:"program"===r?e.programErrorStack.stack[t.programErrorStack.stack.length-1]:Reflect.get(...arguments)}};return t.programErrorStack=kw.parse(t.logs),new Proxy(t,e)}return t}const xw={InstructionMissing:100,InstructionFallbackNotFound:101,InstructionDidNotDeserialize:102,InstructionDidNotSerialize:103,IdlInstructionStub:1e3,IdlInstructionInvalidProgram:1001,ConstraintMut:2e3,ConstraintHasOne:2001,ConstraintSigner:2002,ConstraintRaw:2003,ConstraintOwner:2004,ConstraintRentExempt:2005,ConstraintSeeds:2006,ConstraintExecutable:2007,ConstraintState:2008,ConstraintAssociated:2009,ConstraintAssociatedInit:2010,ConstraintClose:2011,ConstraintAddress:2012,ConstraintZero:2013,ConstraintTokenMint:2014,ConstraintTokenOwner:2015,ConstraintMintMintAuthority:2016,ConstraintMintFreezeAuthority:2017,ConstraintMintDecimals:2018,ConstraintSpace:2019,ConstraintAccountIsNone:2020,RequireViolated:2500,RequireEqViolated:2501,RequireKeysEqViolated:2502,RequireNeqViolated:2503,RequireKeysNeqViolated:2504,RequireGtViolated:2505,RequireGteViolated:2506,AccountDiscriminatorAlreadySet:3e3,AccountDiscriminatorNotFound:3001,AccountDiscriminatorMismatch:3002,AccountDidNotDeserialize:3003,AccountDidNotSerialize:3004,AccountNotEnoughKeys:3005,AccountNotMutable:3006,AccountOwnedByWrongProgram:3007,InvalidProgramId:3008,InvalidProgramExecutable:3009,AccountNotSigner:3010,AccountNotSystemOwned:3011,AccountNotInitialized:3012,AccountNotProgramData:3013,AccountNotAssociatedTokenAccount:3014,AccountSysvarMismatch:3015,AccountReallocExceedsLimit:3016,AccountDuplicateReallocs:3017,DeclaredProgramIdMismatch:4100,Deprecated:5e3},Iw=new Map([[xw.InstructionMissing,"8 byte instruction identifier not provided"],[xw.InstructionFallbackNotFound,"Fallback functions are not supported"],[xw.InstructionDidNotDeserialize,"The program could not deserialize the given instruction"],[xw.InstructionDidNotSerialize,"The program could not serialize the given instruction"],[xw.IdlInstructionStub,"The program was compiled without idl instructions"],[xw.IdlInstructionInvalidProgram,"The transaction was given an invalid program for the IDL instruction"],[xw.ConstraintMut,"A mut constraint was violated"],[xw.ConstraintHasOne,"A has one constraint was violated"],[xw.ConstraintSigner,"A signer constraint was violated"],[xw.ConstraintRaw,"A raw constraint was violated"],[xw.ConstraintOwner,"An owner constraint was violated"],[xw.ConstraintRentExempt,"A rent exemption constraint was violated"],[xw.ConstraintSeeds,"A seeds constraint was violated"],[xw.ConstraintExecutable,"An executable constraint was violated"],[xw.ConstraintState,"Deprecated Error, feel free to replace with something else"],[xw.ConstraintAssociated,"An associated constraint was violated"],[xw.ConstraintAssociatedInit,"An associated init constraint was violated"],[xw.ConstraintClose,"A close constraint was violated"],[xw.ConstraintAddress,"An address constraint was violated"],[xw.ConstraintZero,"Expected zero account discriminant"],[xw.ConstraintTokenMint,"A token mint constraint was violated"],[xw.ConstraintTokenOwner,"A token owner constraint was violated"],[xw.ConstraintMintMintAuthority,"A mint mint authority constraint was violated"],[xw.ConstraintMintFreezeAuthority,"A mint freeze authority constraint was violated"],[xw.ConstraintMintDecimals,"A mint decimals constraint was violated"],[xw.ConstraintSpace,"A space constraint was violated"],[xw.ConstraintAccountIsNone,"A required account for the constraint is None"],[xw.RequireViolated,"A require expression was violated"],[xw.RequireEqViolated,"A require_eq expression was violated"],[xw.RequireKeysEqViolated,"A require_keys_eq expression was violated"],[xw.RequireNeqViolated,"A require_neq expression was violated"],[xw.RequireKeysNeqViolated,"A require_keys_neq expression was violated"],[xw.RequireGtViolated,"A require_gt expression was violated"],[xw.RequireGteViolated,"A require_gte expression was violated"],[xw.AccountDiscriminatorAlreadySet,"The account discriminator was already set on this account"],[xw.AccountDiscriminatorNotFound,"No 8 byte discriminator was found on the account"],[xw.AccountDiscriminatorMismatch,"8 byte discriminator did not match what was expected"],[xw.AccountDidNotDeserialize,"Failed to deserialize the account"],[xw.AccountDidNotSerialize,"Failed to serialize the account"],[xw.AccountNotEnoughKeys,"Not enough account keys given to the instruction"],[xw.AccountNotMutable,"The given account is not mutable"],[xw.AccountOwnedByWrongProgram,"The given account is owned by a different program than expected"],[xw.InvalidProgramId,"Program ID was not as expected"],[xw.InvalidProgramExecutable,"Program account is not executable"],[xw.AccountNotSigner,"The given account did not sign"],[xw.AccountNotSystemOwned,"The given account is not owned by the system program"],[xw.AccountNotInitialized,"The program expected this account to be already initialized"],[xw.AccountNotProgramData,"The given account is not a program data account"],[xw.AccountNotAssociatedTokenAccount,"The given account is not the associated token account"],[xw.AccountSysvarMismatch,"The given public key does not match the required sysvar"],[xw.AccountReallocExceedsLimit,"The account reallocation exceeds the MAX_PERMITTED_DATA_INCREASE limit"],[xw.AccountDuplicateReallocs,"The account was duplicated for more than one reallocation"],[xw.DeclaredProgramIdMismatch,"The declared program id does not match the actual program id"],[xw.Deprecated,"The API being used is deprecated and should no longer be used"]]);var Bw=function(){return Bw=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},Bw.apply(this,arguments)},Mw=function(){return Mw=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},Mw.apply(this,arguments)};function Pw(t){return t.toLowerCase()}var Lw=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],Ow=/[^A-Z0-9]+/gi;function Tw(t,e,r){return e instanceof RegExp?t.replace(e,r):e.reduce((function(t,e){return t.replace(e,r)}),t)}function Rw(t,e){return void 0===e&&(e={}),function(t,e){void 0===e&&(e={});for(var r=e.splitRegexp,n=void 0===r?Lw:r,i=e.stripRegexp,o=void 0===i?Ow:i,s=e.transform,a=void 0===s?Pw:s,u=e.delimiter,c=void 0===u?" ":u,h=Tw(Tw(t,n,"$1\0$2"),o,"\0"),l=0,f=h.length;"\0"===h.charAt(l);)l++;for(;"\0"===h.charAt(f-1);)f--;return h.slice(l,f).split("\0").map(a).join(c)}(t,Mw({delimiter:"."},e))}class Uw{static fieldLayout(t,e){const r=void 0!==t.name?vd(t.name):void 0;switch(t.type){case"bool":return _d.bool(r);case"u8":return _d.u8(r);case"i8":return _d.i8(r);case"u16":return _d.u16(r);case"i16":return _d.i16(r);case"u32":return _d.u32(r);case"i32":return _d.i32(r);case"f32":return _d.f32(r);case"u64":return _d.u64(r);case"i64":return _d.i64(r);case"f64":return _d.f64(r);case"u128":return _d.u128(r);case"i128":return _d.i128(r);case"u256":return _d.u256(r);case"i256":return _d.i256(r);case"bytes":return _d.vecU8(r);case"string":return _d.str(r);case"publicKey":return _d.publicKey(r);default:if("vec"in t.type)return _d.vec(Uw.fieldLayout({name:void 0,type:t.type.vec},e),r);if("option"in t.type)return _d.option(Uw.fieldLayout({name:void 0,type:t.type.option},e),r);if("defined"in t.type){const n=t.type.defined;if(void 0===e)throw new _w("User defined types not provided");const i=e.filter((t=>t.name===n));if(1!==i.length)throw new _w(`Type not found: ${JSON.stringify(t)}`);return Uw.typeDefLayout(i[0],e,r)}if("array"in t.type){let n=t.type.array[0],i=t.type.array[1],o=Uw.fieldLayout({name:void 0,type:n},e);return _d.array(o,i,r)}throw new Error(`Not yet implemented: ${t}`)}}static typeDefLayout(t,e=[],r){if("struct"===t.type.kind){const n=t.type.fields.map((t=>Uw.fieldLayout(t,e)));return _d.struct(n,r)}if("enum"===t.type.kind){let n=t.type.variants.map((t=>{const r=vd(t.name);if(void 0===t.fields)return _d.struct([],r);const n=t.fields.map(((t,r)=>t.hasOwnProperty("name")?Uw.fieldLayout(t,e):Uw.fieldLayout({type:t,name:r.toString()},e)));return _d.struct(n,r)}));return void 0!==r?_d.rustEnum(n).replicate(r):_d.rustEnum(n,r)}throw new Error(`Unknown type kint: ${t}`)}}const Cw="global";class Nw{constructor(t){this.idl=t,this.ixLayout=Nw.parseIxLayout(t);const e=new Map;t.instructions.forEach((t=>{const r=Dw(Cw,t.name);e.set(md.encode(r),{layout:this.ixLayout.get(t.name),name:t.name})})),this.sighashLayouts=e}encode(t,e){return this._encode(Cw,t,e)}_encode(t,e,r){const i=n.Buffer.alloc(1e3),o=vd(e),s=this.ixLayout.get(o);if(!s)throw new Error(`Unknown method: ${o}`);const a=s.encode(r,i),u=i.slice(0,a);return n.Buffer.concat([Dw(t,e),u])}static parseIxLayout(t){const e=t.instructions.map((e=>{let r=e.args.map((e=>{var r,n;return Uw.fieldLayout(e,Array.from([...null!==(r=t.accounts)&&void 0!==r?r:[],...null!==(n=t.types)&&void 0!==n?n:[]]))}));const n=vd(e.name);return[n,_d.struct(r,n)]}));return new Map(e)}decode(t,e="hex"){"string"==typeof t&&(t="hex"===e?n.Buffer.from(t,"hex"):md.decode(t));let r=md.encode(t.slice(0,8)),i=t.slice(8);const o=this.sighashLayouts.get(r);return o?{data:o.layout.decode(i),name:o.name}:null}format(t,e){return zw.format(t,e,this.idl)}}class zw{static format(t,e,r){const n=r.instructions.filter((e=>t.name===e.name))[0];if(void 0===n)return console.error("Invalid instruction given"),null;const i=n.args.map((e=>({name:e.name,type:zw.formatIdlType(e.type),data:zw.formatIdlData(e,t.data[e.name],r.types)}))),o=zw.flattenIdlAccounts(n.accounts);return{args:i,accounts:e.map(((t,e)=>e<o.length?{name:o[e].name,...t}:{name:void 0,...t}))}}static formatIdlType(t){if("string"==typeof t)return t;if("vec"in t)return`Vec<${this.formatIdlType(t.vec)}>`;if("option"in t)return`Option<${this.formatIdlType(t.option)}>`;if("defined"in t)return t.defined;if("array"in t)return`Array<${t.array[0]}; ${t.array[1]}>`;throw new Error(`Unknown IDL type: ${t}`)}static formatIdlData(t,e,r){if("string"==typeof t.type)return e.toString();if(t.type.hasOwnProperty("vec"))return"["+e.map((e=>this.formatIdlData({name:"",type:t.type.vec},e))).join(", ")+"]";if(t.type.hasOwnProperty("option"))return null===e?"null":this.formatIdlData({name:"",type:t.type.option},e,r);if(t.type.hasOwnProperty("defined")){if(void 0===r)throw new Error("User defined types not provided");const n=r.filter((e=>e.name===t.type.defined));if(1!==n.length)throw new Error(`Type not found: ${t.type.defined}`);return zw.formatIdlDataDefined(n[0],e,r)}return"unknown"}static formatIdlDataDefined(t,e,r){if("struct"===t.type.kind){const n=t.type,i=Object.keys(e).map((t=>{const i=n.fields.filter((e=>e.name===t))[0];if(void 0===i)throw new Error("Unable to find type");return t+": "+zw.formatIdlData(i,e[t],r)})).join(", ");return"{ "+i+" }"}if(0===t.type.variants.length)return"{}";if(t.type.variants[0].name){const n=t.type.variants,i=Object.keys(e)[0],o=e[i],s=Object.keys(o).map((t=>{var e;const s=o[t],a=null===(e=n[i])||void 0===e?void 0:e.filter((e=>e.name===t))[0];if(void 0===a)throw new Error("Unable to find variant");return t+": "+zw.formatIdlData(a,s,r)})).join(", "),a=vd(i,{pascalCase:!0});return 0===s.length?a:`${a} { ${s} }`}return"Tuple formatting not yet implemented"}static flattenIdlAccounts(t,e){return t.map((t=>{const r=function(t){const e=t.replace(/([A-Z])/g," $1");return e.charAt(0).toUpperCase()+e.slice(1)}(t.name);if(t.hasOwnProperty("accounts")){const n=e?`${e} > ${r}`:r;return zw.flattenIdlAccounts(t.accounts,n)}return{...t,name:e?`${e} > ${r}`:r}})).flat()}}function Dw(t,e){var r;let i=`${t}:${void 0===r&&(r={}),Rw(e,Bw({delimiter:"_"},r))}`;return n.Buffer.from(pe(i).slice(0,8))}function jw(t,e){if("enum"===e.type.kind){const r=e.type.variants.map((e=>e.fields?e.fields.map((e=>Ww(t,"object"==typeof e&&"name"in e?e.type:e))).reduce(((t,e)=>t+e),0):0));return Math.max(...r)+1}return e.type.fields.map((e=>Ww(t,e.type))).reduce(((t,e)=>t+e),0)}function Ww(t,e){var r,n;switch(e){case"bool":case"u8":case"i8":case"bytes":case"string":return 1;case"i16":case"u16":return 2;case"u32":case"i32":case"f32":return 4;case"u64":case"i64":case"f64":return 8;case"u128":case"i128":return 16;case"u256":case"i256":case"publicKey":return 32;default:if("vec"in e)return 1;if("option"in e)return 1+Ww(t,e.option);if("coption"in e)return 4+Ww(t,e.coption);if("defined"in e){const i=null!==(n=null===(r=t.types)||void 0===r?void 0:r.filter((t=>t.name===e.defined)))&&void 0!==n?n:[];if(1!==i.length)throw new _w(`Type not found: ${JSON.stringify(e)}`);return jw(t,i[0])}if("array"in e){let r=e.array[0],n=e.array[1];return Ww(t,r)*n}throw new Error(`Invalid type ${JSON.stringify(e)}`)}}const Fw=8;function Kw(t){return Buffer.from(pe(t).slice(0,Fw))}class qw{constructor(t){if(void 0===t.accounts)return void(this.accountLayouts=new Map);const e=t.accounts.map((e=>[e.name,Uw.typeDefLayout(e,t.types)]));this.accountLayouts=new Map(e),this.idl=t}async encode(t,e){const r=n.Buffer.alloc(1e3),i=this.accountLayouts.get(t);if(!i)throw new Error(`Unknown account: ${t}`);const o=i.encode(e,r);let s=r.slice(0,o),a=qw.accountDiscriminator(t);return n.Buffer.concat([a,s])}decode(t,e){if(qw.accountDiscriminator(t).compare(e.slice(0,8)))throw new Error("Invalid account discriminator");return this.decodeUnchecked(t,e)}decodeAny(t){const e=t.slice(0,8),r=Array.from(this.accountLayouts.keys()).find((t=>qw.accountDiscriminator(t).equals(e)));if(!r)throw new Error("Account descriminator not found");return this.decodeUnchecked(r,t)}decodeUnchecked(t,e){const r=e.subarray(Fw),n=this.accountLayouts.get(t);if(!n)throw new Error(`Unknown account: ${t}`);return n.decode(r)}memcmp(t,e){const r=qw.accountDiscriminator(t);return{offset:0,bytes:md.encode(e?n.Buffer.concat([r,e]):r)}}size(t){var e;return Fw+(null!==(e=jw(this.idl,t))&&void 0!==e?e:0)}static accountDiscriminator(t){return Kw(`account:${vd(t,{pascalCase:!0,preserveConsecutiveUppercase:!0})}`)}}class Vw{constructor(t){if(void 0===t.events)return void(this.layouts=new Map);const e=t.events.map((e=>{let r={name:e.name,type:{kind:"struct",fields:e.fields.map((t=>({name:t.name,type:t.type})))}};return[e.name,Uw.typeDefLayout(r,t.types)]}));this.layouts=new Map(e),this.discriminators=new Map(void 0===t.events?[]:t.events.map((t=>[s(Hw(t.name)),t.name])))}decode(t){let e;try{e=n.Buffer.from(o(t))}catch(t){return null}const r=s(e.slice(0,8)),i=this.discriminators.get(r);if(void 0===i)return null;const a=this.layouts.get(i);if(!a)throw new Error(`Unknown event: ${i}`);return{data:a.decode(e.slice(8)),name:i}}}function Hw(t){return Kw(`event:${t}`)}class $w{constructor(t){if(void 0===t.types)return void(this.typeLayouts=new Map);const e=t.types.map((e=>[e.name,Uw.typeDefLayout(e,t.types)]));this.typeLayouts=new Map(e),this.idl=t}encode(t,e){const r=n.Buffer.alloc(1e3),i=this.typeLayouts.get(t);if(!i)throw new Error(`Unknown type: ${t}`);const o=i.encode(e,r);return r.slice(0,o)}decode(t,e){const r=this.typeLayouts.get(t);if(!r)throw new Error(`Unknown type: ${t}`);return r.decode(e)}}class Zw{constructor(t){this.instruction=new Nw(t),this.accounts=new qw(t),this.events=new Vw(t),this.types=new $w(t)}}var Gw="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Yw(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}class Jw{constructor(t,e){if(!Number.isInteger(t))throw new TypeError("span must be an integer");this.span=t,this.property=e}makeDestinationObject(){return{}}decode(t,e){throw new Error("Layout is abstract")}encode(t,e,r){throw new Error("Layout is abstract")}getSpan(t,e){if(0>this.span)throw new RangeError("indeterminate span");return this.span}replicate(t){const e=Object.create(this.constructor.prototype);return Object.assign(e,this),e.property=t,e}fromArray(t){}}var Xw=Jw;class Qw extends Jw{isCount(){throw new Error("ExternalLayout is abstract")}}class tb extends Qw{constructor(t,e,r){if(!(t instanceof Jw))throw new TypeError("layout must be a Layout");if(void 0===e)e=0;else if(!Number.isInteger(e))throw new TypeError("offset must be integer or undefined");super(t.span,r||t.property),this.layout=t,this.offset=e}isCount(){return this.layout instanceof eb||this.layout instanceof rb}decode(t,e){return void 0===e&&(e=0),this.layout.decode(t,e+this.offset)}encode(t,e,r){return void 0===r&&(r=0),this.layout.encode(t,e,r+this.offset)}}class eb extends Jw{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntLE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntLE(t,r,this.span),this.span}}class rb extends Jw{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntBE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntBE(t,r,this.span),this.span}}const nb=Math.pow(2,32);function ib(t){const e=Math.floor(t/nb);return{hi32:e,lo32:t-e*nb}}function ob(t,e){return t*nb+e}class sb extends Jw{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return ob(t.readUInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=ib(t);return e.writeUInt32LE(n.lo32,r),e.writeUInt32LE(n.hi32,r+4),8}}class ab extends Jw{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return ob(t.readInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=ib(t);return e.writeUInt32LE(n.lo32,r),e.writeInt32LE(n.hi32,r+4),8}}class ub extends Jw{constructor(t,e,r){if(!Array.isArray(t)||!t.reduce(((t,e)=>t&&e instanceof Jw),!0))throw new TypeError("fields must be array of Layout instances");"boolean"==typeof e&&void 0===r&&(r=e,e=void 0);for(const e of t)if(0>e.span&&void 0===e.property)throw new Error("fields cannot contain unnamed variable-length layout");let n=-1;try{n=t.reduce(((t,e)=>t+e.getSpan()),0)}catch(t){}super(n,e),this.fields=t,this.decodePrefixes=!!r}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;try{r=this.fields.reduce(((r,n)=>{const i=n.getSpan(t,e);return e+=i,r+i}),0)}catch(t){throw new RangeError("indeterminate span")}return r}decode(t,e){void 0===e&&(e=0);const r=this.makeDestinationObject();for(const n of this.fields)if(void 0!==n.property&&(r[n.property]=n.decode(t,e)),e+=n.getSpan(t,e),this.decodePrefixes&&t.length===e)break;return r}encode(t,e,r){void 0===r&&(r=0);const n=r;let i=0,o=0;for(const n of this.fields){let s=n.span;if(o=0<s?s:0,void 0!==n.property){const i=t[n.property];void 0!==i&&(o=n.encode(i,e,r),0>s&&(s=n.getSpan(e,r)))}i=r,r+=s}return i+o-n}fromArray(t){const e=this.makeDestinationObject();for(const r of this.fields)void 0!==r.property&&0<t.length&&(e[r.property]=t.shift());return e}layoutFor(t){if("string"!=typeof t)throw new TypeError("property must be string");for(const e of this.fields)if(e.property===t)return e}offsetOf(t){if("string"!=typeof t)throw new TypeError("property must be string");let e=0;for(const r of this.fields){if(r.property===t)return e;0>r.span?e=-1:0<=e&&(e+=r.span)}}}class cb{constructor(t){this.property=t}decode(){throw new Error("UnionDiscriminator is abstract")}encode(){throw new Error("UnionDiscriminator is abstract")}}class hb extends cb{constructor(t,e){if(!(t instanceof Qw&&t.isCount()))throw new TypeError("layout must be an unsigned integer ExternalLayout");super(e||t.property||"variant"),this.layout=t}decode(t,e){return this.layout.decode(t,e)}encode(t,e,r){return this.layout.encode(t,e,r)}}class lb extends Jw{constructor(t,e,r){const n=t instanceof eb||t instanceof rb;if(n)t=new hb(new tb(t));else if(t instanceof Qw&&t.isCount())t=new hb(t);else if(!(t instanceof cb))throw new TypeError("discr must be a UnionDiscriminator or an unsigned integer layout");if(void 0===e&&(e=null),!(null===e||e instanceof Jw))throw new TypeError("defaultLayout must be null or a Layout");if(null!==e){if(0>e.span)throw new Error("defaultLayout must have constant span");void 0===e.property&&(e=e.replicate("content"))}let i=-1;e&&(i=e.span,0<=i&&n&&(i+=t.layout.span)),super(i,r),this.discriminator=t,this.usesPrefixDiscriminator=n,this.defaultLayout=e,this.registry={};let o=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(t){return o(t)},this.configGetSourceVariant=function(t){o=t.bind(this)}}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);const r=this.getVariant(t,e);if(!r)throw new Error("unable to determine span for unrecognized variant");return r.getSpan(t,e)}defaultGetSourceVariant(t){if(t.hasOwnProperty(this.discriminator.property)){if(this.defaultLayout&&t.hasOwnProperty(this.defaultLayout.property))return;const e=this.registry[t[this.discriminator.property]];if(e&&(!e.layout||t.hasOwnProperty(e.property)))return e}else for(const e in this.registry){const r=this.registry[e];if(t.hasOwnProperty(r.property))return r}throw new Error("unable to infer src variant")}decode(t,e){let r;void 0===e&&(e=0);const n=this.discriminator,i=n.decode(t,e);let o=this.registry[i];if(void 0===o){let s=0;o=this.defaultLayout,this.usesPrefixDiscriminator&&(s=n.layout.span),r=this.makeDestinationObject(),r[n.property]=i,r[o.property]=this.defaultLayout.decode(t,e+s)}else r=o.decode(t,e);return r}encode(t,e,r){void 0===r&&(r=0);const n=this.getSourceVariant(t);if(void 0===n){const n=this.discriminator,i=this.defaultLayout;let o=0;return this.usesPrefixDiscriminator&&(o=n.layout.span),n.encode(t[n.property],e,r),o+i.encode(t[i.property],e,r+o)}return n.encode(t,e,r)}addVariant(t,e,r){const n=new fb(this,t,e,r);return this.registry[t]=n,n}getVariant(t,e){let r=t;return Buffer.isBuffer(t)&&(void 0===e&&(e=0),r=this.discriminator.decode(t,e)),this.registry[r]}}class fb extends Jw{constructor(t,e,r,n){if(!(t instanceof lb))throw new TypeError("union must be a Union");if(!Number.isInteger(e)||0>e)throw new TypeError("variant must be a (non-negative) integer");if("string"==typeof r&&void 0===n&&(n=r,r=null),r){if(!(r instanceof Jw))throw new TypeError("layout must be a Layout");if(null!==t.defaultLayout&&0<=r.span&&r.span>t.defaultLayout.span)throw new Error("variant span exceeds span of containing union");if("string"!=typeof n)throw new TypeError("variant must have a String property")}let i=t.span;0>t.span&&(i=r?r.span:0,0<=i&&t.usesPrefixDiscriminator&&(i+=t.discriminator.layout.span)),super(i,n),this.union=t,this.variant=e,this.layout=r||null}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;return this.union.usesPrefixDiscriminator&&(r=this.union.discriminator.layout.span),r+this.layout.getSpan(t,e+r)}decode(t,e){const r=this.makeDestinationObject();if(void 0===e&&(e=0),this!==this.union.getVariant(t,e))throw new Error("variant mismatch");let n=0;return this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout?r[this.property]=this.layout.decode(t,e+n):this.property?r[this.property]=!0:this.union.usesPrefixDiscriminator&&(r[this.union.discriminator.property]=this.variant),r}encode(t,e,r){void 0===r&&(r=0);let n=0;if(this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout&&!t.hasOwnProperty(this.property))throw new TypeError("variant lacks property "+this.property);this.union.discriminator.encode(this.variant,e,r);let i=n;if(this.layout&&(this.layout.encode(t[this.property],e,r+n),i+=this.layout.getSpan(e,r+n),0<=this.union.span&&i>this.union.span))throw new Error("encoded variant overruns containing union");return i}fromArray(t){if(this.layout)return this.layout.fromArray(t)}}class db extends Jw{constructor(t,e){if(!(t instanceof Qw&&t.isCount()||Number.isInteger(t)&&0<=t))throw new TypeError("length must be positive integer or an unsigned integer ExternalLayout");let r=-1;t instanceof Qw||(r=t),super(r,e),this.length=t}getSpan(t,e){let r=this.span;return 0>r&&(r=this.length.decode(t,e)),r}decode(t,e){void 0===e&&(e=0);let r=this.span;return 0>r&&(r=this.length.decode(t,e)),t.slice(e,e+r)}encode(t,e,r){let n=this.length;if(this.length instanceof Qw&&(n=t.length),!Buffer.isBuffer(t)||n!==t.length)throw new TypeError(function(t,e){return e.property?t+"["+e.property+"]":t}("Blob.encode",this)+" requires (length "+n+") Buffer as src");if(r+n>e.length)throw new RangeError("encoding overruns Buffer");return e.write(t.toString("hex"),r,n,"hex"),this.length instanceof Qw&&this.length.encode(n,e,r),n}}var pb=(t,e,r)=>new tb(t,e,r),yb=t=>new eb(4,t),gb=t=>new ab(t),mb=(t,e,r)=>new ub(t,e,r),wb=(t,e,r)=>new lb(t,e,r),bb=(t,e)=>new db(t,e);class vb{constructor(t){}encode(t,e){switch(vd(t)){case"createAccount":return function({lamports:t,space:e,owner:r}){return Ab({createAccount:{lamports:t,space:e,owner:r.toBuffer()}})}(e);case"assign":return function({owner:t}){return Ab({assign:{owner:t.toBuffer()}})}(e);case"transfer":return function({lamports:t}){return Ab({transfer:{lamports:t}})}(e);case"createAccountWithSeed":return function({base:t,seed:e,lamports:r,space:n,owner:i}){return Ab({createAccountWithSeed:{base:t.toBuffer(),seed:e,lamports:r,space:n,owner:i.toBuffer()}},Sb.getVariant(3).span+e.length)}(e);case"advanceNonceAccount":return function({authorized:t}){return Ab({advanceNonceAccount:{authorized:t.toBuffer()}})}(e);case"withdrawNonceAccount":return function({lamports:t}){return Ab({withdrawNonceAccount:{lamports:t}})}(e);case"initializeNonceAccount":return function({authorized:t}){return Ab({initializeNonceAccount:{authorized:t.toBuffer()}})}(e);case"authorizeNonceAccount":return function({authorized:t}){return Ab({authorizeNonceAccount:{authorized:t.toBuffer()}})}(e);case"allocate":return function({space:t}){return Ab({allocate:{space:t}})}(e);case"allocateWithSeed":return function({base:t,seed:e,space:r,owner:n}){return Ab({allocateWithSeed:{base:t.toBuffer(),seed:e,space:r,owner:n.toBuffer()}},Sb.getVariant(9).span+e.length)}(e);case"assignWithSeed":return function({base:t,seed:e,owner:r}){return Ab({assignWithSeed:{base:t.toBuffer(),seed:e,owner:r.toBuffer()}},Sb.getVariant(10).span+e.length)}(e);case"transferWithSeed":return function({lamports:t,seed:e,owner:r}){return Ab({transferWithSeed:{lamports:t,seed:e,owner:r.toBuffer()}},Sb.getVariant(11).span+e.length)}(e);default:throw new Error(`Invalid instruction: ${t}`)}}encodeState(t,e){throw new Error("System does not have state")}}class _b extends Xw{constructor(t){super(-1,t),this.property=t,this.layout=mb([yb("length"),yb("lengthPadding"),bb(pb(yb(),-8),"chars")],this.property)}encode(t,e,r=0){if(null==t)return this.layout.span;const n={chars:Buffer.from(t,"utf8")};return this.layout.encode(n,e,r)}decode(t,e=0){return this.layout.decode(t,e).chars.toString()}getSpan(t,e=0){return yb().span+yb().span+new ne(new Uint8Array(t).slice(e,e+4),10,"le").toNumber()}}function kb(t){return new _b(t)}function Eb(t){return bb(32,t)}const Sb=wb(yb("instruction"));function Ab(t,e){const r=Buffer.alloc(null!=e?e:xb),n=Sb.encode(t,r);return void 0===e?r.slice(0,n):r}Sb.addVariant(0,mb([gb("lamports"),gb("space"),Eb("owner")]),"createAccount"),Sb.addVariant(1,mb([Eb("owner")]),"assign"),Sb.addVariant(2,mb([gb("lamports")]),"transfer"),Sb.addVariant(3,mb([Eb("base"),kb("seed"),gb("lamports"),gb("space"),Eb("owner")]),"createAccountWithSeed"),Sb.addVariant(4,mb([Eb("authorized")]),"advanceNonceAccount"),Sb.addVariant(5,mb([gb("lamports")]),"withdrawNonceAccount"),Sb.addVariant(6,mb([Eb("authorized")]),"initializeNonceAccount"),Sb.addVariant(7,mb([Eb("authorized")]),"authorizeNonceAccount"),Sb.addVariant(8,mb([gb("space")]),"allocate"),Sb.addVariant(9,mb([Eb("base"),kb("seed"),gb("space"),Eb("owner")]),"allocateWithSeed"),Sb.addVariant(10,mb([Eb("base"),kb("seed"),Eb("owner")]),"assignWithSeed"),Sb.addVariant(11,mb([gb("lamports"),kb("seed"),Eb("owner")]),"transferWithSeed");const xb=Math.max(...Object.values(Sb.registry).map((t=>t.span)));class Ib{constructor(t){this.idl=t}async encode(t,e){if("nonce"===t){const t=Buffer.alloc(Bs),r=Pb.encode(e,t);return t.slice(0,r)}throw new Error(`Invalid account name: ${t}`)}decode(t,e){return this.decodeUnchecked(t,e)}decodeUnchecked(t,e){if("nonce"===t)return function(t){return Pb.decode(t)}(e);throw new Error(`Invalid account name: ${t}`)}memcmp(t,e){if("nonce"===t)return{dataSize:Bs};throw new Error(`Invalid account name: ${t}`)}size(t){var e;return null!==(e=jw(this.idl,t))&&void 0!==e?e:0}}class Bb extends Xw{constructor(t,e,r,n){super(t.span,n),this.layout=t,this.decoder=e,this.encoder=r}decode(t,e){return this.decoder(this.layout.decode(t,e))}encode(t,e,r){return this.layout.encode(this.encoder(t),e,r)}getSpan(t,e){return this.layout.getSpan(t,e)}}function Mb(t){return new Bb(bb(32),(t=>new Wo(t)),(t=>t.toBuffer()),t)}const Pb=mb([yb("version"),yb("state"),Mb("authorizedPubkey"),Mb("nonce"),mb([(Lb="lamportsPerSignature",new sb(Lb))],"feeCalculator")]);var Lb;class Ob{constructor(t){}decode(t){throw new Error("System program does not have events")}}class Tb{constructor(t){}encode(t,e){throw new Error("System does not have user-defined types")}decode(t,e){throw new Error("System does not have user-defined types")}}class Rb{constructor(t){this.instruction=new vb(t),this.accounts=new Ib(t),this.events=new Ob(t),this.types=new Tb(t)}}var Ub=Object.freeze({__proto__:null,hash:function(t){return(new TextDecoder).decode(pe(t))}});function Cb(t,...e){let r=[n.Buffer.from([97,110,99,104,111,114])];e.forEach((t=>{r.push(t instanceof n.Buffer?t:Rm(t).toBuffer())}));const[i]=Wo.findProgramAddressSync(r,Rm(t));return i}var Nb=Object.freeze({__proto__:null,createWithSeedSync:function(t,e,r){const i=n.Buffer.concat([t.toBuffer(),n.Buffer.from(e),r.toBuffer()]);return new Wo(pe(i))},associated:Cb});const zb=new Wo("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),Db=new Wo("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");var jb=Object.freeze({__proto__:null,TOKEN_PROGRAM_ID:zb,ASSOCIATED_PROGRAM_ID:Db,associatedAddress:function({mint:t,owner:e}){return Wo.findProgramAddressSync([e.toBuffer(),zb.toBuffer(),t.toBuffer()],Db)[0]}}),Wb={exports:{}};!function(t,e){var r="undefined"!=typeof self?self:Gw,n=function(){function t(){this.fetch=!1,this.DOMException=r.DOMException}return t.prototype=r,new t}();!function(t){!function(e){var r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),o="FormData"in t,s="ArrayBuffer"in t;if(s)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(t){return t&&a.indexOf(Object.prototype.toString.call(t))>-1};function c(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function h(t){return"string"!=typeof t&&(t=String(t)),t}function l(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return n&&(e[Symbol.iterator]=function(){return e}),e}function f(t){this.map={},t instanceof f?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function d(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function p(t){return new Promise((function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}}))}function y(t){var e=new FileReader,r=p(e);return e.readAsArrayBuffer(t),r}function g(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(t){var e;this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:i&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:o&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:r&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():s&&i&&((e=t)&&DataView.prototype.isPrototypeOf(e))?(this._bodyArrayBuffer=g(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(t)||u(t))?this._bodyArrayBuffer=g(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var t=d(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?d(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var t=d(this);if(t)return t;if(this._bodyBlob)return function(t){var e=new FileReader,r=p(e);return e.readAsText(t),r}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n<e.length;n++)r[n]=String.fromCharCode(e[n]);return r.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},o&&(this.formData=function(){return this.text().then(v)}),this.json=function(){return this.text().then(JSON.parse)},this}f.prototype.append=function(t,e){t=c(t),e=h(e);var r=this.map[t];this.map[t]=r?r+", "+e:e},f.prototype.delete=function(t){delete this.map[c(t)]},f.prototype.get=function(t){return t=c(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(c(t))},f.prototype.set=function(t,e){this.map[c(t)]=h(e)},f.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},f.prototype.keys=function(){var t=[];return this.forEach((function(e,r){t.push(r)})),l(t)},f.prototype.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),l(t)},f.prototype.entries=function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),l(t)},n&&(f.prototype[Symbol.iterator]=f.prototype.entries);var w=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function b(t,e){var r,n,i=(e=e||{}).body;if(t instanceof b){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,i||null==t._bodyInit||(i=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"same-origin",!e.headers&&this.headers||(this.headers=new f(e.headers)),this.method=(r=e.method||this.method||"GET",n=r.toUpperCase(),w.indexOf(n)>-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function v(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var r=t.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");e.append(decodeURIComponent(n),decodeURIComponent(i))}})),e}function _(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new f(e.headers),this.url=e.url||"",this._initBody(t)}b.prototype.clone=function(){return new b(this,{body:this._bodyInit})},m.call(b.prototype),m.call(_.prototype),_.prototype.clone=function(){return new _(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},_.error=function(){var t=new _(null,{status:0,statusText:""});return t.type="error",t};var k=[301,302,303,307,308];_.redirect=function(t,e){if(-1===k.indexOf(e))throw new RangeError("Invalid status code");return new _(null,{status:e,headers:{location:t}})},e.DOMException=t.DOMException;try{new e.DOMException}catch(t){e.DOMException=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function E(t,r){return new Promise((function(n,o){var s=new b(t,r);if(s.signal&&s.signal.aborted)return o(new e.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function u(){a.abort()}a.onload=function(){var t,e,r={status:a.status,statusText:a.statusText,headers:(t=a.getAllResponseHeaders()||"",e=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var r=t.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();e.append(n,i)}})),e)};r.url="responseURL"in a?a.responseURL:r.headers.get("X-Request-URL");var i="response"in a?a.response:a.responseText;n(new _(i,r))},a.onerror=function(){o(new TypeError("Network request failed"))},a.ontimeout=function(){o(new TypeError("Network request failed"))},a.onabort=function(){o(new e.DOMException("Aborted","AbortError"))},a.open(s.method,s.url,!0),"include"===s.credentials?a.withCredentials=!0:"omit"===s.credentials&&(a.withCredentials=!1),"responseType"in a&&i&&(a.responseType="blob"),s.headers.forEach((function(t,e){a.setRequestHeader(e,t)})),s.signal&&(s.signal.addEventListener("abort",u),a.onreadystatechange=function(){4===a.readyState&&s.signal.removeEventListener("abort",u)}),a.send(void 0===s._bodyInit?null:s._bodyInit)}))}E.polyfill=!0,t.fetch||(t.fetch=E,t.Headers=f,t.Request=b,t.Response=_),e.Headers=f,e.Request=b,e.Response=_,e.fetch=E,Object.defineProperty(e,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;(e=i.fetch).default=i.fetch,e.fetch=i.fetch,e.Headers=i.Headers,e.Request=i.Request,e.Response=i.Response,t.exports=e}(Wb,Wb.exports);var Fb=Yw(Wb.exports);async function Kb(t,e){const r=await t.getAccountInfo(e);if(null===r)throw new Error("program account not found");const{program:n}=Vb(r.data),i=await t.getAccountInfo(n.programdataAddress);if(null===i)throw new Error("program data account not found");const{programData:o}=Vb(i.data);return o}const qb=_d.rustEnum([_d.struct([],"uninitialized"),_d.struct([_d.option(_d.publicKey(),"authorityAddress")],"buffer"),_d.struct([_d.publicKey("programdataAddress")],"program"),_d.struct([_d.u64("slot"),_d.option(_d.publicKey(),"upgradeAuthorityAddress")],"programData")],void 0,_d.u32());function Vb(t){return qb.decode(t)}var Hb=Object.freeze({__proto__:null,verifiedBuild:async function(t,e,r=5){const n=`https://api.apr.dev/api/v0/program/${e.toString()}/latest?limit=${r}`,[i,o]=await Promise.all([Kb(t,e),Fb(n)]),s=(await o.json()).filter((t=>!t.aborted&&"Built"===t.state&&"Verified"===t.verified));if(0===s.length)return null;const a=s[0];return i.slot.toNumber()!==a.verified_slot?null:a},fetchData:Kb,decodeUpgradeableLoaderState:Vb}),$b=Object.freeze({__proto__:null,sha256:Ub,rpc:hw,publicKey:Nb,bytes:Pm,token:jb,features:vw,registry:Hb});function Zb(t){return"accounts"in t}const Gb=_d.struct([_d.publicKey("authority"),_d.vecU8("data")]);function Yb(t,e){var r,n;let i={};const o=t.args?t.args.length:0;if(e.length>o){if(e.length!==o+1)throw new Error(`provided too many arguments ${e} to instruction ${null==t?void 0:t.name} expecting: ${null!==(n=null===(r=t.args)||void 0===r?void 0:r.map((t=>t.name)))&&void 0!==n?n:[]}`);i=e.pop()}return[e,i]}class Jb{static build(t,e,r){if("_inner"===t.name)throw new _w("the _inner name is reserved");const n=(...i)=>{const[o,s]=Yb(t,[...i]);Tm(t.accounts,s.accounts);const a=n.accounts(s.accounts);return void 0!==s.remainingAccounts&&a.push(...s.remainingAccounts),bw("debug-logs")&&console.log("Outgoing account metas:",a),new cs({keys:a,programId:r,data:e(t.name,Om(t,...o))})};return n.accounts=e=>Jb.accountsArray(e,t.accounts,r,t.name),n}static accountsArray(t,e,r,n){return t?e.map((e=>{if(void 0!==("accounts"in e?e.accounts:void 0)){const i=t[e.name];return Jb.accountsArray(i,e.accounts,r,n).flat()}{const i=e;let o;try{o=Rm(t[e.name])}catch(t){throw new Error(`Wrong input type for account "${e.name}" in the instruction accounts object${void 0!==n?' for instruction "'+n+'"':""}. Expected PublicKey or string.`)}const s=i.isOptional&&o.equals(r);return{pubkey:o,isWritable:i.isMut&&!s,isSigner:i.isSigner&&!s}}})).flat():[]}}class Xb{static build(t,e){return(...r)=>{var n,i,o;const[,s]=Yb(t,[...r]),a=new hs;if(s.preInstructions&&s.instructions)throw new Error("instructions is deprecated, use preInstructions");return null===(n=s.preInstructions)||void 0===n||n.forEach((t=>a.add(t))),null===(i=s.instructions)||void 0===i||i.forEach((t=>a.add(t))),a.add(e(...r)),null===(o=s.postInstructions)||void 0===o||o.forEach((t=>a.add(t))),a}}}class Qb{static build(t,e,r,n){return async(...i)=>{var o;const s=e(...i),[,a]=Yb(t,[...i]);if(void 0===n.sendAndConfirm)throw new Error("This function requires 'Provider.sendAndConfirm' to be implemented.");try{return await n.sendAndConfirm(s,null!==(o=a.signers)&&void 0!==o?o:[],a.options)}catch(t){throw Aw(t,r)}}}}class tv{static build(t,e,r,n){var i;const o={};return null===(i=t.accounts)||void 0===i||i.forEach((i=>{const s=vd(i.name);o[s]=new ev(t,i,r,n,e)})),o}}class ev{get size(){return this._size}get programId(){return this._programId}get provider(){return this._provider}get coder(){return this._coder}get idlAccount(){return this._idlAccount}constructor(t,e,r,n,i){this._idlAccount=e,this._programId=r,this._provider=null!=n?n:yw(),this._coder=null!=i?i:new Zw(t),this._size=this._coder.accounts.size(e)}async fetchNullable(t,e){const{data:r}=await this.fetchNullableAndContext(t,e);return r}async fetchNullableAndContext(t,e){const r=await this.getAccountInfoAndContext(t,e),{value:n,context:i}=r;return{data:n&&0!==n.data.length?this._coder.accounts.decode(this._idlAccount.name,n.data):null,context:i}}async fetch(t,e){const{data:r}=await this.fetchNullableAndContext(t,e);if(null===r)throw new Error(`Account does not exist or has no data ${t.toString()}`);return r}async fetchAndContext(t,e){const{data:r,context:n}=await this.fetchNullableAndContext(t,e);if(null===r)throw new Error(`Account does not exist ${t.toString()}`);return{data:r,context:n}}async fetchMultiple(t,e){return(await this.fetchMultipleAndContext(t,e)).map((t=>t?t.data:null))}async fetchMultipleAndContext(t,e){return(await rw(this._provider.connection,t.map((t=>Rm(t))),e)).map((t=>{if(null==t)return null;const{account:e,context:r}=t;return{data:this._coder.accounts.decode(this._idlAccount.name,e.data),context:r}}))}async all(t){const e=this.coder.accounts.memcmp(this._idlAccount.name,t instanceof Buffer?t:void 0),r=[];return null!=(null==e?void 0:e.offset)&&null!=(null==e?void 0:e.bytes)&&r.push({memcmp:{offset:e.offset,bytes:e.bytes}}),null!=(null==e?void 0:e.dataSize)&&r.push({dataSize:e.dataSize}),(await this._provider.connection.getProgramAccounts(this._programId,{commitment:this._provider.connection.commitment,filters:[...r,...Array.isArray(t)?t:[]]})).map((({pubkey:t,account:e})=>({publicKey:t,account:this._coder.accounts.decode(this._idlAccount.name,e.data)})))}subscribe(t,e){const r=rv.get(t.toString());if(r)return r.ee;const n=new vm;t=Rm(t);const i=this._provider.connection.onAccountChange(t,(t=>{const e=this._coder.accounts.decode(this._idlAccount.name,t.data);n.emit("change",e)}),e);return rv.set(t.toString(),{ee:n,listener:i}),n}async unsubscribe(t){let e=rv.get(t.toString());e?rv&&await this._provider.connection.removeAccountChangeListener(e.listener).then((()=>{rv.delete(t.toString())})).catch(console.error):console.warn("Address is not subscribed")}async createInstruction(t,e){const r=this.size;if(void 0===this._provider.publicKey)throw new Error("This function requires the Provider interface implementor to have a 'publicKey' field.");return Ts.createAccount({fromPubkey:this._provider.publicKey,newAccountPubkey:t.publicKey,space:null!=e?e:r,lamports:await this._provider.connection.getMinimumBalanceForRentExemption(null!=e?e:r),programId:this._programId})}async associated(...t){const e=await this.associatedAddress(...t);return await this.fetch(e)}async associatedAddress(...t){return await Cb(this._programId,...t)}async getAccountInfo(t,e){return await this._provider.connection.getAccountInfo(Rm(t),e)}async getAccountInfoAndContext(t,e){return await this._provider.connection.getAccountInfoAndContext(Rm(t),e)}}const rv=new Map,nv="Program log: ",iv="Program data: ";class ov{constructor(t,e,r){this._programId=t,this._provider=e,this._eventParser=new sv(t,r),this._eventCallbacks=new Map,this._eventListeners=new Map,this._listenerIdCount=0}addEventListener(t,e){var r;let n=this._listenerIdCount;return this._listenerIdCount+=1,this._eventListeners.has(t)||this._eventListeners.set(t,[]),this._eventListeners.set(t,(null!==(r=this._eventListeners.get(t))&&void 0!==r?r:[]).concat(n)),this._eventCallbacks.set(n,[t,e]),void 0!==this._onLogsSubscriptionId||(this._onLogsSubscriptionId=this._provider.connection.onLogs(this._programId,((t,e)=>{if(!t.err)for(const r of this._eventParser.parseLogs(t.logs)){const n=this._eventListeners.get(r.name);n&&n.forEach((n=>{const i=this._eventCallbacks.get(n);if(i){const[,n]=i;n(r.data,e.slot,t.signature)}}))}}))),n}async removeEventListener(t){const e=this._eventCallbacks.get(t);if(!e)throw new Error(`Event listener ${t} doesn't exist!`);const[r]=e;let n=this._eventListeners.get(r);if(!n)throw new Error(`Event listeners don't exist for ${r}!`);if(this._eventCallbacks.delete(t),n=n.filter((e=>e!==t)),this._eventListeners.set(r,n),0===n.length&&this._eventListeners.delete(r),0===this._eventCallbacks.size){if(0!==this._eventListeners.size)throw new Error(`Expected event listeners size to be 0 but got ${this._eventListeners.size}`);void 0!==this._onLogsSubscriptionId&&(await this._provider.connection.removeOnLogsListener(this._onLogsSubscriptionId),this._onLogsSubscriptionId=void 0)}}}class sv{constructor(t,e){this.coder=e,this.programId=t}*parseLogs(t,e=!1){const r=new uv(t),n=new av;let i=r.next();for(;null!==i;){let[t,o,s]=this.handleLog(n,i,e);t&&(yield t),o&&n.push(o),s&&n.pop(),i=r.next()}}handleLog(t,e,r){return t.stack.length>0&&t.program()===this.programId.toString()?this.handleProgramLog(e,r):[null,...this.handleSystemLog(e)]}handleProgramLog(t,e){if(t.startsWith(nv)||t.startsWith(iv)){const r=t.startsWith(nv)?t.slice(13):t.slice(14),n=this.coder.events.decode(r);if(e&&null===n)throw new Error(`Unable to decode event ${r}`);return[n,null,!1]}return[null,...this.handleSystemLog(t)]}handleSystemLog(t){const e=t.split(":")[0];return null!==e.match(/^Program (.*) success/g)?[null,!0]:e.startsWith(`Program ${this.programId.toString()} invoke`)?[this.programId.toString(),!1]:e.includes("invoke")?["cpi",!1]:[null,!1]}}class av{constructor(){this.stack=[]}program(){if(!this.stack.length)throw new Error("Expected the stack to have elements");return this.stack[this.stack.length-1]}push(t){this.stack.push(t)}pop(){if(!this.stack.length)throw new Error("Expected the stack to have elements");this.stack.pop()}}class uv{constructor(t){this.logs=t}next(){if(0===this.logs.length)return null;let t=this.logs[0];return this.logs=this.logs.slice(1),t}}class cv{static build(t,e,r,n,i,o,s){return async(...a)=>{var u;const c=e(...a),[,h]=Yb(t,[...a]);let l;if(void 0===n.simulate)throw new Error("This function requires 'Provider.simulate' to be implemented.");try{l=await n.simulate(c,h.signers,null===(u=h.options)||void 0===u?void 0:u.commitment)}catch(t){throw Aw(t,r)}if(void 0===l)throw new Error("Unable to simulate transaction");const f=l.logs;if(!f)throw new Error("Simulated logs not found");const d=[];if(s.events){let t=new sv(o,i);for(const e of t.parseLogs(f))d.push(e)}return{events:d,raw:f}}}}function hv(t){return new dv(bb(8),(t=>yv.fromBuffer(t)),(t=>t.toBuffer()),t)}function lv(t){return new dv(bb(32),(t=>new Wo(t)),(t=>t.toBuffer()),t)}function fv(t,e){return new pv(t,e)}class dv extends Xw{constructor(t,e,r,n){super(t.span,n),this.layout=t,this.decoder=e,this.encoder=r}decode(t,e){return this.decoder(this.layout.decode(t,e))}encode(t,e,r){return this.layout.encode(this.encoder(t),e,r)}getSpan(t,e){return this.layout.getSpan(t,e)}}class pv extends Xw{constructor(t,e){super(-1,e),this.layout=t,this.discriminator=yb()}encode(t,e,r=0){return null==t?this.layout.span+this.discriminator.encode(0,e,r):(this.discriminator.encode(1,e,r),this.layout.encode(t,e,r+4)+4)}decode(t,e=0){const r=this.discriminator.decode(t,e);if(0===r)return null;if(1===r)return this.layout.decode(t,e+4);throw new Error("Invalid coption "+this.layout.property)}getSpan(t,e=0){return this.layout.getSpan(t,e+4)+4}}class yv extends ne{toBuffer(){const t=super.toArray().reverse(),e=Buffer.from(t);if(8===e.length)return e;if(e.length>=8)throw new Error("u64 too large");const r=Buffer.alloc(8);return e.copy(r),r}static fromBuffer(t){if(8!==t.length)throw new Error(`Invalid buffer length: ${t.length}`);return new yv([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}const gv=mb([lv("mint"),lv("owner"),hv("amount"),fv(lv(),"delegate"),(t=>{const e=wb((t=>new eb(1,t))("discriminator"),null,"state");return e.addVariant(0,mb([]),"uninitialized"),e.addVariant(1,mb([]),"initialized"),e.addVariant(2,mb([]),"frozen"),e})(),fv(hv(),"isNative"),hv("delegatedAmount"),fv(lv(),"closeAuthority")]);class mv{constructor(t,e,r,n,i,o,s,a){this._accounts=e,this._provider=r,this._programId=n,this._idlIx=i,this._idlTypes=s,this._customResolver=a,this._args=t,this._accountStore=new wv(r,o,this._programId)}args(t){this._args=t}async resolve(){for(await this.resolveConst(this._idlIx.accounts),this._resolveEventCpi(this._idlIx.accounts);await this.resolvePdas(this._idlIx.accounts)+await this.resolveRelations(this._idlIx.accounts)+await this.resolveCustom()>0;);}async resolveCustom(){if(this._customResolver){const{accounts:t,resolved:e}=await this._customResolver({args:this._args,accounts:this._accounts,provider:this._provider,programId:this._programId,idlIx:this._idlIx});return this._accounts=t,e}return 0}resolveOptionalsHelper(t,e){const r={};for(const n of e){const e=n.name,i=t[e];void 0!==i&&(vv(i)?Zb(n)?r[e]=this.resolveOptionalsHelper(i,n.accounts):r[e]=_v(i,!0):null!==i?r[e]=Rm(i):n.isOptional&&(r[e]=this._programId))}return r}resolveOptionals(t){Object.assign(this._accounts,this.resolveOptionalsHelper(t,this._idlIx.accounts))}get(t){const e=t.reduce(((t,e)=>t&&t[e]),this._accounts);if(e&&e.toBase58)return e}set(t,e){let r=this._accounts;t.forEach(((n,i)=>{i==t.length-1&&(r[n]=e),r[n]=r[n]||{},r=r[n]}))}async resolveConst(t,e=[]){for(let r=0;r<t.length;r+=1){const n=t[r],i=n.accounts;i&&await this.resolveConst(i,[...e,vd(n.name)]);const o=n,s=vd(n.name);if(o.isSigner&&!this.get([...e,s])){if(void 0===this._provider.wallet)throw new Error("This function requires the Provider interface implementor to have a 'wallet' field.");this.set([...e,s],this._provider.wallet.publicKey)}Reflect.has(mv.CONST_ACCOUNTS,s)&&!this.get([...e,s])&&this.set([...e,s],mv.CONST_ACCOUNTS[s])}}_resolveEventCpi(t,e=[]){for(const r in t){const n=t[r],i=n.accounts;i&&this._resolveEventCpi(i,[...e,vd(n.name)]);const o=+r+1;if(o===t.length)return;const s=vd(t[r].name),a=vd(t[o].name);if("eventAuthority"===s&&"program"===a){const t=[...e,s],r=[...e,a];return this.get(t)||this.set(t,Wo.findProgramAddressSync([Buffer.from("__event_authority")],this._programId)[0]),void(this.get(r)||this.set(r,this._programId))}}}async resolvePdas(t,e=[]){let r=0;for(let n=0;n<t.length;n+=1){const i=t[n],o=i.accounts;o&&(r+=await this.resolvePdas(o,[...e,vd(i.name)]));const s=i,a=vd(i.name);s.pda&&s.pda.seeds.length>0&&!this.get([...e,a])&&Boolean(await this.autoPopulatePda(s,e))&&(r+=1)}return r}async resolveRelations(t,e=[]){let r=0;for(let n=0;n<t.length;n+=1){const i=t[n],o=i.accounts;o&&(r+=await this.resolveRelations(o,[...e,vd(i.name)]));const s=i.relations||[],a=vd(i.name),u=[...e,a],c=this.get(u);if(c){const t=s.filter((t=>!this.get([...e,vd(t)])));if(r+=t.length,t.length>0){const r=await this._accountStore.fetchAccount({publicKey:c});await Promise.all(t.map((async t=>{const n=vd(t);return this.set([...e,n],r[n]),r[n]})))}}}return r}async autoPopulatePda(t,e=[]){if(!t.pda||!t.pda.seeds)throw new Error("Must have seeds");const r=await Promise.all(t.pda.seeds.map((t=>this.toBuffer(t,e))));if(r.some((t=>void 0===t)))return;const n=await this.parseProgramId(t,e);if(!n)return;const[i]=await Wo.findProgramAddress(r,n);this.set([...e,vd(t.name)],i)}async parseProgramId(t,e=[]){var r;if(!(null===(r=t.pda)||void 0===r?void 0:r.programId))return this._programId;switch(t.pda.programId.kind){case"const":return new Wo(this.toBufferConst(t.pda.programId.value));case"arg":return this.argValue(t.pda.programId);case"account":return await this.accountValue(t.pda.programId,e);default:throw new Error(`Unexpected program seed kind: ${t.pda.programId.kind}`)}}async toBuffer(t,e=[]){switch(t.kind){case"const":return this.toBufferConst(t);case"arg":return await this.toBufferArg(t);case"account":return await this.toBufferAccount(t,e);default:throw new Error(`Unexpected seed kind: ${t.kind}`)}}getType(t,e=[]){if(e.length>0&&t.defined){const r=this._idlTypes.find((e=>e.name===t.defined));if(!r)throw new Error(`Cannot find type ${t.defined}`);const n=r.type.fields.find((t=>t.name===e[0]));return this.getType(n.type,e.slice(1))}return t}toBufferConst(t){return this.toBufferValue(this.getType(t.type,(t.path||"").split(".").slice(1)),t.value)}async toBufferArg(t){const e=this.argValue(t);if(void 0!==e)return this.toBufferValue(this.getType(t.type,(t.path||"").split(".").slice(1)),e)}argValue(t){const e=t.path.split("."),r=vd(e[0]),n=this._idlIx.args.findIndex((t=>t.name===r));if(-1===n)throw new Error(`Unable to find argument for seed: ${r}`);return e.slice(1).reduce(((t,e)=>(t||{})[e]),this._args[n])}async toBufferAccount(t,e=[]){const r=await this.accountValue(t,e);if(r)return this.toBufferValue(t.type,r)}async accountValue(t,e=[]){const r=t.path.split("."),n=r[0],i=this.get([...e,vd(n)]);if(null===i)throw new Error("fieldPubkey is null");if(1===r.length)return i;const o=await this._accountStore.fetchAccount({publicKey:i,name:t.account});return this.parseAccountValue(o,r.slice(1))}parseAccountValue(t,e){let r;for(;e.length>0;)r=t[vd(e[0])],e=e.slice(1);return r}toBufferValue(t,e){switch(t){case"u8":return Buffer.from([e]);case"u16":let r=Buffer.alloc(2);return r.writeUInt16LE(e),r;case"u32":let n=Buffer.alloc(4);return n.writeUInt32LE(e),n;case"u64":let i=Buffer.alloc(8);return i.writeBigUInt64LE(BigInt(e)),i;case"string":return Buffer.from(Sm(e));case"publicKey":return e.toBuffer();default:if(t.array)return Buffer.from(e);throw new Error(`Unexpected seed type: ${t}`)}}}mv.CONST_ACCOUNTS={associatedTokenProgram:Db,rent:ms,systemProgram:Ts.programId,tokenProgram:zb,clock:ds};class wv{constructor(t,e,r){this._provider=t,this._programId=r,this._cache=new Map,this._idls={},this._idls[r.toBase58()]=e}async ensureIdl(t){if(!this._idls[t.toBase58()]){const e=await Av.fetchIdl(t,this._provider);if(e){const r=new Av(e,t,this._provider);this._idls[t.toBase58()]=r.account}}return this._idls[t.toBase58()]}async fetchAccount({publicKey:t,name:e,programId:r=this._programId}){const n=t.toString();if(!this._cache.has(n))if("TokenAccount"===e){const e=await this._provider.connection.getAccountInfo(t);if(null===e)throw new Error(`invalid account info for ${n}`);const r=function(t){return gv.decode(t)}(e.data);this._cache.set(n,r)}else if(e){const i=await this.ensureIdl(r);if(i){const r=i[vd(e)];if(r){const e=await r.fetch(t);this._cache.set(n,e)}}}else{const e=await this._provider.connection.getAccountInfo(t);if(null===e)throw new Error(`invalid account info for ${n}`);const r=e.data,i=await this.ensureIdl(e.owner);if(i){const t=Object.values(i)[0];if(!t)throw new Error("No accounts for this program");const e=t.coder.accounts.decodeAny(r);this._cache.set(n,e)}}return this._cache.get(n)}}class bv{static build(t,e,r,n,i,o,s,a,u,c,h){return(...l)=>new kv(l,n,i,o,s,a,t,e,r,u,c,h)}}function vv(t){return"object"==typeof t&&null!==t&&!("_bn"in t)}function _v(t,e){const r={};for(const n in t){const i=t[n];if(null!==i)r[n]=vv(i)?_v(i,!0):Rm(i);else if(e)throw new Error("Failed to resolve optionals due to IDL type mismatch with input accounts!")}return r}class kv{constructor(t,e,r,n,i,o,s,a,u,c,h,l){this._ixFn=e,this._txFn=r,this._rpcFn=n,this._simulateFn=i,this._viewFn=o,this._programId=a,this._accounts={},this._remainingAccounts=[],this._signers=[],this._preInstructions=[],this._postInstructions=[],this._autoResolveAccounts=!0,this._args=t,this._accountsResolver=new mv(t,this._accounts,s,a,u,c,h,l)}args(t){this._args=t,this._accountsResolver.args(t)}async pubkeys(){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._accounts}accounts(t){return this._autoResolveAccounts=!0,this._accountsResolver.resolveOptionals(t),this}accountsStrict(t){return this._autoResolveAccounts=!1,this._accountsResolver.resolveOptionals(t),this}signers(t){return this._signers=this._signers.concat(t),this}remainingAccounts(t){return this._remainingAccounts=this._remainingAccounts.concat(t),this}preInstructions(t){return this._preInstructions=this._preInstructions.concat(t),this}postInstructions(t){return this._postInstructions=this._postInstructions.concat(t),this}async rpc(t){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._rpcFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions,options:t})}async rpcAndKeys(t){return{pubkeys:await this.pubkeys(),signature:await this.rpc(t)}}async view(t){if(this._autoResolveAccounts&&await this._accountsResolver.resolve(),!this._viewFn)throw new Error("Method does not support views");return this._viewFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions,options:t})}async simulate(t){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._simulateFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions,options:t})}async instruction(){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._ixFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions})}async prepare(){return{instruction:await this.instruction(),pubkeys:await this.pubkeys(),signers:await this._signers}}async transaction(){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._txFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions})}}class Ev{static build(t,e,r,n){const i=e.accounts.find((t=>t.isMut)),o=!!e.returns;if(i||!o)return;return async(...i)=>{var o,s;let a=await r(...i);const u=`Program return: ${t} `;let c=a.raw.find((t=>t.startsWith(u)));if(!c)throw new Error("View expected return log");let h=Bm(c.slice(u.length)),l=e.returns;if(!l)throw new Error("View expected return type");return Uw.fieldLayout({type:l},Array.from([...null!==(o=n.accounts)&&void 0!==o?o:[],...null!==(s=n.types)&&void 0!==s?s:[]])).decode(h)}}}class Sv{static build(t,e,r,n,i){const o={},s={},a={},u={},c={},h={},l=Lm(t),f=t.accounts?tv.build(t,e,r,n):{};return t.instructions.forEach((d=>{const p=Jb.build(d,((t,r)=>e.instruction.encode(t,r)),r),y=Xb.build(d,p),g=Qb.build(d,y,l,n),m=cv.build(d,y,l,n,e,r,t),w=Ev.build(r,d,m,t),b=bv.build(n,r,d,p,y,g,m,w,f,t.types||[],i&&i(d)),v=vd(d.name);s[v]=p,a[v]=y,o[v]=g,u[v]=m,c[v]=b,w&&(h[v]=w)})),[o,s,a,f,u,c,h]}}class Av{get programId(){return this._programId}get idl(){return this._idl}get coder(){return this._coder}get provider(){return this._provider}constructor(t,e,r,n,i){e=Rm(e),r||(r=yw()),this._idl=t,this._provider=r,this._programId=e,this._coder=null!=n?n:new Zw(t),this._events=new ov(this._programId,r,this._coder);const[o,s,a,u,c,h,l]=Sv.build(t,this._coder,e,r,null!=i?i:()=>{});this.rpc=o,this.instruction=s,this.transaction=a,this.account=u,this.simulate=c,this.methods=h,this.views=l}static async at(t,e){const r=Rm(t),n=await Av.fetchIdl(r,e);if(!n)throw new Error(`IDL not found for program: ${t.toString()}`);return new Av(n,r,e)}static async fetchIdl(t,e){e=null!=e?e:yw();const r=Rm(t),n=await async function(t){const e=(await Wo.findProgramAddress([],t))[0];return await Wo.createWithSeed(e,"anchor:idl",t)}(r),i=await e.connection.getAccountInfo(n);if(!i)return null;let o=function(t){return Gb.decode(t)}(i.data.slice(8));const s=bm(o.data);return JSON.parse(Em(s))}addEventListener(t,e){return this._events.addEventListener(t,e)}async removeEventListener(t){return await this._events.removeEventListener(t)}}const xv=new Wo("11111111111111111111111111111111");function Iv(t){return new Av(Bv,xv,t,new Rb(Bv))}const Bv={version:"0.1.0",name:"system_program",instructions:[{name:"createAccount",accounts:[{name:"from",isMut:!0,isSigner:!0},{name:"to",isMut:!0,isSigner:!0}],args:[{name:"lamports",type:"u64"},{name:"space",type:"u64"},{name:"owner",type:"publicKey"}]},{name:"assign",accounts:[{name:"pubkey",isMut:!0,isSigner:!0}],args:[{name:"owner",type:"publicKey"}]},{name:"transfer",accounts:[{name:"from",isMut:!0,isSigner:!0},{name:"to",isMut:!0,isSigner:!1}],args:[{name:"lamports",type:"u64"}]},{name:"createAccountWithSeed",accounts:[{name:"from",isMut:!0,isSigner:!0},{name:"to",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0}],args:[{name:"base",type:"publicKey"},{name:"seed",type:"string"},{name:"lamports",type:"u64"},{name:"space",type:"u64"},{name:"owner",type:"publicKey"}]},{name:"advanceNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!1},{name:"recentBlockhashes",isMut:!1,isSigner:!1},{name:"authorized",isMut:!1,isSigner:!0}],args:[{name:"authorized",type:"publicKey"}]},{name:"withdrawNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!1},{name:"to",isMut:!0,isSigner:!1},{name:"recentBlockhashes",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"authorized",isMut:!1,isSigner:!0}],args:[{name:"lamports",type:"u64"}]},{name:"initializeNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!0},{name:"recentBlockhashes",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1}],args:[{name:"authorized",type:"publicKey"}]},{name:"authorizeNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!1},{name:"authorized",isMut:!1,isSigner:!0}],args:[{name:"authorized",type:"publicKey"}]},{name:"allocate",accounts:[{name:"pubkey",isMut:!0,isSigner:!0}],args:[{name:"space",type:"u64"}]},{name:"allocateWithSeed",accounts:[{name:"account",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0}],args:[{name:"base",type:"publicKey"},{name:"seed",type:"string"},{name:"space",type:"u64"},{name:"owner",type:"publicKey"}]},{name:"assignWithSeed",accounts:[{name:"account",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0}],args:[{name:"base",type:"publicKey"},{name:"seed",type:"string"},{name:"owner",type:"publicKey"}]},{name:"transferWithSeed",accounts:[{name:"from",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0},{name:"to",isMut:!0,isSigner:!1}],args:[{name:"lamports",type:"u64"},{name:"seed",type:"string"},{name:"owner",type:"publicKey"}]}],accounts:[{name:"nonce",type:{kind:"struct",fields:[{name:"version",type:"u32"},{name:"state",type:"u32"},{name:"authorizedPubkey",type:"publicKey"},{name:"nonce",type:"publicKey"},{name:"feeCalculator",type:{defined:"FeeCalculator"}}]}}],types:[{name:"FeeCalculator",type:{kind:"struct",fields:[{name:"lamportsPerSignature",type:"u64"}]}}]};var Mv,Pv=r(Object.freeze({__proto__:null,web3:pc,AccountClient:ev,AnchorError:Ew,AnchorProvider:lw,BorshAccountsCoder:qw,BorshCoder:Zw,BorshEventCoder:Vw,BorshInstructionCoder:Nw,DISCRIMINATOR_SIZE:Fw,EventManager:ov,EventParser:sv,IdlError:_w,LangErrorCode:xw,LangErrorMessage:Iw,MethodsBuilderFactory:bv,Native:class{static system(t){return Iv(t)}},Program:Av,ProgramError:Sw,ProgramErrorStack:kw,SystemCoder:Rb,eventDiscriminator:Hw,getProvider:yw,parseIdlErrors:Lm,setProvider:function(t){gw=t},splitArgsAndCtx:Yb,toInstruction:Om,translateAddress:Rm,translateError:Aw,utils:$b,validateAccounts:Tm,BN:ne})),Lv={},Ov={};var Tv,Rv={};function Uv(){if(Tv)return Rv;Tv=1;var e=t&&t.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){t.done?i(t.value):function(t){return t instanceof r?t:new r((function(e){e(t)}))}(t.value).then(s,a)}u((n=n.apply(t,e||[])).next())}))},r=t&&t.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};Object.defineProperty(Rv,"__esModule",{value:!0}),Rv.PythOracleAccountCoder=void 0;var n=function(){function t(t){this.idl=t}return t.prototype.encode=function(t,n){return e(this,void 0,void 0,(function(){return r(this,(function(t){throw new Error("Not implemented")}))}))},t.prototype.decode=function(t,e){throw new Error("Not implemented")},t.prototype.decodeUnchecked=function(t,e){throw new Error("Not implemented")},t.prototype.memcmp=function(t,e){throw new Error("Not implemented")},t.prototype.size=function(t){return 0},t}();return Rv.PythOracleAccountCoder=n,Rv}var Cv={};var Nv=function(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r<e.length;r++)e[r]=255;for(var n=0;n<t.length;n++){var i=t.charAt(n),o=i.charCodeAt(0);if(255!==e[o])throw new TypeError(i+" is ambiguous");e[o]=n}var s=t.length,a=t.charAt(0),u=Math.log(s)/Math.log(256),c=Math.log(256)/Math.log(s);function h(t){if("string"!=typeof t)throw new TypeError("Expected String");if(0===t.length)return new Uint8Array;for(var r=0,n=0,i=0;t[r]===a;)n++,r++;for(var o=(t.length-r)*u+1>>>0,c=new Uint8Array(o);t[r];){var h=e[t.charCodeAt(r)];if(255===h)return;for(var l=0,f=o-1;(0!==h||l<i)&&-1!==f;f--,l++)h+=s*c[f]>>>0,c[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");i=l,r++}for(var d=o-i;d!==o&&0===c[d];)d++;for(var p=new Uint8Array(n+(o-d)),y=n;d!==o;)p[y++]=c[d++];return p}return{encode:function(e){if(e instanceof Uint8Array||(ArrayBuffer.isView(e)?e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength):Array.isArray(e)&&(e=Uint8Array.from(e))),!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===e.length)return"";for(var r=0,n=0,i=0,o=e.length;i!==o&&0===e[i];)i++,r++;for(var u=(o-i)*c+1>>>0,h=new Uint8Array(u);i!==o;){for(var l=e[i],f=0,d=u-1;(0!==l||f<n)&&-1!==d;d--,f++)l+=256*h[d]>>>0,h[d]=l%s>>>0,l=l/s>>>0;if(0!==l)throw new Error("Non-zero carry");n=f,i++}for(var p=u-n;p!==u&&0===h[p];)p++;for(var y=a.repeat(r);p<u;++p)y+=t.charAt(h[p]);return y},decodeUnsafe:h,decode:function(t){var e=h(t);if(e)return e;throw new Error("Non-base"+s+" character")}}};var zv,Dv,jv=Nv("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),Wv=e(jv),Fv={};function Kv(){if(Dv)return Cv;Dv=1;var e=t&&t.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),r=t&&t.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),i=t&&t.__importStar||function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var i in t)"default"!==i&&Object.prototype.hasOwnProperty.call(t,i)&&e(n,t,i);return r(n,t),n},o=t&&t.__spreadArray||function(t,e){for(var r=0,n=e.length,i=t.length;r<n;r++,i++)t[i]=e[r];return t},s=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Cv,"__esModule",{value:!0}),Cv.PythOracleInstructionCoder=void 0;var a=s(jv),u=n,c=s(bd()),h=i(_d),l=function(){if(zv)return Fv;zv=1;var e=t&&t.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),r=t&&t.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),n=t&&t.__importStar||function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var i in t)"default"!==i&&Object.prototype.hasOwnProperty.call(t,i)&&e(n,t,i);return r(n,t),n},i=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fv,"__esModule",{value:!0}),Fv.IdlCoder=void 0;var o=i(bd()),s=n(_d),a=Pv,u=function(){function t(){}return t.fieldLayout=function(e,r){var n=void 0!==e.name?o.default(e.name):void 0;switch(e.type){case"bool":return s.bool(n);case"u8":return s.u8(n);case"i8":return s.i8(n);case"u16":return s.u16(n);case"i16":return s.i16(n);case"u32":return s.u32(n);case"i32":return s.i32(n);case"f32":return s.f32(n);case"u64":return s.u64(n);case"i64":return s.i64(n);case"f64":return s.f64(n);case"u128":return s.u128(n);case"i128":return s.i128(n);case"u256":return s.u256(n);case"i256":return s.i256(n);case"bytes":return s.vecU8(n);case"string":return s.str(n);case"publicKey":return s.publicKey(n);default:if("vec"in e.type)return s.vec(t.fieldLayout({name:void 0,type:e.type.vec},r),n);if("option"in e.type)return s.option(t.fieldLayout({name:void 0,type:e.type.option},r),n);if("defined"in e.type){var i=e.type.defined;if(void 0===r)throw new a.IdlError("User defined types not provided");var u=r.filter((function(t){return t.name===i}));if(1!==u.length)throw new a.IdlError("Type not found: "+JSON.stringify(e));return t.typeDefLayout(u[0],r,n)}if("array"in e.type){var c=e.type.array[0],h=e.type.array[1],l=t.fieldLayout({name:void 0,type:c},r);return s.array(l,h,n)}throw new Error("Not yet implemented: "+e)}},t.typeDefLayout=function(e,r,n){if(void 0===r&&(r=[]),"struct"===e.type.kind){var i=e.type.fields.map((function(e){return t.fieldLayout(e,r)}));return s.struct(i,n)}if("enum"===e.type.kind){var a=e.type.variants.map((function(e){var n=o.default(e.name);if(void 0===e.fields)return s.struct([],n);var i=e.fields.map((function(e,n){return e.hasOwnProperty("name")?t.fieldLayout(e,r):t.fieldLayout({type:e,name:n.toString()},r)}));return s.struct(i,n)}));return void 0!==n?s.rustEnum(a).replicate(n):s.rustEnum(a,n)}throw new Error("Unknown type kint: "+e)},t}();return Fv.IdlCoder=u,Fv}(),f=function(){function t(e){var r=this;this.idl=e,this.ixLayout=t.parseIxLayout(e);var n=new Map,i=new Map;e.instructions.forEach((function(t){var e,o=t;if(!o.discriminant)throw new Error("All instructions must have a discriminator");if(n.set(a.default.encode(u.Buffer.from(o.discriminant.value)),{layout:r.ixLayout.get(o.name),name:o.name}),i.set(o.name,u.Buffer.from(o.discriminant.value)),e=o.discriminant.value.length,r.discriminatorLength&&r.discriminatorLength!==e)throw new Error("All instructions must have the same discriminator length");r.discriminatorLength=e})),this.discriminatorLayouts=n,this.ixDiscriminator=i}return t.prototype.encodeState=function(t,e){return this.encode(t,e)},t.prototype.encode=function(t,e){var r=u.Buffer.alloc(1e3),n=c.default(t),i=this.ixLayout.get(n),o=this.ixDiscriminator.get(n);if(!i||!o)throw new Error("Unknown method: "+n);if("updProduct"===n||"addProduct"===n){for(var s=0,a=0,h=Object.keys(e.productMetadata);a<h.length;a++){var l=h[a];s+=r.subarray(s).writeInt8(l.length),s+=r.subarray(s).write(l),s+=r.subarray(s).writeInt8(e.productMetadata[l].length),s+=r.subarray(s).write(e.productMetadata[l])}if(s>464)throw new Error("The metadata is too long");var f=r.subarray(0,s);return u.Buffer.concat([o,f])}var d=i.encode(e,r);f=r.subarray(0,d);return u.Buffer.concat([o,f])},t.parseIxLayout=function(t){var e=t.instructions.map((function(e){var r=e.args.map((function(e){var r,n;return l.IdlCoder.fieldLayout(e,Array.from(o(o([],null!==(r=t.accounts)&&void 0!==r?r:[]),null!==(n=t.types)&&void 0!==n?n:[])))})),n=c.default(e.name);return[n,h.struct(r,n)]}));return new Map(e)},t.prototype.decode=function(t,e){void 0===e&&(e="hex"),"string"==typeof t&&(t="hex"===e?u.Buffer.from(t,"hex"):u.Buffer.from(a.default.decode(t)));var r=a.default.encode(t.subarray(0,this.discriminatorLength)),n=t.subarray(this.discriminatorLength),i=this.discriminatorLayouts.get(r);if(!i)return null;if("updProduct"===i.name||"addProduct"===i.name){for(var o={},s=0;s<n.length;){var c=n[s];if(s++,c){var h=n.slice(s,s+c).toString(),l=n[s+=c];s++;var f=n.slice(s,s+l).toString();s+=l,o[h]=f}}return{data:o,name:i.name}}return{data:i.layout.decode(n),name:i.name}},t}();return Cv.PythOracleInstructionCoder=f,Cv}var qv,Vv={};var Hv,$v,Zv={};function Gv(){if($v)return Lv;$v=1,Object.defineProperty(Lv,"__esModule",{value:!0}),Lv.PythOracleCoder=void 0;var t=function(){if(Mv)return Ov;Mv=1,Object.defineProperty(Ov,"__esModule",{value:!0}),Ov.PythOracleEventCoder=void 0;var t=function(){function t(){}return t.prototype.decode=function(t){throw new Error("Pyth oracle program does not have events")},t}();return Ov.PythOracleEventCoder=t,Ov}(),e=Uv(),r=Kv(),n=function(){if(qv)return Vv;qv=1,Object.defineProperty(Vv,"__esModule",{value:!0}),Vv.PythOracleStateCoder=void 0;var t=function(){function t(){}return t.prototype.encode=function(t,e){throw new Error("Not implemented")},t.prototype.decode=function(t){throw new Error("Not implemented")},t}();return Vv.PythOracleStateCoder=t,Vv}(),i=function(){if(Hv)return Zv;Hv=1,Object.defineProperty(Zv,"__esModule",{value:!0}),Zv.PythOracleTypesCoder=void 0;var t=function(){function t(){}return t.prototype.encode=function(t,e){throw new Error("Not implemented")},t.prototype.decode=function(t,e){throw new Error("Not implemented")},t}();return Zv.PythOracleTypesCoder=t,Zv}(),o=function(o){this.accounts=new e.PythOracleAccountCoder(o),this.events=new t.PythOracleEventCoder,this.instruction=new r.PythOracleInstructionCoder(o),this.state=new n.PythOracleStateCoder,this.types=new i.PythOracleTypesCoder};return Lv.PythOracleCoder=o,Lv}var Yv,Jv,Xv,Qv={version:"2.20.0",name:"pyth_oracle",instructions:[{name:"initMapping",discriminant:{value:[2,0,0,0,0,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"freshMappingAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"addMapping",discriminant:{value:[2,0,0,0,1,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"curMapping",isMut:!0,isSigner:!1},{name:"nextMapping",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"addProduct",discriminant:{value:[2,0,0,0,2,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"tailMappingAccount",isMut:!0,isSigner:!1},{name:"productAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"productMetadata",type:{defined:"ProductMetadata"}}]},{name:"updProduct",discriminant:{value:[2,0,0,0,3,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"productAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"productMetadata",type:{defined:"ProductMetadata"}}]},{name:"addPrice",discriminant:{value:[2,0,0,0,4,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"productAccount",isMut:!0,isSigner:!1},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"expo",type:"i32"},{name:"pType",type:"u32"}]},{name:"addPublisher",discriminant:{value:[2,0,0,0,5,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"pub",type:"publicKey"}]},{name:"delPublisher",discriminant:{value:[2,0,0,0,6,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"pub",type:"publicKey"}]},{name:"updPrice",discriminant:{value:[2,0,0,0,7,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1}],args:[{name:"status",type:"u32"},{name:"unused",type:"u32"},{name:"price",type:"i64"},{name:"conf",type:"u64"},{name:"pubSlot",type:"u64"}]},{name:"aggPrice",discriminant:{value:[2,0,0,0,8,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1}],args:[{name:"status",type:"u32"},{name:"unused",type:"u32"},{name:"price",type:"i64"},{name:"conf",type:"u64"},{name:"pubSlot",type:"u64"}]},{name:"setExponent",discriminant:{value:[2,0,0,0,9,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"expo",type:"i32"},{name:"pType",type:"u32"}]},{name:"setMinPub",discriminant:{value:[2,0,0,0,12,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"minPub",type:"u8"},{name:"unused",type:{array:["u8",3]}}]},{name:"updPriceNoFailOnError",discriminant:{value:[2,0,0,0,13,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1}],args:[{name:"status",type:"u32"},{name:"unused",type:"u32"},{name:"price",type:"i64"},{name:"conf",type:"u64"},{name:"pubSlot",type:"u64"}]},{name:"delPrice",discriminant:{value:[2,0,0,0,15,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"productAccount",isMut:!0,isSigner:!1},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"delProduct",discriminant:{value:[2,0,0,0,16,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"mappingAccount",isMut:!0,isSigner:!1},{name:"productAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"updPermissions",discriminant:{value:[2,0,0,0,17,0,0,0]},accounts:[{name:"upgradeAuthority",isMut:!0,isSigner:!0},{name:"programDataAccount",isMut:!1,isSigner:!1},{name:"permissionsAccount",isMut:!0,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"masterAuthority",type:"publicKey"},{name:"dataCurationAuthority",type:"publicKey"},{name:"securityAuthority",type:"publicKey"}]}],types:[{name:"ProductMetadata",type:{kind:"struct",fields:[]}}]};function t_(){return Jv||(Jv=1,function(e){var r=t&&t.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),n=t&&t.__exportStar||function(t,e){for(var n in t)"default"===n||Object.prototype.hasOwnProperty.call(e,n)||r(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),n((Yv||(Yv=1,function(e){var r=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.pythIdl=e.pythOracleCoder=e.pythOracleProgram=void 0;var n=Pv,i=Gv(),o=r(Qv);e.pythOracleProgram=function(t,e){return new n.Program(o.default,t,e,new i.PythOracleCoder(o.default))},e.pythOracleCoder=function(){return new i.PythOracleCoder(o.default)};var s=Qv;Object.defineProperty(e,"pythIdl",{enumerable:!0,get:function(){return r(s).default}})}(gd)),gd),e)}(yd)),yd}function e_(){return Xv||(Xv=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.pythIdl=t.pythOracleCoder=t.pythOracleProgram=t.getPythClusterApiUrl=t.getPythProgramKeyForCluster=t.PythHttpClient=t.PythConnection=t.parsePermissionData=t.parsePriceData=t.parseProductData=t.parseMappingData=t.parseBaseData=t.AccountType=t.DeriveType=t.PriceType=t.CorpAction=t.PriceStatus=t.MAX_SLOT_DIFFERENCE=t.Version=t.Version2=t.Magic=void 0;var e,r,i,o,s=Qf,a=n,u=td;t.Magic=2712847316,t.Version2=2,t.Version=t.Version2,t.MAX_SLOT_DIFFERENCE=25,function(t){t[t.Unknown=0]="Unknown",t[t.Trading=1]="Trading",t[t.Halted=2]="Halted",t[t.Auction=3]="Auction",t[t.Ignored=4]="Ignored"}(e=t.PriceStatus||(t.PriceStatus={})),(r=t.CorpAction||(t.CorpAction={}))[r.NoCorpAct=0]="NoCorpAct",(i=t.PriceType||(t.PriceType={}))[i.Unknown=0]="Unknown",i[i.Price=1]="Price",(o=t.DeriveType||(t.DeriveType={}))[o.Unknown=0]="Unknown",o[o.Volatility=1]="Volatility",function(t){t[t.Unknown=0]="Unknown",t[t.Mapping=1]="Mapping",t[t.Product=2]="Product",t[t.Price=3]="Price",t[t.Test=4]="Test",t[t.Permission=5]="Permission"}(t.AccountType||(t.AccountType={}));var c=a.Buffer.alloc(32),h=function(t){return t.equals(c)?null:new s.PublicKey(t)};t.parseBaseData=function(e){if(!(e.byteLength<4)){var r=e.readUInt32LE(0);return r===t.Magic?{magic:r,version:e.readUInt32LE(4),type:e.readUInt32LE(8),size:e.readUInt32LE(12)}:void 0}};t.parseMappingData=function(t){for(var e=t.readUInt32LE(0),r=t.readUInt32LE(4),n=t.readUInt32LE(8),i=t.readUInt32LE(12),o=t.readUInt32LE(16),a=h(t.slice(24,56)),u=56,c=[],l=0;l<o;l++){var f=t.slice(u,u+32),d=new s.PublicKey(f);u+=32,c.push(d)}return{magic:e,version:r,type:n,size:i,nextMappingAccount:a,productAccountKeys:c}};t.parseProductData=function(t){var e=t.readUInt32LE(0),r=t.readUInt32LE(4),n=t.readUInt32LE(8),i=t.readUInt32LE(12),o=t.slice(16,48),s=h(o),a={};s&&(a.price_account=s.toBase58());for(var u=48;u<i;){var c=t[u];if(u++,c){var l=t.slice(u,u+c).toString(),f=t[u+=c];u++;var d=t.slice(u,u+f).toString();u+=f,a[l]=d}}return{magic:e,version:r,type:n,size:i,priceAccountKey:s,product:a}};var l=function(t,e){var r=u.readBigInt64LE(t,0);return{valueComponent:r,value:Number(r)*Math.pow(10,e),numerator:u.readBigInt64LE(t,8),denominator:u.readBigInt64LE(t,16)}},f=function(t,e){var r=u.readBigInt64LE(t,0),n=Number(r)*Math.pow(10,e),i=u.readBigUInt64LE(t,8);return{priceComponent:r,price:n,confidenceComponent:i,confidence:Number(i)*Math.pow(10,e),status:t.readUInt32LE(16),corporateAction:t.readUInt32LE(20),publishSlot:Number(u.readBigUInt64LE(t,24))}};t.parsePriceData=function(r,n){var i,o,a=r.readUInt32LE(0),c=r.readUInt32LE(4),d=r.readUInt32LE(8),p=r.readUInt32LE(12),y=r.readUInt32LE(16),g=r.readInt32LE(20),m=r.readUInt32LE(24),w=r.readUInt32LE(28),b=u.readBigUInt64LE(r,32),v=u.readBigUInt64LE(r,40),_=l(r.slice(48,72),g),k=l(r.slice(72,96),g),E=u.readBigInt64LE(r,96),S=r.readUInt8(104),A=r.readInt8(105),x=r.readInt16LE(106),I=r.readInt32LE(108),B=new s.PublicKey(r.slice(112,144)),M=h(r.slice(144,176)),P=u.readBigUInt64LE(r,176),L=u.readBigInt64LE(r,184),O=Number(L)*Math.pow(10,g),T=u.readBigUInt64LE(r,192),R=Number(T)*Math.pow(10,g),U=u.readBigInt64LE(r,200),C=f(r.slice(208,240),g),N=C.status;n&&N===e.Trading&&n-C.publishSlot>t.MAX_SLOT_DIFFERENCE&&(N=e.Unknown),N===e.Trading&&(i=C.price,o=C.confidence);for(var z=[],D=240;z.length<m;){var j=new s.PublicKey(r.slice(D,D+32));D+=32;var W=f(r.slice(D,D+32),g);D+=32;var F=f(r.slice(D,D+32),g);D+=32,z.push({publisher:j,aggregate:W,latest:F})}return{magic:a,version:c,type:d,size:p,priceType:y,exponent:g,numComponentPrices:m,numQuoters:w,lastSlot:b,validSlot:v,emaPrice:_,emaConfidence:k,timestamp:E,minPublishers:S,drv2:A,drv3:x,drv4:I,productAccountKey:B,nextPriceAccountKey:M,previousSlot:P,previousPriceComponent:L,previousPrice:O,previousConfidenceComponent:T,previousConfidence:R,previousTimestamp:U,aggregate:C,priceComponents:z,price:i,confidence:o,status:N}};t.parsePermissionData=function(t){return{magic:t.readUInt32LE(0),version:t.readUInt32LE(4),type:t.readUInt32LE(8),size:t.readUInt32LE(12),masterAuthority:new s.PublicKey(t.slice(16,48)),dataCurationAuthority:new s.PublicKey(t.slice(48,80)),securityAuthority:new s.PublicKey(t.slice(80,112))}};var d=ud();Object.defineProperty(t,"PythConnection",{enumerable:!0,get:function(){return d.PythConnection}});var p=ld();Object.defineProperty(t,"PythHttpClient",{enumerable:!0,get:function(){return p.PythHttpClient}});var y=function(){if(fd)return dd;fd=1,Object.defineProperty(dd,"__esModule",{value:!0}),dd.getPythClusterApiUrl=dd.getPythProgramKeyForCluster=void 0;var t=Qf,e={"mainnet-beta":"FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH",devnet:"gSbePebfvPy7tRqimPoVecS2UsBvYv46ynrzWocc92s","pythtest-crosschain":"gSbePebfvPy7tRqimPoVecS2UsBvYv46ynrzWocc92s",testnet:"8tfDNiaEyrV6Q1U4DEXrEigs9DoDtkugzFbybENEbCDz","pythtest-conformance":"8tfDNiaEyrV6Q1U4DEXrEigs9DoDtkugzFbybENEbCDz",pythnet:"FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH",localnet:"gMYYig2utAxVoXnM9UhtTWrt8e7x2SVBZqsWZJeT5Gw"};return dd.getPythProgramKeyForCluster=function(r){if(void 0!==e[r])return new t.PublicKey(e[r]);throw new Error("Invalid Solana cluster name: "+r+". Valid options are: "+JSON.stringify(Object.keys(e)))},dd.getPythClusterApiUrl=function(e){return"pythtest-conformance"===e||"pythtest-crosschain"===e?"https://api.pythtest.pyth.network":"pythnet"===e?"https://pythnet.rpcpool.com":"localnet"===e?"http://localhost:8899":t.clusterApiUrl(e)},dd}();Object.defineProperty(t,"getPythProgramKeyForCluster",{enumerable:!0,get:function(){return y.getPythProgramKeyForCluster}}),Object.defineProperty(t,"getPythClusterApiUrl",{enumerable:!0,get:function(){return y.getPythClusterApiUrl}});var g=t_();Object.defineProperty(t,"pythOracleProgram",{enumerable:!0,get:function(){return g.pythOracleProgram}}),Object.defineProperty(t,"pythOracleCoder",{enumerable:!0,get:function(){return g.pythOracleCoder}}),Object.defineProperty(t,"pythIdl",{enumerable:!0,get:function(){return g.pythIdl}})}(Xf)),Xf}var r_=e_(),n_="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function i_(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function o_(t){if(t.__esModule)return t;var e=t.default;if("function"==typeof e){var r=function t(){return this instanceof t?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach((function(e){var n=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(r,e,n.get?n:{enumerable:!0,get:function(){return t[e]}})})),r}for(var s_={},a_={byteLength:function(t){var e=d_(t),r=e[0],n=e[1];return 3*(r+n)/4-n},toByteArray:function(t){var e,r,n=d_(t),i=n[0],o=n[1],s=new h_(function(t,e,r){return 3*(e+r)/4-r}(0,i,o)),a=0,u=o>0?i-4:i;for(r=0;r<u;r+=4)e=c_[t.charCodeAt(r)]<<18|c_[t.charCodeAt(r+1)]<<12|c_[t.charCodeAt(r+2)]<<6|c_[t.charCodeAt(r+3)],s[a++]=e>>16&255,s[a++]=e>>8&255,s[a++]=255&e;return 2===o&&(e=c_[t.charCodeAt(r)]<<2|c_[t.charCodeAt(r+1)]>>4,s[a++]=255&e),1===o&&(e=c_[t.charCodeAt(r)]<<10|c_[t.charCodeAt(r+1)]<<4|c_[t.charCodeAt(r+2)]>>2,s[a++]=e>>8&255,s[a++]=255&e),s},fromByteArray:function(t){for(var e,r=t.length,n=r%3,i=[],o=16383,s=0,a=r-n;s<a;s+=o)i.push(p_(t,s,s+o>a?a:s+o));return 1===n?(e=t[r-1],i.push(u_[e>>2]+u_[e<<4&63]+"==")):2===n&&(e=(t[r-2]<<8)+t[r-1],i.push(u_[e>>10]+u_[e>>4&63]+u_[e<<2&63]+"=")),i.join("")}},u_=[],c_=[],h_="undefined"!=typeof Uint8Array?Uint8Array:Array,l_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f_=0;f_<64;++f_)u_[f_]=l_[f_],c_[l_.charCodeAt(f_)]=f_;function d_(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function p_(t,e,r){for(var n,i,o=[],s=e;s<r;s+=3)n=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),o.push(u_[(i=n)>>18&63]+u_[i>>12&63]+u_[i>>6&63]+u_[63&i]);return o.join("")}c_["-".charCodeAt(0)]=62,c_["_".charCodeAt(0)]=63;var y_={};
24
+ const _o=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),ko=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Eo=BigInt(1),So=BigInt(2),Ao=(t,e)=>(t+e/So)/e;const xo=Bt(_o,void 0,void 0,{sqrt:function(t){const e=_o,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),u=BigInt(88),c=t*t*t%e,h=c*c*t%e,l=Et(h,r,e)*h%e,f=Et(l,r,e)*h%e,d=Et(f,So,e)*c%e,p=Et(d,i,e)*d%e,y=Et(p,o,e)*p%e,g=Et(y,a,e)*y%e,m=Et(g,u,e)*g%e,w=Et(m,a,e)*y%e,b=Et(w,r,e)*h%e,v=Et(b,s,e)*p%e,_=Et(v,n,e)*c%e,k=Et(_,So,e);if(!xo.eql(xo.sqr(k),t))throw new Error("Cannot find square root");return k}}),Io=function(t,e){const r=e=>mo({...t,...vo(e)});return Object.freeze({...r(e),create:r})}({a:BigInt(0),b:BigInt(7),Fp:xo,n:ko,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=ko,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Eo*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Ao(o*t,e),u=Ao(-n*t,e);let c=_t(t-a*r-u*i,e),h=_t(-a*n-u*o,e);const l=c>s,f=h>s;if(l&&(c=e-c),f&&(h=e-h),c>s||h>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:c,k2neg:f,k2:h}}}},pe);BigInt(0),Io.ProjectivePoint;const Bo=Xt.utils.randomPrivateKey,Mo=()=>{const t=Xt.utils.randomPrivateKey(),e=Po(t),r=new Uint8Array(64);return r.set(t),r.set(e,32),{publicKey:e,secretKey:r}},Po=Xt.getPublicKey;function Lo(t){try{return Xt.ExtendedPoint.fromHex(t),!0}catch{return!1}}const Oo=(t,e)=>Xt.sign(t,e.slice(0,32)),To=Xt.verify,Ro=t=>n.Buffer.isBuffer(t)?t:t instanceof Uint8Array?n.Buffer.from(t.buffer,t.byteOffset,t.byteLength):n.Buffer.from(t);class Uo{constructor(t){Object.assign(this,t)}encode(){return n.Buffer.from(He(Co,this))}static decode(t){return Ge(Co,this,t)}static decodeUnchecked(t){return Te(Co,this,t)}}const Co=new Map;var No;let zo;const Do=32;let jo=1;zo=Symbol.toStringTag;class Wo extends Uo{constructor(t){if(super({}),this._bn=void 0,function(t){return void 0!==t._bn}(t))this._bn=t._bn;else{if("string"==typeof t){const e=ae.decode(t);if(e.length!=Do)throw new Error("Invalid public key input");this._bn=new ne(e)}else this._bn=new ne(t);if(this._bn.byteLength()>Do)throw new Error("Invalid public key input")}}static unique(){const t=new Wo(jo);return jo+=1,new Wo(t.toBuffer())}equals(t){return this._bn.eq(t._bn)}toBase58(){return ae.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){const t=this.toBuffer();return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}toBuffer(){const t=this._bn.toArrayLike(n.Buffer);if(t.length===Do)return t;const e=n.Buffer.alloc(32);return t.copy(e,32-t.length),e}get[zo](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(t,e,r){const i=n.Buffer.concat([t.toBuffer(),n.Buffer.from(e),r.toBuffer()]),o=pe(i);return new Wo(o)}static createProgramAddressSync(t,e){let r=n.Buffer.alloc(0);t.forEach((function(t){if(t.length>32)throw new TypeError("Max seed length exceeded");r=n.Buffer.concat([r,Ro(t)])})),r=n.Buffer.concat([r,e.toBuffer(),n.Buffer.from("ProgramDerivedAddress")]);const i=pe(r);if(Lo(i))throw new Error("Invalid seeds, address must fall off the curve");return new Wo(i)}static async createProgramAddress(t,e){return this.createProgramAddressSync(t,e)}static findProgramAddressSync(t,e){let r,i=255;for(;0!=i;){try{const o=t.concat(n.Buffer.from([i]));r=this.createProgramAddressSync(o,e)}catch(t){if(t instanceof TypeError)throw t;i--;continue}return[r,i]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(t,e){return this.findProgramAddressSync(t,e)}static isOnCurve(t){return Lo(new Wo(t).toBytes())}}No=Wo,Wo.default=new No("11111111111111111111111111111111"),Co.set(Wo,{kind:"struct",fields:[["_bn","u256"]]});const Fo=new Wo("BPFLoader1111111111111111111111111111111111"),Ko=1232,qo=127,Vo=64;class Ho extends Error{constructor(t){super(`Signature ${t} has expired: block height exceeded.`),this.signature=void 0,this.signature=t}}Object.defineProperty(Ho.prototype,"name",{value:"TransactionExpiredBlockheightExceededError"});class $o extends Error{constructor(t,e){super(`Transaction was not confirmed in ${e.toFixed(2)} seconds. It is unknown if it succeeded or failed. Check signature ${t} using the Solana Explorer or CLI tools.`),this.signature=void 0,this.signature=t}}Object.defineProperty($o.prototype,"name",{value:"TransactionExpiredTimeoutError"});class Zo extends Error{constructor(t){super(`Signature ${t} has expired: the nonce is no longer valid.`),this.signature=void 0,this.signature=t}}Object.defineProperty(Zo.prototype,"name",{value:"TransactionExpiredNonceInvalidError"});class Go{constructor(t,e){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=t,this.accountKeysFromLookups=e}keySegments(){const t=[this.staticAccountKeys];return this.accountKeysFromLookups&&(t.push(this.accountKeysFromLookups.writable),t.push(this.accountKeysFromLookups.readonly)),t}get(t){for(const e of this.keySegments()){if(t<e.length)return e[t];t-=e.length}}get length(){return this.keySegments().flat().length}compileInstructions(t){if(this.length>256)throw new Error("Account index overflow encountered during compilation");const e=new Map;this.keySegments().flat().forEach(((t,r)=>{e.set(t.toBase58(),r)}));const r=t=>{const r=e.get(t.toBase58());if(void 0===r)throw new Error("Encountered an unknown instruction account key during compilation");return r};return t.map((t=>({programIdIndex:r(t.programId),accountKeyIndexes:t.keys.map((t=>r(t.pubkey))),data:t.data})))}}const Yo=(t="publicKey")=>Fr(32,t),Jo=(t="signature")=>Fr(64,t),Xo=(t="string")=>{const e=jr([Nr("length"),Nr("lengthPadding"),Fr(Rr(Nr(),-8),"chars")],t),r=e.decode.bind(e),i=e.encode.bind(e),o=e;return o.decode=(t,e)=>r(t,e).chars.toString(),o.encode=(t,e,r)=>{const o={chars:n.Buffer.from(t,"utf8")};return i(o,e,r)},o.alloc=t=>Nr().span+Nr().span+n.Buffer.from(t,"utf8").length,o};function Qo(t,e){const r=t=>{if(t.span>=0)return t.span;if("function"==typeof t.alloc)return t.alloc(e[t.property]);if("count"in t&&"elementLayout"in t){const n=e[t.property];if(Array.isArray(n))return n.length*r(t.elementLayout)}else if("fields"in t)return Qo({layout:t},e[t.property]);return 0};let n=0;return t.layout.fields.forEach((t=>{n+=r(t)})),n}function ts(t){let e=0,r=0;for(;;){let n=t.shift();if(e|=(127&n)<<7*r,r+=1,0==(128&n))break}return e}function es(t,e){let r=e;for(;;){let e=127&r;if(r>>=7,0==r){t.push(e);break}e|=128,t.push(e)}}function rs(t,e){if(!t)throw new Error(e||"Assertion failed")}class ns{constructor(t,e){this.payer=void 0,this.keyMetaMap=void 0,this.payer=t,this.keyMetaMap=e}static compile(t,e){const r=new Map,n=t=>{const e=t.toBase58();let n=r.get(e);return void 0===n&&(n={isSigner:!1,isWritable:!1,isInvoked:!1},r.set(e,n)),n},i=n(e);i.isSigner=!0,i.isWritable=!0;for(const e of t){n(e.programId).isInvoked=!0;for(const t of e.keys){const e=n(t.pubkey);e.isSigner||=t.isSigner,e.isWritable||=t.isWritable}}return new ns(e,r)}getMessageComponents(){const t=[...this.keyMetaMap.entries()];rs(t.length<=256,"Max static account keys length exceeded");const e=t.filter((([,t])=>t.isSigner&&t.isWritable)),r=t.filter((([,t])=>t.isSigner&&!t.isWritable)),n=t.filter((([,t])=>!t.isSigner&&t.isWritable)),i=t.filter((([,t])=>!t.isSigner&&!t.isWritable)),o={numRequiredSignatures:e.length+r.length,numReadonlySignedAccounts:r.length,numReadonlyUnsignedAccounts:i.length};{rs(e.length>0,"Expected at least one writable signer key");const[t]=e[0];rs(t===this.payer.toBase58(),"Expected first writable signer key to be the fee payer")}return[o,[...e.map((([t])=>new Wo(t))),...r.map((([t])=>new Wo(t))),...n.map((([t])=>new Wo(t))),...i.map((([t])=>new Wo(t)))]]}extractTableLookup(t){const[e,r]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&t.isWritable)),[n,i]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&!t.isWritable));if(0!==e.length||0!==n.length)return[{accountKey:t.key,writableIndexes:e,readonlyIndexes:n},{writable:r,readonly:i}]}drainKeysFoundInLookupTable(t,e){const r=new Array,n=new Array;for(const[i,o]of this.keyMetaMap.entries())if(e(o)){const e=new Wo(i),o=t.findIndex((t=>t.equals(e)));o>=0&&(rs(o<256,"Max lookup table index exceeded"),r.push(o),n.push(e),this.keyMetaMap.delete(i))}return[r,n]}}class is{constructor(t){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=t.header,this.accountKeys=t.accountKeys.map((t=>new Wo(t))),this.recentBlockhash=t.recentBlockhash,this.instructions=t.instructions,this.instructions.forEach((t=>this.indexToProgramIds.set(t.programIdIndex,this.accountKeys[t.programIdIndex])))}get version(){return"legacy"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map((t=>({programIdIndex:t.programIdIndex,accountKeyIndexes:t.accounts,data:ae.decode(t.data)})))}get addressTableLookups(){return[]}getAccountKeys(){return new Go(this.staticAccountKeys)}static compile(t){const e=ns.compile(t.instructions,t.payerKey),[r,n]=e.getMessageComponents(),i=new Go(n).compileInstructions(t.instructions).map((t=>({programIdIndex:t.programIdIndex,accounts:t.accountKeyIndexes,data:ae.encode(t.data)})));return new is({header:r,accountKeys:n,recentBlockhash:t.recentBlockhash,instructions:i})}isAccountSigner(t){return t<this.header.numRequiredSignatures}isAccountWritable(t){const e=this.header.numRequiredSignatures;if(t>=this.header.numRequiredSignatures){return t-e<this.accountKeys.length-e-this.header.numReadonlyUnsignedAccounts}return t<e-this.header.numReadonlySignedAccounts}isProgramId(t){return this.indexToProgramIds.has(t)}programIds(){return[...this.indexToProgramIds.values()]}nonProgramIds(){return this.accountKeys.filter(((t,e)=>!this.isProgramId(e)))}serialize(){const t=this.accountKeys.length;let e=[];es(e,t);const r=this.instructions.map((t=>{const{accounts:e,programIdIndex:r}=t,i=Array.from(ae.decode(t.data));let o=[];es(o,e.length);let s=[];return es(s,i.length),{programIdIndex:r,keyIndicesCount:n.Buffer.from(o),keyIndices:e,dataLength:n.Buffer.from(s),data:i}}));let i=[];es(i,r.length);let o=n.Buffer.alloc(Ko);n.Buffer.from(i).copy(o);let s=i.length;r.forEach((t=>{const e=jr([Ur("programIdIndex"),Fr(t.keyIndicesCount.length,"keyIndicesCount"),Wr(Ur("keyIndex"),t.keyIndices.length,"keyIndices"),Fr(t.dataLength.length,"dataLength"),Wr(Ur("userdatum"),t.data.length,"data")]).encode(t,o,s);s+=e})),o=o.slice(0,s);const a=jr([Fr(1,"numRequiredSignatures"),Fr(1,"numReadonlySignedAccounts"),Fr(1,"numReadonlyUnsignedAccounts"),Fr(e.length,"keyCount"),Wr(Yo("key"),t,"keys"),Yo("recentBlockhash")]),u={numRequiredSignatures:n.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:n.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:n.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:n.Buffer.from(e),keys:this.accountKeys.map((t=>Ro(t.toBytes()))),recentBlockhash:ae.decode(this.recentBlockhash)};let c=n.Buffer.alloc(2048);const h=a.encode(u,c);return o.copy(c,h),c.slice(0,h+o.length)}static from(t){let e=[...t];const r=e.shift();if(r!==(r&qo))throw new Error("Versioned messages must be deserialized with VersionedMessage.deserialize()");const i=e.shift(),o=e.shift(),s=ts(e);let a=[];for(let t=0;t<s;t++){const t=e.slice(0,Do);e=e.slice(Do),a.push(new Wo(n.Buffer.from(t)))}const u=e.slice(0,Do);e=e.slice(Do);const c=ts(e);let h=[];for(let t=0;t<c;t++){const t=e.shift(),r=ts(e),i=e.slice(0,r);e=e.slice(r);const o=ts(e),s=e.slice(0,o),a=ae.encode(n.Buffer.from(s));e=e.slice(o),h.push({programIdIndex:t,accounts:i,data:a})}const l={header:{numRequiredSignatures:r,numReadonlySignedAccounts:i,numReadonlyUnsignedAccounts:o},recentBlockhash:ae.encode(n.Buffer.from(u)),accountKeys:a,instructions:h};return new is(l)}}class os{constructor(t){this.header=void 0,this.staticAccountKeys=void 0,this.recentBlockhash=void 0,this.compiledInstructions=void 0,this.addressTableLookups=void 0,this.header=t.header,this.staticAccountKeys=t.staticAccountKeys,this.recentBlockhash=t.recentBlockhash,this.compiledInstructions=t.compiledInstructions,this.addressTableLookups=t.addressTableLookups}get version(){return 0}get numAccountKeysFromLookups(){let t=0;for(const e of this.addressTableLookups)t+=e.readonlyIndexes.length+e.writableIndexes.length;return t}getAccountKeys(t){let e;if(t&&"accountKeysFromLookups"in t&&t.accountKeysFromLookups){if(this.numAccountKeysFromLookups!=t.accountKeysFromLookups.writable.length+t.accountKeysFromLookups.readonly.length)throw new Error("Failed to get account keys because of a mismatch in the number of account keys from lookups");e=t.accountKeysFromLookups}else if(t&&"addressLookupTableAccounts"in t&&t.addressLookupTableAccounts)e=this.resolveAddressTableLookups(t.addressLookupTableAccounts);else if(this.addressTableLookups.length>0)throw new Error("Failed to get account keys because address table lookups were not resolved");return new Go(this.staticAccountKeys,e)}isAccountSigner(t){return t<this.header.numRequiredSignatures}isAccountWritable(t){const e=this.header.numRequiredSignatures,r=this.staticAccountKeys.length;if(t>=r){const e=t-r,n=this.addressTableLookups.reduce(((t,e)=>t+e.writableIndexes.length),0);return e<n}if(t>=this.header.numRequiredSignatures){return t-e<r-e-this.header.numReadonlyUnsignedAccounts}return t<e-this.header.numReadonlySignedAccounts}resolveAddressTableLookups(t){const e={writable:[],readonly:[]};for(const r of this.addressTableLookups){const n=t.find((t=>t.key.equals(r.accountKey)));if(!n)throw new Error(`Failed to find address lookup table account for table key ${r.accountKey.toBase58()}`);for(const t of r.writableIndexes){if(!(t<n.state.addresses.length))throw new Error(`Failed to find address for index ${t} in address lookup table ${r.accountKey.toBase58()}`);e.writable.push(n.state.addresses[t])}for(const t of r.readonlyIndexes){if(!(t<n.state.addresses.length))throw new Error(`Failed to find address for index ${t} in address lookup table ${r.accountKey.toBase58()}`);e.readonly.push(n.state.addresses[t])}}return e}static compile(t){const e=ns.compile(t.instructions,t.payerKey),r=new Array,n={writable:new Array,readonly:new Array},i=t.addressLookupTableAccounts||[];for(const t of i){const i=e.extractTableLookup(t);if(void 0!==i){const[t,{writable:e,readonly:o}]=i;r.push(t),n.writable.push(...e),n.readonly.push(...o)}}const[o,s]=e.getMessageComponents(),a=new Go(s,n).compileInstructions(t.instructions);return new os({header:o,staticAccountKeys:s,recentBlockhash:t.recentBlockhash,compiledInstructions:a,addressTableLookups:r})}serialize(){const t=Array();es(t,this.staticAccountKeys.length);const e=this.serializeInstructions(),r=Array();es(r,this.compiledInstructions.length);const n=this.serializeAddressTableLookups(),i=Array();es(i,this.addressTableLookups.length);const o=jr([Ur("prefix"),jr([Ur("numRequiredSignatures"),Ur("numReadonlySignedAccounts"),Ur("numReadonlyUnsignedAccounts")],"header"),Fr(t.length,"staticAccountKeysLength"),Wr(Yo(),this.staticAccountKeys.length,"staticAccountKeys"),Yo("recentBlockhash"),Fr(r.length,"instructionsLength"),Fr(e.length,"serializedInstructions"),Fr(i.length,"addressTableLookupsLength"),Fr(n.length,"serializedAddressTableLookups")]),s=new Uint8Array(Ko),a=o.encode({prefix:128,header:this.header,staticAccountKeysLength:new Uint8Array(t),staticAccountKeys:this.staticAccountKeys.map((t=>t.toBytes())),recentBlockhash:ae.decode(this.recentBlockhash),instructionsLength:new Uint8Array(r),serializedInstructions:e,addressTableLookupsLength:new Uint8Array(i),serializedAddressTableLookups:n},s);return s.slice(0,a)}serializeInstructions(){let t=0;const e=new Uint8Array(Ko);for(const r of this.compiledInstructions){const n=Array();es(n,r.accountKeyIndexes.length);const i=Array();es(i,r.data.length);t+=jr([Ur("programIdIndex"),Fr(n.length,"encodedAccountKeyIndexesLength"),Wr(Ur(),r.accountKeyIndexes.length,"accountKeyIndexes"),Fr(i.length,"encodedDataLength"),Fr(r.data.length,"data")]).encode({programIdIndex:r.programIdIndex,encodedAccountKeyIndexesLength:new Uint8Array(n),accountKeyIndexes:r.accountKeyIndexes,encodedDataLength:new Uint8Array(i),data:r.data},e,t)}return e.slice(0,t)}serializeAddressTableLookups(){let t=0;const e=new Uint8Array(Ko);for(const r of this.addressTableLookups){const n=Array();es(n,r.writableIndexes.length);const i=Array();es(i,r.readonlyIndexes.length);t+=jr([Yo("accountKey"),Fr(n.length,"encodedWritableIndexesLength"),Wr(Ur(),r.writableIndexes.length,"writableIndexes"),Fr(i.length,"encodedReadonlyIndexesLength"),Wr(Ur(),r.readonlyIndexes.length,"readonlyIndexes")]).encode({accountKey:r.accountKey.toBytes(),encodedWritableIndexesLength:new Uint8Array(n),writableIndexes:r.writableIndexes,encodedReadonlyIndexesLength:new Uint8Array(i),readonlyIndexes:r.readonlyIndexes},e,t)}return e.slice(0,t)}static deserialize(t){let e=[...t];const r=e.shift(),n=r&qo;rs(r!==n,"Expected versioned message but received legacy message");rs(0===n,`Expected versioned message with version 0 but found version ${n}`);const i={numRequiredSignatures:e.shift(),numReadonlySignedAccounts:e.shift(),numReadonlyUnsignedAccounts:e.shift()},o=[],s=ts(e);for(let t=0;t<s;t++)o.push(new Wo(e.splice(0,Do)));const a=ae.encode(e.splice(0,Do)),u=ts(e),c=[];for(let t=0;t<u;t++){const t=e.shift(),r=ts(e),n=e.splice(0,r),i=ts(e),o=new Uint8Array(e.splice(0,i));c.push({programIdIndex:t,accountKeyIndexes:n,data:o})}const h=ts(e),l=[];for(let t=0;t<h;t++){const t=new Wo(e.splice(0,Do)),r=ts(e),n=e.splice(0,r),i=ts(e),o=e.splice(0,i);l.push({accountKey:t,writableIndexes:n,readonlyIndexes:o})}return new os({header:i,staticAccountKeys:o,recentBlockhash:a,compiledInstructions:c,addressTableLookups:l})}}const ss={deserializeMessageVersion(t){const e=t[0],r=e&qo;return r===e?"legacy":r},deserialize:t=>{const e=ss.deserializeMessageVersion(t);if("legacy"===e)return is.from(t);if(0===e)return os.deserialize(t);throw new Error(`Transaction message version ${e} deserialization is not supported`)}};let as=function(t){return t[t.BLOCKHEIGHT_EXCEEDED=0]="BLOCKHEIGHT_EXCEEDED",t[t.PROCESSED=1]="PROCESSED",t[t.TIMED_OUT=2]="TIMED_OUT",t[t.NONCE_INVALID=3]="NONCE_INVALID",t}({});const us=n.Buffer.alloc(Vo).fill(0);class cs{constructor(t){this.keys=void 0,this.programId=void 0,this.data=n.Buffer.alloc(0),this.programId=t.programId,this.keys=t.keys,t.data&&(this.data=t.data)}toJSON(){return{keys:this.keys.map((({pubkey:t,isSigner:e,isWritable:r})=>({pubkey:t.toJSON(),isSigner:e,isWritable:r}))),programId:this.programId.toJSON(),data:[...this.data]}}}class hs{get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(t){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,t)if(t.feePayer&&(this.feePayer=t.feePayer),t.signatures&&(this.signatures=t.signatures),Object.prototype.hasOwnProperty.call(t,"nonceInfo")){const{minContextSlot:e,nonceInfo:r}=t;this.minNonceContextSlot=e,this.nonceInfo=r}else if(Object.prototype.hasOwnProperty.call(t,"lastValidBlockHeight")){const{blockhash:e,lastValidBlockHeight:r}=t;this.recentBlockhash=e,this.lastValidBlockHeight=r}else{const{recentBlockhash:e,nonceInfo:r}=t;r&&(this.nonceInfo=r),this.recentBlockhash=e}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map((t=>t.toJSON())),signers:this.signatures.map((({publicKey:t})=>t.toJSON()))}}add(...t){if(0===t.length)throw new Error("No instructions");return t.forEach((t=>{"instructions"in t?this.instructions=this.instructions.concat(t.instructions):"data"in t&&"programId"in t&&"keys"in t?this.instructions.push(t):this.instructions.push(new cs(t))})),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let t,e,r;if(this.nonceInfo?(t=this.nonceInfo.nonce,e=this.instructions[0]!=this.nonceInfo.nonceInstruction?[this.nonceInfo.nonceInstruction,...this.instructions]:this.instructions):(t=this.recentBlockhash,e=this.instructions),!t)throw new Error("Transaction recentBlockhash required");if(e.length<1&&console.warn("No instructions provided"),this.feePayer)r=this.feePayer;else{if(!(this.signatures.length>0&&this.signatures[0].publicKey))throw new Error("Transaction fee payer required");r=this.signatures[0].publicKey}for(let t=0;t<e.length;t++)if(void 0===e[t].programId)throw new Error(`Transaction instruction index ${t} has undefined program id`);const n=[],i=[];e.forEach((t=>{t.keys.forEach((t=>{i.push({...t})}));const e=t.programId.toString();n.includes(e)||n.push(e)})),n.forEach((t=>{i.push({pubkey:new Wo(t),isSigner:!1,isWritable:!1})}));const o=[];i.forEach((t=>{const e=t.pubkey.toString(),r=o.findIndex((t=>t.pubkey.toString()===e));r>-1?(o[r].isWritable=o[r].isWritable||t.isWritable,o[r].isSigner=o[r].isSigner||t.isSigner):o.push(t)})),o.sort((function(t,e){if(t.isSigner!==e.isSigner)return t.isSigner?-1:1;if(t.isWritable!==e.isWritable)return t.isWritable?-1:1;return t.pubkey.toBase58().localeCompare(e.pubkey.toBase58(),"en",{localeMatcher:"best fit",usage:"sort",sensitivity:"variant",ignorePunctuation:!1,numeric:!1,caseFirst:"lower"})}));const s=o.findIndex((t=>t.pubkey.equals(r)));if(s>-1){const[t]=o.splice(s,1);t.isSigner=!0,t.isWritable=!0,o.unshift(t)}else o.unshift({pubkey:r,isSigner:!0,isWritable:!0});for(const t of this.signatures){const e=o.findIndex((e=>e.pubkey.equals(t.publicKey)));if(!(e>-1))throw new Error(`unknown signer: ${t.publicKey.toString()}`);o[e].isSigner||(o[e].isSigner=!0,console.warn("Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release."))}let a=0,u=0,c=0;const h=[],l=[];o.forEach((({pubkey:t,isSigner:e,isWritable:r})=>{e?(h.push(t.toString()),a+=1,r||(u+=1)):(l.push(t.toString()),r||(c+=1))}));const f=h.concat(l),d=e.map((t=>{const{data:e,programId:r}=t;return{programIdIndex:f.indexOf(r.toString()),accounts:t.keys.map((t=>f.indexOf(t.pubkey.toString()))),data:ae.encode(e)}}));return d.forEach((t=>{rs(t.programIdIndex>=0),t.accounts.forEach((t=>rs(t>=0)))})),new is({header:{numRequiredSignatures:a,numReadonlySignedAccounts:u,numReadonlyUnsignedAccounts:c},accountKeys:f,recentBlockhash:t,instructions:d})}_compile(){const t=this.compileMessage(),e=t.accountKeys.slice(0,t.header.numRequiredSignatures);if(this.signatures.length===e.length){const r=this.signatures.every(((t,r)=>e[r].equals(t.publicKey)));if(r)return t}return this.signatures=e.map((t=>({signature:null,publicKey:t}))),t}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(t){return(await t.getFeeForMessage(this.compileMessage())).value}setSigners(...t){if(0===t.length)throw new Error("No signers");const e=new Set;this.signatures=t.filter((t=>{const r=t.toString();return!e.has(r)&&(e.add(r),!0)})).map((t=>({signature:null,publicKey:t})))}sign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}this.signatures=r.map((t=>({signature:null,publicKey:t.publicKey})));const n=this._compile();this._partialSign(n,...r)}partialSign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}const n=this._compile();this._partialSign(n,...r)}_partialSign(t,...e){const r=t.serialize();e.forEach((t=>{const e=Oo(r,t.secretKey);this._addSignature(t.publicKey,Ro(e))}))}addSignature(t,e){this._compile(),this._addSignature(t,e)}_addSignature(t,e){rs(64===e.length);const r=this.signatures.findIndex((e=>t.equals(e.publicKey)));if(r<0)throw new Error(`unknown signer: ${t.toString()}`);this.signatures[r].signature=n.Buffer.from(e)}verifySignatures(t){return this._verifySignatures(this.serializeMessage(),void 0===t||t)}_verifySignatures(t,e){for(const{signature:r,publicKey:n}of this.signatures)if(null===r){if(e)return!1}else if(!To(r,t,n.toBytes()))return!1;return!0}serialize(t){const{requireAllSignatures:e,verifySignatures:r}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},t),n=this.serializeMessage();if(r&&!this._verifySignatures(n,e))throw new Error("Signature verification failed");return this._serialize(n)}_serialize(t){const{signatures:e}=this,r=[];es(r,e.length);const i=r.length+64*e.length+t.length,o=n.Buffer.alloc(i);return rs(e.length<256),n.Buffer.from(r).copy(o,0),e.forEach((({signature:t},e)=>{null!==t&&(rs(64===t.length,"signature has invalid length"),n.Buffer.from(t).copy(o,r.length+64*e))})),t.copy(o,r.length+64*e.length),rs(o.length<=Ko,`Transaction too large: ${o.length} > 1232`),o}get keys(){return rs(1===this.instructions.length),this.instructions[0].keys.map((t=>t.pubkey))}get programId(){return rs(1===this.instructions.length),this.instructions[0].programId}get data(){return rs(1===this.instructions.length),this.instructions[0].data}static from(t){let e=[...t];const r=ts(e);let i=[];for(let t=0;t<r;t++){const t=e.slice(0,Vo);e=e.slice(Vo),i.push(ae.encode(n.Buffer.from(t)))}return hs.populate(is.from(e),i)}static populate(t,e=[]){const r=new hs;return r.recentBlockhash=t.recentBlockhash,t.header.numRequiredSignatures>0&&(r.feePayer=t.accountKeys[0]),e.forEach(((e,n)=>{const i={signature:e==ae.encode(us)?null:ae.decode(e),publicKey:t.accountKeys[n]};r.signatures.push(i)})),t.instructions.forEach((e=>{const n=e.accounts.map((e=>{const n=t.accountKeys[e];return{pubkey:n,isSigner:r.signatures.some((t=>t.publicKey.toString()===n.toString()))||t.isAccountSigner(e),isWritable:t.isAccountWritable(e)}}));r.instructions.push(new cs({keys:n,programId:t.accountKeys[e.programIdIndex],data:ae.decode(e.data)}))})),r._message=t,r._json=r.toJSON(),r}}class ls{constructor(t){this.payerKey=void 0,this.instructions=void 0,this.recentBlockhash=void 0,this.payerKey=t.payerKey,this.instructions=t.instructions,this.recentBlockhash=t.recentBlockhash}static decompile(t,e){const{header:r,compiledInstructions:n,recentBlockhash:i}=t,{numRequiredSignatures:o,numReadonlySignedAccounts:s,numReadonlyUnsignedAccounts:a}=r,u=o-s;rs(u>0,"Message header is invalid");const c=t.staticAccountKeys.length-o-a;rs(c>=0,"Message header is invalid");const h=t.getAccountKeys(e),l=h.get(0);if(void 0===l)throw new Error("Failed to decompile message because no account keys were found");const f=[];for(const t of n){const e=[];for(const n of t.accountKeyIndexes){const t=h.get(n);if(void 0===t)throw new Error(`Failed to find key for account key index ${n}`);let i;i=n<o?n<u:n<h.staticAccountKeys.length?n-o<c:n-h.staticAccountKeys.length<h.accountKeysFromLookups.writable.length,e.push({pubkey:t,isSigner:n<r.numRequiredSignatures,isWritable:i})}const n=h.get(t.programIdIndex);if(void 0===n)throw new Error(`Failed to find program id for program id index ${t.programIdIndex}`);f.push(new cs({programId:n,data:Ro(t.data),keys:e}))}return new ls({payerKey:l,instructions:f,recentBlockhash:i})}compileToLegacyMessage(){return is.compile({payerKey:this.payerKey,recentBlockhash:this.recentBlockhash,instructions:this.instructions})}compileToV0Message(t){return os.compile({payerKey:this.payerKey,recentBlockhash:this.recentBlockhash,instructions:this.instructions,addressLookupTableAccounts:t})}}class fs{get version(){return this.message.version}constructor(t,e){if(this.signatures=void 0,this.message=void 0,void 0!==e)rs(e.length===t.header.numRequiredSignatures,"Expected signatures length to be equal to the number of required signatures"),this.signatures=e;else{const e=[];for(let r=0;r<t.header.numRequiredSignatures;r++)e.push(new Uint8Array(Vo));this.signatures=e}this.message=t}serialize(){const t=this.message.serialize(),e=Array();es(e,this.signatures.length);const r=jr([Fr(e.length,"encodedSignaturesLength"),Wr(Jo(),this.signatures.length,"signatures"),Fr(t.length,"serializedMessage")]),n=new Uint8Array(2048),i=r.encode({encodedSignaturesLength:new Uint8Array(e),signatures:this.signatures,serializedMessage:t},n);return n.slice(0,i)}static deserialize(t){let e=[...t];const r=[],n=ts(e);for(let t=0;t<n;t++)r.push(new Uint8Array(e.splice(0,Vo)));const i=ss.deserialize(new Uint8Array(e));return new fs(i,r)}sign(t){const e=this.message.serialize(),r=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures);for(const n of t){const t=r.findIndex((t=>t.equals(n.publicKey)));rs(t>=0,`Cannot sign with non signer key ${n.publicKey.toBase58()}`),this.signatures[t]=Oo(e,n.secretKey)}}addSignature(t,e){rs(64===e.byteLength,"Signature must be 64 bytes long");const r=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures).findIndex((e=>e.equals(t)));rs(r>=0,`Can not add signature; \`${t.toBase58()}\` is not required to sign this transaction`),this.signatures[r]=e}}const ds=new Wo("SysvarC1ock11111111111111111111111111111111"),ps=new Wo("SysvarEpochSchedu1e111111111111111111111111"),ys=new Wo("Sysvar1nstructions1111111111111111111111111"),gs=new Wo("SysvarRecentB1ockHashes11111111111111111111"),ms=new Wo("SysvarRent111111111111111111111111111111111"),ws=new Wo("SysvarRewards111111111111111111111111111111"),bs=new Wo("SysvarS1otHashes111111111111111111111111111"),vs=new Wo("SysvarS1otHistory11111111111111111111111111"),_s=new Wo("SysvarStakeHistory1111111111111111111111111");async function ks(t,e,r,n){const i=n&&{skipPreflight:n.skipPreflight,preflightCommitment:n.preflightCommitment||n.commitment,maxRetries:n.maxRetries,minContextSlot:n.minContextSlot},o=await t.sendTransaction(e,r,i);let s;if(null!=e.recentBlockhash&&null!=e.lastValidBlockHeight)s=(await t.confirmTransaction({abortSignal:n?.abortSignal,signature:o,blockhash:e.recentBlockhash,lastValidBlockHeight:e.lastValidBlockHeight},n&&n.commitment)).value;else if(null!=e.minNonceContextSlot&&null!=e.nonceInfo){const{nonceInstruction:r}=e.nonceInfo,i=r.keys[0].pubkey;s=(await t.confirmTransaction({abortSignal:n?.abortSignal,minContextSlot:e.minNonceContextSlot,nonceAccountPubkey:i,nonceValue:e.nonceInfo.nonce,signature:o},n&&n.commitment)).value}else null!=n?.abortSignal&&console.warn("sendAndConfirmTransaction(): A transaction with a deprecated confirmation strategy was supplied along with an `abortSignal`. Only transactions having `lastValidBlockHeight` or a combination of `nonceInfo` and `minNonceContextSlot` are abortable."),s=(await t.confirmTransaction(o,n&&n.commitment)).value;if(s.err)throw new Error(`Transaction ${o} failed (${JSON.stringify(s)})`);return o}function Es(t){return new Promise((e=>setTimeout(e,t)))}function Ss(t,e){const r=t.layout.span>=0?t.layout.span:Qo(t,e),i=n.Buffer.alloc(r),o=Object.assign({instruction:t.index},e);return t.layout.encode(o,i),i}function As(t,e){let r;try{r=t.layout.decode(e)}catch(t){throw new Error("invalid instruction; "+t)}if(r.instruction!==t.index)throw new Error(`invalid instruction; instruction index mismatch ${r.instruction} != ${t.index}`);return r}const xs=zr("lamportsPerSignature"),Is=jr([Nr("version"),Nr("state"),Yo("authorizedPubkey"),Yo("nonce"),jr([xs],"feeCalculator")]),Bs=Is.span;class Ms{constructor(t){this.authorizedPubkey=void 0,this.nonce=void 0,this.feeCalculator=void 0,this.authorizedPubkey=t.authorizedPubkey,this.nonce=t.nonce,this.feeCalculator=t.feeCalculator}static fromAccountData(t){const e=Is.decode(Ro(t),0);return new Ms({authorizedPubkey:new Wo(e.authorizedPubkey),nonce:new Wo(e.nonce).toString(),feeCalculator:e.feeCalculator})}}const Ps=(Ls=8,t=>{const e=Fr(Ls,t),{encode:r,decode:i}=(t=>({decode:t.decode.bind(t),encode:t.encode.bind(t)}))(e),o=e;return o.decode=(t,e)=>{const r=i(t,e);return qr(n.Buffer.from(r))},o.encode=(t,e,n)=>{const i=Hr(t,Ls);return r(i,e,n)},o});var Ls;const Os=Object.freeze({Create:{index:0,layout:jr([Nr("instruction"),Dr("lamports"),Dr("space"),Yo("programId")])},Assign:{index:1,layout:jr([Nr("instruction"),Yo("programId")])},Transfer:{index:2,layout:jr([Nr("instruction"),Ps("lamports")])},CreateWithSeed:{index:3,layout:jr([Nr("instruction"),Yo("base"),Xo("seed"),Dr("lamports"),Dr("space"),Yo("programId")])},AdvanceNonceAccount:{index:4,layout:jr([Nr("instruction")])},WithdrawNonceAccount:{index:5,layout:jr([Nr("instruction"),Dr("lamports")])},InitializeNonceAccount:{index:6,layout:jr([Nr("instruction"),Yo("authorized")])},AuthorizeNonceAccount:{index:7,layout:jr([Nr("instruction"),Yo("authorized")])},Allocate:{index:8,layout:jr([Nr("instruction"),Dr("space")])},AllocateWithSeed:{index:9,layout:jr([Nr("instruction"),Yo("base"),Xo("seed"),Dr("space"),Yo("programId")])},AssignWithSeed:{index:10,layout:jr([Nr("instruction"),Yo("base"),Xo("seed"),Yo("programId")])},TransferWithSeed:{index:11,layout:jr([Nr("instruction"),Ps("lamports"),Xo("seed"),Yo("programId")])},UpgradeNonceAccount:{index:12,layout:jr([Nr("instruction")])}});class Ts{constructor(){}static createAccount(t){const e=Ss(Os.Create,{lamports:t.lamports,space:t.space,programId:Ro(t.programId.toBuffer())});return new cs({keys:[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!0,isWritable:!0}],programId:this.programId,data:e})}static transfer(t){let e,r;if("basePubkey"in t){e=Ss(Os.TransferWithSeed,{lamports:BigInt(t.lamports),seed:t.seed,programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.fromPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]}else{e=Ss(Os.Transfer,{lamports:BigInt(t.lamports)}),r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]}return new cs({keys:r,programId:this.programId,data:e})}static assign(t){let e,r;if("basePubkey"in t){e=Ss(Os.AssignWithSeed,{base:Ro(t.basePubkey.toBuffer()),seed:t.seed,programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]}else{e=Ss(Os.Assign,{programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]}return new cs({keys:r,programId:this.programId,data:e})}static createAccountWithSeed(t){const e=Ss(Os.CreateWithSeed,{base:Ro(t.basePubkey.toBuffer()),seed:t.seed,lamports:t.lamports,space:t.space,programId:Ro(t.programId.toBuffer())});let r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!1,isWritable:!0}];return t.basePubkey!=t.fromPubkey&&r.push({pubkey:t.basePubkey,isSigner:!0,isWritable:!1}),new cs({keys:r,programId:this.programId,data:e})}static createNonceAccount(t){const e=new hs;"basePubkey"in t&&"seed"in t?e.add(Ts.createAccountWithSeed({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,basePubkey:t.basePubkey,seed:t.seed,lamports:t.lamports,space:Bs,programId:this.programId})):e.add(Ts.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,lamports:t.lamports,space:Bs,programId:this.programId}));const r={noncePubkey:t.noncePubkey,authorizedPubkey:t.authorizedPubkey};return e.add(this.nonceInitialize(r)),e}static nonceInitialize(t){const e=Ss(Os.InitializeNonceAccount,{authorized:Ro(t.authorizedPubkey.toBuffer())}),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:gs,isSigner:!1,isWritable:!1},{pubkey:ms,isSigner:!1,isWritable:!1}],programId:this.programId,data:e};return new cs(r)}static nonceAdvance(t){const e=Ss(Os.AdvanceNonceAccount),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:gs,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e};return new cs(r)}static nonceWithdraw(t){const e=Ss(Os.WithdrawNonceAccount,{lamports:t.lamports});return new cs({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0},{pubkey:gs,isSigner:!1,isWritable:!1},{pubkey:ms,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static nonceAuthorize(t){const e=Ss(Os.AuthorizeNonceAccount,{authorized:Ro(t.newAuthorizedPubkey.toBuffer())});return new cs({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static allocate(t){let e,r;if("basePubkey"in t){e=Ss(Os.AllocateWithSeed,{base:Ro(t.basePubkey.toBuffer()),seed:t.seed,space:t.space,programId:Ro(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]}else{e=Ss(Os.Allocate,{space:t.space}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]}return new cs({keys:r,programId:this.programId,data:e})}}Ts.programId=new Wo("11111111111111111111111111111111");class Rs{constructor(){}static getMinNumSignatures(t){return 2*(Math.ceil(t/Rs.chunkSize)+1+1)}static async load(t,e,r,i,o){{const n=await t.getMinimumBalanceForRentExemption(o.length),s=await t.getAccountInfo(r.publicKey,"confirmed");let a=null;if(null!==s){if(s.executable)return console.error("Program load failed, account is already executable"),!1;s.data.length!==o.length&&(a=a||new hs,a.add(Ts.allocate({accountPubkey:r.publicKey,space:o.length}))),s.owner.equals(i)||(a=a||new hs,a.add(Ts.assign({accountPubkey:r.publicKey,programId:i}))),s.lamports<n&&(a=a||new hs,a.add(Ts.transfer({fromPubkey:e.publicKey,toPubkey:r.publicKey,lamports:n-s.lamports})))}else a=(new hs).add(Ts.createAccount({fromPubkey:e.publicKey,newAccountPubkey:r.publicKey,lamports:n>0?n:1,space:o.length,programId:i}));null!==a&&await ks(t,a,[e,r],{commitment:"confirmed"})}const s=jr([Nr("instruction"),Nr("offset"),Nr("bytesLength"),Nr("bytesLengthPadding"),Wr(Ur("byte"),Rr(Nr(),-8),"bytes")]),a=Rs.chunkSize;let u=0,c=o,h=[];for(;c.length>0;){const o=c.slice(0,a),l=n.Buffer.alloc(a+16);s.encode({instruction:0,offset:u,bytes:o,bytesLength:0,bytesLengthPadding:0},l);const f=(new hs).add({keys:[{pubkey:r.publicKey,isSigner:!0,isWritable:!0}],programId:i,data:l});if(h.push(ks(t,f,[e,r],{commitment:"confirmed"})),t._rpcEndpoint.includes("solana.com")){const t=4;await Es(1e3/t)}u+=a,c=c.slice(a)}await Promise.all(h);{const o=jr([Nr("instruction")]),s=n.Buffer.alloc(o.span);o.encode({instruction:1},s);const a=(new hs).add({keys:[{pubkey:r.publicKey,isSigner:!0,isWritable:!0},{pubkey:ms,isSigner:!1,isWritable:!1}],programId:i,data:s}),u="processed",c=await t.sendTransaction(a,[e,r],{preflightCommitment:u}),{context:h,value:l}=await t.confirmTransaction({signature:c,lastValidBlockHeight:a.lastValidBlockHeight,blockhash:a.recentBlockhash},u);if(l.err)throw new Error(`Transaction ${c} failed (${JSON.stringify(l)})`);for(;;){try{if(await t.getSlot({commitment:u})>h.slot)break}catch{}await new Promise((t=>setTimeout(t,Math.round(200))))}}return!0}}Rs.chunkSize=932;const Us=new Wo("BPFLoader2111111111111111111111111111111111");function Cs(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ns=Object.prototype.toString,zs=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};function Ds(t,e){var r,n,i,o,s,a,u;if(!0===t)return"true";if(!1===t)return"false";switch(typeof t){case"object":if(null===t)return null;if(t.toJSON&&"function"==typeof t.toJSON)return Ds(t.toJSON(),e);if("[object Array]"===(u=Ns.call(t))){for(i="[",n=t.length-1,r=0;r<n;r++)i+=Ds(t[r],!0)+",";return n>-1&&(i+=Ds(t[r],!0)),i+"]"}if("[object Object]"===u){for(n=(o=zs(t).sort()).length,i="",r=0;r<n;)void 0!==(a=Ds(t[s=o[r]],!1))&&(i&&(i+=","),i+=JSON.stringify(s)+":"+a),r++;return"{"+i+"}"}return JSON.stringify(t);case"function":case"undefined":return e?null:void 0;case"string":return JSON.stringify(t);default:return isFinite(t)?t:null}}var js=Cs((function(t){var e=Ds(t,!1);if(void 0!==e)return""+e}));function Ws(t){let e=0;for(;t>1;)t/=2,e++;return e}class Fs{constructor(t,e,r,n,i){this.slotsPerEpoch=void 0,this.leaderScheduleSlotOffset=void 0,this.warmup=void 0,this.firstNormalEpoch=void 0,this.firstNormalSlot=void 0,this.slotsPerEpoch=t,this.leaderScheduleSlotOffset=e,this.warmup=r,this.firstNormalEpoch=n,this.firstNormalSlot=i}getEpoch(t){return this.getEpochAndSlotIndex(t)[0]}getEpochAndSlotIndex(t){if(t<this.firstNormalSlot){const e=Ws(function(t){return 0===t?1:(t--,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,1+(t|=t>>32))}(t+32+1))-Ws(32)-1;return[e,t-(this.getSlotsInEpoch(e)-32)]}{const e=t-this.firstNormalSlot,r=Math.floor(e/this.slotsPerEpoch);return[this.firstNormalEpoch+r,e%this.slotsPerEpoch]}}getFirstSlotInEpoch(t){return t<=this.firstNormalEpoch?32*(Math.pow(2,t)-1):(t-this.firstNormalEpoch)*this.slotsPerEpoch+this.firstNormalSlot}getLastSlotInEpoch(t){return this.getFirstSlotInEpoch(t)+this.getSlotsInEpoch(t)-1}getSlotsInEpoch(t){return t<this.firstNormalEpoch?Math.pow(2,t+Ws(32)):this.slotsPerEpoch}}class Ks extends Error{constructor(t,e){super(t),this.logs=void 0,this.logs=e}}class qs extends Error{constructor({code:t,message:e,data:r},n){super(null!=n?`${n}: ${e}`:e),this.code=void 0,this.data=void 0,this.code=t,this.data=r,this.name="SolanaJSONRPCError"}}var Vs=globalThis.fetch;class Hs extends Vi{constructor(t,e,r){super((t=>{const r=$i(t,{autoconnect:!0,max_reconnects:5,reconnect:!0,reconnect_interval:1e3,...e});return this.underlyingSocket="socket"in r?r.socket:r,r}),t,e,r),this.underlyingSocket=void 0}call(...t){const e=this.underlyingSocket?.readyState;return 1===e?super.call(...t):Promise.reject(new Error("Tried to call a JSON-RPC method `"+t[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+e+")"))}notify(...t){const e=this.underlyingSocket?.readyState;return 1===e?super.notify(...t):Promise.reject(new Error("Tried to send a JSON-RPC notification `"+t[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+e+")"))}}class $s{constructor(t){this.key=void 0,this.state=void 0,this.key=t.key,this.state=t.state}isActive(){const t=BigInt("0xffffffffffffffff");return this.state.deactivationSlot===t}static deserialize(t){const e=function(t,e){let r;try{r=t.layout.decode(e)}catch(t){throw new Error("invalid instruction; "+t)}if(r.typeIndex!==t.index)throw new Error(`invalid account data; account type mismatch ${r.typeIndex} != ${t.index}`);return r}(Zs,t),r=t.length-56;rs(r>=0,"lookup table is invalid"),rs(r%32==0,"lookup table is invalid");const n=r/32,{addresses:i}=jr([Wr(Yo(),n,"addresses")]).decode(t.slice(56));return{deactivationSlot:e.deactivationSlot,lastExtendedSlot:e.lastExtendedSlot,lastExtendedSlotStartIndex:e.lastExtendedStartIndex,authority:0!==e.authority.length?new Wo(e.authority[0]):void 0,addresses:i.map((t=>new Wo(t)))}}}const Zs={index:1,layout:jr([Nr("typeIndex"),Ps("deactivationSlot"),zr("lastExtendedSlot"),Ur("lastExtendedStartIndex"),Ur(),Wr(Yo(),Rr(Ur(),-1),"authority")])},Gs=/^[^:]+:\/\/([^:[]+|\[[^\]]+\])(:\d+)?(.*)/i;const Ys=bn(un(Wo),pn(),(t=>new Wo(t))),Js=yn([pn(),cn("base64")]),Xs=bn(un(n.Buffer),Js,(t=>n.Buffer.from(t[0],"base64")));function Qs(t){let e,r;if("string"==typeof t)e=t;else if(t){const{commitment:n,...i}=t;e=n,r=i}return{commitment:e,config:r}}function ta(t){return mn([gn({jsonrpc:cn("2.0"),id:pn(),result:t}),gn({jsonrpc:cn("2.0"),id:pn(),error:gn({code:wn(),message:pn(),data:fn(on("any",(()=>!0)))})})])}const ea=ta(wn());function ra(t){return bn(ta(t),ea,(e=>"error"in e?e:{...e,result:en(e.result,t)}))}function na(t){return ra(gn({context:gn({slot:ln()}),value:t}))}function ia(t){return gn({context:gn({slot:ln()}),value:t})}function oa(t,e){return 0===t?new os({header:e.header,staticAccountKeys:e.accountKeys.map((t=>new Wo(t))),recentBlockhash:e.recentBlockhash,compiledInstructions:e.instructions.map((t=>({programIdIndex:t.programIdIndex,accountKeyIndexes:t.accounts,data:ae.decode(t.data)}))),addressTableLookups:e.addressTableLookups}):new is(e)}const sa=gn({foundation:ln(),foundationTerm:ln(),initial:ln(),taper:ln(),terminal:ln()}),aa=ra(sn(hn(gn({epoch:ln(),effectiveSlot:ln(),amount:ln(),postBalance:ln(),commission:fn(hn(ln()))})))),ua=sn(gn({slot:ln(),prioritizationFee:ln()})),ca=gn({total:ln(),validator:ln(),foundation:ln(),epoch:ln()}),ha=gn({epoch:ln(),slotIndex:ln(),slotsInEpoch:ln(),absoluteSlot:ln(),blockHeight:fn(ln()),transactionCount:fn(ln())}),la=gn({slotsPerEpoch:ln(),leaderScheduleSlotOffset:ln(),warmup:an(),firstNormalEpoch:ln(),firstNormalSlot:ln()}),fa=dn(pn(),sn(ln())),da=hn(mn([gn({}),pn()])),pa=gn({err:da}),ya=cn("receivedSignature"),ga=gn({"solana-core":pn(),"feature-set":fn(ln())}),ma=na(gn({err:hn(mn([gn({}),pn()])),logs:hn(sn(pn())),accounts:fn(hn(sn(hn(gn({executable:an(),owner:pn(),lamports:ln(),data:sn(pn()),rentEpoch:fn(ln())}))))),unitsConsumed:fn(ln()),returnData:fn(hn(gn({programId:pn(),data:yn([pn(),cn("base64")])})))})),wa=na(gn({byIdentity:dn(pn(),sn(ln())),range:gn({firstSlot:ln(),lastSlot:ln()})}));const ba=ra(sa),va=ra(ca),_a=ra(ua),ka=ra(ha),Ea=ra(la),Sa=ra(fa),Aa=ra(ln()),xa=na(gn({total:ln(),circulating:ln(),nonCirculating:ln(),nonCirculatingAccounts:sn(Ys)})),Ia=gn({amount:pn(),uiAmount:hn(ln()),decimals:ln(),uiAmountString:fn(pn())}),Ba=na(sn(gn({address:Ys,amount:pn(),uiAmount:hn(ln()),decimals:ln(),uiAmountString:fn(pn())}))),Ma=na(sn(gn({pubkey:Ys,account:gn({executable:an(),owner:Ys,lamports:ln(),data:Xs,rentEpoch:ln()})}))),Pa=gn({program:pn(),parsed:wn(),space:ln()}),La=na(sn(gn({pubkey:Ys,account:gn({executable:an(),owner:Ys,lamports:ln(),data:Pa,rentEpoch:ln()})}))),Oa=na(sn(gn({lamports:ln(),address:Ys}))),Ta=gn({executable:an(),owner:Ys,lamports:ln(),data:Xs,rentEpoch:ln()}),Ra=gn({pubkey:Ys,account:Ta}),Ua=bn(mn([un(n.Buffer),Pa]),mn([Js,Pa]),(t=>Array.isArray(t)?en(t,Xs):t)),Ca=gn({executable:an(),owner:Ys,lamports:ln(),data:Ua,rentEpoch:ln()}),Na=gn({pubkey:Ys,account:Ca}),za=gn({state:mn([cn("active"),cn("inactive"),cn("activating"),cn("deactivating")]),active:ln(),inactive:ln()}),Da=ra(sn(gn({signature:pn(),slot:ln(),err:da,memo:hn(pn()),blockTime:fn(hn(ln()))}))),ja=ra(sn(gn({signature:pn(),slot:ln(),err:da,memo:hn(pn()),blockTime:fn(hn(ln()))}))),Wa=gn({subscription:ln(),result:ia(Ta)}),Fa=gn({pubkey:Ys,account:Ta}),Ka=gn({subscription:ln(),result:ia(Fa)}),qa=gn({parent:ln(),slot:ln(),root:ln()}),Va=gn({subscription:ln(),result:qa}),Ha=mn([gn({type:mn([cn("firstShredReceived"),cn("completed"),cn("optimisticConfirmation"),cn("root")]),slot:ln(),timestamp:ln()}),gn({type:cn("createdBank"),parent:ln(),slot:ln(),timestamp:ln()}),gn({type:cn("frozen"),slot:ln(),timestamp:ln(),stats:gn({numTransactionEntries:ln(),numSuccessfulTransactions:ln(),numFailedTransactions:ln(),maxTransactionsPerEntry:ln()})}),gn({type:cn("dead"),slot:ln(),timestamp:ln(),err:pn()})]),$a=gn({subscription:ln(),result:Ha}),Za=gn({subscription:ln(),result:ia(mn([pa,ya]))}),Ga=gn({subscription:ln(),result:ln()}),Ya=gn({pubkey:pn(),gossip:hn(pn()),tpu:hn(pn()),rpc:hn(pn()),version:hn(pn())}),Ja=gn({votePubkey:pn(),nodePubkey:pn(),activatedStake:ln(),epochVoteAccount:an(),epochCredits:sn(yn([ln(),ln(),ln()])),commission:ln(),lastVote:ln(),rootSlot:hn(ln())}),Xa=ra(gn({current:sn(Ja),delinquent:sn(Ja)})),Qa=mn([cn("processed"),cn("confirmed"),cn("finalized")]),tu=gn({slot:ln(),confirmations:hn(ln()),err:da,confirmationStatus:fn(Qa)}),eu=na(sn(hn(tu))),ru=ra(ln()),nu=gn({accountKey:Ys,writableIndexes:sn(ln()),readonlyIndexes:sn(ln())}),iu=gn({signatures:sn(pn()),message:gn({accountKeys:sn(pn()),header:gn({numRequiredSignatures:ln(),numReadonlySignedAccounts:ln(),numReadonlyUnsignedAccounts:ln()}),instructions:sn(gn({accounts:sn(ln()),data:pn(),programIdIndex:ln()})),recentBlockhash:pn(),addressTableLookups:fn(sn(nu))})}),ou=gn({pubkey:Ys,signer:an(),writable:an(),source:fn(mn([cn("transaction"),cn("lookupTable")]))}),su=gn({accountKeys:sn(ou),signatures:sn(pn())}),au=gn({parsed:wn(),program:pn(),programId:Ys}),uu=gn({accounts:sn(Ys),data:pn(),programId:Ys}),cu=bn(mn([uu,au]),mn([gn({parsed:wn(),program:pn(),programId:pn()}),gn({accounts:sn(pn()),data:pn(),programId:pn()})]),(t=>en(t,"accounts"in t?uu:au))),hu=gn({signatures:sn(pn()),message:gn({accountKeys:sn(ou),instructions:sn(cu),recentBlockhash:pn(),addressTableLookups:fn(hn(sn(nu)))})}),lu=gn({accountIndex:ln(),mint:pn(),owner:fn(pn()),uiTokenAmount:Ia}),fu=gn({writable:sn(Ys),readonly:sn(Ys)}),du=gn({err:da,fee:ln(),innerInstructions:fn(hn(sn(gn({index:ln(),instructions:sn(gn({accounts:sn(ln()),data:pn(),programIdIndex:ln()}))})))),preBalances:sn(ln()),postBalances:sn(ln()),logMessages:fn(hn(sn(pn()))),preTokenBalances:fn(hn(sn(lu))),postTokenBalances:fn(hn(sn(lu))),loadedAddresses:fn(fu),computeUnitsConsumed:fn(ln())}),pu=gn({err:da,fee:ln(),innerInstructions:fn(hn(sn(gn({index:ln(),instructions:sn(cu)})))),preBalances:sn(ln()),postBalances:sn(ln()),logMessages:fn(hn(sn(pn()))),preTokenBalances:fn(hn(sn(lu))),postTokenBalances:fn(hn(sn(lu))),loadedAddresses:fn(fu),computeUnitsConsumed:fn(ln())}),yu=mn([cn(0),cn("legacy")]),gu=gn({pubkey:pn(),lamports:ln(),postBalance:hn(ln()),rewardType:hn(pn()),commission:fn(hn(ln()))}),mu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:iu,meta:hn(du),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),wu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),bu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:su,meta:hn(du),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),vu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:hu,meta:hn(pu),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),_u=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:su,meta:hn(pu),version:fn(yu)})),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),ku=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),rewards:fn(sn(gu)),blockTime:hn(ln()),blockHeight:hn(ln())}))),Eu=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),transactions:sn(gn({transaction:iu,meta:hn(du)})),rewards:fn(sn(gu)),blockTime:hn(ln())}))),Su=ra(hn(gn({blockhash:pn(),previousBlockhash:pn(),parentSlot:ln(),signatures:sn(pn()),blockTime:hn(ln())}))),Au=ra(hn(gn({slot:ln(),meta:hn(du),blockTime:fn(hn(ln())),transaction:iu,version:fn(yu)}))),xu=ra(hn(gn({slot:ln(),transaction:hu,meta:hn(pu),blockTime:fn(hn(ln())),version:fn(yu)}))),Iu=na(gn({blockhash:pn(),feeCalculator:gn({lamportsPerSignature:ln()})})),Bu=na(gn({blockhash:pn(),lastValidBlockHeight:ln()})),Mu=na(an()),Pu=ra(sn(gn({slot:ln(),numTransactions:ln(),numSlots:ln(),samplePeriodSecs:ln()}))),Lu=na(hn(gn({feeCalculator:gn({lamportsPerSignature:ln()})}))),Ou=ra(pn()),Tu=ra(pn()),Ru=gn({err:da,logs:sn(pn()),signature:pn()}),Uu=gn({result:ia(Ru),subscription:ln()}),Cu={"solana-client":"js/0.0.0-development"};class Nu{constructor(t){this._keypair=void 0,this._keypair=t??Mo()}static generate(){return new Nu(Mo())}static fromSecretKey(t,e){if(64!==t.byteLength)throw new Error("bad secret key size");const r=t.slice(32,64);if(!e||!e.skipValidation){const e=t.slice(0,32),n=Po(e);for(let t=0;t<32;t++)if(r[t]!==n[t])throw new Error("provided secretKey is invalid")}return new Nu({publicKey:r,secretKey:t})}static fromSeed(t){const e=Po(t),r=new Uint8Array(64);return r.set(t),r.set(e,32),new Nu({publicKey:e,secretKey:r})}get publicKey(){return new Wo(this._keypair.publicKey)}get secretKey(){return new Uint8Array(this._keypair.secretKey)}}const zu=Object.freeze({CreateLookupTable:{index:0,layout:jr([Nr("instruction"),Ps("recentSlot"),Ur("bumpSeed")])},FreezeLookupTable:{index:1,layout:jr([Nr("instruction")])},ExtendLookupTable:{index:2,layout:jr([Nr("instruction"),Ps(),Wr(Yo(),Rr(Nr(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:jr([Nr("instruction")])},CloseLookupTable:{index:4,layout:jr([Nr("instruction")])}});class Du{constructor(){}static createLookupTable(t){const[e,r]=Wo.findProgramAddressSync([t.authority.toBuffer(),Hr(BigInt(t.recentSlot),8)],this.programId),n=Ss(zu.CreateLookupTable,{recentSlot:BigInt(t.recentSlot),bumpSeed:r}),i=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1},{pubkey:t.payer,isSigner:!0,isWritable:!0},{pubkey:Ts.programId,isSigner:!1,isWritable:!1}];return[new cs({programId:this.programId,keys:i,data:n}),e]}static freezeLookupTable(t){const e=Ss(zu.FreezeLookupTable),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1}];return new cs({programId:this.programId,keys:r,data:e})}static extendLookupTable(t){const e=Ss(zu.ExtendLookupTable,{addresses:t.addresses.map((t=>t.toBytes()))}),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1}];return t.payer&&r.push({pubkey:t.payer,isSigner:!0,isWritable:!0},{pubkey:Ts.programId,isSigner:!1,isWritable:!1}),new cs({programId:this.programId,keys:r,data:e})}static deactivateLookupTable(t){const e=Ss(zu.DeactivateLookupTable),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1}];return new cs({programId:this.programId,keys:r,data:e})}static closeLookupTable(t){const e=Ss(zu.CloseLookupTable),r=[{pubkey:t.lookupTable,isSigner:!1,isWritable:!0},{pubkey:t.authority,isSigner:!0,isWritable:!1},{pubkey:t.recipient,isSigner:!1,isWritable:!0}];return new cs({programId:this.programId,keys:r,data:e})}}Du.programId=new Wo("AddressLookupTab1e1111111111111111111111111");const ju=Object.freeze({RequestUnits:{index:0,layout:jr([Ur("instruction"),Nr("units"),Nr("additionalFee")])},RequestHeapFrame:{index:1,layout:jr([Ur("instruction"),Nr("bytes")])},SetComputeUnitLimit:{index:2,layout:jr([Ur("instruction"),Nr("units")])},SetComputeUnitPrice:{index:3,layout:jr([Ur("instruction"),Ps("microLamports")])}});class Wu{constructor(){}static requestUnits(t){const e=Ss(ju.RequestUnits,t);return new cs({keys:[],programId:this.programId,data:e})}static requestHeapFrame(t){const e=Ss(ju.RequestHeapFrame,t);return new cs({keys:[],programId:this.programId,data:e})}static setComputeUnitLimit(t){const e=Ss(ju.SetComputeUnitLimit,t);return new cs({keys:[],programId:this.programId,data:e})}static setComputeUnitPrice(t){const e=Ss(ju.SetComputeUnitPrice,{microLamports:BigInt(t.microLamports)});return new cs({keys:[],programId:this.programId,data:e})}}Wu.programId=new Wo("ComputeBudget111111111111111111111111111111");const Fu=jr([Ur("numSignatures"),Ur("padding"),Cr("signatureOffset"),Cr("signatureInstructionIndex"),Cr("publicKeyOffset"),Cr("publicKeyInstructionIndex"),Cr("messageDataOffset"),Cr("messageDataSize"),Cr("messageInstructionIndex")]);class Ku{constructor(){}static createInstructionWithPublicKey(t){const{publicKey:e,message:r,signature:i,instructionIndex:o}=t;rs(32===e.length,`Public Key must be 32 bytes but received ${e.length} bytes`),rs(64===i.length,`Signature must be 64 bytes but received ${i.length} bytes`);const s=Fu.span,a=s+e.length,u=a+i.length,c=n.Buffer.alloc(u+r.length),h=null==o?65535:o;return Fu.encode({numSignatures:1,padding:0,signatureOffset:a,signatureInstructionIndex:h,publicKeyOffset:s,publicKeyInstructionIndex:h,messageDataOffset:u,messageDataSize:r.length,messageInstructionIndex:h},c),c.fill(e,s),c.fill(i,a),c.fill(r,u),new cs({keys:[],programId:Ku.programId,data:c})}static createInstructionWithPrivateKey(t){const{privateKey:e,message:r,instructionIndex:n}=t;rs(64===e.length,`Private key must be 64 bytes but received ${e.length} bytes`);try{const t=Nu.fromSecretKey(e),i=t.publicKey.toBytes(),o=Oo(r,t.secretKey);return this.createInstructionWithPublicKey({publicKey:i,message:r,signature:o,instructionIndex:n})}catch(t){throw new Error(`Error creating instruction; ${t}`)}}}Ku.programId=new Wo("Ed25519SigVerify111111111111111111111111111");Io.utils.isValidPrivateKey;const qu=Io.getPublicKey,Vu=jr([Ur("numSignatures"),Cr("signatureOffset"),Ur("signatureInstructionIndex"),Cr("ethAddressOffset"),Ur("ethAddressInstructionIndex"),Cr("messageDataOffset"),Cr("messageDataSize"),Ur("messageInstructionIndex"),Fr(20,"ethAddress"),Fr(64,"signature"),Ur("recoveryId")]);class Hu{constructor(){}static publicKeyToEthAddress(t){rs(64===t.length,`Public key must be 64 bytes but received ${t.length} bytes`);try{return n.Buffer.from(uo(Ro(t))).slice(-20)}catch(t){throw new Error(`Error constructing Ethereum address: ${t}`)}}static createInstructionWithPublicKey(t){const{publicKey:e,message:r,signature:n,recoveryId:i,instructionIndex:o}=t;return Hu.createInstructionWithEthAddress({ethAddress:Hu.publicKeyToEthAddress(e),message:r,signature:n,recoveryId:i,instructionIndex:o})}static createInstructionWithEthAddress(t){const{ethAddress:e,message:r,signature:i,recoveryId:o,instructionIndex:s=0}=t;let a;a="string"==typeof e?e.startsWith("0x")?n.Buffer.from(e.substr(2),"hex"):n.Buffer.from(e,"hex"):e,rs(20===a.length,`Address must be 20 bytes but received ${a.length} bytes`);const u=12+a.length,c=u+i.length+1,h=n.Buffer.alloc(Vu.span+r.length);return Vu.encode({numSignatures:1,signatureOffset:u,signatureInstructionIndex:s,ethAddressOffset:12,ethAddressInstructionIndex:s,messageDataOffset:c,messageDataSize:r.length,messageInstructionIndex:s,signature:Ro(i),ethAddress:Ro(a),recoveryId:o},h),h.fill(Ro(r),Vu.span),new cs({keys:[],programId:Hu.programId,data:h})}static createInstructionWithPrivateKey(t){const{privateKey:e,message:r,instructionIndex:i}=t;rs(32===e.length,`Private key must be 32 bytes but received ${e.length} bytes`);try{const t=Ro(e),o=qu(t,!1).slice(1),s=n.Buffer.from(uo(Ro(r))),[a,u]=((t,e)=>{const r=Io.sign(t,e);return[r.toCompactRawBytes(),r.recovery]})(s,t);return this.createInstructionWithPublicKey({publicKey:o,message:r,signature:a,recoveryId:u,instructionIndex:i})}catch(t){throw new Error(`Error creating instruction; ${t}`)}}}var $u;Hu.programId=new Wo("KeccakSecp256k11111111111111111111111111111");const Zu=new Wo("StakeConfig11111111111111111111111111111111");class Gu{constructor(t,e){this.staker=void 0,this.withdrawer=void 0,this.staker=t,this.withdrawer=e}}class Yu{constructor(t,e,r){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=t,this.epoch=e,this.custodian=r}}$u=Yu,Yu.default=new $u(0,0,Wo.default);const Ju=Object.freeze({Initialize:{index:0,layout:jr([Nr("instruction"),((t="authorized")=>jr([Yo("staker"),Yo("withdrawer")],t))(),((t="lockup")=>jr([Dr("unixTimestamp"),Dr("epoch"),Yo("custodian")],t))()])},Authorize:{index:1,layout:jr([Nr("instruction"),Yo("newAuthorized"),Nr("stakeAuthorizationType")])},Delegate:{index:2,layout:jr([Nr("instruction")])},Split:{index:3,layout:jr([Nr("instruction"),Dr("lamports")])},Withdraw:{index:4,layout:jr([Nr("instruction"),Dr("lamports")])},Deactivate:{index:5,layout:jr([Nr("instruction")])},Merge:{index:7,layout:jr([Nr("instruction")])},AuthorizeWithSeed:{index:8,layout:jr([Nr("instruction"),Yo("newAuthorized"),Nr("stakeAuthorizationType"),Xo("authoritySeed"),Yo("authorityOwner")])}}),Xu=Object.freeze({Staker:{index:0},Withdrawer:{index:1}});class Qu{constructor(){}static initialize(t){const{stakePubkey:e,authorized:r,lockup:n}=t,i=n||Yu.default,o=Ss(Ju.Initialize,{authorized:{staker:Ro(r.staker.toBuffer()),withdrawer:Ro(r.withdrawer.toBuffer())},lockup:{unixTimestamp:i.unixTimestamp,epoch:i.epoch,custodian:Ro(i.custodian.toBuffer())}}),s={keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ms,isSigner:!1,isWritable:!1}],programId:this.programId,data:o};return new cs(s)}static createAccountWithSeed(t){const e=new hs;e.add(Ts.createAccountWithSeed({fromPubkey:t.fromPubkey,newAccountPubkey:t.stakePubkey,basePubkey:t.basePubkey,seed:t.seed,lamports:t.lamports,space:this.space,programId:this.programId}));const{stakePubkey:r,authorized:n,lockup:i}=t;return e.add(this.initialize({stakePubkey:r,authorized:n,lockup:i}))}static createAccount(t){const e=new hs;e.add(Ts.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.stakePubkey,lamports:t.lamports,space:this.space,programId:this.programId}));const{stakePubkey:r,authorized:n,lockup:i}=t;return e.add(this.initialize({stakePubkey:r,authorized:n,lockup:i}))}static delegate(t){const{stakePubkey:e,authorizedPubkey:r,votePubkey:n}=t,i=Ss(Ju.Delegate);return(new hs).add({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:_s,isSigner:!1,isWritable:!1},{pubkey:Zu,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:i})}static authorize(t){const{stakePubkey:e,authorizedPubkey:r,newAuthorizedPubkey:n,stakeAuthorizationType:i,custodianPubkey:o}=t,s=Ss(Ju.Authorize,{newAuthorized:Ro(n.toBuffer()),stakeAuthorizationType:i.index}),a=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}];return o&&a.push({pubkey:o,isSigner:!1,isWritable:!1}),(new hs).add({keys:a,programId:this.programId,data:s})}static authorizeWithSeed(t){const{stakePubkey:e,authorityBase:r,authoritySeed:n,authorityOwner:i,newAuthorizedPubkey:o,stakeAuthorizationType:s,custodianPubkey:a}=t,u=Ss(Ju.AuthorizeWithSeed,{newAuthorized:Ro(o.toBuffer()),stakeAuthorizationType:s.index,authoritySeed:n,authorityOwner:Ro(i.toBuffer())}),c=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1},{pubkey:ds,isSigner:!1,isWritable:!1}];return a&&c.push({pubkey:a,isSigner:!1,isWritable:!1}),(new hs).add({keys:c,programId:this.programId,data:u})}static splitInstruction(t){const{stakePubkey:e,authorizedPubkey:r,splitStakePubkey:n,lamports:i}=t,o=Ss(Ju.Split,{lamports:i});return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:o})}static split(t){const e=new hs;return e.add(Ts.createAccount({fromPubkey:t.authorizedPubkey,newAccountPubkey:t.splitStakePubkey,lamports:0,space:this.space,programId:this.programId})),e.add(this.splitInstruction(t))}static splitWithSeed(t){const{stakePubkey:e,authorizedPubkey:r,splitStakePubkey:n,basePubkey:i,seed:o,lamports:s}=t,a=new hs;return a.add(Ts.allocate({accountPubkey:n,basePubkey:i,seed:o,space:this.space,programId:this.programId})),a.add(this.splitInstruction({stakePubkey:e,authorizedPubkey:r,splitStakePubkey:n,lamports:s}))}static merge(t){const{stakePubkey:e,sourceStakePubKey:r,authorizedPubkey:n}=t,i=Ss(Ju.Merge);return(new hs).add({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:_s,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!0,isWritable:!1}],programId:this.programId,data:i})}static withdraw(t){const{stakePubkey:e,authorizedPubkey:r,toPubkey:n,lamports:i,custodianPubkey:o}=t,s=Ss(Ju.Withdraw,{lamports:i}),a=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:_s,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return o&&a.push({pubkey:o,isSigner:!1,isWritable:!1}),(new hs).add({keys:a,programId:this.programId,data:s})}static deactivate(t){const{stakePubkey:e,authorizedPubkey:r}=t,n=Ss(Ju.Deactivate);return(new hs).add({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:n})}}Qu.programId=new Wo("Stake11111111111111111111111111111111111111"),Qu.space=200;class tc{constructor(t,e,r,n){this.nodePubkey=void 0,this.authorizedVoter=void 0,this.authorizedWithdrawer=void 0,this.commission=void 0,this.nodePubkey=t,this.authorizedVoter=e,this.authorizedWithdrawer=r,this.commission=n}}const ec=Object.freeze({InitializeAccount:{index:0,layout:jr([Nr("instruction"),((t="voteInit")=>jr([Yo("nodePubkey"),Yo("authorizedVoter"),Yo("authorizedWithdrawer"),Ur("commission")],t))()])},Authorize:{index:1,layout:jr([Nr("instruction"),Yo("newAuthorized"),Nr("voteAuthorizationType")])},Withdraw:{index:3,layout:jr([Nr("instruction"),Dr("lamports")])},AuthorizeWithSeed:{index:10,layout:jr([Nr("instruction"),((t="voteAuthorizeWithSeedArgs")=>jr([Nr("voteAuthorizationType"),Yo("currentAuthorityDerivedKeyOwnerPubkey"),Xo("currentAuthorityDerivedKeySeed"),Yo("newAuthorized")],t))()])}}),rc=Object.freeze({Voter:{index:0},Withdrawer:{index:1}});class nc{constructor(){}static initializeAccount(t){const{votePubkey:e,nodePubkey:r,voteInit:n}=t,i=Ss(ec.InitializeAccount,{voteInit:{nodePubkey:Ro(n.nodePubkey.toBuffer()),authorizedVoter:Ro(n.authorizedVoter.toBuffer()),authorizedWithdrawer:Ro(n.authorizedWithdrawer.toBuffer()),commission:n.commission}}),o={keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ms,isSigner:!1,isWritable:!1},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}],programId:this.programId,data:i};return new cs(o)}static createAccount(t){const e=new hs;return e.add(Ts.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.votePubkey,lamports:t.lamports,space:this.space,programId:this.programId})),e.add(this.initializeAccount({votePubkey:t.votePubkey,nodePubkey:t.voteInit.nodePubkey,voteInit:t.voteInit}))}static authorize(t){const{votePubkey:e,authorizedPubkey:r,newAuthorizedPubkey:n,voteAuthorizationType:i}=t,o=Ss(ec.Authorize,{newAuthorized:Ro(n.toBuffer()),voteAuthorizationType:i.index}),s=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!1}];return(new hs).add({keys:s,programId:this.programId,data:o})}static authorizeWithSeed(t){const{currentAuthorityDerivedKeyBasePubkey:e,currentAuthorityDerivedKeyOwnerPubkey:r,currentAuthorityDerivedKeySeed:n,newAuthorizedPubkey:i,voteAuthorizationType:o,votePubkey:s}=t,a=Ss(ec.AuthorizeWithSeed,{voteAuthorizeWithSeedArgs:{currentAuthorityDerivedKeyOwnerPubkey:Ro(r.toBuffer()),currentAuthorityDerivedKeySeed:n,newAuthorized:Ro(i.toBuffer()),voteAuthorizationType:o.index}}),u=[{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:ds,isSigner:!1,isWritable:!1},{pubkey:e,isSigner:!0,isWritable:!1}];return(new hs).add({keys:u,programId:this.programId,data:a})}static withdraw(t){const{votePubkey:e,authorizedWithdrawerPubkey:r,lamports:n,toPubkey:i}=t,o=Ss(ec.Withdraw,{lamports:n}),s=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!0,isWritable:!1}];return(new hs).add({keys:s,programId:this.programId,data:o})}static safeWithdraw(t,e,r){if(t.lamports>e-r)throw new Error("Withdraw will leave vote account with insuffcient funds.");return nc.withdraw(t)}}nc.programId=new Wo("Vote111111111111111111111111111111111111111"),nc.space=3731;const ic=new Wo("Va1idator1nfo111111111111111111111111111111"),oc=gn({name:pn(),website:fn(pn()),details:fn(pn()),keybaseUsername:fn(pn())});class sc{constructor(t,e){this.key=void 0,this.info=void 0,this.key=t,this.info=e}static fromConfigData(t){let e=[...t];if(2!==ts(e))return null;const r=[];for(let t=0;t<2;t++){const t=new Wo(e.slice(0,Do));e=e.slice(Do);const n=1===e.slice(0,1)[0];e=e.slice(1),r.push({publicKey:t,isSigner:n})}if(r[0].publicKey.equals(ic)&&r[1].isSigner){const t=Xo().decode(n.Buffer.from(e)),i=JSON.parse(t);return tn(i,oc),new sc(r[1].publicKey,i)}return null}}const ac=new Wo("Vote111111111111111111111111111111111111111"),uc=jr([Yo("nodePubkey"),Yo("authorizedWithdrawer"),Ur("commission"),zr(),Wr(jr([zr("slot"),Nr("confirmationCount")]),Rr(Nr(),-8),"votes"),Ur("rootSlotValid"),zr("rootSlot"),zr(),Wr(jr([zr("epoch"),Yo("authorizedVoter")]),Rr(Nr(),-8),"authorizedVoters"),jr([Wr(jr([Yo("authorizedPubkey"),zr("epochOfLastAuthorizedSwitch"),zr("targetEpoch")]),32,"buf"),zr("idx"),Ur("isEmpty")],"priorVoters"),zr(),Wr(jr([zr("epoch"),zr("credits"),zr("prevCredits")]),Rr(Nr(),-8),"epochCredits"),jr([zr("slot"),zr("timestamp")],"lastTimestamp")]);class cc{constructor(t){this.nodePubkey=void 0,this.authorizedWithdrawer=void 0,this.commission=void 0,this.rootSlot=void 0,this.votes=void 0,this.authorizedVoters=void 0,this.priorVoters=void 0,this.epochCredits=void 0,this.lastTimestamp=void 0,this.nodePubkey=t.nodePubkey,this.authorizedWithdrawer=t.authorizedWithdrawer,this.commission=t.commission,this.rootSlot=t.rootSlot,this.votes=t.votes,this.authorizedVoters=t.authorizedVoters,this.priorVoters=t.priorVoters,this.epochCredits=t.epochCredits,this.lastTimestamp=t.lastTimestamp}static fromAccountData(t){const e=uc.decode(Ro(t),4);let r=e.rootSlot;return e.rootSlotValid||(r=null),new cc({nodePubkey:new Wo(e.nodePubkey),authorizedWithdrawer:new Wo(e.authorizedWithdrawer),commission:e.commission,votes:e.votes,rootSlot:r,authorizedVoters:e.authorizedVoters.map(hc),priorVoters:fc(e.priorVoters),epochCredits:e.epochCredits,lastTimestamp:e.lastTimestamp})}}function hc({authorizedVoter:t,epoch:e}){return{epoch:e,authorizedVoter:new Wo(t)}}function lc({authorizedPubkey:t,epochOfLastAuthorizedSwitch:e,targetEpoch:r}){return{authorizedPubkey:new Wo(t),epochOfLastAuthorizedSwitch:e,targetEpoch:r}}function fc({buf:t,idx:e,isEmpty:r}){return r?[]:[...t.slice(e+1).map(lc),...t.slice(0,e).map(lc)]}const dc={http:{devnet:"http://api.devnet.solana.com",testnet:"http://api.testnet.solana.com","mainnet-beta":"http://api.mainnet-beta.solana.com/"},https:{devnet:"https://api.devnet.solana.com",testnet:"https://api.testnet.solana.com","mainnet-beta":"https://api.mainnet-beta.solana.com/"}};var pc=Object.freeze({__proto__:null,Account:class{constructor(t){if(this._publicKey=void 0,this._secretKey=void 0,t){const e=Ro(t);if(64!==t.length)throw new Error("bad secret key size");this._publicKey=e.slice(32,64),this._secretKey=e.slice(0,32)}else this._secretKey=Ro(Bo()),this._publicKey=Ro(Po(this._secretKey))}get publicKey(){return new Wo(this._publicKey)}get secretKey(){return n.Buffer.concat([this._secretKey,this._publicKey],64)}},AddressLookupTableAccount:$s,AddressLookupTableInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(zu))if(n.index==e){r=t;break}if(!r)throw new Error("Invalid Instruction. Should be a LookupTable Instruction");return r}static decodeCreateLookupTable(t){this.checkProgramId(t.programId),this.checkKeysLength(t.keys,4);const{recentSlot:e}=As(zu.CreateLookupTable,t.data);return{authority:t.keys[1].pubkey,payer:t.keys[2].pubkey,recentSlot:Number(e)}}static decodeExtendLookupTable(t){if(this.checkProgramId(t.programId),t.keys.length<2)throw new Error(`invalid instruction; found ${t.keys.length} keys, expected at least 2`);const{addresses:e}=As(zu.ExtendLookupTable,t.data);return{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey,payer:t.keys.length>2?t.keys[2].pubkey:void 0,addresses:e.map((t=>new Wo(t)))}}static decodeCloseLookupTable(t){return this.checkProgramId(t.programId),this.checkKeysLength(t.keys,3),{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey,recipient:t.keys[2].pubkey}}static decodeFreezeLookupTable(t){return this.checkProgramId(t.programId),this.checkKeysLength(t.keys,2),{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey}}static decodeDeactivateLookupTable(t){return this.checkProgramId(t.programId),this.checkKeysLength(t.keys,2),{lookupTable:t.keys[0].pubkey,authority:t.keys[1].pubkey}}static checkProgramId(t){if(!t.equals(Du.programId))throw new Error("invalid instruction; programId is not AddressLookupTable Program")}static checkKeysLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},AddressLookupTableProgram:Du,Authorized:Gu,BLOCKHASH_CACHE_TIMEOUT_MS:3e4,BPF_LOADER_DEPRECATED_PROGRAM_ID:Fo,BPF_LOADER_PROGRAM_ID:Us,BpfLoader:class{static getMinNumSignatures(t){return Rs.getMinNumSignatures(t)}static load(t,e,r,n,i){return Rs.load(t,e,r,i,n)}},COMPUTE_BUDGET_INSTRUCTION_LAYOUTS:ju,ComputeBudgetInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Ur("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(ju))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a ComputeBudgetInstruction");return r}static decodeRequestUnits(t){this.checkProgramId(t.programId);const{units:e,additionalFee:r}=As(ju.RequestUnits,t.data);return{units:e,additionalFee:r}}static decodeRequestHeapFrame(t){this.checkProgramId(t.programId);const{bytes:e}=As(ju.RequestHeapFrame,t.data);return{bytes:e}}static decodeSetComputeUnitLimit(t){this.checkProgramId(t.programId);const{units:e}=As(ju.SetComputeUnitLimit,t.data);return{units:e}}static decodeSetComputeUnitPrice(t){this.checkProgramId(t.programId);const{microLamports:e}=As(ju.SetComputeUnitPrice,t.data);return{microLamports:e}}static checkProgramId(t){if(!t.equals(Wu.programId))throw new Error("invalid instruction; programId is not ComputeBudgetProgram")}},ComputeBudgetProgram:Wu,Connection:class{constructor(t,e){let r,n,i,o,s,a;this._commitment=void 0,this._confirmTransactionInitialTimeout=void 0,this._rpcEndpoint=void 0,this._rpcWsEndpoint=void 0,this._rpcClient=void 0,this._rpcRequest=void 0,this._rpcBatchRequest=void 0,this._rpcWebSocket=void 0,this._rpcWebSocketConnected=!1,this._rpcWebSocketHeartbeat=null,this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketGeneration=0,this._disableBlockhashCaching=!1,this._pollingBlockhash=!1,this._blockhashInfo={latestBlockhash:null,lastFetch:0,transactionSignatures:[],simulatedSignatures:[]},this._nextClientSubscriptionId=0,this._subscriptionDisposeFunctionsByClientSubscriptionId={},this._subscriptionHashByClientSubscriptionId={},this._subscriptionStateChangeCallbacksByHash={},this._subscriptionCallbacksByServerSubscriptionId={},this._subscriptionsByHash={},this._subscriptionsAutoDisposedByRpc=new Set,this.getBlockHeight=(()=>{const t={};return async e=>{const{commitment:r,config:n}=Qs(e),i=this._buildArgs([],r,void 0,n),o=js(i);return t[o]=t[o]??(async()=>{try{const t=en(await this._rpcRequest("getBlockHeight",i),ra(ln()));if("error"in t)throw new qs(t.error,"failed to get block height information");return t.result}finally{delete t[o]}})(),await t[o]}})(),e&&"string"==typeof e?this._commitment=e:e&&(this._commitment=e.commitment,this._confirmTransactionInitialTimeout=e.confirmTransactionInitialTimeout,r=e.wsEndpoint,n=e.httpHeaders,i=e.fetch,o=e.fetchMiddleware,s=e.disableRetryOnRateLimit,a=e.httpAgent),this._rpcEndpoint=function(t){if(!1===/^https?:/.test(t))throw new TypeError("Endpoint URL must start with `http:` or `https:`.");return t}(t),this._rpcWsEndpoint=r||function(t){const e=t.match(Gs);if(null==e)throw TypeError(`Failed to validate endpoint URL \`${t}\``);const[r,n,i,o]=e,s=t.startsWith("https:")?"wss:":"ws:",a=null==i?null:parseInt(i.slice(1),10);return`${s}//${n}${null==a?"":`:${a+1}`}${o}`}(t),this._rpcClient=function(t,e,r,n,i,o){const s=r||Vs;let a;null!=o&&console.warn("You have supplied an `httpAgent` when creating a `Connection` in a browser environment.It has been ignored; `httpAgent` is only used in Node environments."),n&&(a=async(t,e)=>{const r=await new Promise(((r,i)=>{try{n(t,e,((t,e)=>r([t,e])))}catch(t){i(t)}}));return await s(...r)});const u=new ei((async(r,n)=>{const o={method:"POST",body:r,agent:void 0,headers:Object.assign({"Content-Type":"application/json"},e||{},Cu)};try{let e,r=5,u=500;for(;e=a?await a(t,o):await s(t,o),429===e.status&&!0!==i&&(r-=1,0!==r);)console.log(`Server responded with ${e.status} ${e.statusText}. Retrying after ${u}ms delay...`),await Es(u),u*=2;const c=await e.text();e.ok?n(null,c):n(new Error(`${e.status} ${e.statusText}: ${c}`))}catch(t){t instanceof Error&&n(t)}}),{});return u}(t,n,i,o,s,a),this._rpcRequest=function(t){return(e,r)=>new Promise(((n,i)=>{t.request(e,r,((t,e)=>{t?i(t):n(e)}))}))}(this._rpcClient),this._rpcBatchRequest=function(t){return e=>new Promise(((r,n)=>{0===e.length&&r([]);const i=e.map((e=>t.request(e.methodName,e.args)));t.request(i,((t,e)=>{t?n(t):r(e)}))}))}(this._rpcClient),this._rpcWebSocket=new Hs(this._rpcWsEndpoint,{autoconnect:!1,max_reconnects:1/0}),this._rpcWebSocket.on("open",this._wsOnOpen.bind(this)),this._rpcWebSocket.on("error",this._wsOnError.bind(this)),this._rpcWebSocket.on("close",this._wsOnClose.bind(this)),this._rpcWebSocket.on("accountNotification",this._wsOnAccountNotification.bind(this)),this._rpcWebSocket.on("programNotification",this._wsOnProgramAccountNotification.bind(this)),this._rpcWebSocket.on("slotNotification",this._wsOnSlotNotification.bind(this)),this._rpcWebSocket.on("slotsUpdatesNotification",this._wsOnSlotUpdatesNotification.bind(this)),this._rpcWebSocket.on("signatureNotification",this._wsOnSignatureNotification.bind(this)),this._rpcWebSocket.on("rootNotification",this._wsOnRootNotification.bind(this)),this._rpcWebSocket.on("logsNotification",this._wsOnLogsNotification.bind(this))}get commitment(){return this._commitment}get rpcEndpoint(){return this._rpcEndpoint}async getBalanceAndContext(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,void 0,n),o=en(await this._rpcRequest("getBalance",i),na(ln()));if("error"in o)throw new qs(o.error,`failed to get balance for ${t.toBase58()}`);return o.result}async getBalance(t,e){return await this.getBalanceAndContext(t,e).then((t=>t.value)).catch((e=>{throw new Error("failed to get balance of account "+t.toBase58()+": "+e)}))}async getBlockTime(t){const e=en(await this._rpcRequest("getBlockTime",[t]),ra(hn(ln())));if("error"in e)throw new qs(e.error,`failed to get block time for slot ${t}`);return e.result}async getMinimumLedgerSlot(){const t=en(await this._rpcRequest("minimumLedgerSlot",[]),ra(ln()));if("error"in t)throw new qs(t.error,"failed to get minimum ledger slot");return t.result}async getFirstAvailableBlock(){const t=en(await this._rpcRequest("getFirstAvailableBlock",[]),Aa);if("error"in t)throw new qs(t.error,"failed to get first available block");return t.result}async getSupply(t){let e={};e="string"==typeof t?{commitment:t}:t?{...t,commitment:t&&t.commitment||this.commitment}:{commitment:this.commitment};const r=en(await this._rpcRequest("getSupply",[e]),xa);if("error"in r)throw new qs(r.error,"failed to get supply");return r.result}async getTokenSupply(t,e){const r=this._buildArgs([t.toBase58()],e),n=en(await this._rpcRequest("getTokenSupply",r),na(Ia));if("error"in n)throw new qs(n.error,"failed to get token supply");return n.result}async getTokenAccountBalance(t,e){const r=this._buildArgs([t.toBase58()],e),n=en(await this._rpcRequest("getTokenAccountBalance",r),na(Ia));if("error"in n)throw new qs(n.error,"failed to get token account balance");return n.result}async getTokenAccountsByOwner(t,e,r){const{commitment:n,config:i}=Qs(r);let o=[t.toBase58()];"mint"in e?o.push({mint:e.mint.toBase58()}):o.push({programId:e.programId.toBase58()});const s=this._buildArgs(o,n,"base64",i),a=en(await this._rpcRequest("getTokenAccountsByOwner",s),Ma);if("error"in a)throw new qs(a.error,`failed to get token accounts owned by account ${t.toBase58()}`);return a.result}async getParsedTokenAccountsByOwner(t,e,r){let n=[t.toBase58()];"mint"in e?n.push({mint:e.mint.toBase58()}):n.push({programId:e.programId.toBase58()});const i=this._buildArgs(n,r,"jsonParsed"),o=en(await this._rpcRequest("getTokenAccountsByOwner",i),La);if("error"in o)throw new qs(o.error,`failed to get token accounts owned by account ${t.toBase58()}`);return o.result}async getLargestAccounts(t){const e={...t,commitment:t&&t.commitment||this.commitment},r=e.filter||e.commitment?[e]:[],n=en(await this._rpcRequest("getLargestAccounts",r),Oa);if("error"in n)throw new qs(n.error,"failed to get largest accounts");return n.result}async getTokenLargestAccounts(t,e){const r=this._buildArgs([t.toBase58()],e),n=en(await this._rpcRequest("getTokenLargestAccounts",r),Ba);if("error"in n)throw new qs(n.error,"failed to get token largest accounts");return n.result}async getAccountInfoAndContext(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,"base64",n),o=en(await this._rpcRequest("getAccountInfo",i),na(hn(Ta)));if("error"in o)throw new qs(o.error,`failed to get info about account ${t.toBase58()}`);return o.result}async getParsedAccountInfo(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,"jsonParsed",n),o=en(await this._rpcRequest("getAccountInfo",i),na(hn(Ca)));if("error"in o)throw new qs(o.error,`failed to get info about account ${t.toBase58()}`);return o.result}async getAccountInfo(t,e){try{return(await this.getAccountInfoAndContext(t,e)).value}catch(e){throw new Error("failed to get info about account "+t.toBase58()+": "+e)}}async getMultipleParsedAccounts(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>t.toBase58())),o=this._buildArgs([i],r,"jsonParsed",n),s=en(await this._rpcRequest("getMultipleAccounts",o),na(sn(hn(Ca))));if("error"in s)throw new qs(s.error,`failed to get info for accounts ${i}`);return s.result}async getMultipleAccountsInfoAndContext(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>t.toBase58())),o=this._buildArgs([i],r,"base64",n),s=en(await this._rpcRequest("getMultipleAccounts",o),na(sn(hn(Ta))));if("error"in s)throw new qs(s.error,`failed to get info for accounts ${i}`);return s.result}async getMultipleAccountsInfo(t,e){return(await this.getMultipleAccountsInfoAndContext(t,e)).value}async getStakeActivation(t,e,r){const{commitment:n,config:i}=Qs(e),o=this._buildArgs([t.toBase58()],n,void 0,{...i,epoch:null!=r?r:i?.epoch}),s=en(await this._rpcRequest("getStakeActivation",o),ra(za));if("error"in s)throw new qs(s.error,`failed to get Stake Activation ${t.toBase58()}`);return s.result}async getProgramAccounts(t,e){const{commitment:r,config:n}=Qs(e),{encoding:i,...o}=n||{},s=this._buildArgs([t.toBase58()],r,i||"base64",o),a=await this._rpcRequest("getProgramAccounts",s),u=sn(Ra),c=!0===o.withContext?en(a,na(u)):en(a,ra(u));if("error"in c)throw new qs(c.error,`failed to get accounts owned by program ${t.toBase58()}`);return c.result}async getParsedProgramAccounts(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t.toBase58()],r,"jsonParsed",n),o=en(await this._rpcRequest("getProgramAccounts",i),ra(sn(Na)));if("error"in o)throw new qs(o.error,`failed to get accounts owned by program ${t.toBase58()}`);return o.result}async confirmTransaction(t,e){let r,n;if("string"==typeof t)r=t;else{const e=t;if(e.abortSignal?.aborted)return Promise.reject(e.abortSignal.reason);r=e.signature}try{n=ae.decode(r)}catch(t){throw new Error("signature must be base58 encoded: "+r)}return rs(64===n.length,"signature has invalid length"),"string"==typeof t?await this.confirmTransactionUsingLegacyTimeoutStrategy({commitment:e||this.commitment,signature:r}):"lastValidBlockHeight"in t?await this.confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:e||this.commitment,strategy:t}):await this.confirmTransactionUsingDurableNonceStrategy({commitment:e||this.commitment,strategy:t})}getCancellationPromise(t){return new Promise(((e,r)=>{null!=t&&(t.aborted?r(t.reason):t.addEventListener("abort",(()=>{r(t.reason)})))}))}getTransactionConfirmationPromise({commitment:t,signature:e}){let r,n,i=!1;const o=new Promise(((o,s)=>{try{r=this.onSignature(e,((t,e)=>{r=void 0;const n={context:e,value:t};o({__type:as.PROCESSED,response:n})}),t);const a=new Promise((t=>{null==r?t():n=this._onSubscriptionStateChange(r,(e=>{"subscribed"===e&&t()}))}));(async()=>{if(await a,i)return;const r=await this.getSignatureStatus(e);if(i)return;if(null==r)return;const{context:n,value:u}=r;if(null!=u)if(u?.err)s(u.err);else{switch(t){case"confirmed":case"single":case"singleGossip":if("processed"===u.confirmationStatus)return;break;case"finalized":case"max":case"root":if("processed"===u.confirmationStatus||"confirmed"===u.confirmationStatus)return}i=!0,o({__type:as.PROCESSED,response:{context:n,value:u}})}})()}catch(t){s(t)}}));return{abortConfirmation:()=>{n&&(n(),n=void 0),null!=r&&(this.removeSignatureListener(r),r=void 0)},confirmationPromise:o}}async confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:t,strategy:{abortSignal:e,lastValidBlockHeight:r,signature:n}}){let i=!1;const o=new Promise((e=>{const n=async()=>{try{return await this.getBlockHeight(t)}catch(t){return-1}};(async()=>{let t=await n();if(!i){for(;t<=r;){if(await Es(1e3),i)return;if(t=await n(),i)return}e({__type:as.BLOCKHEIGHT_EXCEEDED})}})()})),{abortConfirmation:s,confirmationPromise:a}=this.getTransactionConfirmationPromise({commitment:t,signature:n}),u=this.getCancellationPromise(e);let c;try{const t=await Promise.race([u,a,o]);if(t.__type!==as.PROCESSED)throw new Ho(n);c=t.response}finally{i=!0,s()}return c}async confirmTransactionUsingDurableNonceStrategy({commitment:t,strategy:{abortSignal:e,minContextSlot:r,nonceAccountPubkey:n,nonceValue:i,signature:o}}){let s=!1;const a=new Promise((e=>{let o=i,a=null;const u=async()=>{try{const{context:e,value:i}=await this.getNonceAndContext(n,{commitment:t,minContextSlot:r});return a=e.slot,i?.nonce}catch(t){return o}};(async()=>{if(o=await u(),!s)for(;;){if(i!==o)return void e({__type:as.NONCE_INVALID,slotInWhichNonceDidAdvance:a});if(await Es(2e3),s)return;if(o=await u(),s)return}})()})),{abortConfirmation:u,confirmationPromise:c}=this.getTransactionConfirmationPromise({commitment:t,signature:o}),h=this.getCancellationPromise(e);let l;try{const e=await Promise.race([h,c,a]);if(e.__type===as.PROCESSED)l=e.response;else{let n;for(;;){const t=await this.getSignatureStatus(o);if(null==t)break;if(!(t.context.slot<(e.slotInWhichNonceDidAdvance??r))){n=t;break}await Es(400)}if(!n?.value)throw new Zo(o);{const e=t||"finalized",{confirmationStatus:r}=n.value;switch(e){case"processed":case"recent":if("processed"!==r&&"confirmed"!==r&&"finalized"!==r)throw new Zo(o);break;case"confirmed":case"single":case"singleGossip":if("confirmed"!==r&&"finalized"!==r)throw new Zo(o);break;case"finalized":case"max":case"root":if("finalized"!==r)throw new Zo(o)}l={context:n.context,value:{err:n.value.err}}}}}finally{s=!0,u()}return l}async confirmTransactionUsingLegacyTimeoutStrategy({commitment:t,signature:e}){let r;const n=new Promise((e=>{let n=this._confirmTransactionInitialTimeout||6e4;switch(t){case"processed":case"recent":case"single":case"confirmed":case"singleGossip":n=this._confirmTransactionInitialTimeout||3e4}r=setTimeout((()=>e({__type:as.TIMED_OUT,timeoutMs:n})),n)})),{abortConfirmation:i,confirmationPromise:o}=this.getTransactionConfirmationPromise({commitment:t,signature:e});let s;try{const t=await Promise.race([o,n]);if(t.__type!==as.PROCESSED)throw new $o(e,t.timeoutMs/1e3);s=t.response}finally{clearTimeout(r),i()}return s}async getClusterNodes(){const t=en(await this._rpcRequest("getClusterNodes",[]),ra(sn(Ya)));if("error"in t)throw new qs(t.error,"failed to get cluster nodes");return t.result}async getVoteAccounts(t){const e=this._buildArgs([],t),r=en(await this._rpcRequest("getVoteAccounts",e),Xa);if("error"in r)throw new qs(r.error,"failed to get vote accounts");return r.result}async getSlot(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getSlot",n),ra(ln()));if("error"in i)throw new qs(i.error,"failed to get slot");return i.result}async getSlotLeader(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getSlotLeader",n),ra(pn()));if("error"in i)throw new qs(i.error,"failed to get slot leader");return i.result}async getSlotLeaders(t,e){const r=[t,e],n=en(await this._rpcRequest("getSlotLeaders",r),ra(sn(Ys)));if("error"in n)throw new qs(n.error,"failed to get slot leaders");return n.result}async getSignatureStatus(t,e){const{context:r,value:n}=await this.getSignatureStatuses([t],e);rs(1===n.length);return{context:r,value:n[0]}}async getSignatureStatuses(t,e){const r=[t];e&&r.push(e);const n=en(await this._rpcRequest("getSignatureStatuses",r),eu);if("error"in n)throw new qs(n.error,"failed to get signature status");return n.result}async getTransactionCount(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getTransactionCount",n),ra(ln()));if("error"in i)throw new qs(i.error,"failed to get transaction count");return i.result}async getTotalSupply(t){return(await this.getSupply({commitment:t,excludeNonCirculatingAccountsList:!0})).value.total}async getInflationGovernor(t){const e=this._buildArgs([],t),r=en(await this._rpcRequest("getInflationGovernor",e),ba);if("error"in r)throw new qs(r.error,"failed to get inflation");return r.result}async getInflationReward(t,e,r){const{commitment:n,config:i}=Qs(r),o=this._buildArgs([t.map((t=>t.toBase58()))],n,void 0,{...i,epoch:null!=e?e:i?.epoch}),s=en(await this._rpcRequest("getInflationReward",o),aa);if("error"in s)throw new qs(s.error,"failed to get inflation reward");return s.result}async getInflationRate(){const t=en(await this._rpcRequest("getInflationRate",[]),va);if("error"in t)throw new qs(t.error,"failed to get inflation rate");return t.result}async getEpochInfo(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getEpochInfo",n),ka);if("error"in i)throw new qs(i.error,"failed to get epoch info");return i.result}async getEpochSchedule(){const t=en(await this._rpcRequest("getEpochSchedule",[]),Ea);if("error"in t)throw new qs(t.error,"failed to get epoch schedule");const e=t.result;return new Fs(e.slotsPerEpoch,e.leaderScheduleSlotOffset,e.warmup,e.firstNormalEpoch,e.firstNormalSlot)}async getLeaderSchedule(){const t=en(await this._rpcRequest("getLeaderSchedule",[]),Sa);if("error"in t)throw new qs(t.error,"failed to get leader schedule");return t.result}async getMinimumBalanceForRentExemption(t,e){const r=this._buildArgs([t],e),n=en(await this._rpcRequest("getMinimumBalanceForRentExemption",r),ru);return"error"in n?(console.warn("Unable to fetch minimum balance for rent exemption"),0):n.result}async getRecentBlockhashAndContext(t){const e=this._buildArgs([],t),r=en(await this._rpcRequest("getRecentBlockhash",e),Iu);if("error"in r)throw new qs(r.error,"failed to get recent blockhash");return r.result}async getRecentPerformanceSamples(t){const e=en(await this._rpcRequest("getRecentPerformanceSamples",t?[t]:[]),Pu);if("error"in e)throw new qs(e.error,"failed to get recent performance samples");return e.result}async getFeeCalculatorForBlockhash(t,e){const r=this._buildArgs([t],e),n=en(await this._rpcRequest("getFeeCalculatorForBlockhash",r),Lu);if("error"in n)throw new qs(n.error,"failed to get fee calculator");const{context:i,value:o}=n.result;return{context:i,value:null!==o?o.feeCalculator:null}}async getFeeForMessage(t,e){const r=Ro(t.serialize()).toString("base64"),n=this._buildArgs([r],e),i=en(await this._rpcRequest("getFeeForMessage",n),na(hn(ln())));if("error"in i)throw new qs(i.error,"failed to get fee for message");if(null===i.result)throw new Error("invalid blockhash");return i.result}async getRecentPrioritizationFees(t){const e=t?.lockedWritableAccounts?.map((t=>t.toBase58())),r=e?.length?[e]:[],n=en(await this._rpcRequest("getRecentPrioritizationFees",r),_a);if("error"in n)throw new qs(n.error,"failed to get recent prioritization fees");return n.result}async getRecentBlockhash(t){try{return(await this.getRecentBlockhashAndContext(t)).value}catch(t){throw new Error("failed to get recent blockhash: "+t)}}async getLatestBlockhash(t){try{return(await this.getLatestBlockhashAndContext(t)).value}catch(t){throw new Error("failed to get recent blockhash: "+t)}}async getLatestBlockhashAndContext(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,void 0,r),i=en(await this._rpcRequest("getLatestBlockhash",n),Bu);if("error"in i)throw new qs(i.error,"failed to get latest blockhash");return i.result}async isBlockhashValid(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgs([t],r,void 0,n),o=en(await this._rpcRequest("isBlockhashValid",i),Mu);if("error"in o)throw new qs(o.error,"failed to determine if the blockhash `"+t+"`is valid");return o.result}async getVersion(){const t=en(await this._rpcRequest("getVersion",[]),ra(ga));if("error"in t)throw new qs(t.error,"failed to get version");return t.result}async getGenesisHash(){const t=en(await this._rpcRequest("getGenesisHash",[]),ra(pn()));if("error"in t)throw new qs(t.error,"failed to get genesis hash");return t.result}async getBlock(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,void 0,n),o=await this._rpcRequest("getBlock",i);try{switch(n?.transactionDetails){case"accounts":{const t=en(o,bu);if("error"in t)throw t.error;return t.result}case"none":{const t=en(o,wu);if("error"in t)throw t.error;return t.result}default:{const t=en(o,mu);if("error"in t)throw t.error;const{result:e}=t;return e?{...e,transactions:e.transactions.map((({transaction:t,meta:e,version:r})=>({meta:e,transaction:{...t,message:oa(r,t.message)},version:r})))}:null}}}catch(t){throw new qs(t,"failed to get confirmed block")}}async getParsedBlock(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,"jsonParsed",n),o=await this._rpcRequest("getBlock",i);try{switch(n?.transactionDetails){case"accounts":{const t=en(o,_u);if("error"in t)throw t.error;return t.result}case"none":{const t=en(o,ku);if("error"in t)throw t.error;return t.result}default:{const t=en(o,vu);if("error"in t)throw t.error;return t.result}}}catch(t){throw new qs(t,"failed to get block")}}async getBlockProduction(t){let e,r;if("string"==typeof t)r=t;else if(t){const{commitment:n,...i}=t;r=n,e=i}const n=this._buildArgs([],r,"base64",e),i=en(await this._rpcRequest("getBlockProduction",n),wa);if("error"in i)throw new qs(i.error,"failed to get block production information");return i.result}async getTransaction(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,void 0,n),o=en(await this._rpcRequest("getTransaction",i),Au);if("error"in o)throw new qs(o.error,"failed to get transaction");const s=o.result;return s?{...s,transaction:{...s.transaction,message:oa(s.version,s.transaction.message)}}:s}async getParsedTransaction(t,e){const{commitment:r,config:n}=Qs(e),i=this._buildArgsAtLeastConfirmed([t],r,"jsonParsed",n),o=en(await this._rpcRequest("getTransaction",i),xu);if("error"in o)throw new qs(o.error,"failed to get transaction");return o.result}async getParsedTransactions(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([t],r,"jsonParsed",n)})));return(await this._rpcBatchRequest(i)).map((t=>{const e=en(t,xu);if("error"in e)throw new qs(e.error,"failed to get transactions");return e.result}))}async getTransactions(t,e){const{commitment:r,config:n}=Qs(e),i=t.map((t=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([t],r,void 0,n)})));return(await this._rpcBatchRequest(i)).map((t=>{const e=en(t,Au);if("error"in e)throw new qs(e.error,"failed to get transactions");const r=e.result;return r?{...r,transaction:{...r.transaction,message:oa(r.version,r.transaction.message)}}:r}))}async getConfirmedBlock(t,e){const r=this._buildArgsAtLeastConfirmed([t],e),n=en(await this._rpcRequest("getConfirmedBlock",r),Eu);if("error"in n)throw new qs(n.error,"failed to get confirmed block");const i=n.result;if(!i)throw new Error("Confirmed block "+t+" not found");const o={...i,transactions:i.transactions.map((({transaction:t,meta:e})=>{const r=new is(t.message);return{meta:e,transaction:{...t,message:r}}}))};return{...o,transactions:o.transactions.map((({transaction:t,meta:e})=>({meta:e,transaction:hs.populate(t.message,t.signatures)})))}}async getBlocks(t,e,r){const n=this._buildArgsAtLeastConfirmed(void 0!==e?[t,e]:[t],r),i=en(await this._rpcRequest("getBlocks",n),ra(sn(ln())));if("error"in i)throw new qs(i.error,"failed to get blocks");return i.result}async getBlockSignatures(t,e){const r=this._buildArgsAtLeastConfirmed([t],e,void 0,{transactionDetails:"signatures",rewards:!1}),n=en(await this._rpcRequest("getBlock",r),Su);if("error"in n)throw new qs(n.error,"failed to get block");const i=n.result;if(!i)throw new Error("Block "+t+" not found");return i}async getConfirmedBlockSignatures(t,e){const r=this._buildArgsAtLeastConfirmed([t],e,void 0,{transactionDetails:"signatures",rewards:!1}),n=en(await this._rpcRequest("getConfirmedBlock",r),Su);if("error"in n)throw new qs(n.error,"failed to get confirmed block");const i=n.result;if(!i)throw new Error("Confirmed block "+t+" not found");return i}async getConfirmedTransaction(t,e){const r=this._buildArgsAtLeastConfirmed([t],e),n=en(await this._rpcRequest("getConfirmedTransaction",r),Au);if("error"in n)throw new qs(n.error,"failed to get transaction");const i=n.result;if(!i)return i;const o=new is(i.transaction.message),s=i.transaction.signatures;return{...i,transaction:hs.populate(o,s)}}async getParsedConfirmedTransaction(t,e){const r=this._buildArgsAtLeastConfirmed([t],e,"jsonParsed"),n=en(await this._rpcRequest("getConfirmedTransaction",r),xu);if("error"in n)throw new qs(n.error,"failed to get confirmed transaction");return n.result}async getParsedConfirmedTransactions(t,e){const r=t.map((t=>({methodName:"getConfirmedTransaction",args:this._buildArgsAtLeastConfirmed([t],e,"jsonParsed")})));return(await this._rpcBatchRequest(r)).map((t=>{const e=en(t,xu);if("error"in e)throw new qs(e.error,"failed to get confirmed transactions");return e.result}))}async getConfirmedSignaturesForAddress(t,e,r){let n={},i=await this.getFirstAvailableBlock();for(;!("until"in n)&&!(--e<=0||e<i);)try{const t=await this.getConfirmedBlockSignatures(e,"finalized");t.signatures.length>0&&(n.until=t.signatures[t.signatures.length-1].toString())}catch(t){if(t instanceof Error&&t.message.includes("skipped"))continue;throw t}let o=await this.getSlot("finalized");for(;!("before"in n||++r>o);)try{const t=await this.getConfirmedBlockSignatures(r);t.signatures.length>0&&(n.before=t.signatures[t.signatures.length-1].toString())}catch(t){if(t instanceof Error&&t.message.includes("skipped"))continue;throw t}return(await this.getConfirmedSignaturesForAddress2(t,n)).map((t=>t.signature))}async getConfirmedSignaturesForAddress2(t,e,r){const n=this._buildArgsAtLeastConfirmed([t.toBase58()],r,void 0,e),i=en(await this._rpcRequest("getConfirmedSignaturesForAddress2",n),Da);if("error"in i)throw new qs(i.error,"failed to get confirmed signatures for address");return i.result}async getSignaturesForAddress(t,e,r){const n=this._buildArgsAtLeastConfirmed([t.toBase58()],r,void 0,e),i=en(await this._rpcRequest("getSignaturesForAddress",n),ja);if("error"in i)throw new qs(i.error,"failed to get signatures for address");return i.result}async getAddressLookupTable(t,e){const{context:r,value:n}=await this.getAccountInfoAndContext(t,e);let i=null;return null!==n&&(i=new $s({key:t,state:$s.deserialize(n.data)})),{context:r,value:i}}async getNonceAndContext(t,e){const{context:r,value:n}=await this.getAccountInfoAndContext(t,e);let i=null;return null!==n&&(i=Ms.fromAccountData(n.data)),{context:r,value:i}}async getNonce(t,e){return await this.getNonceAndContext(t,e).then((t=>t.value)).catch((e=>{throw new Error("failed to get nonce for account "+t.toBase58()+": "+e)}))}async requestAirdrop(t,e){const r=en(await this._rpcRequest("requestAirdrop",[t.toBase58(),e]),Ou);if("error"in r)throw new qs(r.error,`airdrop to ${t.toBase58()} failed`);return r.result}async _blockhashWithExpiryBlockHeight(t){if(!t){for(;this._pollingBlockhash;)await Es(100);const t=Date.now()-this._blockhashInfo.lastFetch>=3e4;if(null!==this._blockhashInfo.latestBlockhash&&!t)return this._blockhashInfo.latestBlockhash}return await this._pollNewBlockhash()}async _pollNewBlockhash(){this._pollingBlockhash=!0;try{const t=Date.now(),e=this._blockhashInfo.latestBlockhash,r=e?e.blockhash:null;for(let t=0;t<50;t++){const t=await this.getLatestBlockhash("finalized");if(r!==t.blockhash)return this._blockhashInfo={latestBlockhash:t,lastFetch:Date.now(),transactionSignatures:[],simulatedSignatures:[]},t;await Es(200)}throw new Error(`Unable to obtain a new blockhash after ${Date.now()-t}ms`)}finally{this._pollingBlockhash=!1}}async getStakeMinimumDelegation(t){const{commitment:e,config:r}=Qs(t),n=this._buildArgs([],e,"base64",r),i=en(await this._rpcRequest("getStakeMinimumDelegation",n),na(ln()));if("error"in i)throw new qs(i.error,"failed to get stake minimum delegation");return i.result}async simulateTransaction(t,e,r){if("message"in t){const i=t.serialize(),o=n.Buffer.from(i).toString("base64");if(Array.isArray(e)||void 0!==r)throw new Error("Invalid arguments");const s=e||{};s.encoding="base64","commitment"in s||(s.commitment=this.commitment);const a=[o,s],u=en(await this._rpcRequest("simulateTransaction",a),ma);if("error"in u)throw new Error("failed to simulate transaction: "+u.error.message);return u.result}let i;if(t instanceof hs){let e=t;i=new hs,i.feePayer=e.feePayer,i.instructions=t.instructions,i.nonceInfo=e.nonceInfo,i.signatures=e.signatures}else i=hs.populate(t),i._message=i._json=void 0;if(void 0!==e&&!Array.isArray(e))throw new Error("Invalid arguments");const o=e;if(i.nonceInfo&&o)i.sign(...o);else{let t=this._disableBlockhashCaching;for(;;){const e=await this._blockhashWithExpiryBlockHeight(t);if(i.lastValidBlockHeight=e.lastValidBlockHeight,i.recentBlockhash=e.blockhash,!o)break;if(i.sign(...o),!i.signature)throw new Error("!signature");const r=i.signature.toString("base64");if(!this._blockhashInfo.simulatedSignatures.includes(r)&&!this._blockhashInfo.transactionSignatures.includes(r)){this._blockhashInfo.simulatedSignatures.push(r);break}t=!0}}const s=i._compile(),a=s.serialize(),u=i._serialize(a).toString("base64"),c={encoding:"base64",commitment:this.commitment};if(r){const t=(Array.isArray(r)?r:s.nonProgramIds()).map((t=>t.toBase58()));c.accounts={encoding:"base64",addresses:t}}o&&(c.sigVerify=!0);const h=[u,c],l=en(await this._rpcRequest("simulateTransaction",h),ma);if("error"in l){let t;if("data"in l.error&&(t=l.error.data.logs,t&&Array.isArray(t))){const e="\n ",r=e+t.join(e);console.error(l.error.message,r)}throw new Ks("failed to simulate transaction: "+l.error.message,t)}return l.result}async sendTransaction(t,e,r){if("version"in t){if(e&&Array.isArray(e))throw new Error("Invalid arguments");const r=t.serialize();return await this.sendRawTransaction(r,e)}if(void 0===e||!Array.isArray(e))throw new Error("Invalid arguments");const n=e;if(t.nonceInfo)t.sign(...n);else{let e=this._disableBlockhashCaching;for(;;){const r=await this._blockhashWithExpiryBlockHeight(e);if(t.lastValidBlockHeight=r.lastValidBlockHeight,t.recentBlockhash=r.blockhash,t.sign(...n),!t.signature)throw new Error("!signature");const i=t.signature.toString("base64");if(!this._blockhashInfo.transactionSignatures.includes(i)){this._blockhashInfo.transactionSignatures.push(i);break}e=!0}}const i=t.serialize();return await this.sendRawTransaction(i,r)}async sendRawTransaction(t,e){const r=Ro(t).toString("base64");return await this.sendEncodedTransaction(r,e)}async sendEncodedTransaction(t,e){const r={encoding:"base64"},n=e&&e.skipPreflight,i=e&&e.preflightCommitment||this.commitment;e&&null!=e.maxRetries&&(r.maxRetries=e.maxRetries),e&&null!=e.minContextSlot&&(r.minContextSlot=e.minContextSlot),n&&(r.skipPreflight=n),i&&(r.preflightCommitment=i);const o=[t,r],s=en(await this._rpcRequest("sendTransaction",o),Tu);if("error"in s){let t;throw"data"in s.error&&(t=s.error.data.logs),new Ks("failed to send transaction: "+s.error.message,t)}return s.result}_wsOnOpen(){this._rpcWebSocketConnected=!0,this._rpcWebSocketHeartbeat=setInterval((()=>{(async()=>{try{await this._rpcWebSocket.notify("ping")}catch{}})()}),5e3),this._updateSubscriptions()}_wsOnError(t){this._rpcWebSocketConnected=!1,console.error("ws error:",t.message)}_wsOnClose(t){this._rpcWebSocketConnected=!1,this._rpcWebSocketGeneration=(this._rpcWebSocketGeneration+1)%Number.MAX_SAFE_INTEGER,this._rpcWebSocketIdleTimeout&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null),this._rpcWebSocketHeartbeat&&(clearInterval(this._rpcWebSocketHeartbeat),this._rpcWebSocketHeartbeat=null),1e3!==t?(this._subscriptionCallbacksByServerSubscriptionId={},Object.entries(this._subscriptionsByHash).forEach((([t,e])=>{this._setSubscription(t,{...e,state:"pending"})}))):this._updateSubscriptions()}_setSubscription(t,e){const r=this._subscriptionsByHash[t]?.state;if(this._subscriptionsByHash[t]=e,r!==e.state){const r=this._subscriptionStateChangeCallbacksByHash[t];r&&r.forEach((t=>{try{t(e.state)}catch{}}))}}_onSubscriptionStateChange(t,e){const r=this._subscriptionHashByClientSubscriptionId[t];if(null==r)return()=>{};const n=this._subscriptionStateChangeCallbacksByHash[r]||=new Set;return n.add(e),()=>{n.delete(e),0===n.size&&delete this._subscriptionStateChangeCallbacksByHash[r]}}async _updateSubscriptions(){if(0===Object.keys(this._subscriptionsByHash).length)return void(this._rpcWebSocketConnected&&(this._rpcWebSocketConnected=!1,this._rpcWebSocketIdleTimeout=setTimeout((()=>{this._rpcWebSocketIdleTimeout=null;try{this._rpcWebSocket.close()}catch(t){t instanceof Error&&console.log(`Error when closing socket connection: ${t.message}`)}}),500)));if(null!==this._rpcWebSocketIdleTimeout&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketConnected=!0),!this._rpcWebSocketConnected)return void this._rpcWebSocket.connect();const t=this._rpcWebSocketGeneration,e=()=>t===this._rpcWebSocketGeneration;await Promise.all(Object.keys(this._subscriptionsByHash).map((async t=>{const r=this._subscriptionsByHash[t];if(void 0!==r)switch(r.state){case"pending":case"unsubscribed":if(0===r.callbacks.size)return delete this._subscriptionsByHash[t],"unsubscribed"===r.state&&delete this._subscriptionCallbacksByServerSubscriptionId[r.serverSubscriptionId],void await this._updateSubscriptions();await(async()=>{const{args:n,method:i}=r;try{this._setSubscription(t,{...r,state:"subscribing"});const e=await this._rpcWebSocket.call(i,n);this._setSubscription(t,{...r,serverSubscriptionId:e,state:"subscribed"}),this._subscriptionCallbacksByServerSubscriptionId[e]=r.callbacks,await this._updateSubscriptions()}catch(o){if(o instanceof Error&&console.error(`${i} error for argument`,n,o.message),!e())return;this._setSubscription(t,{...r,state:"pending"}),await this._updateSubscriptions()}})();break;case"subscribed":0===r.callbacks.size&&await(async()=>{const{serverSubscriptionId:n,unsubscribeMethod:i}=r;if(this._subscriptionsAutoDisposedByRpc.has(n))this._subscriptionsAutoDisposedByRpc.delete(n);else{this._setSubscription(t,{...r,state:"unsubscribing"}),this._setSubscription(t,{...r,state:"unsubscribing"});try{await this._rpcWebSocket.call(i,[n])}catch(n){if(n instanceof Error&&console.error(`${i} error:`,n.message),!e())return;return this._setSubscription(t,{...r,state:"subscribed"}),void await this._updateSubscriptions()}}this._setSubscription(t,{...r,state:"unsubscribed"}),await this._updateSubscriptions()})()}})))}_handleServerNotification(t,e){const r=this._subscriptionCallbacksByServerSubscriptionId[t];void 0!==r&&r.forEach((t=>{try{t(...e)}catch(t){console.error(t)}}))}_wsOnAccountNotification(t){const{result:e,subscription:r}=en(t,Wa);this._handleServerNotification(r,[e.value,e.context])}_makeSubscription(t,e){const r=this._nextClientSubscriptionId++,n=js([t.method,e],!0),i=this._subscriptionsByHash[n];return void 0===i?this._subscriptionsByHash[n]={...t,args:e,callbacks:new Set([t.callback]),state:"pending"}:i.callbacks.add(t.callback),this._subscriptionHashByClientSubscriptionId[r]=n,this._subscriptionDisposeFunctionsByClientSubscriptionId[r]=async()=>{delete this._subscriptionDisposeFunctionsByClientSubscriptionId[r],delete this._subscriptionHashByClientSubscriptionId[r];const e=this._subscriptionsByHash[n];rs(void 0!==e,`Could not find a \`Subscription\` when tearing down client subscription #${r}`),e.callbacks.delete(t.callback),await this._updateSubscriptions()},this._updateSubscriptions(),r}onAccountChange(t,e,r){const n=this._buildArgs([t.toBase58()],r||this._commitment||"finalized","base64");return this._makeSubscription({callback:e,method:"accountSubscribe",unsubscribeMethod:"accountUnsubscribe"},n)}async removeAccountChangeListener(t){await this._unsubscribeClientSubscription(t,"account change")}_wsOnProgramAccountNotification(t){const{result:e,subscription:r}=en(t,Ka);this._handleServerNotification(r,[{accountId:e.value.pubkey,accountInfo:e.value.account},e.context])}onProgramAccountChange(t,e,r,n){const i=this._buildArgs([t.toBase58()],r||this._commitment||"finalized","base64",n?{filters:n}:void 0);return this._makeSubscription({callback:e,method:"programSubscribe",unsubscribeMethod:"programUnsubscribe"},i)}async removeProgramAccountChangeListener(t){await this._unsubscribeClientSubscription(t,"program account change")}onLogs(t,e,r){const n=this._buildArgs(["object"==typeof t?{mentions:[t.toString()]}:t],r||this._commitment||"finalized");return this._makeSubscription({callback:e,method:"logsSubscribe",unsubscribeMethod:"logsUnsubscribe"},n)}async removeOnLogsListener(t){await this._unsubscribeClientSubscription(t,"logs")}_wsOnLogsNotification(t){const{result:e,subscription:r}=en(t,Uu);this._handleServerNotification(r,[e.value,e.context])}_wsOnSlotNotification(t){const{result:e,subscription:r}=en(t,Va);this._handleServerNotification(r,[e])}onSlotChange(t){return this._makeSubscription({callback:t,method:"slotSubscribe",unsubscribeMethod:"slotUnsubscribe"},[])}async removeSlotChangeListener(t){await this._unsubscribeClientSubscription(t,"slot change")}_wsOnSlotUpdatesNotification(t){const{result:e,subscription:r}=en(t,$a);this._handleServerNotification(r,[e])}onSlotUpdate(t){return this._makeSubscription({callback:t,method:"slotsUpdatesSubscribe",unsubscribeMethod:"slotsUpdatesUnsubscribe"},[])}async removeSlotUpdateListener(t){await this._unsubscribeClientSubscription(t,"slot update")}async _unsubscribeClientSubscription(t,e){const r=this._subscriptionDisposeFunctionsByClientSubscriptionId[t];r?await r():console.warn(`Ignored unsubscribe request because an active subscription with id \`${t}\` for '${e}' events could not be found.`)}_buildArgs(t,e,r,n){const i=e||this._commitment;if(i||r||n){let e={};r&&(e.encoding=r),i&&(e.commitment=i),n&&(e=Object.assign(e,n)),t.push(e)}return t}_buildArgsAtLeastConfirmed(t,e,r,n){const i=e||this._commitment;if(i&&!["confirmed","finalized"].includes(i))throw new Error("Using Connection with default commitment: `"+this._commitment+"`, but method requires at least `confirmed`");return this._buildArgs(t,e,r,n)}_wsOnSignatureNotification(t){const{result:e,subscription:r}=en(t,Za);"receivedSignature"!==e.value&&this._subscriptionsAutoDisposedByRpc.add(r),this._handleServerNotification(r,"receivedSignature"===e.value?[{type:"received"},e.context]:[{type:"status",result:e.value},e.context])}onSignature(t,e,r){const n=this._buildArgs([t],r||this._commitment||"finalized"),i=this._makeSubscription({callback:(t,r)=>{if("status"===t.type){e(t.result,r);try{this.removeSignatureListener(i)}catch(t){}}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},n);return i}onSignatureWithOptions(t,e,r){const{commitment:n,...i}={...r,commitment:r&&r.commitment||this._commitment||"finalized"},o=this._buildArgs([t],n,void 0,i),s=this._makeSubscription({callback:(t,r)=>{e(t,r);try{this.removeSignatureListener(s)}catch(t){}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},o);return s}async removeSignatureListener(t){await this._unsubscribeClientSubscription(t,"signature result")}_wsOnRootNotification(t){const{result:e,subscription:r}=en(t,Ga);this._handleServerNotification(r,[e])}onRootChange(t){return this._makeSubscription({callback:t,method:"rootSubscribe",unsubscribeMethod:"rootUnsubscribe"},[])}async removeRootChangeListener(t){await this._unsubscribeClientSubscription(t,"root change")}},Ed25519Program:Ku,Enum:class extends Uo{constructor(t){if(super(t),this.enum="",1!==Object.keys(t).length)throw new Error("Enum can only take single value");Object.keys(t).map((t=>{this.enum=t}))}},EpochSchedule:Fs,FeeCalculatorLayout:xs,Keypair:Nu,LAMPORTS_PER_SOL:1e9,LOOKUP_TABLE_INSTRUCTION_LAYOUTS:zu,Loader:Rs,Lockup:Yu,MAX_SEED_LENGTH:32,Message:is,MessageAccountKeys:Go,MessageV0:os,NONCE_ACCOUNT_LENGTH:Bs,NonceAccount:Ms,PACKET_DATA_SIZE:Ko,PUBLIC_KEY_LENGTH:Do,PublicKey:Wo,SIGNATURE_LENGTH_IN_BYTES:Vo,SOLANA_SCHEMA:Co,STAKE_CONFIG_ID:Zu,STAKE_INSTRUCTION_LAYOUTS:Ju,SYSTEM_INSTRUCTION_LAYOUTS:Os,SYSVAR_CLOCK_PUBKEY:ds,SYSVAR_EPOCH_SCHEDULE_PUBKEY:ps,SYSVAR_INSTRUCTIONS_PUBKEY:ys,SYSVAR_RECENT_BLOCKHASHES_PUBKEY:gs,SYSVAR_RENT_PUBKEY:ms,SYSVAR_REWARDS_PUBKEY:ws,SYSVAR_SLOT_HASHES_PUBKEY:bs,SYSVAR_SLOT_HISTORY_PUBKEY:vs,SYSVAR_STAKE_HISTORY_PUBKEY:_s,Secp256k1Program:Hu,SendTransactionError:Ks,SolanaJSONRPCError:qs,SolanaJSONRPCErrorCode:{JSON_RPC_SERVER_ERROR_BLOCK_CLEANED_UP:-32001,JSON_RPC_SERVER_ERROR_SEND_TRANSACTION_PREFLIGHT_FAILURE:-32002,JSON_RPC_SERVER_ERROR_TRANSACTION_SIGNATURE_VERIFICATION_FAILURE:-32003,JSON_RPC_SERVER_ERROR_BLOCK_NOT_AVAILABLE:-32004,JSON_RPC_SERVER_ERROR_NODE_UNHEALTHY:-32005,JSON_RPC_SERVER_ERROR_TRANSACTION_PRECOMPILE_VERIFICATION_FAILURE:-32006,JSON_RPC_SERVER_ERROR_SLOT_SKIPPED:-32007,JSON_RPC_SERVER_ERROR_NO_SNAPSHOT:-32008,JSON_RPC_SERVER_ERROR_LONG_TERM_STORAGE_SLOT_SKIPPED:-32009,JSON_RPC_SERVER_ERROR_KEY_EXCLUDED_FROM_SECONDARY_INDEX:-32010,JSON_RPC_SERVER_ERROR_TRANSACTION_HISTORY_NOT_AVAILABLE:-32011,JSON_RPC_SCAN_ERROR:-32012,JSON_RPC_SERVER_ERROR_TRANSACTION_SIGNATURE_LEN_MISMATCH:-32013,JSON_RPC_SERVER_ERROR_BLOCK_STATUS_NOT_AVAILABLE_YET:-32014,JSON_RPC_SERVER_ERROR_UNSUPPORTED_TRANSACTION_VERSION:-32015,JSON_RPC_SERVER_ERROR_MIN_CONTEXT_SLOT_NOT_REACHED:-32016},StakeAuthorizationLayout:Xu,StakeInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(Ju))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a StakeInstruction");return r}static decodeInitialize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{authorized:e,lockup:r}=As(Ju.Initialize,t.data);return{stakePubkey:t.keys[0].pubkey,authorized:new Gu(new Wo(e.staker),new Wo(e.withdrawer)),lockup:new Yu(r.unixTimestamp,r.epoch,new Wo(r.custodian))}}static decodeDelegate(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,6),As(Ju.Delegate,t.data),{stakePubkey:t.keys[0].pubkey,votePubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[5].pubkey}}static decodeAuthorize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{newAuthorized:e,stakeAuthorizationType:r}=As(Ju.Authorize,t.data),n={stakePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey,newAuthorizedPubkey:new Wo(e),stakeAuthorizationType:{index:r}};return t.keys.length>3&&(n.custodianPubkey=t.keys[3].pubkey),n}static decodeAuthorizeWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{newAuthorized:e,stakeAuthorizationType:r,authoritySeed:n,authorityOwner:i}=As(Ju.AuthorizeWithSeed,t.data),o={stakePubkey:t.keys[0].pubkey,authorityBase:t.keys[1].pubkey,authoritySeed:n,authorityOwner:new Wo(i),newAuthorizedPubkey:new Wo(e),stakeAuthorizationType:{index:r}};return t.keys.length>3&&(o.custodianPubkey=t.keys[3].pubkey),o}static decodeSplit(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{lamports:e}=As(Ju.Split,t.data);return{stakePubkey:t.keys[0].pubkey,splitStakePubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[2].pubkey,lamports:e}}static decodeMerge(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3),As(Ju.Merge,t.data),{stakePubkey:t.keys[0].pubkey,sourceStakePubKey:t.keys[1].pubkey,authorizedPubkey:t.keys[4].pubkey}}static decodeWithdraw(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,5);const{lamports:e}=As(Ju.Withdraw,t.data),r={stakePubkey:t.keys[0].pubkey,toPubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[4].pubkey,lamports:e};return t.keys.length>5&&(r.custodianPubkey=t.keys[5].pubkey),r}static decodeDeactivate(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3),As(Ju.Deactivate,t.data),{stakePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey}}static checkProgramId(t){if(!t.equals(Qu.programId))throw new Error("invalid instruction; programId is not StakeProgram")}static checkKeyLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},StakeProgram:Qu,Struct:Uo,SystemInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(Os))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a SystemInstruction");return r}static decodeCreateAccount(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{lamports:e,space:r,programId:n}=As(Os.Create,t.data);return{fromPubkey:t.keys[0].pubkey,newAccountPubkey:t.keys[1].pubkey,lamports:e,space:r,programId:new Wo(n)}}static decodeTransfer(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{lamports:e}=As(Os.Transfer,t.data);return{fromPubkey:t.keys[0].pubkey,toPubkey:t.keys[1].pubkey,lamports:e}}static decodeTransferWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{lamports:e,seed:r,programId:n}=As(Os.TransferWithSeed,t.data);return{fromPubkey:t.keys[0].pubkey,basePubkey:t.keys[1].pubkey,toPubkey:t.keys[2].pubkey,lamports:e,seed:r,programId:new Wo(n)}}static decodeAllocate(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{space:e}=As(Os.Allocate,t.data);return{accountPubkey:t.keys[0].pubkey,space:e}}static decodeAllocateWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{base:e,seed:r,space:n,programId:i}=As(Os.AllocateWithSeed,t.data);return{accountPubkey:t.keys[0].pubkey,basePubkey:new Wo(e),seed:r,space:n,programId:new Wo(i)}}static decodeAssign(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{programId:e}=As(Os.Assign,t.data);return{accountPubkey:t.keys[0].pubkey,programId:new Wo(e)}}static decodeAssignWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,1);const{base:e,seed:r,programId:n}=As(Os.AssignWithSeed,t.data);return{accountPubkey:t.keys[0].pubkey,basePubkey:new Wo(e),seed:r,programId:new Wo(n)}}static decodeCreateWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{base:e,seed:r,lamports:n,space:i,programId:o}=As(Os.CreateWithSeed,t.data);return{fromPubkey:t.keys[0].pubkey,newAccountPubkey:t.keys[1].pubkey,basePubkey:new Wo(e),seed:r,lamports:n,space:i,programId:new Wo(o)}}static decodeNonceInitialize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{authorized:e}=As(Os.InitializeNonceAccount,t.data);return{noncePubkey:t.keys[0].pubkey,authorizedPubkey:new Wo(e)}}static decodeNonceAdvance(t){return this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3),As(Os.AdvanceNonceAccount,t.data),{noncePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey}}static decodeNonceWithdraw(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,5);const{lamports:e}=As(Os.WithdrawNonceAccount,t.data);return{noncePubkey:t.keys[0].pubkey,toPubkey:t.keys[1].pubkey,authorizedPubkey:t.keys[4].pubkey,lamports:e}}static decodeNonceAuthorize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,2);const{authorized:e}=As(Os.AuthorizeNonceAccount,t.data);return{noncePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[1].pubkey,newAuthorizedPubkey:new Wo(e)}}static checkProgramId(t){if(!t.equals(Ts.programId))throw new Error("invalid instruction; programId is not SystemProgram")}static checkKeyLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},SystemProgram:Ts,Transaction:hs,TransactionExpiredBlockheightExceededError:Ho,TransactionExpiredNonceInvalidError:Zo,TransactionExpiredTimeoutError:$o,TransactionInstruction:cs,TransactionMessage:ls,TransactionStatus:as,VALIDATOR_INFO_KEY:ic,VERSION_PREFIX_MASK:qo,VOTE_PROGRAM_ID:ac,ValidatorInfo:sc,VersionedMessage:ss,VersionedTransaction:fs,VoteAccount:cc,VoteAuthorizationLayout:rc,VoteInit:tc,VoteInstruction:class{constructor(){}static decodeInstructionType(t){this.checkProgramId(t.programId);const e=Nr("instruction").decode(t.data);let r;for(const[t,n]of Object.entries(ec))if(n.index==e){r=t;break}if(!r)throw new Error("Instruction type incorrect; not a VoteInstruction");return r}static decodeInitializeAccount(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,4);const{voteInit:e}=As(ec.InitializeAccount,t.data);return{votePubkey:t.keys[0].pubkey,nodePubkey:t.keys[3].pubkey,voteInit:new tc(new Wo(e.nodePubkey),new Wo(e.authorizedVoter),new Wo(e.authorizedWithdrawer),e.commission)}}static decodeAuthorize(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{newAuthorized:e,voteAuthorizationType:r}=As(ec.Authorize,t.data);return{votePubkey:t.keys[0].pubkey,authorizedPubkey:t.keys[2].pubkey,newAuthorizedPubkey:new Wo(e),voteAuthorizationType:{index:r}}}static decodeAuthorizeWithSeed(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{voteAuthorizeWithSeedArgs:{currentAuthorityDerivedKeyOwnerPubkey:e,currentAuthorityDerivedKeySeed:r,newAuthorized:n,voteAuthorizationType:i}}=As(ec.AuthorizeWithSeed,t.data);return{currentAuthorityDerivedKeyBasePubkey:t.keys[2].pubkey,currentAuthorityDerivedKeyOwnerPubkey:new Wo(e),currentAuthorityDerivedKeySeed:r,newAuthorizedPubkey:new Wo(n),voteAuthorizationType:{index:i},votePubkey:t.keys[0].pubkey}}static decodeWithdraw(t){this.checkProgramId(t.programId),this.checkKeyLength(t.keys,3);const{lamports:e}=As(ec.Withdraw,t.data);return{votePubkey:t.keys[0].pubkey,authorizedWithdrawerPubkey:t.keys[2].pubkey,lamports:e,toPubkey:t.keys[1].pubkey}}static checkProgramId(t){if(!t.equals(nc.programId))throw new Error("invalid instruction; programId is not VoteProgram")}static checkKeyLength(t,e){if(t.length<e)throw new Error(`invalid instruction; found ${t.length} keys, expected at least ${e}`)}},VoteProgram:nc,clusterApiUrl:function(t,e){const r=!1===e?"http":"https";if(!t)return dc[r].devnet;const n=dc[r][t];if(!n)throw new Error(`Unknown ${r} cluster: ${t}`);return n},sendAndConfirmRawTransaction:async function(t,e,r,n){let i,o;r&&Object.prototype.hasOwnProperty.call(r,"lastValidBlockHeight")||r&&Object.prototype.hasOwnProperty.call(r,"nonceValue")?(i=r,o=n):o=r;const s=o&&{skipPreflight:o.skipPreflight,preflightCommitment:o.preflightCommitment||o.commitment,minContextSlot:o.minContextSlot},a=await t.sendRawTransaction(e,s),u=o&&o.commitment,c=i?t.confirmTransaction(i,u):t.confirmTransaction(a,u),h=(await c).value;if(h.err)throw new Error(`Raw transaction ${a} failed (${JSON.stringify(h)})`);return a},sendAndConfirmTransaction:ks});const yc=new Wo("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");new Wo("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb");const gc=new Wo("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");new Wo("So11111111111111111111111111111111111111112"),new Wo("9pan9bMn5HatX4EJdBwg9VgCa7Uz5HL8N1m5D3NdXejP");const mc=t=>({decode:t.decode.bind(t),encode:t.encode.bind(t)}),wc=(t=>e=>{const r=Fr(t,e),{encode:n,decode:i}=mc(r),o=r;return o.decode=(t,e)=>{const r=i(t,e);return qr(Buffer.from(r))},o.encode=(e,r,i)=>{const o=Hr(e,t);return n(o,r,i)},o})(8),bc=t=>{const e=Ur(t),{encode:r,decode:n}=mc(e),i=e;return i.decode=(t,e)=>!!n(t,e),i.encode=(t,e,n)=>{const i=Number(t);return r(i,e,n)},i},vc=t=>{const e=Fr(32,t),{encode:r,decode:n}=mc(e),i=e;return i.decode=(t,e)=>{const r=n(t,e);return new Wo(r)},i.encode=(t,e,n)=>{const i=t.toBuffer();return r(i,e,n)},i};class _c extends Error{constructor(t){super(t)}}class kc extends _c{constructor(){super(...arguments),this.name="TokenAccountNotFoundError"}}class Ec extends _c{constructor(){super(...arguments),this.name="TokenInvalidAccountOwnerError"}}class Sc extends _c{constructor(){super(...arguments),this.name="TokenInvalidAccountSizeError"}}class Ac extends _c{constructor(){super(...arguments),this.name="TokenInvalidMintError"}}class xc extends _c{constructor(){super(...arguments),this.name="TokenOwnerOffCurveError"}}var Ic;!function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Mint=1]="Mint",t[t.Account=2]="Account"}(Ic||(Ic={}));const Bc=1,Mc=jr([Ur("m"),Ur("n"),bc("isInitialized"),vc("signer1"),vc("signer2"),vc("signer3"),vc("signer4"),vc("signer5"),vc("signer6"),vc("signer7"),vc("signer8"),vc("signer9"),vc("signer10"),vc("signer11")]).span;var Pc;!function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Initialized=1]="Initialized",t[t.Frozen=2]="Frozen"}(Pc||(Pc={}));const Lc=jr([vc("mint"),vc("owner"),wc("amount"),Nr("delegateOption"),vc("delegate"),Ur("state"),Nr("isNativeOption"),wc("isNative"),wc("delegatedAmount"),Nr("closeAuthorityOption"),vc("closeAuthority")]),Oc=Lc.span,Tc=jr([Nr("mintAuthorityOption"),vc("mintAuthority"),wc("supply"),Ur("decimals"),bc("isInitialized"),Nr("freezeAuthorityOption"),vc("freezeAuthority")]),Rc=Tc.span;async function Uc(t,e,r,n=yc){return function(t,e,r=yc){if(!e)throw new kc;if(!e.owner.equals(r))throw new Ec;if(e.data.length<Rc)throw new Sc;const n=Tc.decode(e.data.slice(0,Rc));let i=Buffer.alloc(0);if(e.data.length>Rc){if(e.data.length<=Oc)throw new Sc;if(e.data.length===Mc)throw new Sc;if(e.data[Oc]!=Ic.Mint)throw new Ac;i=e.data.slice(Oc+Bc)}return{address:t,mintAuthority:n.mintAuthorityOption?n.mintAuthority:null,supply:n.supply,decimals:n.decimals,isInitialized:n.isInitialized,freezeAuthority:n.freezeAuthorityOption?n.freezeAuthority:null,tlvData:i}}(e,await t.getAccountInfo(e,r),n)}function Cc(t,e,r=!1,n=yc,i=gc){if(!r&&!Wo.isOnCurve(e.toBuffer()))throw new xc;const[o]=Wo.findProgramAddressSync([e.toBuffer(),n.toBuffer(),t.toBuffer()],i);return o}function Nc(t,e,r,n,i=yc,o=gc){return function(t,e,r,n,i,o=yc,s=gc){const a=[{pubkey:t,isSigner:!0,isWritable:!0},{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:Ts.programId,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!1,isWritable:!1}];return new cs({keys:a,programId:s,data:i})}(t,e,r,n,Buffer.alloc(0),i,o)}var zc;!function(t){t.SymbolNotFound="SymbolNotFound",t.InvalidSubdomain="InvalidSubdomain",t.FavouriteDomainNotFound="FavouriteDomainNotFound",t.MissingParentOwner="MissingParentOwner",t.U32Overflow="U32Overflow",t.InvalidBufferLength="InvalidBufferLength",t.U64Overflow="U64Overflow",t.NoRecordData="NoRecordData",t.InvalidRecordData="InvalidRecordData",t.UnsupportedRecord="UnsupportedRecord",t.InvalidEvmAddress="InvalidEvmAddress",t.InvalidInjectiveAddress="InvalidInjectiveAddress",t.InvalidARecord="InvalidARecord",t.InvalidAAAARecord="InvalidAAAARecord",t.InvalidRecordInput="InvalidRecordInput",t.InvalidSignature="InvalidSignature",t.AccountDoesNotExist="AccountDoesNotExist",t.MultipleRegistries="MultipleRegistries",t.InvalidReverseTwitter="InvalidReverseTwitter",t.NoAccountData="NoAccountData",t.InvalidInput="InvalidInput",t.InvalidDomain="InvalidDomain",t.InvalidCustomBg="InvalidCustomBackground",t.UnsupportedSignature="UnsupportedSignature",t.RecordDoestNotSupportGuardianSig="RecordDoestNotSupportGuardianSig",t.RecordIsNotSigned="RecordIsNotSigned",t.UnsupportedSignatureType="UnsupportedSignatureType",t.InvalidSolRecordV2="InvalidSolRecordV2",t.MissingVerifier="MissingVerifier"}(zc||(zc={}));class Dc extends Error{constructor(t,e){super(e),this.name="SNSError",this.type=t,Error.captureStackTrace&&Error.captureStackTrace(this,Dc)}}class jc extends ne{toBuffer(){const t=super.toArray().reverse(),e=n.Buffer.from(t);if(4===e.length)return e;if(e.length>4)throw new Dc(zc.U32Overflow);const r=n.Buffer.alloc(4);return e.copy(r),r}static fromBuffer(t){if(4!==t.length)throw new Dc(zc.InvalidBufferLength,`Invalid buffer length: ${t.length}`);return new ne([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}class Wc extends ne{toBuffer(){const t=super.toArray().reverse(),e=n.Buffer.from(t);if(8===e.length)return e;if(e.length>8)throw new Dc(zc.U64Overflow);const r=n.Buffer.alloc(8);return e.copy(r),r}static fromBuffer(t){if(8!==t.length)throw new Dc(zc.U64Overflow,`Invalid buffer length: ${t.length}`);return new ne([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}function Fc(t,e,r,i,o,s,a,u,c,h,l){const f=[n.Buffer.from(Int8Array.from([0])),new jc(s.length).toBuffer(),s,a.toBuffer(),u.toBuffer()],d=n.Buffer.concat(f),p=[{pubkey:e,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!0,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!1}];return c?p.push({pubkey:c,isSigner:!0,isWritable:!1}):p.push({pubkey:new Wo(n.Buffer.alloc(32)),isSigner:!1,isWritable:!1}),h?p.push({pubkey:h,isSigner:!1,isWritable:!1}):p.push({pubkey:new Wo(n.Buffer.alloc(32)),isSigner:!1,isWritable:!1}),l&&p.push({pubkey:l,isSigner:!0,isWritable:!1}),new cs({keys:p,programId:t,data:d})}function Kc(t,e,r,i,o){const s=[n.Buffer.from(Int8Array.from([1])),r.toBuffer(),new jc(i.length).toBuffer(),i],a=n.Buffer.concat(s);return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!0,isWritable:!1}],programId:t,data:a})}function qc(t,e,r,i,o,s,a){const u=[n.Buffer.from(Int8Array.from([2])),r.toBuffer()],c=n.Buffer.concat(u),h=[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:a||i,isSigner:!0,isWritable:!1}];return o&&h.push({pubkey:o,isSigner:!0,isWritable:!1}),a&&s&&(o||h.push({pubkey:Wo.default,isSigner:!1,isWritable:!1}),h.push({pubkey:s,isSigner:!1,isWritable:!1})),new cs({keys:h,programId:t,data:c})}function Vc(t,e,r,i){const o=[n.Buffer.from(Int8Array.from([3]))],s=n.Buffer.concat(o);return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!0,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0}],programId:t,data:s})}class Hc{constructor(t){this.tag=9,this.name=t.name,this.space=t.space}serialize(){return He(Hc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h,l){const f=n.Buffer.from(this.serialize()),d=[{pubkey:e,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!1},{pubkey:i,isSigner:!1,isWritable:!1},{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:Ts.programId,isSigner:!1,isWritable:!1},{pubkey:a,isSigner:!1,isWritable:!1},{pubkey:u,isSigner:!0,isWritable:!0},{pubkey:c,isSigner:!1,isWritable:!0},{pubkey:h,isSigner:!1,isWritable:!0},{pubkey:yc,isSigner:!1,isWritable:!1},{pubkey:l,isSigner:!1,isWritable:!1}];return new cs({keys:d,programId:t,data:f})}}Hc.schema=new Map([[Hc,{kind:"struct",fields:[["tag","u8"],["name","string"],["space","u32"]]}]]);class $c{constructor(t){this.tag=12,this.name=t.name}serialize(){return He($c.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h){const l=n.Buffer.from(this.serialize());let f=[];return f.push({pubkey:e,isSigner:!1,isWritable:!1}),f.push({pubkey:r,isSigner:!1,isWritable:!1}),f.push({pubkey:i,isSigner:!1,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!1}),f.push({pubkey:s,isSigner:!1,isWritable:!1}),f.push({pubkey:a,isSigner:!0,isWritable:!0}),f.push({pubkey:u,isSigner:!1,isWritable:!1}),c&&f.push({pubkey:c,isSigner:!1,isWritable:!0}),h&&f.push({pubkey:h,isSigner:!0,isWritable:!0}),new cs({keys:f,programId:t,data:l})}}$c.schema=new Map([[$c,{kind:"struct",fields:[["tag","u8"],["name","string"]]}]]);class Zc{constructor(t){this.tag=13,this.name=t.name,this.space=t.space,this.referrerIdxOpt=t.referrerIdxOpt}serialize(){return He(Zc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h,l,f,d,p,y,g,m){const w=n.Buffer.from(this.serialize());let b=[];return b.push({pubkey:e,isSigner:!1,isWritable:!1}),b.push({pubkey:r,isSigner:!1,isWritable:!1}),b.push({pubkey:i,isSigner:!1,isWritable:!0}),b.push({pubkey:o,isSigner:!1,isWritable:!0}),b.push({pubkey:s,isSigner:!1,isWritable:!1}),b.push({pubkey:a,isSigner:!1,isWritable:!1}),b.push({pubkey:u,isSigner:!0,isWritable:!0}),b.push({pubkey:c,isSigner:!1,isWritable:!0}),b.push({pubkey:h,isSigner:!1,isWritable:!1}),b.push({pubkey:l,isSigner:!1,isWritable:!1}),b.push({pubkey:f,isSigner:!1,isWritable:!1}),b.push({pubkey:d,isSigner:!1,isWritable:!0}),b.push({pubkey:p,isSigner:!1,isWritable:!1}),b.push({pubkey:y,isSigner:!1,isWritable:!1}),b.push({pubkey:g,isSigner:!1,isWritable:!1}),m&&b.push({pubkey:m,isSigner:!1,isWritable:!0}),new cs({keys:b,programId:t,data:w})}}Zc.schema=new Map([[Zc,{kind:"struct",fields:[["tag","u8"],["name","string"],["space","u32"],["referrerIdxOpt",{kind:"option",type:"u16"}]]}]]);class Gc{constructor(t){this.tag=17,this.name=t.name,this.space=t.space}serialize(){return He(Gc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h,l,f,d,p,y,g,m){const w=n.Buffer.from(this.serialize());let b=[];return b.push({pubkey:e,isSigner:!1,isWritable:!1}),b.push({pubkey:r,isSigner:!1,isWritable:!1}),b.push({pubkey:i,isSigner:!1,isWritable:!0}),b.push({pubkey:o,isSigner:!1,isWritable:!0}),b.push({pubkey:s,isSigner:!1,isWritable:!1}),b.push({pubkey:a,isSigner:!1,isWritable:!1}),b.push({pubkey:u,isSigner:!0,isWritable:!0}),b.push({pubkey:c,isSigner:!1,isWritable:!0}),b.push({pubkey:h,isSigner:!1,isWritable:!0}),b.push({pubkey:l,isSigner:!1,isWritable:!0}),b.push({pubkey:f,isSigner:!1,isWritable:!0}),b.push({pubkey:d,isSigner:!1,isWritable:!0}),b.push({pubkey:p,isSigner:!1,isWritable:!1}),b.push({pubkey:y,isSigner:!1,isWritable:!1}),b.push({pubkey:g,isSigner:!1,isWritable:!1}),b.push({pubkey:m,isSigner:!1,isWritable:!1}),new cs({keys:b,programId:t,data:w})}}Gc.schema=new Map([[Gc,{kind:"struct",fields:[["tag","u8"],["name","string"],["space","u32"]]}]]);class Yc{constructor(){this.tag=16}serialize(){return He(Yc.schema,this)}getInstruction(t,e,r,i,o,s,a,u,c,h){const l=n.Buffer.from(this.serialize());let f=[];return f.push({pubkey:e,isSigner:!1,isWritable:!1}),f.push({pubkey:r,isSigner:!1,isWritable:!1}),f.push({pubkey:i,isSigner:!1,isWritable:!0}),f.push({pubkey:o,isSigner:!1,isWritable:!0}),f.push({pubkey:s,isSigner:!1,isWritable:!0}),f.push({pubkey:a,isSigner:!1,isWritable:!0}),f.push({pubkey:u,isSigner:!1,isWritable:!1}),f.push({pubkey:c,isSigner:!0,isWritable:!1}),f.push({pubkey:h,isSigner:!1,isWritable:!0}),new cs({keys:f,programId:t,data:l})}}function Jc(t,e,r,i,o,s){const a=[n.Buffer.from(Int8Array.from([4])),s.toBuffer()],u=n.Buffer.concat(a);return new cs({keys:[{pubkey:e,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!0,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!0,isWritable:!1}],programId:t,data:u})}Yc.schema=new Map([[Yc,{kind:"struct",fields:[["tag","u8"]]}]]);const Xc=new Wo("nftD3vbNkNqfj2Sd3HZwbpw4BxxKWr4AjGb9X38JeZk"),Qc=n.Buffer.from("tokenized_name");var th;!function(t){t[t.Uninitialized=0]="Uninitialized",t[t.CentralState=1]="CentralState",t[t.ActiveRecord=2]="ActiveRecord",t[t.InactiveRecord=3]="InactiveRecord"}(th||(th={}));class eh{constructor(t){this.tag=t.tag,this.nonce=t.nonce,this.nameAccount=new Wo(t.nameAccount),this.owner=new Wo(t.owner),this.nftMint=new Wo(t.nftMint)}static deserialize(t){return Ge(this.schema,eh,t)}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Error("NFT record not found");return this.deserialize(r.data)}static async findKey(t,e){return await Wo.findProgramAddress([n.Buffer.from("nft_record"),t.toBuffer()],e)}}eh.schema=new Map([[eh,{kind:"struct",fields:[["tag","u8"],["nonce","u8"],["nameAccount",[32]],["owner",[32]],["nftMint",[32]]]}]]);const rh=async(t,e)=>{try{const[r]=await Wo.findProgramAddress([Qc,e.toBuffer()],Xc);if("0"===(await Uc(t,r)).supply.toString())return;const n=[{memcmp:{offset:0,bytes:r.toBase58()}},{memcmp:{offset:64,bytes:"2"}},{dataSize:165}],i=await t.getProgramAccounts(yc,{filters:n});if(1!=i.length)return;return new Wo(i[0].account.data.slice(32,64))}catch{return}},nh=async t=>{const e=await t.getProgramAccounts(Xc,{filters:[{memcmp:{offset:0,bytes:"3"}}]});return e.map((t=>new Wo(t.account.data.slice(66,98))))},ih=t=>[{memcmp:{offset:32,bytes:t}},{memcmp:{offset:64,bytes:"2"}}],oh=async(t,e)=>{const r=await(async(t,e)=>{const r=[{memcmp:{offset:0,bytes:"3"}},{memcmp:{offset:66,bytes:e.toBase58()}}];return await t.getProgramAccounts(Xc,{filters:r})})(t,e.mint);if(1===r.length)return eh.deserialize(r[0].account.data)},sh=async(t,e)=>{const r=[...ih(e.toBase58()),{dataSize:165}],n=(await t.getProgramAccounts(yc,{filters:r})).map((t=>Lc.decode(t.account.data))),i=n.map((e=>oh(t,e)));return(await Promise.all(i)).filter((t=>void 0!==t))};class ah{constructor(t){this.parentName=new Wo(t.parentName),this.owner=new Wo(t.owner),this.class=new Wo(t.class)}static async retrieve(t,e){var r;const n=await t.getAccountInfo(e);if(!n)throw new Dc(zc.AccountDoesNotExist);let i=Te(this.schema,ah,n.data);i.data=null===(r=n.data)||void 0===r?void 0:r.slice(this.HEADER_LEN);return{registry:i,nftOwner:await rh(t,e)}}static async _retrieveBatch(t,e){const r=await t.getMultipleAccountsInfo(e),n=t=>{if(!t)return;const e=Te(this.schema,ah,t);return e.data=null==t?void 0:t.slice(this.HEADER_LEN),e};return r.map((t=>n(null==t?void 0:t.data)))}static async retrieveBatch(t,e){let r=[];const n=[...e];for(;n.length>0;)r.push(...await this._retrieveBatch(t,n.splice(0,100)));return r}}ah.HEADER_LEN=96,ah.schema=new Map([[ah,{kind:"struct",fields:[["parentName",[32]],["owner",[32]],["class",[32]]]}]]);var uh={},ch={},hh=lh;function lh(t,e){if(!t)throw new Error(e||"Assertion failed")}lh.equal=function(t,e,r){if(t!=e)throw new Error(r||"Assertion failed: "+t+" != "+e)};var fh={exports:{}};"function"==typeof Object.create?fh.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:fh.exports=function(t,e){if(e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}};var dh=fh.exports,ph=hh,yh=dh;function gh(t,e){return 55296==(64512&t.charCodeAt(e))&&(!(e<0||e+1>=t.length)&&56320==(64512&t.charCodeAt(e+1)))}function mh(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function wh(t){return 1===t.length?"0"+t:t}function bh(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}ch.inherits=yh,ch.toArray=function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var r=[];if("string"==typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(t="0"+t),i=0;i<t.length;i+=2)r.push(parseInt(t[i]+t[i+1],16))}else for(var n=0,i=0;i<t.length;i++){var o=t.charCodeAt(i);o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=63&o|128):gh(t,i)?(o=65536+((1023&o)<<10)+(1023&t.charCodeAt(++i)),r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=63&o|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=63&o|128)}else for(i=0;i<t.length;i++)r[i]=0|t[i];return r},ch.toHex=function(t){for(var e="",r=0;r<t.length;r++)e+=wh(t[r].toString(16));return e},ch.htonl=mh,ch.toHex32=function(t,e){for(var r="",n=0;n<t.length;n++){var i=t[n];"little"===e&&(i=mh(i)),r+=bh(i.toString(16))}return r},ch.zero2=wh,ch.zero8=bh,ch.join32=function(t,e,r,n){var i=r-e;ph(i%4==0);for(var o=new Array(i/4),s=0,a=e;s<o.length;s++,a+=4){var u;u="big"===n?t[a]<<24|t[a+1]<<16|t[a+2]<<8|t[a+3]:t[a+3]<<24|t[a+2]<<16|t[a+1]<<8|t[a],o[s]=u>>>0}return o},ch.split32=function(t,e){for(var r=new Array(4*t.length),n=0,i=0;n<t.length;n++,i+=4){var o=t[n];"big"===e?(r[i]=o>>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},ch.rotr32=function(t,e){return t>>>e|t<<32-e},ch.rotl32=function(t,e){return t<<e|t>>>32-e},ch.sum32=function(t,e){return t+e>>>0},ch.sum32_3=function(t,e,r){return t+e+r>>>0},ch.sum32_4=function(t,e,r,n){return t+e+r+n>>>0},ch.sum32_5=function(t,e,r,n,i){return t+e+r+n+i>>>0},ch.sum64=function(t,e,r,n){var i=t[e],o=n+t[e+1]>>>0,s=(o<n?1:0)+r+i;t[e]=s>>>0,t[e+1]=o},ch.sum64_hi=function(t,e,r,n){return(e+n>>>0<e?1:0)+t+r>>>0},ch.sum64_lo=function(t,e,r,n){return e+n>>>0},ch.sum64_4_hi=function(t,e,r,n,i,o,s,a){var u=0,c=e;return u+=(c=c+n>>>0)<e?1:0,u+=(c=c+o>>>0)<o?1:0,t+r+i+s+(u+=(c=c+a>>>0)<a?1:0)>>>0},ch.sum64_4_lo=function(t,e,r,n,i,o,s,a){return e+n+o+a>>>0},ch.sum64_5_hi=function(t,e,r,n,i,o,s,a,u,c){var h=0,l=e;return h+=(l=l+n>>>0)<e?1:0,h+=(l=l+o>>>0)<o?1:0,h+=(l=l+a>>>0)<a?1:0,t+r+i+s+u+(h+=(l=l+c>>>0)<c?1:0)>>>0},ch.sum64_5_lo=function(t,e,r,n,i,o,s,a,u,c){return e+n+o+a+c>>>0},ch.rotr64_hi=function(t,e,r){return(e<<32-r|t>>>r)>>>0},ch.rotr64_lo=function(t,e,r){return(t<<32-r|e>>>r)>>>0},ch.shr64_hi=function(t,e,r){return t>>>r},ch.shr64_lo=function(t,e,r){return(t<<32-r|e>>>r)>>>0};var vh={},_h=ch,kh=hh;function Eh(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}vh.BlockHash=Eh,Eh.prototype.update=function(t,e){if(t=_h.toArray(t,e),this.pending?this.pending=this.pending.concat(t):this.pending=t,this.pendingTotal+=t.length,this.pending.length>=this._delta8){var r=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-r,t.length),0===this.pending.length&&(this.pending=null),t=_h.join32(t,0,t.length-r,this.endian);for(var n=0;n<t.length;n+=this._delta32)this._update(t,n,n+this._delta32)}return this},Eh.prototype.digest=function(t){return this.update(this._pad()),kh(null===this.pending),this._digest(t)},Eh.prototype._pad=function(){var t=this.pendingTotal,e=this._delta8,r=e-(t+this.padLength)%e,n=new Array(r+this.padLength);n[0]=128;for(var i=1;i<r;i++)n[i]=0;if(t<<=3,"big"===this.endian){for(var o=8;o<this.padLength;o++)n[i++]=0;n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=t>>>24&255,n[i++]=t>>>16&255,n[i++]=t>>>8&255,n[i++]=255&t}else for(n[i++]=255&t,n[i++]=t>>>8&255,n[i++]=t>>>16&255,n[i++]=t>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o<this.padLength;o++)n[i++]=0;return n};var Sh={},Ah={},xh=ch.rotr32;function Ih(t,e,r){return t&e^~t&r}function Bh(t,e,r){return t&e^t&r^e&r}function Mh(t,e,r){return t^e^r}Ah.ft_1=function(t,e,r,n){return 0===t?Ih(e,r,n):1===t||3===t?Mh(e,r,n):2===t?Bh(e,r,n):void 0},Ah.ch32=Ih,Ah.maj32=Bh,Ah.p32=Mh,Ah.s0_256=function(t){return xh(t,2)^xh(t,13)^xh(t,22)},Ah.s1_256=function(t){return xh(t,6)^xh(t,11)^xh(t,25)},Ah.g0_256=function(t){return xh(t,7)^xh(t,18)^t>>>3},Ah.g1_256=function(t){return xh(t,17)^xh(t,19)^t>>>10};var Ph=ch,Lh=vh,Oh=Ah,Th=Ph.rotl32,Rh=Ph.sum32,Uh=Ph.sum32_5,Ch=Oh.ft_1,Nh=Lh.BlockHash,zh=[1518500249,1859775393,2400959708,3395469782];function Dh(){if(!(this instanceof Dh))return new Dh;Nh.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}Ph.inherits(Dh,Nh);var jh=Dh;Dh.blockSize=512,Dh.outSize=160,Dh.hmacStrength=80,Dh.padLength=64,Dh.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;n<r.length;n++)r[n]=Th(r[n-3]^r[n-8]^r[n-14]^r[n-16],1);var i=this.h[0],o=this.h[1],s=this.h[2],a=this.h[3],u=this.h[4];for(n=0;n<r.length;n++){var c=~~(n/20),h=Uh(Th(i,5),Ch(c,o,s,a),u,r[n],zh[c]);u=a,a=s,s=Th(o,30),o=i,i=h}this.h[0]=Rh(this.h[0],i),this.h[1]=Rh(this.h[1],o),this.h[2]=Rh(this.h[2],s),this.h[3]=Rh(this.h[3],a),this.h[4]=Rh(this.h[4],u)},Dh.prototype._digest=function(t){return"hex"===t?Ph.toHex32(this.h,"big"):Ph.split32(this.h,"big")};var Wh=ch,Fh=vh,Kh=Ah,qh=hh,Vh=Wh.sum32,Hh=Wh.sum32_4,$h=Wh.sum32_5,Zh=Kh.ch32,Gh=Kh.maj32,Yh=Kh.s0_256,Jh=Kh.s1_256,Xh=Kh.g0_256,Qh=Kh.g1_256,tl=Fh.BlockHash,el=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function rl(){if(!(this instanceof rl))return new rl;tl.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=el,this.W=new Array(64)}Wh.inherits(rl,tl);var nl=rl;rl.blockSize=512,rl.outSize=256,rl.hmacStrength=192,rl.padLength=64,rl.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;n<r.length;n++)r[n]=Hh(Qh(r[n-2]),r[n-7],Xh(r[n-15]),r[n-16]);var i=this.h[0],o=this.h[1],s=this.h[2],a=this.h[3],u=this.h[4],c=this.h[5],h=this.h[6],l=this.h[7];for(qh(this.k.length===r.length),n=0;n<r.length;n++){var f=$h(l,Jh(u),Zh(u,c,h),this.k[n],r[n]),d=Vh(Yh(i),Gh(i,o,s));l=h,h=c,c=u,u=Vh(a,f),a=s,s=o,o=i,i=Vh(f,d)}this.h[0]=Vh(this.h[0],i),this.h[1]=Vh(this.h[1],o),this.h[2]=Vh(this.h[2],s),this.h[3]=Vh(this.h[3],a),this.h[4]=Vh(this.h[4],u),this.h[5]=Vh(this.h[5],c),this.h[6]=Vh(this.h[6],h),this.h[7]=Vh(this.h[7],l)},rl.prototype._digest=function(t){return"hex"===t?Wh.toHex32(this.h,"big"):Wh.split32(this.h,"big")};var il=ch,ol=nl;function sl(){if(!(this instanceof sl))return new sl;ol.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}il.inherits(sl,ol);var al=sl;sl.blockSize=512,sl.outSize=224,sl.hmacStrength=192,sl.padLength=64,sl.prototype._digest=function(t){return"hex"===t?il.toHex32(this.h.slice(0,7),"big"):il.split32(this.h.slice(0,7),"big")};var ul=ch,cl=vh,hl=hh,ll=ul.rotr64_hi,fl=ul.rotr64_lo,dl=ul.shr64_hi,pl=ul.shr64_lo,yl=ul.sum64,gl=ul.sum64_hi,ml=ul.sum64_lo,wl=ul.sum64_4_hi,bl=ul.sum64_4_lo,vl=ul.sum64_5_hi,_l=ul.sum64_5_lo,kl=cl.BlockHash,El=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function Sl(){if(!(this instanceof Sl))return new Sl;kl.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=El,this.W=new Array(160)}ul.inherits(Sl,kl);var Al=Sl;function xl(t,e,r,n,i){var o=t&r^~t&i;return o<0&&(o+=4294967296),o}function Il(t,e,r,n,i,o){var s=e&n^~e&o;return s<0&&(s+=4294967296),s}function Bl(t,e,r,n,i){var o=t&r^t&i^r&i;return o<0&&(o+=4294967296),o}function Ml(t,e,r,n,i,o){var s=e&n^e&o^n&o;return s<0&&(s+=4294967296),s}function Pl(t,e){var r=ll(t,e,28)^ll(e,t,2)^ll(e,t,7);return r<0&&(r+=4294967296),r}function Ll(t,e){var r=fl(t,e,28)^fl(e,t,2)^fl(e,t,7);return r<0&&(r+=4294967296),r}function Ol(t,e){var r=ll(t,e,14)^ll(t,e,18)^ll(e,t,9);return r<0&&(r+=4294967296),r}function Tl(t,e){var r=fl(t,e,14)^fl(t,e,18)^fl(e,t,9);return r<0&&(r+=4294967296),r}function Rl(t,e){var r=ll(t,e,1)^ll(t,e,8)^dl(t,e,7);return r<0&&(r+=4294967296),r}function Ul(t,e){var r=fl(t,e,1)^fl(t,e,8)^pl(t,e,7);return r<0&&(r+=4294967296),r}function Cl(t,e){var r=ll(t,e,19)^ll(e,t,29)^dl(t,e,6);return r<0&&(r+=4294967296),r}function Nl(t,e){var r=fl(t,e,19)^fl(e,t,29)^pl(t,e,6);return r<0&&(r+=4294967296),r}Sl.blockSize=1024,Sl.outSize=512,Sl.hmacStrength=192,Sl.padLength=128,Sl.prototype._prepareBlock=function(t,e){for(var r=this.W,n=0;n<32;n++)r[n]=t[e+n];for(;n<r.length;n+=2){var i=Cl(r[n-4],r[n-3]),o=Nl(r[n-4],r[n-3]),s=r[n-14],a=r[n-13],u=Rl(r[n-30],r[n-29]),c=Ul(r[n-30],r[n-29]),h=r[n-32],l=r[n-31];r[n]=wl(i,o,s,a,u,c,h,l),r[n+1]=bl(i,o,s,a,u,c,h,l)}},Sl.prototype._update=function(t,e){this._prepareBlock(t,e);var r=this.W,n=this.h[0],i=this.h[1],o=this.h[2],s=this.h[3],a=this.h[4],u=this.h[5],c=this.h[6],h=this.h[7],l=this.h[8],f=this.h[9],d=this.h[10],p=this.h[11],y=this.h[12],g=this.h[13],m=this.h[14],w=this.h[15];hl(this.k.length===r.length);for(var b=0;b<r.length;b+=2){var v=m,_=w,k=Ol(l,f),E=Tl(l,f),S=xl(l,f,d,p,y),A=Il(l,f,d,p,y,g),x=this.k[b],I=this.k[b+1],B=r[b],M=r[b+1],P=vl(v,_,k,E,S,A,x,I,B,M),L=_l(v,_,k,E,S,A,x,I,B,M);v=Pl(n,i),_=Ll(n,i),k=Bl(n,i,o,s,a),E=Ml(n,i,o,s,a,u);var O=gl(v,_,k,E),T=ml(v,_,k,E);m=y,w=g,y=d,g=p,d=l,p=f,l=gl(c,h,P,L),f=ml(h,h,P,L),c=a,h=u,a=o,u=s,o=n,s=i,n=gl(P,L,O,T),i=ml(P,L,O,T)}yl(this.h,0,n,i),yl(this.h,2,o,s),yl(this.h,4,a,u),yl(this.h,6,c,h),yl(this.h,8,l,f),yl(this.h,10,d,p),yl(this.h,12,y,g),yl(this.h,14,m,w)},Sl.prototype._digest=function(t){return"hex"===t?ul.toHex32(this.h,"big"):ul.split32(this.h,"big")};var zl=ch,Dl=Al;function jl(){if(!(this instanceof jl))return new jl;Dl.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}zl.inherits(jl,Dl);var Wl=jl;jl.blockSize=1024,jl.outSize=384,jl.hmacStrength=192,jl.padLength=128,jl.prototype._digest=function(t){return"hex"===t?zl.toHex32(this.h.slice(0,12),"big"):zl.split32(this.h.slice(0,12),"big")},Sh.sha1=jh,Sh.sha224=al,Sh.sha256=nl,Sh.sha384=Wl,Sh.sha512=Al;var Fl={},Kl=ch,ql=vh,Vl=Kl.rotl32,Hl=Kl.sum32,$l=Kl.sum32_3,Zl=Kl.sum32_4,Gl=ql.BlockHash;function Yl(){if(!(this instanceof Yl))return new Yl;Gl.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function Jl(t,e,r,n){return t<=15?e^r^n:t<=31?e&r|~e&n:t<=47?(e|~r)^n:t<=63?e&n|r&~n:e^(r|~n)}function Xl(t){return t<=15?0:t<=31?1518500249:t<=47?1859775393:t<=63?2400959708:2840853838}function Ql(t){return t<=15?1352829926:t<=31?1548603684:t<=47?1836072691:t<=63?2053994217:0}Kl.inherits(Yl,Gl),Fl.ripemd160=Yl,Yl.blockSize=512,Yl.outSize=160,Yl.hmacStrength=192,Yl.padLength=64,Yl.prototype._update=function(t,e){for(var r=this.h[0],n=this.h[1],i=this.h[2],o=this.h[3],s=this.h[4],a=r,u=n,c=i,h=o,l=s,f=0;f<80;f++){var d=Hl(Vl(Zl(r,Jl(f,n,i,o),t[tf[f]+e],Xl(f)),rf[f]),s);r=s,s=o,o=Vl(i,10),i=n,n=d,d=Hl(Vl(Zl(a,Jl(79-f,u,c,h),t[ef[f]+e],Ql(f)),nf[f]),l),a=l,l=h,h=Vl(c,10),c=u,u=d}d=$l(this.h[1],i,h),this.h[1]=$l(this.h[2],o,l),this.h[2]=$l(this.h[3],s,a),this.h[3]=$l(this.h[4],r,u),this.h[4]=$l(this.h[0],n,c),this.h[0]=d},Yl.prototype._digest=function(t){return"hex"===t?Kl.toHex32(this.h,"little"):Kl.split32(this.h,"little")};var tf=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],ef=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],rf=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],nf=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],of=ch,sf=hh;function af(t,e,r){if(!(this instanceof af))return new af(t,e,r);this.Hash=t,this.blockSize=t.blockSize/8,this.outSize=t.outSize/8,this.inner=null,this.outer=null,this._init(of.toArray(e,r))}var uf=af;af.prototype._init=function(t){t.length>this.blockSize&&(t=(new this.Hash).update(t).digest()),sf(t.length<=this.blockSize);for(var e=t.length;e<this.blockSize;e++)t.push(0);for(e=0;e<t.length;e++)t[e]^=54;for(this.inner=(new this.Hash).update(t),e=0;e<t.length;e++)t[e]^=106;this.outer=(new this.Hash).update(t)},af.prototype.update=function(t,e){return this.inner.update(t,e),this},af.prototype.digest=function(t){return this.outer.update(this.inner.digest()),this.outer.digest(t)},function(t){var e=uh;e.utils=ch,e.common=vh,e.sha=Sh,e.ripemd=Fl,e.hmac=uf,e.sha1=e.sha.sha1,e.sha256=e.sha.sha256,e.sha224=e.sha.sha224,e.sha384=e.sha.sha384,e.sha512=e.sha.sha512,e.ripemd160=e.ripemd.ripemd160}();var cf=e(uh);let hf=!1,lf=!1;const ff={debug:1,default:2,info:2,warning:3,error:4,off:5};let df=ff.default,pf=null;const yf=function(){try{const t=[];if(["NFD","NFC","NFKD","NFKC"].forEach((e=>{try{if("test"!=="test".normalize(e))throw new Error("bad normalize")}catch(r){t.push(e)}})),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}();var gf,mf;!function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"}(gf||(gf={})),function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",t.TRANSACTION_REPLACED="TRANSACTION_REPLACED",t.ACTION_REJECTED="ACTION_REJECTED"}(mf||(mf={}));const wf="0123456789abcdef";class bf{constructor(t){Object.defineProperty(this,"version",{enumerable:!0,value:t,writable:!1})}_log(t,e){const r=t.toLowerCase();null==ff[r]&&this.throwArgumentError("invalid log level name","logLevel",t),df>ff[r]||console.log.apply(console,e)}debug(...t){this._log(bf.levels.DEBUG,t)}info(...t){this._log(bf.levels.INFO,t)}warn(...t){this._log(bf.levels.WARNING,t)}makeError(t,e,r){if(lf)return this.makeError("censored error",e,{});e||(e=bf.errors.UNKNOWN_ERROR),r||(r={});const n=[];Object.keys(r).forEach((t=>{const e=r[t];try{if(e instanceof Uint8Array){let r="";for(let t=0;t<e.length;t++)r+=wf[e[t]>>4],r+=wf[15&e[t]];n.push(t+"=Uint8Array(0x"+r+")")}else n.push(t+"="+JSON.stringify(e))}catch(e){n.push(t+"="+JSON.stringify(r[t].toString()))}})),n.push(`code=${e}`),n.push(`version=${this.version}`);const i=t;let o="";switch(e){case mf.NUMERIC_FAULT:{o="NUMERIC_FAULT";const e=t;switch(e){case"overflow":case"underflow":case"division-by-zero":o+="-"+e;break;case"negative-power":case"negative-width":o+="-unsupported";break;case"unbound-bitwise-result":o+="-unbound-result"}break}case mf.CALL_EXCEPTION:case mf.INSUFFICIENT_FUNDS:case mf.MISSING_NEW:case mf.NONCE_EXPIRED:case mf.REPLACEMENT_UNDERPRICED:case mf.TRANSACTION_REPLACED:case mf.UNPREDICTABLE_GAS_LIMIT:o=e}o&&(t+=" [ See: https://links.ethers.org/v5-errors-"+o+" ]"),n.length&&(t+=" ("+n.join(", ")+")");const s=new Error(t);return s.reason=i,s.code=e,Object.keys(r).forEach((function(t){s[t]=r[t]})),s}throwError(t,e,r){throw this.makeError(t,e,r)}throwArgumentError(t,e,r){return this.throwError(t,bf.errors.INVALID_ARGUMENT,{argument:e,value:r})}assert(t,e,r,n){t||this.throwError(e,r,n)}assertArgument(t,e,r,n){t||this.throwArgumentError(e,r,n)}checkNormalize(t){yf&&this.throwError("platform missing String.prototype.normalize",bf.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:yf})}checkSafeUint53(t,e){"number"==typeof t&&(null==e&&(e="value not safe"),(t<0||t>=9007199254740991)&&this.throwError(e,bf.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:t}),t%1&&this.throwError(e,bf.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:t}))}checkArgumentCount(t,e,r){r=r?": "+r:"",t<e&&this.throwError("missing argument"+r,bf.errors.MISSING_ARGUMENT,{count:t,expectedCount:e}),t>e&&this.throwError("too many arguments"+r,bf.errors.UNEXPECTED_ARGUMENT,{count:t,expectedCount:e})}checkNew(t,e){t!==Object&&null!=t||this.throwError("missing new",bf.errors.MISSING_NEW,{name:e.name})}checkAbstract(t,e){t===e?this.throwError("cannot instantiate abstract class "+JSON.stringify(e.name)+" directly; use a sub-class",bf.errors.UNSUPPORTED_OPERATION,{name:t.name,operation:"new"}):t!==Object&&null!=t||this.throwError("missing new",bf.errors.MISSING_NEW,{name:e.name})}static globalLogger(){return pf||(pf=new bf("logger/5.7.0")),pf}static setCensorship(t,e){if(!t&&e&&this.globalLogger().throwError("cannot permanently disable censorship",bf.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),hf){if(!t)return;this.globalLogger().throwError("error censorship permanent",bf.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}lf=!!t,hf=!!e}static setLogLevel(t){const e=ff[t.toLowerCase()];null!=e?df=e:bf.globalLogger().warn("invalid log level - "+t)}static from(t){return new bf(t)}}bf.errors=mf,bf.levels=gf;const vf=new bf("bytes/5.7.0");function _f(t){return t.slice||(t.slice=function(){const e=Array.prototype.slice.call(arguments);return _f(new Uint8Array(Array.prototype.slice.apply(t,e)))}),t}function kf(t){return"number"==typeof t&&t==t&&t%1==0}function Ef(t,e){if(e||(e={}),"number"==typeof t){vf.checkSafeUint53(t,"invalid arrayify value");const e=[];for(;t;)e.unshift(255&t),t=parseInt(String(t/256));return 0===e.length&&e.push(0),_f(new Uint8Array(e))}if(e.allowMissingPrefix&&"string"==typeof t&&"0x"!==t.substring(0,2)&&(t="0x"+t),function(t){return!!t.toHexString}(t)&&(t=t.toHexString()),function(t,e){if("string"!=typeof t||!t.match(/^0x[0-9A-Fa-f]*$/))return!1;if(e&&t.length!==2+2*e)return!1;return!0}(t)){let r=t.substring(2);r.length%2&&("left"===e.hexPad?r="0"+r:"right"===e.hexPad?r+="0":vf.throwArgumentError("hex data is odd-length","value",t));const n=[];for(let t=0;t<r.length;t+=2)n.push(parseInt(r.substring(t,t+2),16));return _f(new Uint8Array(n))}return function(t){if(null==t)return!1;if(t.constructor===Uint8Array)return!0;if("string"==typeof t)return!1;if(!kf(t.length)||t.length<0)return!1;for(let e=0;e<t.length;e++){const r=t[e];if(!kf(r)||r<0||r>=256)return!1}return!0}(t)?_f(new Uint8Array(t)):vf.throwArgumentError("invalid arrayify value","value",t)}function Sf(t){return"0x"+cf.sha256().update(Ef(t)).digest("hex")}new bf("sha2/5.7.0");const Af=new Wo("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX"),xf="SPL Name Service",If=new Wo("58PwtjSDuFHuUkYjH9BYnnQKHfwo9reZhC2zMJv9JPkx"),Bf=new Wo("jCebN34bUfdeUYJT13J1yG16XWQpt5PDx6Mse9GUqhR"),Mf=new Wo("ETp9eKXVv1dWwHSpsXRUuXHmw24PwRkttCGVgpZEY9zF"),Pf=new Wo("AUoZ3YAhV3b2rZeEH93UMZHXUZcTramBvb4d9YEVySkc"),Lf=new Wo("33m47vH6Eav6jr5Ry86XjhRft2jRBLDnDgPSHoquXi2Z"),Of=new Wo("FvPH7PrVrLGKPfqaf3xJodFTjZriqrAXXLTVWEorTFBi"),Tf=new Wo("4YcexoW3r78zz16J2aqmukBLRwGq6rAvWzJpkYAXqebv"),Rf=96,Uf=new Wo("DmSyHDSM9eSLyvoLsPvDr5fRRFZ7Bfr3h3ULvWpgQaq7"),Cf=new Wo("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),Nf=[new Wo("3ogYncmMM5CmytsGCqKHydmXmKUZ6sGWvizkzqwT7zb1"),new Wo("DM1jJCkZZEwY5tmWbgvKRxsDFzXCdbfrYCCH1CtwguEs"),new Wo("ADCp4QXFajHrhy4f43pD6GJFtQLkdBY2mjS9DfCk7tNW"),new Wo("2XTgjw8yi1E3Etgj4CUyRD7Zk49gynH2U9gA5N2MY4NP"),new Wo("5oDWj8vr3vbcq9JZTtwXqrkCMZggMsDzNietvbr1BNfe"),new Wo("8kJqxAbqbPLGLMgB6FhLcnw2SiUEavx2aEGM3WQGhtJF"),new Wo("HemvJzwxvVpWBjPETpaseAH395WAxb2G73MeUfjVkK1u"),new Wo("7hMiiUtkH4StMPJxyAtvzXTUjecTniQ8czkCPusf5eSW")],zf=new Map([["EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","USDC"],["Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB","USDT"],["So11111111111111111111111111111111111111112","SOL"],["EchesyfXePKdLtoiZSL8pBe8Myagyy8ZRqsACNCFGnvp","FIDA"],["FeGn77dhg1KXRRFeSwwMiykZnZPw5JXW6naf2aQgZDQf","ETH"],["7i5KKsX2weiTkry7jA4ZwSuXGhs5eJBEjY8vVxR4pfRx","GMT"],["AFbX8oGjGpmVFywbVouvhQSRmiW2aR1mohfahi4Y2AdB","GST"],["mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So","MSOL"],["DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263","BONK"],["EPeUFDgHRxs9xxEPVaL6kfGQvCon7jmAWKVUHuux1Tpz","BAT"],["HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3","PYTH"],["bSo13r4TkiE4KumL71LsHTPpL2euBYLFx6h9HP3piy1","BSOL"]]),Df=new Wo("AHtgzX45WTKfkPG53L6WYhGEXwQkN1BVknET3sVsLL8J"),jf=new Wo("GcWEQ9K78FV7LEHteFVciYApERk5YvQuFDQPk1yYJVXi"),Wf=new Wo("BPeXUQDqGbzxeK1LJby6ugvCBuo7kRSEUkjD726mUVsz"),Ff=new Wo("72aLKvXeV4aansAQtxKymeXDevT5ed6sCuz9iN62ugPT"),Kf=new Wo("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");async function qf(t,e){if(!await t.getAccountInfo(e))throw new Dc(zc.AccountDoesNotExist);return ah.retrieve(t,e)}async function Vf(t){const e=xf+t,r=Sf(n.Buffer.from(e,"utf8")).slice(2);return n.Buffer.from(r,"hex")}async function Hf(t,e,r){const i=[t];e?i.push(e.toBuffer()):i.push(n.Buffer.alloc(32)),r?i.push(r.toBuffer()):i.push(n.Buffer.alloc(32));const[o]=await Wo.findProgramAddress(i,Af);return o}async function $f(t,e){const r=await Vf(e.toBase58()),n=await Hf(r,Lf),{registry:i}=await ah.retrieve(t,n);if(!i.data)throw new Dc(zc.NoAccountData);const o=new ne(i.data.slice(0,4),"le").toNumber();return i.data.slice(4,4+o).toString()}async function Zf(t,e){let r=[];for(let t of e){const e=await Vf(t.toBase58()),n=await Hf(e,Lf);r.push(n)}return(await ah.retrieveBatch(t,r)).map((t=>{if(void 0===t||void 0===t.data)return;let e=new ne(t.data.slice(0,4),"le").toNumber();return t.data.slice(4,4+e).toString()}))}const Gf=async(t,e=If)=>{let r=await Vf(t);return{pubkey:await Hf(r,void 0,e),hashed:r}},Yf=async(t,e=!1)=>{t.endsWith(".sol")&&(t=t.slice(0,-4));const r=t.split(".");if(2===r.length){const t=n.Buffer.from([e?1:0]).toString().concat(r[0]),{pubkey:i}=await Gf(r[1]);return{...await Gf(t,i),isSub:!0,parent:i}}if(3===r.length&&e){const{pubkey:t}=await Gf(r[2]),{pubkey:e}=await Gf("\0".concat(r[1]),t),i=n.Buffer.from([1]).toString();return{...await Gf(i.concat(r[0]),e),isSub:!0,parent:t,isSubRecord:!0}}if(r.length>=3)throw new Dc(zc.InvalidInput);return{...await Gf(t,If),isSub:!1,parent:void 0}},Jf=async(t,e)=>{const{pubkey:r,parent:n}=await Yf(t),i=await Vf(r.toBase58());return await Hf(i,Lf,e?n:void 0)};var Xf={},Qf=r(pc),td={};Object.defineProperty(td,"__esModule",{value:!0}),td.readBigUInt64LE=td.readBigInt64LE=void 0;var ed=function(){return new Error("Attempt to access memory outside buffer bounds")},rd=function(t,e,r){return new Error('The "'+t+'" argument must be of type '+e+". Received "+r)},nd=function(t,e,r){return new Error('The value of "'+t+" is out of range. It must be "+e+". Received "+r)};function id(t,e){if("number"!=typeof t)throw rd(e,"number",t)}function od(t,e){if(Math.floor(t)!==t)throw id(t,"offset"),nd("offset","an integer",t);if(e<0)throw ed();throw nd("offset",">= 0 and <= "+e,t)}td.readBigInt64LE=function(t,e){void 0===e&&(e=0),id(e,"offset");var r=t[e],n=t[e+7];void 0!==r&&void 0!==n||od(e,t.length-8);var i=t[e+4]+t[e+5]*Math.pow(2,8)+t[e+6]*Math.pow(2,16)+(n<<24);return(BigInt(i)<<BigInt(32))+BigInt(r+t[++e]*Math.pow(2,8)+t[++e]*Math.pow(2,16)+t[++e]*Math.pow(2,24))},td.readBigUInt64LE=function(t,e){void 0===e&&(e=0),id(e,"offset");var r=t[e],n=t[e+7];void 0!==r&&void 0!==n||od(e,t.length-8);var i=r+t[++e]*Math.pow(2,8)+t[++e]*Math.pow(2,16)+t[++e]*Math.pow(2,24),o=t[++e]+t[++e]*Math.pow(2,8)+t[++e]*Math.pow(2,16)+n*Math.pow(2,24);return BigInt(i)+(BigInt(o)<<BigInt(32))};var sd,ad={};function ud(){if(sd)return ad;sd=1;var e=t&&t.__assign||function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)},r=t&&t.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},n=t&&t.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};Object.defineProperty(ad,"__esModule",{value:!0}),ad.PythConnection=void 0;var i=e_(),o=function(){function t(t,e,r,n){void 0===r&&(r="finalized"),this.productAccountKeyToProduct={},this.priceAccountKeyToProductAccountKey={},this.callbacks=[],this.connection=t,this.pythProgramKey=e,this.commitment=r,this.feedIds=n}return t.prototype.handleProductAccount=function(t,r,n){var o=i.parseProductData(r.data);this.productAccountKeyToProduct[t.toString()]={key:t,slot:n,accountInfo:e(e({},r),{data:o})},o.priceAccountKey&&(this.priceAccountKeyToProductAccountKey[o.priceAccountKey.toString()]=t.toString())},t.prototype.handlePriceAccount=function(t,r,n){var o=this.productAccountKeyToProduct[this.priceAccountKeyToProductAccountKey[t.toString()]];if(void 0===o)throw new Error("Got a price update for an unknown product. This is a bug in the library, please report it to the developers.");for(var s=i.parsePriceData(r.data,n),a={key:t,slot:n,accountInfo:e(e({},r),{data:s})},u=0,c=this.callbacks;u<c.length;u++){(0,c[u])(o,a)}},t.prototype.handleAccount=function(t,e,r,n){var o=i.parseBaseData(e.data);if(o)switch(o.type){case i.AccountType.Mapping:break;case i.AccountType.Product:this.handleProductAccount(t,e,n);break;case i.AccountType.Price:r||this.handlePriceAccount(t,e,n);break;case i.AccountType.Test:case i.AccountType.Permission:break;default:throw new Error("Unknown account type: "+o.type+". Try upgrading pyth-client.")}},t.prototype.start=function(){return r(this,void 0,void 0,(function(){var t,e,r,i,o,s,a,u,c,h,l,f=this;return n(this,(function(n){switch(n.label){case 0:return[4,Promise.all([this.connection.getProgramAccounts(this.pythProgramKey,this.commitment),this.connection.getSlot(this.commitment)])];case 1:for(t=n.sent(),e=t[0],r=t[1],i=0,o=e;i<o.length;i++)l=o[i],this.handleAccount(l.pubkey,l.account,!0,r);if(this.feedIds)for(s=this.feedIds.map((function(t){return t.toString()})),e=e.filter((function(t){return s.includes(t.pubkey.toString())})),a=function(t){u.connection.onAccountChange(t.pubkey,(function(e,r){f.handleAccount(t.pubkey,e,!1,r.slot)}),u.commitment)},u=this,c=0,h=e;c<h.length;c++)l=h[c],a(l);else this.connection.onProgramAccountChange(this.pythProgramKey,(function(t,e){f.handleAccount(t.accountId,t.accountInfo,!1,e.slot)}),this.commitment);return[2]}}))}))},t.prototype.onPriceChange=function(t){this.callbacks.push((function(e,r){return t(e.accountInfo.data.product,r.accountInfo.data)}))},t.prototype.onPriceChangeVerbose=function(t){this.callbacks.push(t)},t.prototype.stop=function(){return r(this,void 0,void 0,(function(){return n(this,(function(t){return this.callbacks=[],[2]}))}))},t}();return ad.PythConnection=o,ad}var cd,hd={};function ld(){if(cd)return hd;cd=1;var e=t&&t.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}u((n=n.apply(t,e||[])).next())}))},r=t&&t.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};Object.defineProperty(hd,"__esModule",{value:!0}),hd.PythHttpClient=void 0;var n=e_(),i=function(){function t(t,e,r){void 0===r&&(r="finalized"),this.connection=t,this.pythProgramKey=e,this.commitment=r}return t.prototype.getData=function(){return e(this,void 0,void 0,(function(){var t,e,i,o,s,a,u,c,h,l,f,d;return r(this,(function(r){switch(r.label){case 0:return t=new Set,e=new Set,i=new Set,o=new Map,s=new Map,a=new Array,[4,Promise.all([this.connection.getProgramAccounts(this.pythProgramKey,this.commitment),this.connection.getSlot(this.commitment)])];case 1:return u=r.sent(),c=u[0],h=u[1],l=new Array,f=new Map,c.forEach((function(r){var s=n.parseBaseData(r.account.data);if(s)switch(s.type){case n.AccountType.Mapping:break;case n.AccountType.Product:var a=n.parseProductData(r.account.data);f.set(r.pubkey.toBase58(),a.product),t.add(a.product.asset_type),e.add(a.product.symbol),i.add(a.product),o.set(a.product.symbol,a.product);break;case n.AccountType.Price:var u=n.parsePriceData(r.account.data,h);l.push(u);break;case n.AccountType.Test:break;case n.AccountType.Permission:d=n.parsePermissionData(r.account.data);break;default:throw new Error("Unknown account type: "+s.type+". Try upgrading pyth-client.")}})),l.forEach((function(t){var e=f.get(t.productAccountKey.toBase58());e&&(s.set(e.symbol,t),a.push(t))})),[2,{assetTypes:Array.from(t),symbols:Array.from(e),products:Array.from(i),productFromSymbol:o,productPrice:s,prices:a,permissionData:d}]}}))}))},t.prototype.getAssetPricesFromAccounts=function(t){return e(this,void 0,void 0,(function(){var e,i,o,s,a,u,c,h;return r(this,(function(r){switch(r.label){case 0:return e=[],[4,Promise.all([this.connection.getMultipleAccountsInfo(t,this.commitment),this.connection.getSlot(this.commitment)])];case 1:for(i=r.sent(),o=i[0],s=i[1],a=0;a<t.length;a++){if(!(u=o[a]))throw new Error("Could not get account info for account "+t[a].toBase58());if(void 0===(c=n.parseBaseData(u.data))||c.type!==n.AccountType.Price)throw new Error("Account "+t[a].toBase58()+" is not a price account");h=n.parsePriceData(u.data,s),e.push(h)}return[2,e]}}))}))},t}();return hd.PythHttpClient=i,hd}var fd,dd={};var pd,yd={},gd={},md=e(se("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")),wd={exports:{}};function bd(){if(pd)return wd.exports;pd=1;const t=/[\p{Lu}]/u,e=/[\p{Ll}]/u,r=/^[\p{Lu}](?![\p{Lu}])/gu,n=/([\p{Alpha}\p{N}_]|$)/u,i=/[_.\- ]+/,o=new RegExp("^"+i.source),s=new RegExp(i.source+n.source,"gu"),a=new RegExp("\\d+"+n.source,"gu"),u=(n,i)=>{if("string"!=typeof n&&!Array.isArray(n))throw new TypeError("Expected the input to be `string | string[]`");if(i={pascalCase:!1,preserveConsecutiveUppercase:!1,...i},n=Array.isArray(n)?n.map((t=>t.trim())).filter((t=>t.length)).join("-"):n.trim(),0===n.length)return"";const u=!1===i.locale?t=>t.toLowerCase():t=>t.toLocaleLowerCase(i.locale),c=!1===i.locale?t=>t.toUpperCase():t=>t.toLocaleUpperCase(i.locale);if(1===n.length)return i.pascalCase?c(n):u(n);return n!==u(n)&&(n=((r,n,i)=>{let o=!1,s=!1,a=!1;for(let u=0;u<r.length;u++){const c=r[u];o&&t.test(c)?(r=r.slice(0,u)+"-"+r.slice(u),o=!1,a=s,s=!0,u++):s&&a&&e.test(c)?(r=r.slice(0,u-1)+"-"+r.slice(u-1),a=s,s=!1,o=!0):(o=n(c)===c&&i(c)!==c,a=s,s=i(c)===c&&n(c)!==c)}return r})(n,u,c)),n=n.replace(o,""),n=i.preserveConsecutiveUppercase?((t,e)=>(r.lastIndex=0,t.replace(r,(t=>e(t)))))(n,u):u(n),i.pascalCase&&(n=c(n.charAt(0))+n.slice(1)),((t,e)=>(s.lastIndex=0,a.lastIndex=0,t.replace(s,((t,r)=>e(r))).replace(a,(t=>e(t)))))(n,c)};return wd.exports=u,wd.exports.default=u,wd.exports}var vd=e(bd()),_d={},kd={};class Ed{constructor(t,e){if(!Number.isInteger(t))throw new TypeError("span must be an integer");this.span=t,this.property=e}makeDestinationObject(){return{}}decode(t,e){throw new Error("Layout is abstract")}encode(t,e,r){throw new Error("Layout is abstract")}getSpan(t,e){if(0>this.span)throw new RangeError("indeterminate span");return this.span}replicate(t){const e=Object.create(this.constructor.prototype);return Object.assign(e,this),e.property=t,e}fromArray(t){}}function Sd(t,e){return e.property?t+"["+e.property+"]":t}kd.Layout=Ed,kd.nameWithProperty=Sd,kd.bindConstructorLayout=function(t,e){if("function"!=typeof t)throw new TypeError("Class must be constructor");if(t.hasOwnProperty("layout_"))throw new Error("Class is already bound to a layout");if(!(e&&e instanceof Ed))throw new TypeError("layout must be a Layout");if(e.hasOwnProperty("boundConstructor_"))throw new Error("layout is already bound to a constructor");t.layout_=e,e.boundConstructor_=t,e.makeDestinationObject=()=>new t,Object.defineProperty(t.prototype,"encode",{value:function(t,r){return e.encode(this,t,r)},writable:!0}),Object.defineProperty(t,"decode",{value:function(t,r){return e.decode(t,r)},writable:!0})};class Ad extends Ed{isCount(){throw new Error("ExternalLayout is abstract")}}class xd extends Ad{constructor(t,e){if(void 0===t&&(t=1),!Number.isInteger(t)||0>=t)throw new TypeError("elementSpan must be a (positive) integer");super(-1,e),this.elementSpan=t}isCount(){return!0}decode(t,e){void 0===e&&(e=0);const r=t.length-e;return Math.floor(r/this.elementSpan)}encode(t,e,r){return 0}}class Id extends Ad{constructor(t,e,r){if(!(t instanceof Ed))throw new TypeError("layout must be a Layout");if(void 0===e)e=0;else if(!Number.isInteger(e))throw new TypeError("offset must be integer or undefined");super(t.span,r||t.property),this.layout=t,this.offset=e}isCount(){return this.layout instanceof Bd||this.layout instanceof Md}decode(t,e){return void 0===e&&(e=0),this.layout.decode(t,e+this.offset)}encode(t,e,r){return void 0===r&&(r=0),this.layout.encode(t,e,r+this.offset)}}class Bd extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntLE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntLE(t,r,this.span),this.span}}class Md extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntBE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntBE(t,r,this.span),this.span}}class Pd extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readIntLE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeIntLE(t,r,this.span),this.span}}class Ld extends Ed{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readIntBE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeIntBE(t,r,this.span),this.span}}const Od=Math.pow(2,32);function Td(t){const e=Math.floor(t/Od);return{hi32:e,lo32:t-e*Od}}function Rd(t,e){return t*Od+e}class Ud extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return Rd(t.readUInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeUInt32LE(n.lo32,r),e.writeUInt32LE(n.hi32,r+4),8}}class Cd extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);return Rd(t.readUInt32BE(e),t.readUInt32BE(e+4))}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeUInt32BE(n.hi32,r),e.writeUInt32BE(n.lo32,r+4),8}}class Nd extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return Rd(t.readInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeUInt32LE(n.lo32,r),e.writeInt32LE(n.hi32,r+4),8}}class zd extends Ed{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);return Rd(t.readInt32BE(e),t.readUInt32BE(e+4))}encode(t,e,r){void 0===r&&(r=0);const n=Td(t);return e.writeInt32BE(n.hi32,r),e.writeUInt32BE(n.lo32,r+4),8}}class Dd extends Ed{constructor(t){super(4,t)}decode(t,e){return void 0===e&&(e=0),t.readFloatLE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeFloatLE(t,r),4}}class jd extends Ed{constructor(t){super(4,t)}decode(t,e){return void 0===e&&(e=0),t.readFloatBE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeFloatBE(t,r),4}}class Wd extends Ed{constructor(t){super(8,t)}decode(t,e){return void 0===e&&(e=0),t.readDoubleLE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeDoubleLE(t,r),8}}class Fd extends Ed{constructor(t){super(8,t)}decode(t,e){return void 0===e&&(e=0),t.readDoubleBE(e)}encode(t,e,r){return void 0===r&&(r=0),e.writeDoubleBE(t,r),8}}class Kd extends Ed{constructor(t,e,r){if(!(t instanceof Ed))throw new TypeError("elementLayout must be a Layout");if(!(e instanceof Ad&&e.isCount()||Number.isInteger(e)&&0<=e))throw new TypeError("count must be non-negative integer or an unsigned integer ExternalLayout");let n=-1;!(e instanceof Ad)&&0<t.span&&(n=e*t.span),super(n,r),this.elementLayout=t,this.count=e}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0,n=this.count;if(n instanceof Ad&&(n=n.decode(t,e)),0<this.elementLayout.span)r=n*this.elementLayout.span;else{let i=0;for(;i<n;)r+=this.elementLayout.getSpan(t,e+r),++i}return r}decode(t,e){void 0===e&&(e=0);const r=[];let n=0,i=this.count;for(i instanceof Ad&&(i=i.decode(t,e));n<i;)r.push(this.elementLayout.decode(t,e)),e+=this.elementLayout.getSpan(t,e),n+=1;return r}encode(t,e,r){void 0===r&&(r=0);const n=this.elementLayout,i=t.reduce(((t,i)=>t+n.encode(i,e,r+t)),0);return this.count instanceof Ad&&this.count.encode(t.length,e,r),i}}class qd extends Ed{constructor(t,e,r){if(!Array.isArray(t)||!t.reduce(((t,e)=>t&&e instanceof Ed),!0))throw new TypeError("fields must be array of Layout instances");"boolean"==typeof e&&void 0===r&&(r=e,e=void 0);for(const e of t)if(0>e.span&&void 0===e.property)throw new Error("fields cannot contain unnamed variable-length layout");let n=-1;try{n=t.reduce(((t,e)=>t+e.getSpan()),0)}catch(t){}super(n,e),this.fields=t,this.decodePrefixes=!!r}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;try{r=this.fields.reduce(((r,n)=>{const i=n.getSpan(t,e);return e+=i,r+i}),0)}catch(t){throw new RangeError("indeterminate span")}return r}decode(t,e){void 0===e&&(e=0);const r=this.makeDestinationObject();for(const n of this.fields)if(void 0!==n.property&&(r[n.property]=n.decode(t,e)),e+=n.getSpan(t,e),this.decodePrefixes&&t.length===e)break;return r}encode(t,e,r){void 0===r&&(r=0);const n=r;let i=0,o=0;for(const n of this.fields){let s=n.span;if(o=0<s?s:0,void 0!==n.property){const i=t[n.property];void 0!==i&&(o=n.encode(i,e,r),0>s&&(s=n.getSpan(e,r)))}i=r,r+=s}return i+o-n}fromArray(t){const e=this.makeDestinationObject();for(const r of this.fields)void 0!==r.property&&0<t.length&&(e[r.property]=t.shift());return e}layoutFor(t){if("string"!=typeof t)throw new TypeError("property must be string");for(const e of this.fields)if(e.property===t)return e}offsetOf(t){if("string"!=typeof t)throw new TypeError("property must be string");let e=0;for(const r of this.fields){if(r.property===t)return e;0>r.span?e=-1:0<=e&&(e+=r.span)}}}class Vd{constructor(t){this.property=t}decode(){throw new Error("UnionDiscriminator is abstract")}encode(){throw new Error("UnionDiscriminator is abstract")}}class Hd extends Vd{constructor(t,e){if(!(t instanceof Ad&&t.isCount()))throw new TypeError("layout must be an unsigned integer ExternalLayout");super(e||t.property||"variant"),this.layout=t}decode(t,e){return this.layout.decode(t,e)}encode(t,e,r){return this.layout.encode(t,e,r)}}class $d extends Ed{constructor(t,e,r){const n=t instanceof Bd||t instanceof Md;if(n)t=new Hd(new Id(t));else if(t instanceof Ad&&t.isCount())t=new Hd(t);else if(!(t instanceof Vd))throw new TypeError("discr must be a UnionDiscriminator or an unsigned integer layout");if(void 0===e&&(e=null),!(null===e||e instanceof Ed))throw new TypeError("defaultLayout must be null or a Layout");if(null!==e){if(0>e.span)throw new Error("defaultLayout must have constant span");void 0===e.property&&(e=e.replicate("content"))}let i=-1;e&&(i=e.span,0<=i&&n&&(i+=t.layout.span)),super(i,r),this.discriminator=t,this.usesPrefixDiscriminator=n,this.defaultLayout=e,this.registry={};let o=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(t){return o(t)},this.configGetSourceVariant=function(t){o=t.bind(this)}}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);const r=this.getVariant(t,e);if(!r)throw new Error("unable to determine span for unrecognized variant");return r.getSpan(t,e)}defaultGetSourceVariant(t){if(t.hasOwnProperty(this.discriminator.property)){if(this.defaultLayout&&t.hasOwnProperty(this.defaultLayout.property))return;const e=this.registry[t[this.discriminator.property]];if(e&&(!e.layout||t.hasOwnProperty(e.property)))return e}else for(const e in this.registry){const r=this.registry[e];if(t.hasOwnProperty(r.property))return r}throw new Error("unable to infer src variant")}decode(t,e){let r;void 0===e&&(e=0);const n=this.discriminator,i=n.decode(t,e);let o=this.registry[i];if(void 0===o){let s=0;o=this.defaultLayout,this.usesPrefixDiscriminator&&(s=n.layout.span),r=this.makeDestinationObject(),r[n.property]=i,r[o.property]=this.defaultLayout.decode(t,e+s)}else r=o.decode(t,e);return r}encode(t,e,r){void 0===r&&(r=0);const n=this.getSourceVariant(t);if(void 0===n){const n=this.discriminator,i=this.defaultLayout;let o=0;return this.usesPrefixDiscriminator&&(o=n.layout.span),n.encode(t[n.property],e,r),o+i.encode(t[i.property],e,r+o)}return n.encode(t,e,r)}addVariant(t,e,r){const n=new Zd(this,t,e,r);return this.registry[t]=n,n}getVariant(t,e){let r=t;return Buffer.isBuffer(t)&&(void 0===e&&(e=0),r=this.discriminator.decode(t,e)),this.registry[r]}}class Zd extends Ed{constructor(t,e,r,n){if(!(t instanceof $d))throw new TypeError("union must be a Union");if(!Number.isInteger(e)||0>e)throw new TypeError("variant must be a (non-negative) integer");if("string"==typeof r&&void 0===n&&(n=r,r=null),r){if(!(r instanceof Ed))throw new TypeError("layout must be a Layout");if(null!==t.defaultLayout&&0<=r.span&&r.span>t.defaultLayout.span)throw new Error("variant span exceeds span of containing union");if("string"!=typeof n)throw new TypeError("variant must have a String property")}let i=t.span;0>t.span&&(i=r?r.span:0,0<=i&&t.usesPrefixDiscriminator&&(i+=t.discriminator.layout.span)),super(i,n),this.union=t,this.variant=e,this.layout=r||null}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;return this.union.usesPrefixDiscriminator&&(r=this.union.discriminator.layout.span),r+this.layout.getSpan(t,e+r)}decode(t,e){const r=this.makeDestinationObject();if(void 0===e&&(e=0),this!==this.union.getVariant(t,e))throw new Error("variant mismatch");let n=0;return this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout?r[this.property]=this.layout.decode(t,e+n):this.property?r[this.property]=!0:this.union.usesPrefixDiscriminator&&(r[this.union.discriminator.property]=this.variant),r}encode(t,e,r){void 0===r&&(r=0);let n=0;if(this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout&&!t.hasOwnProperty(this.property))throw new TypeError("variant lacks property "+this.property);this.union.discriminator.encode(this.variant,e,r);let i=n;if(this.layout&&(this.layout.encode(t[this.property],e,r+n),i+=this.layout.getSpan(e,r+n),0<=this.union.span&&i>this.union.span))throw new Error("encoded variant overruns containing union");return i}fromArray(t){if(this.layout)return this.layout.fromArray(t)}}function Gd(t){return 0>t&&(t+=4294967296),t}class Yd extends Ed{constructor(t,e,r){if(!(t instanceof Bd||t instanceof Md))throw new TypeError("word must be a UInt or UIntBE layout");if("string"==typeof e&&void 0===r&&(r=e,e=void 0),4<t.span)throw new RangeError("word cannot exceed 32 bits");super(t.span,r),this.word=t,this.msb=!!e,this.fields=[];let n=0;this._packedSetValue=function(t){return n=Gd(t),this},this._packedGetValue=function(){return n}}decode(t,e){const r=this.makeDestinationObject();void 0===e&&(e=0);const n=this.word.decode(t,e);this._packedSetValue(n);for(const t of this.fields)void 0!==t.property&&(r[t.property]=t.decode(n));return r}encode(t,e,r){void 0===r&&(r=0);const n=this.word.decode(e,r);this._packedSetValue(n);for(const e of this.fields)if(void 0!==e.property){const r=t[e.property];void 0!==r&&e.encode(r)}return this.word.encode(this._packedGetValue(),e,r)}addField(t,e){const r=new Jd(this,t,e);return this.fields.push(r),r}addBoolean(t){const e=new Xd(this,t);return this.fields.push(e),e}fieldFor(t){if("string"!=typeof t)throw new TypeError("property must be string");for(const e of this.fields)if(e.property===t)return e}}class Jd{constructor(t,e,r){if(!(t instanceof Yd))throw new TypeError("container must be a BitStructure");if(!Number.isInteger(e)||0>=e)throw new TypeError("bits must be positive integer");const n=8*t.span,i=t.fields.reduce(((t,e)=>t+e.bits),0);if(e+i>n)throw new Error("bits too long for span remainder ("+(n-i)+" of "+n+" remain)");this.container=t,this.bits=e,this.valueMask=(1<<e)-1,32===e&&(this.valueMask=4294967295),this.start=i,this.container.msb&&(this.start=n-i-e),this.wordMask=Gd(this.valueMask<<this.start),this.property=r}decode(){return Gd(this.container._packedGetValue()&this.wordMask)>>>this.start}encode(t){if(!Number.isInteger(t)||t!==Gd(t&this.valueMask))throw new TypeError(Sd("BitField.encode",this)+" value must be integer not exceeding "+this.valueMask);const e=this.container._packedGetValue(),r=Gd(t<<this.start);this.container._packedSetValue(Gd(e&~this.wordMask)|r)}}class Xd extends Jd{constructor(t,e){super(t,1,e)}decode(t,e){return!!Jd.prototype.decode.call(this,t,e)}encode(t){return"boolean"==typeof t&&(t=+t),Jd.prototype.encode.call(this,t)}}class Qd extends Ed{constructor(t,e){if(!(t instanceof Ad&&t.isCount()||Number.isInteger(t)&&0<=t))throw new TypeError("length must be positive integer or an unsigned integer ExternalLayout");let r=-1;t instanceof Ad||(r=t),super(r,e),this.length=t}getSpan(t,e){let r=this.span;return 0>r&&(r=this.length.decode(t,e)),r}decode(t,e){void 0===e&&(e=0);let r=this.span;return 0>r&&(r=this.length.decode(t,e)),t.slice(e,e+r)}encode(t,e,r){let n=this.length;if(this.length instanceof Ad&&(n=t.length),!Buffer.isBuffer(t)||n!==t.length)throw new TypeError(Sd("Blob.encode",this)+" requires (length "+n+") Buffer as src");if(r+n>e.length)throw new RangeError("encoding overruns Buffer");return e.write(t.toString("hex"),r,n,"hex"),this.length instanceof Ad&&this.length.encode(n,e,r),n}}class tp extends Ed{constructor(t){super(-1,t)}getSpan(t,e){if(!Buffer.isBuffer(t))throw new TypeError("b must be a Buffer");void 0===e&&(e=0);let r=e;for(;r<t.length&&0!==t[r];)r+=1;return 1+r-e}decode(t,e,r){void 0===e&&(e=0);let n=this.getSpan(t,e);return t.slice(e,e+n-1).toString("utf-8")}encode(t,e,r){void 0===r&&(r=0),"string"!=typeof t&&(t=t.toString());const n=new Buffer(t,"utf8"),i=n.length;if(r+i>e.length)throw new RangeError("encoding overruns Buffer");return n.copy(e,r),e[r+i]=0,i+1}}class ep extends Ed{constructor(t,e){if("string"==typeof t&&void 0===e&&(e=t,t=void 0),void 0===t)t=-1;else if(!Number.isInteger(t))throw new TypeError("maxSpan must be an integer");super(-1,e),this.maxSpan=t}getSpan(t,e){if(!Buffer.isBuffer(t))throw new TypeError("b must be a Buffer");return void 0===e&&(e=0),t.length-e}decode(t,e,r){void 0===e&&(e=0);let n=this.getSpan(t,e);if(0<=this.maxSpan&&this.maxSpan<n)throw new RangeError("text length exceeds maxSpan");return t.slice(e,e+n).toString("utf-8")}encode(t,e,r){void 0===r&&(r=0),"string"!=typeof t&&(t=t.toString());const n=new Buffer(t,"utf8"),i=n.length;if(0<=this.maxSpan&&this.maxSpan<i)throw new RangeError("text length exceeds maxSpan");if(r+i>e.length)throw new RangeError("encoding overruns Buffer");return n.copy(e,r),i}}class rp extends Ed{constructor(t,e){super(0,e),this.value=t}decode(t,e,r){return this.value}encode(t,e,r){return 0}}kd.ExternalLayout=Ad,kd.GreedyCount=xd,kd.OffsetLayout=Id,kd.UInt=Bd,kd.UIntBE=Md,kd.Int=Pd,kd.IntBE=Ld,kd.Float=Dd,kd.FloatBE=jd,kd.Double=Wd,kd.DoubleBE=Fd,kd.Sequence=Kd,kd.Structure=qd,kd.UnionDiscriminator=Vd,kd.UnionLayoutDiscriminator=Hd,kd.Union=$d,kd.VariantLayout=Zd,kd.BitStructure=Yd,kd.BitField=Jd,kd.Boolean=Xd,kd.Blob=Qd,kd.CString=tp,kd.UTF8=ep,kd.Constant=rp,kd.greedy=(t,e)=>new xd(t,e),kd.offset=(t,e,r)=>new Id(t,e,r),kd.u8=t=>new Bd(1,t),kd.u16=t=>new Bd(2,t),kd.u24=t=>new Bd(3,t),kd.u32=t=>new Bd(4,t),kd.u40=t=>new Bd(5,t),kd.u48=t=>new Bd(6,t),kd.nu64=t=>new Ud(t),kd.u16be=t=>new Md(2,t),kd.u24be=t=>new Md(3,t),kd.u32be=t=>new Md(4,t),kd.u40be=t=>new Md(5,t),kd.u48be=t=>new Md(6,t),kd.nu64be=t=>new Cd(t),kd.s8=t=>new Pd(1,t),kd.s16=t=>new Pd(2,t),kd.s24=t=>new Pd(3,t),kd.s32=t=>new Pd(4,t),kd.s40=t=>new Pd(5,t),kd.s48=t=>new Pd(6,t),kd.ns64=t=>new Nd(t),kd.s16be=t=>new Ld(2,t),kd.s24be=t=>new Ld(3,t),kd.s32be=t=>new Ld(4,t),kd.s40be=t=>new Ld(5,t),kd.s48be=t=>new Ld(6,t),kd.ns64be=t=>new zd(t),kd.f32=t=>new Dd(t),kd.f32be=t=>new jd(t),kd.f64=t=>new Wd(t),kd.f64be=t=>new Fd(t),kd.struct=(t,e,r)=>new qd(t,e,r),kd.bits=(t,e,r)=>new Yd(t,e,r),kd.seq=(t,e,r)=>new Kd(t,e,r),kd.union=(t,e,r)=>new $d(t,e,r),kd.unionLayoutDiscriminator=(t,e)=>new Hd(t,e),kd.blob=(t,e)=>new Qd(t,e),kd.cstr=t=>new tp(t),kd.utf8=(t,e)=>new ep(t,e),kd.const=(t,e)=>new rp(t,e),function(e){var r=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.map=e.array=e.rustEnum=e.str=e.vecU8=e.tagged=e.vec=e.bool=e.option=e.publicKey=e.i256=e.u256=e.i128=e.u128=e.i64=e.u64=e.struct=e.f64=e.f32=e.i32=e.u32=e.i16=e.u16=e.i8=e.u8=void 0;const n=kd,i=Qf,o=r(re);var s=kd;Object.defineProperty(e,"u8",{enumerable:!0,get:function(){return s.u8}}),Object.defineProperty(e,"i8",{enumerable:!0,get:function(){return s.s8}}),Object.defineProperty(e,"u16",{enumerable:!0,get:function(){return s.u16}}),Object.defineProperty(e,"i16",{enumerable:!0,get:function(){return s.s16}}),Object.defineProperty(e,"u32",{enumerable:!0,get:function(){return s.u32}}),Object.defineProperty(e,"i32",{enumerable:!0,get:function(){return s.s32}}),Object.defineProperty(e,"f32",{enumerable:!0,get:function(){return s.f32}}),Object.defineProperty(e,"f64",{enumerable:!0,get:function(){return s.f64}}),Object.defineProperty(e,"struct",{enumerable:!0,get:function(){return s.struct}});class a extends n.Layout{constructor(t,e,r){super(t,r),this.blob=(0,n.blob)(t),this.signed=e}decode(t,e=0){const r=new o.default(this.blob.decode(t,e),10,"le");return this.signed?r.fromTwos(8*this.span).clone():r}encode(t,e,r=0){return this.signed&&(t=t.toTwos(8*this.span)),this.blob.encode(t.toArrayLike(Buffer,"le",this.span),e,r)}}function u(t){return new a(8,!1,t)}e.u64=u,e.i64=function(t){return new a(8,!0,t)},e.u128=function(t){return new a(16,!1,t)},e.i128=function(t){return new a(16,!0,t)},e.u256=function(t){return new a(32,!1,t)},e.i256=function(t){return new a(32,!0,t)};class c extends n.Layout{constructor(t,e,r,n){super(t.span,n),this.layout=t,this.decoder=e,this.encoder=r}decode(t,e){return this.decoder(this.layout.decode(t,e))}encode(t,e,r){return this.layout.encode(this.encoder(t),e,r)}getSpan(t,e){return this.layout.getSpan(t,e)}}e.publicKey=function(t){return new c((0,n.blob)(32),(t=>new i.PublicKey(t)),(t=>t.toBuffer()),t)};class h extends n.Layout{constructor(t,e){super(-1,e),this.layout=t,this.discriminator=(0,n.u8)()}encode(t,e,r=0){return null==t?this.discriminator.encode(0,e,r):(this.discriminator.encode(1,e,r),this.layout.encode(t,e,r+1)+1)}decode(t,e=0){const r=this.discriminator.decode(t,e);if(0===r)return null;if(1===r)return this.layout.decode(t,e+1);throw new Error("Invalid option "+this.property)}getSpan(t,e=0){const r=this.discriminator.decode(t,e);if(0===r)return 1;if(1===r)return this.layout.getSpan(t,e+1)+1;throw new Error("Invalid option "+this.property)}}function l(t){if(0===t)return!1;if(1===t)return!0;throw new Error("Invalid bool: "+t)}function f(t){return t?1:0}function d(t){const e=(0,n.u32)("length"),r=(0,n.struct)([e,(0,n.blob)((0,n.offset)(e,-e.span),"data")]);return new c(r,(({data:t})=>t),(t=>({data:t})),t)}e.option=function(t,e){return new h(t,e)},e.bool=function(t){return new c((0,n.u8)(),l,f,t)},e.vec=function(t,e){const r=(0,n.u32)("length"),i=(0,n.struct)([r,(0,n.seq)(t,(0,n.offset)(r,-r.span),"values")]);return new c(i,(({values:t})=>t),(t=>({values:t})),e)},e.tagged=function(t,e,r){const i=(0,n.struct)([u("tag"),e.replicate("data")]);return new c(i,(function({tag:e,data:r}){if(!e.eq(t))throw new Error("Invalid tag, expected: "+t.toString("hex")+", got: "+e.toString("hex"));return r}),(e=>({tag:t,data:e})),r)},e.vecU8=d,e.str=function(t){return new c(d(),(t=>t.toString("utf-8")),(t=>Buffer.from(t,"utf-8")),t)},e.rustEnum=function(t,e,r){const i=(0,n.union)(null!=r?r:(0,n.u8)(),e);return t.forEach(((t,e)=>i.addVariant(e,t,t.property))),i},e.array=function(t,e,r){const i=(0,n.struct)([(0,n.seq)(t,e,"values")]);return new c(i,(({values:t})=>t),(t=>({values:t})),r)};class p extends n.Layout{constructor(t,e,r){super(t.span+e.span,r),this.keyLayout=t,this.valueLayout=e}decode(t,e){e=e||0;return[this.keyLayout.decode(t,e),this.valueLayout.decode(t,e+this.keyLayout.getSpan(t,e))]}encode(t,e,r){r=r||0;const n=this.keyLayout.encode(t[0],e,r);return n+this.valueLayout.encode(t[1],e,r+n)}getSpan(t,e){return this.keyLayout.getSpan(t,e)+this.valueLayout.getSpan(t,e)}}e.map=function(t,e,r){const i=(0,n.u32)("length"),o=(0,n.struct)([i,(0,n.seq)(new p(t,e),(0,n.offset)(i,-i.span),"values")]);return new c(o,(({values:t})=>new Map(t)),(t=>({values:Array.from(t.entries())})),r)}}(_d);function np(t){let e=t.length;for(;--e>=0;)t[e]=0}const ip=256,op=286,sp=30,ap=15,up=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),cp=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),hp=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),lp=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),fp=new Array(576);np(fp);const dp=new Array(60);np(dp);const pp=new Array(512);np(pp);const yp=new Array(256);np(yp);const gp=new Array(29);np(gp);const mp=new Array(sp);function wp(t,e,r,n,i){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=t&&t.length}let bp,vp,_p;function kp(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}np(mp);const Ep=t=>t<256?pp[t]:pp[256+(t>>>7)],Sp=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},Ap=(t,e,r)=>{t.bi_valid>16-r?(t.bi_buf|=e<<t.bi_valid&65535,Sp(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=r-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=r)},xp=(t,e,r)=>{Ap(t,r[2*e],r[2*e+1])},Ip=(t,e)=>{let r=0;do{r|=1&t,t>>>=1,r<<=1}while(--e>0);return r>>>1},Bp=(t,e,r)=>{const n=new Array(16);let i,o,s=0;for(i=1;i<=ap;i++)s=s+r[i-1]<<1,n[i]=s;for(o=0;o<=e;o++){let e=t[2*o+1];0!==e&&(t[2*o]=Ip(n[e]++,e))}},Mp=t=>{let e;for(e=0;e<op;e++)t.dyn_ltree[2*e]=0;for(e=0;e<sp;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},Pp=t=>{t.bi_valid>8?Sp(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},Lp=(t,e,r,n)=>{const i=2*e,o=2*r;return t[i]<t[o]||t[i]===t[o]&&n[e]<=n[r]},Op=(t,e,r)=>{const n=t.heap[r];let i=r<<1;for(;i<=t.heap_len&&(i<t.heap_len&&Lp(e,t.heap[i+1],t.heap[i],t.depth)&&i++,!Lp(e,n,t.heap[i],t.depth));)t.heap[r]=t.heap[i],r=i,i<<=1;t.heap[r]=n},Tp=(t,e,r)=>{let n,i,o,s,a=0;if(0!==t.sym_next)do{n=255&t.pending_buf[t.sym_buf+a++],n+=(255&t.pending_buf[t.sym_buf+a++])<<8,i=t.pending_buf[t.sym_buf+a++],0===n?xp(t,i,e):(o=yp[i],xp(t,o+ip+1,e),s=up[o],0!==s&&(i-=gp[o],Ap(t,i,s)),n--,o=Ep(n),xp(t,o,r),s=cp[o],0!==s&&(n-=mp[o],Ap(t,n,s)))}while(a<t.sym_next);xp(t,256,e)},Rp=(t,e)=>{const r=e.dyn_tree,n=e.stat_desc.static_tree,i=e.stat_desc.has_stree,o=e.stat_desc.elems;let s,a,u,c=-1;for(t.heap_len=0,t.heap_max=573,s=0;s<o;s++)0!==r[2*s]?(t.heap[++t.heap_len]=c=s,t.depth[s]=0):r[2*s+1]=0;for(;t.heap_len<2;)u=t.heap[++t.heap_len]=c<2?++c:0,r[2*u]=1,t.depth[u]=0,t.opt_len--,i&&(t.static_len-=n[2*u+1]);for(e.max_code=c,s=t.heap_len>>1;s>=1;s--)Op(t,r,s);u=o;do{s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],Op(t,r,1),a=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=a,r[2*u]=r[2*s]+r[2*a],t.depth[u]=(t.depth[s]>=t.depth[a]?t.depth[s]:t.depth[a])+1,r[2*s+1]=r[2*a+1]=u,t.heap[1]=u++,Op(t,r,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const r=e.dyn_tree,n=e.max_code,i=e.stat_desc.static_tree,o=e.stat_desc.has_stree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,u=e.stat_desc.max_length;let c,h,l,f,d,p,y=0;for(f=0;f<=ap;f++)t.bl_count[f]=0;for(r[2*t.heap[t.heap_max]+1]=0,c=t.heap_max+1;c<573;c++)h=t.heap[c],f=r[2*r[2*h+1]+1]+1,f>u&&(f=u,y++),r[2*h+1]=f,h>n||(t.bl_count[f]++,d=0,h>=a&&(d=s[h-a]),p=r[2*h],t.opt_len+=p*(f+d),o&&(t.static_len+=p*(i[2*h+1]+d)));if(0!==y){do{for(f=u-1;0===t.bl_count[f];)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[u]--,y-=2}while(y>0);for(f=u;0!==f;f--)for(h=t.bl_count[f];0!==h;)l=t.heap[--c],l>n||(r[2*l+1]!==f&&(t.opt_len+=(f-r[2*l+1])*r[2*l],r[2*l+1]=f),h--)}})(t,e),Bp(r,c,t.bl_count)},Up=(t,e,r)=>{let n,i,o=-1,s=e[1],a=0,u=7,c=4;for(0===s&&(u=138,c=3),e[2*(r+1)+1]=65535,n=0;n<=r;n++)i=s,s=e[2*(n+1)+1],++a<u&&i===s||(a<c?t.bl_tree[2*i]+=a:0!==i?(i!==o&&t.bl_tree[2*i]++,t.bl_tree[32]++):a<=10?t.bl_tree[34]++:t.bl_tree[36]++,a=0,o=i,0===s?(u=138,c=3):i===s?(u=6,c=3):(u=7,c=4))},Cp=(t,e,r)=>{let n,i,o=-1,s=e[1],a=0,u=7,c=4;for(0===s&&(u=138,c=3),n=0;n<=r;n++)if(i=s,s=e[2*(n+1)+1],!(++a<u&&i===s)){if(a<c)do{xp(t,i,t.bl_tree)}while(0!=--a);else 0!==i?(i!==o&&(xp(t,i,t.bl_tree),a--),xp(t,16,t.bl_tree),Ap(t,a-3,2)):a<=10?(xp(t,17,t.bl_tree),Ap(t,a-3,3)):(xp(t,18,t.bl_tree),Ap(t,a-11,7));a=0,o=i,0===s?(u=138,c=3):i===s?(u=6,c=3):(u=7,c=4)}};let Np=!1;const zp=(t,e,r,n)=>{Ap(t,0+(n?1:0),3),Pp(t),Sp(t,r),Sp(t,~r),r&&t.pending_buf.set(t.window.subarray(e,e+r),t.pending),t.pending+=r};var Dp=t=>{Np||((()=>{let t,e,r,n,i;const o=new Array(16);for(r=0,n=0;n<28;n++)for(gp[n]=r,t=0;t<1<<up[n];t++)yp[r++]=n;for(yp[r-1]=n,i=0,n=0;n<16;n++)for(mp[n]=i,t=0;t<1<<cp[n];t++)pp[i++]=n;for(i>>=7;n<sp;n++)for(mp[n]=i<<7,t=0;t<1<<cp[n]-7;t++)pp[256+i++]=n;for(e=0;e<=ap;e++)o[e]=0;for(t=0;t<=143;)fp[2*t+1]=8,t++,o[8]++;for(;t<=255;)fp[2*t+1]=9,t++,o[9]++;for(;t<=279;)fp[2*t+1]=7,t++,o[7]++;for(;t<=287;)fp[2*t+1]=8,t++,o[8]++;for(Bp(fp,287,o),t=0;t<sp;t++)dp[2*t+1]=5,dp[2*t]=Ip(t,5);bp=new wp(fp,up,257,op,ap),vp=new wp(dp,cp,0,sp,ap),_p=new wp(new Array(0),hp,0,19,7)})(),Np=!0),t.l_desc=new kp(t.dyn_ltree,bp),t.d_desc=new kp(t.dyn_dtree,vp),t.bl_desc=new kp(t.bl_tree,_p),t.bi_buf=0,t.bi_valid=0,Mp(t)},jp=(t,e,r,n)=>{let i,o,s=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,r=4093624447;for(e=0;e<=31;e++,r>>>=1)if(1&r&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<ip;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),Rp(t,t.l_desc),Rp(t,t.d_desc),s=(t=>{let e;for(Up(t,t.dyn_ltree,t.l_desc.max_code),Up(t,t.dyn_dtree,t.d_desc.max_code),Rp(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*lp[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),i=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,o<=i&&(i=o)):i=o=r+5,r+4<=i&&-1!==e?zp(t,e,r,n):4===t.strategy||o===i?(Ap(t,2+(n?1:0),3),Tp(t,fp,dp)):(Ap(t,4+(n?1:0),3),((t,e,r,n)=>{let i;for(Ap(t,e-257,5),Ap(t,r-1,5),Ap(t,n-4,4),i=0;i<n;i++)Ap(t,t.bl_tree[2*lp[i]+1],3);Cp(t,t.dyn_ltree,e-1),Cp(t,t.dyn_dtree,r-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),Tp(t,t.dyn_ltree,t.dyn_dtree)),Mp(t),n&&Pp(t)},Wp=(t,e,r)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=r,0===e?t.dyn_ltree[2*r]++:(t.matches++,e--,t.dyn_ltree[2*(yp[r]+ip+1)]++,t.dyn_dtree[2*Ep(e)]++),t.sym_next===t.sym_end),Fp=t=>{Ap(t,2,3),xp(t,256,fp),(t=>{16===t.bi_valid?(Sp(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)},Kp={_tr_init:Dp,_tr_stored_block:zp,_tr_flush_block:jp,_tr_tally:Wp,_tr_align:Fp};var qp=(t,e,r,n)=>{let i=65535&t|0,o=t>>>16&65535|0,s=0;for(;0!==r;){s=r>2e3?2e3:r,r-=s;do{i=i+e[n++]|0,o=o+i|0}while(--s);i%=65521,o%=65521}return i|o<<16|0};const Vp=new Uint32Array((()=>{let t,e=[];for(var r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e})());var Hp=(t,e,r,n)=>{const i=Vp,o=n+r;t^=-1;for(let r=n;r<o;r++)t=t>>>8^i[255&(t^e[r])];return-1^t},$p={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Zp={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:Gp,_tr_stored_block:Yp,_tr_flush_block:Jp,_tr_tally:Xp,_tr_align:Qp}=Kp,{Z_NO_FLUSH:ty,Z_PARTIAL_FLUSH:ey,Z_FULL_FLUSH:ry,Z_FINISH:ny,Z_BLOCK:iy,Z_OK:oy,Z_STREAM_END:sy,Z_STREAM_ERROR:ay,Z_DATA_ERROR:uy,Z_BUF_ERROR:cy,Z_DEFAULT_COMPRESSION:hy,Z_FILTERED:ly,Z_HUFFMAN_ONLY:fy,Z_RLE:dy,Z_FIXED:py,Z_DEFAULT_STRATEGY:yy,Z_UNKNOWN:gy,Z_DEFLATED:my}=Zp,wy=258,by=262,vy=42,_y=113,ky=666,Ey=(t,e)=>(t.msg=$p[e],e),Sy=t=>2*t-(t>4?9:0),Ay=t=>{let e=t.length;for(;--e>=0;)t[e]=0},xy=t=>{let e,r,n,i=t.w_size;e=t.hash_size,n=e;do{r=t.head[--n],t.head[n]=r>=i?r-i:0}while(--e);e=i,n=e;do{r=t.prev[--n],t.prev[n]=r>=i?r-i:0}while(--e)};let Iy=(t,e,r)=>(e<<t.hash_shift^r)&t.hash_mask;const By=t=>{const e=t.state;let r=e.pending;r>t.avail_out&&(r=t.avail_out),0!==r&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+r),t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,0===e.pending&&(e.pending_out=0))},My=(t,e)=>{Jp(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,By(t.strm)},Py=(t,e)=>{t.pending_buf[t.pending++]=e},Ly=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Oy=(t,e,r,n)=>{let i=t.avail_in;return i>n&&(i=n),0===i?0:(t.avail_in-=i,e.set(t.input.subarray(t.next_in,t.next_in+i),r),1===t.state.wrap?t.adler=qp(t.adler,e,i,r):2===t.state.wrap&&(t.adler=Hp(t.adler,e,i,r)),t.next_in+=i,t.total_in+=i,i)},Ty=(t,e)=>{let r,n,i=t.max_chain_length,o=t.strstart,s=t.prev_length,a=t.nice_match;const u=t.strstart>t.w_size-by?t.strstart-(t.w_size-by):0,c=t.window,h=t.w_mask,l=t.prev,f=t.strstart+wy;let d=c[o+s-1],p=c[o+s];t.prev_length>=t.good_match&&(i>>=2),a>t.lookahead&&(a=t.lookahead);do{if(r=e,c[r+s]===p&&c[r+s-1]===d&&c[r]===c[o]&&c[++r]===c[o+1]){o+=2,r++;do{}while(c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&c[++o]===c[++r]&&o<f);if(n=wy-(f-o),o=f-wy,n>s){if(t.match_start=e,s=n,n>=a)break;d=c[o+s-1],p=c[o+s]}}}while((e=l[e&h])>u&&0!=--i);return s<=t.lookahead?s:t.lookahead},Ry=t=>{const e=t.w_size;let r,n,i;do{if(n=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-by)&&(t.window.set(t.window.subarray(e,e+e-n),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),xy(t),n+=e),0===t.strm.avail_in)break;if(r=Oy(t.strm,t.window,t.strstart+t.lookahead,n),t.lookahead+=r,t.lookahead+t.insert>=3)for(i=t.strstart-t.insert,t.ins_h=t.window[i],t.ins_h=Iy(t,t.ins_h,t.window[i+1]);t.insert&&(t.ins_h=Iy(t,t.ins_h,t.window[i+3-1]),t.prev[i&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=i,i++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<by&&0!==t.strm.avail_in)},Uy=(t,e)=>{let r,n,i,o=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,s=0,a=t.strm.avail_in;do{if(r=65535,i=t.bi_valid+42>>3,t.strm.avail_out<i)break;if(i=t.strm.avail_out-i,n=t.strstart-t.block_start,r>n+t.strm.avail_in&&(r=n+t.strm.avail_in),r>i&&(r=i),r<o&&(0===r&&e!==ny||e===ty||r!==n+t.strm.avail_in))break;s=e===ny&&r===n+t.strm.avail_in?1:0,Yp(t,0,0,s),t.pending_buf[t.pending-4]=r,t.pending_buf[t.pending-3]=r>>8,t.pending_buf[t.pending-2]=~r,t.pending_buf[t.pending-1]=~r>>8,By(t.strm),n&&(n>r&&(n=r),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+n),t.strm.next_out),t.strm.next_out+=n,t.strm.avail_out-=n,t.strm.total_out+=n,t.block_start+=n,r-=n),r&&(Oy(t.strm,t.strm.output,t.strm.next_out,r),t.strm.next_out+=r,t.strm.avail_out-=r,t.strm.total_out+=r)}while(0===s);return a-=t.strm.avail_in,a&&(a>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=a&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-a,t.strm.next_in),t.strstart),t.strstart+=a,t.insert+=a>t.w_size-t.insert?t.w_size-t.insert:a),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),s?4:e!==ty&&e!==ny&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(i=t.window_size-t.strstart,t.strm.avail_in>i&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,i+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),i>t.strm.avail_in&&(i=t.strm.avail_in),i&&(Oy(t.strm,t.window,t.strstart,i),t.strstart+=i,t.insert+=i>t.w_size-t.insert?t.w_size-t.insert:i),t.high_water<t.strstart&&(t.high_water=t.strstart),i=t.bi_valid+42>>3,i=t.pending_buf_size-i>65535?65535:t.pending_buf_size-i,o=i>t.w_size?t.w_size:i,n=t.strstart-t.block_start,(n>=o||(n||e===ny)&&e!==ty&&0===t.strm.avail_in&&n<=i)&&(r=n>i?i:n,s=e===ny&&0===t.strm.avail_in&&r===n?1:0,Yp(t,t.block_start,r,s),t.block_start+=r,By(t.strm)),s?3:1)},Cy=(t,e)=>{let r,n;for(;;){if(t.lookahead<by){if(Ry(t),t.lookahead<by&&e===ty)return 1;if(0===t.lookahead)break}if(r=0,t.lookahead>=3&&(t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==r&&t.strstart-r<=t.w_size-by&&(t.match_length=Ty(t,r)),t.match_length>=3)if(n=Xp(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+1]);else n=Xp(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(My(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2},Ny=(t,e)=>{let r,n,i;for(;;){if(t.lookahead<by){if(Ry(t),t.lookahead<by&&e===ty)return 1;if(0===t.lookahead)break}if(r=0,t.lookahead>=3&&(t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==r&&t.prev_length<t.max_lazy_match&&t.strstart-r<=t.w_size-by&&(t.match_length=Ty(t,r),t.match_length<=5&&(t.strategy===ly||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-3,n=Xp(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=i&&(t.ins_h=Iy(t,t.ins_h,t.window[t.strstart+3-1]),r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,n&&(My(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(n=Xp(t,0,t.window[t.strstart-1]),n&&My(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=Xp(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2};function zy(t,e,r,n,i){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=n,this.func=i}const Dy=[new zy(0,0,0,0,Uy),new zy(4,4,8,4,Cy),new zy(4,5,16,8,Cy),new zy(4,6,32,32,Cy),new zy(4,4,16,16,Ny),new zy(8,16,32,32,Ny),new zy(8,16,128,128,Ny),new zy(8,32,128,256,Ny),new zy(32,128,258,1024,Ny),new zy(32,258,258,4096,Ny)];function jy(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=my,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),Ay(this.dyn_ltree),Ay(this.dyn_dtree),Ay(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),Ay(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),Ay(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Wy=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==vy&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==_y&&e.status!==ky?1:0},Fy=t=>{if(Wy(t))return Ey(t,ay);t.total_in=t.total_out=0,t.data_type=gy;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?vy:_y,t.adler=2===e.wrap?0:1,e.last_flush=-2,Gp(e),oy},Ky=t=>{const e=Fy(t);return e===oy&&(t=>{t.window_size=2*t.w_size,Ay(t.head),t.max_lazy_match=Dy[t.level].max_lazy,t.good_match=Dy[t.level].good_length,t.nice_match=Dy[t.level].nice_length,t.max_chain_length=Dy[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0})(t.state),e},qy=(t,e,r,n,i,o)=>{if(!t)return ay;let s=1;if(e===hy&&(e=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>9||r!==my||n<8||n>15||e<0||e>9||o<0||o>py||8===n&&1!==s)return Ey(t,ay);8===n&&(n=9);const a=new jy;return t.state=a,a.strm=t,a.status=vy,a.wrap=s,a.gzhead=null,a.w_bits=n,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=i+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+3-1)/3),a.window=new Uint8Array(2*a.w_size),a.head=new Uint16Array(a.hash_size),a.prev=new Uint16Array(a.w_size),a.lit_bufsize=1<<i+6,a.pending_buf_size=4*a.lit_bufsize,a.pending_buf=new Uint8Array(a.pending_buf_size),a.sym_buf=a.lit_bufsize,a.sym_end=3*(a.lit_bufsize-1),a.level=e,a.strategy=o,a.method=r,Ky(t)};var Vy=(t,e)=>{if(Wy(t)||e>iy||e<0)return t?Ey(t,ay):ay;const r=t.state;if(!t.output||0!==t.avail_in&&!t.input||r.status===ky&&e!==ny)return Ey(t,0===t.avail_out?cy:ay);const n=r.last_flush;if(r.last_flush=e,0!==r.pending){if(By(t),0===t.avail_out)return r.last_flush=-1,oy}else if(0===t.avail_in&&Sy(e)<=Sy(n)&&e!==ny)return Ey(t,cy);if(r.status===ky&&0!==t.avail_in)return Ey(t,cy);if(r.status===vy&&0===r.wrap&&(r.status=_y),r.status===vy){let e=my+(r.w_bits-8<<4)<<8,n=-1;if(n=r.strategy>=fy||r.level<2?0:r.level<6?1:6===r.level?2:3,e|=n<<6,0!==r.strstart&&(e|=32),e+=31-e%31,Ly(r,e),0!==r.strstart&&(Ly(r,t.adler>>>16),Ly(r,65535&t.adler)),t.adler=1,r.status=_y,By(t),0!==r.pending)return r.last_flush=-1,oy}if(57===r.status)if(t.adler=0,Py(r,31),Py(r,139),Py(r,8),r.gzhead)Py(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Py(r,255&r.gzhead.time),Py(r,r.gzhead.time>>8&255),Py(r,r.gzhead.time>>16&255),Py(r,r.gzhead.time>>24&255),Py(r,9===r.level?2:r.strategy>=fy||r.level<2?4:0),Py(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(Py(r,255&r.gzhead.extra.length),Py(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(t.adler=Hp(t.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69;else if(Py(r,0),Py(r,0),Py(r,0),Py(r,0),Py(r,0),Py(r,9===r.level?2:r.strategy>=fy||r.level<2?4:0),Py(r,3),r.status=_y,By(t),0!==r.pending)return r.last_flush=-1,oy;if(69===r.status){if(r.gzhead.extra){let e=r.pending,n=(65535&r.gzhead.extra.length)-r.gzindex;for(;r.pending+n>r.pending_buf_size;){let i=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>e&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-e,e)),r.gzindex+=i,By(t),0!==r.pending)return r.last_flush=-1,oy;e=0,n-=i}let i=new Uint8Array(r.gzhead.extra);r.pending_buf.set(i.subarray(r.gzindex,r.gzindex+n),r.pending),r.pending+=n,r.gzhead.hcrc&&r.pending>e&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-e,e)),r.gzindex=0}r.status=73}if(73===r.status){if(r.gzhead.name){let e,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n)),By(t),0!==r.pending)return r.last_flush=-1,oy;n=0}e=r.gzindex<r.gzhead.name.length?255&r.gzhead.name.charCodeAt(r.gzindex++):0,Py(r,e)}while(0!==e);r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n)),r.gzindex=0}r.status=91}if(91===r.status){if(r.gzhead.comment){let e,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n)),By(t),0!==r.pending)return r.last_flush=-1,oy;n=0}e=r.gzindex<r.gzhead.comment.length?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,Py(r,e)}while(0!==e);r.gzhead.hcrc&&r.pending>n&&(t.adler=Hp(t.adler,r.pending_buf,r.pending-n,n))}r.status=103}if(103===r.status){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(By(t),0!==r.pending))return r.last_flush=-1,oy;Py(r,255&t.adler),Py(r,t.adler>>8&255),t.adler=0}if(r.status=_y,By(t),0!==r.pending)return r.last_flush=-1,oy}if(0!==t.avail_in||0!==r.lookahead||e!==ty&&r.status!==ky){let n=0===r.level?Uy(r,e):r.strategy===fy?((t,e)=>{let r;for(;;){if(0===t.lookahead&&(Ry(t),0===t.lookahead)){if(e===ty)return 1;break}if(t.match_length=0,r=Xp(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(My(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2})(r,e):r.strategy===dy?((t,e)=>{let r,n,i,o;const s=t.window;for(;;){if(t.lookahead<=wy){if(Ry(t),t.lookahead<=wy&&e===ty)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(i=t.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){o=t.strstart+wy;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);t.match_length=wy-(o-i),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(r=Xp(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=Xp(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(My(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===ny?(My(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(My(t,!1),0===t.strm.avail_out)?1:2})(r,e):Dy[r.level].func(r,e);if(3!==n&&4!==n||(r.status=ky),1===n||3===n)return 0===t.avail_out&&(r.last_flush=-1),oy;if(2===n&&(e===ey?Qp(r):e!==iy&&(Yp(r,0,0,!1),e===ry&&(Ay(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),By(t),0===t.avail_out))return r.last_flush=-1,oy}return e!==ny?oy:r.wrap<=0?sy:(2===r.wrap?(Py(r,255&t.adler),Py(r,t.adler>>8&255),Py(r,t.adler>>16&255),Py(r,t.adler>>24&255),Py(r,255&t.total_in),Py(r,t.total_in>>8&255),Py(r,t.total_in>>16&255),Py(r,t.total_in>>24&255)):(Ly(r,t.adler>>>16),Ly(r,65535&t.adler)),By(t),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?oy:sy)},Hy=(t,e)=>{let r=e.length;if(Wy(t))return ay;const n=t.state,i=n.wrap;if(2===i||1===i&&n.status!==vy||n.lookahead)return ay;if(1===i&&(t.adler=qp(t.adler,e,r,0)),n.wrap=0,r>=n.w_size){0===i&&(Ay(n.head),n.strstart=0,n.block_start=0,n.insert=0);let t=new Uint8Array(n.w_size);t.set(e.subarray(r-n.w_size,r),0),e=t,r=n.w_size}const o=t.avail_in,s=t.next_in,a=t.input;for(t.avail_in=r,t.next_in=0,t.input=e,Ry(n);n.lookahead>=3;){let t=n.strstart,e=n.lookahead-2;do{n.ins_h=Iy(n,n.ins_h,n.window[t+3-1]),n.prev[t&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=t,t++}while(--e);n.strstart=t,n.lookahead=2,Ry(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,t.next_in=s,t.input=a,t.avail_in=o,n.wrap=i,oy},$y={deflateInit:(t,e)=>qy(t,e,my,15,8,yy),deflateInit2:qy,deflateReset:Ky,deflateResetKeep:Fy,deflateSetHeader:(t,e)=>Wy(t)||2!==t.state.wrap?ay:(t.state.gzhead=e,oy),deflate:Vy,deflateEnd:t=>{if(Wy(t))return ay;const e=t.state.status;return t.state=null,e===_y?Ey(t,uy):oy},deflateSetDictionary:Hy,deflateInfo:"pako deflate (from Nodeca project)"};const Zy=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Gy={assign:function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const r=e.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(const e in r)Zy(r,e)&&(t[e]=r[e])}}return t},flattenChunks:t=>{let e=0;for(let r=0,n=t.length;r<n;r++)e+=t[r].length;const r=new Uint8Array(e);for(let e=0,n=0,i=t.length;e<i;e++){let i=t[e];r.set(i,n),n+=i.length}return r}};let Yy=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Yy=!1}const Jy=new Uint8Array(256);for(let t=0;t<256;t++)Jy[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Jy[254]=Jy[254]=1;var Xy={string2buf:t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,r,n,i,o,s=t.length,a=0;for(i=0;i<s;i++)r=t.charCodeAt(i),55296==(64512&r)&&i+1<s&&(n=t.charCodeAt(i+1),56320==(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),i++)),a+=r<128?1:r<2048?2:r<65536?3:4;for(e=new Uint8Array(a),o=0,i=0;o<a;i++)r=t.charCodeAt(i),55296==(64512&r)&&i+1<s&&(n=t.charCodeAt(i+1),56320==(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),i++)),r<128?e[o++]=r:r<2048?(e[o++]=192|r>>>6,e[o++]=128|63&r):r<65536?(e[o++]=224|r>>>12,e[o++]=128|r>>>6&63,e[o++]=128|63&r):(e[o++]=240|r>>>18,e[o++]=128|r>>>12&63,e[o++]=128|r>>>6&63,e[o++]=128|63&r);return e},buf2string:(t,e)=>{const r=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let n,i;const o=new Array(2*r);for(i=0,n=0;n<r;){let e=t[n++];if(e<128){o[i++]=e;continue}let s=Jy[e];if(s>4)o[i++]=65533,n+=s-1;else{for(e&=2===s?31:3===s?15:7;s>1&&n<r;)e=e<<6|63&t[n++],s--;s>1?o[i++]=65533:e<65536?o[i++]=e:(e-=65536,o[i++]=55296|e>>10&1023,o[i++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Yy)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let r="";for(let n=0;n<e;n++)r+=String.fromCharCode(t[n]);return r})(o,i)},utf8border:(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let r=e-1;for(;r>=0&&128==(192&t[r]);)r--;return r<0||0===r?e:r+Jy[t[r]]>e?r:e}};var Qy=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const tg=Object.prototype.toString,{Z_NO_FLUSH:eg,Z_SYNC_FLUSH:rg,Z_FULL_FLUSH:ng,Z_FINISH:ig,Z_OK:og,Z_STREAM_END:sg,Z_DEFAULT_COMPRESSION:ag,Z_DEFAULT_STRATEGY:ug,Z_DEFLATED:cg}=Zp;function hg(t){this.options=Gy.assign({level:ag,method:cg,chunkSize:16384,windowBits:15,memLevel:8,strategy:ug},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qy,this.strm.avail_out=0;let r=$y.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==og)throw new Error($p[r]);if(e.header&&$y.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Xy.string2buf(e.dictionary):"[object ArrayBuffer]"===tg.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,r=$y.deflateSetDictionary(this.strm,t),r!==og)throw new Error($p[r]);this._dict_set=!0}}hg.prototype.push=function(t,e){const r=this.strm,n=this.options.chunkSize;let i,o;if(this.ended)return!1;for(o=e===~~e?e:!0===e?ig:eg,"string"==typeof t?r.input=Xy.string2buf(t):"[object ArrayBuffer]"===tg.call(t)?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;;)if(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(o===rg||o===ng)&&r.avail_out<=6)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else{if(i=$y.deflate(r,o),i===sg)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=$y.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===og;if(0!==r.avail_out){if(o>0&&r.next_out>0)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else if(0===r.avail_in)break}else this.onData(r.output)}return!0},hg.prototype.onData=function(t){this.chunks.push(t)},hg.prototype.onEnd=function(t){t===og&&(this.result=Gy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const lg=16209;var fg=function(t,e){let r,n,i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k,E,S,A;const x=t.state;r=t.next_in,S=t.input,n=r+(t.avail_in-5),i=t.next_out,A=t.output,o=i-(e-t.avail_out),s=i+(t.avail_out-257),a=x.dmax,u=x.wsize,c=x.whave,h=x.wnext,l=x.window,f=x.hold,d=x.bits,p=x.lencode,y=x.distcode,g=(1<<x.lenbits)-1,m=(1<<x.distbits)-1;t:do{d<15&&(f+=S[r++]<<d,d+=8,f+=S[r++]<<d,d+=8),w=p[f&g];e:for(;;){if(b=w>>>24,f>>>=b,d-=b,b=w>>>16&255,0===b)A[i++]=65535&w;else{if(!(16&b)){if(0==(64&b)){w=p[(65535&w)+(f&(1<<b)-1)];continue e}if(32&b){x.mode=16191;break t}t.msg="invalid literal/length code",x.mode=lg;break t}v=65535&w,b&=15,b&&(d<b&&(f+=S[r++]<<d,d+=8),v+=f&(1<<b)-1,f>>>=b,d-=b),d<15&&(f+=S[r++]<<d,d+=8,f+=S[r++]<<d,d+=8),w=y[f&m];r:for(;;){if(b=w>>>24,f>>>=b,d-=b,b=w>>>16&255,!(16&b)){if(0==(64&b)){w=y[(65535&w)+(f&(1<<b)-1)];continue r}t.msg="invalid distance code",x.mode=lg;break t}if(_=65535&w,b&=15,d<b&&(f+=S[r++]<<d,d+=8,d<b&&(f+=S[r++]<<d,d+=8)),_+=f&(1<<b)-1,_>a){t.msg="invalid distance too far back",x.mode=lg;break t}if(f>>>=b,d-=b,b=i-o,_>b){if(b=_-b,b>c&&x.sane){t.msg="invalid distance too far back",x.mode=lg;break t}if(k=0,E=l,0===h){if(k+=u-b,b<v){v-=b;do{A[i++]=l[k++]}while(--b);k=i-_,E=A}}else if(h<b){if(k+=u+h-b,b-=h,b<v){v-=b;do{A[i++]=l[k++]}while(--b);if(k=0,h<v){b=h,v-=b;do{A[i++]=l[k++]}while(--b);k=i-_,E=A}}}else if(k+=h-b,b<v){v-=b;do{A[i++]=l[k++]}while(--b);k=i-_,E=A}for(;v>2;)A[i++]=E[k++],A[i++]=E[k++],A[i++]=E[k++],v-=3;v&&(A[i++]=E[k++],v>1&&(A[i++]=E[k++]))}else{k=i-_;do{A[i++]=A[k++],A[i++]=A[k++],A[i++]=A[k++],v-=3}while(v>2);v&&(A[i++]=A[k++],v>1&&(A[i++]=A[k++]))}break}}break}}while(r<n&&i<s);v=d>>3,r-=v,d-=v<<3,f&=(1<<d)-1,t.next_in=r,t.next_out=i,t.avail_in=r<n?n-r+5:5-(r-n),t.avail_out=i<s?s-i+257:257-(i-s),x.hold=f,x.bits=d};const dg=15,pg=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),yg=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),gg=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),mg=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var wg=(t,e,r,n,i,o,s,a)=>{const u=a.bits;let c,h,l,f,d,p,y=0,g=0,m=0,w=0,b=0,v=0,_=0,k=0,E=0,S=0,A=null;const x=new Uint16Array(16),I=new Uint16Array(16);let B,M,P,L=null;for(y=0;y<=dg;y++)x[y]=0;for(g=0;g<n;g++)x[e[r+g]]++;for(b=u,w=dg;w>=1&&0===x[w];w--);if(b>w&&(b=w),0===w)return i[o++]=20971520,i[o++]=20971520,a.bits=1,0;for(m=1;m<w&&0===x[m];m++);for(b<m&&(b=m),k=1,y=1;y<=dg;y++)if(k<<=1,k-=x[y],k<0)return-1;if(k>0&&(0===t||1!==w))return-1;for(I[1]=0,y=1;y<dg;y++)I[y+1]=I[y]+x[y];for(g=0;g<n;g++)0!==e[r+g]&&(s[I[e[r+g]]++]=g);if(0===t?(A=L=s,p=20):1===t?(A=pg,L=yg,p=257):(A=gg,L=mg,p=0),S=0,g=0,y=m,d=o,v=b,_=0,l=-1,E=1<<b,f=E-1,1===t&&E>852||2===t&&E>592)return 1;for(;;){B=y-_,s[g]+1<p?(M=0,P=s[g]):s[g]>=p?(M=L[s[g]-p],P=A[s[g]-p]):(M=96,P=0),c=1<<y-_,h=1<<v,m=h;do{h-=c,i[d+(S>>_)+h]=B<<24|M<<16|P|0}while(0!==h);for(c=1<<y-1;S&c;)c>>=1;if(0!==c?(S&=c-1,S+=c):S=0,g++,0==--x[y]){if(y===w)break;y=e[r+s[g]]}if(y>b&&(S&f)!==l){for(0===_&&(_=b),d+=m,v=y-_,k=1<<v;v+_<w&&(k-=x[v+_],!(k<=0));)v++,k<<=1;if(E+=1<<v,1===t&&E>852||2===t&&E>592)return 1;l=S&f,i[l]=b<<24|v<<16|d-o|0}}return 0!==S&&(i[d+S]=y-_<<24|64<<16|0),a.bits=b,0};const{Z_FINISH:bg,Z_BLOCK:vg,Z_TREES:_g,Z_OK:kg,Z_STREAM_END:Eg,Z_NEED_DICT:Sg,Z_STREAM_ERROR:Ag,Z_DATA_ERROR:xg,Z_MEM_ERROR:Ig,Z_BUF_ERROR:Bg,Z_DEFLATED:Mg}=Zp,Pg=16180,Lg=16190,Og=16191,Tg=16192,Rg=16194,Ug=16199,Cg=16200,Ng=16206,zg=16209,Dg=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function jg(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Wg=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<Pg||e.mode>16211?1:0},Fg=t=>{if(Wg(t))return Ag;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=Pg,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,kg},Kg=t=>{if(Wg(t))return Ag;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,Fg(t)},qg=(t,e)=>{let r;if(Wg(t))return Ag;const n=t.state;return e<0?(r=0,e=-e):(r=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?Ag:(null!==n.window&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,Kg(t))},Vg=(t,e)=>{if(!t)return Ag;const r=new jg;t.state=r,r.strm=t,r.window=null,r.mode=Pg;const n=qg(t,e);return n!==kg&&(t.state=null),n};let Hg,$g,Zg=!0;const Gg=t=>{if(Zg){Hg=new Int32Array(512),$g=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(wg(1,t.lens,0,288,Hg,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;wg(2,t.lens,0,32,$g,0,t.work,{bits:5}),Zg=!1}t.lencode=Hg,t.lenbits=9,t.distcode=$g,t.distbits=5},Yg=(t,e,r,n)=>{let i;const o=t.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new Uint8Array(o.wsize)),n>=o.wsize?(o.window.set(e.subarray(r-o.wsize,r),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>n&&(i=n),o.window.set(e.subarray(r-n,r-n+i),o.wnext),(n-=i)?(o.window.set(e.subarray(r-n,r),0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=i))),0};var Jg=(t,e)=>{let r,n,i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k,E,S=0;const A=new Uint8Array(4);let x,I;const B=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Wg(t)||!t.output||!t.input&&0!==t.avail_in)return Ag;r=t.state,r.mode===Og&&(r.mode=Tg),s=t.next_out,i=t.output,u=t.avail_out,o=t.next_in,n=t.input,a=t.avail_in,c=r.hold,h=r.bits,l=a,f=u,E=kg;t:for(;;)switch(r.mode){case Pg:if(0===r.wrap){r.mode=Tg;break}for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(2&r.wrap&&35615===c){0===r.wbits&&(r.wbits=15),r.check=0,A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0),c=0,h=0,r.mode=16181;break}if(r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&c)<<8)+(c>>8))%31){t.msg="incorrect header check",r.mode=zg;break}if((15&c)!==Mg){t.msg="unknown compression method",r.mode=zg;break}if(c>>>=4,h-=4,k=8+(15&c),0===r.wbits&&(r.wbits=k),k>15||k>r.wbits){t.msg="invalid window size",r.mode=zg;break}r.dmax=1<<r.wbits,r.flags=0,t.adler=r.check=1,r.mode=512&c?16189:Og,c=0,h=0;break;case 16181:for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(r.flags=c,(255&r.flags)!==Mg){t.msg="unknown compression method",r.mode=zg;break}if(57344&r.flags){t.msg="unknown header flags set",r.mode=zg;break}r.head&&(r.head.text=c>>8&1),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0)),c=0,h=0,r.mode=16182;case 16182:for(;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.head&&(r.head.time=c),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,A[2]=c>>>16&255,A[3]=c>>>24&255,r.check=Hp(r.check,A,4,0)),c=0,h=0,r.mode=16183;case 16183:for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.head&&(r.head.xflags=255&c,r.head.os=c>>8),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0)),c=0,h=0,r.mode=16184;case 16184:if(1024&r.flags){for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.length=c,r.head&&(r.head.extra_len=c),512&r.flags&&4&r.wrap&&(A[0]=255&c,A[1]=c>>>8&255,r.check=Hp(r.check,A,2,0)),c=0,h=0}else r.head&&(r.head.extra=null);r.mode=16185;case 16185:if(1024&r.flags&&(d=r.length,d>a&&(d=a),d&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(o,o+d),k)),512&r.flags&&4&r.wrap&&(r.check=Hp(r.check,n,d,o)),a-=d,o+=d,r.length-=d),r.length))break t;r.length=0,r.mode=16186;case 16186:if(2048&r.flags){if(0===a)break t;d=0;do{k=n[o+d++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k))}while(k&&d<a);if(512&r.flags&&4&r.wrap&&(r.check=Hp(r.check,n,d,o)),a-=d,o+=d,k)break t}else r.head&&(r.head.name=null);r.length=0,r.mode=16187;case 16187:if(4096&r.flags){if(0===a)break t;d=0;do{k=n[o+d++],r.head&&k&&r.length<65536&&(r.head.comment+=String.fromCharCode(k))}while(k&&d<a);if(512&r.flags&&4&r.wrap&&(r.check=Hp(r.check,n,d,o)),a-=d,o+=d,k)break t}else r.head&&(r.head.comment=null);r.mode=16188;case 16188:if(512&r.flags){for(;h<16;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(4&r.wrap&&c!==(65535&r.check)){t.msg="header crc mismatch",r.mode=zg;break}c=0,h=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=Og;break;case 16189:for(;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}t.adler=r.check=Dg(c),c=0,h=0,r.mode=Lg;case Lg:if(0===r.havedict)return t.next_out=s,t.avail_out=u,t.next_in=o,t.avail_in=a,r.hold=c,r.bits=h,Sg;t.adler=r.check=1,r.mode=Og;case Og:if(e===vg||e===_g)break t;case Tg:if(r.last){c>>>=7&h,h-=7&h,r.mode=Ng;break}for(;h<3;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}switch(r.last=1&c,c>>>=1,h-=1,3&c){case 0:r.mode=16193;break;case 1:if(Gg(r),r.mode=Ug,e===_g){c>>>=2,h-=2;break t}break;case 2:r.mode=16196;break;case 3:t.msg="invalid block type",r.mode=zg}c>>>=2,h-=2;break;case 16193:for(c>>>=7&h,h-=7&h;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if((65535&c)!=(c>>>16^65535)){t.msg="invalid stored block lengths",r.mode=zg;break}if(r.length=65535&c,c=0,h=0,r.mode=Rg,e===_g)break t;case Rg:r.mode=16195;case 16195:if(d=r.length,d){if(d>a&&(d=a),d>u&&(d=u),0===d)break t;i.set(n.subarray(o,o+d),s),a-=d,o+=d,u-=d,s+=d,r.length-=d;break}r.mode=Og;break;case 16196:for(;h<14;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(r.nlen=257+(31&c),c>>>=5,h-=5,r.ndist=1+(31&c),c>>>=5,h-=5,r.ncode=4+(15&c),c>>>=4,h-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=zg;break}r.have=0,r.mode=16197;case 16197:for(;r.have<r.ncode;){for(;h<3;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.lens[B[r.have++]]=7&c,c>>>=3,h-=3}for(;r.have<19;)r.lens[B[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,x={bits:r.lenbits},E=wg(0,r.lens,0,19,r.lencode,0,r.work,x),r.lenbits=x.bits,E){t.msg="invalid code lengths set",r.mode=zg;break}r.have=0,r.mode=16198;case 16198:for(;r.have<r.nlen+r.ndist;){for(;S=r.lencode[c&(1<<r.lenbits)-1],g=S>>>24,m=S>>>16&255,w=65535&S,!(g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(w<16)c>>>=g,h-=g,r.lens[r.have++]=w;else{if(16===w){for(I=g+2;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(c>>>=g,h-=g,0===r.have){t.msg="invalid bit length repeat",r.mode=zg;break}k=r.lens[r.have-1],d=3+(3&c),c>>>=2,h-=2}else if(17===w){for(I=g+3;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=g,h-=g,k=0,d=3+(7&c),c>>>=3,h-=3}else{for(I=g+7;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=g,h-=g,k=0,d=11+(127&c),c>>>=7,h-=7}if(r.have+d>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=zg;break}for(;d--;)r.lens[r.have++]=k}}if(r.mode===zg)break;if(0===r.lens[256]){t.msg="invalid code -- missing end-of-block",r.mode=zg;break}if(r.lenbits=9,x={bits:r.lenbits},E=wg(1,r.lens,0,r.nlen,r.lencode,0,r.work,x),r.lenbits=x.bits,E){t.msg="invalid literal/lengths set",r.mode=zg;break}if(r.distbits=6,r.distcode=r.distdyn,x={bits:r.distbits},E=wg(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,x),r.distbits=x.bits,E){t.msg="invalid distances set",r.mode=zg;break}if(r.mode=Ug,e===_g)break t;case Ug:r.mode=Cg;case Cg:if(a>=6&&u>=258){t.next_out=s,t.avail_out=u,t.next_in=o,t.avail_in=a,r.hold=c,r.bits=h,fg(t,f),s=t.next_out,i=t.output,u=t.avail_out,o=t.next_in,n=t.input,a=t.avail_in,c=r.hold,h=r.bits,r.mode===Og&&(r.back=-1);break}for(r.back=0;S=r.lencode[c&(1<<r.lenbits)-1],g=S>>>24,m=S>>>16&255,w=65535&S,!(g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(m&&0==(240&m)){for(b=g,v=m,_=w;S=r.lencode[_+((c&(1<<b+v)-1)>>b)],g=S>>>24,m=S>>>16&255,w=65535&S,!(b+g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=b,h-=b,r.back+=b}if(c>>>=g,h-=g,r.back+=g,r.length=w,0===m){r.mode=16205;break}if(32&m){r.back=-1,r.mode=Og;break}if(64&m){t.msg="invalid literal/length code",r.mode=zg;break}r.extra=15&m,r.mode=16201;case 16201:if(r.extra){for(I=r.extra;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.length+=c&(1<<r.extra)-1,c>>>=r.extra,h-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=16202;case 16202:for(;S=r.distcode[c&(1<<r.distbits)-1],g=S>>>24,m=S>>>16&255,w=65535&S,!(g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(0==(240&m)){for(b=g,v=m,_=w;S=r.distcode[_+((c&(1<<b+v)-1)>>b)],g=S>>>24,m=S>>>16&255,w=65535&S,!(b+g<=h);){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}c>>>=b,h-=b,r.back+=b}if(c>>>=g,h-=g,r.back+=g,64&m){t.msg="invalid distance code",r.mode=zg;break}r.offset=w,r.extra=15&m,r.mode=16203;case 16203:if(r.extra){for(I=r.extra;h<I;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}r.offset+=c&(1<<r.extra)-1,c>>>=r.extra,h-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=zg;break}r.mode=16204;case 16204:if(0===u)break t;if(d=f-u,r.offset>d){if(d=r.offset-d,d>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=zg;break}d>r.wnext?(d-=r.wnext,p=r.wsize-d):p=r.wnext-d,d>r.length&&(d=r.length),y=r.window}else y=i,p=s-r.offset,d=r.length;d>u&&(d=u),u-=d,r.length-=d;do{i[s++]=y[p++]}while(--d);0===r.length&&(r.mode=Cg);break;case 16205:if(0===u)break t;i[s++]=r.length,u--,r.mode=Cg;break;case Ng:if(r.wrap){for(;h<32;){if(0===a)break t;a--,c|=n[o++]<<h,h+=8}if(f-=u,t.total_out+=f,r.total+=f,4&r.wrap&&f&&(t.adler=r.check=r.flags?Hp(r.check,i,f,s-f):qp(r.check,i,f,s-f)),f=u,4&r.wrap&&(r.flags?c:Dg(c))!==r.check){t.msg="incorrect data check",r.mode=zg;break}c=0,h=0}r.mode=16207;case 16207:if(r.wrap&&r.flags){for(;h<32;){if(0===a)break t;a--,c+=n[o++]<<h,h+=8}if(4&r.wrap&&c!==(4294967295&r.total)){t.msg="incorrect length check",r.mode=zg;break}c=0,h=0}r.mode=16208;case 16208:E=Eg;break t;case zg:E=xg;break t;case 16210:return Ig;default:return Ag}return t.next_out=s,t.avail_out=u,t.next_in=o,t.avail_in=a,r.hold=c,r.bits=h,(r.wsize||f!==t.avail_out&&r.mode<zg&&(r.mode<Ng||e!==bg))&&Yg(t,t.output,t.next_out,f-t.avail_out),l-=t.avail_in,f-=t.avail_out,t.total_in+=l,t.total_out+=f,r.total+=f,4&r.wrap&&f&&(t.adler=r.check=r.flags?Hp(r.check,i,f,t.next_out-f):qp(r.check,i,f,t.next_out-f)),t.data_type=r.bits+(r.last?64:0)+(r.mode===Og?128:0)+(r.mode===Ug||r.mode===Rg?256:0),(0===l&&0===f||e===bg)&&E===kg&&(E=Bg),E},Xg=t=>{if(Wg(t))return Ag;let e=t.state;return e.window&&(e.window=null),t.state=null,kg},Qg=(t,e)=>{if(Wg(t))return Ag;const r=t.state;return 0==(2&r.wrap)?Ag:(r.head=e,e.done=!1,kg)},tm=(t,e)=>{const r=e.length;let n,i,o;return Wg(t)?Ag:(n=t.state,0!==n.wrap&&n.mode!==Lg?Ag:n.mode===Lg&&(i=1,i=qp(i,e,r,0),i!==n.check)?xg:(o=Yg(t,e,r,r),o?(n.mode=16210,Ig):(n.havedict=1,kg)))},em={inflateReset:Kg,inflateReset2:qg,inflateResetKeep:Fg,inflateInit:t=>Vg(t,15),inflateInit2:Vg,inflate:Jg,inflateEnd:Xg,inflateGetHeader:Qg,inflateSetDictionary:tm,inflateInfo:"pako inflate (from Nodeca project)"};var rm=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const nm=Object.prototype.toString,{Z_NO_FLUSH:im,Z_FINISH:om,Z_OK:sm,Z_STREAM_END:am,Z_NEED_DICT:um,Z_STREAM_ERROR:cm,Z_DATA_ERROR:hm,Z_MEM_ERROR:lm}=Zp;function fm(t){this.options=Gy.assign({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qy,this.strm.avail_out=0;let r=em.inflateInit2(this.strm,e.windowBits);if(r!==sm)throw new Error($p[r]);if(this.header=new rm,em.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Xy.string2buf(e.dictionary):"[object ArrayBuffer]"===nm.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(r=em.inflateSetDictionary(this.strm,e.dictionary),r!==sm)))throw new Error($p[r])}function dm(t,e){const r=new fm(e);if(r.push(t),r.err)throw r.msg||$p[r.err];return r.result}fm.prototype.push=function(t,e){const r=this.strm,n=this.options.chunkSize,i=this.options.dictionary;let o,s,a;if(this.ended)return!1;for(s=e===~~e?e:!0===e?om:im,"[object ArrayBuffer]"===nm.call(t)?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;;){for(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),o=em.inflate(r,s),o===um&&i&&(o=em.inflateSetDictionary(r,i),o===sm?o=em.inflate(r,s):o===hm&&(o=um));r.avail_in>0&&o===am&&r.state.wrap>0&&0!==t[r.next_in];)em.inflateReset(r),o=em.inflate(r,s);switch(o){case cm:case hm:case um:case lm:return this.onEnd(o),this.ended=!0,!1}if(a=r.avail_out,r.next_out&&(0===r.avail_out||o===am))if("string"===this.options.to){let t=Xy.utf8border(r.output,r.next_out),e=r.next_out-t,i=Xy.buf2string(r.output,t);r.next_out=e,r.avail_out=n-e,e&&r.output.set(r.output.subarray(t,t+e),0),this.onData(i)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(o!==sm||0!==a){if(o===am)return o=em.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(0===r.avail_in)break}}return!0},fm.prototype.onData=function(t){this.chunks.push(t)},fm.prototype.onEnd=function(t){t===sm&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Gy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var pm={Inflate:fm,inflate:dm,inflateRaw:function(t,e){return(e=e||{}).raw=!0,dm(t,e)},ungzip:dm,constants:Zp};const{Inflate:ym,inflate:gm,inflateRaw:mm,ungzip:wm}=pm;var bm=gm,vm=e(qi());const _m=t=>"version"in t;var km=Object.freeze({__proto__:null,encode:function(t){return t.reduce(((t,e)=>t+e.toString(16).padStart(2,"0")),"0x")},decode:function(t){0===t.indexOf("0x")&&(t=t.substr(2)),t.length%2==1&&(t="0"+t);let e=t.match(/.{2}/g);return null===e?n.Buffer.from([]):n.Buffer.from(e.map((t=>parseInt(t,16))))}});function Em(t){return new TextDecoder("utf-8").decode(t)}function Sm(t){return(new TextEncoder).encode(t)}var Am=Object.freeze({__proto__:null,decode:Em,encode:Sm});function xm(t){return md.encode(t)}var Im=Object.freeze({__proto__:null,encode:xm,decode:function(t){return md.decode(t)}});function Bm(t){return n.Buffer.from(o(t))}var Mm=Object.freeze({__proto__:null,encode:function(t){return s(t)},decode:Bm}),Pm=Object.freeze({__proto__:null,hex:km,utf8:Am,bs58:Im,base64:Mm});function Lm(t){const e=new Map;return t.errors&&t.errors.forEach((t=>{var r;let n=null!==(r=t.msg)&&void 0!==r?r:t.name;e.set(t.code,n)})),e}function Om(t,...e){if(t.args.length!=e.length)throw new Error("Invalid argument length");const r={};let n=0;return t.args.forEach((t=>{r[t.name]=e[n],n+=1})),r}function Tm(t,e={}){t.forEach((t=>{if("accounts"in t)Tm(t.accounts,e[t.name]);else if(void 0===e[t.name])throw new Error(`Invalid arguments: ${t.name} not provided.`)}))}function Rm(t){return t instanceof Wo?t:new Wo(t)}class Um extends TypeError{constructor(t,e){let r;const{message:n,...i}=t,{path:o}=t;super(0===o.length?n:"At path: "+o.join(".")+" -- "+n),this.value=void 0,this.key=void 0,this.type=void 0,this.refinement=void 0,this.path=void 0,this.branch=void 0,this.failures=void 0,Object.assign(this,i),this.name=this.constructor.name,this.failures=()=>{var n;return null!=(n=r)?n:r=[t,...e()]}}}function Cm(t){return"object"==typeof t&&null!=t}function Nm(t){return"string"==typeof t?JSON.stringify(t):""+t}function zm(t,e,r,n){if(!0===t)return;!1===t?t={}:"string"==typeof t&&(t={message:t});const{path:i,branch:o}=e,{type:s}=r,{refinement:a,message:u="Expected a value of type `"+s+"`"+(a?" with refinement `"+a+"`":"")+", but received: `"+Nm(n)+"`"}=t;return{value:n,type:s,refinement:a,key:i[i.length-1],path:i,branch:o,...t,message:u}}function*Dm(t,e,r,n){(function(t){return Cm(t)&&"function"==typeof t[Symbol.iterator]})(t)||(t=[t]);for(const i of t){const t=zm(i,e,r,n);t&&(yield t)}}function*jm(t,e,r){void 0===r&&(r={});const{path:n=[],branch:i=[t],coerce:o=!1,mask:s=!1}=r,a={path:n,branch:i};if(o&&(t=e.coercer(t,a),s&&"type"!==e.type&&Cm(e.schema)&&Cm(t)&&!Array.isArray(t)))for(const r in t)void 0===e.schema[r]&&delete t[r];let u=!0;for(const r of e.validator(t,a))u=!1,yield[r,void 0];for(let[r,c,h]of e.entries(t,a)){const e=jm(c,h,{path:void 0===r?n:[...n,r],branch:void 0===r?i:[...i,c],coerce:o,mask:s});for(const n of e)n[0]?(u=!1,yield[n[0],void 0]):o&&(c=n[1],void 0===r?t=c:t instanceof Map?t.set(r,c):t instanceof Set?t.add(c):Cm(t)&&(t[r]=c))}if(u)for(const r of e.refiner(t,a))u=!1,yield[r,void 0];u&&(yield[void 0,t])}class Wm{constructor(t){this.TYPE=void 0,this.type=void 0,this.schema=void 0,this.coercer=void 0,this.validator=void 0,this.refiner=void 0,this.entries=void 0;const{type:e,schema:r,validator:n,refiner:i,coercer:o=(t=>t),entries:s=function*(){}}=t;this.type=e,this.schema=r,this.entries=s,this.coercer=o,this.validator=n?(t,e)=>Dm(n(t,e),e,this,t):()=>[],this.refiner=i?(t,e)=>Dm(i(t,e),e,this,t):()=>[]}assert(t){return function(t,e){const r=qm(t,e);if(r[0])throw r[0]}(t,this)}create(t){return Fm(t,this)}is(t){return Km(t,this)}mask(t){return function(t,e){const r=qm(t,e,{coerce:!0,mask:!0});if(r[0])throw r[0];return r[1]}(t,this)}validate(t,e){return void 0===e&&(e={}),qm(t,this,e)}}function Fm(t,e){const r=qm(t,e,{coerce:!0});if(r[0])throw r[0];return r[1]}function Km(t,e){return!qm(t,e)[0]}function qm(t,e,r){void 0===r&&(r={});const n=jm(t,e,r),i=function(t){const{done:e,value:r}=t.next();return e?void 0:r}(n);if(i[0]){const t=new Um(i[0],(function*(){for(const t of n)t[0]&&(yield t[0])}));return[t,void 0]}return[void 0,i[1]]}function Vm(t,e){return new Wm({type:t,schema:null,validator:e})}function Hm(t){return new Wm({type:"array",schema:t,*entries(e){if(t&&Array.isArray(e))for(const[r,n]of e.entries())yield[r,n,t]},coercer:t=>Array.isArray(t)?t.slice():t,validator:t=>Array.isArray(t)||"Expected an array value, but received: "+Nm(t)})}function $m(t){const e=Nm(t),r=typeof t;return new Wm({type:"literal",schema:"string"===r||"number"===r||"boolean"===r?t:null,validator:r=>r===t||"Expected the literal `"+e+"`, but received: "+Nm(r)})}function Zm(t){return new Wm({...t,validator:(e,r)=>null===e||t.validator(e,r),refiner:(e,r)=>null===e||t.refiner(e,r)})}function Gm(){return Vm("number",(t=>"number"==typeof t&&!isNaN(t)||"Expected a number, but received: "+Nm(t)))}function Ym(t){return new Wm({...t,validator:(e,r)=>void 0===e||t.validator(e,r),refiner:(e,r)=>void 0===e||t.refiner(e,r)})}function Jm(){return Vm("string",(t=>"string"==typeof t||"Expected a string, but received: "+Nm(t)))}function Xm(t){const e=Object.keys(t);return new Wm({type:"type",schema:t,*entries(r){if(Cm(r))for(const n of e)yield[n,r[n],t[n]]},validator:t=>Cm(t)||"Expected an object, but received: "+Nm(t)})}function Qm(t){const e=t.map((t=>t.type)).join(" | ");return new Wm({type:"union",schema:null,coercer(e,r){const n=t.find((t=>{const[r]=t.validate(e,{coerce:!0});return!r}))||tw();return n.coercer(e,r)},validator(r,n){const i=[];for(const e of t){const[...t]=jm(r,e,n),[o]=t;if(!o[0])return[];for(const[e]of t)e&&i.push(e)}return["Expected the value to satisfy a union of `"+e+"`, but received: "+Nm(r),...i]}})}function tw(){return Vm("unknown",(()=>!0))}const ew=99;async function rw(t,e,r){if(e.length<=ew)return await nw(t,e,r);{const n=function(t,e){return Array.apply(0,new Array(Math.ceil(t.length/e))).map(((r,n)=>t.slice(n*e,(n+1)*e)))}(e,ew);return(await Promise.all(n.map((e=>nw(t,e,r))))).flat()}}async function nw(t,e,r){const n=null!=r?r:t.commitment,{value:i,context:o}=await t.getMultipleAccountsInfoAndContext(e,n);return i.map(((t,r)=>null===t?null:{publicKey:e[r],account:t,context:o}))}async function iw(t,e,r,n,i){var o;r&&r.length>0&&e.sign(...r);const s=e._compile(),a=s.serialize(),u=e._serialize(a).toString("base64"),c={encoding:"base64",commitment:null!=n?n:t.commitment};if(i){const t=(Array.isArray(i)?i:s.nonProgramIds()).map((t=>t.toBase58()));c.accounts={encoding:"base64",addresses:t}}r&&(c.sigVerify=!0);const h=[u,c],l=Fm(await t._rpcRequest("simulateTransaction",h),uw);if("error"in l){let t;if("data"in l.error&&(t=null===(o=l.error.data)||void 0===o?void 0:o.logs,t&&Array.isArray(t))){const e="\n ",r=e+t.join(e);console.error(l.error.message,r)}throw new Ks("failed to simulate transaction: "+l.error.message,t)}return l.result}function ow(t){return function(t,e,r){return new Wm({...t,coercer:(n,i)=>Km(n,e)?t.coercer(r(n,i),i):t.coercer(n,i)})}(aw(t),sw,(e=>"error"in e?e:{...e,result:Fm(e.result,t)}))}const sw=aw(tw());function aw(t){return Qm([Xm({jsonrpc:$m("2.0"),id:Jm(),result:t}),Xm({jsonrpc:$m("2.0"),id:Jm(),error:Xm({code:tw(),message:Jm(),data:Ym(Vm("any",(()=>!0)))})})])}const uw=(cw=Xm({err:Zm(Qm([Xm({}),Jm()])),logs:Zm(Hm(Jm())),accounts:Ym(Zm(Hm(Zm(Xm({executable:Vm("boolean",(t=>"boolean"==typeof t)),owner:Jm(),lamports:Gm(),data:Hm(Jm()),rentEpoch:Ym(Gm())}))))),unitsConsumed:Ym(Gm())}),ow(Xm({context:Xm({slot:Gm()}),value:cw})));var cw,hw=Object.freeze({__proto__:null,invoke:async function(t,e,r,n){t=Rm(t),n||(n=yw());const i=new hs;if(i.add(new cs({programId:t,keys:null!=e?e:[],data:r})),void 0===n.sendAndConfirm)throw new Error("This function requires 'Provider.sendAndConfirm' to be implemented.");return await n.sendAndConfirm(i,[])},getMultipleAccounts:async function(t,e,r){return(await rw(t,e,r)).map((t=>t?{publicKey:t.publicKey,account:t.account}:null))},getMultipleAccountsAndContext:rw,simulateTransaction:iw});class lw{constructor(t,e,r){this.connection=t,this.wallet=e,this.opts=r,this.publicKey=null==e?void 0:e.publicKey}static defaultOptions(){return{preflightCommitment:"processed",commitment:"processed"}}static local(t,e){throw new Error("Provider local is not available on browser.")}static env(){throw new Error("Provider env is not available on browser.")}async sendAndConfirm(t,e,r){var n,i,o,s;if(void 0===r&&(r=this.opts),_m(t))e&&t.sign(e);else if(t.feePayer=null!==(n=t.feePayer)&&void 0!==n?n:this.wallet.publicKey,t.recentBlockhash=(await this.connection.getLatestBlockhash(r.preflightCommitment)).blockhash,e)for(const r of e)t.partialSign(r);const a=(t=await this.wallet.signTransaction(t)).serialize();try{return await dw(this.connection,a,r)}catch(e){if(e instanceof pw){const r=xm(_m(t)?(null===(i=t.signatures)||void 0===i?void 0:i[0])||new Uint8Array:null!==(o=t.signature)&&void 0!==o?o:new Uint8Array),n=await this.connection.getTransaction(r,{commitment:"confirmed"});if(n){const t=null===(s=n.meta)||void 0===s?void 0:s.logMessages;throw t?new Ks(e.message,t):e}throw e}throw e}}async sendAll(t,e){var r,n,i;void 0===e&&(e=this.opts);const o=(await this.connection.getLatestBlockhash(e.preflightCommitment)).blockhash;let s=t.map((t=>{var e,r;if(_m(t.tx)){let e=t.tx;return t.signers&&e.sign(t.signers),e}{let n=t.tx,i=null!==(e=t.signers)&&void 0!==e?e:[];return n.feePayer=null!==(r=n.feePayer)&&void 0!==r?r:this.wallet.publicKey,n.recentBlockhash=o,i.forEach((t=>{n.partialSign(t)})),n}}));const a=await this.wallet.signAllTransactions(s),u=[];for(let t=0;t<s.length;t+=1){const o=a[t],s=o.serialize();try{u.push(await dw(this.connection,s,e))}catch(t){if(t instanceof pw){const e=xm(_m(o)?(null===(r=o.signatures)||void 0===r?void 0:r[0])||new Uint8Array:null!==(n=o.signature)&&void 0!==n?n:new Uint8Array),s=await this.connection.getTransaction(e,{commitment:"confirmed"});if(s){const e=null===(i=s.meta)||void 0===i?void 0:i.logMessages;throw e?new Ks(t.message,e):t}throw t}throw t}}return u}async simulate(t,e,r,n){let i,o=(await this.connection.getLatestBlockhash(null!=r?r:this.connection.commitment)).blockhash;if(_m(t)?(e&&(t.sign(e),t=await this.wallet.signTransaction(t)),i=await this.connection.simulateTransaction(t,{commitment:r})):(t.feePayer=t.feePayer||this.wallet.publicKey,t.recentBlockhash=o,e&&(t=await this.wallet.signTransaction(t)),i=await iw(this.connection,t,e,r,n)),i.value.err)throw new fw(i.value);return i.value}}class fw extends Error{constructor(t,e){super(e),this.simulationResponse=t}}async function dw(t,e,r){const n=r&&{skipPreflight:r.skipPreflight,preflightCommitment:r.preflightCommitment||r.commitment},i=await t.sendRawTransaction(e,n),o=(await t.confirmTransaction(i,r&&r.commitment)).value;if(o.err)throw new pw(`Raw transaction ${i} failed (${JSON.stringify(o)})`);return i}class pw extends Error{constructor(t){super(t)}}function yw(){return null===gw?lw.local():gw}let gw=null;const mw=new Set(["anchor-deprecated-state","debug-logs"]),ww=new Map;function bw(t){return void 0!==ww.get(t)}var vw=Object.freeze({__proto__:null,set:function(t){if(!mw.has(t))throw new Error("Invalid feature");ww.set(t,!0)},isSet:bw});class _w extends Error{constructor(t){super(t),this.name="IdlError"}}class kw{constructor(t){this.stack=t}static parse(t){var e;const r=/^Program (\w*) invoke/,n=/^Program \w* success/,i=[];for(let o=0;o<t.length;o++){if(n.exec(t[o])){i.pop();continue}const s=null===(e=r.exec(t[o]))||void 0===e?void 0:e[1];s&&i.push(new Wo(s))}return new kw(i)}}class Ew extends Error{constructor(t,e,r,n,i,o){super(r.join("\n").replace("Program log: ","")),this.errorLogs=r,this.logs=n,this.error={errorCode:t,errorMessage:e,comparedValues:o,origin:i},this._programErrorStack=kw.parse(n)}static parse(t){if(!t)return null;const e=t.findIndex((t=>t.startsWith("Program log: AnchorError")));if(-1===e)return null;const r=t[e],n=[r];let i;if(e+1<t.length)if("Program log: Left:"===t[e+1]){const r=/^Program log: (.*)$/,o=r.exec(t[e+2])[1],s=r.exec(t[e+4])[1];i=[new Wo(o),new Wo(s)],n.push(...t.slice(e+1,e+5))}else if(t[e+1].startsWith("Program log: Left:")){const r=/^Program log: (Left|Right): (.*)$/,o=r.exec(t[e+1])[2],s=r.exec(t[e+2])[2];n.push(...t.slice(e+1,e+3)),i=[o,s]}const o=/^Program log: AnchorError occurred\. Error Code: (.*)\. Error Number: (\d*)\. Error Message: (.*)\./.exec(r),s=/^Program log: AnchorError thrown in (.*):(\d*)\. Error Code: (.*)\. Error Number: (\d*)\. Error Message: (.*)\./.exec(r),a=/^Program log: AnchorError caused by account: (.*)\. Error Code: (.*)\. Error Number: (\d*)\. Error Message: (.*)\./.exec(r);if(o){const[e,r,s]=o.slice(1,4),a={code:e,number:parseInt(r)};return new Ew(a,s,n,t,void 0,i)}if(s){const[e,r,o,a,u]=s.slice(1,6),c={code:o,number:parseInt(a)},h={file:e,line:parseInt(r)};return new Ew(c,u,n,t,h,i)}if(a){const[e,r,o,s]=a.slice(1,5),u=e,c={code:r,number:parseInt(o)};return new Ew(c,s,n,t,u,i)}return null}get program(){return this._programErrorStack.stack[this._programErrorStack.stack.length-1]}get programErrorStack(){return this._programErrorStack.stack}toString(){return this.message}}class Sw extends Error{constructor(t,e,r){super(),this.code=t,this.msg=e,this.logs=r,r&&(this._programErrorStack=kw.parse(r))}static parse(t,e){const r=t.toString();let n,i;if(r.includes("custom program error:")){let t=r.split("custom program error: ");if(2!==t.length)return null;n=t[1]}else{const t=r.match(/"Custom":([0-9]+)}/g);if(!t||t.length>1)return null;n=t[0].match(/([0-9]+)/g)[0]}try{i=parseInt(n)}catch(t){return null}let o=e.get(i);return void 0!==o?new Sw(i,o,t.logs):(o=Iw.get(i),void 0!==o?new Sw(i,o,t.logs):null)}get program(){var t;return null===(t=this._programErrorStack)||void 0===t?void 0:t.stack[this._programErrorStack.stack.length-1]}get programErrorStack(){var t;return null===(t=this._programErrorStack)||void 0===t?void 0:t.stack}toString(){return this.msg}}function Aw(t,e){bw("debug-logs")&&console.log("Translating error:",t);const r=Ew.parse(t.logs);if(r)return r;const n=Sw.parse(t,e);if(n)return n;if(t.logs){const e={get:function(e,r){return"programErrorStack"===r?e.programErrorStack.stack:"program"===r?e.programErrorStack.stack[t.programErrorStack.stack.length-1]:Reflect.get(...arguments)}};return t.programErrorStack=kw.parse(t.logs),new Proxy(t,e)}return t}const xw={InstructionMissing:100,InstructionFallbackNotFound:101,InstructionDidNotDeserialize:102,InstructionDidNotSerialize:103,IdlInstructionStub:1e3,IdlInstructionInvalidProgram:1001,ConstraintMut:2e3,ConstraintHasOne:2001,ConstraintSigner:2002,ConstraintRaw:2003,ConstraintOwner:2004,ConstraintRentExempt:2005,ConstraintSeeds:2006,ConstraintExecutable:2007,ConstraintState:2008,ConstraintAssociated:2009,ConstraintAssociatedInit:2010,ConstraintClose:2011,ConstraintAddress:2012,ConstraintZero:2013,ConstraintTokenMint:2014,ConstraintTokenOwner:2015,ConstraintMintMintAuthority:2016,ConstraintMintFreezeAuthority:2017,ConstraintMintDecimals:2018,ConstraintSpace:2019,ConstraintAccountIsNone:2020,RequireViolated:2500,RequireEqViolated:2501,RequireKeysEqViolated:2502,RequireNeqViolated:2503,RequireKeysNeqViolated:2504,RequireGtViolated:2505,RequireGteViolated:2506,AccountDiscriminatorAlreadySet:3e3,AccountDiscriminatorNotFound:3001,AccountDiscriminatorMismatch:3002,AccountDidNotDeserialize:3003,AccountDidNotSerialize:3004,AccountNotEnoughKeys:3005,AccountNotMutable:3006,AccountOwnedByWrongProgram:3007,InvalidProgramId:3008,InvalidProgramExecutable:3009,AccountNotSigner:3010,AccountNotSystemOwned:3011,AccountNotInitialized:3012,AccountNotProgramData:3013,AccountNotAssociatedTokenAccount:3014,AccountSysvarMismatch:3015,AccountReallocExceedsLimit:3016,AccountDuplicateReallocs:3017,DeclaredProgramIdMismatch:4100,Deprecated:5e3},Iw=new Map([[xw.InstructionMissing,"8 byte instruction identifier not provided"],[xw.InstructionFallbackNotFound,"Fallback functions are not supported"],[xw.InstructionDidNotDeserialize,"The program could not deserialize the given instruction"],[xw.InstructionDidNotSerialize,"The program could not serialize the given instruction"],[xw.IdlInstructionStub,"The program was compiled without idl instructions"],[xw.IdlInstructionInvalidProgram,"The transaction was given an invalid program for the IDL instruction"],[xw.ConstraintMut,"A mut constraint was violated"],[xw.ConstraintHasOne,"A has one constraint was violated"],[xw.ConstraintSigner,"A signer constraint was violated"],[xw.ConstraintRaw,"A raw constraint was violated"],[xw.ConstraintOwner,"An owner constraint was violated"],[xw.ConstraintRentExempt,"A rent exemption constraint was violated"],[xw.ConstraintSeeds,"A seeds constraint was violated"],[xw.ConstraintExecutable,"An executable constraint was violated"],[xw.ConstraintState,"Deprecated Error, feel free to replace with something else"],[xw.ConstraintAssociated,"An associated constraint was violated"],[xw.ConstraintAssociatedInit,"An associated init constraint was violated"],[xw.ConstraintClose,"A close constraint was violated"],[xw.ConstraintAddress,"An address constraint was violated"],[xw.ConstraintZero,"Expected zero account discriminant"],[xw.ConstraintTokenMint,"A token mint constraint was violated"],[xw.ConstraintTokenOwner,"A token owner constraint was violated"],[xw.ConstraintMintMintAuthority,"A mint mint authority constraint was violated"],[xw.ConstraintMintFreezeAuthority,"A mint freeze authority constraint was violated"],[xw.ConstraintMintDecimals,"A mint decimals constraint was violated"],[xw.ConstraintSpace,"A space constraint was violated"],[xw.ConstraintAccountIsNone,"A required account for the constraint is None"],[xw.RequireViolated,"A require expression was violated"],[xw.RequireEqViolated,"A require_eq expression was violated"],[xw.RequireKeysEqViolated,"A require_keys_eq expression was violated"],[xw.RequireNeqViolated,"A require_neq expression was violated"],[xw.RequireKeysNeqViolated,"A require_keys_neq expression was violated"],[xw.RequireGtViolated,"A require_gt expression was violated"],[xw.RequireGteViolated,"A require_gte expression was violated"],[xw.AccountDiscriminatorAlreadySet,"The account discriminator was already set on this account"],[xw.AccountDiscriminatorNotFound,"No 8 byte discriminator was found on the account"],[xw.AccountDiscriminatorMismatch,"8 byte discriminator did not match what was expected"],[xw.AccountDidNotDeserialize,"Failed to deserialize the account"],[xw.AccountDidNotSerialize,"Failed to serialize the account"],[xw.AccountNotEnoughKeys,"Not enough account keys given to the instruction"],[xw.AccountNotMutable,"The given account is not mutable"],[xw.AccountOwnedByWrongProgram,"The given account is owned by a different program than expected"],[xw.InvalidProgramId,"Program ID was not as expected"],[xw.InvalidProgramExecutable,"Program account is not executable"],[xw.AccountNotSigner,"The given account did not sign"],[xw.AccountNotSystemOwned,"The given account is not owned by the system program"],[xw.AccountNotInitialized,"The program expected this account to be already initialized"],[xw.AccountNotProgramData,"The given account is not a program data account"],[xw.AccountNotAssociatedTokenAccount,"The given account is not the associated token account"],[xw.AccountSysvarMismatch,"The given public key does not match the required sysvar"],[xw.AccountReallocExceedsLimit,"The account reallocation exceeds the MAX_PERMITTED_DATA_INCREASE limit"],[xw.AccountDuplicateReallocs,"The account was duplicated for more than one reallocation"],[xw.DeclaredProgramIdMismatch,"The declared program id does not match the actual program id"],[xw.Deprecated,"The API being used is deprecated and should no longer be used"]]);var Bw=function(){return Bw=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},Bw.apply(this,arguments)},Mw=function(){return Mw=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},Mw.apply(this,arguments)};function Pw(t){return t.toLowerCase()}var Lw=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],Ow=/[^A-Z0-9]+/gi;function Tw(t,e,r){return e instanceof RegExp?t.replace(e,r):e.reduce((function(t,e){return t.replace(e,r)}),t)}function Rw(t,e){return void 0===e&&(e={}),function(t,e){void 0===e&&(e={});for(var r=e.splitRegexp,n=void 0===r?Lw:r,i=e.stripRegexp,o=void 0===i?Ow:i,s=e.transform,a=void 0===s?Pw:s,u=e.delimiter,c=void 0===u?" ":u,h=Tw(Tw(t,n,"$1\0$2"),o,"\0"),l=0,f=h.length;"\0"===h.charAt(l);)l++;for(;"\0"===h.charAt(f-1);)f--;return h.slice(l,f).split("\0").map(a).join(c)}(t,Mw({delimiter:"."},e))}class Uw{static fieldLayout(t,e){const r=void 0!==t.name?vd(t.name):void 0;switch(t.type){case"bool":return _d.bool(r);case"u8":return _d.u8(r);case"i8":return _d.i8(r);case"u16":return _d.u16(r);case"i16":return _d.i16(r);case"u32":return _d.u32(r);case"i32":return _d.i32(r);case"f32":return _d.f32(r);case"u64":return _d.u64(r);case"i64":return _d.i64(r);case"f64":return _d.f64(r);case"u128":return _d.u128(r);case"i128":return _d.i128(r);case"u256":return _d.u256(r);case"i256":return _d.i256(r);case"bytes":return _d.vecU8(r);case"string":return _d.str(r);case"publicKey":return _d.publicKey(r);default:if("vec"in t.type)return _d.vec(Uw.fieldLayout({name:void 0,type:t.type.vec},e),r);if("option"in t.type)return _d.option(Uw.fieldLayout({name:void 0,type:t.type.option},e),r);if("defined"in t.type){const n=t.type.defined;if(void 0===e)throw new _w("User defined types not provided");const i=e.filter((t=>t.name===n));if(1!==i.length)throw new _w(`Type not found: ${JSON.stringify(t)}`);return Uw.typeDefLayout(i[0],e,r)}if("array"in t.type){let n=t.type.array[0],i=t.type.array[1],o=Uw.fieldLayout({name:void 0,type:n},e);return _d.array(o,i,r)}throw new Error(`Not yet implemented: ${t}`)}}static typeDefLayout(t,e=[],r){if("struct"===t.type.kind){const n=t.type.fields.map((t=>Uw.fieldLayout(t,e)));return _d.struct(n,r)}if("enum"===t.type.kind){let n=t.type.variants.map((t=>{const r=vd(t.name);if(void 0===t.fields)return _d.struct([],r);const n=t.fields.map(((t,r)=>t.hasOwnProperty("name")?Uw.fieldLayout(t,e):Uw.fieldLayout({type:t,name:r.toString()},e)));return _d.struct(n,r)}));return void 0!==r?_d.rustEnum(n).replicate(r):_d.rustEnum(n,r)}throw new Error(`Unknown type kint: ${t}`)}}const Cw="global";class Nw{constructor(t){this.idl=t,this.ixLayout=Nw.parseIxLayout(t);const e=new Map;t.instructions.forEach((t=>{const r=Dw(Cw,t.name);e.set(md.encode(r),{layout:this.ixLayout.get(t.name),name:t.name})})),this.sighashLayouts=e}encode(t,e){return this._encode(Cw,t,e)}_encode(t,e,r){const i=n.Buffer.alloc(1e3),o=vd(e),s=this.ixLayout.get(o);if(!s)throw new Error(`Unknown method: ${o}`);const a=s.encode(r,i),u=i.slice(0,a);return n.Buffer.concat([Dw(t,e),u])}static parseIxLayout(t){const e=t.instructions.map((e=>{let r=e.args.map((e=>{var r,n;return Uw.fieldLayout(e,Array.from([...null!==(r=t.accounts)&&void 0!==r?r:[],...null!==(n=t.types)&&void 0!==n?n:[]]))}));const n=vd(e.name);return[n,_d.struct(r,n)]}));return new Map(e)}decode(t,e="hex"){"string"==typeof t&&(t="hex"===e?n.Buffer.from(t,"hex"):md.decode(t));let r=md.encode(t.slice(0,8)),i=t.slice(8);const o=this.sighashLayouts.get(r);return o?{data:o.layout.decode(i),name:o.name}:null}format(t,e){return zw.format(t,e,this.idl)}}class zw{static format(t,e,r){const n=r.instructions.filter((e=>t.name===e.name))[0];if(void 0===n)return console.error("Invalid instruction given"),null;const i=n.args.map((e=>({name:e.name,type:zw.formatIdlType(e.type),data:zw.formatIdlData(e,t.data[e.name],r.types)}))),o=zw.flattenIdlAccounts(n.accounts);return{args:i,accounts:e.map(((t,e)=>e<o.length?{name:o[e].name,...t}:{name:void 0,...t}))}}static formatIdlType(t){if("string"==typeof t)return t;if("vec"in t)return`Vec<${this.formatIdlType(t.vec)}>`;if("option"in t)return`Option<${this.formatIdlType(t.option)}>`;if("defined"in t)return t.defined;if("array"in t)return`Array<${t.array[0]}; ${t.array[1]}>`;throw new Error(`Unknown IDL type: ${t}`)}static formatIdlData(t,e,r){if("string"==typeof t.type)return e.toString();if(t.type.hasOwnProperty("vec"))return"["+e.map((e=>this.formatIdlData({name:"",type:t.type.vec},e))).join(", ")+"]";if(t.type.hasOwnProperty("option"))return null===e?"null":this.formatIdlData({name:"",type:t.type.option},e,r);if(t.type.hasOwnProperty("defined")){if(void 0===r)throw new Error("User defined types not provided");const n=r.filter((e=>e.name===t.type.defined));if(1!==n.length)throw new Error(`Type not found: ${t.type.defined}`);return zw.formatIdlDataDefined(n[0],e,r)}return"unknown"}static formatIdlDataDefined(t,e,r){if("struct"===t.type.kind){const n=t.type,i=Object.keys(e).map((t=>{const i=n.fields.filter((e=>e.name===t))[0];if(void 0===i)throw new Error("Unable to find type");return t+": "+zw.formatIdlData(i,e[t],r)})).join(", ");return"{ "+i+" }"}if(0===t.type.variants.length)return"{}";if(t.type.variants[0].name){const n=t.type.variants,i=Object.keys(e)[0],o=e[i],s=Object.keys(o).map((t=>{var e;const s=o[t],a=null===(e=n[i])||void 0===e?void 0:e.filter((e=>e.name===t))[0];if(void 0===a)throw new Error("Unable to find variant");return t+": "+zw.formatIdlData(a,s,r)})).join(", "),a=vd(i,{pascalCase:!0});return 0===s.length?a:`${a} { ${s} }`}return"Tuple formatting not yet implemented"}static flattenIdlAccounts(t,e){return t.map((t=>{const r=function(t){const e=t.replace(/([A-Z])/g," $1");return e.charAt(0).toUpperCase()+e.slice(1)}(t.name);if(t.hasOwnProperty("accounts")){const n=e?`${e} > ${r}`:r;return zw.flattenIdlAccounts(t.accounts,n)}return{...t,name:e?`${e} > ${r}`:r}})).flat()}}function Dw(t,e){var r;let i=`${t}:${void 0===r&&(r={}),Rw(e,Bw({delimiter:"_"},r))}`;return n.Buffer.from(pe(i).slice(0,8))}function jw(t,e){if("enum"===e.type.kind){const r=e.type.variants.map((e=>e.fields?e.fields.map((e=>Ww(t,"object"==typeof e&&"name"in e?e.type:e))).reduce(((t,e)=>t+e),0):0));return Math.max(...r)+1}return e.type.fields.map((e=>Ww(t,e.type))).reduce(((t,e)=>t+e),0)}function Ww(t,e){var r,n;switch(e){case"bool":case"u8":case"i8":case"bytes":case"string":return 1;case"i16":case"u16":return 2;case"u32":case"i32":case"f32":return 4;case"u64":case"i64":case"f64":return 8;case"u128":case"i128":return 16;case"u256":case"i256":case"publicKey":return 32;default:if("vec"in e)return 1;if("option"in e)return 1+Ww(t,e.option);if("coption"in e)return 4+Ww(t,e.coption);if("defined"in e){const i=null!==(n=null===(r=t.types)||void 0===r?void 0:r.filter((t=>t.name===e.defined)))&&void 0!==n?n:[];if(1!==i.length)throw new _w(`Type not found: ${JSON.stringify(e)}`);return jw(t,i[0])}if("array"in e){let r=e.array[0],n=e.array[1];return Ww(t,r)*n}throw new Error(`Invalid type ${JSON.stringify(e)}`)}}const Fw=8;function Kw(t){return Buffer.from(pe(t).slice(0,Fw))}class qw{constructor(t){if(void 0===t.accounts)return void(this.accountLayouts=new Map);const e=t.accounts.map((e=>[e.name,Uw.typeDefLayout(e,t.types)]));this.accountLayouts=new Map(e),this.idl=t}async encode(t,e){const r=n.Buffer.alloc(1e3),i=this.accountLayouts.get(t);if(!i)throw new Error(`Unknown account: ${t}`);const o=i.encode(e,r);let s=r.slice(0,o),a=qw.accountDiscriminator(t);return n.Buffer.concat([a,s])}decode(t,e){if(qw.accountDiscriminator(t).compare(e.slice(0,8)))throw new Error("Invalid account discriminator");return this.decodeUnchecked(t,e)}decodeAny(t){const e=t.slice(0,8),r=Array.from(this.accountLayouts.keys()).find((t=>qw.accountDiscriminator(t).equals(e)));if(!r)throw new Error("Account descriminator not found");return this.decodeUnchecked(r,t)}decodeUnchecked(t,e){const r=e.subarray(Fw),n=this.accountLayouts.get(t);if(!n)throw new Error(`Unknown account: ${t}`);return n.decode(r)}memcmp(t,e){const r=qw.accountDiscriminator(t);return{offset:0,bytes:md.encode(e?n.Buffer.concat([r,e]):r)}}size(t){var e;return Fw+(null!==(e=jw(this.idl,t))&&void 0!==e?e:0)}static accountDiscriminator(t){return Kw(`account:${vd(t,{pascalCase:!0,preserveConsecutiveUppercase:!0})}`)}}class Vw{constructor(t){if(void 0===t.events)return void(this.layouts=new Map);const e=t.events.map((e=>{let r={name:e.name,type:{kind:"struct",fields:e.fields.map((t=>({name:t.name,type:t.type})))}};return[e.name,Uw.typeDefLayout(r,t.types)]}));this.layouts=new Map(e),this.discriminators=new Map(void 0===t.events?[]:t.events.map((t=>[s(Hw(t.name)),t.name])))}decode(t){let e;try{e=n.Buffer.from(o(t))}catch(t){return null}const r=s(e.slice(0,8)),i=this.discriminators.get(r);if(void 0===i)return null;const a=this.layouts.get(i);if(!a)throw new Error(`Unknown event: ${i}`);return{data:a.decode(e.slice(8)),name:i}}}function Hw(t){return Kw(`event:${t}`)}class $w{constructor(t){if(void 0===t.types)return void(this.typeLayouts=new Map);const e=t.types.map((e=>[e.name,Uw.typeDefLayout(e,t.types)]));this.typeLayouts=new Map(e),this.idl=t}encode(t,e){const r=n.Buffer.alloc(1e3),i=this.typeLayouts.get(t);if(!i)throw new Error(`Unknown type: ${t}`);const o=i.encode(e,r);return r.slice(0,o)}decode(t,e){const r=this.typeLayouts.get(t);if(!r)throw new Error(`Unknown type: ${t}`);return r.decode(e)}}class Zw{constructor(t){this.instruction=new Nw(t),this.accounts=new qw(t),this.events=new Vw(t),this.types=new $w(t)}}var Gw="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Yw(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}class Jw{constructor(t,e){if(!Number.isInteger(t))throw new TypeError("span must be an integer");this.span=t,this.property=e}makeDestinationObject(){return{}}decode(t,e){throw new Error("Layout is abstract")}encode(t,e,r){throw new Error("Layout is abstract")}getSpan(t,e){if(0>this.span)throw new RangeError("indeterminate span");return this.span}replicate(t){const e=Object.create(this.constructor.prototype);return Object.assign(e,this),e.property=t,e}fromArray(t){}}var Xw=Jw;class Qw extends Jw{isCount(){throw new Error("ExternalLayout is abstract")}}class tb extends Qw{constructor(t,e,r){if(!(t instanceof Jw))throw new TypeError("layout must be a Layout");if(void 0===e)e=0;else if(!Number.isInteger(e))throw new TypeError("offset must be integer or undefined");super(t.span,r||t.property),this.layout=t,this.offset=e}isCount(){return this.layout instanceof eb||this.layout instanceof rb}decode(t,e){return void 0===e&&(e=0),this.layout.decode(t,e+this.offset)}encode(t,e,r){return void 0===r&&(r=0),this.layout.encode(t,e,r+this.offset)}}class eb extends Jw{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntLE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntLE(t,r,this.span),this.span}}class rb extends Jw{constructor(t,e){if(super(t,e),6<this.span)throw new RangeError("span must not exceed 6 bytes")}decode(t,e){return void 0===e&&(e=0),t.readUIntBE(e,this.span)}encode(t,e,r){return void 0===r&&(r=0),e.writeUIntBE(t,r,this.span),this.span}}const nb=Math.pow(2,32);function ib(t){const e=Math.floor(t/nb);return{hi32:e,lo32:t-e*nb}}function ob(t,e){return t*nb+e}class sb extends Jw{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return ob(t.readUInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=ib(t);return e.writeUInt32LE(n.lo32,r),e.writeUInt32LE(n.hi32,r+4),8}}class ab extends Jw{constructor(t){super(8,t)}decode(t,e){void 0===e&&(e=0);const r=t.readUInt32LE(e);return ob(t.readInt32LE(e+4),r)}encode(t,e,r){void 0===r&&(r=0);const n=ib(t);return e.writeUInt32LE(n.lo32,r),e.writeInt32LE(n.hi32,r+4),8}}class ub extends Jw{constructor(t,e,r){if(!Array.isArray(t)||!t.reduce(((t,e)=>t&&e instanceof Jw),!0))throw new TypeError("fields must be array of Layout instances");"boolean"==typeof e&&void 0===r&&(r=e,e=void 0);for(const e of t)if(0>e.span&&void 0===e.property)throw new Error("fields cannot contain unnamed variable-length layout");let n=-1;try{n=t.reduce(((t,e)=>t+e.getSpan()),0)}catch(t){}super(n,e),this.fields=t,this.decodePrefixes=!!r}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;try{r=this.fields.reduce(((r,n)=>{const i=n.getSpan(t,e);return e+=i,r+i}),0)}catch(t){throw new RangeError("indeterminate span")}return r}decode(t,e){void 0===e&&(e=0);const r=this.makeDestinationObject();for(const n of this.fields)if(void 0!==n.property&&(r[n.property]=n.decode(t,e)),e+=n.getSpan(t,e),this.decodePrefixes&&t.length===e)break;return r}encode(t,e,r){void 0===r&&(r=0);const n=r;let i=0,o=0;for(const n of this.fields){let s=n.span;if(o=0<s?s:0,void 0!==n.property){const i=t[n.property];void 0!==i&&(o=n.encode(i,e,r),0>s&&(s=n.getSpan(e,r)))}i=r,r+=s}return i+o-n}fromArray(t){const e=this.makeDestinationObject();for(const r of this.fields)void 0!==r.property&&0<t.length&&(e[r.property]=t.shift());return e}layoutFor(t){if("string"!=typeof t)throw new TypeError("property must be string");for(const e of this.fields)if(e.property===t)return e}offsetOf(t){if("string"!=typeof t)throw new TypeError("property must be string");let e=0;for(const r of this.fields){if(r.property===t)return e;0>r.span?e=-1:0<=e&&(e+=r.span)}}}class cb{constructor(t){this.property=t}decode(){throw new Error("UnionDiscriminator is abstract")}encode(){throw new Error("UnionDiscriminator is abstract")}}class hb extends cb{constructor(t,e){if(!(t instanceof Qw&&t.isCount()))throw new TypeError("layout must be an unsigned integer ExternalLayout");super(e||t.property||"variant"),this.layout=t}decode(t,e){return this.layout.decode(t,e)}encode(t,e,r){return this.layout.encode(t,e,r)}}class lb extends Jw{constructor(t,e,r){const n=t instanceof eb||t instanceof rb;if(n)t=new hb(new tb(t));else if(t instanceof Qw&&t.isCount())t=new hb(t);else if(!(t instanceof cb))throw new TypeError("discr must be a UnionDiscriminator or an unsigned integer layout");if(void 0===e&&(e=null),!(null===e||e instanceof Jw))throw new TypeError("defaultLayout must be null or a Layout");if(null!==e){if(0>e.span)throw new Error("defaultLayout must have constant span");void 0===e.property&&(e=e.replicate("content"))}let i=-1;e&&(i=e.span,0<=i&&n&&(i+=t.layout.span)),super(i,r),this.discriminator=t,this.usesPrefixDiscriminator=n,this.defaultLayout=e,this.registry={};let o=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(t){return o(t)},this.configGetSourceVariant=function(t){o=t.bind(this)}}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);const r=this.getVariant(t,e);if(!r)throw new Error("unable to determine span for unrecognized variant");return r.getSpan(t,e)}defaultGetSourceVariant(t){if(t.hasOwnProperty(this.discriminator.property)){if(this.defaultLayout&&t.hasOwnProperty(this.defaultLayout.property))return;const e=this.registry[t[this.discriminator.property]];if(e&&(!e.layout||t.hasOwnProperty(e.property)))return e}else for(const e in this.registry){const r=this.registry[e];if(t.hasOwnProperty(r.property))return r}throw new Error("unable to infer src variant")}decode(t,e){let r;void 0===e&&(e=0);const n=this.discriminator,i=n.decode(t,e);let o=this.registry[i];if(void 0===o){let s=0;o=this.defaultLayout,this.usesPrefixDiscriminator&&(s=n.layout.span),r=this.makeDestinationObject(),r[n.property]=i,r[o.property]=this.defaultLayout.decode(t,e+s)}else r=o.decode(t,e);return r}encode(t,e,r){void 0===r&&(r=0);const n=this.getSourceVariant(t);if(void 0===n){const n=this.discriminator,i=this.defaultLayout;let o=0;return this.usesPrefixDiscriminator&&(o=n.layout.span),n.encode(t[n.property],e,r),o+i.encode(t[i.property],e,r+o)}return n.encode(t,e,r)}addVariant(t,e,r){const n=new fb(this,t,e,r);return this.registry[t]=n,n}getVariant(t,e){let r=t;return Buffer.isBuffer(t)&&(void 0===e&&(e=0),r=this.discriminator.decode(t,e)),this.registry[r]}}class fb extends Jw{constructor(t,e,r,n){if(!(t instanceof lb))throw new TypeError("union must be a Union");if(!Number.isInteger(e)||0>e)throw new TypeError("variant must be a (non-negative) integer");if("string"==typeof r&&void 0===n&&(n=r,r=null),r){if(!(r instanceof Jw))throw new TypeError("layout must be a Layout");if(null!==t.defaultLayout&&0<=r.span&&r.span>t.defaultLayout.span)throw new Error("variant span exceeds span of containing union");if("string"!=typeof n)throw new TypeError("variant must have a String property")}let i=t.span;0>t.span&&(i=r?r.span:0,0<=i&&t.usesPrefixDiscriminator&&(i+=t.discriminator.layout.span)),super(i,n),this.union=t,this.variant=e,this.layout=r||null}getSpan(t,e){if(0<=this.span)return this.span;void 0===e&&(e=0);let r=0;return this.union.usesPrefixDiscriminator&&(r=this.union.discriminator.layout.span),r+this.layout.getSpan(t,e+r)}decode(t,e){const r=this.makeDestinationObject();if(void 0===e&&(e=0),this!==this.union.getVariant(t,e))throw new Error("variant mismatch");let n=0;return this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout?r[this.property]=this.layout.decode(t,e+n):this.property?r[this.property]=!0:this.union.usesPrefixDiscriminator&&(r[this.union.discriminator.property]=this.variant),r}encode(t,e,r){void 0===r&&(r=0);let n=0;if(this.union.usesPrefixDiscriminator&&(n=this.union.discriminator.layout.span),this.layout&&!t.hasOwnProperty(this.property))throw new TypeError("variant lacks property "+this.property);this.union.discriminator.encode(this.variant,e,r);let i=n;if(this.layout&&(this.layout.encode(t[this.property],e,r+n),i+=this.layout.getSpan(e,r+n),0<=this.union.span&&i>this.union.span))throw new Error("encoded variant overruns containing union");return i}fromArray(t){if(this.layout)return this.layout.fromArray(t)}}class db extends Jw{constructor(t,e){if(!(t instanceof Qw&&t.isCount()||Number.isInteger(t)&&0<=t))throw new TypeError("length must be positive integer or an unsigned integer ExternalLayout");let r=-1;t instanceof Qw||(r=t),super(r,e),this.length=t}getSpan(t,e){let r=this.span;return 0>r&&(r=this.length.decode(t,e)),r}decode(t,e){void 0===e&&(e=0);let r=this.span;return 0>r&&(r=this.length.decode(t,e)),t.slice(e,e+r)}encode(t,e,r){let n=this.length;if(this.length instanceof Qw&&(n=t.length),!Buffer.isBuffer(t)||n!==t.length)throw new TypeError(function(t,e){return e.property?t+"["+e.property+"]":t}("Blob.encode",this)+" requires (length "+n+") Buffer as src");if(r+n>e.length)throw new RangeError("encoding overruns Buffer");return e.write(t.toString("hex"),r,n,"hex"),this.length instanceof Qw&&this.length.encode(n,e,r),n}}var pb=(t,e,r)=>new tb(t,e,r),yb=t=>new eb(4,t),gb=t=>new ab(t),mb=(t,e,r)=>new ub(t,e,r),wb=(t,e,r)=>new lb(t,e,r),bb=(t,e)=>new db(t,e);class vb{constructor(t){}encode(t,e){switch(vd(t)){case"createAccount":return function({lamports:t,space:e,owner:r}){return Ab({createAccount:{lamports:t,space:e,owner:r.toBuffer()}})}(e);case"assign":return function({owner:t}){return Ab({assign:{owner:t.toBuffer()}})}(e);case"transfer":return function({lamports:t}){return Ab({transfer:{lamports:t}})}(e);case"createAccountWithSeed":return function({base:t,seed:e,lamports:r,space:n,owner:i}){return Ab({createAccountWithSeed:{base:t.toBuffer(),seed:e,lamports:r,space:n,owner:i.toBuffer()}},Sb.getVariant(3).span+e.length)}(e);case"advanceNonceAccount":return function({authorized:t}){return Ab({advanceNonceAccount:{authorized:t.toBuffer()}})}(e);case"withdrawNonceAccount":return function({lamports:t}){return Ab({withdrawNonceAccount:{lamports:t}})}(e);case"initializeNonceAccount":return function({authorized:t}){return Ab({initializeNonceAccount:{authorized:t.toBuffer()}})}(e);case"authorizeNonceAccount":return function({authorized:t}){return Ab({authorizeNonceAccount:{authorized:t.toBuffer()}})}(e);case"allocate":return function({space:t}){return Ab({allocate:{space:t}})}(e);case"allocateWithSeed":return function({base:t,seed:e,space:r,owner:n}){return Ab({allocateWithSeed:{base:t.toBuffer(),seed:e,space:r,owner:n.toBuffer()}},Sb.getVariant(9).span+e.length)}(e);case"assignWithSeed":return function({base:t,seed:e,owner:r}){return Ab({assignWithSeed:{base:t.toBuffer(),seed:e,owner:r.toBuffer()}},Sb.getVariant(10).span+e.length)}(e);case"transferWithSeed":return function({lamports:t,seed:e,owner:r}){return Ab({transferWithSeed:{lamports:t,seed:e,owner:r.toBuffer()}},Sb.getVariant(11).span+e.length)}(e);default:throw new Error(`Invalid instruction: ${t}`)}}encodeState(t,e){throw new Error("System does not have state")}}class _b extends Xw{constructor(t){super(-1,t),this.property=t,this.layout=mb([yb("length"),yb("lengthPadding"),bb(pb(yb(),-8),"chars")],this.property)}encode(t,e,r=0){if(null==t)return this.layout.span;const n={chars:Buffer.from(t,"utf8")};return this.layout.encode(n,e,r)}decode(t,e=0){return this.layout.decode(t,e).chars.toString()}getSpan(t,e=0){return yb().span+yb().span+new ne(new Uint8Array(t).slice(e,e+4),10,"le").toNumber()}}function kb(t){return new _b(t)}function Eb(t){return bb(32,t)}const Sb=wb(yb("instruction"));function Ab(t,e){const r=Buffer.alloc(null!=e?e:xb),n=Sb.encode(t,r);return void 0===e?r.slice(0,n):r}Sb.addVariant(0,mb([gb("lamports"),gb("space"),Eb("owner")]),"createAccount"),Sb.addVariant(1,mb([Eb("owner")]),"assign"),Sb.addVariant(2,mb([gb("lamports")]),"transfer"),Sb.addVariant(3,mb([Eb("base"),kb("seed"),gb("lamports"),gb("space"),Eb("owner")]),"createAccountWithSeed"),Sb.addVariant(4,mb([Eb("authorized")]),"advanceNonceAccount"),Sb.addVariant(5,mb([gb("lamports")]),"withdrawNonceAccount"),Sb.addVariant(6,mb([Eb("authorized")]),"initializeNonceAccount"),Sb.addVariant(7,mb([Eb("authorized")]),"authorizeNonceAccount"),Sb.addVariant(8,mb([gb("space")]),"allocate"),Sb.addVariant(9,mb([Eb("base"),kb("seed"),gb("space"),Eb("owner")]),"allocateWithSeed"),Sb.addVariant(10,mb([Eb("base"),kb("seed"),Eb("owner")]),"assignWithSeed"),Sb.addVariant(11,mb([gb("lamports"),kb("seed"),Eb("owner")]),"transferWithSeed");const xb=Math.max(...Object.values(Sb.registry).map((t=>t.span)));class Ib{constructor(t){this.idl=t}async encode(t,e){if("nonce"===t){const t=Buffer.alloc(Bs),r=Pb.encode(e,t);return t.slice(0,r)}throw new Error(`Invalid account name: ${t}`)}decode(t,e){return this.decodeUnchecked(t,e)}decodeUnchecked(t,e){if("nonce"===t)return function(t){return Pb.decode(t)}(e);throw new Error(`Invalid account name: ${t}`)}memcmp(t,e){if("nonce"===t)return{dataSize:Bs};throw new Error(`Invalid account name: ${t}`)}size(t){var e;return null!==(e=jw(this.idl,t))&&void 0!==e?e:0}}class Bb extends Xw{constructor(t,e,r,n){super(t.span,n),this.layout=t,this.decoder=e,this.encoder=r}decode(t,e){return this.decoder(this.layout.decode(t,e))}encode(t,e,r){return this.layout.encode(this.encoder(t),e,r)}getSpan(t,e){return this.layout.getSpan(t,e)}}function Mb(t){return new Bb(bb(32),(t=>new Wo(t)),(t=>t.toBuffer()),t)}const Pb=mb([yb("version"),yb("state"),Mb("authorizedPubkey"),Mb("nonce"),mb([(Lb="lamportsPerSignature",new sb(Lb))],"feeCalculator")]);var Lb;class Ob{constructor(t){}decode(t){throw new Error("System program does not have events")}}class Tb{constructor(t){}encode(t,e){throw new Error("System does not have user-defined types")}decode(t,e){throw new Error("System does not have user-defined types")}}class Rb{constructor(t){this.instruction=new vb(t),this.accounts=new Ib(t),this.events=new Ob(t),this.types=new Tb(t)}}var Ub=Object.freeze({__proto__:null,hash:function(t){return(new TextDecoder).decode(pe(t))}});function Cb(t,...e){let r=[n.Buffer.from([97,110,99,104,111,114])];e.forEach((t=>{r.push(t instanceof n.Buffer?t:Rm(t).toBuffer())}));const[i]=Wo.findProgramAddressSync(r,Rm(t));return i}var Nb=Object.freeze({__proto__:null,createWithSeedSync:function(t,e,r){const i=n.Buffer.concat([t.toBuffer(),n.Buffer.from(e),r.toBuffer()]);return new Wo(pe(i))},associated:Cb});const zb=new Wo("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),Db=new Wo("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");var jb=Object.freeze({__proto__:null,TOKEN_PROGRAM_ID:zb,ASSOCIATED_PROGRAM_ID:Db,associatedAddress:function({mint:t,owner:e}){return Wo.findProgramAddressSync([e.toBuffer(),zb.toBuffer(),t.toBuffer()],Db)[0]}}),Wb={exports:{}};!function(t,e){var r="undefined"!=typeof self?self:Gw,n=function(){function t(){this.fetch=!1,this.DOMException=r.DOMException}return t.prototype=r,new t}();!function(t){!function(e){var r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),o="FormData"in t,s="ArrayBuffer"in t;if(s)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(t){return t&&a.indexOf(Object.prototype.toString.call(t))>-1};function c(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function h(t){return"string"!=typeof t&&(t=String(t)),t}function l(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return n&&(e[Symbol.iterator]=function(){return e}),e}function f(t){this.map={},t instanceof f?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function d(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function p(t){return new Promise((function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}}))}function y(t){var e=new FileReader,r=p(e);return e.readAsArrayBuffer(t),r}function g(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(t){var e;this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:i&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:o&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:r&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():s&&i&&((e=t)&&DataView.prototype.isPrototypeOf(e))?(this._bodyArrayBuffer=g(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(t)||u(t))?this._bodyArrayBuffer=g(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var t=d(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?d(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var t=d(this);if(t)return t;if(this._bodyBlob)return function(t){var e=new FileReader,r=p(e);return e.readAsText(t),r}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n<e.length;n++)r[n]=String.fromCharCode(e[n]);return r.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},o&&(this.formData=function(){return this.text().then(v)}),this.json=function(){return this.text().then(JSON.parse)},this}f.prototype.append=function(t,e){t=c(t),e=h(e);var r=this.map[t];this.map[t]=r?r+", "+e:e},f.prototype.delete=function(t){delete this.map[c(t)]},f.prototype.get=function(t){return t=c(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(c(t))},f.prototype.set=function(t,e){this.map[c(t)]=h(e)},f.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},f.prototype.keys=function(){var t=[];return this.forEach((function(e,r){t.push(r)})),l(t)},f.prototype.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),l(t)},f.prototype.entries=function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),l(t)},n&&(f.prototype[Symbol.iterator]=f.prototype.entries);var w=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function b(t,e){var r,n,i=(e=e||{}).body;if(t instanceof b){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,i||null==t._bodyInit||(i=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"same-origin",!e.headers&&this.headers||(this.headers=new f(e.headers)),this.method=(r=e.method||this.method||"GET",n=r.toUpperCase(),w.indexOf(n)>-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function v(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var r=t.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");e.append(decodeURIComponent(n),decodeURIComponent(i))}})),e}function _(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new f(e.headers),this.url=e.url||"",this._initBody(t)}b.prototype.clone=function(){return new b(this,{body:this._bodyInit})},m.call(b.prototype),m.call(_.prototype),_.prototype.clone=function(){return new _(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},_.error=function(){var t=new _(null,{status:0,statusText:""});return t.type="error",t};var k=[301,302,303,307,308];_.redirect=function(t,e){if(-1===k.indexOf(e))throw new RangeError("Invalid status code");return new _(null,{status:e,headers:{location:t}})},e.DOMException=t.DOMException;try{new e.DOMException}catch(t){e.DOMException=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function E(t,r){return new Promise((function(n,o){var s=new b(t,r);if(s.signal&&s.signal.aborted)return o(new e.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function u(){a.abort()}a.onload=function(){var t,e,r={status:a.status,statusText:a.statusText,headers:(t=a.getAllResponseHeaders()||"",e=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var r=t.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();e.append(n,i)}})),e)};r.url="responseURL"in a?a.responseURL:r.headers.get("X-Request-URL");var i="response"in a?a.response:a.responseText;n(new _(i,r))},a.onerror=function(){o(new TypeError("Network request failed"))},a.ontimeout=function(){o(new TypeError("Network request failed"))},a.onabort=function(){o(new e.DOMException("Aborted","AbortError"))},a.open(s.method,s.url,!0),"include"===s.credentials?a.withCredentials=!0:"omit"===s.credentials&&(a.withCredentials=!1),"responseType"in a&&i&&(a.responseType="blob"),s.headers.forEach((function(t,e){a.setRequestHeader(e,t)})),s.signal&&(s.signal.addEventListener("abort",u),a.onreadystatechange=function(){4===a.readyState&&s.signal.removeEventListener("abort",u)}),a.send(void 0===s._bodyInit?null:s._bodyInit)}))}E.polyfill=!0,t.fetch||(t.fetch=E,t.Headers=f,t.Request=b,t.Response=_),e.Headers=f,e.Request=b,e.Response=_,e.fetch=E,Object.defineProperty(e,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;(e=i.fetch).default=i.fetch,e.fetch=i.fetch,e.Headers=i.Headers,e.Request=i.Request,e.Response=i.Response,t.exports=e}(Wb,Wb.exports);var Fb=Yw(Wb.exports);async function Kb(t,e){const r=await t.getAccountInfo(e);if(null===r)throw new Error("program account not found");const{program:n}=Vb(r.data),i=await t.getAccountInfo(n.programdataAddress);if(null===i)throw new Error("program data account not found");const{programData:o}=Vb(i.data);return o}const qb=_d.rustEnum([_d.struct([],"uninitialized"),_d.struct([_d.option(_d.publicKey(),"authorityAddress")],"buffer"),_d.struct([_d.publicKey("programdataAddress")],"program"),_d.struct([_d.u64("slot"),_d.option(_d.publicKey(),"upgradeAuthorityAddress")],"programData")],void 0,_d.u32());function Vb(t){return qb.decode(t)}var Hb=Object.freeze({__proto__:null,verifiedBuild:async function(t,e,r=5){const n=`https://api.apr.dev/api/v0/program/${e.toString()}/latest?limit=${r}`,[i,o]=await Promise.all([Kb(t,e),Fb(n)]),s=(await o.json()).filter((t=>!t.aborted&&"Built"===t.state&&"Verified"===t.verified));if(0===s.length)return null;const a=s[0];return i.slot.toNumber()!==a.verified_slot?null:a},fetchData:Kb,decodeUpgradeableLoaderState:Vb}),$b=Object.freeze({__proto__:null,sha256:Ub,rpc:hw,publicKey:Nb,bytes:Pm,token:jb,features:vw,registry:Hb});function Zb(t){return"accounts"in t}const Gb=_d.struct([_d.publicKey("authority"),_d.vecU8("data")]);function Yb(t,e){var r,n;let i={};const o=t.args?t.args.length:0;if(e.length>o){if(e.length!==o+1)throw new Error(`provided too many arguments ${e} to instruction ${null==t?void 0:t.name} expecting: ${null!==(n=null===(r=t.args)||void 0===r?void 0:r.map((t=>t.name)))&&void 0!==n?n:[]}`);i=e.pop()}return[e,i]}class Jb{static build(t,e,r){if("_inner"===t.name)throw new _w("the _inner name is reserved");const n=(...i)=>{const[o,s]=Yb(t,[...i]);Tm(t.accounts,s.accounts);const a=n.accounts(s.accounts);return void 0!==s.remainingAccounts&&a.push(...s.remainingAccounts),bw("debug-logs")&&console.log("Outgoing account metas:",a),new cs({keys:a,programId:r,data:e(t.name,Om(t,...o))})};return n.accounts=e=>Jb.accountsArray(e,t.accounts,r,t.name),n}static accountsArray(t,e,r,n){return t?e.map((e=>{if(void 0!==("accounts"in e?e.accounts:void 0)){const i=t[e.name];return Jb.accountsArray(i,e.accounts,r,n).flat()}{const i=e;let o;try{o=Rm(t[e.name])}catch(t){throw new Error(`Wrong input type for account "${e.name}" in the instruction accounts object${void 0!==n?' for instruction "'+n+'"':""}. Expected PublicKey or string.`)}const s=i.isOptional&&o.equals(r);return{pubkey:o,isWritable:i.isMut&&!s,isSigner:i.isSigner&&!s}}})).flat():[]}}class Xb{static build(t,e){return(...r)=>{var n,i,o;const[,s]=Yb(t,[...r]),a=new hs;if(s.preInstructions&&s.instructions)throw new Error("instructions is deprecated, use preInstructions");return null===(n=s.preInstructions)||void 0===n||n.forEach((t=>a.add(t))),null===(i=s.instructions)||void 0===i||i.forEach((t=>a.add(t))),a.add(e(...r)),null===(o=s.postInstructions)||void 0===o||o.forEach((t=>a.add(t))),a}}}class Qb{static build(t,e,r,n){return async(...i)=>{var o;const s=e(...i),[,a]=Yb(t,[...i]);if(void 0===n.sendAndConfirm)throw new Error("This function requires 'Provider.sendAndConfirm' to be implemented.");try{return await n.sendAndConfirm(s,null!==(o=a.signers)&&void 0!==o?o:[],a.options)}catch(t){throw Aw(t,r)}}}}class tv{static build(t,e,r,n){var i;const o={};return null===(i=t.accounts)||void 0===i||i.forEach((i=>{const s=vd(i.name);o[s]=new ev(t,i,r,n,e)})),o}}class ev{get size(){return this._size}get programId(){return this._programId}get provider(){return this._provider}get coder(){return this._coder}get idlAccount(){return this._idlAccount}constructor(t,e,r,n,i){this._idlAccount=e,this._programId=r,this._provider=null!=n?n:yw(),this._coder=null!=i?i:new Zw(t),this._size=this._coder.accounts.size(e)}async fetchNullable(t,e){const{data:r}=await this.fetchNullableAndContext(t,e);return r}async fetchNullableAndContext(t,e){const r=await this.getAccountInfoAndContext(t,e),{value:n,context:i}=r;return{data:n&&0!==n.data.length?this._coder.accounts.decode(this._idlAccount.name,n.data):null,context:i}}async fetch(t,e){const{data:r}=await this.fetchNullableAndContext(t,e);if(null===r)throw new Error(`Account does not exist or has no data ${t.toString()}`);return r}async fetchAndContext(t,e){const{data:r,context:n}=await this.fetchNullableAndContext(t,e);if(null===r)throw new Error(`Account does not exist ${t.toString()}`);return{data:r,context:n}}async fetchMultiple(t,e){return(await this.fetchMultipleAndContext(t,e)).map((t=>t?t.data:null))}async fetchMultipleAndContext(t,e){return(await rw(this._provider.connection,t.map((t=>Rm(t))),e)).map((t=>{if(null==t)return null;const{account:e,context:r}=t;return{data:this._coder.accounts.decode(this._idlAccount.name,e.data),context:r}}))}async all(t){const e=this.coder.accounts.memcmp(this._idlAccount.name,t instanceof Buffer?t:void 0),r=[];return null!=(null==e?void 0:e.offset)&&null!=(null==e?void 0:e.bytes)&&r.push({memcmp:{offset:e.offset,bytes:e.bytes}}),null!=(null==e?void 0:e.dataSize)&&r.push({dataSize:e.dataSize}),(await this._provider.connection.getProgramAccounts(this._programId,{commitment:this._provider.connection.commitment,filters:[...r,...Array.isArray(t)?t:[]]})).map((({pubkey:t,account:e})=>({publicKey:t,account:this._coder.accounts.decode(this._idlAccount.name,e.data)})))}subscribe(t,e){const r=rv.get(t.toString());if(r)return r.ee;const n=new vm;t=Rm(t);const i=this._provider.connection.onAccountChange(t,(t=>{const e=this._coder.accounts.decode(this._idlAccount.name,t.data);n.emit("change",e)}),e);return rv.set(t.toString(),{ee:n,listener:i}),n}async unsubscribe(t){let e=rv.get(t.toString());e?rv&&await this._provider.connection.removeAccountChangeListener(e.listener).then((()=>{rv.delete(t.toString())})).catch(console.error):console.warn("Address is not subscribed")}async createInstruction(t,e){const r=this.size;if(void 0===this._provider.publicKey)throw new Error("This function requires the Provider interface implementor to have a 'publicKey' field.");return Ts.createAccount({fromPubkey:this._provider.publicKey,newAccountPubkey:t.publicKey,space:null!=e?e:r,lamports:await this._provider.connection.getMinimumBalanceForRentExemption(null!=e?e:r),programId:this._programId})}async associated(...t){const e=await this.associatedAddress(...t);return await this.fetch(e)}async associatedAddress(...t){return await Cb(this._programId,...t)}async getAccountInfo(t,e){return await this._provider.connection.getAccountInfo(Rm(t),e)}async getAccountInfoAndContext(t,e){return await this._provider.connection.getAccountInfoAndContext(Rm(t),e)}}const rv=new Map,nv="Program log: ",iv="Program data: ";class ov{constructor(t,e,r){this._programId=t,this._provider=e,this._eventParser=new sv(t,r),this._eventCallbacks=new Map,this._eventListeners=new Map,this._listenerIdCount=0}addEventListener(t,e){var r;let n=this._listenerIdCount;return this._listenerIdCount+=1,this._eventListeners.has(t)||this._eventListeners.set(t,[]),this._eventListeners.set(t,(null!==(r=this._eventListeners.get(t))&&void 0!==r?r:[]).concat(n)),this._eventCallbacks.set(n,[t,e]),void 0!==this._onLogsSubscriptionId||(this._onLogsSubscriptionId=this._provider.connection.onLogs(this._programId,((t,e)=>{if(!t.err)for(const r of this._eventParser.parseLogs(t.logs)){const n=this._eventListeners.get(r.name);n&&n.forEach((n=>{const i=this._eventCallbacks.get(n);if(i){const[,n]=i;n(r.data,e.slot,t.signature)}}))}}))),n}async removeEventListener(t){const e=this._eventCallbacks.get(t);if(!e)throw new Error(`Event listener ${t} doesn't exist!`);const[r]=e;let n=this._eventListeners.get(r);if(!n)throw new Error(`Event listeners don't exist for ${r}!`);if(this._eventCallbacks.delete(t),n=n.filter((e=>e!==t)),this._eventListeners.set(r,n),0===n.length&&this._eventListeners.delete(r),0===this._eventCallbacks.size){if(0!==this._eventListeners.size)throw new Error(`Expected event listeners size to be 0 but got ${this._eventListeners.size}`);void 0!==this._onLogsSubscriptionId&&(await this._provider.connection.removeOnLogsListener(this._onLogsSubscriptionId),this._onLogsSubscriptionId=void 0)}}}class sv{constructor(t,e){this.coder=e,this.programId=t}*parseLogs(t,e=!1){const r=new uv(t),n=new av;let i=r.next();for(;null!==i;){let[t,o,s]=this.handleLog(n,i,e);t&&(yield t),o&&n.push(o),s&&n.pop(),i=r.next()}}handleLog(t,e,r){return t.stack.length>0&&t.program()===this.programId.toString()?this.handleProgramLog(e,r):[null,...this.handleSystemLog(e)]}handleProgramLog(t,e){if(t.startsWith(nv)||t.startsWith(iv)){const r=t.startsWith(nv)?t.slice(13):t.slice(14),n=this.coder.events.decode(r);if(e&&null===n)throw new Error(`Unable to decode event ${r}`);return[n,null,!1]}return[null,...this.handleSystemLog(t)]}handleSystemLog(t){const e=t.split(":")[0];return null!==e.match(/^Program (.*) success/g)?[null,!0]:e.startsWith(`Program ${this.programId.toString()} invoke`)?[this.programId.toString(),!1]:e.includes("invoke")?["cpi",!1]:[null,!1]}}class av{constructor(){this.stack=[]}program(){if(!this.stack.length)throw new Error("Expected the stack to have elements");return this.stack[this.stack.length-1]}push(t){this.stack.push(t)}pop(){if(!this.stack.length)throw new Error("Expected the stack to have elements");this.stack.pop()}}class uv{constructor(t){this.logs=t}next(){if(0===this.logs.length)return null;let t=this.logs[0];return this.logs=this.logs.slice(1),t}}class cv{static build(t,e,r,n,i,o,s){return async(...a)=>{var u;const c=e(...a),[,h]=Yb(t,[...a]);let l;if(void 0===n.simulate)throw new Error("This function requires 'Provider.simulate' to be implemented.");try{l=await n.simulate(c,h.signers,null===(u=h.options)||void 0===u?void 0:u.commitment)}catch(t){throw Aw(t,r)}if(void 0===l)throw new Error("Unable to simulate transaction");const f=l.logs;if(!f)throw new Error("Simulated logs not found");const d=[];if(s.events){let t=new sv(o,i);for(const e of t.parseLogs(f))d.push(e)}return{events:d,raw:f}}}}function hv(t){return new dv(bb(8),(t=>yv.fromBuffer(t)),(t=>t.toBuffer()),t)}function lv(t){return new dv(bb(32),(t=>new Wo(t)),(t=>t.toBuffer()),t)}function fv(t,e){return new pv(t,e)}class dv extends Xw{constructor(t,e,r,n){super(t.span,n),this.layout=t,this.decoder=e,this.encoder=r}decode(t,e){return this.decoder(this.layout.decode(t,e))}encode(t,e,r){return this.layout.encode(this.encoder(t),e,r)}getSpan(t,e){return this.layout.getSpan(t,e)}}class pv extends Xw{constructor(t,e){super(-1,e),this.layout=t,this.discriminator=yb()}encode(t,e,r=0){return null==t?this.layout.span+this.discriminator.encode(0,e,r):(this.discriminator.encode(1,e,r),this.layout.encode(t,e,r+4)+4)}decode(t,e=0){const r=this.discriminator.decode(t,e);if(0===r)return null;if(1===r)return this.layout.decode(t,e+4);throw new Error("Invalid coption "+this.layout.property)}getSpan(t,e=0){return this.layout.getSpan(t,e+4)+4}}class yv extends ne{toBuffer(){const t=super.toArray().reverse(),e=Buffer.from(t);if(8===e.length)return e;if(e.length>=8)throw new Error("u64 too large");const r=Buffer.alloc(8);return e.copy(r),r}static fromBuffer(t){if(8!==t.length)throw new Error(`Invalid buffer length: ${t.length}`);return new yv([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}const gv=mb([lv("mint"),lv("owner"),hv("amount"),fv(lv(),"delegate"),(t=>{const e=wb((t=>new eb(1,t))("discriminator"),null,"state");return e.addVariant(0,mb([]),"uninitialized"),e.addVariant(1,mb([]),"initialized"),e.addVariant(2,mb([]),"frozen"),e})(),fv(hv(),"isNative"),hv("delegatedAmount"),fv(lv(),"closeAuthority")]);class mv{constructor(t,e,r,n,i,o,s,a){this._accounts=e,this._provider=r,this._programId=n,this._idlIx=i,this._idlTypes=s,this._customResolver=a,this._args=t,this._accountStore=new wv(r,o,this._programId)}args(t){this._args=t}async resolve(){for(await this.resolveConst(this._idlIx.accounts),this._resolveEventCpi(this._idlIx.accounts);await this.resolvePdas(this._idlIx.accounts)+await this.resolveRelations(this._idlIx.accounts)+await this.resolveCustom()>0;);}async resolveCustom(){if(this._customResolver){const{accounts:t,resolved:e}=await this._customResolver({args:this._args,accounts:this._accounts,provider:this._provider,programId:this._programId,idlIx:this._idlIx});return this._accounts=t,e}return 0}resolveOptionalsHelper(t,e){const r={};for(const n of e){const e=n.name,i=t[e];void 0!==i&&(vv(i)?Zb(n)?r[e]=this.resolveOptionalsHelper(i,n.accounts):r[e]=_v(i,!0):null!==i?r[e]=Rm(i):n.isOptional&&(r[e]=this._programId))}return r}resolveOptionals(t){Object.assign(this._accounts,this.resolveOptionalsHelper(t,this._idlIx.accounts))}get(t){const e=t.reduce(((t,e)=>t&&t[e]),this._accounts);if(e&&e.toBase58)return e}set(t,e){let r=this._accounts;t.forEach(((n,i)=>{i==t.length-1&&(r[n]=e),r[n]=r[n]||{},r=r[n]}))}async resolveConst(t,e=[]){for(let r=0;r<t.length;r+=1){const n=t[r],i=n.accounts;i&&await this.resolveConst(i,[...e,vd(n.name)]);const o=n,s=vd(n.name);if(o.isSigner&&!this.get([...e,s])){if(void 0===this._provider.wallet)throw new Error("This function requires the Provider interface implementor to have a 'wallet' field.");this.set([...e,s],this._provider.wallet.publicKey)}Reflect.has(mv.CONST_ACCOUNTS,s)&&!this.get([...e,s])&&this.set([...e,s],mv.CONST_ACCOUNTS[s])}}_resolveEventCpi(t,e=[]){for(const r in t){const n=t[r],i=n.accounts;i&&this._resolveEventCpi(i,[...e,vd(n.name)]);const o=+r+1;if(o===t.length)return;const s=vd(t[r].name),a=vd(t[o].name);if("eventAuthority"===s&&"program"===a){const t=[...e,s],r=[...e,a];return this.get(t)||this.set(t,Wo.findProgramAddressSync([Buffer.from("__event_authority")],this._programId)[0]),void(this.get(r)||this.set(r,this._programId))}}}async resolvePdas(t,e=[]){let r=0;for(let n=0;n<t.length;n+=1){const i=t[n],o=i.accounts;o&&(r+=await this.resolvePdas(o,[...e,vd(i.name)]));const s=i,a=vd(i.name);s.pda&&s.pda.seeds.length>0&&!this.get([...e,a])&&Boolean(await this.autoPopulatePda(s,e))&&(r+=1)}return r}async resolveRelations(t,e=[]){let r=0;for(let n=0;n<t.length;n+=1){const i=t[n],o=i.accounts;o&&(r+=await this.resolveRelations(o,[...e,vd(i.name)]));const s=i.relations||[],a=vd(i.name),u=[...e,a],c=this.get(u);if(c){const t=s.filter((t=>!this.get([...e,vd(t)])));if(r+=t.length,t.length>0){const r=await this._accountStore.fetchAccount({publicKey:c});await Promise.all(t.map((async t=>{const n=vd(t);return this.set([...e,n],r[n]),r[n]})))}}}return r}async autoPopulatePda(t,e=[]){if(!t.pda||!t.pda.seeds)throw new Error("Must have seeds");const r=await Promise.all(t.pda.seeds.map((t=>this.toBuffer(t,e))));if(r.some((t=>void 0===t)))return;const n=await this.parseProgramId(t,e);if(!n)return;const[i]=await Wo.findProgramAddress(r,n);this.set([...e,vd(t.name)],i)}async parseProgramId(t,e=[]){var r;if(!(null===(r=t.pda)||void 0===r?void 0:r.programId))return this._programId;switch(t.pda.programId.kind){case"const":return new Wo(this.toBufferConst(t.pda.programId.value));case"arg":return this.argValue(t.pda.programId);case"account":return await this.accountValue(t.pda.programId,e);default:throw new Error(`Unexpected program seed kind: ${t.pda.programId.kind}`)}}async toBuffer(t,e=[]){switch(t.kind){case"const":return this.toBufferConst(t);case"arg":return await this.toBufferArg(t);case"account":return await this.toBufferAccount(t,e);default:throw new Error(`Unexpected seed kind: ${t.kind}`)}}getType(t,e=[]){if(e.length>0&&t.defined){const r=this._idlTypes.find((e=>e.name===t.defined));if(!r)throw new Error(`Cannot find type ${t.defined}`);const n=r.type.fields.find((t=>t.name===e[0]));return this.getType(n.type,e.slice(1))}return t}toBufferConst(t){return this.toBufferValue(this.getType(t.type,(t.path||"").split(".").slice(1)),t.value)}async toBufferArg(t){const e=this.argValue(t);if(void 0!==e)return this.toBufferValue(this.getType(t.type,(t.path||"").split(".").slice(1)),e)}argValue(t){const e=t.path.split("."),r=vd(e[0]),n=this._idlIx.args.findIndex((t=>t.name===r));if(-1===n)throw new Error(`Unable to find argument for seed: ${r}`);return e.slice(1).reduce(((t,e)=>(t||{})[e]),this._args[n])}async toBufferAccount(t,e=[]){const r=await this.accountValue(t,e);if(r)return this.toBufferValue(t.type,r)}async accountValue(t,e=[]){const r=t.path.split("."),n=r[0],i=this.get([...e,vd(n)]);if(null===i)throw new Error("fieldPubkey is null");if(1===r.length)return i;const o=await this._accountStore.fetchAccount({publicKey:i,name:t.account});return this.parseAccountValue(o,r.slice(1))}parseAccountValue(t,e){let r;for(;e.length>0;)r=t[vd(e[0])],e=e.slice(1);return r}toBufferValue(t,e){switch(t){case"u8":return Buffer.from([e]);case"u16":let r=Buffer.alloc(2);return r.writeUInt16LE(e),r;case"u32":let n=Buffer.alloc(4);return n.writeUInt32LE(e),n;case"u64":let i=Buffer.alloc(8);return i.writeBigUInt64LE(BigInt(e)),i;case"string":return Buffer.from(Sm(e));case"publicKey":return e.toBuffer();default:if(t.array)return Buffer.from(e);throw new Error(`Unexpected seed type: ${t}`)}}}mv.CONST_ACCOUNTS={associatedTokenProgram:Db,rent:ms,systemProgram:Ts.programId,tokenProgram:zb,clock:ds};class wv{constructor(t,e,r){this._provider=t,this._programId=r,this._cache=new Map,this._idls={},this._idls[r.toBase58()]=e}async ensureIdl(t){if(!this._idls[t.toBase58()]){const e=await Av.fetchIdl(t,this._provider);if(e){const r=new Av(e,t,this._provider);this._idls[t.toBase58()]=r.account}}return this._idls[t.toBase58()]}async fetchAccount({publicKey:t,name:e,programId:r=this._programId}){const n=t.toString();if(!this._cache.has(n))if("TokenAccount"===e){const e=await this._provider.connection.getAccountInfo(t);if(null===e)throw new Error(`invalid account info for ${n}`);const r=function(t){return gv.decode(t)}(e.data);this._cache.set(n,r)}else if(e){const i=await this.ensureIdl(r);if(i){const r=i[vd(e)];if(r){const e=await r.fetch(t);this._cache.set(n,e)}}}else{const e=await this._provider.connection.getAccountInfo(t);if(null===e)throw new Error(`invalid account info for ${n}`);const r=e.data,i=await this.ensureIdl(e.owner);if(i){const t=Object.values(i)[0];if(!t)throw new Error("No accounts for this program");const e=t.coder.accounts.decodeAny(r);this._cache.set(n,e)}}return this._cache.get(n)}}class bv{static build(t,e,r,n,i,o,s,a,u,c,h){return(...l)=>new kv(l,n,i,o,s,a,t,e,r,u,c,h)}}function vv(t){return"object"==typeof t&&null!==t&&!("_bn"in t)}function _v(t,e){const r={};for(const n in t){const i=t[n];if(null!==i)r[n]=vv(i)?_v(i,!0):Rm(i);else if(e)throw new Error("Failed to resolve optionals due to IDL type mismatch with input accounts!")}return r}class kv{constructor(t,e,r,n,i,o,s,a,u,c,h,l){this._ixFn=e,this._txFn=r,this._rpcFn=n,this._simulateFn=i,this._viewFn=o,this._programId=a,this._accounts={},this._remainingAccounts=[],this._signers=[],this._preInstructions=[],this._postInstructions=[],this._autoResolveAccounts=!0,this._args=t,this._accountsResolver=new mv(t,this._accounts,s,a,u,c,h,l)}args(t){this._args=t,this._accountsResolver.args(t)}async pubkeys(){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._accounts}accounts(t){return this._autoResolveAccounts=!0,this._accountsResolver.resolveOptionals(t),this}accountsStrict(t){return this._autoResolveAccounts=!1,this._accountsResolver.resolveOptionals(t),this}signers(t){return this._signers=this._signers.concat(t),this}remainingAccounts(t){return this._remainingAccounts=this._remainingAccounts.concat(t),this}preInstructions(t){return this._preInstructions=this._preInstructions.concat(t),this}postInstructions(t){return this._postInstructions=this._postInstructions.concat(t),this}async rpc(t){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._rpcFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions,options:t})}async rpcAndKeys(t){return{pubkeys:await this.pubkeys(),signature:await this.rpc(t)}}async view(t){if(this._autoResolveAccounts&&await this._accountsResolver.resolve(),!this._viewFn)throw new Error("Method does not support views");return this._viewFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions,options:t})}async simulate(t){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._simulateFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions,options:t})}async instruction(){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._ixFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions})}async prepare(){return{instruction:await this.instruction(),pubkeys:await this.pubkeys(),signers:await this._signers}}async transaction(){return this._autoResolveAccounts&&await this._accountsResolver.resolve(),this._txFn(...this._args,{accounts:this._accounts,signers:this._signers,remainingAccounts:this._remainingAccounts,preInstructions:this._preInstructions,postInstructions:this._postInstructions})}}class Ev{static build(t,e,r,n){const i=e.accounts.find((t=>t.isMut)),o=!!e.returns;if(i||!o)return;return async(...i)=>{var o,s;let a=await r(...i);const u=`Program return: ${t} `;let c=a.raw.find((t=>t.startsWith(u)));if(!c)throw new Error("View expected return log");let h=Bm(c.slice(u.length)),l=e.returns;if(!l)throw new Error("View expected return type");return Uw.fieldLayout({type:l},Array.from([...null!==(o=n.accounts)&&void 0!==o?o:[],...null!==(s=n.types)&&void 0!==s?s:[]])).decode(h)}}}class Sv{static build(t,e,r,n,i){const o={},s={},a={},u={},c={},h={},l=Lm(t),f=t.accounts?tv.build(t,e,r,n):{};return t.instructions.forEach((d=>{const p=Jb.build(d,((t,r)=>e.instruction.encode(t,r)),r),y=Xb.build(d,p),g=Qb.build(d,y,l,n),m=cv.build(d,y,l,n,e,r,t),w=Ev.build(r,d,m,t),b=bv.build(n,r,d,p,y,g,m,w,f,t.types||[],i&&i(d)),v=vd(d.name);s[v]=p,a[v]=y,o[v]=g,u[v]=m,c[v]=b,w&&(h[v]=w)})),[o,s,a,f,u,c,h]}}class Av{get programId(){return this._programId}get idl(){return this._idl}get coder(){return this._coder}get provider(){return this._provider}constructor(t,e,r,n,i){e=Rm(e),r||(r=yw()),this._idl=t,this._provider=r,this._programId=e,this._coder=null!=n?n:new Zw(t),this._events=new ov(this._programId,r,this._coder);const[o,s,a,u,c,h,l]=Sv.build(t,this._coder,e,r,null!=i?i:()=>{});this.rpc=o,this.instruction=s,this.transaction=a,this.account=u,this.simulate=c,this.methods=h,this.views=l}static async at(t,e){const r=Rm(t),n=await Av.fetchIdl(r,e);if(!n)throw new Error(`IDL not found for program: ${t.toString()}`);return new Av(n,r,e)}static async fetchIdl(t,e){e=null!=e?e:yw();const r=Rm(t),n=await async function(t){const e=(await Wo.findProgramAddress([],t))[0];return await Wo.createWithSeed(e,"anchor:idl",t)}(r),i=await e.connection.getAccountInfo(n);if(!i)return null;let o=function(t){return Gb.decode(t)}(i.data.slice(8));const s=bm(o.data);return JSON.parse(Em(s))}addEventListener(t,e){return this._events.addEventListener(t,e)}async removeEventListener(t){return await this._events.removeEventListener(t)}}const xv=new Wo("11111111111111111111111111111111");function Iv(t){return new Av(Bv,xv,t,new Rb(Bv))}const Bv={version:"0.1.0",name:"system_program",instructions:[{name:"createAccount",accounts:[{name:"from",isMut:!0,isSigner:!0},{name:"to",isMut:!0,isSigner:!0}],args:[{name:"lamports",type:"u64"},{name:"space",type:"u64"},{name:"owner",type:"publicKey"}]},{name:"assign",accounts:[{name:"pubkey",isMut:!0,isSigner:!0}],args:[{name:"owner",type:"publicKey"}]},{name:"transfer",accounts:[{name:"from",isMut:!0,isSigner:!0},{name:"to",isMut:!0,isSigner:!1}],args:[{name:"lamports",type:"u64"}]},{name:"createAccountWithSeed",accounts:[{name:"from",isMut:!0,isSigner:!0},{name:"to",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0}],args:[{name:"base",type:"publicKey"},{name:"seed",type:"string"},{name:"lamports",type:"u64"},{name:"space",type:"u64"},{name:"owner",type:"publicKey"}]},{name:"advanceNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!1},{name:"recentBlockhashes",isMut:!1,isSigner:!1},{name:"authorized",isMut:!1,isSigner:!0}],args:[{name:"authorized",type:"publicKey"}]},{name:"withdrawNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!1},{name:"to",isMut:!0,isSigner:!1},{name:"recentBlockhashes",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"authorized",isMut:!1,isSigner:!0}],args:[{name:"lamports",type:"u64"}]},{name:"initializeNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!0},{name:"recentBlockhashes",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1}],args:[{name:"authorized",type:"publicKey"}]},{name:"authorizeNonceAccount",accounts:[{name:"nonce",isMut:!0,isSigner:!1},{name:"authorized",isMut:!1,isSigner:!0}],args:[{name:"authorized",type:"publicKey"}]},{name:"allocate",accounts:[{name:"pubkey",isMut:!0,isSigner:!0}],args:[{name:"space",type:"u64"}]},{name:"allocateWithSeed",accounts:[{name:"account",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0}],args:[{name:"base",type:"publicKey"},{name:"seed",type:"string"},{name:"space",type:"u64"},{name:"owner",type:"publicKey"}]},{name:"assignWithSeed",accounts:[{name:"account",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0}],args:[{name:"base",type:"publicKey"},{name:"seed",type:"string"},{name:"owner",type:"publicKey"}]},{name:"transferWithSeed",accounts:[{name:"from",isMut:!0,isSigner:!1},{name:"base",isMut:!1,isSigner:!0},{name:"to",isMut:!0,isSigner:!1}],args:[{name:"lamports",type:"u64"},{name:"seed",type:"string"},{name:"owner",type:"publicKey"}]}],accounts:[{name:"nonce",type:{kind:"struct",fields:[{name:"version",type:"u32"},{name:"state",type:"u32"},{name:"authorizedPubkey",type:"publicKey"},{name:"nonce",type:"publicKey"},{name:"feeCalculator",type:{defined:"FeeCalculator"}}]}}],types:[{name:"FeeCalculator",type:{kind:"struct",fields:[{name:"lamportsPerSignature",type:"u64"}]}}]};var Mv,Pv=r(Object.freeze({__proto__:null,web3:pc,AccountClient:ev,AnchorError:Ew,AnchorProvider:lw,BorshAccountsCoder:qw,BorshCoder:Zw,BorshEventCoder:Vw,BorshInstructionCoder:Nw,DISCRIMINATOR_SIZE:Fw,EventManager:ov,EventParser:sv,IdlError:_w,LangErrorCode:xw,LangErrorMessage:Iw,MethodsBuilderFactory:bv,Native:class{static system(t){return Iv(t)}},Program:Av,ProgramError:Sw,ProgramErrorStack:kw,SystemCoder:Rb,eventDiscriminator:Hw,getProvider:yw,parseIdlErrors:Lm,setProvider:function(t){gw=t},splitArgsAndCtx:Yb,toInstruction:Om,translateAddress:Rm,translateError:Aw,utils:$b,validateAccounts:Tm,BN:ne})),Lv={},Ov={};var Tv,Rv={};function Uv(){if(Tv)return Rv;Tv=1;var e=t&&t.__awaiter||function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function s(t){try{u(n.next(t))}catch(t){o(t)}}function a(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){t.done?i(t.value):function(t){return t instanceof r?t:new r((function(e){e(t)}))}(t.value).then(s,a)}u((n=n.apply(t,e||[])).next())}))},r=t&&t.__generator||function(t,e){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}};Object.defineProperty(Rv,"__esModule",{value:!0}),Rv.PythOracleAccountCoder=void 0;var n=function(){function t(t){this.idl=t}return t.prototype.encode=function(t,n){return e(this,void 0,void 0,(function(){return r(this,(function(t){throw new Error("Not implemented")}))}))},t.prototype.decode=function(t,e){throw new Error("Not implemented")},t.prototype.decodeUnchecked=function(t,e){throw new Error("Not implemented")},t.prototype.memcmp=function(t,e){throw new Error("Not implemented")},t.prototype.size=function(t){return 0},t}();return Rv.PythOracleAccountCoder=n,Rv}var Cv={};var Nv=function(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r<e.length;r++)e[r]=255;for(var n=0;n<t.length;n++){var i=t.charAt(n),o=i.charCodeAt(0);if(255!==e[o])throw new TypeError(i+" is ambiguous");e[o]=n}var s=t.length,a=t.charAt(0),u=Math.log(s)/Math.log(256),c=Math.log(256)/Math.log(s);function h(t){if("string"!=typeof t)throw new TypeError("Expected String");if(0===t.length)return new Uint8Array;for(var r=0,n=0,i=0;t[r]===a;)n++,r++;for(var o=(t.length-r)*u+1>>>0,c=new Uint8Array(o);t[r];){var h=e[t.charCodeAt(r)];if(255===h)return;for(var l=0,f=o-1;(0!==h||l<i)&&-1!==f;f--,l++)h+=s*c[f]>>>0,c[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");i=l,r++}for(var d=o-i;d!==o&&0===c[d];)d++;for(var p=new Uint8Array(n+(o-d)),y=n;d!==o;)p[y++]=c[d++];return p}return{encode:function(e){if(e instanceof Uint8Array||(ArrayBuffer.isView(e)?e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength):Array.isArray(e)&&(e=Uint8Array.from(e))),!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===e.length)return"";for(var r=0,n=0,i=0,o=e.length;i!==o&&0===e[i];)i++,r++;for(var u=(o-i)*c+1>>>0,h=new Uint8Array(u);i!==o;){for(var l=e[i],f=0,d=u-1;(0!==l||f<n)&&-1!==d;d--,f++)l+=256*h[d]>>>0,h[d]=l%s>>>0,l=l/s>>>0;if(0!==l)throw new Error("Non-zero carry");n=f,i++}for(var p=u-n;p!==u&&0===h[p];)p++;for(var y=a.repeat(r);p<u;++p)y+=t.charAt(h[p]);return y},decodeUnsafe:h,decode:function(t){var e=h(t);if(e)return e;throw new Error("Non-base"+s+" character")}}};var zv,Dv,jv=Nv("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),Wv=e(jv),Fv={};function Kv(){if(Dv)return Cv;Dv=1;var e=t&&t.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),r=t&&t.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),i=t&&t.__importStar||function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var i in t)"default"!==i&&Object.prototype.hasOwnProperty.call(t,i)&&e(n,t,i);return r(n,t),n},o=t&&t.__spreadArray||function(t,e){for(var r=0,n=e.length,i=t.length;r<n;r++,i++)t[i]=e[r];return t},s=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Cv,"__esModule",{value:!0}),Cv.PythOracleInstructionCoder=void 0;var a=s(jv),u=n,c=s(bd()),h=i(_d),l=function(){if(zv)return Fv;zv=1;var e=t&&t.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),r=t&&t.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),n=t&&t.__importStar||function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var i in t)"default"!==i&&Object.prototype.hasOwnProperty.call(t,i)&&e(n,t,i);return r(n,t),n},i=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fv,"__esModule",{value:!0}),Fv.IdlCoder=void 0;var o=i(bd()),s=n(_d),a=Pv,u=function(){function t(){}return t.fieldLayout=function(e,r){var n=void 0!==e.name?o.default(e.name):void 0;switch(e.type){case"bool":return s.bool(n);case"u8":return s.u8(n);case"i8":return s.i8(n);case"u16":return s.u16(n);case"i16":return s.i16(n);case"u32":return s.u32(n);case"i32":return s.i32(n);case"f32":return s.f32(n);case"u64":return s.u64(n);case"i64":return s.i64(n);case"f64":return s.f64(n);case"u128":return s.u128(n);case"i128":return s.i128(n);case"u256":return s.u256(n);case"i256":return s.i256(n);case"bytes":return s.vecU8(n);case"string":return s.str(n);case"publicKey":return s.publicKey(n);default:if("vec"in e.type)return s.vec(t.fieldLayout({name:void 0,type:e.type.vec},r),n);if("option"in e.type)return s.option(t.fieldLayout({name:void 0,type:e.type.option},r),n);if("defined"in e.type){var i=e.type.defined;if(void 0===r)throw new a.IdlError("User defined types not provided");var u=r.filter((function(t){return t.name===i}));if(1!==u.length)throw new a.IdlError("Type not found: "+JSON.stringify(e));return t.typeDefLayout(u[0],r,n)}if("array"in e.type){var c=e.type.array[0],h=e.type.array[1],l=t.fieldLayout({name:void 0,type:c},r);return s.array(l,h,n)}throw new Error("Not yet implemented: "+e)}},t.typeDefLayout=function(e,r,n){if(void 0===r&&(r=[]),"struct"===e.type.kind){var i=e.type.fields.map((function(e){return t.fieldLayout(e,r)}));return s.struct(i,n)}if("enum"===e.type.kind){var a=e.type.variants.map((function(e){var n=o.default(e.name);if(void 0===e.fields)return s.struct([],n);var i=e.fields.map((function(e,n){return e.hasOwnProperty("name")?t.fieldLayout(e,r):t.fieldLayout({type:e,name:n.toString()},r)}));return s.struct(i,n)}));return void 0!==n?s.rustEnum(a).replicate(n):s.rustEnum(a,n)}throw new Error("Unknown type kint: "+e)},t}();return Fv.IdlCoder=u,Fv}(),f=function(){function t(e){var r=this;this.idl=e,this.ixLayout=t.parseIxLayout(e);var n=new Map,i=new Map;e.instructions.forEach((function(t){var e,o=t;if(!o.discriminant)throw new Error("All instructions must have a discriminator");if(n.set(a.default.encode(u.Buffer.from(o.discriminant.value)),{layout:r.ixLayout.get(o.name),name:o.name}),i.set(o.name,u.Buffer.from(o.discriminant.value)),e=o.discriminant.value.length,r.discriminatorLength&&r.discriminatorLength!==e)throw new Error("All instructions must have the same discriminator length");r.discriminatorLength=e})),this.discriminatorLayouts=n,this.ixDiscriminator=i}return t.prototype.encodeState=function(t,e){return this.encode(t,e)},t.prototype.encode=function(t,e){var r=u.Buffer.alloc(1e3),n=c.default(t),i=this.ixLayout.get(n),o=this.ixDiscriminator.get(n);if(!i||!o)throw new Error("Unknown method: "+n);if("updProduct"===n||"addProduct"===n){for(var s=0,a=0,h=Object.keys(e.productMetadata);a<h.length;a++){var l=h[a];s+=r.subarray(s).writeInt8(l.length),s+=r.subarray(s).write(l),s+=r.subarray(s).writeInt8(e.productMetadata[l].length),s+=r.subarray(s).write(e.productMetadata[l])}if(s>464)throw new Error("The metadata is too long");var f=r.subarray(0,s);return u.Buffer.concat([o,f])}var d=i.encode(e,r);f=r.subarray(0,d);return u.Buffer.concat([o,f])},t.parseIxLayout=function(t){var e=t.instructions.map((function(e){var r=e.args.map((function(e){var r,n;return l.IdlCoder.fieldLayout(e,Array.from(o(o([],null!==(r=t.accounts)&&void 0!==r?r:[]),null!==(n=t.types)&&void 0!==n?n:[])))})),n=c.default(e.name);return[n,h.struct(r,n)]}));return new Map(e)},t.prototype.decode=function(t,e){void 0===e&&(e="hex"),"string"==typeof t&&(t="hex"===e?u.Buffer.from(t,"hex"):u.Buffer.from(a.default.decode(t)));var r=a.default.encode(t.subarray(0,this.discriminatorLength)),n=t.subarray(this.discriminatorLength),i=this.discriminatorLayouts.get(r);if(!i)return null;if("updProduct"===i.name||"addProduct"===i.name){for(var o={},s=0;s<n.length;){var c=n[s];if(s++,c){var h=n.slice(s,s+c).toString(),l=n[s+=c];s++;var f=n.slice(s,s+l).toString();s+=l,o[h]=f}}return{data:o,name:i.name}}return{data:i.layout.decode(n),name:i.name}},t}();return Cv.PythOracleInstructionCoder=f,Cv}var qv,Vv={};var Hv,$v,Zv={};function Gv(){if($v)return Lv;$v=1,Object.defineProperty(Lv,"__esModule",{value:!0}),Lv.PythOracleCoder=void 0;var t=function(){if(Mv)return Ov;Mv=1,Object.defineProperty(Ov,"__esModule",{value:!0}),Ov.PythOracleEventCoder=void 0;var t=function(){function t(){}return t.prototype.decode=function(t){throw new Error("Pyth oracle program does not have events")},t}();return Ov.PythOracleEventCoder=t,Ov}(),e=Uv(),r=Kv(),n=function(){if(qv)return Vv;qv=1,Object.defineProperty(Vv,"__esModule",{value:!0}),Vv.PythOracleStateCoder=void 0;var t=function(){function t(){}return t.prototype.encode=function(t,e){throw new Error("Not implemented")},t.prototype.decode=function(t){throw new Error("Not implemented")},t}();return Vv.PythOracleStateCoder=t,Vv}(),i=function(){if(Hv)return Zv;Hv=1,Object.defineProperty(Zv,"__esModule",{value:!0}),Zv.PythOracleTypesCoder=void 0;var t=function(){function t(){}return t.prototype.encode=function(t,e){throw new Error("Not implemented")},t.prototype.decode=function(t,e){throw new Error("Not implemented")},t}();return Zv.PythOracleTypesCoder=t,Zv}(),o=function(o){this.accounts=new e.PythOracleAccountCoder(o),this.events=new t.PythOracleEventCoder,this.instruction=new r.PythOracleInstructionCoder(o),this.state=new n.PythOracleStateCoder,this.types=new i.PythOracleTypesCoder};return Lv.PythOracleCoder=o,Lv}var Yv,Jv,Xv,Qv={version:"2.20.0",name:"pyth_oracle",instructions:[{name:"initMapping",discriminant:{value:[2,0,0,0,0,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"freshMappingAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"addMapping",discriminant:{value:[2,0,0,0,1,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"curMapping",isMut:!0,isSigner:!1},{name:"nextMapping",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"addProduct",discriminant:{value:[2,0,0,0,2,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"tailMappingAccount",isMut:!0,isSigner:!1},{name:"productAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"productMetadata",type:{defined:"ProductMetadata"}}]},{name:"updProduct",discriminant:{value:[2,0,0,0,3,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"productAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"productMetadata",type:{defined:"ProductMetadata"}}]},{name:"addPrice",discriminant:{value:[2,0,0,0,4,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"productAccount",isMut:!0,isSigner:!1},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"expo",type:"i32"},{name:"pType",type:"u32"}]},{name:"addPublisher",discriminant:{value:[2,0,0,0,5,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"pub",type:"publicKey"}]},{name:"delPublisher",discriminant:{value:[2,0,0,0,6,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"pub",type:"publicKey"}]},{name:"updPrice",discriminant:{value:[2,0,0,0,7,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1}],args:[{name:"status",type:"u32"},{name:"unused",type:"u32"},{name:"price",type:"i64"},{name:"conf",type:"u64"},{name:"pubSlot",type:"u64"}]},{name:"aggPrice",discriminant:{value:[2,0,0,0,8,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1}],args:[{name:"status",type:"u32"},{name:"unused",type:"u32"},{name:"price",type:"i64"},{name:"conf",type:"u64"},{name:"pubSlot",type:"u64"}]},{name:"setExponent",discriminant:{value:[2,0,0,0,9,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"expo",type:"i32"},{name:"pType",type:"u32"}]},{name:"setMinPub",discriminant:{value:[2,0,0,0,12,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[{name:"minPub",type:"u8"},{name:"unused",type:{array:["u8",3]}}]},{name:"updPriceNoFailOnError",discriminant:{value:[2,0,0,0,13,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1}],args:[{name:"status",type:"u32"},{name:"unused",type:"u32"},{name:"price",type:"i64"},{name:"conf",type:"u64"},{name:"pubSlot",type:"u64"}]},{name:"delPrice",discriminant:{value:[2,0,0,0,15,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"productAccount",isMut:!0,isSigner:!1},{name:"priceAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"delProduct",discriminant:{value:[2,0,0,0,16,0,0,0]},accounts:[{name:"fundingAccount",isMut:!0,isSigner:!0},{name:"mappingAccount",isMut:!0,isSigner:!1},{name:"productAccount",isMut:!0,isSigner:!1},{name:"permissionsAccount",isMut:!1,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}}],args:[]},{name:"updPermissions",discriminant:{value:[2,0,0,0,17,0,0,0]},accounts:[{name:"upgradeAuthority",isMut:!0,isSigner:!0},{name:"programDataAccount",isMut:!1,isSigner:!1},{name:"permissionsAccount",isMut:!0,isSigner:!1,pda:{seeds:[{kind:"const",type:"string",value:"permissions"}]}},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"masterAuthority",type:"publicKey"},{name:"dataCurationAuthority",type:"publicKey"},{name:"securityAuthority",type:"publicKey"}]}],types:[{name:"ProductMetadata",type:{kind:"struct",fields:[]}}]};function t_(){return Jv||(Jv=1,function(e){var r=t&&t.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),n=t&&t.__exportStar||function(t,e){for(var n in t)"default"===n||Object.prototype.hasOwnProperty.call(e,n)||r(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),n((Yv||(Yv=1,function(e){var r=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.pythIdl=e.pythOracleCoder=e.pythOracleProgram=void 0;var n=Pv,i=Gv(),o=r(Qv);e.pythOracleProgram=function(t,e){return new n.Program(o.default,t,e,new i.PythOracleCoder(o.default))},e.pythOracleCoder=function(){return new i.PythOracleCoder(o.default)};var s=Qv;Object.defineProperty(e,"pythIdl",{enumerable:!0,get:function(){return r(s).default}})}(gd)),gd),e)}(yd)),yd}function e_(){return Xv||(Xv=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.pythIdl=t.pythOracleCoder=t.pythOracleProgram=t.getPythClusterApiUrl=t.getPythProgramKeyForCluster=t.PythHttpClient=t.PythConnection=t.parsePermissionData=t.parsePriceData=t.parseProductData=t.parseMappingData=t.parseBaseData=t.AccountType=t.DeriveType=t.PriceType=t.CorpAction=t.PriceStatus=t.MAX_SLOT_DIFFERENCE=t.Version=t.Version2=t.Magic=void 0;var e,r,i,o,s=Qf,a=n,u=td;t.Magic=2712847316,t.Version2=2,t.Version=t.Version2,t.MAX_SLOT_DIFFERENCE=25,function(t){t[t.Unknown=0]="Unknown",t[t.Trading=1]="Trading",t[t.Halted=2]="Halted",t[t.Auction=3]="Auction",t[t.Ignored=4]="Ignored"}(e=t.PriceStatus||(t.PriceStatus={})),(r=t.CorpAction||(t.CorpAction={}))[r.NoCorpAct=0]="NoCorpAct",(i=t.PriceType||(t.PriceType={}))[i.Unknown=0]="Unknown",i[i.Price=1]="Price",(o=t.DeriveType||(t.DeriveType={}))[o.Unknown=0]="Unknown",o[o.Volatility=1]="Volatility",function(t){t[t.Unknown=0]="Unknown",t[t.Mapping=1]="Mapping",t[t.Product=2]="Product",t[t.Price=3]="Price",t[t.Test=4]="Test",t[t.Permission=5]="Permission"}(t.AccountType||(t.AccountType={}));var c=a.Buffer.alloc(32),h=function(t){return t.equals(c)?null:new s.PublicKey(t)};t.parseBaseData=function(e){if(!(e.byteLength<4)){var r=e.readUInt32LE(0);return r===t.Magic?{magic:r,version:e.readUInt32LE(4),type:e.readUInt32LE(8),size:e.readUInt32LE(12)}:void 0}};t.parseMappingData=function(t){for(var e=t.readUInt32LE(0),r=t.readUInt32LE(4),n=t.readUInt32LE(8),i=t.readUInt32LE(12),o=t.readUInt32LE(16),a=h(t.slice(24,56)),u=56,c=[],l=0;l<o;l++){var f=t.slice(u,u+32),d=new s.PublicKey(f);u+=32,c.push(d)}return{magic:e,version:r,type:n,size:i,nextMappingAccount:a,productAccountKeys:c}};t.parseProductData=function(t){var e=t.readUInt32LE(0),r=t.readUInt32LE(4),n=t.readUInt32LE(8),i=t.readUInt32LE(12),o=t.slice(16,48),s=h(o),a={};s&&(a.price_account=s.toBase58());for(var u=48;u<i;){var c=t[u];if(u++,c){var l=t.slice(u,u+c).toString(),f=t[u+=c];u++;var d=t.slice(u,u+f).toString();u+=f,a[l]=d}}return{magic:e,version:r,type:n,size:i,priceAccountKey:s,product:a}};var l=function(t,e){var r=u.readBigInt64LE(t,0);return{valueComponent:r,value:Number(r)*Math.pow(10,e),numerator:u.readBigInt64LE(t,8),denominator:u.readBigInt64LE(t,16)}},f=function(t,e){var r=u.readBigInt64LE(t,0),n=Number(r)*Math.pow(10,e),i=u.readBigUInt64LE(t,8);return{priceComponent:r,price:n,confidenceComponent:i,confidence:Number(i)*Math.pow(10,e),status:t.readUInt32LE(16),corporateAction:t.readUInt32LE(20),publishSlot:Number(u.readBigUInt64LE(t,24))}};t.parsePriceData=function(r,n){var i,o,a=r.readUInt32LE(0),c=r.readUInt32LE(4),d=r.readUInt32LE(8),p=r.readUInt32LE(12),y=r.readUInt32LE(16),g=r.readInt32LE(20),m=r.readUInt32LE(24),w=r.readUInt32LE(28),b=u.readBigUInt64LE(r,32),v=u.readBigUInt64LE(r,40),_=l(r.slice(48,72),g),k=l(r.slice(72,96),g),E=u.readBigInt64LE(r,96),S=r.readUInt8(104),A=r.readInt8(105),x=r.readInt16LE(106),I=r.readInt32LE(108),B=new s.PublicKey(r.slice(112,144)),M=h(r.slice(144,176)),P=u.readBigUInt64LE(r,176),L=u.readBigInt64LE(r,184),O=Number(L)*Math.pow(10,g),T=u.readBigUInt64LE(r,192),R=Number(T)*Math.pow(10,g),U=u.readBigInt64LE(r,200),C=f(r.slice(208,240),g),N=C.status;n&&N===e.Trading&&n-C.publishSlot>t.MAX_SLOT_DIFFERENCE&&(N=e.Unknown),N===e.Trading&&(i=C.price,o=C.confidence);for(var z=[],D=240;z.length<m;){var j=new s.PublicKey(r.slice(D,D+32));D+=32;var W=f(r.slice(D,D+32),g);D+=32;var F=f(r.slice(D,D+32),g);D+=32,z.push({publisher:j,aggregate:W,latest:F})}return{magic:a,version:c,type:d,size:p,priceType:y,exponent:g,numComponentPrices:m,numQuoters:w,lastSlot:b,validSlot:v,emaPrice:_,emaConfidence:k,timestamp:E,minPublishers:S,drv2:A,drv3:x,drv4:I,productAccountKey:B,nextPriceAccountKey:M,previousSlot:P,previousPriceComponent:L,previousPrice:O,previousConfidenceComponent:T,previousConfidence:R,previousTimestamp:U,aggregate:C,priceComponents:z,price:i,confidence:o,status:N}};t.parsePermissionData=function(t){return{magic:t.readUInt32LE(0),version:t.readUInt32LE(4),type:t.readUInt32LE(8),size:t.readUInt32LE(12),masterAuthority:new s.PublicKey(t.slice(16,48)),dataCurationAuthority:new s.PublicKey(t.slice(48,80)),securityAuthority:new s.PublicKey(t.slice(80,112))}};var d=ud();Object.defineProperty(t,"PythConnection",{enumerable:!0,get:function(){return d.PythConnection}});var p=ld();Object.defineProperty(t,"PythHttpClient",{enumerable:!0,get:function(){return p.PythHttpClient}});var y=function(){if(fd)return dd;fd=1,Object.defineProperty(dd,"__esModule",{value:!0}),dd.getPythClusterApiUrl=dd.getPythProgramKeyForCluster=void 0;var t=Qf,e={"mainnet-beta":"FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH",devnet:"gSbePebfvPy7tRqimPoVecS2UsBvYv46ynrzWocc92s","pythtest-crosschain":"gSbePebfvPy7tRqimPoVecS2UsBvYv46ynrzWocc92s",testnet:"8tfDNiaEyrV6Q1U4DEXrEigs9DoDtkugzFbybENEbCDz","pythtest-conformance":"8tfDNiaEyrV6Q1U4DEXrEigs9DoDtkugzFbybENEbCDz",pythnet:"FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH",localnet:"gMYYig2utAxVoXnM9UhtTWrt8e7x2SVBZqsWZJeT5Gw"};return dd.getPythProgramKeyForCluster=function(r){if(void 0!==e[r])return new t.PublicKey(e[r]);throw new Error("Invalid Solana cluster name: "+r+". Valid options are: "+JSON.stringify(Object.keys(e)))},dd.getPythClusterApiUrl=function(e){return"pythtest-conformance"===e||"pythtest-crosschain"===e?"https://api.pythtest.pyth.network":"pythnet"===e?"https://pythnet.rpcpool.com":"localnet"===e?"http://localhost:8899":t.clusterApiUrl(e)},dd}();Object.defineProperty(t,"getPythProgramKeyForCluster",{enumerable:!0,get:function(){return y.getPythProgramKeyForCluster}}),Object.defineProperty(t,"getPythClusterApiUrl",{enumerable:!0,get:function(){return y.getPythClusterApiUrl}});var g=t_();Object.defineProperty(t,"pythOracleProgram",{enumerable:!0,get:function(){return g.pythOracleProgram}}),Object.defineProperty(t,"pythOracleCoder",{enumerable:!0,get:function(){return g.pythOracleCoder}}),Object.defineProperty(t,"pythIdl",{enumerable:!0,get:function(){return g.pythIdl}})}(Xf)),Xf}var r_=e_(),n_="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function i_(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function o_(t){if(t.__esModule)return t;var e=t.default;if("function"==typeof e){var r=function t(){return this instanceof t?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach((function(e){var n=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(r,e,n.get?n:{enumerable:!0,get:function(){return t[e]}})})),r}for(var s_={},a_={byteLength:function(t){var e=d_(t),r=e[0],n=e[1];return 3*(r+n)/4-n},toByteArray:function(t){var e,r,n=d_(t),i=n[0],o=n[1],s=new h_(function(t,e,r){return 3*(e+r)/4-r}(0,i,o)),a=0,u=o>0?i-4:i;for(r=0;r<u;r+=4)e=c_[t.charCodeAt(r)]<<18|c_[t.charCodeAt(r+1)]<<12|c_[t.charCodeAt(r+2)]<<6|c_[t.charCodeAt(r+3)],s[a++]=e>>16&255,s[a++]=e>>8&255,s[a++]=255&e;return 2===o&&(e=c_[t.charCodeAt(r)]<<2|c_[t.charCodeAt(r+1)]>>4,s[a++]=255&e),1===o&&(e=c_[t.charCodeAt(r)]<<10|c_[t.charCodeAt(r+1)]<<4|c_[t.charCodeAt(r+2)]>>2,s[a++]=e>>8&255,s[a++]=255&e),s},fromByteArray:function(t){for(var e,r=t.length,n=r%3,i=[],o=16383,s=0,a=r-n;s<a;s+=o)i.push(p_(t,s,s+o>a?a:s+o));return 1===n?(e=t[r-1],i.push(u_[e>>2]+u_[e<<4&63]+"==")):2===n&&(e=(t[r-2]<<8)+t[r-1],i.push(u_[e>>10]+u_[e>>4&63]+u_[e<<2&63]+"=")),i.join("")}},u_=[],c_=[],h_="undefined"!=typeof Uint8Array?Uint8Array:Array,l_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f_=0;f_<64;++f_)u_[f_]=l_[f_],c_[l_.charCodeAt(f_)]=f_;function d_(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function p_(t,e,r){for(var n,i,o=[],s=e;s<r;s+=3)n=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),o.push(u_[(i=n)>>18&63]+u_[i>>12&63]+u_[i>>6&63]+u_[63&i]);return o.join("")}c_["-".charCodeAt(0)]=62,c_["_".charCodeAt(0)]=63;var y_={};
25
25
  /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */function g_(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function m_(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function w_(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}y_.read=function(t,e,r,n,i){var o,s,a=8*i-n-1,u=(1<<a)-1,c=u>>1,h=-7,l=r?i-1:0,f=r?-1:1,d=t[e+l];for(l+=f,o=d&(1<<-h)-1,d>>=-h,h+=a;h>0;o=256*o+t[e+l],l+=f,h-=8);for(s=o&(1<<-h)-1,o>>=-h,h+=n;h>0;s=256*s+t[e+l],l+=f,h-=8);if(0===o)o=1-c;else{if(o===u)return s?NaN:1/0*(d?-1:1);s+=Math.pow(2,n),o-=c}return(d?-1:1)*s*Math.pow(2,o-n)},y_.write=function(t,e,r,n,i,o){var s,a,u,c=8*o-i-1,h=(1<<c)-1,l=h>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:o-1,p=n?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=h):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),(e+=s+l>=1?f/u:f*Math.pow(2,1-l))*u>=2&&(s++,u/=2),s+l>=h?(a=0,s=h):s+l>=1?(a=(e*u-1)*Math.pow(2,i),s+=l):(a=e*Math.pow(2,l-1)*Math.pow(2,i),s=0));i>=8;t[r+d]=255&a,d+=p,a/=256,i-=8);for(s=s<<i|a,c+=i;c>0;t[r+d]=255&s,d+=p,s/=256,c-=8);t[r+d-p]|=128*y},
26
26
  /*!
27
27
  * The buffer module from node.js, for the browser.
@@ -41,5 +41,5 @@ const Ok=BigInt("578960446186580977117854925043439539266349923328202820197287920
41
41
  t.exports=r=function(){return i},t.exports.__esModule=!0,t.exports.default=t.exports;var n,i={},o=Object.prototype,s=o.hasOwnProperty,a=Object.defineProperty||function(t,e,r){t[e]=r.value},u="function"==typeof Symbol?Symbol:{},c=u.iterator||"@@iterator",h=u.asyncIterator||"@@asyncIterator",l=u.toStringTag||"@@toStringTag";function f(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{f({},"")}catch(n){f=function(t,e,r){return t[e]=r}}function d(t,e,r,n){var i=e&&e.prototype instanceof v?e:v,o=Object.create(i.prototype),s=new T(n||[]);return a(o,"_invoke",{value:M(t,r,s)}),o}function p(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}i.wrap=d;var y="suspendedStart",g="suspendedYield",m="executing",w="completed",b={};function v(){}function _(){}function k(){}var E={};f(E,c,(function(){return this}));var S=Object.getPrototypeOf,A=S&&S(S(R([])));A&&A!==o&&s.call(A,c)&&(E=A);var x=k.prototype=v.prototype=Object.create(E);function I(t){["next","throw","return"].forEach((function(e){f(t,e,(function(t){return this._invoke(e,t)}))}))}function B(t,r){function n(i,o,a,u){var c=p(t[i],t,o);if("throw"!==c.type){var h=c.arg,l=h.value;return l&&"object"==e(l)&&s.call(l,"__await")?r.resolve(l.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):r.resolve(l).then((function(t){h.value=t,a(h)}),(function(t){return n("throw",t,a,u)}))}u(c.arg)}var i;a(this,"_invoke",{value:function(t,e){function o(){return new r((function(r,i){n(t,e,r,i)}))}return i=i?i.then(o,o):o()}})}function M(t,e,r){var i=y;return function(o,s){if(i===m)throw new Error("Generator is already running");if(i===w){if("throw"===o)throw s;return{value:n,done:!0}}for(r.method=o,r.arg=s;;){var a=r.delegate;if(a){var u=P(a,r);if(u){if(u===b)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===y)throw i=w,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=m;var c=p(t,e,r);if("normal"===c.type){if(i=r.done?w:g,c.arg===b)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(i=w,r.method="throw",r.arg=c.arg)}}}function P(t,e){var r=e.method,i=t.iterator[r];if(i===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=n,P(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),b;var o=p(i,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,b;var s=o.arg;return s?s.done?(e[t.resultName]=s.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=n),e.delegate=null,b):s:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,b)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function R(t){if(t||""===t){var r=t[c];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function e(){for(;++i<t.length;)if(s.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=n,e.done=!0,e};return o.next=o}}throw new TypeError(e(t)+" is not iterable")}return _.prototype=k,a(x,"constructor",{value:k,configurable:!0}),a(k,"constructor",{value:_,configurable:!0}),_.displayName=f(k,l,"GeneratorFunction"),i.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===_||"GeneratorFunction"===(e.displayName||e.name))},i.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,k):(t.__proto__=k,f(t,l,"GeneratorFunction")),t.prototype=Object.create(x),t},i.awrap=function(t){return{__await:t}},I(B.prototype),f(B.prototype,h,(function(){return this})),i.AsyncIterator=B,i.async=function(t,e,r,n,o){void 0===o&&(o=Promise);var s=new B(d(t,e,r,n),o);return i.isGeneratorFunction(e)?s:s.next().then((function(t){return t.done?t.value:s.next()}))},I(x),f(x,l,"Generator"),f(x,c,(function(){return this})),f(x,"toString",(function(){return"[object Generator]"})),i.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},i.values=R,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&s.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=n)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,i){return a.type="throw",a.arg=t,e.next=r,i&&(e.method="next",e.arg=n),!!i}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var u=s.call(o,"catchLoc"),c=s.call(o,"finallyLoc");if(u&&c){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(u){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&s.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=t,o.arg=e,i?(this.method="next",this.next=i.finallyLoc,b):this.complete(o)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),b},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),O(r),b}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;O(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:R(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=n),b}},i}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}(FA)),FA.exports)();DA=t;try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}return DA}()),n=e((VA||(VA=1,function(t){function e(t,e,r,n,i,o,s){try{var a=t[o](s),u=a.value}catch(t){return void r(t)}a.done?e(u):Promise.resolve(u).then(n,i)}t.exports=function(t){return function(){var r=this,n=arguments;return new Promise((function(i,o){var s=t.apply(r,n);function a(t){e(s,i,o,a,u,"next",t)}function u(t){e(s,i,o,a,u,"throw",t)}a(void 0)}))}},t.exports.__esModule=!0,t.exports.default=t.exports}($A)),$A.exports)),i=e(qA()),o=e(GA()),s=e(nx()),a=e(ux()),u=e(dx()),c=e(gx());function h(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,c.default)(t);if(e){var i=(0,c.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,u.default)(this,r)}}var l=function(t){(0,a.default)(d,t);var e,u,c,l,f=h(d);function d(t){var e,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"ws://localhost:8080",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;(0,o.default)(this,d);var s=n.autoconnect,a=void 0===s||s,u=n.reconnect,c=void 0===u||u,h=n.reconnect_interval,l=void 0===h?1e3:h,p=n.max_reconnects,y=void 0===p?5:p,g=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]])}return r}(n,["autoconnect","reconnect","reconnect_interval","max_reconnects"]);return(e=f.call(this)).webSocketFactory=t,e.queue={},e.rpc_id=0,e.address=r,e.autoconnect=a,e.ready=!1,e.reconnect=c,e.reconnect_timer_id=void 0,e.reconnect_interval=l,e.max_reconnects=y,e.rest_options=g,e.current_reconnects=0,e.generate_request_id=i||function(){return++e.rpc_id},e.autoconnect&&e._connect(e.address,Object.assign({autoconnect:e.autoconnect,reconnect:e.reconnect,reconnect_interval:e.reconnect_interval,max_reconnects:e.max_reconnects},e.rest_options)),e}return(0,s.default)(d,[{key:"connect",value:function(){this.socket||this._connect(this.address,Object.assign({autoconnect:this.autoconnect,reconnect:this.reconnect,reconnect_interval:this.reconnect_interval,max_reconnects:this.max_reconnects},this.rest_options))}},{key:"call",value:function(t,e,r,n){var o=this;return n||"object"!==(0,i.default)(r)||(n=r,r=null),new Promise((function(i,s){if(!o.ready)return s(new Error("socket not ready"));var a=o.generate_request_id(t,e),u={jsonrpc:"2.0",method:t,params:e||null,id:a};o.socket.send(JSON.stringify(u),n,(function(t){if(t)return s(t);o.queue[a]={promise:[i,s]},r&&(o.queue[a].timeout=setTimeout((function(){delete o.queue[a],s(new Error("reply timeout"))}),r))}))}))}},{key:"login",value:(l=(0,n.default)(r.default.mark((function t(e){var n;return r.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.call("rpc.login",e);case 2:if(n=t.sent){t.next=5;break}throw new Error("authentication failed");case 5:return t.abrupt("return",n);case 6:case"end":return t.stop()}}),t,this)}))),function(t){return l.apply(this,arguments)})},{key:"listMethods",value:(c=(0,n.default)(r.default.mark((function t(){return r.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.call("__listMethods");case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t,this)}))),function(){return c.apply(this,arguments)})},{key:"notify",value:function(t,e){var r=this;return new Promise((function(n,i){if(!r.ready)return i(new Error("socket not ready"));var o={jsonrpc:"2.0",method:t,params:e||null};r.socket.send(JSON.stringify(o),(function(t){if(t)return i(t);n()}))}))}},{key:"subscribe",value:(u=(0,n.default)(r.default.mark((function t(e){var n;return r.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return"string"==typeof e&&(e=[e]),t.next=3,this.call("rpc.on",e);case 3:if(n=t.sent,"string"!=typeof e||"ok"===n[e]){t.next=6;break}throw new Error("Failed subscribing to an event '"+e+"' with: "+n[e]);case 6:return t.abrupt("return",n);case 7:case"end":return t.stop()}}),t,this)}))),function(t){return u.apply(this,arguments)})},{key:"unsubscribe",value:(e=(0,n.default)(r.default.mark((function t(e){var n;return r.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return"string"==typeof e&&(e=[e]),t.next=3,this.call("rpc.off",e);case 3:if(n=t.sent,"string"!=typeof e||"ok"===n[e]){t.next=6;break}throw new Error("Failed unsubscribing from an event with: "+n);case 6:return t.abrupt("return",n);case 7:case"end":return t.stop()}}),t,this)}))),function(t){return e.apply(this,arguments)})},{key:"close",value:function(t,e){this.socket.close(t||1e3,e)}},{key:"_connect",value:function(t,e){var r=this;clearTimeout(this.reconnect_timer_id),this.socket=this.webSocketFactory(t,e),this.socket.addEventListener("open",(function(){r.ready=!0,r.emit("open"),r.current_reconnects=0})),this.socket.addEventListener("message",(function(t){var e=t.data;e instanceof ArrayBuffer&&(e=Buffer.from(e).toString());try{e=JSON.parse(e)}catch(t){return}if(e.notification&&r.listeners(e.notification).length){if(!Object.keys(e.params).length)return r.emit(e.notification);var n=[e.notification];if(e.params.constructor===Object)n.push(e.params);else for(var i=0;i<e.params.length;i++)n.push(e.params[i]);return Promise.resolve().then((function(){r.emit.apply(r,n)}))}if(!r.queue[e.id])return e.method&&e.params?Promise.resolve().then((function(){r.emit(e.method,e.params)})):void 0;"error"in e=="result"in e&&r.queue[e.id].promise[1](new Error('Server response malformed. Response must include either "result" or "error", but not both.')),r.queue[e.id].timeout&&clearTimeout(r.queue[e.id].timeout),e.error?r.queue[e.id].promise[1](e.error):r.queue[e.id].promise[0](e.result),delete r.queue[e.id]})),this.socket.addEventListener("error",(function(t){return r.emit("error",t)})),this.socket.addEventListener("close",(function(n){var i=n.code,o=n.reason;r.ready&&setTimeout((function(){return r.emit("close",i,o)}),0),r.ready=!1,r.socket=void 0,1e3!==i&&(r.current_reconnects++,r.reconnect&&(r.max_reconnects>r.current_reconnects||0===r.max_reconnects)&&(r.reconnect_timer_id=setTimeout((function(){return r._connect(t,e)}),r.reconnect_interval)))}))}}]),d}(bx().EventEmitter);t.default=l}({}),function(t){var e=WA;Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(t,e){return new u(t,e)};var r=e(GA()),n=e(nx()),i=e(ux()),o=e(dx()),s=e(gx());function a(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,s.default)(t);if(e){var i=(0,s.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,o.default)(this,r)}}var u=function(t){(0,i.default)(o,t);var e=a(o);function o(t,n,i){var s;return(0,r.default)(this,o),(s=e.call(this)).socket=new window.WebSocket(t,i),s.socket.onopen=function(){return s.emit("open")},s.socket.onmessage=function(t){return s.emit("message",t.data)},s.socket.onerror=function(t){return s.emit("error",t)},s.socket.onclose=function(t){s.emit("close",t.code,t.reason)},s}return(0,n.default)(o,[{key:"send",value:function(t,e,r){var n=r||e;try{this.socket.send(t),n()}catch(t){n(t)}}},{key:"close",value:function(t,e){this.socket.close(t,e)}},{key:"addEventListener",value:function(t,e,r){this.socket.addEventListener(t,e,r)}}]),o}(bx().EventEmitter)}({});const{bytesToNumberBE:vx,hexToBytes:_x}=sk,kx={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(t){const{Err:e}=kx;if(t.length<2||2!==t[0])throw new e("Invalid signature integer tag");const r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(128&n[0])throw new e("Invalid signature integer: negative");if(0===n[0]&&!(128&n[1]))throw new e("Invalid signature integer: unnecessary leading zero");return{d:vx(n),l:t.subarray(r+2)}},toSig(t){const{Err:e}=kx,r="string"==typeof t?_x(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||48!=r[0])throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");const{d:i,l:o}=kx._parseInt(r.subarray(2)),{d:s,l:a}=kx._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s:s}},hexFromSig(t){const e=t=>8&Number.parseInt(t[0],16)?"00"+t:t,r=t=>{const e=t.toString(16);return 1&e.length?`0${e}`:e},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),u=r(s);return`30${r(s+o+4)}02${u}${i}02${a}${n}`}},Ex=BigInt(0),Sx=BigInt(1);BigInt(2);const Ax=BigInt(3);function xx(t){const e=function(t){const e=xk(t);return ok(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}(t),{Fp:r,n:n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(t){return pk(t,n)}function a(t){return mk(t,n)}const{ProjectivePoint:u,normPrivateKeyToScalar:c,weierstrassEquation:h,isWithinCurveOrder:l}=function(t){const e=/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
42
42
  function(t){const e=xk(t);ok(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if("object"!=typeof r||"bigint"!=typeof r.beta||"function"!=typeof r.splitScalar)throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}(t),{Fp:r}=e,n=e.toBytes||((t,e,n)=>{const i=e.toAffine();return Q_(Uint8Array.from([4]),r.toBytes(i.x),r.toBytes(i.y))}),i=e.fromBytes||(t=>{const e=t.subarray(1);return{x:r.fromBytes(e.subarray(0,r.BYTES)),y:r.fromBytes(e.subarray(r.BYTES,2*r.BYTES))}});function o(t){const{a:n,b:i}=e,o=r.sqr(t),s=r.mul(o,t);return r.add(r.add(s,r.mul(t,n)),i)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(t){return"bigint"==typeof t&&Ex<t&&t<e.n}function a(t){if(!s(t))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function u(t){const{allowedPrivateKeyLengths:r,nByteLength:n,wrapPrivateKey:i,n:o}=e;if(r&&"bigint"!=typeof t){if(t instanceof Uint8Array&&(t=q_(t)),"string"!=typeof t||!r.includes(t.length))throw new Error("Invalid key");t=t.padStart(2*n,"0")}let s;try{s="bigint"==typeof t?t:Z_(X_("private key",t,n))}catch(e){throw new Error(`private key must be ${n} bytes, hex or bigint, not ${typeof t}`)}return i&&(s=pk(s,o)),a(s),s}const c=new Map;function h(t){if(!(t instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(t,e,n){if(this.px=t,this.py=e,this.pz=n,null==t||!r.isValid(t))throw new Error("x required");if(null==e||!r.isValid(e))throw new Error("y required");if(null==n||!r.isValid(n))throw new Error("z required")}static fromAffine(t){const{x:e,y:n}=t||{};if(!t||!r.isValid(e)||!r.isValid(n))throw new Error("invalid affine point");if(t instanceof l)throw new Error("projective point not allowed");const i=t=>r.eql(t,r.ZERO);return i(e)&&i(n)?l.ZERO:new l(e,n,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(t){const e=r.invertBatch(t.map((t=>t.pz)));return t.map(((t,r)=>t.toAffine(e[r]))).map(l.fromAffine)}static fromHex(t){const e=l.fromAffine(i(X_("pointHex",t)));return e.assertValidity(),e}static fromPrivateKey(t){return l.BASE.multiply(u(t))}_setWindowSize(t){this._WINDOW_SIZE=t,c.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:t,y:n}=this.toAffine();if(!r.isValid(t)||!r.isValid(n))throw new Error("bad point: x or y not FE");const i=r.sqr(n),s=o(t);if(!r.eql(i,s))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:t}=this.toAffine();if(r.isOdd)return!r.isOdd(t);throw new Error("Field doesn't support isOdd")}equals(t){h(t);const{px:e,py:n,pz:i}=this,{px:o,py:s,pz:a}=t,u=r.eql(r.mul(e,a),r.mul(o,i)),c=r.eql(r.mul(n,a),r.mul(s,i));return u&&c}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){const{a:t,b:n}=e,i=r.mul(n,Ax),{px:o,py:s,pz:a}=this;let u=r.ZERO,c=r.ZERO,h=r.ZERO,f=r.mul(o,o),d=r.mul(s,s),p=r.mul(a,a),y=r.mul(o,s);return y=r.add(y,y),h=r.mul(o,a),h=r.add(h,h),u=r.mul(t,h),c=r.mul(i,p),c=r.add(u,c),u=r.sub(d,c),c=r.add(d,c),c=r.mul(u,c),u=r.mul(y,u),h=r.mul(i,h),p=r.mul(t,p),y=r.sub(f,p),y=r.mul(t,y),y=r.add(y,h),h=r.add(f,f),f=r.add(h,f),f=r.add(f,p),f=r.mul(f,y),c=r.add(c,f),p=r.mul(s,a),p=r.add(p,p),f=r.mul(p,y),u=r.sub(u,f),h=r.mul(p,d),h=r.add(h,h),h=r.add(h,h),new l(u,c,h)}add(t){h(t);const{px:n,py:i,pz:o}=this,{px:s,py:a,pz:u}=t;let c=r.ZERO,f=r.ZERO,d=r.ZERO;const p=e.a,y=r.mul(e.b,Ax);let g=r.mul(n,s),m=r.mul(i,a),w=r.mul(o,u),b=r.add(n,i),v=r.add(s,a);b=r.mul(b,v),v=r.add(g,m),b=r.sub(b,v),v=r.add(n,o);let _=r.add(s,u);return v=r.mul(v,_),_=r.add(g,w),v=r.sub(v,_),_=r.add(i,o),c=r.add(a,u),_=r.mul(_,c),c=r.add(m,w),_=r.sub(_,c),d=r.mul(p,v),c=r.mul(y,w),d=r.add(c,d),c=r.sub(m,d),d=r.add(m,d),f=r.mul(c,d),m=r.add(g,g),m=r.add(m,g),w=r.mul(p,w),v=r.mul(y,v),m=r.add(m,w),w=r.sub(g,w),w=r.mul(p,w),v=r.add(v,w),g=r.mul(m,v),f=r.add(f,g),g=r.mul(_,v),c=r.mul(b,c),c=r.sub(c,g),g=r.mul(b,m),d=r.mul(_,d),d=r.add(d,g),new l(c,f,d)}subtract(t){return this.add(t.negate())}is0(){return this.equals(l.ZERO)}wNAF(t){return d.wNAFCached(this,c,t,(t=>{const e=r.invertBatch(t.map((t=>t.pz)));return t.map(((t,r)=>t.toAffine(e[r]))).map(l.fromAffine)}))}multiplyUnsafe(t){const n=l.ZERO;if(t===Ex)return n;if(a(t),t===Sx)return this;const{endo:i}=e;if(!i)return d.unsafeLadder(this,t);let{k1neg:o,k1:s,k2neg:u,k2:c}=i.splitScalar(t),h=n,f=n,p=this;for(;s>Ex||c>Ex;)s&Sx&&(h=h.add(p)),c&Sx&&(f=f.add(p)),p=p.double(),s>>=Sx,c>>=Sx;return o&&(h=h.negate()),u&&(f=f.negate()),f=new l(r.mul(f.px,i.beta),f.py,f.pz),h.add(f)}multiply(t){a(t);let n,i,o=t;const{endo:s}=e;if(s){const{k1neg:t,k1:e,k2neg:a,k2:u}=s.splitScalar(o);let{p:c,f:h}=this.wNAF(e),{p:f,f:p}=this.wNAF(u);c=d.constTimeNegate(t,c),f=d.constTimeNegate(a,f),f=new l(r.mul(f.px,s.beta),f.py,f.pz),n=c.add(f),i=h.add(p)}else{const{p:t,f:e}=this.wNAF(o);n=t,i=e}return l.normalizeZ([n,i])[0]}multiplyAndAddUnsafe(t,e,r){const n=l.BASE,i=(t,e)=>e!==Ex&&e!==Sx&&t.equals(n)?t.multiply(e):t.multiplyUnsafe(e),o=i(this,e).add(i(t,r));return o.is0()?void 0:o}toAffine(t){const{px:e,py:n,pz:i}=this,o=this.is0();null==t&&(t=o?r.ONE:r.inv(i));const s=r.mul(e,t),a=r.mul(n,t),u=r.mul(i,t);if(o)return{x:r.ZERO,y:r.ZERO};if(!r.eql(u,r.ONE))throw new Error("invZ was invalid");return{x:s,y:a}}isTorsionFree(){const{h:t,isTorsionFree:r}=e;if(t===Sx)return!0;if(r)return r(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:t,clearCofactor:r}=e;return t===Sx?this:r?r(l,this):this.multiplyUnsafe(e.h)}toRawBytes(t=!0){return this.assertValidity(),n(l,this,t)}toHex(t=!0){return q_(this.toRawBytes(t))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);const f=e.nBitLength,d=Ak(l,e.endo?Math.ceil(f/2):f);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:u,weierstrassEquation:o,isWithinCurveOrder:s}}({...e,toBytes(t,e,n){const i=e.toAffine(),o=r.toBytes(i.x),s=Q_;return n?s(Uint8Array.from([e.hasEvenY()?2:3]),o):s(Uint8Array.from([4]),o,r.toBytes(i.y))},fromBytes(t){const e=t.length,n=t[0],s=t.subarray(1);if(e!==i||2!==n&&3!==n){if(e===o&&4===n)return{x:r.fromBytes(s.subarray(0,r.BYTES)),y:r.fromBytes(s.subarray(r.BYTES,2*r.BYTES))};throw new Error(`Point of length ${e} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}{const t=Z_(s);if(!(Ex<(a=t)&&a<r.ORDER))throw new Error("Point is not on curve");const e=h(t);let i=r.sqrt(e);return 1==(1&n)!=((i&Sx)===Sx)&&(i=r.neg(i)),{x:t,y:i}}var a}}),f=t=>q_(Y_(t,e.nByteLength));function d(t){return t>n>>Sx}const p=(t,e,r)=>Z_(t.slice(e,r));class y{constructor(t,e,r){this.r=t,this.s=e,this.recovery=r,this.assertValidity()}static fromCompact(t){const r=e.nByteLength;return t=X_("compactSignature",t,2*r),new y(p(t,0,r),p(t,r,2*r))}static fromDER(t){const{r:e,s:r}=kx.toSig(X_("DER",t));return new y(e,r)}assertValidity(){if(!l(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!l(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(t){return new y(this.r,this.s,t)}recoverPublicKey(t){const{r:n,s:i,recovery:o}=this,c=b(X_("msgHash",t));if(null==o||![0,1,2,3].includes(o))throw new Error("recovery id invalid");const h=2===o||3===o?n+e.n:n;if(h>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");const l=0==(1&o)?"02":"03",d=u.fromHex(l+f(h)),p=a(h),y=s(-c*p),g=s(i*p),m=u.BASE.multiplyAndAddUnsafe(d,y,g);if(!m)throw new Error("point at infinify");return m.assertValidity(),m}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new y(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return $_(this.toDERHex())}toDERHex(){return kx.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return $_(this.toCompactHex())}toCompactHex(){return f(this.r)+f(this.s)}}const g={isValidPrivateKey(t){try{return c(t),!0}catch(t){return!1}},normPrivateKeyToScalar:c,randomPrivateKey:()=>{const t=kk(e.n);return function(t,e,r=!1){const n=t.length,i=_k(e),o=kk(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);const s=pk(r?Z_(t):G_(t),e-uk)+uk;return r?J_(s,i):Y_(s,i)}(e.randomBytes(t),e.n)},precompute:(t=8,e=u.BASE)=>(e._setWindowSize(t),e.multiply(BigInt(3)),e)};function m(t){const e=t instanceof Uint8Array,r="string"==typeof t,n=(e||r)&&t.length;return e?n===i||n===o:r?n===2*i||n===2*o:t instanceof u}const w=e.bits2int||function(t){const r=Z_(t),n=8*t.length-e.nBitLength;return n>0?r>>BigInt(n):r},b=e.bits2int_modN||function(t){return s(w(t))},v=tk(e.nBitLength);function _(t){if("bigint"!=typeof t)throw new Error("bigint expected");if(!(Ex<=t&&t<v))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Y_(t,e.nByteLength)}function k(t,n,i=E){if(["recovered","canonical"].some((t=>t in i)))throw new Error("sign() legacy options not supported");const{hash:o,randomBytes:h}=e;let{lowS:f,prehash:p,extraEntropy:g}=i;null==f&&(f=!0),t=X_("msgHash",t),p&&(t=X_("prehashed msgHash",o(t)));const m=b(t),v=c(n),k=[_(v),_(m)];if(null!=g){const t=!0===g?h(r.BYTES):g;k.push(X_("extraEntropy",t))}const S=Q_(...k),A=m;return{seed:S,k2sig:function(t){const e=w(t);if(!l(e))return;const r=a(e),n=u.BASE.multiply(e).toAffine(),i=s(n.x);if(i===Ex)return;const o=s(r*s(A+i*v));if(o===Ex)return;let c=(n.x===i?0:2)|Number(n.y&Sx),h=o;return f&&d(o)&&(h=function(t){return d(t)?s(-t):t}(o),c^=1),new y(i,h,c)}}}const E={lowS:e.lowS,prehash:!1},S={lowS:e.lowS,prehash:!1};return u.BASE._setWindowSize(8),{CURVE:e,getPublicKey:function(t,e=!0){return u.fromPrivateKey(t).toRawBytes(e)},getSharedSecret:function(t,e,r=!0){if(m(t))throw new Error("first arg must be private key");if(!m(e))throw new Error("second arg must be public key");return u.fromHex(e).multiply(c(t)).toRawBytes(r)},sign:function(t,r,n=E){const{seed:i,k2sig:o}=k(t,r,n),s=e;return nk(s.hash.outputLen,s.nByteLength,s.hmac)(i,o)},verify:function(t,r,n,i=S){const o=t;if(r=X_("msgHash",r),n=X_("publicKey",n),"strict"in i)throw new Error("options.strict was renamed to lowS");const{lowS:c,prehash:h}=i;let l,f;try{if("string"==typeof o||o instanceof Uint8Array)try{l=y.fromDER(o)}catch(t){if(!(t instanceof kx.Err))throw t;l=y.fromCompact(o)}else{if("object"!=typeof o||"bigint"!=typeof o.r||"bigint"!=typeof o.s)throw new Error("PARSE");{const{r:t,s:e}=o;l=new y(t,e)}}f=u.fromHex(n)}catch(t){if("PARSE"===t.message)throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(c&&l.hasHighS())return!1;h&&(r=e.hash(r));const{r:d,s:p}=l,g=b(r),m=a(p),w=s(g*m),v=s(d*m),_=u.BASE.multiplyAndAddUnsafe(f,w,v)?.toAffine();return!!_&&s(_.x)===d},ProjectivePoint:u,Signature:y,utils:g}}BigInt(4);class Ix extends S_{constructor(t,e){super(),this.finished=!1,this.destroyed=!1,function(t){if("function"!=typeof t||"function"!=typeof t.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");g_(t.outputLen),g_(t.blockLen)}(t);const r=E_(e);if(this.iHash=t.create(),"function"!=typeof this.iHash.update)throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const n=this.blockLen,i=new Uint8Array(n);i.set(r.length>n?t.create().update(r).digest():r);for(let t=0;t<i.length;t++)i[t]^=54;this.iHash.update(i),this.oHash=t.create();for(let t=0;t<i.length;t++)i[t]^=106;this.oHash.update(i),i.fill(0)}update(t){return w_(this),this.iHash.update(t),this}digestInto(t){w_(this),m_(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){const t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));const{oHash:e,iHash:r,finished:n,destroyed:i,blockLen:o,outputLen:s}=this;return t.finished=n,t.destroyed=i,t.blockLen=o,t.outputLen=s,t.oHash=e._cloneInto(t.oHash),t.iHash=r._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const Bx=(t,e,r)=>new Ix(t,e).update(r).digest()
43
43
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */;function Mx(t){return{hash:t,hmac:(e,...r)=>Bx(t,e,function(...t){const e=new Uint8Array(t.reduce(((t,e)=>t+e.length),0));let r=0;return t.forEach((t=>{if(!v_(t))throw new Error("Uint8Array expected");e.set(t,r),r+=t.length})),e}(...r)),randomBytes:x_}}Bx.create=(t,e)=>new Ix(t,e)
44
- /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */;const Px=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Lx=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Ox=BigInt(1),Tx=BigInt(2),Rx=(t,e)=>(t+e/Tx)/e,Ux=vk(Px,void 0,void 0,{sqrt:function(t){const e=Px,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),u=BigInt(88),c=t*t*t%e,h=c*c*t%e,l=gk(h,r,e)*h%e,f=gk(l,r,e)*h%e,d=gk(f,Tx,e)*c%e,p=gk(d,i,e)*d%e,y=gk(p,o,e)*p%e,g=gk(y,a,e)*y%e,m=gk(g,u,e)*g%e,w=gk(m,a,e)*y%e,b=gk(w,r,e)*h%e,v=gk(b,s,e)*p%e,_=gk(v,n,e)*c%e,k=gk(_,Tx,e);if(!Ux.eql(Ux.sqr(k),t))throw new Error("Cannot find square root");return k}}),Cx=function(t,e){const r=e=>xx({...t,...Mx(e)});return Object.freeze({...r(e),create:r})}({a:BigInt(0),b:BigInt(7),Fp:Ux,n:Lx,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=Lx,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Ox*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Rx(o*t,e),u=Rx(-n*t,e);let c=pk(t-a*r-u*i,e),h=pk(-a*n-u*o,e);const l=c>s,f=h>s;if(l&&(c=e-c),f&&(h=e-h),c>s||h>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:c,k2neg:f,k2:h}}}},iE);function Nx(t){try{return Kk.ExtendedPoint.fromHex(t),!0}catch{return!1}}BigInt(0),Cx.ProjectivePoint;const zx=Kk.verify,Dx=t=>s_.Buffer.isBuffer(t)?t:t instanceof Uint8Array?s_.Buffer.from(t.buffer,t.byteOffset,t.byteLength):s_.Buffer.from(t);class jx{constructor(t){Object.assign(this,t)}encode(){return s_.Buffer.from(UE(Wx,this))}static decode(t){return zE(Wx,this,t)}static decodeUnchecked(t){return kE(Wx,this,t)}}const Wx=new Map;var Fx;let Kx;const qx=32;let Vx=1;Kx=Symbol.toStringTag;class Hx extends jx{constructor(t){if(super({}),this._bn=void 0,function(t){return void 0!==t._bn}(t))this._bn=t._bn;else{if("string"==typeof t){const e=Xk.decode(t);if(e.length!=qx)throw new Error("Invalid public key input");this._bn=new Zk(e)}else this._bn=new Zk(t);if(this._bn.byteLength()>qx)throw new Error("Invalid public key input")}}static unique(){const t=new Hx(Vx);return Vx+=1,new Hx(t.toBuffer())}equals(t){return this._bn.eq(t._bn)}toBase58(){return Xk.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){const t=this.toBuffer();return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}toBuffer(){const t=this._bn.toArrayLike(s_.Buffer);if(t.length===qx)return t;const e=s_.Buffer.alloc(32);return t.copy(e,32-t.length),e}get[Kx](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(t,e,r){const n=s_.Buffer.concat([t.toBuffer(),s_.Buffer.from(e),r.toBuffer()]),i=iE(n);return new Hx(i)}static createProgramAddressSync(t,e){let r=s_.Buffer.alloc(0);t.forEach((function(t){if(t.length>32)throw new TypeError("Max seed length exceeded");r=s_.Buffer.concat([r,Dx(t)])})),r=s_.Buffer.concat([r,e.toBuffer(),s_.Buffer.from("ProgramDerivedAddress")]);const n=iE(r);if(Nx(n))throw new Error("Invalid seeds, address must fall off the curve");return new Hx(n)}static async createProgramAddress(t,e){return this.createProgramAddressSync(t,e)}static findProgramAddressSync(t,e){let r,n=255;for(;0!=n;){try{const i=t.concat(s_.Buffer.from([n]));r=this.createProgramAddressSync(i,e)}catch(t){if(t instanceof TypeError)throw t;n--;continue}return[r,n]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(t,e){return this.findProgramAddressSync(t,e)}static isOnCurve(t){return Nx(new Hx(t).toBytes())}}Fx=Hx,Hx.default=new Fx("11111111111111111111111111111111"),Wx.set(Hx,{kind:"struct",fields:[["_bn","u256"]]}),new Hx("BPFLoader1111111111111111111111111111111111");class $x{constructor(t,e){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=t,this.accountKeysFromLookups=e}keySegments(){const t=[this.staticAccountKeys];return this.accountKeysFromLookups&&(t.push(this.accountKeysFromLookups.writable),t.push(this.accountKeysFromLookups.readonly)),t}get(t){for(const e of this.keySegments()){if(t<e.length)return e[t];t-=e.length}}get length(){return this.keySegments().flat().length}compileInstructions(t){if(this.length>256)throw new Error("Account index overflow encountered during compilation");const e=new Map;this.keySegments().flat().forEach(((t,r)=>{e.set(t.toBase58(),r)}));const r=t=>{const r=e.get(t.toBase58());if(void 0===r)throw new Error("Encountered an unknown instruction account key during compilation");return r};return t.map((t=>({programIdIndex:r(t.programId),accountKeyIndexes:t.keys.map((t=>r(t.pubkey))),data:t.data})))}}const Zx=(t="publicKey")=>LS(32,t),Gx=(t="string")=>{const e=MS([xS("length"),xS("lengthPadding"),LS(ES(xS(),-8),"chars")],t),r=e.decode.bind(e),n=e.encode.bind(e),i=e;return i.decode=(t,e)=>r(t,e).chars.toString(),i.encode=(t,e,r)=>{const i={chars:s_.Buffer.from(t,"utf8")};return n(i,e,r)},i.alloc=t=>xS().span+xS().span+s_.Buffer.from(t,"utf8").length,i};function Yx(t,e){const r=t=>{if(t.span>=0)return t.span;if("function"==typeof t.alloc)return t.alloc(e[t.property]);if("count"in t&&"elementLayout"in t){const n=e[t.property];if(Array.isArray(n))return n.length*r(t.elementLayout)}else if("fields"in t)return Yx({layout:t},e[t.property]);return 0};let n=0;return t.layout.fields.forEach((t=>{n+=r(t)})),n}function Jx(t){let e=0,r=0;for(;;){let n=t.shift();if(e|=(127&n)<<7*r,r+=1,0==(128&n))break}return e}function Xx(t,e){let r=e;for(;;){let e=127&r;if(r>>=7,0==r){t.push(e);break}e|=128,t.push(e)}}function Qx(t,e){if(!t)throw new Error(e||"Assertion failed")}class tI{constructor(t,e){this.payer=void 0,this.keyMetaMap=void 0,this.payer=t,this.keyMetaMap=e}static compile(t,e){const r=new Map,n=t=>{const e=t.toBase58();let n=r.get(e);return void 0===n&&(n={isSigner:!1,isWritable:!1,isInvoked:!1},r.set(e,n)),n},i=n(e);i.isSigner=!0,i.isWritable=!0;for(const e of t){n(e.programId).isInvoked=!0;for(const t of e.keys){const e=n(t.pubkey);e.isSigner||=t.isSigner,e.isWritable||=t.isWritable}}return new tI(e,r)}getMessageComponents(){const t=[...this.keyMetaMap.entries()];Qx(t.length<=256,"Max static account keys length exceeded");const e=t.filter((([,t])=>t.isSigner&&t.isWritable)),r=t.filter((([,t])=>t.isSigner&&!t.isWritable)),n=t.filter((([,t])=>!t.isSigner&&t.isWritable)),i=t.filter((([,t])=>!t.isSigner&&!t.isWritable)),o={numRequiredSignatures:e.length+r.length,numReadonlySignedAccounts:r.length,numReadonlyUnsignedAccounts:i.length};{Qx(e.length>0,"Expected at least one writable signer key");const[t]=e[0];Qx(t===this.payer.toBase58(),"Expected first writable signer key to be the fee payer")}return[o,[...e.map((([t])=>new Hx(t))),...r.map((([t])=>new Hx(t))),...n.map((([t])=>new Hx(t))),...i.map((([t])=>new Hx(t)))]]}extractTableLookup(t){const[e,r]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&t.isWritable)),[n,i]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&!t.isWritable));if(0!==e.length||0!==n.length)return[{accountKey:t.key,writableIndexes:e,readonlyIndexes:n},{writable:r,readonly:i}]}drainKeysFoundInLookupTable(t,e){const r=new Array,n=new Array;for(const[i,o]of this.keyMetaMap.entries())if(e(o)){const e=new Hx(i),o=t.findIndex((t=>t.equals(e)));o>=0&&(Qx(o<256,"Max lookup table index exceeded"),r.push(o),n.push(e),this.keyMetaMap.delete(i))}return[r,n]}}class eI{constructor(t){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=t.header,this.accountKeys=t.accountKeys.map((t=>new Hx(t))),this.recentBlockhash=t.recentBlockhash,this.instructions=t.instructions,this.instructions.forEach((t=>this.indexToProgramIds.set(t.programIdIndex,this.accountKeys[t.programIdIndex])))}get version(){return"legacy"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map((t=>({programIdIndex:t.programIdIndex,accountKeyIndexes:t.accounts,data:Xk.decode(t.data)})))}get addressTableLookups(){return[]}getAccountKeys(){return new $x(this.staticAccountKeys)}static compile(t){const e=tI.compile(t.instructions,t.payerKey),[r,n]=e.getMessageComponents(),i=new $x(n).compileInstructions(t.instructions).map((t=>({programIdIndex:t.programIdIndex,accounts:t.accountKeyIndexes,data:Xk.encode(t.data)})));return new eI({header:r,accountKeys:n,recentBlockhash:t.recentBlockhash,instructions:i})}isAccountSigner(t){return t<this.header.numRequiredSignatures}isAccountWritable(t){const e=this.header.numRequiredSignatures;return t>=this.header.numRequiredSignatures?t-e<this.accountKeys.length-e-this.header.numReadonlyUnsignedAccounts:t<e-this.header.numReadonlySignedAccounts}isProgramId(t){return this.indexToProgramIds.has(t)}programIds(){return[...this.indexToProgramIds.values()]}nonProgramIds(){return this.accountKeys.filter(((t,e)=>!this.isProgramId(e)))}serialize(){const t=this.accountKeys.length;let e=[];Xx(e,t);const r=this.instructions.map((t=>{const{accounts:e,programIdIndex:r}=t,n=Array.from(Xk.decode(t.data));let i=[];Xx(i,e.length);let o=[];return Xx(o,n.length),{programIdIndex:r,keyIndicesCount:s_.Buffer.from(i),keyIndices:e,dataLength:s_.Buffer.from(o),data:n}}));let n=[];Xx(n,r.length);let i=s_.Buffer.alloc(1232);s_.Buffer.from(n).copy(i);let o=n.length;r.forEach((t=>{const e=MS([SS("programIdIndex"),LS(t.keyIndicesCount.length,"keyIndicesCount"),PS(SS("keyIndex"),t.keyIndices.length,"keyIndices"),LS(t.dataLength.length,"dataLength"),PS(SS("userdatum"),t.data.length,"data")]).encode(t,i,o);o+=e})),i=i.slice(0,o);const s=MS([LS(1,"numRequiredSignatures"),LS(1,"numReadonlySignedAccounts"),LS(1,"numReadonlyUnsignedAccounts"),LS(e.length,"keyCount"),PS(Zx("key"),t,"keys"),Zx("recentBlockhash")]),a={numRequiredSignatures:s_.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:s_.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:s_.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:s_.Buffer.from(e),keys:this.accountKeys.map((t=>Dx(t.toBytes()))),recentBlockhash:Xk.decode(this.recentBlockhash)};let u=s_.Buffer.alloc(2048);const c=s.encode(a,u);return i.copy(u,c),u.slice(0,c+i.length)}static from(t){let e=[...t];const r=e.shift();if(r!==(127&r))throw new Error("Versioned messages must be deserialized with VersionedMessage.deserialize()");const n=e.shift(),i=e.shift(),o=Jx(e);let s=[];for(let t=0;t<o;t++){const t=e.slice(0,qx);e=e.slice(qx),s.push(new Hx(s_.Buffer.from(t)))}const a=e.slice(0,qx);e=e.slice(qx);const u=Jx(e);let c=[];for(let t=0;t<u;t++){const t=e.shift(),r=Jx(e),n=e.slice(0,r);e=e.slice(r);const i=Jx(e),o=e.slice(0,i),s=Xk.encode(s_.Buffer.from(o));e=e.slice(i),c.push({programIdIndex:t,accounts:n,data:s})}const h={header:{numRequiredSignatures:r,numReadonlySignedAccounts:n,numReadonlyUnsignedAccounts:i},recentBlockhash:Xk.encode(s_.Buffer.from(a)),accountKeys:s,instructions:c};return new eI(h)}}const rI=s_.Buffer.alloc(64).fill(0);class nI{constructor(t){this.keys=void 0,this.programId=void 0,this.data=s_.Buffer.alloc(0),this.programId=t.programId,this.keys=t.keys,t.data&&(this.data=t.data)}toJSON(){return{keys:this.keys.map((({pubkey:t,isSigner:e,isWritable:r})=>({pubkey:t.toJSON(),isSigner:e,isWritable:r}))),programId:this.programId.toJSON(),data:[...this.data]}}}class iI{get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(t){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,t)if(t.feePayer&&(this.feePayer=t.feePayer),t.signatures&&(this.signatures=t.signatures),Object.prototype.hasOwnProperty.call(t,"nonceInfo")){const{minContextSlot:e,nonceInfo:r}=t;this.minNonceContextSlot=e,this.nonceInfo=r}else if(Object.prototype.hasOwnProperty.call(t,"lastValidBlockHeight")){const{blockhash:e,lastValidBlockHeight:r}=t;this.recentBlockhash=e,this.lastValidBlockHeight=r}else{const{recentBlockhash:e,nonceInfo:r}=t;r&&(this.nonceInfo=r),this.recentBlockhash=e}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map((t=>t.toJSON())),signers:this.signatures.map((({publicKey:t})=>t.toJSON()))}}add(...t){if(0===t.length)throw new Error("No instructions");return t.forEach((t=>{"instructions"in t?this.instructions=this.instructions.concat(t.instructions):"data"in t&&"programId"in t&&"keys"in t?this.instructions.push(t):this.instructions.push(new nI(t))})),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let t,e,r;if(this.nonceInfo?(t=this.nonceInfo.nonce,e=this.instructions[0]!=this.nonceInfo.nonceInstruction?[this.nonceInfo.nonceInstruction,...this.instructions]:this.instructions):(t=this.recentBlockhash,e=this.instructions),!t)throw new Error("Transaction recentBlockhash required");if(e.length<1&&console.warn("No instructions provided"),this.feePayer)r=this.feePayer;else{if(!(this.signatures.length>0&&this.signatures[0].publicKey))throw new Error("Transaction fee payer required");r=this.signatures[0].publicKey}for(let t=0;t<e.length;t++)if(void 0===e[t].programId)throw new Error(`Transaction instruction index ${t} has undefined program id`);const n=[],i=[];e.forEach((t=>{t.keys.forEach((t=>{i.push({...t})}));const e=t.programId.toString();n.includes(e)||n.push(e)})),n.forEach((t=>{i.push({pubkey:new Hx(t),isSigner:!1,isWritable:!1})}));const o=[];i.forEach((t=>{const e=t.pubkey.toString(),r=o.findIndex((t=>t.pubkey.toString()===e));r>-1?(o[r].isWritable=o[r].isWritable||t.isWritable,o[r].isSigner=o[r].isSigner||t.isSigner):o.push(t)})),o.sort((function(t,e){return t.isSigner!==e.isSigner?t.isSigner?-1:1:t.isWritable!==e.isWritable?t.isWritable?-1:1:t.pubkey.toBase58().localeCompare(e.pubkey.toBase58(),"en",{localeMatcher:"best fit",usage:"sort",sensitivity:"variant",ignorePunctuation:!1,numeric:!1,caseFirst:"lower"})}));const s=o.findIndex((t=>t.pubkey.equals(r)));if(s>-1){const[t]=o.splice(s,1);t.isSigner=!0,t.isWritable=!0,o.unshift(t)}else o.unshift({pubkey:r,isSigner:!0,isWritable:!0});for(const t of this.signatures){const e=o.findIndex((e=>e.pubkey.equals(t.publicKey)));if(!(e>-1))throw new Error(`unknown signer: ${t.publicKey.toString()}`);o[e].isSigner||(o[e].isSigner=!0,console.warn("Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release."))}let a=0,u=0,c=0;const h=[],l=[];o.forEach((({pubkey:t,isSigner:e,isWritable:r})=>{e?(h.push(t.toString()),a+=1,r||(u+=1)):(l.push(t.toString()),r||(c+=1))}));const f=h.concat(l),d=e.map((t=>{const{data:e,programId:r}=t;return{programIdIndex:f.indexOf(r.toString()),accounts:t.keys.map((t=>f.indexOf(t.pubkey.toString()))),data:Xk.encode(e)}}));return d.forEach((t=>{Qx(t.programIdIndex>=0),t.accounts.forEach((t=>Qx(t>=0)))})),new eI({header:{numRequiredSignatures:a,numReadonlySignedAccounts:u,numReadonlyUnsignedAccounts:c},accountKeys:f,recentBlockhash:t,instructions:d})}_compile(){const t=this.compileMessage(),e=t.accountKeys.slice(0,t.header.numRequiredSignatures);return this.signatures.length===e.length&&this.signatures.every(((t,r)=>e[r].equals(t.publicKey)))||(this.signatures=e.map((t=>({signature:null,publicKey:t})))),t}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(t){return(await t.getFeeForMessage(this.compileMessage())).value}setSigners(...t){if(0===t.length)throw new Error("No signers");const e=new Set;this.signatures=t.filter((t=>{const r=t.toString();return!e.has(r)&&(e.add(r),!0)})).map((t=>({signature:null,publicKey:t})))}sign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}this.signatures=r.map((t=>({signature:null,publicKey:t.publicKey})));const n=this._compile();this._partialSign(n,...r)}partialSign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}const n=this._compile();this._partialSign(n,...r)}_partialSign(t,...e){const r=t.serialize();e.forEach((t=>{const e=((t,e)=>Kk.sign(t,e.slice(0,32)))(r,t.secretKey);this._addSignature(t.publicKey,Dx(e))}))}addSignature(t,e){this._compile(),this._addSignature(t,e)}_addSignature(t,e){Qx(64===e.length);const r=this.signatures.findIndex((e=>t.equals(e.publicKey)));if(r<0)throw new Error(`unknown signer: ${t.toString()}`);this.signatures[r].signature=s_.Buffer.from(e)}verifySignatures(t){return this._verifySignatures(this.serializeMessage(),void 0===t||t)}_verifySignatures(t,e){for(const{signature:r,publicKey:n}of this.signatures)if(null===r){if(e)return!1}else if(!zx(r,t,n.toBytes()))return!1;return!0}serialize(t){const{requireAllSignatures:e,verifySignatures:r}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},t),n=this.serializeMessage();if(r&&!this._verifySignatures(n,e))throw new Error("Signature verification failed");return this._serialize(n)}_serialize(t){const{signatures:e}=this,r=[];Xx(r,e.length);const n=r.length+64*e.length+t.length,i=s_.Buffer.alloc(n);return Qx(e.length<256),s_.Buffer.from(r).copy(i,0),e.forEach((({signature:t},e)=>{null!==t&&(Qx(64===t.length,"signature has invalid length"),s_.Buffer.from(t).copy(i,r.length+64*e))})),t.copy(i,r.length+64*e.length),Qx(i.length<=1232,`Transaction too large: ${i.length} > 1232`),i}get keys(){return Qx(1===this.instructions.length),this.instructions[0].keys.map((t=>t.pubkey))}get programId(){return Qx(1===this.instructions.length),this.instructions[0].programId}get data(){return Qx(1===this.instructions.length),this.instructions[0].data}static from(t){let e=[...t];const r=Jx(e);let n=[];for(let t=0;t<r;t++){const t=e.slice(0,64);e=e.slice(64),n.push(Xk.encode(s_.Buffer.from(t)))}return iI.populate(eI.from(e),n)}static populate(t,e=[]){const r=new iI;return r.recentBlockhash=t.recentBlockhash,t.header.numRequiredSignatures>0&&(r.feePayer=t.accountKeys[0]),e.forEach(((e,n)=>{const i={signature:e==Xk.encode(rI)?null:Xk.decode(e),publicKey:t.accountKeys[n]};r.signatures.push(i)})),t.instructions.forEach((e=>{const n=e.accounts.map((e=>{const n=t.accountKeys[e];return{pubkey:n,isSigner:r.signatures.some((t=>t.publicKey.toString()===n.toString()))||t.isAccountSigner(e),isWritable:t.isAccountWritable(e)}}));r.instructions.push(new nI({keys:n,programId:t.accountKeys[e.programIdIndex],data:Xk.decode(e.data)}))})),r._message=t,r._json=r.toJSON(),r}}new Hx("SysvarC1ock11111111111111111111111111111111"),new Hx("SysvarEpochSchedu1e111111111111111111111111"),new Hx("Sysvar1nstructions1111111111111111111111111");const oI=new Hx("SysvarRecentB1ockHashes11111111111111111111"),sI=new Hx("SysvarRent111111111111111111111111111111111");function aI(t,e){const r=t.layout.span>=0?t.layout.span:Yx(t,e),n=s_.Buffer.alloc(r),i=Object.assign({instruction:t.index},e);return t.layout.encode(i,n),n}new Hx("SysvarRewards111111111111111111111111111111"),new Hx("SysvarS1otHashes111111111111111111111111111"),new Hx("SysvarS1otHistory11111111111111111111111111"),new Hx("SysvarStakeHistory1111111111111111111111111");const uI=IS("lamportsPerSignature"),cI=MS([xS("version"),xS("state"),Zx("authorizedPubkey"),Zx("nonce"),MS([uI],"feeCalculator")]).span,hI=(8,t=>{const e=LS(8,t),{encode:r,decode:n}=(t=>({decode:t.decode.bind(t),encode:t.encode.bind(t)}))(e),i=e;return i.decode=(t,e)=>{const r=n(t,e);return TS(s_.Buffer.from(r))},i.encode=(t,e,n)=>{const i=US(t,8);return r(i,e,n)},i});const lI=Object.freeze({Create:{index:0,layout:MS([xS("instruction"),BS("lamports"),BS("space"),Zx("programId")])},Assign:{index:1,layout:MS([xS("instruction"),Zx("programId")])},Transfer:{index:2,layout:MS([xS("instruction"),hI("lamports")])},CreateWithSeed:{index:3,layout:MS([xS("instruction"),Zx("base"),Gx("seed"),BS("lamports"),BS("space"),Zx("programId")])},AdvanceNonceAccount:{index:4,layout:MS([xS("instruction")])},WithdrawNonceAccount:{index:5,layout:MS([xS("instruction"),BS("lamports")])},InitializeNonceAccount:{index:6,layout:MS([xS("instruction"),Zx("authorized")])},AuthorizeNonceAccount:{index:7,layout:MS([xS("instruction"),Zx("authorized")])},Allocate:{index:8,layout:MS([xS("instruction"),BS("space")])},AllocateWithSeed:{index:9,layout:MS([xS("instruction"),Zx("base"),Gx("seed"),BS("space"),Zx("programId")])},AssignWithSeed:{index:10,layout:MS([xS("instruction"),Zx("base"),Gx("seed"),Zx("programId")])},TransferWithSeed:{index:11,layout:MS([xS("instruction"),hI("lamports"),Gx("seed"),Zx("programId")])},UpgradeNonceAccount:{index:12,layout:MS([xS("instruction")])}});class fI{constructor(){}static createAccount(t){const e=aI(lI.Create,{lamports:t.lamports,space:t.space,programId:Dx(t.programId.toBuffer())});return new nI({keys:[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!0,isWritable:!0}],programId:this.programId,data:e})}static transfer(t){let e,r;return"basePubkey"in t?(e=aI(lI.TransferWithSeed,{lamports:BigInt(t.lamports),seed:t.seed,programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.fromPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]):(e=aI(lI.Transfer,{lamports:BigInt(t.lamports)}),r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]),new nI({keys:r,programId:this.programId,data:e})}static assign(t){let e,r;return"basePubkey"in t?(e=aI(lI.AssignWithSeed,{base:Dx(t.basePubkey.toBuffer()),seed:t.seed,programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]):(e=aI(lI.Assign,{programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]),new nI({keys:r,programId:this.programId,data:e})}static createAccountWithSeed(t){const e=aI(lI.CreateWithSeed,{base:Dx(t.basePubkey.toBuffer()),seed:t.seed,lamports:t.lamports,space:t.space,programId:Dx(t.programId.toBuffer())});let r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!1,isWritable:!0}];return t.basePubkey!=t.fromPubkey&&r.push({pubkey:t.basePubkey,isSigner:!0,isWritable:!1}),new nI({keys:r,programId:this.programId,data:e})}static createNonceAccount(t){const e=new iI;"basePubkey"in t&&"seed"in t?e.add(fI.createAccountWithSeed({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,basePubkey:t.basePubkey,seed:t.seed,lamports:t.lamports,space:cI,programId:this.programId})):e.add(fI.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,lamports:t.lamports,space:cI,programId:this.programId}));const r={noncePubkey:t.noncePubkey,authorizedPubkey:t.authorizedPubkey};return e.add(this.nonceInitialize(r)),e}static nonceInitialize(t){const e=aI(lI.InitializeNonceAccount,{authorized:Dx(t.authorizedPubkey.toBuffer())}),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:oI,isSigner:!1,isWritable:!1},{pubkey:sI,isSigner:!1,isWritable:!1}],programId:this.programId,data:e};return new nI(r)}static nonceAdvance(t){const e=aI(lI.AdvanceNonceAccount),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:oI,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e};return new nI(r)}static nonceWithdraw(t){const e=aI(lI.WithdrawNonceAccount,{lamports:t.lamports});return new nI({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0},{pubkey:oI,isSigner:!1,isWritable:!1},{pubkey:sI,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static nonceAuthorize(t){const e=aI(lI.AuthorizeNonceAccount,{authorized:Dx(t.newAuthorizedPubkey.toBuffer())});return new nI({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static allocate(t){let e,r;return"basePubkey"in t?(e=aI(lI.AllocateWithSeed,{base:Dx(t.basePubkey.toBuffer()),seed:t.seed,space:t.space,programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]):(e=aI(lI.Allocate,{space:t.space}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]),new nI({keys:r,programId:this.programId,data:e})}}fI.programId=new Hx("11111111111111111111111111111111"),new Hx("BPFLoader2111111111111111111111111111111111"),MS([xS("typeIndex"),hI("deactivationSlot"),IS("lastExtendedSlot"),SS("lastExtendedStartIndex"),SS(),PS(Zx(),ES(SS(),-1),"authority")]);const dI=sA(GS(Hx),eA(),(t=>new Hx(t))),pI=rA([eA(),YS("base64")]),yI=sA(GS(s_.Buffer),pI,(t=>s_.Buffer.from(t[0],"base64")));function gI(t){return iA([nA({jsonrpc:YS("2.0"),id:eA(),result:t}),nA({jsonrpc:YS("2.0"),id:eA(),error:nA({code:oA(),message:eA(),data:QS(HS("any",(()=>!0)))})})])}const mI=gI(oA());function wI(t){return sA(gI(t),mI,(e=>"error"in e?e:{...e,result:KS(e.result,t)}))}function bI(t){return wI(nA({context:nA({slot:XS()}),value:t}))}function vI(t){return nA({context:nA({slot:XS()}),value:t})}const _I=nA({foundation:XS(),foundationTerm:XS(),initial:XS(),taper:XS(),terminal:XS()});wI($S(JS(nA({epoch:XS(),effectiveSlot:XS(),amount:XS(),postBalance:XS(),commission:QS(JS(XS()))}))));const kI=$S(nA({slot:XS(),prioritizationFee:XS()})),EI=nA({total:XS(),validator:XS(),foundation:XS(),epoch:XS()}),SI=nA({epoch:XS(),slotIndex:XS(),slotsInEpoch:XS(),absoluteSlot:XS(),blockHeight:QS(XS()),transactionCount:QS(XS())}),AI=nA({slotsPerEpoch:XS(),leaderScheduleSlotOffset:XS(),warmup:ZS(),firstNormalEpoch:XS(),firstNormalSlot:XS()}),xI=tA(eA(),$S(XS())),II=JS(iA([nA({}),eA()])),BI=nA({err:II}),MI=YS("receivedSignature");nA({"solana-core":eA(),"feature-set":QS(XS())}),bI(nA({err:JS(iA([nA({}),eA()])),logs:JS($S(eA())),accounts:QS(JS($S(JS(nA({executable:ZS(),owner:eA(),lamports:XS(),data:$S(eA()),rentEpoch:QS(XS())}))))),unitsConsumed:QS(XS()),returnData:QS(JS(nA({programId:eA(),data:rA([eA(),YS("base64")])})))})),bI(nA({byIdentity:tA(eA(),$S(XS())),range:nA({firstSlot:XS(),lastSlot:XS()})})),wI(_I),wI(EI),wI(kI),wI(SI),wI(AI),wI(xI),wI(XS()),bI(nA({total:XS(),circulating:XS(),nonCirculating:XS(),nonCirculatingAccounts:$S(dI)}));const PI=nA({amount:eA(),uiAmount:JS(XS()),decimals:XS(),uiAmountString:QS(eA())});bI($S(nA({address:dI,amount:eA(),uiAmount:JS(XS()),decimals:XS(),uiAmountString:QS(eA())}))),bI($S(nA({pubkey:dI,account:nA({executable:ZS(),owner:dI,lamports:XS(),data:yI,rentEpoch:XS()})})));const LI=nA({program:eA(),parsed:oA(),space:XS()});bI($S(nA({pubkey:dI,account:nA({executable:ZS(),owner:dI,lamports:XS(),data:LI,rentEpoch:XS()})}))),bI($S(nA({lamports:XS(),address:dI})));const OI=nA({executable:ZS(),owner:dI,lamports:XS(),data:yI,rentEpoch:XS()});nA({pubkey:dI,account:OI});const TI=sA(iA([GS(s_.Buffer),LI]),iA([pI,LI]),(t=>Array.isArray(t)?KS(t,yI):t)),RI=nA({executable:ZS(),owner:dI,lamports:XS(),data:TI,rentEpoch:XS()});nA({pubkey:dI,account:RI}),nA({state:iA([YS("active"),YS("inactive"),YS("activating"),YS("deactivating")]),active:XS(),inactive:XS()}),wI($S(nA({signature:eA(),slot:XS(),err:II,memo:JS(eA()),blockTime:QS(JS(XS()))}))),wI($S(nA({signature:eA(),slot:XS(),err:II,memo:JS(eA()),blockTime:QS(JS(XS()))}))),nA({subscription:XS(),result:vI(OI)});const UI=nA({pubkey:dI,account:OI});nA({subscription:XS(),result:vI(UI)});const CI=nA({parent:XS(),slot:XS(),root:XS()});nA({subscription:XS(),result:CI});const NI=iA([nA({type:iA([YS("firstShredReceived"),YS("completed"),YS("optimisticConfirmation"),YS("root")]),slot:XS(),timestamp:XS()}),nA({type:YS("createdBank"),parent:XS(),slot:XS(),timestamp:XS()}),nA({type:YS("frozen"),slot:XS(),timestamp:XS(),stats:nA({numTransactionEntries:XS(),numSuccessfulTransactions:XS(),numFailedTransactions:XS(),maxTransactionsPerEntry:XS()})}),nA({type:YS("dead"),slot:XS(),timestamp:XS(),err:eA()})]);nA({subscription:XS(),result:NI}),nA({subscription:XS(),result:vI(iA([BI,MI]))}),nA({subscription:XS(),result:XS()}),nA({pubkey:eA(),gossip:JS(eA()),tpu:JS(eA()),rpc:JS(eA()),version:JS(eA())});const zI=nA({votePubkey:eA(),nodePubkey:eA(),activatedStake:XS(),epochVoteAccount:ZS(),epochCredits:$S(rA([XS(),XS(),XS()])),commission:XS(),lastVote:XS(),rootSlot:JS(XS())});wI(nA({current:$S(zI),delinquent:$S(zI)}));const DI=iA([YS("processed"),YS("confirmed"),YS("finalized")]),jI=nA({slot:XS(),confirmations:JS(XS()),err:II,confirmationStatus:QS(DI)});bI($S(JS(jI))),wI(XS());const WI=nA({accountKey:dI,writableIndexes:$S(XS()),readonlyIndexes:$S(XS())}),FI=nA({signatures:$S(eA()),message:nA({accountKeys:$S(eA()),header:nA({numRequiredSignatures:XS(),numReadonlySignedAccounts:XS(),numReadonlyUnsignedAccounts:XS()}),instructions:$S(nA({accounts:$S(XS()),data:eA(),programIdIndex:XS()})),recentBlockhash:eA(),addressTableLookups:QS($S(WI))})}),KI=nA({pubkey:dI,signer:ZS(),writable:ZS(),source:QS(iA([YS("transaction"),YS("lookupTable")]))}),qI=nA({accountKeys:$S(KI),signatures:$S(eA())}),VI=nA({parsed:oA(),program:eA(),programId:dI}),HI=nA({accounts:$S(dI),data:eA(),programId:dI}),$I=sA(iA([HI,VI]),iA([nA({parsed:oA(),program:eA(),programId:eA()}),nA({accounts:$S(eA()),data:eA(),programId:eA()})]),(t=>KS(t,"accounts"in t?HI:VI))),ZI=nA({signatures:$S(eA()),message:nA({accountKeys:$S(KI),instructions:$S($I),recentBlockhash:eA(),addressTableLookups:QS(JS($S(WI)))})}),GI=nA({accountIndex:XS(),mint:eA(),owner:QS(eA()),uiTokenAmount:PI}),YI=nA({writable:$S(dI),readonly:$S(dI)}),JI=nA({err:II,fee:XS(),innerInstructions:QS(JS($S(nA({index:XS(),instructions:$S(nA({accounts:$S(XS()),data:eA(),programIdIndex:XS()}))})))),preBalances:$S(XS()),postBalances:$S(XS()),logMessages:QS(JS($S(eA()))),preTokenBalances:QS(JS($S(GI))),postTokenBalances:QS(JS($S(GI))),loadedAddresses:QS(YI),computeUnitsConsumed:QS(XS())}),XI=nA({err:II,fee:XS(),innerInstructions:QS(JS($S(nA({index:XS(),instructions:$S($I)})))),preBalances:$S(XS()),postBalances:$S(XS()),logMessages:QS(JS($S(eA()))),preTokenBalances:QS(JS($S(GI))),postTokenBalances:QS(JS($S(GI))),loadedAddresses:QS(YI),computeUnitsConsumed:QS(XS())}),QI=iA([YS(0),YS("legacy")]),tB=nA({pubkey:eA(),lamports:XS(),postBalance:JS(XS()),rewardType:JS(eA()),commission:QS(JS(XS()))});wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:FI,meta:JS(JI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:qI,meta:JS(JI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:ZI,meta:JS(XI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:qI,meta:JS(XI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:FI,meta:JS(JI)})),rewards:QS($S(tB)),blockTime:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),signatures:$S(eA()),blockTime:JS(XS())}))),wI(JS(nA({slot:XS(),meta:JI,blockTime:QS(JS(XS())),transaction:FI,version:QS(QI)}))),wI(JS(nA({slot:XS(),transaction:ZI,meta:JS(XI),blockTime:QS(JS(XS())),version:QS(QI)}))),bI(nA({blockhash:eA(),feeCalculator:nA({lamportsPerSignature:XS()})})),bI(nA({blockhash:eA(),lastValidBlockHeight:XS()})),bI(ZS()),wI($S(nA({slot:XS(),numTransactions:XS(),numSlots:XS(),samplePeriodSecs:XS()}))),bI(JS(nA({feeCalculator:nA({lamportsPerSignature:XS()})}))),wI(eA()),wI(eA());const eB=nA({err:II,logs:$S(eA()),signature:eA()});var rB;nA({result:vI(eB),subscription:XS()}),Object.freeze({CreateLookupTable:{index:0,layout:MS([xS("instruction"),hI("recentSlot"),SS("bumpSeed")])},FreezeLookupTable:{index:1,layout:MS([xS("instruction")])},ExtendLookupTable:{index:2,layout:MS([xS("instruction"),hI(),PS(Zx(),ES(xS(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:MS([xS("instruction")])},CloseLookupTable:{index:4,layout:MS([xS("instruction")])}}),new Hx("AddressLookupTab1e1111111111111111111111111"),Object.freeze({RequestUnits:{index:0,layout:MS([SS("instruction"),xS("units"),xS("additionalFee")])},RequestHeapFrame:{index:1,layout:MS([SS("instruction"),xS("bytes")])},SetComputeUnitLimit:{index:2,layout:MS([SS("instruction"),xS("units")])},SetComputeUnitPrice:{index:3,layout:MS([SS("instruction"),hI("microLamports")])}}),new Hx("ComputeBudget111111111111111111111111111111"),MS([SS("numSignatures"),SS("padding"),AS("signatureOffset"),AS("signatureInstructionIndex"),AS("publicKeyOffset"),AS("publicKeyInstructionIndex"),AS("messageDataOffset"),AS("messageDataSize"),AS("messageInstructionIndex")]),new Hx("Ed25519SigVerify111111111111111111111111111"),Cx.utils.isValidPrivateKey,Cx.getPublicKey,MS([SS("numSignatures"),AS("signatureOffset"),SS("signatureInstructionIndex"),AS("ethAddressOffset"),SS("ethAddressInstructionIndex"),AS("messageDataOffset"),AS("messageDataSize"),SS("messageInstructionIndex"),LS(20,"ethAddress"),LS(64,"signature"),SS("recoveryId")]),new Hx("KeccakSecp256k11111111111111111111111111111"),new Hx("StakeConfig11111111111111111111111111111111");class nB{constructor(t,e,r){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=t,this.epoch=e,this.custodian=r}}rB=nB,nB.default=new rB(0,0,Hx.default),Object.freeze({Initialize:{index:0,layout:MS([xS("instruction"),((t="authorized")=>MS([Zx("staker"),Zx("withdrawer")],t))(),((t="lockup")=>MS([BS("unixTimestamp"),BS("epoch"),Zx("custodian")],t))()])},Authorize:{index:1,layout:MS([xS("instruction"),Zx("newAuthorized"),xS("stakeAuthorizationType")])},Delegate:{index:2,layout:MS([xS("instruction")])},Split:{index:3,layout:MS([xS("instruction"),BS("lamports")])},Withdraw:{index:4,layout:MS([xS("instruction"),BS("lamports")])},Deactivate:{index:5,layout:MS([xS("instruction")])},Merge:{index:7,layout:MS([xS("instruction")])},AuthorizeWithSeed:{index:8,layout:MS([xS("instruction"),Zx("newAuthorized"),xS("stakeAuthorizationType"),Gx("authoritySeed"),Zx("authorityOwner")])}}),Object.freeze({Staker:{index:0},Withdrawer:{index:1}}),new Hx("Stake11111111111111111111111111111111111111"),Object.freeze({InitializeAccount:{index:0,layout:MS([xS("instruction"),((t="voteInit")=>MS([Zx("nodePubkey"),Zx("authorizedVoter"),Zx("authorizedWithdrawer"),SS("commission")],t))()])},Authorize:{index:1,layout:MS([xS("instruction"),Zx("newAuthorized"),xS("voteAuthorizationType")])},Withdraw:{index:3,layout:MS([xS("instruction"),BS("lamports")])},AuthorizeWithSeed:{index:10,layout:MS([xS("instruction"),((t="voteAuthorizeWithSeedArgs")=>MS([xS("voteAuthorizationType"),Zx("currentAuthorityDerivedKeyOwnerPubkey"),Gx("currentAuthorityDerivedKeySeed"),Zx("newAuthorized")],t))()])}}),Object.freeze({Voter:{index:0},Withdrawer:{index:1}}),new Hx("Vote111111111111111111111111111111111111111"),new Hx("Va1idator1nfo111111111111111111111111111111"),nA({name:eA(),website:QS(eA()),details:QS(eA()),keybaseUsername:QS(eA())}),new Hx("Vote111111111111111111111111111111111111111"),MS([Zx("nodePubkey"),Zx("authorizedWithdrawer"),SS("commission"),IS(),PS(MS([IS("slot"),xS("confirmationCount")]),ES(xS(),-8),"votes"),SS("rootSlotValid"),IS("rootSlot"),IS(),PS(MS([IS("epoch"),Zx("authorizedVoter")]),ES(xS(),-8),"authorizedVoters"),MS([PS(MS([Zx("authorizedPubkey"),IS("epochOfLastAuthorizedSwitch"),IS("targetEpoch")]),32,"buf"),IS("idx"),SS("isEmpty")],"priorVoters"),IS(),PS(MS([IS("epoch"),IS("credits"),IS("prevCredits")]),ES(xS(),-8),"epochCredits"),MS([IS("slot"),IS("timestamp")],"lastTimestamp")]);var iB,oB=["u8","u16","u32","u64","u128","i8","i16","i32","i64","i128","f32","f64"],sB=function(){function t(){this.offset=0,this.buffer_size=256,this.buffer=new ArrayBuffer(this.buffer_size),this.view=new DataView(this.buffer)}return t.prototype.resize_if_necessary=function(t){if(this.buffer_size-this.offset<t){this.buffer_size=Math.max(2*this.buffer_size,this.buffer_size+t);var e=new ArrayBuffer(this.buffer_size);new Uint8Array(e).set(new Uint8Array(this.buffer)),this.buffer=e,this.view=new DataView(e)}},t.prototype.get_used_buffer=function(){return new Uint8Array(this.buffer).slice(0,this.offset)},t.prototype.store_value=function(t,e){var r=e.substring(1),n=parseInt(r)/8;this.resize_if_necessary(n);var i="f"===e[0]?"setFloat".concat(r):"i"===e[0]?"setInt".concat(r):"setUint".concat(r);this.view[i](this.offset,t,!0),this.offset+=n},t.prototype.store_bytes=function(t){this.resize_if_necessary(t.length),new Uint8Array(this.buffer).set(new Uint8Array(t),this.offset),this.offset+=t.length},t}(),aB=function(){function t(t){this.offset=0,this.buffer_size=t.length,this.buffer=new ArrayBuffer(t.length),new Uint8Array(this.buffer).set(t),this.view=new DataView(this.buffer)}return t.prototype.assert_enough_buffer=function(t){if(this.offset+t>this.buffer.byteLength)throw new Error("Error in schema, the buffer is smaller than expected")},t.prototype.consume_value=function(t){var e=t.substring(1),r=parseInt(e)/8;this.assert_enough_buffer(r);var n="f"===t[0]?"getFloat".concat(e):"i"===t[0]?"getInt".concat(e):"getUint".concat(e),i=this.view[n](this.offset,!0);return this.offset+=r,i},t.prototype.consume_bytes=function(t){this.assert_enough_buffer(t);var e=this.buffer.slice(this.offset,this.offset+t);return this.offset+=t,e},t}(),uB=(iB=function(t,e){return iB=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},iB(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}iB(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});function cB(t,e,r){if(typeof t!==e)throw new Error("Expected ".concat(e," not ").concat(typeof t,"(").concat(t,") at ").concat(r.join(".")))}function hB(t,e,r){if(t!==e)throw new Error("Array length ".concat(t," does not match schema length ").concat(e," at ").concat(r.join(".")))}var lB=oB.concat(["bool","string"]),fB=["option","enum","array","set","map","struct"],dB=function(t){function e(e,r){var n="Invalid schema: ".concat(JSON.stringify(e)," expected ").concat(r);return t.call(this,n)||this}return uB(e,t),e}(Error);function pB(t){if("string"!=typeof t||!lB.includes(t)){if(t&&"object"==typeof t){var e=Object.keys(t);if(1===e.length&&fB.includes(e[0])){var r=e[0];if("option"===r)return pB(t[r]);if("enum"===r)return function(t){if(!Array.isArray(t))throw new dB(t,"Array");for(var e=0,r=t;e<r.length;e++){var n=r[e];if("object"!=typeof n||!("struct"in n))throw new Error('Missing "struct" key in enum schema');if("object"!=typeof n.struct||1!==Object.keys(n.struct).length)throw new Error('The "struct" in each enum must have a single key');pB({struct:n.struct})}}(t[r]);if("array"===r)return function(t){if("object"!=typeof t)throw new dB(t,"{ type, len? }");if(t.len&&"number"!=typeof t.len)throw new Error("Invalid schema: ".concat(t));if("type"in t)return pB(t.type);throw new dB(t,"{ type, len? }")}(t[r]);if("set"===r)return pB(t[r]);if("map"===r)return function(t){if("object"!=typeof t||!("key"in t)||!("value"in t))throw new dB(t,"{ key, value }");pB(t.key),pB(t.value)}(t[r]);if("struct"===r)return function(t){if("object"!=typeof t)throw new dB(t,"object");for(var e in t)pB(t[e])}(t[r])}}throw new dB(t,fB.join(", ")+" or "+lB.join(", "))}}var yB=function(){function t(t){this.encoded=new sB,this.fieldPath=["value"],this.checkTypes=t}return t.prototype.encode=function(t,e){return this.encode_value(t,e),this.encoded.get_used_buffer()},t.prototype.encode_value=function(t,e){if("string"==typeof e){if(oB.includes(e))return this.encode_integer(t,e);if("string"===e)return this.encode_string(t);if("bool"===e)return this.encode_boolean(t)}if("object"==typeof e){if("option"in e)return this.encode_option(t,e);if("enum"in e)return this.encode_enum(t,e);if("array"in e)return this.encode_array(t,e);if("set"in e)return this.encode_set(t,e);if("map"in e)return this.encode_map(t,e);if("struct"in e)return this.encode_struct(t,e)}},t.prototype.encode_integer=function(t,e){var r=parseInt(e.substring(1));r<=32||"f64"==e?(this.checkTypes&&cB(t,"number",this.fieldPath),this.encoded.store_value(t,e)):(this.checkTypes&&function(t,e){if(!(["number","string","bigint","boolean"].includes(typeof t)||"object"==typeof t&&null!==t&&"toString"in t))throw new Error("Expected bigint, number, boolean or string not ".concat(typeof t,"(").concat(t,") at ").concat(e.join(".")))}(t,this.fieldPath),this.encode_bigint(BigInt(t),r))},t.prototype.encode_bigint=function(t,e){for(var r=e/8,n=new Uint8Array(r),i=0;i<r;i++)n[i]=Number(t&BigInt(255)),t>>=BigInt(8);this.encoded.store_bytes(new Uint8Array(n))},t.prototype.encode_string=function(t){this.checkTypes&&cB(t,"string",this.fieldPath);var e=t;this.encoded.store_value(e.length,"u32");for(var r=0;r<e.length;r++)this.encoded.store_value(e.charCodeAt(r),"u8")},t.prototype.encode_boolean=function(t){this.checkTypes&&cB(t,"boolean",this.fieldPath),this.encoded.store_value(t?1:0,"u8")},t.prototype.encode_option=function(t,e){null==t?this.encoded.store_value(0,"u8"):(this.encoded.store_value(1,"u8"),this.encode_value(t,e.option))},t.prototype.encode_enum=function(t,e){this.checkTypes&&function(t,e){if("object"!=typeof t||null===t)throw new Error("Expected object not ".concat(typeof t,"(").concat(t,") at ").concat(e.join(".")))}(t,this.fieldPath);for(var r=Object.keys(t)[0],n=0;n<e.enum.length;n++){var i=e.enum[n];if(r===Object.keys(i.struct)[0])return this.encoded.store_value(n,"u8"),this.encode_struct(t,i)}throw new Error("Enum key (".concat(r,") not found in enum schema: ").concat(JSON.stringify(e)," at ").concat(this.fieldPath.join(".")))},t.prototype.encode_array=function(t,e){if(function(t){return Array.isArray(t)||!!t&&"object"==typeof t&&"length"in t&&"number"==typeof t.length&&(0===t.length||t.length>0&&t.length-1 in t)}(t))return this.encode_arraylike(t,e);if(t instanceof ArrayBuffer)return this.encode_buffer(t,e);throw new Error("Expected Array-like not ".concat(typeof t,"(").concat(t,") at ").concat(this.fieldPath.join(".")))},t.prototype.encode_arraylike=function(t,e){e.array.len?hB(t.length,e.array.len,this.fieldPath):this.encoded.store_value(t.length,"u32");for(var r=0;r<t.length;r++)this.encode_value(t[r],e.array.type)},t.prototype.encode_buffer=function(t,e){e.array.len?hB(t.byteLength,e.array.len,this.fieldPath):this.encoded.store_value(t.byteLength,"u32"),this.encoded.store_bytes(new Uint8Array(t))},t.prototype.encode_set=function(t,e){this.checkTypes&&cB(t,"object",this.fieldPath);var r=t instanceof Set?Array.from(t.values()):Object.values(t);this.encoded.store_value(r.length,"u32");for(var n=0,i=r;n<i.length;n++){var o=i[n];this.encode_value(o,e.set)}},t.prototype.encode_map=function(t,e){this.checkTypes&&cB(t,"object",this.fieldPath);var r=t instanceof Map,n=r?Array.from(t.keys()):Object.keys(t);this.encoded.store_value(n.length,"u32");for(var i=0,o=n;i<o.length;i++){var s=o[i];this.encode_value(s,e.map.key),this.encode_value(r?t.get(s):t[s],e.map.value)}},t.prototype.encode_struct=function(t,e){this.checkTypes&&cB(t,"object",this.fieldPath);for(var r=0,n=Object.keys(e.struct);r<n.length;r++){var i=n[r];this.fieldPath.push(i),this.encode_value(t[i],e.struct[i]),this.fieldPath.pop()}},t}(),gB=function(){function t(t){this.buffer=new aB(t)}return t.prototype.decode=function(t){return this.decode_value(t)},t.prototype.decode_value=function(t){if("string"==typeof t){if(oB.includes(t))return this.decode_integer(t);if("string"===t)return this.decode_string();if("bool"===t)return this.decode_boolean()}if("object"==typeof t){if("option"in t)return this.decode_option(t);if("enum"in t)return this.decode_enum(t);if("array"in t)return this.decode_array(t);if("set"in t)return this.decode_set(t);if("map"in t)return this.decode_map(t);if("struct"in t)return this.decode_struct(t)}throw new Error("Unsupported type: ".concat(t))},t.prototype.decode_integer=function(t){var e=parseInt(t.substring(1));return e<=32||"f64"==t?this.buffer.consume_value(t):this.decode_bigint(e,t.startsWith("i"))},t.prototype.decode_bigint=function(t,e){void 0===e&&(e=!1);var r=t/8,n=new Uint8Array(this.buffer.consume_bytes(r)),i=n.reduceRight((function(t,e){return t+e.toString(16).padStart(2,"0")}),"");return e&&n[r-1]?BigInt.asIntN(t,BigInt("0x".concat(i))):BigInt("0x".concat(i))},t.prototype.decode_string=function(){var t=this.decode_integer("u32"),e=new Uint8Array(this.buffer.consume_bytes(t));return String.fromCharCode.apply(null,e)},t.prototype.decode_boolean=function(){return this.buffer.consume_value("u8")>0},t.prototype.decode_option=function(t){var e=this.buffer.consume_value("u8");if(1===e)return this.decode_value(t.option);if(0!==e)throw new Error("Invalid option ".concat(e));return null},t.prototype.decode_enum=function(t){var e,r=this.buffer.consume_value("u8");if(r>t.enum.length)throw new Error("Enum option ".concat(r," is not available"));var n=t.enum[r].struct,i=Object.keys(n)[0];return(e={})[i]=this.decode_value(n[i]),e},t.prototype.decode_array=function(t){for(var e=[],r=t.array.len?t.array.len:this.decode_integer("u32"),n=0;n<r;++n)e.push(this.decode_value(t.array.type));return e},t.prototype.decode_set=function(t){for(var e=this.decode_integer("u32"),r=new Set,n=0;n<e;++n)r.add(this.decode_value(t.set));return r},t.prototype.decode_map=function(t){for(var e=this.decode_integer("u32"),r=new Map,n=0;n<e;++n){var i=this.decode_value(t.map.key),o=this.decode_value(t.map.value);r.set(i,o)}return r},t.prototype.decode_struct=function(t){var e={};for(var r in t.struct)e[r]=this.decode_value(t.struct[r]);return e},t}();function mB(t,e,r){return void 0===r&&(r=!0),r&&pB(t),new yB(r).encode(e,t)}class wB{constructor(t){this.tag=1,this.record=t.record,this.content=t.content}serialize(){return mB(wB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}wB.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class bB{constructor(t){this.tag=4,this.validation=t.validation,this.signature=t.signature,this.expectedPubkey=t.expectedPubkey}serialize(){return mB(bB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}bB.schema={struct:{tag:"u8",validation:"u8",signature:{array:{type:"u8"}},expectedPubkey:{array:{type:"u8"}}}};class vB{constructor(t){this.tag=3,this.staleness=t.staleness}serialize(){return mB(vB.schema,this)}getInstruction(t,e,r,n,i,o,s,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:e,isSigner:!1,isWritable:!1}),h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:i,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!1,isWritable:!1}),h.push({pubkey:u,isSigner:!0,isWritable:!0}),new nI({keys:h,programId:t,data:c})}}vB.schema={struct:{tag:"u8",staleness:"bool"}};class _B{constructor(t){this.tag=2,this.record=t.record,this.content=t.content}serialize(){return mB(_B.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}_B.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class kB{constructor(){this.tag=5}serialize(){return mB(kB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}kB.schema={struct:{tag:"u8"}};class EB{constructor(t){this.tag=6,this.roaId=t.roaId}serialize(){return mB(EB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}EB.schema={struct:{tag:"u8",roaId:{array:{type:"u8"}}}};const SB=new Hx("HP3D4D1ZCmohQGFVms2SS4LCANgJyksBf5s1F77FuFjZ"),[AB]=Hx.findProgramAddressSync([SB.toBuffer()],SB);var xB;!function(t){t[t.None=0]="None",t[t.Solana=1]="Solana",t[t.Ethereum=2]="Ethereum",t[t.UnverifiedSolana=3]="UnverifiedSolana"}(xB||(xB={}));const IB=t=>{switch(t){case xB.None:return 0;case xB.Ethereum:return 20;case xB.Solana:case xB.UnverifiedSolana:return 32;default:throw new Error("Invalid validation enum")}};class BB{constructor(t){this.stalenessValidation=t.stalenessValidation,this.rightOfAssociationValidation=t.rightOfAssociationValidation,this.contentLength=t.contentLength}static deserialize(t){return new BB(function(t,e,r){return void 0===r&&(r=!0),r&&pB(t),new gB(e).decode(t)}(this.schema,t,!0))}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data.slice(96,96+this.LEN))}}BB.LEN=8,BB.schema={struct:{stalenessValidation:"u16",rightOfAssociationValidation:"u16",contentLength:"u32"}};class MB{constructor(t,e){this.data=e,this.header=t}static deserialize(t){const e=BB.deserialize(t.slice(96,96+BB.LEN)),r=t.slice(96+BB.LEN);return new MB(e,r)}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data)}static async retrieveBatch(t,e){return(await t.getMultipleAccountsInfo(e)).map((t=>{if(null==t?void 0:t.data)return this.deserialize(t.data)}))}getContent(){let t=IB(this.header.stalenessValidation)+IB(this.header.rightOfAssociationValidation);return this.data.slice(t)}getStalenessId(){let t=IB(this.header.stalenessValidation);return this.data.slice(0,t)}getRoAId(){let t=IB(this.header.stalenessValidation),e=t+IB(this.header.rightOfAssociationValidation);return this.data.slice(t,e)}}var PB;!function(t){t.IPFS="IPFS",t.ARWV="ARWV",t.SOL="SOL",t.ETH="ETH",t.BTC="BTC",t.LTC="LTC",t.DOGE="DOGE",t.Email="email",t.Url="url",t.Discord="discord",t.Github="github",t.Reddit="reddit",t.Twitter="twitter",t.Telegram="telegram",t.Pic="pic",t.SHDW="SHDW",t.POINT="POINT",t.BSC="BSC",t.Injective="INJ",t.Backpack="backpack",t.A="A",t.AAAA="AAAA",t.CNAME="CNAME",t.TXT="TXT",t.Background="background"}(PB||(PB={}));const LB=new Map([[PB.SOL,96],[PB.ETH,20],[PB.BSC,20],[PB.Injective,20],[PB.A,4],[PB.AAAA,16],[PB.Background,32]]);var OB;!function(t){t[t.V1=1]="V1",t[t.V2=2]="V2"}(OB||(OB={}));var TB="ABAOAAAAAACwiAAAAYkHdvjtnH+IFkUYxx/v3vPe7uw8UkjsD43ChKICDQsT3iIJy4gSiZAjkn5JUFlaiFmjccT9ESkpGBGVIlQgWSkY/QDBoMgrQv0jRJDAfkCXhUmgRX23d4ebnndmd3Z3ZnfVeeDDzM7MPs8zv57Zd2+5hd1Ed4ClYAisBuuUsqLpMHgJjIBNFu1fBW8l1O8AO8Ee8Cn4HIyCg+CI0u4Y+AmMgVPgDOhuEHWBPjAZXAy2gjfA9kb73hlx+i7SK8AHYDf4BOwHB8AoOAyOguPgB/ArOKlcnwHdPe32/Uin9LTvvwTph0gv62nbubKnXT+nZ1z/DcjfFF8vQno7uEaxH923BGVXN9v5Zcgvj/VFPIT8Y/H1k0jXxPn1SEfARjBdab8V+TfB22CXUh5xd3OcZTH3g6di1LZJbLNs55q96M9n4J9Gm6hsfzQvcT8fbfy//TyUf8vG4Lses/5jcd2PSE/IcQan4/o/UXYadE0kaoJBMG1ivNbidNbETr1XoWyuplwyHFN0fFai/8/EY7BIKY/68EpCvwP+mc/m/2vNGnBhp1eZ51bCmgsEAoFAIBAIBAKBQKAO3Irfrg3lfc4qi/cXd+Kee5TfvAd6ieY0ie5D2cNx+eNInwZLmu33gWuRn4/8C3H9CNJNYEt8/TrS35HuSPktvRP1z0LPOvAceB4IsB5saIa6UBfqQl2oc123AjwBVjWrP7MCgcC5y/ue/56yqXv87+qcIU2Z+ny8tuHHpyxsvrDNITDXgqkDRJcPdJY/wMo24/oQmDqZaPHkdplAuhv8ApqDRDeCVj/OAvD9BUSX9qF8Qpt7lTxnZ7+5TmVtrGMM7XchP3sS0SNgGzg4yU5HIBAIBM5NfsO5QDgfjuM54STOw7/Az/F3QtfhfF4Qn9F/gxMouxm/WU7F9afBQuUM7+rtPF+jb0b6ese/I7sI+emadhEzUT5bqbsW+esNbSMWoG6hWo/8gOLPUqUu+v5rKEHX8oS6iEXQexd7XlmBe1aCNWAp6kSsYyjHc82Liv2Xkd/C/HkN1w/Geren+KryToa2PtlQg2c9zijGZnGJ9kaibzZh84jmmfx4TeYpK9H3usMKqxnDCWxsdLY/3ygy9h+l/LYbYHtuXw2/rfsSPo0a/Jrn6PvPrzL2+7CmfV88lkc9j+F7cRzYU4N48DF8uA3n/T7Fly9q4Jdvoth0uLf9LORC11hvO/0D6RnQfRa99+2Hr1NS/M26VvfEe2jaWTAOvG8zzgKf8zCrYL++qUEfbumeQAjTVnQp+QmW99gQpDoJ4+9uHZe5/l3OW/M8x6WUZaduUvUc5p13NTXlz3VpGbCVrGNe5zOnjvGlrDWY1IdWShuuQ9fWh6h+VSV1Wit1lvNhHFz1zeUYtCg5ntvOSStDW5cITRnF5RJ+rcasJHExztwu910tl6LzLYsvuvvzilB0mvSaxt/V+SY0EMurfkjbrTjfInf+FJGkNdzSlOukZaDo3snqs7RZpqj2Gx7sS52D5O79k+93W2W/T3NhQxe3VeF16pwn4eI8qev7Sl1s0PnPy5PalSV57Pp6XuDxrypR9wBR8nOCzm/eXuYp5d4s/lV1XvL+lG2b+2AaQ1nPr23Hrc7z0WT5qvZL0v7QtdX5zdu6HMei+gV1ri8et4XSVpCfdeB7fRWNRy79UP0RCT4Jyre/88bbKsQUawUrV69dxjd+nlXxbCKos79pz1BpOqucz0gEdZ5hMk+aa7Wdy/7xZ5Yqhc+nyHivrkyQ/reM7tziuFojfM7zxtq0505XYutvHrtVnzNl2ONrTGdPkLv9ZjNHOoShnCh5nLLYKOKfK4qK7bjx/gqyj9lFJc2Wz/HIqyMSYaGnqM8+xp6vB1/6feg22UmLFUno1rurvelz7yT1UVfORW3L7+d6fMcAXdzxIVK3TNNioZpSyj2242izpky6y5S0fpr6q5ZXJT7O1qrmQRVB+rkQ1Dk3vvYttyGoc+51/mUVkYLtXvTx7MCvbUnzW2czyR8pql4XUlbcN9l1pSfPfOl0JV2bylyKoM4959sHQfr9Vpbk2V8u4ry0ndcvH5I1xggP9qVem/PHZL+qeGLrc945tLnHtG/LEtdjr4urxMpM92X1RZDd+pLtsorUydeCaiuvbtdSpQ9l2M4SU01nvI1e35L3uS5Jlw8pe1ykCKo2JtrGK9O9ujOlimcD6Y9LEWQ+7019d2VDLVPrTCLrsvjsQ1TfJVJM12pZmm5b4Xptx6HM9SpFkP2c6drJa5/iSr+pD7r+CNLvATVfpST1RYog/fwKTdsyxLVNQfnWrkyziGltJK2hLLptzjHXIsh+/HytmyQfpPA5VNtzXWWLzbiVsc9sbWSJ7UWE69KNh6v9kya2c6TzMa0fwpD37TtvQ6wuiw9CA9cny33Mj2pLte9Kp6996HO/83HPQ5r+ov5mvU9Qte/fIrGJP7axPO/9eXX6kjLPKZNd17iyZdOHLP31JSbfXY6hC59c+ZZ136TZ9SFlj6cvmVkSrkSQn3NG5KBqEVSeH6Ji/vvnhFWjSlfFNDwzyMgqLvvKxXffbeASBWo+Zj4p2x6TfwE=",RB="AAACAAAAAACAOAAAAbYBSf7t2S1IBEEYBuDVDZ7FYrQMNsFiu3hgEYOI0SCXRIUrB8JhEZtgs5gEg1GMFk02m82oGI02m+9xezCOczv/uwv3fvAwc/PzfXOzcdqzWdaBDdiGPdiHdjE+DS3RNDuCfsn8idQ/g3OH3BdwKf0e96/gumTfYcncLdzBPTzAo+RZ+f0Cr/AG7/AJX4738x1wtz9FO5PX/50n6UXMNdfg/0lERERERERERERERETpdedHBvDRql4nq0cXtW9af98qdRby0Vvp8K4W0V+C5Xw0t4J2bfjeBp3cnEu1brnnCTYNa7eKdz91XP7WO9Lb4GqRb7cY6xbtAdqeVOsY/QGcevw/tb6OT85YhvfKYEx9CMuxKsKnrs+eJtVInVvHJ0eVYVvTZk2siFVLOCjb61PTZX3MdVWEyP7fjzpmMxdzTyq2Ebue6x61nXRGnzndWpf1an7dXmGYE4Y1ptqqKsK1nu26Ju0ty+maV2Rpvk+qnDZjKUIobUiesdAQE/jmCTmHmsskpFZsVYbtmXRcaoSGUPomunW2derQhDPFjtT1Q/eb8vnm990fq35oHVt11bU9m89c7DNI8Qs=",UB=0,CB=-3;function NB(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function zB(t,e){this.source=t,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=e,this.destLen=0,this.ltree=new NB,this.dtree=new NB}var DB=new NB,jB=new NB,WB=new Uint8Array(30),FB=new Uint16Array(30),KB=new Uint8Array(30),qB=new Uint16Array(30),VB=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),HB=new NB,$B=new Uint8Array(320);function ZB(t,e,r,n){var i,o;for(i=0;i<r;++i)t[i]=0;for(i=0;i<30-r;++i)t[i+r]=i/r|0;for(o=n,i=0;i<30;++i)e[i]=o,o+=1<<t[i]}var GB=new Uint16Array(16);function YB(t,e,r,n){var i,o;for(i=0;i<16;++i)t.table[i]=0;for(i=0;i<n;++i)t.table[e[r+i]]++;for(t.table[0]=0,o=0,i=0;i<16;++i)GB[i]=o,o+=t.table[i];for(i=0;i<n;++i)e[r+i]&&(t.trans[GB[e[r+i]]++]=i)}function JB(t){t.bitcount--||(t.tag=t.source[t.sourceIndex++],t.bitcount=7);var e=1&t.tag;return t.tag>>>=1,e}function XB(t,e,r){if(!e)return r;for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var n=t.tag&65535>>>16-e;return t.tag>>>=e,t.bitcount-=e,n+r}function QB(t,e){for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var r=0,n=0,i=0,o=t.tag;do{n=2*n+(1&o),o>>>=1,++i,r+=e.table[i],n-=e.table[i]}while(n>=0);return t.tag=o,t.bitcount-=i,e.trans[r+n]}function tM(t,e,r){var n,i,o,s,a,u;for(n=XB(t,5,257),i=XB(t,5,1),o=XB(t,4,4),s=0;s<19;++s)$B[s]=0;for(s=0;s<o;++s){var c=XB(t,3,0);$B[VB[s]]=c}for(YB(HB,$B,0,19),a=0;a<n+i;){var h=QB(t,HB);switch(h){case 16:var l=$B[a-1];for(u=XB(t,2,3);u;--u)$B[a++]=l;break;case 17:for(u=XB(t,3,3);u;--u)$B[a++]=0;break;case 18:for(u=XB(t,7,11);u;--u)$B[a++]=0;break;default:$B[a++]=h}}YB(e,$B,0,n),YB(r,$B,n,i)}function eM(t,e,r){for(;;){var n,i,o,s,a=QB(t,e);if(256===a)return UB;if(a<256)t.dest[t.destLen++]=a;else for(n=XB(t,WB[a-=257],FB[a]),i=QB(t,r),s=o=t.destLen-XB(t,KB[i],qB[i]);s<o+n;++s)t.dest[t.destLen++]=t.dest[s]}}function rM(t){for(var e,r;t.bitcount>8;)t.sourceIndex--,t.bitcount-=8;if((e=256*(e=t.source[t.sourceIndex+1])+t.source[t.sourceIndex])!==(65535&~(256*t.source[t.sourceIndex+3]+t.source[t.sourceIndex+2])))return CB;for(t.sourceIndex+=4,r=e;r;--r)t.dest[t.destLen++]=t.source[t.sourceIndex++];return t.bitcount=0,UB}!function(t,e){var r;for(r=0;r<7;++r)t.table[r]=0;for(t.table[7]=24,t.table[8]=152,t.table[9]=112,r=0;r<24;++r)t.trans[r]=256+r;for(r=0;r<144;++r)t.trans[24+r]=r;for(r=0;r<8;++r)t.trans[168+r]=280+r;for(r=0;r<112;++r)t.trans[176+r]=144+r;for(r=0;r<5;++r)e.table[r]=0;for(e.table[5]=32,r=0;r<32;++r)e.trans[r]=r}(DB,jB),ZB(WB,FB,4,3),ZB(KB,qB,2,1),WB[28]=0,FB[28]=258;var nM=function(t,e){var r,n,i=new zB(t,e);do{switch(r=JB(i),XB(i,2,0)){case 0:n=rM(i);break;case 1:n=eM(i,DB,jB);break;case 2:tM(i,i.ltree,i.dtree),n=eM(i,i.ltree,i.dtree);break;default:n=CB}if(n!==UB)throw new Error("Data error")}while(!r);return i.destLen<i.dest.length?"function"==typeof i.dest.slice?i.dest.slice(0,i.destLen):i.dest.subarray(0,i.destLen):i.dest};const iM=18===new Uint8Array(new Uint32Array([305419896]).buffer)[0],oM=(t,e,r)=>{let n=t[e];t[e]=t[r],t[r]=n};var sM={swap32LE:t=>{iM&&(t=>{const e=t.length;for(let r=0;r<e;r+=4)oM(t,r,r+3),oM(t,r+1,r+2)})(t)}};const aM=nM,{swap32LE:uM}=sM;var cM=class{constructor(t){const e="function"==typeof t.readUInt32BE&&"function"==typeof t.slice;if(e||t instanceof Uint8Array){let r;if(e)this.highStart=t.readUInt32LE(0),this.errorValue=t.readUInt32LE(4),r=t.readUInt32LE(8),t=t.slice(12);else{const e=new DataView(t.buffer);this.highStart=e.getUint32(0,!0),this.errorValue=e.getUint32(4,!0),r=e.getUint32(8,!0),t=t.subarray(12)}t=aM(t,new Uint8Array(r)),t=aM(t,new Uint8Array(r)),uM(t),this.data=new Uint32Array(t.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=t)}get(t){let e;return t<0||t>1114111?this.errorValue:t<55296||t>56319&&t<=65535?(e=(this.data[t>>5]<<2)+(31&t),this.data[e]):t<=65535?(e=(this.data[2048+(t-55296>>5)]<<2)+(31&t),this.data[e]):t<this.highStart?(e=this.data[2080+(t>>11)],e=this.data[e+(t>>5&63)],e=(e<<2)+(31&t),this.data[e]):this.data[this.data.length-4]}},hM={exports:{}};"undefined"!=typeof self?self:"undefined"!=typeof window&&window,hM.exports=function(){var t="3.7.5",e=t,r="function"==typeof atob,n="function"==typeof btoa,i="function"==typeof Buffer,o="function"==typeof TextDecoder?new TextDecoder:void 0,s="function"==typeof TextEncoder?new TextEncoder:void 0,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",u=Array.prototype.slice.call(a),c=function(t){var e={};return t.forEach((function(t,r){return e[t]=r})),e}(u),h=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,l=String.fromCharCode.bind(String),f="function"==typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):function(t){return new Uint8Array(Array.prototype.slice.call(t,0))},d=function(t){return t.replace(/=/g,"").replace(/[+\/]/g,(function(t){return"+"==t?"-":"_"}))},p=function(t){return t.replace(/[^A-Za-z0-9\+\/]/g,"")},y=function(t){for(var e,r,n,i,o="",s=t.length%3,a=0;a<t.length;){if((r=t.charCodeAt(a++))>255||(n=t.charCodeAt(a++))>255||(i=t.charCodeAt(a++))>255)throw new TypeError("invalid character found");o+=u[(e=r<<16|n<<8|i)>>18&63]+u[e>>12&63]+u[e>>6&63]+u[63&e]}return s?o.slice(0,s-3)+"===".substring(s):o},g=n?function(t){return btoa(t)}:i?function(t){return Buffer.from(t,"binary").toString("base64")}:y,m=i?function(t){return Buffer.from(t).toString("base64")}:function(t){for(var e=4096,r=[],n=0,i=t.length;n<i;n+=e)r.push(l.apply(null,t.subarray(n,n+e)));return g(r.join(""))},w=function(t,e){return void 0===e&&(e=!1),e?d(m(t)):m(t)},b=function(t){if(t.length<2)return(e=t.charCodeAt(0))<128?t:e<2048?l(192|e>>>6)+l(128|63&e):l(224|e>>>12&15)+l(128|e>>>6&63)+l(128|63&e);var e=65536+1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320);return l(240|e>>>18&7)+l(128|e>>>12&63)+l(128|e>>>6&63)+l(128|63&e)},v=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,_=function(t){return t.replace(v,b)},k=i?function(t){return Buffer.from(t,"utf8").toString("base64")}:s?function(t){return m(s.encode(t))}:function(t){return g(_(t))},E=function(t,e){return void 0===e&&(e=!1),e?d(k(t)):k(t)},S=function(t){return E(t,!0)},A=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,x=function(t){switch(t.length){case 4:var e=((7&t.charCodeAt(0))<<18|(63&t.charCodeAt(1))<<12|(63&t.charCodeAt(2))<<6|63&t.charCodeAt(3))-65536;return l(55296+(e>>>10))+l(56320+(1023&e));case 3:return l((15&t.charCodeAt(0))<<12|(63&t.charCodeAt(1))<<6|63&t.charCodeAt(2));default:return l((31&t.charCodeAt(0))<<6|63&t.charCodeAt(1))}},I=function(t){return t.replace(A,x)},B=function(t){if(t=t.replace(/\s+/g,""),!h.test(t))throw new TypeError("malformed base64.");t+="==".slice(2-(3&t.length));for(var e,r,n,i="",o=0;o<t.length;)e=c[t.charAt(o++)]<<18|c[t.charAt(o++)]<<12|(r=c[t.charAt(o++)])<<6|(n=c[t.charAt(o++)]),i+=64===r?l(e>>16&255):64===n?l(e>>16&255,e>>8&255):l(e>>16&255,e>>8&255,255&e);return i},M=r?function(t){return atob(p(t))}:i?function(t){return Buffer.from(t,"base64").toString("binary")}:B,P=i?function(t){return f(Buffer.from(t,"base64"))}:function(t){return f(M(t).split("").map((function(t){return t.charCodeAt(0)})))},L=function(t){return P(T(t))},O=i?function(t){return Buffer.from(t,"base64").toString("utf8")}:o?function(t){return o.decode(P(t))}:function(t){return I(M(t))},T=function(t){return p(t.replace(/[-_]/g,(function(t){return"-"==t?"+":"/"})))},R=function(t){return O(T(t))},U=function(t){if("string"!=typeof t)return!1;var e=t.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(e)||!/[^\s0-9a-zA-Z\-_]/.test(e)},C=function(t){return{value:t,enumerable:!1,writable:!0,configurable:!0}},N=function(){var t=function(t,e){return Object.defineProperty(String.prototype,t,C(e))};t("fromBase64",(function(){return R(this)})),t("toBase64",(function(t){return E(this,t)})),t("toBase64URI",(function(){return E(this,!0)})),t("toBase64URL",(function(){return E(this,!0)})),t("toUint8Array",(function(){return L(this)}))},z=function(){var t=function(t,e){return Object.defineProperty(Uint8Array.prototype,t,C(e))};t("toBase64",(function(t){return w(this,t)})),t("toBase64URI",(function(){return w(this,!0)})),t("toBase64URL",(function(){return w(this,!0)}))},D=function(){N(),z()},j={version:t,VERSION:e,atob:M,atobPolyfill:B,btoa:g,btoaPolyfill:y,fromBase64:R,toBase64:E,encode:E,encodeURI:S,encodeURL:S,utob:_,btou:I,decode:R,isValid:U,fromUint8Array:w,toUint8Array:L,extendString:N,extendUint8Array:z,extendBuiltins:D,Base64:{}};return Object.keys(j).forEach((function(t){return j.Base64[t]=j[t]})),j}();const lM={Other:0,CR:1,LF:2,Control:4,Extend:8,ZWJ:16,Regional_Indicator:32,Prepend:64,SpacingMark:128,L:256,V:512,T:1024,LV:2048,LVT:4096,Extended_Pictographic:8192},fM=TB,dM=RB,pM=cM,yM=hM.exports.Base64,gM=new pM(yM.toUint8Array(fM)),mM=new pM(yM.toUint8Array(dM));function wM(t,e){return 0!=(t&e)}const bM=0,vM=1,_M=2;function kM(t,e){const r=t.length;let n=0,i=bM;for(let o=e;o+1<r;o++){const r=t[o+0],s=t[o+1];switch(wM(r,lM.Regional_Indicator)||(n=0),i){case _M:case bM:i=wM(r,lM.Extended_Pictographic)?vM:bM;break;case vM:i=wM(r,lM.Extend)?vM:wM(r,lM.ZWJ)&&wM(s,lM.Extended_Pictographic)?_M:bM}if(!wM(r,lM.CR)||!wM(s,lM.LF)){if(wM(r,lM.Control|lM.CR|lM.LF))return o+1-e;if(wM(s,lM.Control|lM.CR|lM.LF))return o+1-e;if(!(wM(r,lM.L)&&wM(s,lM.L|lM.V|lM.LV|lM.LVT)||wM(r,lM.LV|lM.V)&&wM(s,lM.V|lM.T)||wM(r,lM.LVT|lM.T)&&wM(s,lM.T)||wM(s,lM.Extend|lM.ZWJ)||wM(s,lM.SpacingMark)||wM(r,lM.Prepend)||i===_M)){if(!wM(r,lM.Regional_Indicator)||!wM(s,lM.Regional_Indicator)||n%2!=0)return o+1-e;n++}}}return r-e}var EM=function(t){const e=[],r=[0],n=[];for(let e=0;e<t.length;){const i=t.codePointAt(e);n.push(gM.get(i)|mM.get(i)),e+=i>65535?2:1,r.push(e)}for(let i=0;i<n.length;){const o=kM(n,i),s=r[i],a=r[i+o];e.push(t.slice(s,a)),i+=o}return e},SM=e(EM);const AM=t=>{const e=xf+t,r=Sf(n.Buffer.from(e,"utf8")).slice(2);return n.Buffer.from(r,"hex")},xM=(t,e,r)=>{const i=[t];e?i.push(e.toBuffer()):i.push(n.Buffer.alloc(32)),r?i.push(r.toBuffer()):i.push(n.Buffer.alloc(32));const[o]=Wo.findProgramAddressSync(i,Af);return o};async function IM(t,e){const r=AM(e.toBase58()),n=xM(r,Lf),{registry:i}=await ah.retrieve(t,n);if(!i.data)throw new Dc(zc.NoAccountData);const o=new ne(i.data.slice(0,4),"le").toNumber();return i.data.slice(4,4+o).toString()}async function BM(t,e){let r=[];for(let t of e){const e=AM(t.toBase58()),n=xM(e,Lf);r.push(n)}return(await ah.retrieveBatch(t,r)).map((t=>{if(void 0===t||void 0===t.data)return;let e=new ne(t.data.slice(0,4),"le").toNumber();return t.data.slice(4,4+e).toString()}))}const MM=async(t,e)=>{const r=[{memcmp:{offset:0,bytes:e.toBase58()}},{memcmp:{offset:64,bytes:Lf.toBase58()}}],n=await t.getProgramAccounts(Af,{filters:r}),i=await IM(t,e),o=n.map((t=>{var e;return null===(e=t.account.data.slice(97).toString("utf-8"))||void 0===e?void 0:e.split("\0").join("")})),s=o.map((t=>LM(t+"."+i).pubkey)),a=await t.getMultipleAccountsInfo(s);return o.filter(((t,e)=>!!a[e]))},PM=(t,e=If,r)=>{let n=AM(t);return{pubkey:xM(n,r,e),hashed:n}},LM=(t,e)=>{t.endsWith(".sol")&&(t=t.slice(0,-4));const r=e===OB.V2?AB:void 0,i=t.split(".");if(2===i.length){const t=n.Buffer.from([e||0]).toString().concat(i[0]),{pubkey:o}=PM(i[1]);return{...PM(t,o,r),isSub:!0,parent:o}}if(3===i.length&&e){const{pubkey:t}=PM(i[2]),{pubkey:n}=PM("\0".concat(i[1]),t),o=e===OB.V2?"":"";return{...PM(o.concat(i[0]),n,r),isSub:!0,parent:t,isSubRecord:!0}}if(i.length>=3)throw new Dc(zc.InvalidInput);return{...PM(t,If),isSub:!1,parent:void 0}};async function OM(t,e){const r=[{memcmp:{offset:32,bytes:e.toBase58()}},{memcmp:{offset:0,bytes:If.toBase58()}}];return(await t.getProgramAccounts(Af,{filters:r})).map((t=>t.pubkey))}async function TM(t,e){const r=await OM(t,e),n=await BM(t,r);return r.map(((t,e)=>({pubKey:t,domain:n[e]})))}const RM=async t=>{const e=[{memcmp:{offset:0,bytes:If.toBase58()}}];return await t.getProgramAccounts(Af,{dataSlice:{offset:32,length:32},filters:e})},UM=(t,e)=>{const{pubkey:r,parent:n}=LM(t),i=AM(r.toBase58());return xM(i,Lf,e?n:void 0)},CM=(t,e)=>{if(!t)throw new Dc(e)},NM=async(t,e)=>{const r=await sh(t,e),n=await BM(t,r.map((t=>t.nameAccount)));return n.map(((t,e)=>({key:r[e].nameAccount,mint:r[e].nftMint,reverse:t}))).filter((t=>!!t.reverse))},zM=t=>{switch(SM(t).length){case 1:return 750;case 2:return 700;case 3:return 640;case 4:return 160;default:return 20}};var DM={},jM={};function WM(t,e,r,n,i){var o=(1<<n)-1,s=0,a=0,u=0;if(t.forEach((function(t){for(s=(s<<e)+t,a+=e;a>=n;)a-=n,r[u]=s>>a&o,u+=1})),i)a>0&&(r[u]=s<<n-a&o);else{if(a>=e)throw new Error("Excessive padding: ".concat(a," (max ").concat(e-1," allowed)"));if(s%(1<<a)!=0)throw new Error("Non-zero padding")}}Object.defineProperty(jM,"__esModule",{value:!0}),jM.createBitArray=function(t){return new Uint8Array(t)},jM.fromBits=function(t,e,r){if(e>8||e<1)throw new RangeError("Invalid bits per element; 1 to 8 expected");return WM(t,e,r,8,!1),r},jM.toBits=function(t,e,r){if(e>8||e<1)throw new RangeError("Invalid bits per element; 1 to 8 expected");return WM(t,8,r,e,!0),r};var FM={};Object.defineProperty(FM,"__esModule",{value:!0}),FM.CHECKSUM_LENGTH=void 0,FM.createChecksum=function(t,e){var r;switch(e){case"bech32":r=1;break;case"bech32m":r=VM;break;default:throw Error("Invalid encoding value: ".concat(e,"; expected bech32 or bech32m"))}for(var n=JM(t)^r,i=0;i<ZM;i+=1){var o=5*(5-i);t[t.length-ZM+i]=n>>o&31}},FM.decode=QM,FM.decodeWithPrefix=function(t,e){var r=e.length+2*t.length+1,n=(0,KM.createBitArray)(r);return XM(t,n.subarray(0,2*t.length+1)),QM(e,n.subarray(2*t.length+1)),n},FM.detectCase=function(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"message",r=!1,n=!1,i=0;i<t.length;i+=1){var o=t.charCodeAt(i);if(o<HM||o>$M)throw new TypeError("Invalid char in ".concat(e,": ").concat(o,"; ")+"should be in ASCII range ".concat(HM,"-").concat($M));n=n||o>=65&&o<=90,r=r||o>=97&&o<=122}if(r&&n)throw new TypeError("Mixed-case ".concat(e));return n?"upper":r?"lower":null},FM.encode=function(t){return t.reduce((function(t,e){return t+qM[e]}),"")},FM.expandPrefix=XM,FM.verifyChecksum=function(t){switch(JM(t)){case 1:return"bech32";case VM:return"bech32m";default:return}};var KM=jM,qM="qpzry9x8gf2tvdw0s3jn54khce6mua7l",VM=734539939,HM=33,$M=126,ZM=6;FM.CHECKSUM_LENGTH=ZM;var GM=function(){for(var t=new Map,e=0;e<qM.length;e+=1)t.set(qM[e],e);return t}(),YM=[996825010,642813549,513874426,1027748829,705979059];function JM(t){return t.reduce((function(t,e){var r=t>>25,n=(33554431&t)<<5^e;return YM.reduce((function(t,e,n){return 0==(r>>n&1)?t:t^e}),n)}),1)}function XM(t,e){for(var r=0;r<t.length;r+=1){var n=t.charCodeAt(r);e[r]=n>>5,e[r+t.length+1]=31&n}e[t.length]=0}function QM(t,e){for(var r=e||(0,KM.createBitArray)(t.length),n=0;n<t.length;n+=1){var i=GM.get(t[n]);if(void 0===i)throw new Error("Invalid char in message: ".concat(t[n]));r[n]=i}return r}Object.defineProperty(DM,"__esModule",{value:!0}),DM.BitcoinAddress=void 0;var tP=DM.decode=function(t){var e=cP(t),r=e.prefix,n=e.encoding,i=e.data;return{prefix:r,encoding:n,data:aP(i)}};DM.decodeTo5BitArray=cP;var eP=DM.encode=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"bech32";return uP(t,sP(e),r)};DM.encode5BitArray=uP,DM.from5BitArray=aP,DM.to5BitArray=sP;var rP=jM,nP=FM;function iP(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}var oP=90;function sP(t,e){var r=Math.ceil(8*t.length/5),n=e||(0,rP.createBitArray)(r);return(0,rP.toBits)(t,5,n)}function aP(t,e){var r=Math.floor(5*t.length/8),n=e||new Uint8Array(r);return(0,rP.fromBits)(t,5,n)}function uP(t,e){var r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"bech32",i=2*t.length+1+e.length+nP.CHECKSUM_LENGTH;if(i-t.length>oP)throw new Error("Message to be produced is too long (max ".concat(oP," supported)"));var o=null!==(r=(0,nP.detectCase)(t,"prefix"))&&void 0!==r?r:"lower",s=(0,rP.createBitArray)(i);(0,nP.expandPrefix)(t.toLowerCase(),s.subarray(0,2*t.length+1)),s.subarray(2*t.length+1,s.length-nP.CHECKSUM_LENGTH).set(e),(0,nP.createChecksum)(s,n);var a=(0,nP.encode)(s.subarray(2*t.length+1));return"upper"===o&&(a=a.toUpperCase()),"".concat(t,"1").concat(a)}function cP(t){if(t.length>oP)throw new TypeError("Message too long; max ".concat(oP," expected"));(0,nP.detectCase)(t);var e=t.toLowerCase(),r=e.lastIndexOf("1");if(r<0)throw new Error('No separator char ("1") found');if(r>t.length-nP.CHECKSUM_LENGTH-1)throw new Error("Data part of the message too short (at least ".concat(nP.CHECKSUM_LENGTH," chars expected)"));var n=e.substring(0,r),i=(0,nP.decodeWithPrefix)(n,e.substring(r+1)),o=(0,nP.verifyChecksum)(i);if(void 0===o)throw new Error("Invalid checksum");return{prefix:n,encoding:o,data:i.subarray(2*n.length+1,i.length-nP.CHECKSUM_LENGTH)}}var hP=function(){function t(e,r,n){if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),"bc"!==e&&"tb"!==e)throw new Error('Invalid human-readable prefix, "bc" or "tb" expected');if(r<0||r>16)throw new RangeError("Invalid scriptVersion, value in range [0, 16] expected");if(n.length<2||n.length>40)throw new RangeError("Invalid script length: expected 2 to 40 bytes");if(0===r&&20!==n.length&&32!==n.length)throw new Error("Invalid v0 script length: expected 20 or 32 bytes");this.prefix=e,this.scriptVersion=r,this.data=n}var e,r,n;return e=t,r=[{key:"type",value:function(){if(0===this.scriptVersion)switch(this.data.length){case 20:return"p2wpkh";case 32:return"p2wsh";default:return}}},{key:"encode",value:function(){var t=Math.ceil(8*this.data.length/5),e=(0,rP.createBitArray)(t+1);e[0]=this.scriptVersion,sP(this.data,e.subarray(1));var r=0===this.scriptVersion?"bech32":"bech32m";return uP(this.prefix,e,r)}}],n=[{key:"decode",value:function(t){var e=cP(t),r=e.prefix,n=e.data,i=e.encoding;if("bc"!==r&&"tb"!==r)throw new Error('Invalid human-readable prefix, "bc" or "tb" expected');var o=n[0];if(0===o&&"bech32"!==i)throw Error("Unexpected encoding ".concat(i," used for version 0 script"));if(o>0&&"bech32m"!==i)throw Error("Unexpected encoding ".concat(i," used for version ").concat(o," script"));return new this(r,o,aP(n.subarray(1)))}}],r&&iP(e.prototype,r),n&&iP(e,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();DM.BitcoinAddress=hP;var lP={exports:{}};!function(e){!function(t){const r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp(`^${r}\\.${r}\\.${r}\\.${r}$`,"i"),threeOctet:new RegExp(`^${r}\\.${r}\\.${r}$`,"i"),twoOctet:new RegExp(`^${r}\\.${r}$`,"i"),longValue:new RegExp(`^${r}$`,"i")},i=new RegExp("^0[0-7]+$","i"),o=new RegExp("^0x[a-f0-9]+$","i"),s="%[0-9a-z]{1,}",a="(?:[0-9a-f]+::?)+",u={zoneIndex:new RegExp(s,"i"),native:new RegExp(`^(::)?(${a})?([0-9a-f]+)?(::)?(${s})?$`,"i"),deprecatedTransitional:new RegExp(`^(?:::)(${r}\\.${r}\\.${r}\\.${r}(${s})?)$`,"i"),transitional:new RegExp(`^((?:${a})|(?:::)(?:${a})?)${r}\\.${r}\\.${r}\\.${r}(${s})?$`,"i")};function c(t,e){if(t.indexOf("::")!==t.lastIndexOf("::"))return null;let r,n,i=0,o=-1,s=(t.match(u.zoneIndex)||[])[0];for(s&&(s=s.substring(1),t=t.replace(/%.+$/,""));(o=t.indexOf(":",o+1))>=0;)i++;if("::"===t.substr(0,2)&&i--,"::"===t.substr(-2,2)&&i--,i>e)return null;for(n=e-i,r=":";n--;)r+="0:";return":"===(t=t.replace("::",r))[0]&&(t=t.slice(1)),":"===t[t.length-1]&&(t=t.slice(0,-1)),e=function(){const e=t.split(":"),r=[];for(let t=0;t<e.length;t++)r.push(parseInt(e[t],16));return r}(),{parts:e,zoneId:s}}function h(t,e,r,n){if(t.length!==e.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");let i,o=0;for(;n>0;){if(i=r-n,i<0&&(i=0),t[o]>>i!=e[o]>>i)return!1;n-=r,o+=1}return!0}function l(t){if(o.test(t))return parseInt(t,16);if("0"===t[0]&&!isNaN(parseInt(t[1],10))){if(i.test(t))return parseInt(t,8);throw new Error(`ipaddr: cannot parse ${t} as octal`)}return parseInt(t,10)}function f(t,e){for(;t.length<e;)t=`0${t}`;return t}const d={};d.IPv4=function(){function t(t){if(4!==t.length)throw new Error("ipaddr: ipv4 octet count should be 4");let e,r;for(e=0;e<t.length;e++)if(r=t[e],!(0<=r&&r<=255))throw new Error("ipaddr: ipv4 octet should fit in 8 bits");this.octets=t}return t.prototype.SpecialRanges={unspecified:[[new t([0,0,0,0]),8]],broadcast:[[new t([255,255,255,255]),32]],multicast:[[new t([224,0,0,0]),4]],linkLocal:[[new t([169,254,0,0]),16]],loopback:[[new t([127,0,0,0]),8]],carrierGradeNat:[[new t([100,64,0,0]),10]],private:[[new t([10,0,0,0]),8],[new t([172,16,0,0]),12],[new t([192,168,0,0]),16]],reserved:[[new t([192,0,0,0]),24],[new t([192,0,2,0]),24],[new t([192,88,99,0]),24],[new t([198,18,0,0]),15],[new t([198,51,100,0]),24],[new t([203,0,113,0]),24],[new t([240,0,0,0]),4]]},t.prototype.kind=function(){return"ipv4"},t.prototype.match=function(t,e){let r;if(void 0===e&&(r=t,t=r[0],e=r[1]),"ipv4"!==t.kind())throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one");return h(this.octets,t.octets,8,e)},t.prototype.prefixLengthFromSubnetMask=function(){let t=0,e=!1;const r={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0};let n,i,o;for(n=3;n>=0;n-=1){if(i=this.octets[n],!(i in r))return null;if(o=r[i],e&&0!==o)return null;8!==o&&(e=!0),t+=o}return 32-t},t.prototype.range=function(){return d.subnetMatch(this,this.SpecialRanges)},t.prototype.toByteArray=function(){return this.octets.slice(0)},t.prototype.toIPv4MappedAddress=function(){return d.IPv6.parse(`::ffff:${this.toString()}`)},t.prototype.toNormalizedString=function(){return this.toString()},t.prototype.toString=function(){return this.octets.join(".")},t}(),d.IPv4.broadcastAddressFromCIDR=function(t){try{const e=this.parseCIDR(t),r=e[0].toByteArray(),n=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[];let o=0;for(;o<4;)i.push(parseInt(r[o],10)|255^parseInt(n[o],10)),o++;return new this(i)}catch(t){throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},d.IPv4.isIPv4=function(t){return null!==this.parser(t)},d.IPv4.isValid=function(t){try{return new this(this.parser(t)),!0}catch(t){return!1}},d.IPv4.isValidFourPartDecimal=function(t){return!(!d.IPv4.isValid(t)||!t.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},d.IPv4.networkAddressFromCIDR=function(t){let e,r,n,i,o;try{for(e=this.parseCIDR(t),n=e[0].toByteArray(),o=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[],r=0;r<4;)i.push(parseInt(n[r],10)&parseInt(o[r],10)),r++;return new this(i)}catch(t){throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},d.IPv4.parse=function(t){const e=this.parser(t);if(null===e)throw new Error("ipaddr: string is not formatted like an IPv4 Address");return new this(e)},d.IPv4.parseCIDR=function(t){let e;if(e=t.match(/^(.+)\/(\d+)$/)){const t=parseInt(e[2]);if(t>=0&&t<=32){const r=[this.parse(e[1]),t];return Object.defineProperty(r,"toString",{value:function(){return this.join("/")}}),r}}throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},d.IPv4.parser=function(t){let e,r,i;if(e=t.match(n.fourOctet))return function(){const t=e.slice(1,6),n=[];for(let e=0;e<t.length;e++)r=t[e],n.push(l(r));return n}();if(e=t.match(n.longValue)){if(i=l(e[1]),i>4294967295||i<0)throw new Error("ipaddr: address outside defined range");return function(){const t=[];let e;for(e=0;e<=24;e+=8)t.push(i>>e&255);return t}().reverse()}return(e=t.match(n.twoOctet))?function(){const t=e.slice(1,4),r=[];if(i=l(t[1]),i>16777215||i<0)throw new Error("ipaddr: address outside defined range");return r.push(l(t[0])),r.push(i>>16&255),r.push(i>>8&255),r.push(255&i),r}():(e=t.match(n.threeOctet))?function(){const t=e.slice(1,5),r=[];if(i=l(t[2]),i>65535||i<0)throw new Error("ipaddr: address outside defined range");return r.push(l(t[0])),r.push(l(t[1])),r.push(i>>8&255),r.push(255&i),r}():null},d.IPv4.subnetMaskFromPrefixLength=function(t){if((t=parseInt(t))<0||t>32)throw new Error("ipaddr: invalid IPv4 prefix length");const e=[0,0,0,0];let r=0;const n=Math.floor(t/8);for(;r<n;)e[r]=255,r++;return n<4&&(e[n]=Math.pow(2,t%8)-1<<8-t%8),new this(e)},d.IPv6=function(){function t(t,e){let r,n;if(16===t.length)for(this.parts=[],r=0;r<=14;r+=2)this.parts.push(t[r]<<8|t[r+1]);else{if(8!==t.length)throw new Error("ipaddr: ipv6 part count should be 8 or 16");this.parts=t}for(r=0;r<this.parts.length;r++)if(n=this.parts[r],!(0<=n&&n<=65535))throw new Error("ipaddr: ipv6 part should fit in 16 bits");e&&(this.zoneId=e)}return t.prototype.SpecialRanges={unspecified:[new t([0,0,0,0,0,0,0,0]),128],linkLocal:[new t([65152,0,0,0,0,0,0,0]),10],multicast:[new t([65280,0,0,0,0,0,0,0]),8],loopback:[new t([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new t([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new t([0,0,0,0,0,65535,0,0]),96],rfc6145:[new t([0,0,0,0,65535,0,0,0]),96],rfc6052:[new t([100,65435,0,0,0,0,0,0]),96],"6to4":[new t([8194,0,0,0,0,0,0,0]),16],teredo:[new t([8193,0,0,0,0,0,0,0]),32],reserved:[[new t([8193,3512,0,0,0,0,0,0]),32]],benchmarking:[new t([8193,2,0,0,0,0,0,0]),48],amt:[new t([8193,3,0,0,0,0,0,0]),32],as112v6:[new t([8193,4,274,0,0,0,0,0]),48],deprecated:[new t([8193,16,0,0,0,0,0,0]),28],orchid2:[new t([8193,32,0,0,0,0,0,0]),28]},t.prototype.isIPv4MappedAddress=function(){return"ipv4Mapped"===this.range()},t.prototype.kind=function(){return"ipv6"},t.prototype.match=function(t,e){let r;if(void 0===e&&(r=t,t=r[0],e=r[1]),"ipv6"!==t.kind())throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one");return h(this.parts,t.parts,16,e)},t.prototype.prefixLengthFromSubnetMask=function(){let t=0,e=!1;const r={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0};let n,i;for(let o=7;o>=0;o-=1){if(n=this.parts[o],!(n in r))return null;if(i=r[n],e&&0!==i)return null;16!==i&&(e=!0),t+=i}return 128-t},t.prototype.range=function(){return d.subnetMatch(this,this.SpecialRanges)},t.prototype.toByteArray=function(){let t;const e=[],r=this.parts;for(let n=0;n<r.length;n++)t=r[n],e.push(t>>8),e.push(255&t);return e},t.prototype.toFixedLengthString=function(){const t=function(){const t=[];for(let e=0;e<this.parts.length;e++)t.push(f(this.parts[e].toString(16),4));return t}.call(this).join(":");let e="";return this.zoneId&&(e=`%${this.zoneId}`),t+e},t.prototype.toIPv4Address=function(){if(!this.isIPv4MappedAddress())throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4");const t=this.parts.slice(-2),e=t[0],r=t[1];return new d.IPv4([e>>8,255&e,r>>8,255&r])},t.prototype.toNormalizedString=function(){const t=function(){const t=[];for(let e=0;e<this.parts.length;e++)t.push(this.parts[e].toString(16));return t}.call(this).join(":");let e="";return this.zoneId&&(e=`%${this.zoneId}`),t+e},t.prototype.toRFC5952String=function(){const t=/((^|:)(0(:|$)){2,})/g,e=this.toNormalizedString();let r,n=0,i=-1;for(;r=t.exec(e);)r[0].length>i&&(n=r.index,i=r[0].length);return i<0?e:`${e.substring(0,n)}::${e.substring(n+i)}`},t.prototype.toString=function(){return this.toRFC5952String()},t}(),d.IPv6.broadcastAddressFromCIDR=function(t){try{const e=this.parseCIDR(t),r=e[0].toByteArray(),n=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[];let o=0;for(;o<16;)i.push(parseInt(r[o],10)|255^parseInt(n[o],10)),o++;return new this(i)}catch(t){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${t})`)}},d.IPv6.isIPv6=function(t){return null!==this.parser(t)},d.IPv6.isValid=function(t){if("string"==typeof t&&-1===t.indexOf(":"))return!1;try{const e=this.parser(t);return new this(e.parts,e.zoneId),!0}catch(t){return!1}},d.IPv6.networkAddressFromCIDR=function(t){let e,r,n,i,o;try{for(e=this.parseCIDR(t),n=e[0].toByteArray(),o=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[],r=0;r<16;)i.push(parseInt(n[r],10)&parseInt(o[r],10)),r++;return new this(i)}catch(t){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${t})`)}},d.IPv6.parse=function(t){const e=this.parser(t);if(null===e.parts)throw new Error("ipaddr: string is not formatted like an IPv6 Address");return new this(e.parts,e.zoneId)},d.IPv6.parseCIDR=function(t){let e,r,n;if((r=t.match(/^(.+)\/(\d+)$/))&&(e=parseInt(r[2]),e>=0&&e<=128))return n=[this.parse(r[1]),e],Object.defineProperty(n,"toString",{value:function(){return this.join("/")}}),n;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},d.IPv6.parser=function(t){let e,r,n,i,o,s;if(n=t.match(u.deprecatedTransitional))return this.parser(`::ffff:${n[1]}`);if(u.native.test(t))return c(t,8);if((n=t.match(u.transitional))&&(s=n[6]||"",e=c(n[1].slice(0,-1)+s,6),e.parts)){for(o=[parseInt(n[2]),parseInt(n[3]),parseInt(n[4]),parseInt(n[5])],r=0;r<o.length;r++)if(i=o[r],!(0<=i&&i<=255))return null;return e.parts.push(o[0]<<8|o[1]),e.parts.push(o[2]<<8|o[3]),{parts:e.parts,zoneId:e.zoneId}}return null},d.IPv6.subnetMaskFromPrefixLength=function(t){if((t=parseInt(t))<0||t>128)throw new Error("ipaddr: invalid IPv6 prefix length");const e=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];let r=0;const n=Math.floor(t/8);for(;r<n;)e[r]=255,r++;return n<16&&(e[n]=Math.pow(2,t%8)-1<<8-t%8),new this(e)},d.fromByteArray=function(t){const e=t.length;if(4===e)return new d.IPv4(t);if(16===e)return new d.IPv6(t);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},d.isValid=function(t){return d.IPv6.isValid(t)||d.IPv4.isValid(t)},d.parse=function(t){if(d.IPv6.isValid(t))return d.IPv6.parse(t);if(d.IPv4.isValid(t))return d.IPv4.parse(t);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},d.parseCIDR=function(t){try{return d.IPv6.parseCIDR(t)}catch(e){try{return d.IPv4.parseCIDR(t)}catch(t){throw new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},d.process=function(t){const e=this.parse(t);return"ipv6"===e.kind()&&e.isIPv4MappedAddress()?e.toIPv4Address():e},d.subnetMatch=function(t,e,r){let n,i,o,s;for(i in null==r&&(r="unicast"),e)if(Object.prototype.hasOwnProperty.call(e,i))for(o=e[i],!o[0]||o[0]instanceof Array||(o=[o]),n=0;n<o.length;n++)if(s=o[n],t.kind()===s[0].kind()&&t.match.apply(t,s))return i;return r},e.exports?e.exports=d:t.ipaddr=d}(t)}(lP);var fP=e(lP.exports);const dP=2147483647,pP=36,yP={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},gP=Math.floor,mP=String.fromCharCode;function wP(t){throw new RangeError(yP[t])}const bP=function(t,e){return t+22+75*(t<26)-((0!=e)<<5)},vP=function(t,e,r){let n=0;for(t=r?gP(t/700):t>>1,t+=gP(t/e);t>455;n+=pP)t=gP(t/35);return gP(n+36*t/(t+38))},_P=function(t){const e=[];t=function(t){const e=[];let r=0;const n=t.length;for(;r<n;){const i=t.charCodeAt(r++);if(i>=55296&&i<=56319&&r<n){const n=t.charCodeAt(r++);56320==(64512&n)?e.push(((1023&i)<<10)+(1023&n)+65536):(e.push(i),r--)}else e.push(i)}return e}(t);const r=t.length;let n=128,i=0,o=72;for(const r of t)r<128&&e.push(mP(r));const s=e.length;let a=s;for(s&&e.push("-");a<r;){let r=dP;for(const e of t)e>=n&&e<r&&(r=e);const u=a+1;r-n>gP((dP-i)/u)&&wP("overflow"),i+=(r-n)*u,n=r;for(const r of t)if(r<n&&++i>dP&&wP("overflow"),r===n){let t=i;for(let r=pP;;r+=pP){const n=r<=o?1:r>=o+26?26:r-o;if(t<n)break;const i=t-n,s=pP-n;e.push(mP(bP(n+i%s,0))),t=gP(i/s)}e.push(mP(bP(t,0))),o=vP(i,u,a===s),i=0,++a}++i,++n}return e.join("")};function kP(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var EP={exports:{}};!function(t){var e=function(t){var e,r=new Float64Array(16);if(t)for(e=0;e<t.length;e++)r[e]=t[e];return r},r=function(){throw new Error("no PRNG")},n=new Uint8Array(16),i=new Uint8Array(32);i[0]=9;var o=e(),s=e([1]),a=e([56129,1]),u=e([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),c=e([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),h=e([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),l=e([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),f=e([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function d(t,e,r,n){t[e]=r>>24&255,t[e+1]=r>>16&255,t[e+2]=r>>8&255,t[e+3]=255&r,t[e+4]=n>>24&255,t[e+5]=n>>16&255,t[e+6]=n>>8&255,t[e+7]=255&n}function p(t,e,r,n,i){var o,s=0;for(o=0;o<i;o++)s|=t[e+o]^r[n+o];return(1&s-1>>>8)-1}function y(t,e,r,n){return p(t,e,r,n,16)}function g(t,e,r,n){return p(t,e,r,n,32)}function m(t,e,r,n){!function(t,e,r,n){for(var i,o=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,a=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,u=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,c=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,h=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,f=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,d=255&e[8]|(255&e[9])<<8|(255&e[10])<<16|(255&e[11])<<24,p=255&e[12]|(255&e[13])<<8|(255&e[14])<<16|(255&e[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,g=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,m=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,w=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,v=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,_=o,k=s,E=a,S=u,A=c,x=h,I=l,B=f,M=d,P=p,L=y,O=g,T=m,R=w,U=b,C=v,N=0;N<20;N+=2)_^=(i=(T^=(i=(M^=(i=(A^=(i=_+T|0)<<7|i>>>25)+_|0)<<9|i>>>23)+A|0)<<13|i>>>19)+M|0)<<18|i>>>14,x^=(i=(k^=(i=(R^=(i=(P^=(i=x+k|0)<<7|i>>>25)+x|0)<<9|i>>>23)+P|0)<<13|i>>>19)+R|0)<<18|i>>>14,L^=(i=(I^=(i=(E^=(i=(U^=(i=L+I|0)<<7|i>>>25)+L|0)<<9|i>>>23)+U|0)<<13|i>>>19)+E|0)<<18|i>>>14,C^=(i=(O^=(i=(B^=(i=(S^=(i=C+O|0)<<7|i>>>25)+C|0)<<9|i>>>23)+S|0)<<13|i>>>19)+B|0)<<18|i>>>14,_^=(i=(S^=(i=(E^=(i=(k^=(i=_+S|0)<<7|i>>>25)+_|0)<<9|i>>>23)+k|0)<<13|i>>>19)+E|0)<<18|i>>>14,x^=(i=(A^=(i=(B^=(i=(I^=(i=x+A|0)<<7|i>>>25)+x|0)<<9|i>>>23)+I|0)<<13|i>>>19)+B|0)<<18|i>>>14,L^=(i=(P^=(i=(M^=(i=(O^=(i=L+P|0)<<7|i>>>25)+L|0)<<9|i>>>23)+O|0)<<13|i>>>19)+M|0)<<18|i>>>14,C^=(i=(U^=(i=(R^=(i=(T^=(i=C+U|0)<<7|i>>>25)+C|0)<<9|i>>>23)+T|0)<<13|i>>>19)+R|0)<<18|i>>>14;_=_+o|0,k=k+s|0,E=E+a|0,S=S+u|0,A=A+c|0,x=x+h|0,I=I+l|0,B=B+f|0,M=M+d|0,P=P+p|0,L=L+y|0,O=O+g|0,T=T+m|0,R=R+w|0,U=U+b|0,C=C+v|0,t[0]=_>>>0&255,t[1]=_>>>8&255,t[2]=_>>>16&255,t[3]=_>>>24&255,t[4]=k>>>0&255,t[5]=k>>>8&255,t[6]=k>>>16&255,t[7]=k>>>24&255,t[8]=E>>>0&255,t[9]=E>>>8&255,t[10]=E>>>16&255,t[11]=E>>>24&255,t[12]=S>>>0&255,t[13]=S>>>8&255,t[14]=S>>>16&255,t[15]=S>>>24&255,t[16]=A>>>0&255,t[17]=A>>>8&255,t[18]=A>>>16&255,t[19]=A>>>24&255,t[20]=x>>>0&255,t[21]=x>>>8&255,t[22]=x>>>16&255,t[23]=x>>>24&255,t[24]=I>>>0&255,t[25]=I>>>8&255,t[26]=I>>>16&255,t[27]=I>>>24&255,t[28]=B>>>0&255,t[29]=B>>>8&255,t[30]=B>>>16&255,t[31]=B>>>24&255,t[32]=M>>>0&255,t[33]=M>>>8&255,t[34]=M>>>16&255,t[35]=M>>>24&255,t[36]=P>>>0&255,t[37]=P>>>8&255,t[38]=P>>>16&255,t[39]=P>>>24&255,t[40]=L>>>0&255,t[41]=L>>>8&255,t[42]=L>>>16&255,t[43]=L>>>24&255,t[44]=O>>>0&255,t[45]=O>>>8&255,t[46]=O>>>16&255,t[47]=O>>>24&255,t[48]=T>>>0&255,t[49]=T>>>8&255,t[50]=T>>>16&255,t[51]=T>>>24&255,t[52]=R>>>0&255,t[53]=R>>>8&255,t[54]=R>>>16&255,t[55]=R>>>24&255,t[56]=U>>>0&255,t[57]=U>>>8&255,t[58]=U>>>16&255,t[59]=U>>>24&255,t[60]=C>>>0&255,t[61]=C>>>8&255,t[62]=C>>>16&255,t[63]=C>>>24&255}(t,e,r,n)}function w(t,e,r,n){!function(t,e,r,n){for(var i,o=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,a=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,u=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,c=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,h=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,f=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,d=255&e[8]|(255&e[9])<<8|(255&e[10])<<16|(255&e[11])<<24,p=255&e[12]|(255&e[13])<<8|(255&e[14])<<16|(255&e[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,g=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,m=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,w=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,v=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,_=0;_<20;_+=2)o^=(i=(m^=(i=(d^=(i=(c^=(i=o+m|0)<<7|i>>>25)+o|0)<<9|i>>>23)+c|0)<<13|i>>>19)+d|0)<<18|i>>>14,h^=(i=(s^=(i=(w^=(i=(p^=(i=h+s|0)<<7|i>>>25)+h|0)<<9|i>>>23)+p|0)<<13|i>>>19)+w|0)<<18|i>>>14,y^=(i=(l^=(i=(a^=(i=(b^=(i=y+l|0)<<7|i>>>25)+y|0)<<9|i>>>23)+b|0)<<13|i>>>19)+a|0)<<18|i>>>14,v^=(i=(g^=(i=(f^=(i=(u^=(i=v+g|0)<<7|i>>>25)+v|0)<<9|i>>>23)+u|0)<<13|i>>>19)+f|0)<<18|i>>>14,o^=(i=(u^=(i=(a^=(i=(s^=(i=o+u|0)<<7|i>>>25)+o|0)<<9|i>>>23)+s|0)<<13|i>>>19)+a|0)<<18|i>>>14,h^=(i=(c^=(i=(f^=(i=(l^=(i=h+c|0)<<7|i>>>25)+h|0)<<9|i>>>23)+l|0)<<13|i>>>19)+f|0)<<18|i>>>14,y^=(i=(p^=(i=(d^=(i=(g^=(i=y+p|0)<<7|i>>>25)+y|0)<<9|i>>>23)+g|0)<<13|i>>>19)+d|0)<<18|i>>>14,v^=(i=(b^=(i=(w^=(i=(m^=(i=v+b|0)<<7|i>>>25)+v|0)<<9|i>>>23)+m|0)<<13|i>>>19)+w|0)<<18|i>>>14;t[0]=o>>>0&255,t[1]=o>>>8&255,t[2]=o>>>16&255,t[3]=o>>>24&255,t[4]=h>>>0&255,t[5]=h>>>8&255,t[6]=h>>>16&255,t[7]=h>>>24&255,t[8]=y>>>0&255,t[9]=y>>>8&255,t[10]=y>>>16&255,t[11]=y>>>24&255,t[12]=v>>>0&255,t[13]=v>>>8&255,t[14]=v>>>16&255,t[15]=v>>>24&255,t[16]=l>>>0&255,t[17]=l>>>8&255,t[18]=l>>>16&255,t[19]=l>>>24&255,t[20]=f>>>0&255,t[21]=f>>>8&255,t[22]=f>>>16&255,t[23]=f>>>24&255,t[24]=d>>>0&255,t[25]=d>>>8&255,t[26]=d>>>16&255,t[27]=d>>>24&255,t[28]=p>>>0&255,t[29]=p>>>8&255,t[30]=p>>>16&255,t[31]=p>>>24&255}(t,e,r,n)}var b=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function v(t,e,r,n,i,o,s){var a,u,c=new Uint8Array(16),h=new Uint8Array(64);for(u=0;u<16;u++)c[u]=0;for(u=0;u<8;u++)c[u]=o[u];for(;i>=64;){for(m(h,c,s,b),u=0;u<64;u++)t[e+u]=r[n+u]^h[u];for(a=1,u=8;u<16;u++)a=a+(255&c[u])|0,c[u]=255&a,a>>>=8;i-=64,e+=64,n+=64}if(i>0)for(m(h,c,s,b),u=0;u<i;u++)t[e+u]=r[n+u]^h[u];return 0}function _(t,e,r,n,i){var o,s,a=new Uint8Array(16),u=new Uint8Array(64);for(s=0;s<16;s++)a[s]=0;for(s=0;s<8;s++)a[s]=n[s];for(;r>=64;){for(m(u,a,i,b),s=0;s<64;s++)t[e+s]=u[s];for(o=1,s=8;s<16;s++)o=o+(255&a[s])|0,a[s]=255&o,o>>>=8;r-=64,e+=64}if(r>0)for(m(u,a,i,b),s=0;s<r;s++)t[e+s]=u[s];return 0}function k(t,e,r,n,i){var o=new Uint8Array(32);w(o,n,i,b);for(var s=new Uint8Array(8),a=0;a<8;a++)s[a]=n[a+16];return _(t,e,r,s,o)}function E(t,e,r,n,i,o,s){var a=new Uint8Array(32);w(a,o,s,b);for(var u=new Uint8Array(8),c=0;c<8;c++)u[c]=o[c+16];return v(t,e,r,n,i,u,a)}var S=function(t){var e,r,n,i,o,s,a,u;this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.leftover=0,this.fin=0,e=255&t[0]|(255&t[1])<<8,this.r[0]=8191&e,r=255&t[2]|(255&t[3])<<8,this.r[1]=8191&(e>>>13|r<<3),n=255&t[4]|(255&t[5])<<8,this.r[2]=7939&(r>>>10|n<<6),i=255&t[6]|(255&t[7])<<8,this.r[3]=8191&(n>>>7|i<<9),o=255&t[8]|(255&t[9])<<8,this.r[4]=255&(i>>>4|o<<12),this.r[5]=o>>>1&8190,s=255&t[10]|(255&t[11])<<8,this.r[6]=8191&(o>>>14|s<<2),a=255&t[12]|(255&t[13])<<8,this.r[7]=8065&(s>>>11|a<<5),u=255&t[14]|(255&t[15])<<8,this.r[8]=8191&(a>>>8|u<<8),this.r[9]=u>>>5&127,this.pad[0]=255&t[16]|(255&t[17])<<8,this.pad[1]=255&t[18]|(255&t[19])<<8,this.pad[2]=255&t[20]|(255&t[21])<<8,this.pad[3]=255&t[22]|(255&t[23])<<8,this.pad[4]=255&t[24]|(255&t[25])<<8,this.pad[5]=255&t[26]|(255&t[27])<<8,this.pad[6]=255&t[28]|(255&t[29])<<8,this.pad[7]=255&t[30]|(255&t[31])<<8};function A(t,e,r,n,i,o){var s=new S(o);return s.update(r,n,i),s.finish(t,e),0}function x(t,e,r,n,i,o){var s=new Uint8Array(16);return A(s,0,r,n,i,o),y(t,e,s,0)}function I(t,e,r,n,i){var o;if(r<32)return-1;for(E(t,0,e,0,r,n,i),A(t,16,t,32,r-32,t),o=0;o<16;o++)t[o]=0;return 0}function B(t,e,r,n,i){var o,s=new Uint8Array(32);if(r<32)return-1;if(k(s,0,32,n,i),0!==x(e,16,e,32,r-32,s))return-1;for(E(t,0,e,0,r,n,i),o=0;o<32;o++)t[o]=0;return 0}function M(t,e){var r;for(r=0;r<16;r++)t[r]=0|e[r]}function P(t){var e,r,n=1;for(e=0;e<16;e++)r=t[e]+n+65535,n=Math.floor(r/65536),t[e]=r-65536*n;t[0]+=n-1+37*(n-1)}function L(t,e,r){for(var n,i=~(r-1),o=0;o<16;o++)n=i&(t[o]^e[o]),t[o]^=n,e[o]^=n}function O(t,r){var n,i,o,s=e(),a=e();for(n=0;n<16;n++)a[n]=r[n];for(P(a),P(a),P(a),i=0;i<2;i++){for(s[0]=a[0]-65517,n=1;n<15;n++)s[n]=a[n]-65535-(s[n-1]>>16&1),s[n-1]&=65535;s[15]=a[15]-32767-(s[14]>>16&1),o=s[15]>>16&1,s[14]&=65535,L(a,s,1-o)}for(n=0;n<16;n++)t[2*n]=255&a[n],t[2*n+1]=a[n]>>8}function T(t,e){var r=new Uint8Array(32),n=new Uint8Array(32);return O(r,t),O(n,e),g(r,0,n,0)}function R(t){var e=new Uint8Array(32);return O(e,t),1&e[0]}function U(t,e){var r;for(r=0;r<16;r++)t[r]=e[2*r]+(e[2*r+1]<<8);t[15]&=32767}function C(t,e,r){for(var n=0;n<16;n++)t[n]=e[n]+r[n]}function N(t,e,r){for(var n=0;n<16;n++)t[n]=e[n]-r[n]}function z(t,e,r){var n,i,o=0,s=0,a=0,u=0,c=0,h=0,l=0,f=0,d=0,p=0,y=0,g=0,m=0,w=0,b=0,v=0,_=0,k=0,E=0,S=0,A=0,x=0,I=0,B=0,M=0,P=0,L=0,O=0,T=0,R=0,U=0,C=r[0],N=r[1],z=r[2],D=r[3],j=r[4],W=r[5],F=r[6],K=r[7],q=r[8],V=r[9],H=r[10],$=r[11],Z=r[12],G=r[13],Y=r[14],J=r[15];o+=(n=e[0])*C,s+=n*N,a+=n*z,u+=n*D,c+=n*j,h+=n*W,l+=n*F,f+=n*K,d+=n*q,p+=n*V,y+=n*H,g+=n*$,m+=n*Z,w+=n*G,b+=n*Y,v+=n*J,s+=(n=e[1])*C,a+=n*N,u+=n*z,c+=n*D,h+=n*j,l+=n*W,f+=n*F,d+=n*K,p+=n*q,y+=n*V,g+=n*H,m+=n*$,w+=n*Z,b+=n*G,v+=n*Y,_+=n*J,a+=(n=e[2])*C,u+=n*N,c+=n*z,h+=n*D,l+=n*j,f+=n*W,d+=n*F,p+=n*K,y+=n*q,g+=n*V,m+=n*H,w+=n*$,b+=n*Z,v+=n*G,_+=n*Y,k+=n*J,u+=(n=e[3])*C,c+=n*N,h+=n*z,l+=n*D,f+=n*j,d+=n*W,p+=n*F,y+=n*K,g+=n*q,m+=n*V,w+=n*H,b+=n*$,v+=n*Z,_+=n*G,k+=n*Y,E+=n*J,c+=(n=e[4])*C,h+=n*N,l+=n*z,f+=n*D,d+=n*j,p+=n*W,y+=n*F,g+=n*K,m+=n*q,w+=n*V,b+=n*H,v+=n*$,_+=n*Z,k+=n*G,E+=n*Y,S+=n*J,h+=(n=e[5])*C,l+=n*N,f+=n*z,d+=n*D,p+=n*j,y+=n*W,g+=n*F,m+=n*K,w+=n*q,b+=n*V,v+=n*H,_+=n*$,k+=n*Z,E+=n*G,S+=n*Y,A+=n*J,l+=(n=e[6])*C,f+=n*N,d+=n*z,p+=n*D,y+=n*j,g+=n*W,m+=n*F,w+=n*K,b+=n*q,v+=n*V,_+=n*H,k+=n*$,E+=n*Z,S+=n*G,A+=n*Y,x+=n*J,f+=(n=e[7])*C,d+=n*N,p+=n*z,y+=n*D,g+=n*j,m+=n*W,w+=n*F,b+=n*K,v+=n*q,_+=n*V,k+=n*H,E+=n*$,S+=n*Z,A+=n*G,x+=n*Y,I+=n*J,d+=(n=e[8])*C,p+=n*N,y+=n*z,g+=n*D,m+=n*j,w+=n*W,b+=n*F,v+=n*K,_+=n*q,k+=n*V,E+=n*H,S+=n*$,A+=n*Z,x+=n*G,I+=n*Y,B+=n*J,p+=(n=e[9])*C,y+=n*N,g+=n*z,m+=n*D,w+=n*j,b+=n*W,v+=n*F,_+=n*K,k+=n*q,E+=n*V,S+=n*H,A+=n*$,x+=n*Z,I+=n*G,B+=n*Y,M+=n*J,y+=(n=e[10])*C,g+=n*N,m+=n*z,w+=n*D,b+=n*j,v+=n*W,_+=n*F,k+=n*K,E+=n*q,S+=n*V,A+=n*H,x+=n*$,I+=n*Z,B+=n*G,M+=n*Y,P+=n*J,g+=(n=e[11])*C,m+=n*N,w+=n*z,b+=n*D,v+=n*j,_+=n*W,k+=n*F,E+=n*K,S+=n*q,A+=n*V,x+=n*H,I+=n*$,B+=n*Z,M+=n*G,P+=n*Y,L+=n*J,m+=(n=e[12])*C,w+=n*N,b+=n*z,v+=n*D,_+=n*j,k+=n*W,E+=n*F,S+=n*K,A+=n*q,x+=n*V,I+=n*H,B+=n*$,M+=n*Z,P+=n*G,L+=n*Y,O+=n*J,w+=(n=e[13])*C,b+=n*N,v+=n*z,_+=n*D,k+=n*j,E+=n*W,S+=n*F,A+=n*K,x+=n*q,I+=n*V,B+=n*H,M+=n*$,P+=n*Z,L+=n*G,O+=n*Y,T+=n*J,b+=(n=e[14])*C,v+=n*N,_+=n*z,k+=n*D,E+=n*j,S+=n*W,A+=n*F,x+=n*K,I+=n*q,B+=n*V,M+=n*H,P+=n*$,L+=n*Z,O+=n*G,T+=n*Y,R+=n*J,v+=(n=e[15])*C,s+=38*(k+=n*z),a+=38*(E+=n*D),u+=38*(S+=n*j),c+=38*(A+=n*W),h+=38*(x+=n*F),l+=38*(I+=n*K),f+=38*(B+=n*q),d+=38*(M+=n*V),p+=38*(P+=n*H),y+=38*(L+=n*$),g+=38*(O+=n*Z),m+=38*(T+=n*G),w+=38*(R+=n*Y),b+=38*(U+=n*J),o=(n=(o+=38*(_+=n*N))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),o=(n=(o+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),o+=i-1+37*(i-1),t[0]=o,t[1]=s,t[2]=a,t[3]=u,t[4]=c,t[5]=h,t[6]=l,t[7]=f,t[8]=d,t[9]=p,t[10]=y,t[11]=g,t[12]=m,t[13]=w,t[14]=b,t[15]=v}function D(t,e){z(t,e,e)}function j(t,r){var n,i=e();for(n=0;n<16;n++)i[n]=r[n];for(n=253;n>=0;n--)D(i,i),2!==n&&4!==n&&z(i,i,r);for(n=0;n<16;n++)t[n]=i[n]}function W(t,r){var n,i=e();for(n=0;n<16;n++)i[n]=r[n];for(n=250;n>=0;n--)D(i,i),1!==n&&z(i,i,r);for(n=0;n<16;n++)t[n]=i[n]}function F(t,r,n){var i,o,s=new Uint8Array(32),u=new Float64Array(80),c=e(),h=e(),l=e(),f=e(),d=e(),p=e();for(o=0;o<31;o++)s[o]=r[o];for(s[31]=127&r[31]|64,s[0]&=248,U(u,n),o=0;o<16;o++)h[o]=u[o],f[o]=c[o]=l[o]=0;for(c[0]=f[0]=1,o=254;o>=0;--o)L(c,h,i=s[o>>>3]>>>(7&o)&1),L(l,f,i),C(d,c,l),N(c,c,l),C(l,h,f),N(h,h,f),D(f,d),D(p,c),z(c,l,c),z(l,h,d),C(d,c,l),N(c,c,l),D(h,c),N(l,f,p),z(c,l,a),C(c,c,f),z(l,l,c),z(c,f,p),z(f,h,u),D(h,d),L(c,h,i),L(l,f,i);for(o=0;o<16;o++)u[o+16]=c[o],u[o+32]=l[o],u[o+48]=h[o],u[o+64]=f[o];var y=u.subarray(32),g=u.subarray(16);return j(y,y),z(g,g,y),O(t,g),0}function K(t,e){return F(t,e,i)}function q(t,e){return r(e,32),K(t,e)}function V(t,e,r){var i=new Uint8Array(32);return F(i,r,e),w(t,n,i,b)}S.prototype.blocks=function(t,e,r){for(var n,i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k=this.fin?0:2048,E=this.h[0],S=this.h[1],A=this.h[2],x=this.h[3],I=this.h[4],B=this.h[5],M=this.h[6],P=this.h[7],L=this.h[8],O=this.h[9],T=this.r[0],R=this.r[1],U=this.r[2],C=this.r[3],N=this.r[4],z=this.r[5],D=this.r[6],j=this.r[7],W=this.r[8],F=this.r[9];r>=16;)f=l=0,f+=(E+=8191&(n=255&t[e+0]|(255&t[e+1])<<8))*T,f+=(S+=8191&(n>>>13|(i=255&t[e+2]|(255&t[e+3])<<8)<<3))*(5*F),f+=(A+=8191&(i>>>10|(o=255&t[e+4]|(255&t[e+5])<<8)<<6))*(5*W),f+=(x+=8191&(o>>>7|(s=255&t[e+6]|(255&t[e+7])<<8)<<9))*(5*j),l=(f+=(I+=8191&(s>>>4|(a=255&t[e+8]|(255&t[e+9])<<8)<<12))*(5*D))>>>13,f&=8191,f+=(B+=a>>>1&8191)*(5*z),f+=(M+=8191&(a>>>14|(u=255&t[e+10]|(255&t[e+11])<<8)<<2))*(5*N),f+=(P+=8191&(u>>>11|(c=255&t[e+12]|(255&t[e+13])<<8)<<5))*(5*C),f+=(L+=8191&(c>>>8|(h=255&t[e+14]|(255&t[e+15])<<8)<<8))*(5*U),d=l+=(f+=(O+=h>>>5|k)*(5*R))>>>13,d+=E*R,d+=S*T,d+=A*(5*F),d+=x*(5*W),l=(d+=I*(5*j))>>>13,d&=8191,d+=B*(5*D),d+=M*(5*z),d+=P*(5*N),d+=L*(5*C),l+=(d+=O*(5*U))>>>13,d&=8191,p=l,p+=E*U,p+=S*R,p+=A*T,p+=x*(5*F),l=(p+=I*(5*W))>>>13,p&=8191,p+=B*(5*j),p+=M*(5*D),p+=P*(5*z),p+=L*(5*N),y=l+=(p+=O*(5*C))>>>13,y+=E*C,y+=S*U,y+=A*R,y+=x*T,l=(y+=I*(5*F))>>>13,y&=8191,y+=B*(5*W),y+=M*(5*j),y+=P*(5*D),y+=L*(5*z),g=l+=(y+=O*(5*N))>>>13,g+=E*N,g+=S*C,g+=A*U,g+=x*R,l=(g+=I*T)>>>13,g&=8191,g+=B*(5*F),g+=M*(5*W),g+=P*(5*j),g+=L*(5*D),m=l+=(g+=O*(5*z))>>>13,m+=E*z,m+=S*N,m+=A*C,m+=x*U,l=(m+=I*R)>>>13,m&=8191,m+=B*T,m+=M*(5*F),m+=P*(5*W),m+=L*(5*j),w=l+=(m+=O*(5*D))>>>13,w+=E*D,w+=S*z,w+=A*N,w+=x*C,l=(w+=I*U)>>>13,w&=8191,w+=B*R,w+=M*T,w+=P*(5*F),w+=L*(5*W),b=l+=(w+=O*(5*j))>>>13,b+=E*j,b+=S*D,b+=A*z,b+=x*N,l=(b+=I*C)>>>13,b&=8191,b+=B*U,b+=M*R,b+=P*T,b+=L*(5*F),v=l+=(b+=O*(5*W))>>>13,v+=E*W,v+=S*j,v+=A*D,v+=x*z,l=(v+=I*N)>>>13,v&=8191,v+=B*C,v+=M*U,v+=P*R,v+=L*T,_=l+=(v+=O*(5*F))>>>13,_+=E*F,_+=S*W,_+=A*j,_+=x*D,l=(_+=I*z)>>>13,_&=8191,_+=B*N,_+=M*C,_+=P*U,_+=L*R,E=f=8191&(l=(l=((l+=(_+=O*T)>>>13)<<2)+l|0)+(f&=8191)|0),S=d+=l>>>=13,A=p&=8191,x=y&=8191,I=g&=8191,B=m&=8191,M=w&=8191,P=b&=8191,L=v&=8191,O=_&=8191,e+=16,r-=16;this.h[0]=E,this.h[1]=S,this.h[2]=A,this.h[3]=x,this.h[4]=I,this.h[5]=B,this.h[6]=M,this.h[7]=P,this.h[8]=L,this.h[9]=O},S.prototype.finish=function(t,e){var r,n,i,o,s=new Uint16Array(10);if(this.leftover){for(o=this.leftover,this.buffer[o++]=1;o<16;o++)this.buffer[o]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(r=this.h[1]>>>13,this.h[1]&=8191,o=2;o<10;o++)this.h[o]+=r,r=this.h[o]>>>13,this.h[o]&=8191;for(this.h[0]+=5*r,r=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=r,r=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=r,s[0]=this.h[0]+5,r=s[0]>>>13,s[0]&=8191,o=1;o<10;o++)s[o]=this.h[o]+r,r=s[o]>>>13,s[o]&=8191;for(s[9]-=8192,n=(1^r)-1,o=0;o<10;o++)s[o]&=n;for(n=~n,o=0;o<10;o++)this.h[o]=this.h[o]&n|s[o];for(this.h[0]=65535&(this.h[0]|this.h[1]<<13),this.h[1]=65535&(this.h[1]>>>3|this.h[2]<<10),this.h[2]=65535&(this.h[2]>>>6|this.h[3]<<7),this.h[3]=65535&(this.h[3]>>>9|this.h[4]<<4),this.h[4]=65535&(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14),this.h[5]=65535&(this.h[6]>>>2|this.h[7]<<11),this.h[6]=65535&(this.h[7]>>>5|this.h[8]<<8),this.h[7]=65535&(this.h[8]>>>8|this.h[9]<<5),i=this.h[0]+this.pad[0],this.h[0]=65535&i,o=1;o<8;o++)i=(this.h[o]+this.pad[o]|0)+(i>>>16)|0,this.h[o]=65535&i;t[e+0]=this.h[0]>>>0&255,t[e+1]=this.h[0]>>>8&255,t[e+2]=this.h[1]>>>0&255,t[e+3]=this.h[1]>>>8&255,t[e+4]=this.h[2]>>>0&255,t[e+5]=this.h[2]>>>8&255,t[e+6]=this.h[3]>>>0&255,t[e+7]=this.h[3]>>>8&255,t[e+8]=this.h[4]>>>0&255,t[e+9]=this.h[4]>>>8&255,t[e+10]=this.h[5]>>>0&255,t[e+11]=this.h[5]>>>8&255,t[e+12]=this.h[6]>>>0&255,t[e+13]=this.h[6]>>>8&255,t[e+14]=this.h[7]>>>0&255,t[e+15]=this.h[7]>>>8&255},S.prototype.update=function(t,e,r){var n,i;if(this.leftover){for((i=16-this.leftover)>r&&(i=r),n=0;n<i;n++)this.buffer[this.leftover+n]=t[e+n];if(r-=i,e+=i,this.leftover+=i,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(r>=16&&(i=r-r%16,this.blocks(t,e,i),e+=i,r-=i),r){for(n=0;n<r;n++)this.buffer[this.leftover+n]=t[e+n];this.leftover+=r}};var H=I,$=B,Z=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function G(t,e,r,n){for(var i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k,E,S,A,x,I,B,M,P=new Int32Array(16),L=new Int32Array(16),O=t[0],T=t[1],R=t[2],U=t[3],C=t[4],N=t[5],z=t[6],D=t[7],j=e[0],W=e[1],F=e[2],K=e[3],q=e[4],V=e[5],H=e[6],$=e[7],G=0;n>=128;){for(k=0;k<16;k++)E=8*k+G,P[k]=r[E+0]<<24|r[E+1]<<16|r[E+2]<<8|r[E+3],L[k]=r[E+4]<<24|r[E+5]<<16|r[E+6]<<8|r[E+7];for(k=0;k<80;k++)if(i=O,o=T,s=R,a=U,u=C,c=N,h=z,f=j,d=W,p=F,y=K,g=q,m=V,w=H,x=65535&(A=$),I=A>>>16,B=65535&(S=D),M=S>>>16,x+=65535&(A=(q>>>14|C<<18)^(q>>>18|C<<14)^(C>>>9|q<<23)),I+=A>>>16,B+=65535&(S=(C>>>14|q<<18)^(C>>>18|q<<14)^(q>>>9|C<<23)),M+=S>>>16,x+=65535&(A=q&V^~q&H),I+=A>>>16,B+=65535&(S=C&N^~C&z),M+=S>>>16,S=Z[2*k],x+=65535&(A=Z[2*k+1]),I+=A>>>16,B+=65535&S,M+=S>>>16,S=P[k%16],I+=(A=L[k%16])>>>16,B+=65535&S,M+=S>>>16,B+=(I+=(x+=65535&A)>>>16)>>>16,x=65535&(A=_=65535&x|I<<16),I=A>>>16,B=65535&(S=v=65535&B|(M+=B>>>16)<<16),M=S>>>16,x+=65535&(A=(j>>>28|O<<4)^(O>>>2|j<<30)^(O>>>7|j<<25)),I+=A>>>16,B+=65535&(S=(O>>>28|j<<4)^(j>>>2|O<<30)^(j>>>7|O<<25)),M+=S>>>16,I+=(A=j&W^j&F^W&F)>>>16,B+=65535&(S=O&T^O&R^T&R),M+=S>>>16,l=65535&(B+=(I+=(x+=65535&A)>>>16)>>>16)|(M+=B>>>16)<<16,b=65535&x|I<<16,x=65535&(A=y),I=A>>>16,B=65535&(S=a),M=S>>>16,I+=(A=_)>>>16,B+=65535&(S=v),M+=S>>>16,T=i,R=o,U=s,C=a=65535&(B+=(I+=(x+=65535&A)>>>16)>>>16)|(M+=B>>>16)<<16,N=u,z=c,D=h,O=l,W=f,F=d,K=p,q=y=65535&x|I<<16,V=g,H=m,$=w,j=b,k%16==15)for(E=0;E<16;E++)S=P[E],x=65535&(A=L[E]),I=A>>>16,B=65535&S,M=S>>>16,S=P[(E+9)%16],x+=65535&(A=L[(E+9)%16]),I+=A>>>16,B+=65535&S,M+=S>>>16,v=P[(E+1)%16],x+=65535&(A=((_=L[(E+1)%16])>>>1|v<<31)^(_>>>8|v<<24)^(_>>>7|v<<25)),I+=A>>>16,B+=65535&(S=(v>>>1|_<<31)^(v>>>8|_<<24)^v>>>7),M+=S>>>16,v=P[(E+14)%16],I+=(A=((_=L[(E+14)%16])>>>19|v<<13)^(v>>>29|_<<3)^(_>>>6|v<<26))>>>16,B+=65535&(S=(v>>>19|_<<13)^(_>>>29|v<<3)^v>>>6),M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,P[E]=65535&B|M<<16,L[E]=65535&x|I<<16;x=65535&(A=j),I=A>>>16,B=65535&(S=O),M=S>>>16,S=t[0],I+=(A=e[0])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[0]=O=65535&B|M<<16,e[0]=j=65535&x|I<<16,x=65535&(A=W),I=A>>>16,B=65535&(S=T),M=S>>>16,S=t[1],I+=(A=e[1])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[1]=T=65535&B|M<<16,e[1]=W=65535&x|I<<16,x=65535&(A=F),I=A>>>16,B=65535&(S=R),M=S>>>16,S=t[2],I+=(A=e[2])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[2]=R=65535&B|M<<16,e[2]=F=65535&x|I<<16,x=65535&(A=K),I=A>>>16,B=65535&(S=U),M=S>>>16,S=t[3],I+=(A=e[3])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[3]=U=65535&B|M<<16,e[3]=K=65535&x|I<<16,x=65535&(A=q),I=A>>>16,B=65535&(S=C),M=S>>>16,S=t[4],I+=(A=e[4])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[4]=C=65535&B|M<<16,e[4]=q=65535&x|I<<16,x=65535&(A=V),I=A>>>16,B=65535&(S=N),M=S>>>16,S=t[5],I+=(A=e[5])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[5]=N=65535&B|M<<16,e[5]=V=65535&x|I<<16,x=65535&(A=H),I=A>>>16,B=65535&(S=z),M=S>>>16,S=t[6],I+=(A=e[6])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[6]=z=65535&B|M<<16,e[6]=H=65535&x|I<<16,x=65535&(A=$),I=A>>>16,B=65535&(S=D),M=S>>>16,S=t[7],I+=(A=e[7])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[7]=D=65535&B|M<<16,e[7]=$=65535&x|I<<16,G+=128,n-=128}return n}function Y(t,e,r){var n,i=new Int32Array(8),o=new Int32Array(8),s=new Uint8Array(256),a=r;for(i[0]=1779033703,i[1]=3144134277,i[2]=1013904242,i[3]=2773480762,i[4]=1359893119,i[5]=2600822924,i[6]=528734635,i[7]=1541459225,o[0]=4089235720,o[1]=2227873595,o[2]=4271175723,o[3]=1595750129,o[4]=2917565137,o[5]=725511199,o[6]=4215389547,o[7]=327033209,G(i,o,e,r),r%=128,n=0;n<r;n++)s[n]=e[a-r+n];for(s[r]=128,s[(r=256-128*(r<112?1:0))-9]=0,d(s,r-8,a/536870912|0,a<<3),G(i,o,s,r),n=0;n<8;n++)d(t,8*n,i[n],o[n]);return 0}function J(t,r){var n=e(),i=e(),o=e(),s=e(),a=e(),u=e(),h=e(),l=e(),f=e();N(n,t[1],t[0]),N(f,r[1],r[0]),z(n,n,f),C(i,t[0],t[1]),C(f,r[0],r[1]),z(i,i,f),z(o,t[3],r[3]),z(o,o,c),z(s,t[2],r[2]),C(s,s,s),N(a,i,n),N(u,s,o),C(h,s,o),C(l,i,n),z(t[0],a,u),z(t[1],l,h),z(t[2],h,u),z(t[3],a,l)}function X(t,e,r){var n;for(n=0;n<4;n++)L(t[n],e[n],r)}function Q(t,r){var n=e(),i=e(),o=e();j(o,r[2]),z(n,r[0],o),z(i,r[1],o),O(t,i),t[31]^=R(n)<<7}function tt(t,e,r){var n,i;for(M(t[0],o),M(t[1],s),M(t[2],s),M(t[3],o),i=255;i>=0;--i)X(t,e,n=r[i/8|0]>>(7&i)&1),J(e,t),J(t,t),X(t,e,n)}function et(t,r){var n=[e(),e(),e(),e()];M(n[0],h),M(n[1],l),M(n[2],s),z(n[3],h,l),tt(t,n,r)}function rt(t,n,i){var o,s=new Uint8Array(64),a=[e(),e(),e(),e()];for(i||r(n,32),Y(s,n,32),s[0]&=248,s[31]&=127,s[31]|=64,et(a,s),Q(t,a),o=0;o<32;o++)n[o+32]=t[o];return 0}var nt=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function it(t,e){var r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i<o;++i)e[i]+=r-16*e[n]*nt[i-(n-32)],r=Math.floor((e[i]+128)/256),e[i]-=256*r;e[i]+=r,e[n]=0}for(r=0,i=0;i<32;i++)e[i]+=r-(e[31]>>4)*nt[i],r=e[i]>>8,e[i]&=255;for(i=0;i<32;i++)e[i]-=r*nt[i];for(n=0;n<32;n++)e[n+1]+=e[n]>>8,t[n]=255&e[n]}function ot(t){var e,r=new Float64Array(64);for(e=0;e<64;e++)r[e]=t[e];for(e=0;e<64;e++)t[e]=0;it(t,r)}function st(t,r,n,i){var o,s,a=new Uint8Array(64),u=new Uint8Array(64),c=new Uint8Array(64),h=new Float64Array(64),l=[e(),e(),e(),e()];Y(a,i,32),a[0]&=248,a[31]&=127,a[31]|=64;var f=n+64;for(o=0;o<n;o++)t[64+o]=r[o];for(o=0;o<32;o++)t[32+o]=a[32+o];for(Y(c,t.subarray(32),n+32),ot(c),et(l,c),Q(t,l),o=32;o<64;o++)t[o]=i[o];for(Y(u,t,n+64),ot(u),o=0;o<64;o++)h[o]=0;for(o=0;o<32;o++)h[o]=c[o];for(o=0;o<32;o++)for(s=0;s<32;s++)h[o+s]+=u[o]*a[s];return it(t.subarray(32),h),f}function at(t,r,n,i){var a,c=new Uint8Array(32),h=new Uint8Array(64),l=[e(),e(),e(),e()],d=[e(),e(),e(),e()];if(n<64)return-1;if(function(t,r){var n=e(),i=e(),a=e(),c=e(),h=e(),l=e(),d=e();return M(t[2],s),U(t[1],r),D(a,t[1]),z(c,a,u),N(a,a,t[2]),C(c,t[2],c),D(h,c),D(l,h),z(d,l,h),z(n,d,a),z(n,n,c),W(n,n),z(n,n,a),z(n,n,c),z(n,n,c),z(t[0],n,c),D(i,t[0]),z(i,i,c),T(i,a)&&z(t[0],t[0],f),D(i,t[0]),z(i,i,c),T(i,a)?-1:(R(t[0])===r[31]>>7&&N(t[0],o,t[0]),z(t[3],t[0],t[1]),0)}(d,i))return-1;for(a=0;a<n;a++)t[a]=r[a];for(a=0;a<32;a++)t[a+32]=i[a];if(Y(h,t,n),ot(h),tt(l,d,h),et(d,r.subarray(32)),J(l,d),Q(c,l),n-=64,g(r,0,c,0)){for(a=0;a<n;a++)t[a]=0;return-1}for(a=0;a<n;a++)t[a]=r[a+64];return n}var ut=16,ct=64,ht=32,lt=64;function ft(t,e){if(32!==t.length)throw new Error("bad key size");if(24!==e.length)throw new Error("bad nonce size")}function dt(){for(var t=0;t<arguments.length;t++)if(!(arguments[t]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function pt(t){for(var e=0;e<t.length;e++)t[e]=0}t.lowlevel={crypto_core_hsalsa20:w,crypto_stream_xor:E,crypto_stream:k,crypto_stream_salsa20_xor:v,crypto_stream_salsa20:_,crypto_onetimeauth:A,crypto_onetimeauth_verify:x,crypto_verify_16:y,crypto_verify_32:g,crypto_secretbox:I,crypto_secretbox_open:B,crypto_scalarmult:F,crypto_scalarmult_base:K,crypto_box_beforenm:V,crypto_box_afternm:H,crypto_box:function(t,e,r,n,i,o){var s=new Uint8Array(32);return V(s,i,o),H(t,e,r,n,s)},crypto_box_open:function(t,e,r,n,i,o){var s=new Uint8Array(32);return V(s,i,o),$(t,e,r,n,s)},crypto_box_keypair:q,crypto_hash:Y,crypto_sign:st,crypto_sign_keypair:rt,crypto_sign_open:at,crypto_secretbox_KEYBYTES:32,crypto_secretbox_NONCEBYTES:24,crypto_secretbox_ZEROBYTES:32,crypto_secretbox_BOXZEROBYTES:ut,crypto_scalarmult_BYTES:32,crypto_scalarmult_SCALARBYTES:32,crypto_box_PUBLICKEYBYTES:32,crypto_box_SECRETKEYBYTES:32,crypto_box_BEFORENMBYTES:32,crypto_box_NONCEBYTES:24,crypto_box_ZEROBYTES:32,crypto_box_BOXZEROBYTES:16,crypto_sign_BYTES:ct,crypto_sign_PUBLICKEYBYTES:ht,crypto_sign_SECRETKEYBYTES:lt,crypto_sign_SEEDBYTES:32,crypto_hash_BYTES:64,gf:e,D:u,L:nt,pack25519:O,unpack25519:U,M:z,A:C,S:D,Z:N,pow2523:W,add:J,set25519:M,modL:it,scalarmult:tt,scalarbase:et},t.randomBytes=function(t){var e=new Uint8Array(t);return r(e,t),e},t.secretbox=function(t,e,r){dt(t,e,r),ft(r,e);for(var n=new Uint8Array(32+t.length),i=new Uint8Array(n.length),o=0;o<t.length;o++)n[o+32]=t[o];return I(i,n,n.length,e,r),i.subarray(ut)},t.secretbox.open=function(t,e,r){dt(t,e,r),ft(r,e);for(var n=new Uint8Array(ut+t.length),i=new Uint8Array(n.length),o=0;o<t.length;o++)n[o+ut]=t[o];return n.length<32||0!==B(i,n,n.length,e,r)?null:i.subarray(32)},t.secretbox.keyLength=32,t.secretbox.nonceLength=24,t.secretbox.overheadLength=ut,t.scalarMult=function(t,e){if(dt(t,e),32!==t.length)throw new Error("bad n size");if(32!==e.length)throw new Error("bad p size");var r=new Uint8Array(32);return F(r,t,e),r},t.scalarMult.base=function(t){if(dt(t),32!==t.length)throw new Error("bad n size");var e=new Uint8Array(32);return K(e,t),e},t.scalarMult.scalarLength=32,t.scalarMult.groupElementLength=32,t.box=function(e,r,n,i){var o=t.box.before(n,i);return t.secretbox(e,r,o)},t.box.before=function(t,e){dt(t,e),function(t,e){if(32!==t.length)throw new Error("bad public key size");if(32!==e.length)throw new Error("bad secret key size")}(t,e);var r=new Uint8Array(32);return V(r,t,e),r},t.box.after=t.secretbox,t.box.open=function(e,r,n,i){var o=t.box.before(n,i);return t.secretbox.open(e,r,o)},t.box.open.after=t.secretbox.open,t.box.keyPair=function(){var t=new Uint8Array(32),e=new Uint8Array(32);return q(t,e),{publicKey:t,secretKey:e}},t.box.keyPair.fromSecretKey=function(t){if(dt(t),32!==t.length)throw new Error("bad secret key size");var e=new Uint8Array(32);return K(e,t),{publicKey:e,secretKey:new Uint8Array(t)}},t.box.publicKeyLength=32,t.box.secretKeyLength=32,t.box.sharedKeyLength=32,t.box.nonceLength=24,t.box.overheadLength=t.secretbox.overheadLength,t.sign=function(t,e){if(dt(t,e),e.length!==lt)throw new Error("bad secret key size");var r=new Uint8Array(ct+t.length);return st(r,t,t.length,e),r},t.sign.open=function(t,e){if(dt(t,e),e.length!==ht)throw new Error("bad public key size");var r=new Uint8Array(t.length),n=at(r,t,t.length,e);if(n<0)return null;for(var i=new Uint8Array(n),o=0;o<i.length;o++)i[o]=r[o];return i},t.sign.detached=function(e,r){for(var n=t.sign(e,r),i=new Uint8Array(ct),o=0;o<i.length;o++)i[o]=n[o];return i},t.sign.detached.verify=function(t,e,r){if(dt(t,e,r),e.length!==ct)throw new Error("bad signature size");if(r.length!==ht)throw new Error("bad public key size");var n,i=new Uint8Array(ct+t.length),o=new Uint8Array(ct+t.length);for(n=0;n<ct;n++)i[n]=e[n];for(n=0;n<t.length;n++)i[n+ct]=t[n];return at(o,i,i.length,r)>=0},t.sign.keyPair=function(){var t=new Uint8Array(ht),e=new Uint8Array(lt);return rt(t,e),{publicKey:t,secretKey:e}},t.sign.keyPair.fromSecretKey=function(t){if(dt(t),t.length!==lt)throw new Error("bad secret key size");for(var e=new Uint8Array(ht),r=0;r<e.length;r++)e[r]=t[32+r];return{publicKey:e,secretKey:new Uint8Array(t)}},t.sign.keyPair.fromSeed=function(t){if(dt(t),32!==t.length)throw new Error("bad seed size");for(var e=new Uint8Array(ht),r=new Uint8Array(lt),n=0;n<32;n++)r[n]=t[n];return rt(e,r,!0),{publicKey:e,secretKey:r}},t.sign.publicKeyLength=ht,t.sign.secretKeyLength=lt,t.sign.seedLength=32,t.sign.signatureLength=ct,t.hash=function(t){dt(t);var e=new Uint8Array(64);return Y(e,t,t.length),e},t.hash.hashLength=64,t.verify=function(t,e){return dt(t,e),0!==t.length&&0!==e.length&&t.length===e.length&&0===p(t,0,e,0,t.length)},t.setPRNG=function(t){r=t},function(){var e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&e.getRandomValues?t.setPRNG((function(t,r){var n,i=new Uint8Array(r);for(n=0;n<r;n+=65536)e.getRandomValues(i.subarray(n,n+Math.min(r-n,65536)));for(n=0;n<r;n++)t[n]=i[n];pt(i)})):void 0!==kP&&(e=ee)&&e.randomBytes&&t.setPRNG((function(t,r){var n,i=e.randomBytes(r);for(n=0;n<r;n++)t[n]=i[n];pt(i)}))}()}(EP.exports?EP.exports:self.nacl=self.nacl||{});var SP=EP.exports;const AP=(t,e,r)=>SP.sign.detached.verify(t,e,r.toBytes()),xP=(t,e)=>{const{pubkey:r}=LM(e+"."+t,OB.V1);return r};async function IP(t,e,r,n){const i=xP(e,r);let{registry:o}=await ah.retrieve(t,i);if(!o.data)throw new Dc(zc.NoRecordData);if(n)return YP(o,r,i);const s=LB.get(r);return o.data=o.data.slice(0,s),o}async function BP(t,e,r,n){const i=r.map((t=>xP(e,t))),o=await ah.retrieveBatch(t,i);return n?o.map(((t,n)=>{if(t)return YP(t,r[n],xP(e,r[n]))})):o}const MP=async(t,e)=>await IP(t,e,PB.IPFS,!0),PP=async(t,e)=>await IP(t,e,PB.ARWV,!0),LP=async(t,e)=>await IP(t,e,PB.ETH,!0),OP=async(t,e)=>await IP(t,e,PB.BTC,!0),TP=async(t,e)=>await IP(t,e,PB.LTC,!0),RP=async(t,e)=>await IP(t,e,PB.DOGE,!0),UP=async(t,e)=>await IP(t,e,PB.Email,!0),CP=async(t,e)=>await IP(t,e,PB.Url,!0),NP=async(t,e)=>await IP(t,e,PB.Discord,!0),zP=async(t,e)=>await IP(t,e,PB.Github,!0),DP=async(t,e)=>await IP(t,e,PB.Reddit,!0),jP=async(t,e)=>await IP(t,e,PB.Twitter,!0),WP=async(t,e)=>await IP(t,e,PB.Telegram,!0),FP=async(t,e)=>await IP(t,e,PB.Pic,!0),KP=async(t,e)=>await IP(t,e,PB.SHDW,!0),qP=async(t,e)=>await IP(t,e,PB.SOL),VP=async(t,e)=>await IP(t,e,PB.POINT,!0),HP=async(t,e)=>await IP(t,e,PB.BSC,!0),$P=async(t,e)=>await IP(t,e,PB.Injective,!0),ZP=async(t,e)=>await IP(t,e,PB.Backpack,!0),GP=async(t,e)=>await IP(t,e,PB.Background,!0),YP=(t,e,r)=>{const i=null==t?void 0:t.data;if(!i)return;if(0===i.compare(n.Buffer.alloc(i.length)))return;const o=LB.get(e),s=(t=>{const e=Array.from(t);return e.length-1-e.reverse().findIndex((t=>0!==t))+1})(i);if(!o)return i.slice(0,s).toString("utf-8");if(e===PB.SOL){const e=new TextEncoder,o=n.Buffer.concat([i.slice(0,32),r.toBuffer()]),s=e.encode(o.toString("hex"));if(AP(s,i.slice(32,96),t.owner))return Wv.encode(i.slice(0,32))}if(o&&s!==o){const t=i.slice(0,s).toString("utf-8");if(e===PB.Injective){const e=tP(t);if("inj"===e.prefix&&20===e.data.length)return t}else if(e===PB.BSC||e===PB.ETH){const e=t.slice(0,2),r=t.slice(2);if("0x"===e&&20===n.Buffer.from(r,"hex").length)return t}else if((e===PB.A||e===PB.AAAA)&&fP.isValid(t))return t;throw new Dc(zc.InvalidRecordData)}if(e===PB.ETH||e===PB.BSC)return"0x"+i.slice(0,o).toString("hex");if(e===PB.Injective)return eP("inj",i.slice(0,o),"bech32");if(e===PB.A||e===PB.AAAA)return fP.fromByteArray([...i.slice(0,o)]).toString();if(e===PB.Background)return new Wo(i.slice(0,o)).toString();throw new Dc(zc.InvalidRecordData)},JP=(t,e)=>{if(!LB.get(e))return e!==PB.CNAME&&e!==PB.TXT||(t=_P(t)),n.Buffer.from(t,"utf-8");if(e===PB.SOL)throw new Dc(zc.UnsupportedRecord,"Use `serializeSolRecord` for SOL record");if(e===PB.ETH||e===PB.BSC)return CM("0x"===t.slice(0,2),zc.InvalidEvmAddress),n.Buffer.from(t.slice(2),"hex");if(e===PB.Injective){const e=tP(t);return CM("inj"===e.prefix,zc.InvalidInjectiveAddress),CM(20===e.data.length,zc.InvalidInjectiveAddress),n.Buffer.from(e.data)}if(e===PB.A){const e=fP.parse(t).toByteArray();return CM(4===e.length,zc.InvalidARecord),n.Buffer.from(e)}if(e===PB.AAAA){const e=fP.parse(t).toByteArray();return CM(16===e.length,zc.InvalidAAAARecord),n.Buffer.from(e)}if(e===PB.Background)return new Wo(t).toBuffer();throw new Dc(zc.InvalidRecordInput)},XP=(t,e,r,i)=>{const o=n.Buffer.concat([t.toBuffer(),e.toBuffer()]),s=(new TextEncoder).encode(o.toString("hex")),a=AP(s,i,r);return CM(a,zc.InvalidSignature),n.Buffer.concat([t.toBuffer(),i])},QP=async(t,e)=>{const{pubkey:r}=LM(e),{registry:n,nftOwner:i}=await ah.retrieve(t,r);if(i)return i;try{const r=await eL(t,n.owner,e);if(void 0!==r)return r;return await tL(t,n.owner,e)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}return n.owner},tL=async(t,e,r)=>{const i=xP(r,PB.SOL),o=await qP(t,r);if(!(null==o?void 0:o.data))throw new Dc(zc.NoRecordData);const s=new TextEncoder,a=n.Buffer.concat([o.data.slice(0,32),i.toBuffer()]),u=s.encode(a.toString("hex"));if(!AP(u,o.data.slice(32),e))throw new Dc(zc.InvalidSignature);return new Wo(o.data.slice(0,32))},eL=async(t,e,r)=>{try{const n=hL(r,PB.SOL),i=await MB.retrieve(t,n),o=i.getStalenessId(),s=i.getRoAId(),a=i.getContent();if(0===o.compare(e.toBuffer())&&i.header.stalenessValidation===xB.Solana&&0===s.compare(a)&&i.header.rightOfAssociationValidation===xB.Solana)return new Wo(a)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}},rL=new Map([[PB.Backpack,new Wo("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")],[PB.Url,new Wo("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")]]),nL=new Set([PB.ETH,PB.Injective,PB.BSC]),iL=async(t,e,r)=>{const n=hL(r,e),i=await QP(t,r),o=await MB.retrieve(t,n),s=o.getStalenessId();return i.equals(new Wo(s))&&o.header.stalenessValidation===xB.Solana},oL=async(t,e,r,n)=>{var i;const o=hL(r,e),s=await MB.retrieve(t,o),a=s.getRoAId(),u=nL.has(e)?xB.Ethereum:xB.Solana;if(!(n=null!=n?n:null===(i=rL.get(e))||void 0===i?void 0:i.toBuffer()))throw new Dc(zc.MissingVerifier);return 0===n.compare(a)&&s.header.rightOfAssociationValidation===u},sL=new Set([PB.IPFS,PB.ARWV,PB.LTC,PB.DOGE,PB.Email,PB.Url,PB.Discord,PB.Github,PB.Reddit,PB.Twitter,PB.Telegram,PB.Pic,PB.SHDW,PB.POINT,PB.Backpack,PB.TXT,PB.CNAME,PB.BTC]),aL=new Set([PB.ETH,PB.Injective,PB.SOL]),uL=(t,e)=>{if(sL.has(e)){const r=t.toString("utf-8");return e===PB.CNAME||e===PB.TXT?function(t){const e=[],r=t.length;let n=0,i=128,o=72,s=t.lastIndexOf("-");s<0&&(s=0);for(let r=0;r<s;++r)t.charCodeAt(r)>=128&&wP("not-basic"),e.push(t.charCodeAt(r));for(let u=s>0?s+1:0;u<r;){const s=n;for(let e=1,i=pP;;i+=pP){u>=r&&wP("invalid-input");const s=(a=t.charCodeAt(u++))>=48&&a<58?a-48+26:a>=65&&a<91?a-65:a>=97&&a<123?a-97:pP;s>=pP&&wP("invalid-input"),s>gP((dP-n)/e)&&wP("overflow"),n+=s*e;const c=i<=o?1:i>=o+26?26:i-o;if(s<c)break;const h=pP-c;e>gP(dP/h)&&wP("overflow"),e*=h}const c=e.length+1;o=vP(n-s,c,0==s),gP(n/c)>dP-i&&wP("overflow"),i+=gP(n/c),n%=c,e.splice(n++,0,i)}var a;return String.fromCodePoint(...e)}(r):r}if(e===PB.SOL)return new Wo(t).toBase58();if(e===PB.ETH||e===PB.BSC)return"0x"+t.toString("hex");if(e===PB.Injective)return eP("inj",t,"bech32");if(e===PB.A||e===PB.AAAA)return fP.fromByteArray([...t]).toString();throw new Dc(zc.InvalidARecord)},cL=(t,e)=>{if(sL.has(e))return e!==PB.CNAME&&e!==PB.TXT||(t=_P(t)),Buffer.from(t,"utf-8");if(e===PB.SOL)return new Wo(t).toBuffer();if(e===PB.ETH||e===PB.BSC)return CM("0x"===t.slice(0,2),zc.InvalidEvmAddress),Buffer.from(t.slice(2),"hex");if(e===PB.Injective){const e=tP(t);return CM("inj"===e.prefix,zc.InvalidInjectiveAddress),CM(20===e.data.length,zc.InvalidInjectiveAddress),Buffer.from(e.data)}if(e===PB.A){const e=fP.parse(t).toByteArray();return CM(4===e.length,zc.InvalidARecord),Buffer.from(e)}if(e===PB.AAAA){const e=fP.parse(t).toByteArray();return CM(16===e.length,zc.InvalidAAAARecord),Buffer.from(e)}throw new Dc(zc.InvalidARecord)},hL=(t,e)=>{const{pubkey:r}=LM(t),n=AM("".concat(e));return xM(n,AB,r)};async function lL(t,e,r,n={}){const i=hL(e,r),o=await MB.retrieve(t,i);return n.deserialize?{retrievedRecord:o,deserializedContent:uL(o.getContent(),r)}:{retrievedRecord:o}}async function fL(t,e,r,n={}){const i=r.map((t=>hL(e,t))),o=await MB.retrieveBatch(t,i);return n.deserialize?o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e],deserializedContent:uL(t.getContent(),r[e])}})):o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e]}}))}async function dL(t,e,r,n,i,o,s,a){const u=await Vf(e),c=await Hf(u,s,a),h=o||await t.getMinimumBalanceForRentExemption(r);let l;if(a){const{registry:e}=await qf(t,a);l=e.owner}return Fc(Af,Ts.programId,c,i,n,u,new Wc(h),new jc(r),s,a,l)}async function pL(t,e,r,n,i,o){const s=await Vf(e),a=await Hf(s,i,o);let u;u=i||(await ah.retrieve(t,a)).registry.owner;return Kc(Af,a,new jc(r),n,u)}async function yL(t,e,r,n,i,o){const s=await Vf(e),a=await Hf(s,n,i);let u;u=n||(await ah.retrieve(t,a)).registry.owner;return qc(Af,a,r,u,n,i,o)}async function gL(t,e,r,n,i){const o=await Vf(e),s=await Hf(o,n,i);let a;a=n||(await ah.retrieve(t,s)).registry.owner;return Vc(Af,s,r,a)}const mL=async(t,e,r,n,i,o=Cf,s)=>{if(e.includes(".")||e.trim().toLowerCase()!==e)throw new Dc(zc.InvalidDomain);const[a]=Wo.findProgramAddressSync([Bf.toBuffer()],Bf),u=AM(e),c=xM(u,void 0,If),h=AM(c.toBase58()),l=xM(h,a),[f]=Wo.findProgramAddressSync([c.toBuffer()],Bf),d=Nf.findIndex((t=>null==s?void 0:s.equals(t)));let p;const y=[];if(-1!==d&&s){p=Cc(o,s,!0);const e=await t.getAccountInfo(p);if(!(null==e?void 0:e.data)){const t=Nc(n,p,s,o);y.push(t)}}const g=new r_.PythHttpClient(t,r_.getPythProgramKeyForCluster("mainnet-beta")),m=await g.getData(),w=zf.get(o.toBase58());if(!w)throw new Dc(zc.SymbolNotFound,`No symbol found for mint ${o.toBase58()}`);const b=m.productPrice.get("Crypto."+w+"/USD"),v=m.productFromSymbol.get("Crypto."+w+"/USD"),_=Cc(o,jf),k=new Zc({name:e,space:r,referrerIdxOpt:-1!=d?d:null}).getInstruction(Bf,Af,If,c,l,Ts.programId,a,n,i,Df,b.productAccountKey,new Wo(v.price_account),_,yc,ms,f,p);return y.push(k),[[],y]},wL=async(t,e,r,n,i)=>{let[o]=await Wo.findProgramAddress([Bf.toBuffer()],Bf),s=await Vf(t.toBase58()),a=await Hf(s,o,n);return[[],[new $c({name:e}).getInstruction(Bf,Af,If,a,Ts.programId,o,r,ms,n,i)]]},bL=async(t,e,r,n=2e3)=>{const i=[],o=e.split(".")[0];if(!o)throw new Dc(zc.InvalidSubdomain);const{parent:s,pubkey:a}=LM(e),u=await t.getMinimumBalanceForRentExemption(n+ah.HEADER_LEN),c=await dL(t,"\0".concat(o),n,r,r,u,void 0,s);i.push(c);const h=UM(e,!0),l=await t.getAccountInfo(h);if(!(null==l?void 0:l.data)){const[,t]=await wL(a,"\0".concat(o),r,s,r);i.push(...t)}return[[],i]},vL=async(t,e,r,n,i,o)=>{CM(r!==PB.SOL,zc.UnsupportedRecord);const{pubkey:s,hashed:a,parent:u}=LM(`${r}.${e}`,OB.V1),c=JP(n,r).length,h=await t.getMinimumBalanceForRentExemption(c+ah.HEADER_LEN);return Fc(Af,Ts.programId,s,i,o,a,new Wc(h),new jc(c),void 0,u,i)},_L=(t,e,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=LM(`${e}.${t}`,OB.V2);if(a&&(s=LM(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,e,r,n,i,o,s,a)=>new wB({record:o,content:Array.from(s)}).getInstruction(a,fI.programId,i,t,e,r,n,AB))(i,o,s,n,Af,"".concat(e),cL(r,e),SB);return u},kL=async(t,e,r,n,i,o)=>{CM(r!==PB.SOL,zc.UnsupportedRecord);const{pubkey:s}=LM(`${r}.${e}`,OB.V1),a=await t.getAccountInfo(s);CM(!!(null==a?void 0:a.data),zc.AccountDoesNotExist);const u=JP(n,r);if((null==a?void 0:a.data.slice(96).length)!==u.length)return[Vc(Af,s,o,i),await vL(t,e,r,n,i,o)];return[Kc(Af,s,new jc(0),u,i)]},EL=(t,e,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=LM(`${e}.${t}`,OB.V2);if(a&&(s=LM(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,e,r,n,i,o,s,a)=>new _B({record:o,content:Array.from(s)}).getInstruction(a,fI.programId,i,t,e,r,n,AB))(i,o,s,n,Af,"".concat(e),cL(r,e),SB);return u},SL=(t,e,r,n)=>{let{pubkey:i,parent:o,isSub:s}=LM(`${e}.${t}`,OB.V2);if(s&&(o=LM(t).pubkey),!o)throw new Error("Invalid parent");const a=((t,e,r,n,i,o)=>(new kB).getInstruction(o,fI.programId,i,t,n,e,r,AB))(n,o,r,i,Af,SB);return a},AL=(t,e,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=LM(`${r}.${e}`,OB.V2);if(u&&(a=LM(e).pubkey),!a)throw new Error("Invalid parent");const c=((t,e,r,n,i,o,s,a)=>new vB({staleness:s}).getInstruction(a,fI.programId,o,t,e,r,n,AB,i))(i,s,a,n,o,Af,t,SB);return c},xL=(t,e,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=LM(`${e}.${t}`,OB.V2);if(a&&(s=LM(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,e,r,n,i,o,s)=>new EB({roaId:Array.from(o.toBuffer())}).getInstruction(s,fI.programId,e,t,r,n,i,AB))(n,Af,o,s,r,i,SB);return u},IL=(t,e,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=LM(`${e}.${t}`,OB.V2);if(u&&(a=LM(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,e,r,n,i,o,s,a,u)=>new bB({validation:o,signature:Array.from(s),expectedPubkey:Array.from(a)}).getInstruction(u,fI.programId,i,t,e,r,n,AB))(n,s,a,r,Af,xB.Ethereum,i,o,SB);return c},BL=async(t,e,r,n,i,o)=>{const{pubkey:s,hashed:a,parent:u}=LM(`${PB.SOL}.${e}`,OB.V1),c=XP(r,s,n,i).length,h=await t.getMinimumBalanceForRentExemption(c+ah.HEADER_LEN);return[Fc(Af,Ts.programId,s,n,o,a,new Wc(h),new jc(c),void 0,u,n)]},ML=async(t,e,r,n,i,o)=>{const{pubkey:s}=LM(`${PB.SOL}.${e}`,OB.V1),a=await t.getAccountInfo(s);if(CM(!!(null==a?void 0:a.data),zc.AccountDoesNotExist),96!==(null==a?void 0:a.data.length))return[Vc(Af,s,o,n),await BL(t,e,r,n,i,o)];const u=XP(r,s,n,i);return[Kc(Af,s,new jc(0),u,n)]},PL=(t,e,r)=>{const{pubkey:n}=LM(t),[i]=Wo.findProgramAddressSync([n.toBuffer()],Bf),[o]=Wo.findProgramAddressSync([n.toBuffer(),Uint8Array.from([1,1])],Bf);return(new Yc).getInstruction(Bf,Af,Ts.programId,n,UM(t),o,i,Lf,e,r)},LL=(t,e,r,n,i,o,s,a,u)=>{const[c]=Wo.findProgramAddressSync([r.toBuffer()],Bf);return new Gc({space:e,name:t}).getInstruction(Bf,Af,If,r,n,Ts.programId,Lf,i,o,s,a,u,Ff,yc,ms,c,Kf)},OL=async(t,e,r,n,i)=>{const{pubkey:o,isSub:s,parent:a}=LM(e);if(!a||!s)throw new Dc(zc.InvalidSubdomain);if(!i){const{registry:e}=await ah.retrieve(t,o);i=e.owner}let u,c;n&&(u=a,c=(await ah.retrieve(t,a)).registry.owner);return qc(Af,o,r,i,void 0,u,c)};async function TL(t,e,r,n,i){const o=await Vf(e),s=await Hf(o,void 0,Tf),a=await t.getMinimumBalanceForRentExemption(n+ah.HEADER_LEN);let u=[Fc(Af,Ts.programId,s,r,i,o,new Wc(a),new jc(n),void 0,Tf,Of)];return u=u.concat(await KL(t,e,s,r,i)),u}async function RL(t,e,r,n){const i=await Vf(t),o=await Hf(i,void 0,Tf);return[Kc(Af,o,new jc(r),n,e)]}async function UL(t,e,r,n,i){const o=await Vf(e),s=await Hf(o,void 0,Tf);let a=[qc(Af,s,n,r,void 0)];const u=await Vf(r.toString());return await Hf(u,Of,void 0),a.push(await gL(t,r.toString(),i,Of,Tf)),a=a.concat(await KL(t,e,s,n,i)),a}async function CL(t,e){const r=await Vf(t),n=await Hf(r,void 0,Tf),i=await Vf(e.toString()),o=await Hf(i,Of,Tf);return[Vc(Af,n,e,e),Vc(Af,o,e,e)]}async function NL(t){const e=await Vf(t);return await Hf(e,void 0,Tf)}async function zL(t,e){const r=await Vf(e),n=await Hf(r,void 0,Tf),{registry:i}=await ah.retrieve(t,n);return i}async function DL(t,e){const r=await Vf(e.toString()),n=await Hf(r,Of,Tf);let i=await FL.retrieve(t,n);return[i.twitterHandle,new Wo(i.twitterRegistryKey)]}async function jL(t,e){const r=[{memcmp:{offset:0,bytes:Tf.toBase58()}},{memcmp:{offset:32,bytes:e.toBase58()}},{memcmp:{offset:64,bytes:Of.toBase58()}}],n=await t.getProgramAccounts(Af,{filters:r});for(const t of n)if(t.account.data.length>ah.HEADER_LEN+32){let e=t.account.data.slice(ah.HEADER_LEN),r=Te(FL.schema,FL,e);return[r.twitterHandle,new Wo(r.twitterRegistryKey)]}throw new Dc(zc.AccountDoesNotExist)}async function WL(t,e){const r=[{memcmp:{offset:0,bytes:Tf.toBase58()}},{memcmp:{offset:32,bytes:e.toBase58()}},{memcmp:{offset:64,bytes:new Wo(n.Buffer.alloc(32,0)).toBase58()}}],i=await t.getProgramAccounts(Af,{filters:r});if(i.length>1)throw new Dc(zc.MultipleRegistries);return i[0].account.data.slice(ah.HEADER_LEN)}class FL{constructor(t){this.twitterRegistryKey=t.twitterRegistryKey,this.twitterHandle=t.twitterHandle}static async retrieve(t,e){let r=await t.getAccountInfo(e,"processed");if(!r)throw new Dc(zc.InvalidReverseTwitter);return Te(this.schema,FL,r.data.slice(ah.HEADER_LEN))}}async function KL(t,e,r,i,o){const s=await Vf(i.toString()),a=await Hf(s,Of,Tf);let u=He(FL.schema,new FL({twitterRegistryKey:r.toBytes(),twitterHandle:e}));return[Fc(Af,Ts.programId,a,i,o,s,new Wc(await t.getMinimumBalanceForRentExemption(u.length+ah.HEADER_LEN)),new jc(u.length),Of,Tf,Of),Kc(Af,a,new jc(0),n.Buffer.from(u),Of)]}FL.schema=new Map([[FL,{kind:"struct",fields:[["twitterRegistryKey",[32]],["twitterHandle","string"]]}]]);const qL=new Wo("85iDfUvr3HJyLM2zcq5BXSiDvUWfw6cSE1FfNBo8Ap29");class VL{constructor(t){this.tag=t.tag,this.nameAccount=new Wo(t.nameAccount)}static deserialize(t){return Ge(this.schema,VL,t)}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Dc(zc.FavouriteDomainNotFound);return this.deserialize(r.data)}static async getKey(t,e){return await Wo.findProgramAddress([n.Buffer.from("favourite_domain"),e.toBuffer()],t)}static getKeySync(t,e){return Wo.findProgramAddressSync([n.Buffer.from("favourite_domain"),e.toBuffer()],t)}}VL.schema=new Map([[VL,{kind:"struct",fields:[["tag","u8"],["nameAccount",[32]]]}]]);const HL=async(t,e)=>{const[r]=VL.getKeySync(qL,new Wo(e)),n=await VL.retrieve(t,r),i=await IM(t,n.nameAccount);return{domain:n.nameAccount,reverse:i}};var $L;!function(t){t.DegenPoet1="DegenPoet#1",t.Rgb0x001="rgb0x00#1"}($L||($L={}));const ZL=new Wo("ART5dr4bDic2sQVZoFheEmUxwQq5VGSx9he7JxHcXNQD"),GL=new Wo("CSWvuDHXExVGEMR9kP8xYAHuNjXogeRck9Cnr312CC9g"),YL=(t,e)=>{const r=AM(e),n=AM(t),i=xM(n,void 0,Wf);return{domainKey:i,bgKey:xM(r,void 0,i)}},JL=t=>{switch(t){case $L.DegenPoet1:return ZL;case $L.Rgb0x001:return GL;default:throw new Dc(zc.InvalidCustomBg)}};export{Pf as BONFIDA_FIDA_BNB,Uf as BONFIDA_USDC_BNB,Wf as CUSTOM_BG_TLD,$L as CustomBg,nL as ETH_ROA_RECORDS,zc as ErrorType,VL as FavouriteDomain,rL as GUARDIANS,xf as HASH_PREFIX,Kf as METAPLEX_ID,qL as NAME_OFFERS_ID,Af as NAME_PROGRAM_ID,ah as NameRegistryState,jc as Numberu32,Wc as Numberu64,Mf as PYTH_FIDA_PRICE_ACC,Df as PYTH_MAPPING_ACC,LB as RECORD_V1_SIZE,Nf as REFERRERS,Bf as REGISTER_PROGRAM_ID,Lf as REVERSE_LOOKUP_CLASS,If as ROOT_DOMAIN_ACCOUNT,PB as Record,OB as RecordVersion,FL as ReverseTwitterRegistryState,aL as SELF_SIGNED,Dc as SNSError,Rf as SOL_RECORD_SIG_LEN,zf as TOKENS_SYM_MINT,Tf as TWITTER_ROOT_PARENT_REGISTRY_KEY,Of as TWITTER_VERIFICATION_AUTHORITY,Cf as USDC_MINT,sL as UTF8_ENCODED,jf as VAULT_OWNER,Ff as WOLVES_COLLECTION_METADATA,PL as burnDomain,Yc as burnInstruction,RL as changeTwitterRegistryData,UL as changeVerifiedPubkey,CM as check,AP as checkSolRecord,Fc as createInstruction,Zc as createInstructionV3,dL as createNameRegistry,vL as createRecordInstruction,_L as createRecordV2Instruction,$c as createReverseInstruction,wL as createReverseName,KL as createReverseTwitterRegistry,BL as createSolRecordInstruction,bL as createSubdomain,Hc as createV2Instruction,TL as createVerifiedTwitterRegistry,Gc as createWithNftInstruction,Vc as deleteInstruction,gL as deleteNameRegistry,SL as deleteRecordV2,CL as deleteTwitterRegistry,YP as deserializeRecord,uL as deserializeRecordV2Content,IL as ethValidateRecordV2Content,MM as findSubdomains,OM as getAllDomains,RM as getAllRegisteredDomains,JL as getArtistPubkey,PP as getArweaveRecord,GP as getBackgroundRecord,ZP as getBackpackRecord,HP as getBscRecord,OP as getBtcRecord,YL as getCustomBgKeys,NP as getDiscordRecord,RP as getDogeRecord,Yf as getDomainKey,LM as getDomainKeySync,TM as getDomainKeysWithReverses,zM as getDomainPriceFromName,UP as getEmailRecord,LP as getEthRecord,HL as getFavoriteDomain,zP as getGithubRecord,DL as getHandleAndRegistryKey,Vf as getHashedName,AM as getHashedNameSync,$P as getInjectiveRecord,MP as getIpfsRecord,TP as getLtcRecord,fL as getMultipleRecordsV2,Hf as getNameAccountKey,xM as getNameAccountKeySync,qf as getNameOwner,FP as getPicRecord,VP as getPointRecord,IP as getRecord,xP as getRecordKeySync,lL as getRecordV2,hL as getRecordV2Key,BP as getRecords,DP as getRedditRecord,Jf as getReverseKey,UM as getReverseKeySync,KP as getShdwRecord,qP as getSolRecord,WP as getTelegramRecord,NM as getTokenizedDomains,jL as getTwitterHandleandRegistryKeyViaFilters,jP as getTwitterRecord,zL as getTwitterRegistry,WL as getTwitterRegistryData,NL as getTwitterRegistryKey,CP as getUrlRecord,$f as performReverseLookup,Zf as performReverseLookupBatch,Jc as reallocInstruction,mL as registerDomainName,LL as registerWithNft,QP as resolve,rh as retrieveNftOwner,nh as retrieveNfts,sh as retrieveRecords,IM as reverseLookup,BM as reverseLookupBatch,JP as serializeRecord,cL as serializeRecordV2Content,XP as serializeSolRecord,qc as transferInstruction,yL as transferNameOwnership,OL as transferSubdomain,Kc as updateInstruction,pL as updateNameRegistryData,kL as updateRecordInstruction,EL as updateRecordV2Instruction,ML as updateSolRecordInstruction,AL as validateRecordV2Content,oL as verifyRightOfAssociation,iL as verifyStaleness,xL as writRoaRecordV2};
44
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */;const Px=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Lx=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Ox=BigInt(1),Tx=BigInt(2),Rx=(t,e)=>(t+e/Tx)/e,Ux=vk(Px,void 0,void 0,{sqrt:function(t){const e=Px,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),u=BigInt(88),c=t*t*t%e,h=c*c*t%e,l=gk(h,r,e)*h%e,f=gk(l,r,e)*h%e,d=gk(f,Tx,e)*c%e,p=gk(d,i,e)*d%e,y=gk(p,o,e)*p%e,g=gk(y,a,e)*y%e,m=gk(g,u,e)*g%e,w=gk(m,a,e)*y%e,b=gk(w,r,e)*h%e,v=gk(b,s,e)*p%e,_=gk(v,n,e)*c%e,k=gk(_,Tx,e);if(!Ux.eql(Ux.sqr(k),t))throw new Error("Cannot find square root");return k}}),Cx=function(t,e){const r=e=>xx({...t,...Mx(e)});return Object.freeze({...r(e),create:r})}({a:BigInt(0),b:BigInt(7),Fp:Ux,n:Lx,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=Lx,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Ox*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Rx(o*t,e),u=Rx(-n*t,e);let c=pk(t-a*r-u*i,e),h=pk(-a*n-u*o,e);const l=c>s,f=h>s;if(l&&(c=e-c),f&&(h=e-h),c>s||h>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:c,k2neg:f,k2:h}}}},iE);function Nx(t){try{return Kk.ExtendedPoint.fromHex(t),!0}catch{return!1}}BigInt(0),Cx.ProjectivePoint;const zx=Kk.verify,Dx=t=>s_.Buffer.isBuffer(t)?t:t instanceof Uint8Array?s_.Buffer.from(t.buffer,t.byteOffset,t.byteLength):s_.Buffer.from(t);class jx{constructor(t){Object.assign(this,t)}encode(){return s_.Buffer.from(UE(Wx,this))}static decode(t){return zE(Wx,this,t)}static decodeUnchecked(t){return kE(Wx,this,t)}}const Wx=new Map;var Fx;let Kx;const qx=32;let Vx=1;Kx=Symbol.toStringTag;class Hx extends jx{constructor(t){if(super({}),this._bn=void 0,function(t){return void 0!==t._bn}(t))this._bn=t._bn;else{if("string"==typeof t){const e=Xk.decode(t);if(e.length!=qx)throw new Error("Invalid public key input");this._bn=new Zk(e)}else this._bn=new Zk(t);if(this._bn.byteLength()>qx)throw new Error("Invalid public key input")}}static unique(){const t=new Hx(Vx);return Vx+=1,new Hx(t.toBuffer())}equals(t){return this._bn.eq(t._bn)}toBase58(){return Xk.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){const t=this.toBuffer();return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}toBuffer(){const t=this._bn.toArrayLike(s_.Buffer);if(t.length===qx)return t;const e=s_.Buffer.alloc(32);return t.copy(e,32-t.length),e}get[Kx](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(t,e,r){const n=s_.Buffer.concat([t.toBuffer(),s_.Buffer.from(e),r.toBuffer()]),i=iE(n);return new Hx(i)}static createProgramAddressSync(t,e){let r=s_.Buffer.alloc(0);t.forEach((function(t){if(t.length>32)throw new TypeError("Max seed length exceeded");r=s_.Buffer.concat([r,Dx(t)])})),r=s_.Buffer.concat([r,e.toBuffer(),s_.Buffer.from("ProgramDerivedAddress")]);const n=iE(r);if(Nx(n))throw new Error("Invalid seeds, address must fall off the curve");return new Hx(n)}static async createProgramAddress(t,e){return this.createProgramAddressSync(t,e)}static findProgramAddressSync(t,e){let r,n=255;for(;0!=n;){try{const i=t.concat(s_.Buffer.from([n]));r=this.createProgramAddressSync(i,e)}catch(t){if(t instanceof TypeError)throw t;n--;continue}return[r,n]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(t,e){return this.findProgramAddressSync(t,e)}static isOnCurve(t){return Nx(new Hx(t).toBytes())}}Fx=Hx,Hx.default=new Fx("11111111111111111111111111111111"),Wx.set(Hx,{kind:"struct",fields:[["_bn","u256"]]}),new Hx("BPFLoader1111111111111111111111111111111111");class $x{constructor(t,e){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=t,this.accountKeysFromLookups=e}keySegments(){const t=[this.staticAccountKeys];return this.accountKeysFromLookups&&(t.push(this.accountKeysFromLookups.writable),t.push(this.accountKeysFromLookups.readonly)),t}get(t){for(const e of this.keySegments()){if(t<e.length)return e[t];t-=e.length}}get length(){return this.keySegments().flat().length}compileInstructions(t){if(this.length>256)throw new Error("Account index overflow encountered during compilation");const e=new Map;this.keySegments().flat().forEach(((t,r)=>{e.set(t.toBase58(),r)}));const r=t=>{const r=e.get(t.toBase58());if(void 0===r)throw new Error("Encountered an unknown instruction account key during compilation");return r};return t.map((t=>({programIdIndex:r(t.programId),accountKeyIndexes:t.keys.map((t=>r(t.pubkey))),data:t.data})))}}const Zx=(t="publicKey")=>LS(32,t),Gx=(t="string")=>{const e=MS([xS("length"),xS("lengthPadding"),LS(ES(xS(),-8),"chars")],t),r=e.decode.bind(e),n=e.encode.bind(e),i=e;return i.decode=(t,e)=>r(t,e).chars.toString(),i.encode=(t,e,r)=>{const i={chars:s_.Buffer.from(t,"utf8")};return n(i,e,r)},i.alloc=t=>xS().span+xS().span+s_.Buffer.from(t,"utf8").length,i};function Yx(t,e){const r=t=>{if(t.span>=0)return t.span;if("function"==typeof t.alloc)return t.alloc(e[t.property]);if("count"in t&&"elementLayout"in t){const n=e[t.property];if(Array.isArray(n))return n.length*r(t.elementLayout)}else if("fields"in t)return Yx({layout:t},e[t.property]);return 0};let n=0;return t.layout.fields.forEach((t=>{n+=r(t)})),n}function Jx(t){let e=0,r=0;for(;;){let n=t.shift();if(e|=(127&n)<<7*r,r+=1,0==(128&n))break}return e}function Xx(t,e){let r=e;for(;;){let e=127&r;if(r>>=7,0==r){t.push(e);break}e|=128,t.push(e)}}function Qx(t,e){if(!t)throw new Error(e||"Assertion failed")}class tI{constructor(t,e){this.payer=void 0,this.keyMetaMap=void 0,this.payer=t,this.keyMetaMap=e}static compile(t,e){const r=new Map,n=t=>{const e=t.toBase58();let n=r.get(e);return void 0===n&&(n={isSigner:!1,isWritable:!1,isInvoked:!1},r.set(e,n)),n},i=n(e);i.isSigner=!0,i.isWritable=!0;for(const e of t){n(e.programId).isInvoked=!0;for(const t of e.keys){const e=n(t.pubkey);e.isSigner||=t.isSigner,e.isWritable||=t.isWritable}}return new tI(e,r)}getMessageComponents(){const t=[...this.keyMetaMap.entries()];Qx(t.length<=256,"Max static account keys length exceeded");const e=t.filter((([,t])=>t.isSigner&&t.isWritable)),r=t.filter((([,t])=>t.isSigner&&!t.isWritable)),n=t.filter((([,t])=>!t.isSigner&&t.isWritable)),i=t.filter((([,t])=>!t.isSigner&&!t.isWritable)),o={numRequiredSignatures:e.length+r.length,numReadonlySignedAccounts:r.length,numReadonlyUnsignedAccounts:i.length};{Qx(e.length>0,"Expected at least one writable signer key");const[t]=e[0];Qx(t===this.payer.toBase58(),"Expected first writable signer key to be the fee payer")}return[o,[...e.map((([t])=>new Hx(t))),...r.map((([t])=>new Hx(t))),...n.map((([t])=>new Hx(t))),...i.map((([t])=>new Hx(t)))]]}extractTableLookup(t){const[e,r]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&t.isWritable)),[n,i]=this.drainKeysFoundInLookupTable(t.state.addresses,(t=>!t.isSigner&&!t.isInvoked&&!t.isWritable));if(0!==e.length||0!==n.length)return[{accountKey:t.key,writableIndexes:e,readonlyIndexes:n},{writable:r,readonly:i}]}drainKeysFoundInLookupTable(t,e){const r=new Array,n=new Array;for(const[i,o]of this.keyMetaMap.entries())if(e(o)){const e=new Hx(i),o=t.findIndex((t=>t.equals(e)));o>=0&&(Qx(o<256,"Max lookup table index exceeded"),r.push(o),n.push(e),this.keyMetaMap.delete(i))}return[r,n]}}class eI{constructor(t){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=t.header,this.accountKeys=t.accountKeys.map((t=>new Hx(t))),this.recentBlockhash=t.recentBlockhash,this.instructions=t.instructions,this.instructions.forEach((t=>this.indexToProgramIds.set(t.programIdIndex,this.accountKeys[t.programIdIndex])))}get version(){return"legacy"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map((t=>({programIdIndex:t.programIdIndex,accountKeyIndexes:t.accounts,data:Xk.decode(t.data)})))}get addressTableLookups(){return[]}getAccountKeys(){return new $x(this.staticAccountKeys)}static compile(t){const e=tI.compile(t.instructions,t.payerKey),[r,n]=e.getMessageComponents(),i=new $x(n).compileInstructions(t.instructions).map((t=>({programIdIndex:t.programIdIndex,accounts:t.accountKeyIndexes,data:Xk.encode(t.data)})));return new eI({header:r,accountKeys:n,recentBlockhash:t.recentBlockhash,instructions:i})}isAccountSigner(t){return t<this.header.numRequiredSignatures}isAccountWritable(t){const e=this.header.numRequiredSignatures;return t>=this.header.numRequiredSignatures?t-e<this.accountKeys.length-e-this.header.numReadonlyUnsignedAccounts:t<e-this.header.numReadonlySignedAccounts}isProgramId(t){return this.indexToProgramIds.has(t)}programIds(){return[...this.indexToProgramIds.values()]}nonProgramIds(){return this.accountKeys.filter(((t,e)=>!this.isProgramId(e)))}serialize(){const t=this.accountKeys.length;let e=[];Xx(e,t);const r=this.instructions.map((t=>{const{accounts:e,programIdIndex:r}=t,n=Array.from(Xk.decode(t.data));let i=[];Xx(i,e.length);let o=[];return Xx(o,n.length),{programIdIndex:r,keyIndicesCount:s_.Buffer.from(i),keyIndices:e,dataLength:s_.Buffer.from(o),data:n}}));let n=[];Xx(n,r.length);let i=s_.Buffer.alloc(1232);s_.Buffer.from(n).copy(i);let o=n.length;r.forEach((t=>{const e=MS([SS("programIdIndex"),LS(t.keyIndicesCount.length,"keyIndicesCount"),PS(SS("keyIndex"),t.keyIndices.length,"keyIndices"),LS(t.dataLength.length,"dataLength"),PS(SS("userdatum"),t.data.length,"data")]).encode(t,i,o);o+=e})),i=i.slice(0,o);const s=MS([LS(1,"numRequiredSignatures"),LS(1,"numReadonlySignedAccounts"),LS(1,"numReadonlyUnsignedAccounts"),LS(e.length,"keyCount"),PS(Zx("key"),t,"keys"),Zx("recentBlockhash")]),a={numRequiredSignatures:s_.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:s_.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:s_.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:s_.Buffer.from(e),keys:this.accountKeys.map((t=>Dx(t.toBytes()))),recentBlockhash:Xk.decode(this.recentBlockhash)};let u=s_.Buffer.alloc(2048);const c=s.encode(a,u);return i.copy(u,c),u.slice(0,c+i.length)}static from(t){let e=[...t];const r=e.shift();if(r!==(127&r))throw new Error("Versioned messages must be deserialized with VersionedMessage.deserialize()");const n=e.shift(),i=e.shift(),o=Jx(e);let s=[];for(let t=0;t<o;t++){const t=e.slice(0,qx);e=e.slice(qx),s.push(new Hx(s_.Buffer.from(t)))}const a=e.slice(0,qx);e=e.slice(qx);const u=Jx(e);let c=[];for(let t=0;t<u;t++){const t=e.shift(),r=Jx(e),n=e.slice(0,r);e=e.slice(r);const i=Jx(e),o=e.slice(0,i),s=Xk.encode(s_.Buffer.from(o));e=e.slice(i),c.push({programIdIndex:t,accounts:n,data:s})}const h={header:{numRequiredSignatures:r,numReadonlySignedAccounts:n,numReadonlyUnsignedAccounts:i},recentBlockhash:Xk.encode(s_.Buffer.from(a)),accountKeys:s,instructions:c};return new eI(h)}}const rI=s_.Buffer.alloc(64).fill(0);class nI{constructor(t){this.keys=void 0,this.programId=void 0,this.data=s_.Buffer.alloc(0),this.programId=t.programId,this.keys=t.keys,t.data&&(this.data=t.data)}toJSON(){return{keys:this.keys.map((({pubkey:t,isSigner:e,isWritable:r})=>({pubkey:t.toJSON(),isSigner:e,isWritable:r}))),programId:this.programId.toJSON(),data:[...this.data]}}}class iI{get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(t){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,t)if(t.feePayer&&(this.feePayer=t.feePayer),t.signatures&&(this.signatures=t.signatures),Object.prototype.hasOwnProperty.call(t,"nonceInfo")){const{minContextSlot:e,nonceInfo:r}=t;this.minNonceContextSlot=e,this.nonceInfo=r}else if(Object.prototype.hasOwnProperty.call(t,"lastValidBlockHeight")){const{blockhash:e,lastValidBlockHeight:r}=t;this.recentBlockhash=e,this.lastValidBlockHeight=r}else{const{recentBlockhash:e,nonceInfo:r}=t;r&&(this.nonceInfo=r),this.recentBlockhash=e}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map((t=>t.toJSON())),signers:this.signatures.map((({publicKey:t})=>t.toJSON()))}}add(...t){if(0===t.length)throw new Error("No instructions");return t.forEach((t=>{"instructions"in t?this.instructions=this.instructions.concat(t.instructions):"data"in t&&"programId"in t&&"keys"in t?this.instructions.push(t):this.instructions.push(new nI(t))})),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let t,e,r;if(this.nonceInfo?(t=this.nonceInfo.nonce,e=this.instructions[0]!=this.nonceInfo.nonceInstruction?[this.nonceInfo.nonceInstruction,...this.instructions]:this.instructions):(t=this.recentBlockhash,e=this.instructions),!t)throw new Error("Transaction recentBlockhash required");if(e.length<1&&console.warn("No instructions provided"),this.feePayer)r=this.feePayer;else{if(!(this.signatures.length>0&&this.signatures[0].publicKey))throw new Error("Transaction fee payer required");r=this.signatures[0].publicKey}for(let t=0;t<e.length;t++)if(void 0===e[t].programId)throw new Error(`Transaction instruction index ${t} has undefined program id`);const n=[],i=[];e.forEach((t=>{t.keys.forEach((t=>{i.push({...t})}));const e=t.programId.toString();n.includes(e)||n.push(e)})),n.forEach((t=>{i.push({pubkey:new Hx(t),isSigner:!1,isWritable:!1})}));const o=[];i.forEach((t=>{const e=t.pubkey.toString(),r=o.findIndex((t=>t.pubkey.toString()===e));r>-1?(o[r].isWritable=o[r].isWritable||t.isWritable,o[r].isSigner=o[r].isSigner||t.isSigner):o.push(t)})),o.sort((function(t,e){return t.isSigner!==e.isSigner?t.isSigner?-1:1:t.isWritable!==e.isWritable?t.isWritable?-1:1:t.pubkey.toBase58().localeCompare(e.pubkey.toBase58(),"en",{localeMatcher:"best fit",usage:"sort",sensitivity:"variant",ignorePunctuation:!1,numeric:!1,caseFirst:"lower"})}));const s=o.findIndex((t=>t.pubkey.equals(r)));if(s>-1){const[t]=o.splice(s,1);t.isSigner=!0,t.isWritable=!0,o.unshift(t)}else o.unshift({pubkey:r,isSigner:!0,isWritable:!0});for(const t of this.signatures){const e=o.findIndex((e=>e.pubkey.equals(t.publicKey)));if(!(e>-1))throw new Error(`unknown signer: ${t.publicKey.toString()}`);o[e].isSigner||(o[e].isSigner=!0,console.warn("Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release."))}let a=0,u=0,c=0;const h=[],l=[];o.forEach((({pubkey:t,isSigner:e,isWritable:r})=>{e?(h.push(t.toString()),a+=1,r||(u+=1)):(l.push(t.toString()),r||(c+=1))}));const f=h.concat(l),d=e.map((t=>{const{data:e,programId:r}=t;return{programIdIndex:f.indexOf(r.toString()),accounts:t.keys.map((t=>f.indexOf(t.pubkey.toString()))),data:Xk.encode(e)}}));return d.forEach((t=>{Qx(t.programIdIndex>=0),t.accounts.forEach((t=>Qx(t>=0)))})),new eI({header:{numRequiredSignatures:a,numReadonlySignedAccounts:u,numReadonlyUnsignedAccounts:c},accountKeys:f,recentBlockhash:t,instructions:d})}_compile(){const t=this.compileMessage(),e=t.accountKeys.slice(0,t.header.numRequiredSignatures);return this.signatures.length===e.length&&this.signatures.every(((t,r)=>e[r].equals(t.publicKey)))||(this.signatures=e.map((t=>({signature:null,publicKey:t})))),t}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(t){return(await t.getFeeForMessage(this.compileMessage())).value}setSigners(...t){if(0===t.length)throw new Error("No signers");const e=new Set;this.signatures=t.filter((t=>{const r=t.toString();return!e.has(r)&&(e.add(r),!0)})).map((t=>({signature:null,publicKey:t})))}sign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}this.signatures=r.map((t=>({signature:null,publicKey:t.publicKey})));const n=this._compile();this._partialSign(n,...r)}partialSign(...t){if(0===t.length)throw new Error("No signers");const e=new Set,r=[];for(const n of t){const t=n.publicKey.toString();e.has(t)||(e.add(t),r.push(n))}const n=this._compile();this._partialSign(n,...r)}_partialSign(t,...e){const r=t.serialize();e.forEach((t=>{const e=((t,e)=>Kk.sign(t,e.slice(0,32)))(r,t.secretKey);this._addSignature(t.publicKey,Dx(e))}))}addSignature(t,e){this._compile(),this._addSignature(t,e)}_addSignature(t,e){Qx(64===e.length);const r=this.signatures.findIndex((e=>t.equals(e.publicKey)));if(r<0)throw new Error(`unknown signer: ${t.toString()}`);this.signatures[r].signature=s_.Buffer.from(e)}verifySignatures(t){return this._verifySignatures(this.serializeMessage(),void 0===t||t)}_verifySignatures(t,e){for(const{signature:r,publicKey:n}of this.signatures)if(null===r){if(e)return!1}else if(!zx(r,t,n.toBytes()))return!1;return!0}serialize(t){const{requireAllSignatures:e,verifySignatures:r}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},t),n=this.serializeMessage();if(r&&!this._verifySignatures(n,e))throw new Error("Signature verification failed");return this._serialize(n)}_serialize(t){const{signatures:e}=this,r=[];Xx(r,e.length);const n=r.length+64*e.length+t.length,i=s_.Buffer.alloc(n);return Qx(e.length<256),s_.Buffer.from(r).copy(i,0),e.forEach((({signature:t},e)=>{null!==t&&(Qx(64===t.length,"signature has invalid length"),s_.Buffer.from(t).copy(i,r.length+64*e))})),t.copy(i,r.length+64*e.length),Qx(i.length<=1232,`Transaction too large: ${i.length} > 1232`),i}get keys(){return Qx(1===this.instructions.length),this.instructions[0].keys.map((t=>t.pubkey))}get programId(){return Qx(1===this.instructions.length),this.instructions[0].programId}get data(){return Qx(1===this.instructions.length),this.instructions[0].data}static from(t){let e=[...t];const r=Jx(e);let n=[];for(let t=0;t<r;t++){const t=e.slice(0,64);e=e.slice(64),n.push(Xk.encode(s_.Buffer.from(t)))}return iI.populate(eI.from(e),n)}static populate(t,e=[]){const r=new iI;return r.recentBlockhash=t.recentBlockhash,t.header.numRequiredSignatures>0&&(r.feePayer=t.accountKeys[0]),e.forEach(((e,n)=>{const i={signature:e==Xk.encode(rI)?null:Xk.decode(e),publicKey:t.accountKeys[n]};r.signatures.push(i)})),t.instructions.forEach((e=>{const n=e.accounts.map((e=>{const n=t.accountKeys[e];return{pubkey:n,isSigner:r.signatures.some((t=>t.publicKey.toString()===n.toString()))||t.isAccountSigner(e),isWritable:t.isAccountWritable(e)}}));r.instructions.push(new nI({keys:n,programId:t.accountKeys[e.programIdIndex],data:Xk.decode(e.data)}))})),r._message=t,r._json=r.toJSON(),r}}new Hx("SysvarC1ock11111111111111111111111111111111"),new Hx("SysvarEpochSchedu1e111111111111111111111111"),new Hx("Sysvar1nstructions1111111111111111111111111");const oI=new Hx("SysvarRecentB1ockHashes11111111111111111111"),sI=new Hx("SysvarRent111111111111111111111111111111111");function aI(t,e){const r=t.layout.span>=0?t.layout.span:Yx(t,e),n=s_.Buffer.alloc(r),i=Object.assign({instruction:t.index},e);return t.layout.encode(i,n),n}new Hx("SysvarRewards111111111111111111111111111111"),new Hx("SysvarS1otHashes111111111111111111111111111"),new Hx("SysvarS1otHistory11111111111111111111111111"),new Hx("SysvarStakeHistory1111111111111111111111111");const uI=IS("lamportsPerSignature"),cI=MS([xS("version"),xS("state"),Zx("authorizedPubkey"),Zx("nonce"),MS([uI],"feeCalculator")]).span,hI=(8,t=>{const e=LS(8,t),{encode:r,decode:n}=(t=>({decode:t.decode.bind(t),encode:t.encode.bind(t)}))(e),i=e;return i.decode=(t,e)=>{const r=n(t,e);return TS(s_.Buffer.from(r))},i.encode=(t,e,n)=>{const i=US(t,8);return r(i,e,n)},i});const lI=Object.freeze({Create:{index:0,layout:MS([xS("instruction"),BS("lamports"),BS("space"),Zx("programId")])},Assign:{index:1,layout:MS([xS("instruction"),Zx("programId")])},Transfer:{index:2,layout:MS([xS("instruction"),hI("lamports")])},CreateWithSeed:{index:3,layout:MS([xS("instruction"),Zx("base"),Gx("seed"),BS("lamports"),BS("space"),Zx("programId")])},AdvanceNonceAccount:{index:4,layout:MS([xS("instruction")])},WithdrawNonceAccount:{index:5,layout:MS([xS("instruction"),BS("lamports")])},InitializeNonceAccount:{index:6,layout:MS([xS("instruction"),Zx("authorized")])},AuthorizeNonceAccount:{index:7,layout:MS([xS("instruction"),Zx("authorized")])},Allocate:{index:8,layout:MS([xS("instruction"),BS("space")])},AllocateWithSeed:{index:9,layout:MS([xS("instruction"),Zx("base"),Gx("seed"),BS("space"),Zx("programId")])},AssignWithSeed:{index:10,layout:MS([xS("instruction"),Zx("base"),Gx("seed"),Zx("programId")])},TransferWithSeed:{index:11,layout:MS([xS("instruction"),hI("lamports"),Gx("seed"),Zx("programId")])},UpgradeNonceAccount:{index:12,layout:MS([xS("instruction")])}});class fI{constructor(){}static createAccount(t){const e=aI(lI.Create,{lamports:t.lamports,space:t.space,programId:Dx(t.programId.toBuffer())});return new nI({keys:[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!0,isWritable:!0}],programId:this.programId,data:e})}static transfer(t){let e,r;return"basePubkey"in t?(e=aI(lI.TransferWithSeed,{lamports:BigInt(t.lamports),seed:t.seed,programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.fromPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]):(e=aI(lI.Transfer,{lamports:BigInt(t.lamports)}),r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0}]),new nI({keys:r,programId:this.programId,data:e})}static assign(t){let e,r;return"basePubkey"in t?(e=aI(lI.AssignWithSeed,{base:Dx(t.basePubkey.toBuffer()),seed:t.seed,programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]):(e=aI(lI.Assign,{programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]),new nI({keys:r,programId:this.programId,data:e})}static createAccountWithSeed(t){const e=aI(lI.CreateWithSeed,{base:Dx(t.basePubkey.toBuffer()),seed:t.seed,lamports:t.lamports,space:t.space,programId:Dx(t.programId.toBuffer())});let r=[{pubkey:t.fromPubkey,isSigner:!0,isWritable:!0},{pubkey:t.newAccountPubkey,isSigner:!1,isWritable:!0}];return t.basePubkey!=t.fromPubkey&&r.push({pubkey:t.basePubkey,isSigner:!0,isWritable:!1}),new nI({keys:r,programId:this.programId,data:e})}static createNonceAccount(t){const e=new iI;"basePubkey"in t&&"seed"in t?e.add(fI.createAccountWithSeed({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,basePubkey:t.basePubkey,seed:t.seed,lamports:t.lamports,space:cI,programId:this.programId})):e.add(fI.createAccount({fromPubkey:t.fromPubkey,newAccountPubkey:t.noncePubkey,lamports:t.lamports,space:cI,programId:this.programId}));const r={noncePubkey:t.noncePubkey,authorizedPubkey:t.authorizedPubkey};return e.add(this.nonceInitialize(r)),e}static nonceInitialize(t){const e=aI(lI.InitializeNonceAccount,{authorized:Dx(t.authorizedPubkey.toBuffer())}),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:oI,isSigner:!1,isWritable:!1},{pubkey:sI,isSigner:!1,isWritable:!1}],programId:this.programId,data:e};return new nI(r)}static nonceAdvance(t){const e=aI(lI.AdvanceNonceAccount),r={keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:oI,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e};return new nI(r)}static nonceWithdraw(t){const e=aI(lI.WithdrawNonceAccount,{lamports:t.lamports});return new nI({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.toPubkey,isSigner:!1,isWritable:!0},{pubkey:oI,isSigner:!1,isWritable:!1},{pubkey:sI,isSigner:!1,isWritable:!1},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static nonceAuthorize(t){const e=aI(lI.AuthorizeNonceAccount,{authorized:Dx(t.newAuthorizedPubkey.toBuffer())});return new nI({keys:[{pubkey:t.noncePubkey,isSigner:!1,isWritable:!0},{pubkey:t.authorizedPubkey,isSigner:!0,isWritable:!1}],programId:this.programId,data:e})}static allocate(t){let e,r;return"basePubkey"in t?(e=aI(lI.AllocateWithSeed,{base:Dx(t.basePubkey.toBuffer()),seed:t.seed,space:t.space,programId:Dx(t.programId.toBuffer())}),r=[{pubkey:t.accountPubkey,isSigner:!1,isWritable:!0},{pubkey:t.basePubkey,isSigner:!0,isWritable:!1}]):(e=aI(lI.Allocate,{space:t.space}),r=[{pubkey:t.accountPubkey,isSigner:!0,isWritable:!0}]),new nI({keys:r,programId:this.programId,data:e})}}fI.programId=new Hx("11111111111111111111111111111111"),new Hx("BPFLoader2111111111111111111111111111111111"),MS([xS("typeIndex"),hI("deactivationSlot"),IS("lastExtendedSlot"),SS("lastExtendedStartIndex"),SS(),PS(Zx(),ES(SS(),-1),"authority")]);const dI=sA(GS(Hx),eA(),(t=>new Hx(t))),pI=rA([eA(),YS("base64")]),yI=sA(GS(s_.Buffer),pI,(t=>s_.Buffer.from(t[0],"base64")));function gI(t){return iA([nA({jsonrpc:YS("2.0"),id:eA(),result:t}),nA({jsonrpc:YS("2.0"),id:eA(),error:nA({code:oA(),message:eA(),data:QS(HS("any",(()=>!0)))})})])}const mI=gI(oA());function wI(t){return sA(gI(t),mI,(e=>"error"in e?e:{...e,result:KS(e.result,t)}))}function bI(t){return wI(nA({context:nA({slot:XS()}),value:t}))}function vI(t){return nA({context:nA({slot:XS()}),value:t})}const _I=nA({foundation:XS(),foundationTerm:XS(),initial:XS(),taper:XS(),terminal:XS()});wI($S(JS(nA({epoch:XS(),effectiveSlot:XS(),amount:XS(),postBalance:XS(),commission:QS(JS(XS()))}))));const kI=$S(nA({slot:XS(),prioritizationFee:XS()})),EI=nA({total:XS(),validator:XS(),foundation:XS(),epoch:XS()}),SI=nA({epoch:XS(),slotIndex:XS(),slotsInEpoch:XS(),absoluteSlot:XS(),blockHeight:QS(XS()),transactionCount:QS(XS())}),AI=nA({slotsPerEpoch:XS(),leaderScheduleSlotOffset:XS(),warmup:ZS(),firstNormalEpoch:XS(),firstNormalSlot:XS()}),xI=tA(eA(),$S(XS())),II=JS(iA([nA({}),eA()])),BI=nA({err:II}),MI=YS("receivedSignature");nA({"solana-core":eA(),"feature-set":QS(XS())}),bI(nA({err:JS(iA([nA({}),eA()])),logs:JS($S(eA())),accounts:QS(JS($S(JS(nA({executable:ZS(),owner:eA(),lamports:XS(),data:$S(eA()),rentEpoch:QS(XS())}))))),unitsConsumed:QS(XS()),returnData:QS(JS(nA({programId:eA(),data:rA([eA(),YS("base64")])})))})),bI(nA({byIdentity:tA(eA(),$S(XS())),range:nA({firstSlot:XS(),lastSlot:XS()})})),wI(_I),wI(EI),wI(kI),wI(SI),wI(AI),wI(xI),wI(XS()),bI(nA({total:XS(),circulating:XS(),nonCirculating:XS(),nonCirculatingAccounts:$S(dI)}));const PI=nA({amount:eA(),uiAmount:JS(XS()),decimals:XS(),uiAmountString:QS(eA())});bI($S(nA({address:dI,amount:eA(),uiAmount:JS(XS()),decimals:XS(),uiAmountString:QS(eA())}))),bI($S(nA({pubkey:dI,account:nA({executable:ZS(),owner:dI,lamports:XS(),data:yI,rentEpoch:XS()})})));const LI=nA({program:eA(),parsed:oA(),space:XS()});bI($S(nA({pubkey:dI,account:nA({executable:ZS(),owner:dI,lamports:XS(),data:LI,rentEpoch:XS()})}))),bI($S(nA({lamports:XS(),address:dI})));const OI=nA({executable:ZS(),owner:dI,lamports:XS(),data:yI,rentEpoch:XS()});nA({pubkey:dI,account:OI});const TI=sA(iA([GS(s_.Buffer),LI]),iA([pI,LI]),(t=>Array.isArray(t)?KS(t,yI):t)),RI=nA({executable:ZS(),owner:dI,lamports:XS(),data:TI,rentEpoch:XS()});nA({pubkey:dI,account:RI}),nA({state:iA([YS("active"),YS("inactive"),YS("activating"),YS("deactivating")]),active:XS(),inactive:XS()}),wI($S(nA({signature:eA(),slot:XS(),err:II,memo:JS(eA()),blockTime:QS(JS(XS()))}))),wI($S(nA({signature:eA(),slot:XS(),err:II,memo:JS(eA()),blockTime:QS(JS(XS()))}))),nA({subscription:XS(),result:vI(OI)});const UI=nA({pubkey:dI,account:OI});nA({subscription:XS(),result:vI(UI)});const CI=nA({parent:XS(),slot:XS(),root:XS()});nA({subscription:XS(),result:CI});const NI=iA([nA({type:iA([YS("firstShredReceived"),YS("completed"),YS("optimisticConfirmation"),YS("root")]),slot:XS(),timestamp:XS()}),nA({type:YS("createdBank"),parent:XS(),slot:XS(),timestamp:XS()}),nA({type:YS("frozen"),slot:XS(),timestamp:XS(),stats:nA({numTransactionEntries:XS(),numSuccessfulTransactions:XS(),numFailedTransactions:XS(),maxTransactionsPerEntry:XS()})}),nA({type:YS("dead"),slot:XS(),timestamp:XS(),err:eA()})]);nA({subscription:XS(),result:NI}),nA({subscription:XS(),result:vI(iA([BI,MI]))}),nA({subscription:XS(),result:XS()}),nA({pubkey:eA(),gossip:JS(eA()),tpu:JS(eA()),rpc:JS(eA()),version:JS(eA())});const zI=nA({votePubkey:eA(),nodePubkey:eA(),activatedStake:XS(),epochVoteAccount:ZS(),epochCredits:$S(rA([XS(),XS(),XS()])),commission:XS(),lastVote:XS(),rootSlot:JS(XS())});wI(nA({current:$S(zI),delinquent:$S(zI)}));const DI=iA([YS("processed"),YS("confirmed"),YS("finalized")]),jI=nA({slot:XS(),confirmations:JS(XS()),err:II,confirmationStatus:QS(DI)});bI($S(JS(jI))),wI(XS());const WI=nA({accountKey:dI,writableIndexes:$S(XS()),readonlyIndexes:$S(XS())}),FI=nA({signatures:$S(eA()),message:nA({accountKeys:$S(eA()),header:nA({numRequiredSignatures:XS(),numReadonlySignedAccounts:XS(),numReadonlyUnsignedAccounts:XS()}),instructions:$S(nA({accounts:$S(XS()),data:eA(),programIdIndex:XS()})),recentBlockhash:eA(),addressTableLookups:QS($S(WI))})}),KI=nA({pubkey:dI,signer:ZS(),writable:ZS(),source:QS(iA([YS("transaction"),YS("lookupTable")]))}),qI=nA({accountKeys:$S(KI),signatures:$S(eA())}),VI=nA({parsed:oA(),program:eA(),programId:dI}),HI=nA({accounts:$S(dI),data:eA(),programId:dI}),$I=sA(iA([HI,VI]),iA([nA({parsed:oA(),program:eA(),programId:eA()}),nA({accounts:$S(eA()),data:eA(),programId:eA()})]),(t=>KS(t,"accounts"in t?HI:VI))),ZI=nA({signatures:$S(eA()),message:nA({accountKeys:$S(KI),instructions:$S($I),recentBlockhash:eA(),addressTableLookups:QS(JS($S(WI)))})}),GI=nA({accountIndex:XS(),mint:eA(),owner:QS(eA()),uiTokenAmount:PI}),YI=nA({writable:$S(dI),readonly:$S(dI)}),JI=nA({err:II,fee:XS(),innerInstructions:QS(JS($S(nA({index:XS(),instructions:$S(nA({accounts:$S(XS()),data:eA(),programIdIndex:XS()}))})))),preBalances:$S(XS()),postBalances:$S(XS()),logMessages:QS(JS($S(eA()))),preTokenBalances:QS(JS($S(GI))),postTokenBalances:QS(JS($S(GI))),loadedAddresses:QS(YI),computeUnitsConsumed:QS(XS())}),XI=nA({err:II,fee:XS(),innerInstructions:QS(JS($S(nA({index:XS(),instructions:$S($I)})))),preBalances:$S(XS()),postBalances:$S(XS()),logMessages:QS(JS($S(eA()))),preTokenBalances:QS(JS($S(GI))),postTokenBalances:QS(JS($S(GI))),loadedAddresses:QS(YI),computeUnitsConsumed:QS(XS())}),QI=iA([YS(0),YS("legacy")]),tB=nA({pubkey:eA(),lamports:XS(),postBalance:JS(XS()),rewardType:JS(eA()),commission:QS(JS(XS()))});wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:FI,meta:JS(JI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:qI,meta:JS(JI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:ZI,meta:JS(XI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:qI,meta:JS(XI),version:QS(QI)})),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),rewards:QS($S(tB)),blockTime:JS(XS()),blockHeight:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),transactions:$S(nA({transaction:FI,meta:JS(JI)})),rewards:QS($S(tB)),blockTime:JS(XS())}))),wI(JS(nA({blockhash:eA(),previousBlockhash:eA(),parentSlot:XS(),signatures:$S(eA()),blockTime:JS(XS())}))),wI(JS(nA({slot:XS(),meta:JI,blockTime:QS(JS(XS())),transaction:FI,version:QS(QI)}))),wI(JS(nA({slot:XS(),transaction:ZI,meta:JS(XI),blockTime:QS(JS(XS())),version:QS(QI)}))),bI(nA({blockhash:eA(),feeCalculator:nA({lamportsPerSignature:XS()})})),bI(nA({blockhash:eA(),lastValidBlockHeight:XS()})),bI(ZS()),wI($S(nA({slot:XS(),numTransactions:XS(),numSlots:XS(),samplePeriodSecs:XS()}))),bI(JS(nA({feeCalculator:nA({lamportsPerSignature:XS()})}))),wI(eA()),wI(eA());const eB=nA({err:II,logs:$S(eA()),signature:eA()});var rB;nA({result:vI(eB),subscription:XS()}),Object.freeze({CreateLookupTable:{index:0,layout:MS([xS("instruction"),hI("recentSlot"),SS("bumpSeed")])},FreezeLookupTable:{index:1,layout:MS([xS("instruction")])},ExtendLookupTable:{index:2,layout:MS([xS("instruction"),hI(),PS(Zx(),ES(xS(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:MS([xS("instruction")])},CloseLookupTable:{index:4,layout:MS([xS("instruction")])}}),new Hx("AddressLookupTab1e1111111111111111111111111"),Object.freeze({RequestUnits:{index:0,layout:MS([SS("instruction"),xS("units"),xS("additionalFee")])},RequestHeapFrame:{index:1,layout:MS([SS("instruction"),xS("bytes")])},SetComputeUnitLimit:{index:2,layout:MS([SS("instruction"),xS("units")])},SetComputeUnitPrice:{index:3,layout:MS([SS("instruction"),hI("microLamports")])}}),new Hx("ComputeBudget111111111111111111111111111111"),MS([SS("numSignatures"),SS("padding"),AS("signatureOffset"),AS("signatureInstructionIndex"),AS("publicKeyOffset"),AS("publicKeyInstructionIndex"),AS("messageDataOffset"),AS("messageDataSize"),AS("messageInstructionIndex")]),new Hx("Ed25519SigVerify111111111111111111111111111"),Cx.utils.isValidPrivateKey,Cx.getPublicKey,MS([SS("numSignatures"),AS("signatureOffset"),SS("signatureInstructionIndex"),AS("ethAddressOffset"),SS("ethAddressInstructionIndex"),AS("messageDataOffset"),AS("messageDataSize"),SS("messageInstructionIndex"),LS(20,"ethAddress"),LS(64,"signature"),SS("recoveryId")]),new Hx("KeccakSecp256k11111111111111111111111111111"),new Hx("StakeConfig11111111111111111111111111111111");class nB{constructor(t,e,r){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=t,this.epoch=e,this.custodian=r}}rB=nB,nB.default=new rB(0,0,Hx.default),Object.freeze({Initialize:{index:0,layout:MS([xS("instruction"),((t="authorized")=>MS([Zx("staker"),Zx("withdrawer")],t))(),((t="lockup")=>MS([BS("unixTimestamp"),BS("epoch"),Zx("custodian")],t))()])},Authorize:{index:1,layout:MS([xS("instruction"),Zx("newAuthorized"),xS("stakeAuthorizationType")])},Delegate:{index:2,layout:MS([xS("instruction")])},Split:{index:3,layout:MS([xS("instruction"),BS("lamports")])},Withdraw:{index:4,layout:MS([xS("instruction"),BS("lamports")])},Deactivate:{index:5,layout:MS([xS("instruction")])},Merge:{index:7,layout:MS([xS("instruction")])},AuthorizeWithSeed:{index:8,layout:MS([xS("instruction"),Zx("newAuthorized"),xS("stakeAuthorizationType"),Gx("authoritySeed"),Zx("authorityOwner")])}}),Object.freeze({Staker:{index:0},Withdrawer:{index:1}}),new Hx("Stake11111111111111111111111111111111111111"),Object.freeze({InitializeAccount:{index:0,layout:MS([xS("instruction"),((t="voteInit")=>MS([Zx("nodePubkey"),Zx("authorizedVoter"),Zx("authorizedWithdrawer"),SS("commission")],t))()])},Authorize:{index:1,layout:MS([xS("instruction"),Zx("newAuthorized"),xS("voteAuthorizationType")])},Withdraw:{index:3,layout:MS([xS("instruction"),BS("lamports")])},AuthorizeWithSeed:{index:10,layout:MS([xS("instruction"),((t="voteAuthorizeWithSeedArgs")=>MS([xS("voteAuthorizationType"),Zx("currentAuthorityDerivedKeyOwnerPubkey"),Gx("currentAuthorityDerivedKeySeed"),Zx("newAuthorized")],t))()])}}),Object.freeze({Voter:{index:0},Withdrawer:{index:1}}),new Hx("Vote111111111111111111111111111111111111111"),new Hx("Va1idator1nfo111111111111111111111111111111"),nA({name:eA(),website:QS(eA()),details:QS(eA()),keybaseUsername:QS(eA())}),new Hx("Vote111111111111111111111111111111111111111"),MS([Zx("nodePubkey"),Zx("authorizedWithdrawer"),SS("commission"),IS(),PS(MS([IS("slot"),xS("confirmationCount")]),ES(xS(),-8),"votes"),SS("rootSlotValid"),IS("rootSlot"),IS(),PS(MS([IS("epoch"),Zx("authorizedVoter")]),ES(xS(),-8),"authorizedVoters"),MS([PS(MS([Zx("authorizedPubkey"),IS("epochOfLastAuthorizedSwitch"),IS("targetEpoch")]),32,"buf"),IS("idx"),SS("isEmpty")],"priorVoters"),IS(),PS(MS([IS("epoch"),IS("credits"),IS("prevCredits")]),ES(xS(),-8),"epochCredits"),MS([IS("slot"),IS("timestamp")],"lastTimestamp")]);var iB,oB=["u8","u16","u32","u64","u128","i8","i16","i32","i64","i128","f32","f64"],sB=function(){function t(){this.offset=0,this.buffer_size=256,this.buffer=new ArrayBuffer(this.buffer_size),this.view=new DataView(this.buffer)}return t.prototype.resize_if_necessary=function(t){if(this.buffer_size-this.offset<t){this.buffer_size=Math.max(2*this.buffer_size,this.buffer_size+t);var e=new ArrayBuffer(this.buffer_size);new Uint8Array(e).set(new Uint8Array(this.buffer)),this.buffer=e,this.view=new DataView(e)}},t.prototype.get_used_buffer=function(){return new Uint8Array(this.buffer).slice(0,this.offset)},t.prototype.store_value=function(t,e){var r=e.substring(1),n=parseInt(r)/8;this.resize_if_necessary(n);var i="f"===e[0]?"setFloat".concat(r):"i"===e[0]?"setInt".concat(r):"setUint".concat(r);this.view[i](this.offset,t,!0),this.offset+=n},t.prototype.store_bytes=function(t){this.resize_if_necessary(t.length),new Uint8Array(this.buffer).set(new Uint8Array(t),this.offset),this.offset+=t.length},t}(),aB=function(){function t(t){this.offset=0,this.buffer_size=t.length,this.buffer=new ArrayBuffer(t.length),new Uint8Array(this.buffer).set(t),this.view=new DataView(this.buffer)}return t.prototype.assert_enough_buffer=function(t){if(this.offset+t>this.buffer.byteLength)throw new Error("Error in schema, the buffer is smaller than expected")},t.prototype.consume_value=function(t){var e=t.substring(1),r=parseInt(e)/8;this.assert_enough_buffer(r);var n="f"===t[0]?"getFloat".concat(e):"i"===t[0]?"getInt".concat(e):"getUint".concat(e),i=this.view[n](this.offset,!0);return this.offset+=r,i},t.prototype.consume_bytes=function(t){this.assert_enough_buffer(t);var e=this.buffer.slice(this.offset,this.offset+t);return this.offset+=t,e},t}(),uB=(iB=function(t,e){return iB=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},iB(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}iB(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});function cB(t,e,r){if(typeof t!==e)throw new Error("Expected ".concat(e," not ").concat(typeof t,"(").concat(t,") at ").concat(r.join(".")))}function hB(t,e,r){if(t!==e)throw new Error("Array length ".concat(t," does not match schema length ").concat(e," at ").concat(r.join(".")))}var lB=oB.concat(["bool","string"]),fB=["option","enum","array","set","map","struct"],dB=function(t){function e(e,r){var n="Invalid schema: ".concat(JSON.stringify(e)," expected ").concat(r);return t.call(this,n)||this}return uB(e,t),e}(Error);function pB(t){if("string"!=typeof t||!lB.includes(t)){if(t&&"object"==typeof t){var e=Object.keys(t);if(1===e.length&&fB.includes(e[0])){var r=e[0];if("option"===r)return pB(t[r]);if("enum"===r)return function(t){if(!Array.isArray(t))throw new dB(t,"Array");for(var e=0,r=t;e<r.length;e++){var n=r[e];if("object"!=typeof n||!("struct"in n))throw new Error('Missing "struct" key in enum schema');if("object"!=typeof n.struct||1!==Object.keys(n.struct).length)throw new Error('The "struct" in each enum must have a single key');pB({struct:n.struct})}}(t[r]);if("array"===r)return function(t){if("object"!=typeof t)throw new dB(t,"{ type, len? }");if(t.len&&"number"!=typeof t.len)throw new Error("Invalid schema: ".concat(t));if("type"in t)return pB(t.type);throw new dB(t,"{ type, len? }")}(t[r]);if("set"===r)return pB(t[r]);if("map"===r)return function(t){if("object"!=typeof t||!("key"in t)||!("value"in t))throw new dB(t,"{ key, value }");pB(t.key),pB(t.value)}(t[r]);if("struct"===r)return function(t){if("object"!=typeof t)throw new dB(t,"object");for(var e in t)pB(t[e])}(t[r])}}throw new dB(t,fB.join(", ")+" or "+lB.join(", "))}}var yB=function(){function t(t){this.encoded=new sB,this.fieldPath=["value"],this.checkTypes=t}return t.prototype.encode=function(t,e){return this.encode_value(t,e),this.encoded.get_used_buffer()},t.prototype.encode_value=function(t,e){if("string"==typeof e){if(oB.includes(e))return this.encode_integer(t,e);if("string"===e)return this.encode_string(t);if("bool"===e)return this.encode_boolean(t)}if("object"==typeof e){if("option"in e)return this.encode_option(t,e);if("enum"in e)return this.encode_enum(t,e);if("array"in e)return this.encode_array(t,e);if("set"in e)return this.encode_set(t,e);if("map"in e)return this.encode_map(t,e);if("struct"in e)return this.encode_struct(t,e)}},t.prototype.encode_integer=function(t,e){var r=parseInt(e.substring(1));r<=32||"f64"==e?(this.checkTypes&&cB(t,"number",this.fieldPath),this.encoded.store_value(t,e)):(this.checkTypes&&function(t,e){if(!(["number","string","bigint","boolean"].includes(typeof t)||"object"==typeof t&&null!==t&&"toString"in t))throw new Error("Expected bigint, number, boolean or string not ".concat(typeof t,"(").concat(t,") at ").concat(e.join(".")))}(t,this.fieldPath),this.encode_bigint(BigInt(t),r))},t.prototype.encode_bigint=function(t,e){for(var r=e/8,n=new Uint8Array(r),i=0;i<r;i++)n[i]=Number(t&BigInt(255)),t>>=BigInt(8);this.encoded.store_bytes(new Uint8Array(n))},t.prototype.encode_string=function(t){this.checkTypes&&cB(t,"string",this.fieldPath);var e=t;this.encoded.store_value(e.length,"u32");for(var r=0;r<e.length;r++)this.encoded.store_value(e.charCodeAt(r),"u8")},t.prototype.encode_boolean=function(t){this.checkTypes&&cB(t,"boolean",this.fieldPath),this.encoded.store_value(t?1:0,"u8")},t.prototype.encode_option=function(t,e){null==t?this.encoded.store_value(0,"u8"):(this.encoded.store_value(1,"u8"),this.encode_value(t,e.option))},t.prototype.encode_enum=function(t,e){this.checkTypes&&function(t,e){if("object"!=typeof t||null===t)throw new Error("Expected object not ".concat(typeof t,"(").concat(t,") at ").concat(e.join(".")))}(t,this.fieldPath);for(var r=Object.keys(t)[0],n=0;n<e.enum.length;n++){var i=e.enum[n];if(r===Object.keys(i.struct)[0])return this.encoded.store_value(n,"u8"),this.encode_struct(t,i)}throw new Error("Enum key (".concat(r,") not found in enum schema: ").concat(JSON.stringify(e)," at ").concat(this.fieldPath.join(".")))},t.prototype.encode_array=function(t,e){if(function(t){return Array.isArray(t)||!!t&&"object"==typeof t&&"length"in t&&"number"==typeof t.length&&(0===t.length||t.length>0&&t.length-1 in t)}(t))return this.encode_arraylike(t,e);if(t instanceof ArrayBuffer)return this.encode_buffer(t,e);throw new Error("Expected Array-like not ".concat(typeof t,"(").concat(t,") at ").concat(this.fieldPath.join(".")))},t.prototype.encode_arraylike=function(t,e){e.array.len?hB(t.length,e.array.len,this.fieldPath):this.encoded.store_value(t.length,"u32");for(var r=0;r<t.length;r++)this.encode_value(t[r],e.array.type)},t.prototype.encode_buffer=function(t,e){e.array.len?hB(t.byteLength,e.array.len,this.fieldPath):this.encoded.store_value(t.byteLength,"u32"),this.encoded.store_bytes(new Uint8Array(t))},t.prototype.encode_set=function(t,e){this.checkTypes&&cB(t,"object",this.fieldPath);var r=t instanceof Set?Array.from(t.values()):Object.values(t);this.encoded.store_value(r.length,"u32");for(var n=0,i=r;n<i.length;n++){var o=i[n];this.encode_value(o,e.set)}},t.prototype.encode_map=function(t,e){this.checkTypes&&cB(t,"object",this.fieldPath);var r=t instanceof Map,n=r?Array.from(t.keys()):Object.keys(t);this.encoded.store_value(n.length,"u32");for(var i=0,o=n;i<o.length;i++){var s=o[i];this.encode_value(s,e.map.key),this.encode_value(r?t.get(s):t[s],e.map.value)}},t.prototype.encode_struct=function(t,e){this.checkTypes&&cB(t,"object",this.fieldPath);for(var r=0,n=Object.keys(e.struct);r<n.length;r++){var i=n[r];this.fieldPath.push(i),this.encode_value(t[i],e.struct[i]),this.fieldPath.pop()}},t}(),gB=function(){function t(t){this.buffer=new aB(t)}return t.prototype.decode=function(t){return this.decode_value(t)},t.prototype.decode_value=function(t){if("string"==typeof t){if(oB.includes(t))return this.decode_integer(t);if("string"===t)return this.decode_string();if("bool"===t)return this.decode_boolean()}if("object"==typeof t){if("option"in t)return this.decode_option(t);if("enum"in t)return this.decode_enum(t);if("array"in t)return this.decode_array(t);if("set"in t)return this.decode_set(t);if("map"in t)return this.decode_map(t);if("struct"in t)return this.decode_struct(t)}throw new Error("Unsupported type: ".concat(t))},t.prototype.decode_integer=function(t){var e=parseInt(t.substring(1));return e<=32||"f64"==t?this.buffer.consume_value(t):this.decode_bigint(e,t.startsWith("i"))},t.prototype.decode_bigint=function(t,e){void 0===e&&(e=!1);var r=t/8,n=new Uint8Array(this.buffer.consume_bytes(r)),i=n.reduceRight((function(t,e){return t+e.toString(16).padStart(2,"0")}),"");return e&&n[r-1]?BigInt.asIntN(t,BigInt("0x".concat(i))):BigInt("0x".concat(i))},t.prototype.decode_string=function(){var t=this.decode_integer("u32"),e=new Uint8Array(this.buffer.consume_bytes(t));return String.fromCharCode.apply(null,e)},t.prototype.decode_boolean=function(){return this.buffer.consume_value("u8")>0},t.prototype.decode_option=function(t){var e=this.buffer.consume_value("u8");if(1===e)return this.decode_value(t.option);if(0!==e)throw new Error("Invalid option ".concat(e));return null},t.prototype.decode_enum=function(t){var e,r=this.buffer.consume_value("u8");if(r>t.enum.length)throw new Error("Enum option ".concat(r," is not available"));var n=t.enum[r].struct,i=Object.keys(n)[0];return(e={})[i]=this.decode_value(n[i]),e},t.prototype.decode_array=function(t){for(var e=[],r=t.array.len?t.array.len:this.decode_integer("u32"),n=0;n<r;++n)e.push(this.decode_value(t.array.type));return e},t.prototype.decode_set=function(t){for(var e=this.decode_integer("u32"),r=new Set,n=0;n<e;++n)r.add(this.decode_value(t.set));return r},t.prototype.decode_map=function(t){for(var e=this.decode_integer("u32"),r=new Map,n=0;n<e;++n){var i=this.decode_value(t.map.key),o=this.decode_value(t.map.value);r.set(i,o)}return r},t.prototype.decode_struct=function(t){var e={};for(var r in t.struct)e[r]=this.decode_value(t.struct[r]);return e},t}();function mB(t,e,r){return void 0===r&&(r=!0),r&&pB(t),new yB(r).encode(e,t)}class wB{constructor(t){this.tag=1,this.record=t.record,this.content=t.content}serialize(){return mB(wB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}wB.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class bB{constructor(t){this.tag=4,this.validation=t.validation,this.signature=t.signature,this.expectedPubkey=t.expectedPubkey}serialize(){return mB(bB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}bB.schema={struct:{tag:"u8",validation:"u8",signature:{array:{type:"u8"}},expectedPubkey:{array:{type:"u8"}}}};class vB{constructor(t){this.tag=3,this.staleness=t.staleness}serialize(){return mB(vB.schema,this)}getInstruction(t,e,r,n,i,o,s,a,u){const c=Buffer.from(this.serialize());let h=[];return h.push({pubkey:e,isSigner:!1,isWritable:!1}),h.push({pubkey:r,isSigner:!1,isWritable:!1}),h.push({pubkey:n,isSigner:!0,isWritable:!0}),h.push({pubkey:i,isSigner:!1,isWritable:!0}),h.push({pubkey:o,isSigner:!1,isWritable:!0}),h.push({pubkey:s,isSigner:!1,isWritable:!0}),h.push({pubkey:a,isSigner:!1,isWritable:!1}),h.push({pubkey:u,isSigner:!0,isWritable:!0}),new nI({keys:h,programId:t,data:c})}}vB.schema={struct:{tag:"u8",staleness:"bool"}};class _B{constructor(t){this.tag=2,this.record=t.record,this.content=t.content}serialize(){return mB(_B.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}_B.schema={struct:{tag:"u8",record:"string",content:{array:{type:"u8"}}}};class kB{constructor(){this.tag=5}serialize(){return mB(kB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}kB.schema={struct:{tag:"u8"}};class EB{constructor(t){this.tag=6,this.roaId=t.roaId}serialize(){return mB(EB.schema,this)}getInstruction(t,e,r,n,i,o,s,a){const u=Buffer.from(this.serialize());let c=[];return c.push({pubkey:e,isSigner:!1,isWritable:!1}),c.push({pubkey:r,isSigner:!1,isWritable:!1}),c.push({pubkey:n,isSigner:!0,isWritable:!0}),c.push({pubkey:i,isSigner:!1,isWritable:!0}),c.push({pubkey:o,isSigner:!1,isWritable:!0}),c.push({pubkey:s,isSigner:!0,isWritable:!0}),c.push({pubkey:a,isSigner:!1,isWritable:!1}),new nI({keys:c,programId:t,data:u})}}EB.schema={struct:{tag:"u8",roaId:{array:{type:"u8"}}}};const SB=new Hx("HP3D4D1ZCmohQGFVms2SS4LCANgJyksBf5s1F77FuFjZ"),[AB]=Hx.findProgramAddressSync([SB.toBuffer()],SB);var xB;!function(t){t[t.None=0]="None",t[t.Solana=1]="Solana",t[t.Ethereum=2]="Ethereum",t[t.UnverifiedSolana=3]="UnverifiedSolana"}(xB||(xB={}));const IB=t=>{switch(t){case xB.None:return 0;case xB.Ethereum:return 20;case xB.Solana:case xB.UnverifiedSolana:return 32;default:throw new Error("Invalid validation enum")}};class BB{constructor(t){this.stalenessValidation=t.stalenessValidation,this.rightOfAssociationValidation=t.rightOfAssociationValidation,this.contentLength=t.contentLength}static deserialize(t){return new BB(function(t,e,r){return void 0===r&&(r=!0),r&&pB(t),new gB(e).decode(t)}(this.schema,t,!0))}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data.slice(96,96+this.LEN))}}BB.LEN=8,BB.schema={struct:{stalenessValidation:"u16",rightOfAssociationValidation:"u16",contentLength:"u32"}};class MB{constructor(t,e){this.data=e,this.header=t}static deserialize(t){const e=BB.deserialize(t.slice(96,96+BB.LEN)),r=t.slice(96+BB.LEN);return new MB(e,r)}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Error("Record header account not found");return this.deserialize(r.data)}static async retrieveBatch(t,e){return(await t.getMultipleAccountsInfo(e)).map((t=>{if(null==t?void 0:t.data)return this.deserialize(t.data)}))}getContent(){let t=IB(this.header.stalenessValidation)+IB(this.header.rightOfAssociationValidation);return this.data.slice(t)}getStalenessId(){let t=IB(this.header.stalenessValidation);return this.data.slice(0,t)}getRoAId(){let t=IB(this.header.stalenessValidation),e=t+IB(this.header.rightOfAssociationValidation);return this.data.slice(t,e)}}var PB;!function(t){t.IPFS="IPFS",t.ARWV="ARWV",t.SOL="SOL",t.ETH="ETH",t.BTC="BTC",t.LTC="LTC",t.DOGE="DOGE",t.Email="email",t.Url="url",t.Discord="discord",t.Github="github",t.Reddit="reddit",t.Twitter="twitter",t.Telegram="telegram",t.Pic="pic",t.SHDW="SHDW",t.POINT="POINT",t.BSC="BSC",t.Injective="INJ",t.Backpack="backpack",t.A="A",t.AAAA="AAAA",t.CNAME="CNAME",t.TXT="TXT",t.Background="background"}(PB||(PB={}));const LB=new Map([[PB.SOL,96],[PB.ETH,20],[PB.BSC,20],[PB.Injective,20],[PB.A,4],[PB.AAAA,16],[PB.Background,32]]);var OB;!function(t){t[t.V1=1]="V1",t[t.V2=2]="V2"}(OB||(OB={}));var TB="ABAOAAAAAACwiAAAAYkHdvjtnH+IFkUYxx/v3vPe7uw8UkjsD43ChKICDQsT3iIJy4gSiZAjkn5JUFlaiFmjccT9ESkpGBGVIlQgWSkY/QDBoMgrQv0jRJDAfkCXhUmgRX23d4ebnndmd3Z3ZnfVeeDDzM7MPs8zv57Zd2+5hd1Ed4ClYAisBuuUsqLpMHgJjIBNFu1fBW8l1O8AO8Ee8Cn4HIyCg+CI0u4Y+AmMgVPgDOhuEHWBPjAZXAy2gjfA9kb73hlx+i7SK8AHYDf4BOwHB8AoOAyOguPgB/ArOKlcnwHdPe32/Uin9LTvvwTph0gv62nbubKnXT+nZ1z/DcjfFF8vQno7uEaxH923BGVXN9v5Zcgvj/VFPIT8Y/H1k0jXxPn1SEfARjBdab8V+TfB22CXUh5xd3OcZTH3g6di1LZJbLNs55q96M9n4J9Gm6hsfzQvcT8fbfy//TyUf8vG4Lses/5jcd2PSE/IcQan4/o/UXYadE0kaoJBMG1ivNbidNbETr1XoWyuplwyHFN0fFai/8/EY7BIKY/68EpCvwP+mc/m/2vNGnBhp1eZ51bCmgsEAoFAIBAIBAKBQKAO3Irfrg3lfc4qi/cXd+Kee5TfvAd6ieY0ie5D2cNx+eNInwZLmu33gWuRn4/8C3H9CNJNYEt8/TrS35HuSPktvRP1z0LPOvAceB4IsB5saIa6UBfqQl2oc123AjwBVjWrP7MCgcC5y/ue/56yqXv87+qcIU2Z+ny8tuHHpyxsvrDNITDXgqkDRJcPdJY/wMo24/oQmDqZaPHkdplAuhv8ApqDRDeCVj/OAvD9BUSX9qF8Qpt7lTxnZ7+5TmVtrGMM7XchP3sS0SNgGzg4yU5HIBAIBM5NfsO5QDgfjuM54STOw7/Az/F3QtfhfF4Qn9F/gxMouxm/WU7F9afBQuUM7+rtPF+jb0b6ese/I7sI+emadhEzUT5bqbsW+esNbSMWoG6hWo/8gOLPUqUu+v5rKEHX8oS6iEXQexd7XlmBe1aCNWAp6kSsYyjHc82Liv2Xkd/C/HkN1w/Geren+KryToa2PtlQg2c9zijGZnGJ9kaibzZh84jmmfx4TeYpK9H3usMKqxnDCWxsdLY/3ygy9h+l/LYbYHtuXw2/rfsSPo0a/Jrn6PvPrzL2+7CmfV88lkc9j+F7cRzYU4N48DF8uA3n/T7Fly9q4Jdvoth0uLf9LORC11hvO/0D6RnQfRa99+2Hr1NS/M26VvfEe2jaWTAOvG8zzgKf8zCrYL++qUEfbumeQAjTVnQp+QmW99gQpDoJ4+9uHZe5/l3OW/M8x6WUZaduUvUc5p13NTXlz3VpGbCVrGNe5zOnjvGlrDWY1IdWShuuQ9fWh6h+VSV1Wit1lvNhHFz1zeUYtCg5ntvOSStDW5cITRnF5RJ+rcasJHExztwu910tl6LzLYsvuvvzilB0mvSaxt/V+SY0EMurfkjbrTjfInf+FJGkNdzSlOukZaDo3snqs7RZpqj2Gx7sS52D5O79k+93W2W/T3NhQxe3VeF16pwn4eI8qev7Sl1s0PnPy5PalSV57Pp6XuDxrypR9wBR8nOCzm/eXuYp5d4s/lV1XvL+lG2b+2AaQ1nPr23Hrc7z0WT5qvZL0v7QtdX5zdu6HMei+gV1ri8et4XSVpCfdeB7fRWNRy79UP0RCT4Jyre/88bbKsQUawUrV69dxjd+nlXxbCKos79pz1BpOqucz0gEdZ5hMk+aa7Wdy/7xZ5Yqhc+nyHivrkyQ/reM7tziuFojfM7zxtq0505XYutvHrtVnzNl2ONrTGdPkLv9ZjNHOoShnCh5nLLYKOKfK4qK7bjx/gqyj9lFJc2Wz/HIqyMSYaGnqM8+xp6vB1/6feg22UmLFUno1rurvelz7yT1UVfORW3L7+d6fMcAXdzxIVK3TNNioZpSyj2242izpky6y5S0fpr6q5ZXJT7O1qrmQRVB+rkQ1Dk3vvYttyGoc+51/mUVkYLtXvTx7MCvbUnzW2czyR8pql4XUlbcN9l1pSfPfOl0JV2bylyKoM4959sHQfr9Vpbk2V8u4ry0ndcvH5I1xggP9qVem/PHZL+qeGLrc945tLnHtG/LEtdjr4urxMpM92X1RZDd+pLtsorUydeCaiuvbtdSpQ9l2M4SU01nvI1e35L3uS5Jlw8pe1ykCKo2JtrGK9O9ujOlimcD6Y9LEWQ+7019d2VDLVPrTCLrsvjsQ1TfJVJM12pZmm5b4Xptx6HM9SpFkP2c6drJa5/iSr+pD7r+CNLvATVfpST1RYog/fwKTdsyxLVNQfnWrkyziGltJK2hLLptzjHXIsh+/HytmyQfpPA5VNtzXWWLzbiVsc9sbWSJ7UWE69KNh6v9kya2c6TzMa0fwpD37TtvQ6wuiw9CA9cny33Mj2pLte9Kp6996HO/83HPQ5r+ov5mvU9Qte/fIrGJP7axPO/9eXX6kjLPKZNd17iyZdOHLP31JSbfXY6hC59c+ZZ136TZ9SFlj6cvmVkSrkSQn3NG5KBqEVSeH6Ji/vvnhFWjSlfFNDwzyMgqLvvKxXffbeASBWo+Zj4p2x6TfwE=",RB="AAACAAAAAACAOAAAAbYBSf7t2S1IBEEYBuDVDZ7FYrQMNsFiu3hgEYOI0SCXRIUrB8JhEZtgs5gEg1GMFk02m82oGI02m+9xezCOczv/uwv3fvAwc/PzfXOzcdqzWdaBDdiGPdiHdjE+DS3RNDuCfsn8idQ/g3OH3BdwKf0e96/gumTfYcncLdzBPTzAo+RZ+f0Cr/AG7/AJX4738x1wtz9FO5PX/50n6UXMNdfg/0lERERERERERERERETpdedHBvDRql4nq0cXtW9af98qdRby0Vvp8K4W0V+C5Xw0t4J2bfjeBp3cnEu1brnnCTYNa7eKdz91XP7WO9Lb4GqRb7cY6xbtAdqeVOsY/QGcevw/tb6OT85YhvfKYEx9CMuxKsKnrs+eJtVInVvHJ0eVYVvTZk2siFVLOCjb61PTZX3MdVWEyP7fjzpmMxdzTyq2Ebue6x61nXRGnzndWpf1an7dXmGYE4Y1ptqqKsK1nu26Ju0ty+maV2Rpvk+qnDZjKUIobUiesdAQE/jmCTmHmsskpFZsVYbtmXRcaoSGUPomunW2derQhDPFjtT1Q/eb8vnm990fq35oHVt11bU9m89c7DNI8Qs=",UB=0,CB=-3;function NB(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function zB(t,e){this.source=t,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=e,this.destLen=0,this.ltree=new NB,this.dtree=new NB}var DB=new NB,jB=new NB,WB=new Uint8Array(30),FB=new Uint16Array(30),KB=new Uint8Array(30),qB=new Uint16Array(30),VB=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),HB=new NB,$B=new Uint8Array(320);function ZB(t,e,r,n){var i,o;for(i=0;i<r;++i)t[i]=0;for(i=0;i<30-r;++i)t[i+r]=i/r|0;for(o=n,i=0;i<30;++i)e[i]=o,o+=1<<t[i]}var GB=new Uint16Array(16);function YB(t,e,r,n){var i,o;for(i=0;i<16;++i)t.table[i]=0;for(i=0;i<n;++i)t.table[e[r+i]]++;for(t.table[0]=0,o=0,i=0;i<16;++i)GB[i]=o,o+=t.table[i];for(i=0;i<n;++i)e[r+i]&&(t.trans[GB[e[r+i]]++]=i)}function JB(t){t.bitcount--||(t.tag=t.source[t.sourceIndex++],t.bitcount=7);var e=1&t.tag;return t.tag>>>=1,e}function XB(t,e,r){if(!e)return r;for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var n=t.tag&65535>>>16-e;return t.tag>>>=e,t.bitcount-=e,n+r}function QB(t,e){for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var r=0,n=0,i=0,o=t.tag;do{n=2*n+(1&o),o>>>=1,++i,r+=e.table[i],n-=e.table[i]}while(n>=0);return t.tag=o,t.bitcount-=i,e.trans[r+n]}function tM(t,e,r){var n,i,o,s,a,u;for(n=XB(t,5,257),i=XB(t,5,1),o=XB(t,4,4),s=0;s<19;++s)$B[s]=0;for(s=0;s<o;++s){var c=XB(t,3,0);$B[VB[s]]=c}for(YB(HB,$B,0,19),a=0;a<n+i;){var h=QB(t,HB);switch(h){case 16:var l=$B[a-1];for(u=XB(t,2,3);u;--u)$B[a++]=l;break;case 17:for(u=XB(t,3,3);u;--u)$B[a++]=0;break;case 18:for(u=XB(t,7,11);u;--u)$B[a++]=0;break;default:$B[a++]=h}}YB(e,$B,0,n),YB(r,$B,n,i)}function eM(t,e,r){for(;;){var n,i,o,s,a=QB(t,e);if(256===a)return UB;if(a<256)t.dest[t.destLen++]=a;else for(n=XB(t,WB[a-=257],FB[a]),i=QB(t,r),s=o=t.destLen-XB(t,KB[i],qB[i]);s<o+n;++s)t.dest[t.destLen++]=t.dest[s]}}function rM(t){for(var e,r;t.bitcount>8;)t.sourceIndex--,t.bitcount-=8;if((e=256*(e=t.source[t.sourceIndex+1])+t.source[t.sourceIndex])!==(65535&~(256*t.source[t.sourceIndex+3]+t.source[t.sourceIndex+2])))return CB;for(t.sourceIndex+=4,r=e;r;--r)t.dest[t.destLen++]=t.source[t.sourceIndex++];return t.bitcount=0,UB}!function(t,e){var r;for(r=0;r<7;++r)t.table[r]=0;for(t.table[7]=24,t.table[8]=152,t.table[9]=112,r=0;r<24;++r)t.trans[r]=256+r;for(r=0;r<144;++r)t.trans[24+r]=r;for(r=0;r<8;++r)t.trans[168+r]=280+r;for(r=0;r<112;++r)t.trans[176+r]=144+r;for(r=0;r<5;++r)e.table[r]=0;for(e.table[5]=32,r=0;r<32;++r)e.trans[r]=r}(DB,jB),ZB(WB,FB,4,3),ZB(KB,qB,2,1),WB[28]=0,FB[28]=258;var nM=function(t,e){var r,n,i=new zB(t,e);do{switch(r=JB(i),XB(i,2,0)){case 0:n=rM(i);break;case 1:n=eM(i,DB,jB);break;case 2:tM(i,i.ltree,i.dtree),n=eM(i,i.ltree,i.dtree);break;default:n=CB}if(n!==UB)throw new Error("Data error")}while(!r);return i.destLen<i.dest.length?"function"==typeof i.dest.slice?i.dest.slice(0,i.destLen):i.dest.subarray(0,i.destLen):i.dest};const iM=18===new Uint8Array(new Uint32Array([305419896]).buffer)[0],oM=(t,e,r)=>{let n=t[e];t[e]=t[r],t[r]=n};var sM={swap32LE:t=>{iM&&(t=>{const e=t.length;for(let r=0;r<e;r+=4)oM(t,r,r+3),oM(t,r+1,r+2)})(t)}};const aM=nM,{swap32LE:uM}=sM;var cM=class{constructor(t){const e="function"==typeof t.readUInt32BE&&"function"==typeof t.slice;if(e||t instanceof Uint8Array){let r;if(e)this.highStart=t.readUInt32LE(0),this.errorValue=t.readUInt32LE(4),r=t.readUInt32LE(8),t=t.slice(12);else{const e=new DataView(t.buffer);this.highStart=e.getUint32(0,!0),this.errorValue=e.getUint32(4,!0),r=e.getUint32(8,!0),t=t.subarray(12)}t=aM(t,new Uint8Array(r)),t=aM(t,new Uint8Array(r)),uM(t),this.data=new Uint32Array(t.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=t)}get(t){let e;return t<0||t>1114111?this.errorValue:t<55296||t>56319&&t<=65535?(e=(this.data[t>>5]<<2)+(31&t),this.data[e]):t<=65535?(e=(this.data[2048+(t-55296>>5)]<<2)+(31&t),this.data[e]):t<this.highStart?(e=this.data[2080+(t>>11)],e=this.data[e+(t>>5&63)],e=(e<<2)+(31&t),this.data[e]):this.data[this.data.length-4]}},hM={exports:{}};"undefined"!=typeof self?self:"undefined"!=typeof window&&window,hM.exports=function(){var t="3.7.5",e=t,r="function"==typeof atob,n="function"==typeof btoa,i="function"==typeof Buffer,o="function"==typeof TextDecoder?new TextDecoder:void 0,s="function"==typeof TextEncoder?new TextEncoder:void 0,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",u=Array.prototype.slice.call(a),c=function(t){var e={};return t.forEach((function(t,r){return e[t]=r})),e}(u),h=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,l=String.fromCharCode.bind(String),f="function"==typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):function(t){return new Uint8Array(Array.prototype.slice.call(t,0))},d=function(t){return t.replace(/=/g,"").replace(/[+\/]/g,(function(t){return"+"==t?"-":"_"}))},p=function(t){return t.replace(/[^A-Za-z0-9\+\/]/g,"")},y=function(t){for(var e,r,n,i,o="",s=t.length%3,a=0;a<t.length;){if((r=t.charCodeAt(a++))>255||(n=t.charCodeAt(a++))>255||(i=t.charCodeAt(a++))>255)throw new TypeError("invalid character found");o+=u[(e=r<<16|n<<8|i)>>18&63]+u[e>>12&63]+u[e>>6&63]+u[63&e]}return s?o.slice(0,s-3)+"===".substring(s):o},g=n?function(t){return btoa(t)}:i?function(t){return Buffer.from(t,"binary").toString("base64")}:y,m=i?function(t){return Buffer.from(t).toString("base64")}:function(t){for(var e=4096,r=[],n=0,i=t.length;n<i;n+=e)r.push(l.apply(null,t.subarray(n,n+e)));return g(r.join(""))},w=function(t,e){return void 0===e&&(e=!1),e?d(m(t)):m(t)},b=function(t){if(t.length<2)return(e=t.charCodeAt(0))<128?t:e<2048?l(192|e>>>6)+l(128|63&e):l(224|e>>>12&15)+l(128|e>>>6&63)+l(128|63&e);var e=65536+1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320);return l(240|e>>>18&7)+l(128|e>>>12&63)+l(128|e>>>6&63)+l(128|63&e)},v=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,_=function(t){return t.replace(v,b)},k=i?function(t){return Buffer.from(t,"utf8").toString("base64")}:s?function(t){return m(s.encode(t))}:function(t){return g(_(t))},E=function(t,e){return void 0===e&&(e=!1),e?d(k(t)):k(t)},S=function(t){return E(t,!0)},A=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,x=function(t){switch(t.length){case 4:var e=((7&t.charCodeAt(0))<<18|(63&t.charCodeAt(1))<<12|(63&t.charCodeAt(2))<<6|63&t.charCodeAt(3))-65536;return l(55296+(e>>>10))+l(56320+(1023&e));case 3:return l((15&t.charCodeAt(0))<<12|(63&t.charCodeAt(1))<<6|63&t.charCodeAt(2));default:return l((31&t.charCodeAt(0))<<6|63&t.charCodeAt(1))}},I=function(t){return t.replace(A,x)},B=function(t){if(t=t.replace(/\s+/g,""),!h.test(t))throw new TypeError("malformed base64.");t+="==".slice(2-(3&t.length));for(var e,r,n,i="",o=0;o<t.length;)e=c[t.charAt(o++)]<<18|c[t.charAt(o++)]<<12|(r=c[t.charAt(o++)])<<6|(n=c[t.charAt(o++)]),i+=64===r?l(e>>16&255):64===n?l(e>>16&255,e>>8&255):l(e>>16&255,e>>8&255,255&e);return i},M=r?function(t){return atob(p(t))}:i?function(t){return Buffer.from(t,"base64").toString("binary")}:B,P=i?function(t){return f(Buffer.from(t,"base64"))}:function(t){return f(M(t).split("").map((function(t){return t.charCodeAt(0)})))},L=function(t){return P(T(t))},O=i?function(t){return Buffer.from(t,"base64").toString("utf8")}:o?function(t){return o.decode(P(t))}:function(t){return I(M(t))},T=function(t){return p(t.replace(/[-_]/g,(function(t){return"-"==t?"+":"/"})))},R=function(t){return O(T(t))},U=function(t){if("string"!=typeof t)return!1;var e=t.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(e)||!/[^\s0-9a-zA-Z\-_]/.test(e)},C=function(t){return{value:t,enumerable:!1,writable:!0,configurable:!0}},N=function(){var t=function(t,e){return Object.defineProperty(String.prototype,t,C(e))};t("fromBase64",(function(){return R(this)})),t("toBase64",(function(t){return E(this,t)})),t("toBase64URI",(function(){return E(this,!0)})),t("toBase64URL",(function(){return E(this,!0)})),t("toUint8Array",(function(){return L(this)}))},z=function(){var t=function(t,e){return Object.defineProperty(Uint8Array.prototype,t,C(e))};t("toBase64",(function(t){return w(this,t)})),t("toBase64URI",(function(){return w(this,!0)})),t("toBase64URL",(function(){return w(this,!0)}))},D=function(){N(),z()},j={version:t,VERSION:e,atob:M,atobPolyfill:B,btoa:g,btoaPolyfill:y,fromBase64:R,toBase64:E,encode:E,encodeURI:S,encodeURL:S,utob:_,btou:I,decode:R,isValid:U,fromUint8Array:w,toUint8Array:L,extendString:N,extendUint8Array:z,extendBuiltins:D,Base64:{}};return Object.keys(j).forEach((function(t){return j.Base64[t]=j[t]})),j}();const lM={Other:0,CR:1,LF:2,Control:4,Extend:8,ZWJ:16,Regional_Indicator:32,Prepend:64,SpacingMark:128,L:256,V:512,T:1024,LV:2048,LVT:4096,Extended_Pictographic:8192},fM=TB,dM=RB,pM=cM,yM=hM.exports.Base64,gM=new pM(yM.toUint8Array(fM)),mM=new pM(yM.toUint8Array(dM));function wM(t,e){return 0!=(t&e)}const bM=0,vM=1,_M=2;function kM(t,e){const r=t.length;let n=0,i=bM;for(let o=e;o+1<r;o++){const r=t[o+0],s=t[o+1];switch(wM(r,lM.Regional_Indicator)||(n=0),i){case _M:case bM:i=wM(r,lM.Extended_Pictographic)?vM:bM;break;case vM:i=wM(r,lM.Extend)?vM:wM(r,lM.ZWJ)&&wM(s,lM.Extended_Pictographic)?_M:bM}if(!wM(r,lM.CR)||!wM(s,lM.LF)){if(wM(r,lM.Control|lM.CR|lM.LF))return o+1-e;if(wM(s,lM.Control|lM.CR|lM.LF))return o+1-e;if(!(wM(r,lM.L)&&wM(s,lM.L|lM.V|lM.LV|lM.LVT)||wM(r,lM.LV|lM.V)&&wM(s,lM.V|lM.T)||wM(r,lM.LVT|lM.T)&&wM(s,lM.T)||wM(s,lM.Extend|lM.ZWJ)||wM(s,lM.SpacingMark)||wM(r,lM.Prepend)||i===_M)){if(!wM(r,lM.Regional_Indicator)||!wM(s,lM.Regional_Indicator)||n%2!=0)return o+1-e;n++}}}return r-e}var EM=function(t){const e=[],r=[0],n=[];for(let e=0;e<t.length;){const i=t.codePointAt(e);n.push(gM.get(i)|mM.get(i)),e+=i>65535?2:1,r.push(e)}for(let i=0;i<n.length;){const o=kM(n,i),s=r[i],a=r[i+o];e.push(t.slice(s,a)),i+=o}return e},SM=e(EM);const AM=t=>{const e=xf+t,r=Sf(n.Buffer.from(e,"utf8")).slice(2);return n.Buffer.from(r,"hex")},xM=(t,e,r)=>{const i=[t];e?i.push(e.toBuffer()):i.push(n.Buffer.alloc(32)),r?i.push(r.toBuffer()):i.push(n.Buffer.alloc(32));const[o]=Wo.findProgramAddressSync(i,Af);return o};async function IM(t,e){const r=AM(e.toBase58()),n=xM(r,Lf),{registry:i}=await ah.retrieve(t,n);if(!i.data)throw new Dc(zc.NoAccountData);const o=new ne(i.data.slice(0,4),"le").toNumber();return i.data.slice(4,4+o).toString()}async function BM(t,e){let r=[];for(let t of e){const e=AM(t.toBase58()),n=xM(e,Lf);r.push(n)}return(await ah.retrieveBatch(t,r)).map((t=>{if(void 0===t||void 0===t.data)return;let e=new ne(t.data.slice(0,4),"le").toNumber();return t.data.slice(4,4+e).toString()}))}const MM=async(t,e)=>{const r=[{memcmp:{offset:0,bytes:e.toBase58()}},{memcmp:{offset:64,bytes:Lf.toBase58()}}],n=await t.getProgramAccounts(Af,{filters:r}),i=await IM(t,e),o=n.map((t=>{var e;return null===(e=t.account.data.slice(97).toString("utf-8"))||void 0===e?void 0:e.split("\0").join("")})),s=o.map((t=>LM(t+"."+i).pubkey)),a=await t.getMultipleAccountsInfo(s);return o.filter(((t,e)=>!!a[e]))},PM=(t,e=If,r)=>{let n=AM(t);return{pubkey:xM(n,r,e),hashed:n}},LM=(t,e)=>{t.endsWith(".sol")&&(t=t.slice(0,-4));const r=e===OB.V2?AB:void 0,i=t.split(".");if(2===i.length){const t=n.Buffer.from([e||0]).toString().concat(i[0]),{pubkey:o}=PM(i[1]);return{...PM(t,o,r),isSub:!0,parent:o}}if(3===i.length&&e){const{pubkey:t}=PM(i[2]),{pubkey:n}=PM("\0".concat(i[1]),t),o=e===OB.V2?"":"";return{...PM(o.concat(i[0]),n,r),isSub:!0,parent:t,isSubRecord:!0}}if(i.length>=3)throw new Dc(zc.InvalidInput);return{...PM(t,If),isSub:!1,parent:void 0}};async function OM(t,e){const r=[{memcmp:{offset:32,bytes:e.toBase58()}},{memcmp:{offset:0,bytes:If.toBase58()}}];return(await t.getProgramAccounts(Af,{filters:r})).map((t=>t.pubkey))}async function TM(t,e){const r=await OM(t,e),n=await BM(t,r);return r.map(((t,e)=>({pubKey:t,domain:n[e]})))}const RM=async t=>{const e=[{memcmp:{offset:0,bytes:If.toBase58()}}];return await t.getProgramAccounts(Af,{dataSlice:{offset:32,length:32},filters:e})},UM=(t,e)=>{const{pubkey:r,parent:n}=LM(t),i=AM(r.toBase58());return xM(i,Lf,e?n:void 0)},CM=(t,e)=>{if(!t)throw new Dc(e)},NM=async(t,e)=>{const r=await sh(t,e),n=await BM(t,r.map((t=>t.nameAccount)));return n.map(((t,e)=>({key:r[e].nameAccount,mint:r[e].nftMint,reverse:t}))).filter((t=>!!t.reverse))},zM=t=>{switch(SM(t).length){case 1:return 750;case 2:return 700;case 3:return 640;case 4:return 160;default:return 20}};var DM={},jM={};function WM(t,e,r,n,i){var o=(1<<n)-1,s=0,a=0,u=0;if(t.forEach((function(t){for(s=(s<<e)+t,a+=e;a>=n;)a-=n,r[u]=s>>a&o,u+=1})),i)a>0&&(r[u]=s<<n-a&o);else{if(a>=e)throw new Error("Excessive padding: ".concat(a," (max ").concat(e-1," allowed)"));if(s%(1<<a)!=0)throw new Error("Non-zero padding")}}Object.defineProperty(jM,"__esModule",{value:!0}),jM.createBitArray=function(t){return new Uint8Array(t)},jM.fromBits=function(t,e,r){if(e>8||e<1)throw new RangeError("Invalid bits per element; 1 to 8 expected");return WM(t,e,r,8,!1),r},jM.toBits=function(t,e,r){if(e>8||e<1)throw new RangeError("Invalid bits per element; 1 to 8 expected");return WM(t,8,r,e,!0),r};var FM={};Object.defineProperty(FM,"__esModule",{value:!0}),FM.CHECKSUM_LENGTH=void 0,FM.createChecksum=function(t,e){var r;switch(e){case"bech32":r=1;break;case"bech32m":r=VM;break;default:throw Error("Invalid encoding value: ".concat(e,"; expected bech32 or bech32m"))}for(var n=JM(t)^r,i=0;i<ZM;i+=1){var o=5*(5-i);t[t.length-ZM+i]=n>>o&31}},FM.decode=QM,FM.decodeWithPrefix=function(t,e){var r=e.length+2*t.length+1,n=(0,KM.createBitArray)(r);return XM(t,n.subarray(0,2*t.length+1)),QM(e,n.subarray(2*t.length+1)),n},FM.detectCase=function(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"message",r=!1,n=!1,i=0;i<t.length;i+=1){var o=t.charCodeAt(i);if(o<HM||o>$M)throw new TypeError("Invalid char in ".concat(e,": ").concat(o,"; ")+"should be in ASCII range ".concat(HM,"-").concat($M));n=n||o>=65&&o<=90,r=r||o>=97&&o<=122}if(r&&n)throw new TypeError("Mixed-case ".concat(e));return n?"upper":r?"lower":null},FM.encode=function(t){return t.reduce((function(t,e){return t+qM[e]}),"")},FM.expandPrefix=XM,FM.verifyChecksum=function(t){switch(JM(t)){case 1:return"bech32";case VM:return"bech32m";default:return}};var KM=jM,qM="qpzry9x8gf2tvdw0s3jn54khce6mua7l",VM=734539939,HM=33,$M=126,ZM=6;FM.CHECKSUM_LENGTH=ZM;var GM=function(){for(var t=new Map,e=0;e<qM.length;e+=1)t.set(qM[e],e);return t}(),YM=[996825010,642813549,513874426,1027748829,705979059];function JM(t){return t.reduce((function(t,e){var r=t>>25,n=(33554431&t)<<5^e;return YM.reduce((function(t,e,n){return 0==(r>>n&1)?t:t^e}),n)}),1)}function XM(t,e){for(var r=0;r<t.length;r+=1){var n=t.charCodeAt(r);e[r]=n>>5,e[r+t.length+1]=31&n}e[t.length]=0}function QM(t,e){for(var r=e||(0,KM.createBitArray)(t.length),n=0;n<t.length;n+=1){var i=GM.get(t[n]);if(void 0===i)throw new Error("Invalid char in message: ".concat(t[n]));r[n]=i}return r}Object.defineProperty(DM,"__esModule",{value:!0}),DM.BitcoinAddress=void 0;var tP=DM.decode=function(t){var e=cP(t),r=e.prefix,n=e.encoding,i=e.data;return{prefix:r,encoding:n,data:aP(i)}};DM.decodeTo5BitArray=cP;var eP=DM.encode=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"bech32";return uP(t,sP(e),r)};DM.encode5BitArray=uP,DM.from5BitArray=aP,DM.to5BitArray=sP;var rP=jM,nP=FM;function iP(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}var oP=90;function sP(t,e){var r=Math.ceil(8*t.length/5),n=e||(0,rP.createBitArray)(r);return(0,rP.toBits)(t,5,n)}function aP(t,e){var r=Math.floor(5*t.length/8),n=e||new Uint8Array(r);return(0,rP.fromBits)(t,5,n)}function uP(t,e){var r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"bech32",i=2*t.length+1+e.length+nP.CHECKSUM_LENGTH;if(i-t.length>oP)throw new Error("Message to be produced is too long (max ".concat(oP," supported)"));var o=null!==(r=(0,nP.detectCase)(t,"prefix"))&&void 0!==r?r:"lower",s=(0,rP.createBitArray)(i);(0,nP.expandPrefix)(t.toLowerCase(),s.subarray(0,2*t.length+1)),s.subarray(2*t.length+1,s.length-nP.CHECKSUM_LENGTH).set(e),(0,nP.createChecksum)(s,n);var a=(0,nP.encode)(s.subarray(2*t.length+1));return"upper"===o&&(a=a.toUpperCase()),"".concat(t,"1").concat(a)}function cP(t){if(t.length>oP)throw new TypeError("Message too long; max ".concat(oP," expected"));(0,nP.detectCase)(t);var e=t.toLowerCase(),r=e.lastIndexOf("1");if(r<0)throw new Error('No separator char ("1") found');if(r>t.length-nP.CHECKSUM_LENGTH-1)throw new Error("Data part of the message too short (at least ".concat(nP.CHECKSUM_LENGTH," chars expected)"));var n=e.substring(0,r),i=(0,nP.decodeWithPrefix)(n,e.substring(r+1)),o=(0,nP.verifyChecksum)(i);if(void 0===o)throw new Error("Invalid checksum");return{prefix:n,encoding:o,data:i.subarray(2*n.length+1,i.length-nP.CHECKSUM_LENGTH)}}var hP=function(){function t(e,r,n){if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),"bc"!==e&&"tb"!==e)throw new Error('Invalid human-readable prefix, "bc" or "tb" expected');if(r<0||r>16)throw new RangeError("Invalid scriptVersion, value in range [0, 16] expected");if(n.length<2||n.length>40)throw new RangeError("Invalid script length: expected 2 to 40 bytes");if(0===r&&20!==n.length&&32!==n.length)throw new Error("Invalid v0 script length: expected 20 or 32 bytes");this.prefix=e,this.scriptVersion=r,this.data=n}var e,r,n;return e=t,r=[{key:"type",value:function(){if(0===this.scriptVersion)switch(this.data.length){case 20:return"p2wpkh";case 32:return"p2wsh";default:return}}},{key:"encode",value:function(){var t=Math.ceil(8*this.data.length/5),e=(0,rP.createBitArray)(t+1);e[0]=this.scriptVersion,sP(this.data,e.subarray(1));var r=0===this.scriptVersion?"bech32":"bech32m";return uP(this.prefix,e,r)}}],n=[{key:"decode",value:function(t){var e=cP(t),r=e.prefix,n=e.data,i=e.encoding;if("bc"!==r&&"tb"!==r)throw new Error('Invalid human-readable prefix, "bc" or "tb" expected');var o=n[0];if(0===o&&"bech32"!==i)throw Error("Unexpected encoding ".concat(i," used for version 0 script"));if(o>0&&"bech32m"!==i)throw Error("Unexpected encoding ".concat(i," used for version ").concat(o," script"));return new this(r,o,aP(n.subarray(1)))}}],r&&iP(e.prototype,r),n&&iP(e,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();DM.BitcoinAddress=hP;var lP={exports:{}};!function(e){!function(t){const r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp(`^${r}\\.${r}\\.${r}\\.${r}$`,"i"),threeOctet:new RegExp(`^${r}\\.${r}\\.${r}$`,"i"),twoOctet:new RegExp(`^${r}\\.${r}$`,"i"),longValue:new RegExp(`^${r}$`,"i")},i=new RegExp("^0[0-7]+$","i"),o=new RegExp("^0x[a-f0-9]+$","i"),s="%[0-9a-z]{1,}",a="(?:[0-9a-f]+::?)+",u={zoneIndex:new RegExp(s,"i"),native:new RegExp(`^(::)?(${a})?([0-9a-f]+)?(::)?(${s})?$`,"i"),deprecatedTransitional:new RegExp(`^(?:::)(${r}\\.${r}\\.${r}\\.${r}(${s})?)$`,"i"),transitional:new RegExp(`^((?:${a})|(?:::)(?:${a})?)${r}\\.${r}\\.${r}\\.${r}(${s})?$`,"i")};function c(t,e){if(t.indexOf("::")!==t.lastIndexOf("::"))return null;let r,n,i=0,o=-1,s=(t.match(u.zoneIndex)||[])[0];for(s&&(s=s.substring(1),t=t.replace(/%.+$/,""));(o=t.indexOf(":",o+1))>=0;)i++;if("::"===t.substr(0,2)&&i--,"::"===t.substr(-2,2)&&i--,i>e)return null;for(n=e-i,r=":";n--;)r+="0:";return":"===(t=t.replace("::",r))[0]&&(t=t.slice(1)),":"===t[t.length-1]&&(t=t.slice(0,-1)),e=function(){const e=t.split(":"),r=[];for(let t=0;t<e.length;t++)r.push(parseInt(e[t],16));return r}(),{parts:e,zoneId:s}}function h(t,e,r,n){if(t.length!==e.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");let i,o=0;for(;n>0;){if(i=r-n,i<0&&(i=0),t[o]>>i!=e[o]>>i)return!1;n-=r,o+=1}return!0}function l(t){if(o.test(t))return parseInt(t,16);if("0"===t[0]&&!isNaN(parseInt(t[1],10))){if(i.test(t))return parseInt(t,8);throw new Error(`ipaddr: cannot parse ${t} as octal`)}return parseInt(t,10)}function f(t,e){for(;t.length<e;)t=`0${t}`;return t}const d={};d.IPv4=function(){function t(t){if(4!==t.length)throw new Error("ipaddr: ipv4 octet count should be 4");let e,r;for(e=0;e<t.length;e++)if(r=t[e],!(0<=r&&r<=255))throw new Error("ipaddr: ipv4 octet should fit in 8 bits");this.octets=t}return t.prototype.SpecialRanges={unspecified:[[new t([0,0,0,0]),8]],broadcast:[[new t([255,255,255,255]),32]],multicast:[[new t([224,0,0,0]),4]],linkLocal:[[new t([169,254,0,0]),16]],loopback:[[new t([127,0,0,0]),8]],carrierGradeNat:[[new t([100,64,0,0]),10]],private:[[new t([10,0,0,0]),8],[new t([172,16,0,0]),12],[new t([192,168,0,0]),16]],reserved:[[new t([192,0,0,0]),24],[new t([192,0,2,0]),24],[new t([192,88,99,0]),24],[new t([198,18,0,0]),15],[new t([198,51,100,0]),24],[new t([203,0,113,0]),24],[new t([240,0,0,0]),4]]},t.prototype.kind=function(){return"ipv4"},t.prototype.match=function(t,e){let r;if(void 0===e&&(r=t,t=r[0],e=r[1]),"ipv4"!==t.kind())throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one");return h(this.octets,t.octets,8,e)},t.prototype.prefixLengthFromSubnetMask=function(){let t=0,e=!1;const r={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0};let n,i,o;for(n=3;n>=0;n-=1){if(i=this.octets[n],!(i in r))return null;if(o=r[i],e&&0!==o)return null;8!==o&&(e=!0),t+=o}return 32-t},t.prototype.range=function(){return d.subnetMatch(this,this.SpecialRanges)},t.prototype.toByteArray=function(){return this.octets.slice(0)},t.prototype.toIPv4MappedAddress=function(){return d.IPv6.parse(`::ffff:${this.toString()}`)},t.prototype.toNormalizedString=function(){return this.toString()},t.prototype.toString=function(){return this.octets.join(".")},t}(),d.IPv4.broadcastAddressFromCIDR=function(t){try{const e=this.parseCIDR(t),r=e[0].toByteArray(),n=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[];let o=0;for(;o<4;)i.push(parseInt(r[o],10)|255^parseInt(n[o],10)),o++;return new this(i)}catch(t){throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},d.IPv4.isIPv4=function(t){return null!==this.parser(t)},d.IPv4.isValid=function(t){try{return new this(this.parser(t)),!0}catch(t){return!1}},d.IPv4.isValidFourPartDecimal=function(t){return!(!d.IPv4.isValid(t)||!t.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},d.IPv4.networkAddressFromCIDR=function(t){let e,r,n,i,o;try{for(e=this.parseCIDR(t),n=e[0].toByteArray(),o=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[],r=0;r<4;)i.push(parseInt(n[r],10)&parseInt(o[r],10)),r++;return new this(i)}catch(t){throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},d.IPv4.parse=function(t){const e=this.parser(t);if(null===e)throw new Error("ipaddr: string is not formatted like an IPv4 Address");return new this(e)},d.IPv4.parseCIDR=function(t){let e;if(e=t.match(/^(.+)\/(\d+)$/)){const t=parseInt(e[2]);if(t>=0&&t<=32){const r=[this.parse(e[1]),t];return Object.defineProperty(r,"toString",{value:function(){return this.join("/")}}),r}}throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},d.IPv4.parser=function(t){let e,r,i;if(e=t.match(n.fourOctet))return function(){const t=e.slice(1,6),n=[];for(let e=0;e<t.length;e++)r=t[e],n.push(l(r));return n}();if(e=t.match(n.longValue)){if(i=l(e[1]),i>4294967295||i<0)throw new Error("ipaddr: address outside defined range");return function(){const t=[];let e;for(e=0;e<=24;e+=8)t.push(i>>e&255);return t}().reverse()}return(e=t.match(n.twoOctet))?function(){const t=e.slice(1,4),r=[];if(i=l(t[1]),i>16777215||i<0)throw new Error("ipaddr: address outside defined range");return r.push(l(t[0])),r.push(i>>16&255),r.push(i>>8&255),r.push(255&i),r}():(e=t.match(n.threeOctet))?function(){const t=e.slice(1,5),r=[];if(i=l(t[2]),i>65535||i<0)throw new Error("ipaddr: address outside defined range");return r.push(l(t[0])),r.push(l(t[1])),r.push(i>>8&255),r.push(255&i),r}():null},d.IPv4.subnetMaskFromPrefixLength=function(t){if((t=parseInt(t))<0||t>32)throw new Error("ipaddr: invalid IPv4 prefix length");const e=[0,0,0,0];let r=0;const n=Math.floor(t/8);for(;r<n;)e[r]=255,r++;return n<4&&(e[n]=Math.pow(2,t%8)-1<<8-t%8),new this(e)},d.IPv6=function(){function t(t,e){let r,n;if(16===t.length)for(this.parts=[],r=0;r<=14;r+=2)this.parts.push(t[r]<<8|t[r+1]);else{if(8!==t.length)throw new Error("ipaddr: ipv6 part count should be 8 or 16");this.parts=t}for(r=0;r<this.parts.length;r++)if(n=this.parts[r],!(0<=n&&n<=65535))throw new Error("ipaddr: ipv6 part should fit in 16 bits");e&&(this.zoneId=e)}return t.prototype.SpecialRanges={unspecified:[new t([0,0,0,0,0,0,0,0]),128],linkLocal:[new t([65152,0,0,0,0,0,0,0]),10],multicast:[new t([65280,0,0,0,0,0,0,0]),8],loopback:[new t([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new t([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new t([0,0,0,0,0,65535,0,0]),96],rfc6145:[new t([0,0,0,0,65535,0,0,0]),96],rfc6052:[new t([100,65435,0,0,0,0,0,0]),96],"6to4":[new t([8194,0,0,0,0,0,0,0]),16],teredo:[new t([8193,0,0,0,0,0,0,0]),32],reserved:[[new t([8193,3512,0,0,0,0,0,0]),32]],benchmarking:[new t([8193,2,0,0,0,0,0,0]),48],amt:[new t([8193,3,0,0,0,0,0,0]),32],as112v6:[new t([8193,4,274,0,0,0,0,0]),48],deprecated:[new t([8193,16,0,0,0,0,0,0]),28],orchid2:[new t([8193,32,0,0,0,0,0,0]),28]},t.prototype.isIPv4MappedAddress=function(){return"ipv4Mapped"===this.range()},t.prototype.kind=function(){return"ipv6"},t.prototype.match=function(t,e){let r;if(void 0===e&&(r=t,t=r[0],e=r[1]),"ipv6"!==t.kind())throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one");return h(this.parts,t.parts,16,e)},t.prototype.prefixLengthFromSubnetMask=function(){let t=0,e=!1;const r={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0};let n,i;for(let o=7;o>=0;o-=1){if(n=this.parts[o],!(n in r))return null;if(i=r[n],e&&0!==i)return null;16!==i&&(e=!0),t+=i}return 128-t},t.prototype.range=function(){return d.subnetMatch(this,this.SpecialRanges)},t.prototype.toByteArray=function(){let t;const e=[],r=this.parts;for(let n=0;n<r.length;n++)t=r[n],e.push(t>>8),e.push(255&t);return e},t.prototype.toFixedLengthString=function(){const t=function(){const t=[];for(let e=0;e<this.parts.length;e++)t.push(f(this.parts[e].toString(16),4));return t}.call(this).join(":");let e="";return this.zoneId&&(e=`%${this.zoneId}`),t+e},t.prototype.toIPv4Address=function(){if(!this.isIPv4MappedAddress())throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4");const t=this.parts.slice(-2),e=t[0],r=t[1];return new d.IPv4([e>>8,255&e,r>>8,255&r])},t.prototype.toNormalizedString=function(){const t=function(){const t=[];for(let e=0;e<this.parts.length;e++)t.push(this.parts[e].toString(16));return t}.call(this).join(":");let e="";return this.zoneId&&(e=`%${this.zoneId}`),t+e},t.prototype.toRFC5952String=function(){const t=/((^|:)(0(:|$)){2,})/g,e=this.toNormalizedString();let r,n=0,i=-1;for(;r=t.exec(e);)r[0].length>i&&(n=r.index,i=r[0].length);return i<0?e:`${e.substring(0,n)}::${e.substring(n+i)}`},t.prototype.toString=function(){return this.toRFC5952String()},t}(),d.IPv6.broadcastAddressFromCIDR=function(t){try{const e=this.parseCIDR(t),r=e[0].toByteArray(),n=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[];let o=0;for(;o<16;)i.push(parseInt(r[o],10)|255^parseInt(n[o],10)),o++;return new this(i)}catch(t){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${t})`)}},d.IPv6.isIPv6=function(t){return null!==this.parser(t)},d.IPv6.isValid=function(t){if("string"==typeof t&&-1===t.indexOf(":"))return!1;try{const e=this.parser(t);return new this(e.parts,e.zoneId),!0}catch(t){return!1}},d.IPv6.networkAddressFromCIDR=function(t){let e,r,n,i,o;try{for(e=this.parseCIDR(t),n=e[0].toByteArray(),o=this.subnetMaskFromPrefixLength(e[1]).toByteArray(),i=[],r=0;r<16;)i.push(parseInt(n[r],10)&parseInt(o[r],10)),r++;return new this(i)}catch(t){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${t})`)}},d.IPv6.parse=function(t){const e=this.parser(t);if(null===e.parts)throw new Error("ipaddr: string is not formatted like an IPv6 Address");return new this(e.parts,e.zoneId)},d.IPv6.parseCIDR=function(t){let e,r,n;if((r=t.match(/^(.+)\/(\d+)$/))&&(e=parseInt(r[2]),e>=0&&e<=128))return n=[this.parse(r[1]),e],Object.defineProperty(n,"toString",{value:function(){return this.join("/")}}),n;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},d.IPv6.parser=function(t){let e,r,n,i,o,s;if(n=t.match(u.deprecatedTransitional))return this.parser(`::ffff:${n[1]}`);if(u.native.test(t))return c(t,8);if((n=t.match(u.transitional))&&(s=n[6]||"",e=c(n[1].slice(0,-1)+s,6),e.parts)){for(o=[parseInt(n[2]),parseInt(n[3]),parseInt(n[4]),parseInt(n[5])],r=0;r<o.length;r++)if(i=o[r],!(0<=i&&i<=255))return null;return e.parts.push(o[0]<<8|o[1]),e.parts.push(o[2]<<8|o[3]),{parts:e.parts,zoneId:e.zoneId}}return null},d.IPv6.subnetMaskFromPrefixLength=function(t){if((t=parseInt(t))<0||t>128)throw new Error("ipaddr: invalid IPv6 prefix length");const e=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];let r=0;const n=Math.floor(t/8);for(;r<n;)e[r]=255,r++;return n<16&&(e[n]=Math.pow(2,t%8)-1<<8-t%8),new this(e)},d.fromByteArray=function(t){const e=t.length;if(4===e)return new d.IPv4(t);if(16===e)return new d.IPv6(t);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},d.isValid=function(t){return d.IPv6.isValid(t)||d.IPv4.isValid(t)},d.parse=function(t){if(d.IPv6.isValid(t))return d.IPv6.parse(t);if(d.IPv4.isValid(t))return d.IPv4.parse(t);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},d.parseCIDR=function(t){try{return d.IPv6.parseCIDR(t)}catch(e){try{return d.IPv4.parseCIDR(t)}catch(t){throw new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},d.process=function(t){const e=this.parse(t);return"ipv6"===e.kind()&&e.isIPv4MappedAddress()?e.toIPv4Address():e},d.subnetMatch=function(t,e,r){let n,i,o,s;for(i in null==r&&(r="unicast"),e)if(Object.prototype.hasOwnProperty.call(e,i))for(o=e[i],!o[0]||o[0]instanceof Array||(o=[o]),n=0;n<o.length;n++)if(s=o[n],t.kind()===s[0].kind()&&t.match.apply(t,s))return i;return r},e.exports?e.exports=d:t.ipaddr=d}(t)}(lP);var fP=e(lP.exports);const dP=2147483647,pP=36,yP={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},gP=Math.floor,mP=String.fromCharCode;function wP(t){throw new RangeError(yP[t])}const bP=function(t,e){return t+22+75*(t<26)-((0!=e)<<5)},vP=function(t,e,r){let n=0;for(t=r?gP(t/700):t>>1,t+=gP(t/e);t>455;n+=pP)t=gP(t/35);return gP(n+36*t/(t+38))},_P=function(t){const e=[];t=function(t){const e=[];let r=0;const n=t.length;for(;r<n;){const i=t.charCodeAt(r++);if(i>=55296&&i<=56319&&r<n){const n=t.charCodeAt(r++);56320==(64512&n)?e.push(((1023&i)<<10)+(1023&n)+65536):(e.push(i),r--)}else e.push(i)}return e}(t);const r=t.length;let n=128,i=0,o=72;for(const r of t)r<128&&e.push(mP(r));const s=e.length;let a=s;for(s&&e.push("-");a<r;){let r=dP;for(const e of t)e>=n&&e<r&&(r=e);const u=a+1;r-n>gP((dP-i)/u)&&wP("overflow"),i+=(r-n)*u,n=r;for(const r of t)if(r<n&&++i>dP&&wP("overflow"),r===n){let t=i;for(let r=pP;;r+=pP){const n=r<=o?1:r>=o+26?26:r-o;if(t<n)break;const i=t-n,s=pP-n;e.push(mP(bP(n+i%s,0))),t=gP(i/s)}e.push(mP(bP(t,0))),o=vP(i,u,a===s),i=0,++a}++i,++n}return e.join("")};function kP(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var EP={exports:{}};!function(t){var e=function(t){var e,r=new Float64Array(16);if(t)for(e=0;e<t.length;e++)r[e]=t[e];return r},r=function(){throw new Error("no PRNG")},n=new Uint8Array(16),i=new Uint8Array(32);i[0]=9;var o=e(),s=e([1]),a=e([56129,1]),u=e([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),c=e([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),h=e([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),l=e([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),f=e([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function d(t,e,r,n){t[e]=r>>24&255,t[e+1]=r>>16&255,t[e+2]=r>>8&255,t[e+3]=255&r,t[e+4]=n>>24&255,t[e+5]=n>>16&255,t[e+6]=n>>8&255,t[e+7]=255&n}function p(t,e,r,n,i){var o,s=0;for(o=0;o<i;o++)s|=t[e+o]^r[n+o];return(1&s-1>>>8)-1}function y(t,e,r,n){return p(t,e,r,n,16)}function g(t,e,r,n){return p(t,e,r,n,32)}function m(t,e,r,n){!function(t,e,r,n){for(var i,o=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,a=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,u=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,c=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,h=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,f=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,d=255&e[8]|(255&e[9])<<8|(255&e[10])<<16|(255&e[11])<<24,p=255&e[12]|(255&e[13])<<8|(255&e[14])<<16|(255&e[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,g=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,m=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,w=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,v=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,_=o,k=s,E=a,S=u,A=c,x=h,I=l,B=f,M=d,P=p,L=y,O=g,T=m,R=w,U=b,C=v,N=0;N<20;N+=2)_^=(i=(T^=(i=(M^=(i=(A^=(i=_+T|0)<<7|i>>>25)+_|0)<<9|i>>>23)+A|0)<<13|i>>>19)+M|0)<<18|i>>>14,x^=(i=(k^=(i=(R^=(i=(P^=(i=x+k|0)<<7|i>>>25)+x|0)<<9|i>>>23)+P|0)<<13|i>>>19)+R|0)<<18|i>>>14,L^=(i=(I^=(i=(E^=(i=(U^=(i=L+I|0)<<7|i>>>25)+L|0)<<9|i>>>23)+U|0)<<13|i>>>19)+E|0)<<18|i>>>14,C^=(i=(O^=(i=(B^=(i=(S^=(i=C+O|0)<<7|i>>>25)+C|0)<<9|i>>>23)+S|0)<<13|i>>>19)+B|0)<<18|i>>>14,_^=(i=(S^=(i=(E^=(i=(k^=(i=_+S|0)<<7|i>>>25)+_|0)<<9|i>>>23)+k|0)<<13|i>>>19)+E|0)<<18|i>>>14,x^=(i=(A^=(i=(B^=(i=(I^=(i=x+A|0)<<7|i>>>25)+x|0)<<9|i>>>23)+I|0)<<13|i>>>19)+B|0)<<18|i>>>14,L^=(i=(P^=(i=(M^=(i=(O^=(i=L+P|0)<<7|i>>>25)+L|0)<<9|i>>>23)+O|0)<<13|i>>>19)+M|0)<<18|i>>>14,C^=(i=(U^=(i=(R^=(i=(T^=(i=C+U|0)<<7|i>>>25)+C|0)<<9|i>>>23)+T|0)<<13|i>>>19)+R|0)<<18|i>>>14;_=_+o|0,k=k+s|0,E=E+a|0,S=S+u|0,A=A+c|0,x=x+h|0,I=I+l|0,B=B+f|0,M=M+d|0,P=P+p|0,L=L+y|0,O=O+g|0,T=T+m|0,R=R+w|0,U=U+b|0,C=C+v|0,t[0]=_>>>0&255,t[1]=_>>>8&255,t[2]=_>>>16&255,t[3]=_>>>24&255,t[4]=k>>>0&255,t[5]=k>>>8&255,t[6]=k>>>16&255,t[7]=k>>>24&255,t[8]=E>>>0&255,t[9]=E>>>8&255,t[10]=E>>>16&255,t[11]=E>>>24&255,t[12]=S>>>0&255,t[13]=S>>>8&255,t[14]=S>>>16&255,t[15]=S>>>24&255,t[16]=A>>>0&255,t[17]=A>>>8&255,t[18]=A>>>16&255,t[19]=A>>>24&255,t[20]=x>>>0&255,t[21]=x>>>8&255,t[22]=x>>>16&255,t[23]=x>>>24&255,t[24]=I>>>0&255,t[25]=I>>>8&255,t[26]=I>>>16&255,t[27]=I>>>24&255,t[28]=B>>>0&255,t[29]=B>>>8&255,t[30]=B>>>16&255,t[31]=B>>>24&255,t[32]=M>>>0&255,t[33]=M>>>8&255,t[34]=M>>>16&255,t[35]=M>>>24&255,t[36]=P>>>0&255,t[37]=P>>>8&255,t[38]=P>>>16&255,t[39]=P>>>24&255,t[40]=L>>>0&255,t[41]=L>>>8&255,t[42]=L>>>16&255,t[43]=L>>>24&255,t[44]=O>>>0&255,t[45]=O>>>8&255,t[46]=O>>>16&255,t[47]=O>>>24&255,t[48]=T>>>0&255,t[49]=T>>>8&255,t[50]=T>>>16&255,t[51]=T>>>24&255,t[52]=R>>>0&255,t[53]=R>>>8&255,t[54]=R>>>16&255,t[55]=R>>>24&255,t[56]=U>>>0&255,t[57]=U>>>8&255,t[58]=U>>>16&255,t[59]=U>>>24&255,t[60]=C>>>0&255,t[61]=C>>>8&255,t[62]=C>>>16&255,t[63]=C>>>24&255}(t,e,r,n)}function w(t,e,r,n){!function(t,e,r,n){for(var i,o=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,s=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,a=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,u=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,c=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,h=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,f=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,d=255&e[8]|(255&e[9])<<8|(255&e[10])<<16|(255&e[11])<<24,p=255&e[12]|(255&e[13])<<8|(255&e[14])<<16|(255&e[15])<<24,y=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,g=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,m=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,w=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,b=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,v=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,_=0;_<20;_+=2)o^=(i=(m^=(i=(d^=(i=(c^=(i=o+m|0)<<7|i>>>25)+o|0)<<9|i>>>23)+c|0)<<13|i>>>19)+d|0)<<18|i>>>14,h^=(i=(s^=(i=(w^=(i=(p^=(i=h+s|0)<<7|i>>>25)+h|0)<<9|i>>>23)+p|0)<<13|i>>>19)+w|0)<<18|i>>>14,y^=(i=(l^=(i=(a^=(i=(b^=(i=y+l|0)<<7|i>>>25)+y|0)<<9|i>>>23)+b|0)<<13|i>>>19)+a|0)<<18|i>>>14,v^=(i=(g^=(i=(f^=(i=(u^=(i=v+g|0)<<7|i>>>25)+v|0)<<9|i>>>23)+u|0)<<13|i>>>19)+f|0)<<18|i>>>14,o^=(i=(u^=(i=(a^=(i=(s^=(i=o+u|0)<<7|i>>>25)+o|0)<<9|i>>>23)+s|0)<<13|i>>>19)+a|0)<<18|i>>>14,h^=(i=(c^=(i=(f^=(i=(l^=(i=h+c|0)<<7|i>>>25)+h|0)<<9|i>>>23)+l|0)<<13|i>>>19)+f|0)<<18|i>>>14,y^=(i=(p^=(i=(d^=(i=(g^=(i=y+p|0)<<7|i>>>25)+y|0)<<9|i>>>23)+g|0)<<13|i>>>19)+d|0)<<18|i>>>14,v^=(i=(b^=(i=(w^=(i=(m^=(i=v+b|0)<<7|i>>>25)+v|0)<<9|i>>>23)+m|0)<<13|i>>>19)+w|0)<<18|i>>>14;t[0]=o>>>0&255,t[1]=o>>>8&255,t[2]=o>>>16&255,t[3]=o>>>24&255,t[4]=h>>>0&255,t[5]=h>>>8&255,t[6]=h>>>16&255,t[7]=h>>>24&255,t[8]=y>>>0&255,t[9]=y>>>8&255,t[10]=y>>>16&255,t[11]=y>>>24&255,t[12]=v>>>0&255,t[13]=v>>>8&255,t[14]=v>>>16&255,t[15]=v>>>24&255,t[16]=l>>>0&255,t[17]=l>>>8&255,t[18]=l>>>16&255,t[19]=l>>>24&255,t[20]=f>>>0&255,t[21]=f>>>8&255,t[22]=f>>>16&255,t[23]=f>>>24&255,t[24]=d>>>0&255,t[25]=d>>>8&255,t[26]=d>>>16&255,t[27]=d>>>24&255,t[28]=p>>>0&255,t[29]=p>>>8&255,t[30]=p>>>16&255,t[31]=p>>>24&255}(t,e,r,n)}var b=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function v(t,e,r,n,i,o,s){var a,u,c=new Uint8Array(16),h=new Uint8Array(64);for(u=0;u<16;u++)c[u]=0;for(u=0;u<8;u++)c[u]=o[u];for(;i>=64;){for(m(h,c,s,b),u=0;u<64;u++)t[e+u]=r[n+u]^h[u];for(a=1,u=8;u<16;u++)a=a+(255&c[u])|0,c[u]=255&a,a>>>=8;i-=64,e+=64,n+=64}if(i>0)for(m(h,c,s,b),u=0;u<i;u++)t[e+u]=r[n+u]^h[u];return 0}function _(t,e,r,n,i){var o,s,a=new Uint8Array(16),u=new Uint8Array(64);for(s=0;s<16;s++)a[s]=0;for(s=0;s<8;s++)a[s]=n[s];for(;r>=64;){for(m(u,a,i,b),s=0;s<64;s++)t[e+s]=u[s];for(o=1,s=8;s<16;s++)o=o+(255&a[s])|0,a[s]=255&o,o>>>=8;r-=64,e+=64}if(r>0)for(m(u,a,i,b),s=0;s<r;s++)t[e+s]=u[s];return 0}function k(t,e,r,n,i){var o=new Uint8Array(32);w(o,n,i,b);for(var s=new Uint8Array(8),a=0;a<8;a++)s[a]=n[a+16];return _(t,e,r,s,o)}function E(t,e,r,n,i,o,s){var a=new Uint8Array(32);w(a,o,s,b);for(var u=new Uint8Array(8),c=0;c<8;c++)u[c]=o[c+16];return v(t,e,r,n,i,u,a)}var S=function(t){var e,r,n,i,o,s,a,u;this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.leftover=0,this.fin=0,e=255&t[0]|(255&t[1])<<8,this.r[0]=8191&e,r=255&t[2]|(255&t[3])<<8,this.r[1]=8191&(e>>>13|r<<3),n=255&t[4]|(255&t[5])<<8,this.r[2]=7939&(r>>>10|n<<6),i=255&t[6]|(255&t[7])<<8,this.r[3]=8191&(n>>>7|i<<9),o=255&t[8]|(255&t[9])<<8,this.r[4]=255&(i>>>4|o<<12),this.r[5]=o>>>1&8190,s=255&t[10]|(255&t[11])<<8,this.r[6]=8191&(o>>>14|s<<2),a=255&t[12]|(255&t[13])<<8,this.r[7]=8065&(s>>>11|a<<5),u=255&t[14]|(255&t[15])<<8,this.r[8]=8191&(a>>>8|u<<8),this.r[9]=u>>>5&127,this.pad[0]=255&t[16]|(255&t[17])<<8,this.pad[1]=255&t[18]|(255&t[19])<<8,this.pad[2]=255&t[20]|(255&t[21])<<8,this.pad[3]=255&t[22]|(255&t[23])<<8,this.pad[4]=255&t[24]|(255&t[25])<<8,this.pad[5]=255&t[26]|(255&t[27])<<8,this.pad[6]=255&t[28]|(255&t[29])<<8,this.pad[7]=255&t[30]|(255&t[31])<<8};function A(t,e,r,n,i,o){var s=new S(o);return s.update(r,n,i),s.finish(t,e),0}function x(t,e,r,n,i,o){var s=new Uint8Array(16);return A(s,0,r,n,i,o),y(t,e,s,0)}function I(t,e,r,n,i){var o;if(r<32)return-1;for(E(t,0,e,0,r,n,i),A(t,16,t,32,r-32,t),o=0;o<16;o++)t[o]=0;return 0}function B(t,e,r,n,i){var o,s=new Uint8Array(32);if(r<32)return-1;if(k(s,0,32,n,i),0!==x(e,16,e,32,r-32,s))return-1;for(E(t,0,e,0,r,n,i),o=0;o<32;o++)t[o]=0;return 0}function M(t,e){var r;for(r=0;r<16;r++)t[r]=0|e[r]}function P(t){var e,r,n=1;for(e=0;e<16;e++)r=t[e]+n+65535,n=Math.floor(r/65536),t[e]=r-65536*n;t[0]+=n-1+37*(n-1)}function L(t,e,r){for(var n,i=~(r-1),o=0;o<16;o++)n=i&(t[o]^e[o]),t[o]^=n,e[o]^=n}function O(t,r){var n,i,o,s=e(),a=e();for(n=0;n<16;n++)a[n]=r[n];for(P(a),P(a),P(a),i=0;i<2;i++){for(s[0]=a[0]-65517,n=1;n<15;n++)s[n]=a[n]-65535-(s[n-1]>>16&1),s[n-1]&=65535;s[15]=a[15]-32767-(s[14]>>16&1),o=s[15]>>16&1,s[14]&=65535,L(a,s,1-o)}for(n=0;n<16;n++)t[2*n]=255&a[n],t[2*n+1]=a[n]>>8}function T(t,e){var r=new Uint8Array(32),n=new Uint8Array(32);return O(r,t),O(n,e),g(r,0,n,0)}function R(t){var e=new Uint8Array(32);return O(e,t),1&e[0]}function U(t,e){var r;for(r=0;r<16;r++)t[r]=e[2*r]+(e[2*r+1]<<8);t[15]&=32767}function C(t,e,r){for(var n=0;n<16;n++)t[n]=e[n]+r[n]}function N(t,e,r){for(var n=0;n<16;n++)t[n]=e[n]-r[n]}function z(t,e,r){var n,i,o=0,s=0,a=0,u=0,c=0,h=0,l=0,f=0,d=0,p=0,y=0,g=0,m=0,w=0,b=0,v=0,_=0,k=0,E=0,S=0,A=0,x=0,I=0,B=0,M=0,P=0,L=0,O=0,T=0,R=0,U=0,C=r[0],N=r[1],z=r[2],D=r[3],j=r[4],W=r[5],F=r[6],K=r[7],q=r[8],V=r[9],H=r[10],$=r[11],Z=r[12],G=r[13],Y=r[14],J=r[15];o+=(n=e[0])*C,s+=n*N,a+=n*z,u+=n*D,c+=n*j,h+=n*W,l+=n*F,f+=n*K,d+=n*q,p+=n*V,y+=n*H,g+=n*$,m+=n*Z,w+=n*G,b+=n*Y,v+=n*J,s+=(n=e[1])*C,a+=n*N,u+=n*z,c+=n*D,h+=n*j,l+=n*W,f+=n*F,d+=n*K,p+=n*q,y+=n*V,g+=n*H,m+=n*$,w+=n*Z,b+=n*G,v+=n*Y,_+=n*J,a+=(n=e[2])*C,u+=n*N,c+=n*z,h+=n*D,l+=n*j,f+=n*W,d+=n*F,p+=n*K,y+=n*q,g+=n*V,m+=n*H,w+=n*$,b+=n*Z,v+=n*G,_+=n*Y,k+=n*J,u+=(n=e[3])*C,c+=n*N,h+=n*z,l+=n*D,f+=n*j,d+=n*W,p+=n*F,y+=n*K,g+=n*q,m+=n*V,w+=n*H,b+=n*$,v+=n*Z,_+=n*G,k+=n*Y,E+=n*J,c+=(n=e[4])*C,h+=n*N,l+=n*z,f+=n*D,d+=n*j,p+=n*W,y+=n*F,g+=n*K,m+=n*q,w+=n*V,b+=n*H,v+=n*$,_+=n*Z,k+=n*G,E+=n*Y,S+=n*J,h+=(n=e[5])*C,l+=n*N,f+=n*z,d+=n*D,p+=n*j,y+=n*W,g+=n*F,m+=n*K,w+=n*q,b+=n*V,v+=n*H,_+=n*$,k+=n*Z,E+=n*G,S+=n*Y,A+=n*J,l+=(n=e[6])*C,f+=n*N,d+=n*z,p+=n*D,y+=n*j,g+=n*W,m+=n*F,w+=n*K,b+=n*q,v+=n*V,_+=n*H,k+=n*$,E+=n*Z,S+=n*G,A+=n*Y,x+=n*J,f+=(n=e[7])*C,d+=n*N,p+=n*z,y+=n*D,g+=n*j,m+=n*W,w+=n*F,b+=n*K,v+=n*q,_+=n*V,k+=n*H,E+=n*$,S+=n*Z,A+=n*G,x+=n*Y,I+=n*J,d+=(n=e[8])*C,p+=n*N,y+=n*z,g+=n*D,m+=n*j,w+=n*W,b+=n*F,v+=n*K,_+=n*q,k+=n*V,E+=n*H,S+=n*$,A+=n*Z,x+=n*G,I+=n*Y,B+=n*J,p+=(n=e[9])*C,y+=n*N,g+=n*z,m+=n*D,w+=n*j,b+=n*W,v+=n*F,_+=n*K,k+=n*q,E+=n*V,S+=n*H,A+=n*$,x+=n*Z,I+=n*G,B+=n*Y,M+=n*J,y+=(n=e[10])*C,g+=n*N,m+=n*z,w+=n*D,b+=n*j,v+=n*W,_+=n*F,k+=n*K,E+=n*q,S+=n*V,A+=n*H,x+=n*$,I+=n*Z,B+=n*G,M+=n*Y,P+=n*J,g+=(n=e[11])*C,m+=n*N,w+=n*z,b+=n*D,v+=n*j,_+=n*W,k+=n*F,E+=n*K,S+=n*q,A+=n*V,x+=n*H,I+=n*$,B+=n*Z,M+=n*G,P+=n*Y,L+=n*J,m+=(n=e[12])*C,w+=n*N,b+=n*z,v+=n*D,_+=n*j,k+=n*W,E+=n*F,S+=n*K,A+=n*q,x+=n*V,I+=n*H,B+=n*$,M+=n*Z,P+=n*G,L+=n*Y,O+=n*J,w+=(n=e[13])*C,b+=n*N,v+=n*z,_+=n*D,k+=n*j,E+=n*W,S+=n*F,A+=n*K,x+=n*q,I+=n*V,B+=n*H,M+=n*$,P+=n*Z,L+=n*G,O+=n*Y,T+=n*J,b+=(n=e[14])*C,v+=n*N,_+=n*z,k+=n*D,E+=n*j,S+=n*W,A+=n*F,x+=n*K,I+=n*q,B+=n*V,M+=n*H,P+=n*$,L+=n*Z,O+=n*G,T+=n*Y,R+=n*J,v+=(n=e[15])*C,s+=38*(k+=n*z),a+=38*(E+=n*D),u+=38*(S+=n*j),c+=38*(A+=n*W),h+=38*(x+=n*F),l+=38*(I+=n*K),f+=38*(B+=n*q),d+=38*(M+=n*V),p+=38*(P+=n*H),y+=38*(L+=n*$),g+=38*(O+=n*Z),m+=38*(T+=n*G),w+=38*(R+=n*Y),b+=38*(U+=n*J),o=(n=(o+=38*(_+=n*N))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),o=(n=(o+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),s=(n=s+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),w=(n=w+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),o+=i-1+37*(i-1),t[0]=o,t[1]=s,t[2]=a,t[3]=u,t[4]=c,t[5]=h,t[6]=l,t[7]=f,t[8]=d,t[9]=p,t[10]=y,t[11]=g,t[12]=m,t[13]=w,t[14]=b,t[15]=v}function D(t,e){z(t,e,e)}function j(t,r){var n,i=e();for(n=0;n<16;n++)i[n]=r[n];for(n=253;n>=0;n--)D(i,i),2!==n&&4!==n&&z(i,i,r);for(n=0;n<16;n++)t[n]=i[n]}function W(t,r){var n,i=e();for(n=0;n<16;n++)i[n]=r[n];for(n=250;n>=0;n--)D(i,i),1!==n&&z(i,i,r);for(n=0;n<16;n++)t[n]=i[n]}function F(t,r,n){var i,o,s=new Uint8Array(32),u=new Float64Array(80),c=e(),h=e(),l=e(),f=e(),d=e(),p=e();for(o=0;o<31;o++)s[o]=r[o];for(s[31]=127&r[31]|64,s[0]&=248,U(u,n),o=0;o<16;o++)h[o]=u[o],f[o]=c[o]=l[o]=0;for(c[0]=f[0]=1,o=254;o>=0;--o)L(c,h,i=s[o>>>3]>>>(7&o)&1),L(l,f,i),C(d,c,l),N(c,c,l),C(l,h,f),N(h,h,f),D(f,d),D(p,c),z(c,l,c),z(l,h,d),C(d,c,l),N(c,c,l),D(h,c),N(l,f,p),z(c,l,a),C(c,c,f),z(l,l,c),z(c,f,p),z(f,h,u),D(h,d),L(c,h,i),L(l,f,i);for(o=0;o<16;o++)u[o+16]=c[o],u[o+32]=l[o],u[o+48]=h[o],u[o+64]=f[o];var y=u.subarray(32),g=u.subarray(16);return j(y,y),z(g,g,y),O(t,g),0}function K(t,e){return F(t,e,i)}function q(t,e){return r(e,32),K(t,e)}function V(t,e,r){var i=new Uint8Array(32);return F(i,r,e),w(t,n,i,b)}S.prototype.blocks=function(t,e,r){for(var n,i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k=this.fin?0:2048,E=this.h[0],S=this.h[1],A=this.h[2],x=this.h[3],I=this.h[4],B=this.h[5],M=this.h[6],P=this.h[7],L=this.h[8],O=this.h[9],T=this.r[0],R=this.r[1],U=this.r[2],C=this.r[3],N=this.r[4],z=this.r[5],D=this.r[6],j=this.r[7],W=this.r[8],F=this.r[9];r>=16;)f=l=0,f+=(E+=8191&(n=255&t[e+0]|(255&t[e+1])<<8))*T,f+=(S+=8191&(n>>>13|(i=255&t[e+2]|(255&t[e+3])<<8)<<3))*(5*F),f+=(A+=8191&(i>>>10|(o=255&t[e+4]|(255&t[e+5])<<8)<<6))*(5*W),f+=(x+=8191&(o>>>7|(s=255&t[e+6]|(255&t[e+7])<<8)<<9))*(5*j),l=(f+=(I+=8191&(s>>>4|(a=255&t[e+8]|(255&t[e+9])<<8)<<12))*(5*D))>>>13,f&=8191,f+=(B+=a>>>1&8191)*(5*z),f+=(M+=8191&(a>>>14|(u=255&t[e+10]|(255&t[e+11])<<8)<<2))*(5*N),f+=(P+=8191&(u>>>11|(c=255&t[e+12]|(255&t[e+13])<<8)<<5))*(5*C),f+=(L+=8191&(c>>>8|(h=255&t[e+14]|(255&t[e+15])<<8)<<8))*(5*U),d=l+=(f+=(O+=h>>>5|k)*(5*R))>>>13,d+=E*R,d+=S*T,d+=A*(5*F),d+=x*(5*W),l=(d+=I*(5*j))>>>13,d&=8191,d+=B*(5*D),d+=M*(5*z),d+=P*(5*N),d+=L*(5*C),l+=(d+=O*(5*U))>>>13,d&=8191,p=l,p+=E*U,p+=S*R,p+=A*T,p+=x*(5*F),l=(p+=I*(5*W))>>>13,p&=8191,p+=B*(5*j),p+=M*(5*D),p+=P*(5*z),p+=L*(5*N),y=l+=(p+=O*(5*C))>>>13,y+=E*C,y+=S*U,y+=A*R,y+=x*T,l=(y+=I*(5*F))>>>13,y&=8191,y+=B*(5*W),y+=M*(5*j),y+=P*(5*D),y+=L*(5*z),g=l+=(y+=O*(5*N))>>>13,g+=E*N,g+=S*C,g+=A*U,g+=x*R,l=(g+=I*T)>>>13,g&=8191,g+=B*(5*F),g+=M*(5*W),g+=P*(5*j),g+=L*(5*D),m=l+=(g+=O*(5*z))>>>13,m+=E*z,m+=S*N,m+=A*C,m+=x*U,l=(m+=I*R)>>>13,m&=8191,m+=B*T,m+=M*(5*F),m+=P*(5*W),m+=L*(5*j),w=l+=(m+=O*(5*D))>>>13,w+=E*D,w+=S*z,w+=A*N,w+=x*C,l=(w+=I*U)>>>13,w&=8191,w+=B*R,w+=M*T,w+=P*(5*F),w+=L*(5*W),b=l+=(w+=O*(5*j))>>>13,b+=E*j,b+=S*D,b+=A*z,b+=x*N,l=(b+=I*C)>>>13,b&=8191,b+=B*U,b+=M*R,b+=P*T,b+=L*(5*F),v=l+=(b+=O*(5*W))>>>13,v+=E*W,v+=S*j,v+=A*D,v+=x*z,l=(v+=I*N)>>>13,v&=8191,v+=B*C,v+=M*U,v+=P*R,v+=L*T,_=l+=(v+=O*(5*F))>>>13,_+=E*F,_+=S*W,_+=A*j,_+=x*D,l=(_+=I*z)>>>13,_&=8191,_+=B*N,_+=M*C,_+=P*U,_+=L*R,E=f=8191&(l=(l=((l+=(_+=O*T)>>>13)<<2)+l|0)+(f&=8191)|0),S=d+=l>>>=13,A=p&=8191,x=y&=8191,I=g&=8191,B=m&=8191,M=w&=8191,P=b&=8191,L=v&=8191,O=_&=8191,e+=16,r-=16;this.h[0]=E,this.h[1]=S,this.h[2]=A,this.h[3]=x,this.h[4]=I,this.h[5]=B,this.h[6]=M,this.h[7]=P,this.h[8]=L,this.h[9]=O},S.prototype.finish=function(t,e){var r,n,i,o,s=new Uint16Array(10);if(this.leftover){for(o=this.leftover,this.buffer[o++]=1;o<16;o++)this.buffer[o]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(r=this.h[1]>>>13,this.h[1]&=8191,o=2;o<10;o++)this.h[o]+=r,r=this.h[o]>>>13,this.h[o]&=8191;for(this.h[0]+=5*r,r=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=r,r=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=r,s[0]=this.h[0]+5,r=s[0]>>>13,s[0]&=8191,o=1;o<10;o++)s[o]=this.h[o]+r,r=s[o]>>>13,s[o]&=8191;for(s[9]-=8192,n=(1^r)-1,o=0;o<10;o++)s[o]&=n;for(n=~n,o=0;o<10;o++)this.h[o]=this.h[o]&n|s[o];for(this.h[0]=65535&(this.h[0]|this.h[1]<<13),this.h[1]=65535&(this.h[1]>>>3|this.h[2]<<10),this.h[2]=65535&(this.h[2]>>>6|this.h[3]<<7),this.h[3]=65535&(this.h[3]>>>9|this.h[4]<<4),this.h[4]=65535&(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14),this.h[5]=65535&(this.h[6]>>>2|this.h[7]<<11),this.h[6]=65535&(this.h[7]>>>5|this.h[8]<<8),this.h[7]=65535&(this.h[8]>>>8|this.h[9]<<5),i=this.h[0]+this.pad[0],this.h[0]=65535&i,o=1;o<8;o++)i=(this.h[o]+this.pad[o]|0)+(i>>>16)|0,this.h[o]=65535&i;t[e+0]=this.h[0]>>>0&255,t[e+1]=this.h[0]>>>8&255,t[e+2]=this.h[1]>>>0&255,t[e+3]=this.h[1]>>>8&255,t[e+4]=this.h[2]>>>0&255,t[e+5]=this.h[2]>>>8&255,t[e+6]=this.h[3]>>>0&255,t[e+7]=this.h[3]>>>8&255,t[e+8]=this.h[4]>>>0&255,t[e+9]=this.h[4]>>>8&255,t[e+10]=this.h[5]>>>0&255,t[e+11]=this.h[5]>>>8&255,t[e+12]=this.h[6]>>>0&255,t[e+13]=this.h[6]>>>8&255,t[e+14]=this.h[7]>>>0&255,t[e+15]=this.h[7]>>>8&255},S.prototype.update=function(t,e,r){var n,i;if(this.leftover){for((i=16-this.leftover)>r&&(i=r),n=0;n<i;n++)this.buffer[this.leftover+n]=t[e+n];if(r-=i,e+=i,this.leftover+=i,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(r>=16&&(i=r-r%16,this.blocks(t,e,i),e+=i,r-=i),r){for(n=0;n<r;n++)this.buffer[this.leftover+n]=t[e+n];this.leftover+=r}};var H=I,$=B,Z=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function G(t,e,r,n){for(var i,o,s,a,u,c,h,l,f,d,p,y,g,m,w,b,v,_,k,E,S,A,x,I,B,M,P=new Int32Array(16),L=new Int32Array(16),O=t[0],T=t[1],R=t[2],U=t[3],C=t[4],N=t[5],z=t[6],D=t[7],j=e[0],W=e[1],F=e[2],K=e[3],q=e[4],V=e[5],H=e[6],$=e[7],G=0;n>=128;){for(k=0;k<16;k++)E=8*k+G,P[k]=r[E+0]<<24|r[E+1]<<16|r[E+2]<<8|r[E+3],L[k]=r[E+4]<<24|r[E+5]<<16|r[E+6]<<8|r[E+7];for(k=0;k<80;k++)if(i=O,o=T,s=R,a=U,u=C,c=N,h=z,f=j,d=W,p=F,y=K,g=q,m=V,w=H,x=65535&(A=$),I=A>>>16,B=65535&(S=D),M=S>>>16,x+=65535&(A=(q>>>14|C<<18)^(q>>>18|C<<14)^(C>>>9|q<<23)),I+=A>>>16,B+=65535&(S=(C>>>14|q<<18)^(C>>>18|q<<14)^(q>>>9|C<<23)),M+=S>>>16,x+=65535&(A=q&V^~q&H),I+=A>>>16,B+=65535&(S=C&N^~C&z),M+=S>>>16,S=Z[2*k],x+=65535&(A=Z[2*k+1]),I+=A>>>16,B+=65535&S,M+=S>>>16,S=P[k%16],I+=(A=L[k%16])>>>16,B+=65535&S,M+=S>>>16,B+=(I+=(x+=65535&A)>>>16)>>>16,x=65535&(A=_=65535&x|I<<16),I=A>>>16,B=65535&(S=v=65535&B|(M+=B>>>16)<<16),M=S>>>16,x+=65535&(A=(j>>>28|O<<4)^(O>>>2|j<<30)^(O>>>7|j<<25)),I+=A>>>16,B+=65535&(S=(O>>>28|j<<4)^(j>>>2|O<<30)^(j>>>7|O<<25)),M+=S>>>16,I+=(A=j&W^j&F^W&F)>>>16,B+=65535&(S=O&T^O&R^T&R),M+=S>>>16,l=65535&(B+=(I+=(x+=65535&A)>>>16)>>>16)|(M+=B>>>16)<<16,b=65535&x|I<<16,x=65535&(A=y),I=A>>>16,B=65535&(S=a),M=S>>>16,I+=(A=_)>>>16,B+=65535&(S=v),M+=S>>>16,T=i,R=o,U=s,C=a=65535&(B+=(I+=(x+=65535&A)>>>16)>>>16)|(M+=B>>>16)<<16,N=u,z=c,D=h,O=l,W=f,F=d,K=p,q=y=65535&x|I<<16,V=g,H=m,$=w,j=b,k%16==15)for(E=0;E<16;E++)S=P[E],x=65535&(A=L[E]),I=A>>>16,B=65535&S,M=S>>>16,S=P[(E+9)%16],x+=65535&(A=L[(E+9)%16]),I+=A>>>16,B+=65535&S,M+=S>>>16,v=P[(E+1)%16],x+=65535&(A=((_=L[(E+1)%16])>>>1|v<<31)^(_>>>8|v<<24)^(_>>>7|v<<25)),I+=A>>>16,B+=65535&(S=(v>>>1|_<<31)^(v>>>8|_<<24)^v>>>7),M+=S>>>16,v=P[(E+14)%16],I+=(A=((_=L[(E+14)%16])>>>19|v<<13)^(v>>>29|_<<3)^(_>>>6|v<<26))>>>16,B+=65535&(S=(v>>>19|_<<13)^(_>>>29|v<<3)^v>>>6),M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,P[E]=65535&B|M<<16,L[E]=65535&x|I<<16;x=65535&(A=j),I=A>>>16,B=65535&(S=O),M=S>>>16,S=t[0],I+=(A=e[0])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[0]=O=65535&B|M<<16,e[0]=j=65535&x|I<<16,x=65535&(A=W),I=A>>>16,B=65535&(S=T),M=S>>>16,S=t[1],I+=(A=e[1])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[1]=T=65535&B|M<<16,e[1]=W=65535&x|I<<16,x=65535&(A=F),I=A>>>16,B=65535&(S=R),M=S>>>16,S=t[2],I+=(A=e[2])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[2]=R=65535&B|M<<16,e[2]=F=65535&x|I<<16,x=65535&(A=K),I=A>>>16,B=65535&(S=U),M=S>>>16,S=t[3],I+=(A=e[3])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[3]=U=65535&B|M<<16,e[3]=K=65535&x|I<<16,x=65535&(A=q),I=A>>>16,B=65535&(S=C),M=S>>>16,S=t[4],I+=(A=e[4])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[4]=C=65535&B|M<<16,e[4]=q=65535&x|I<<16,x=65535&(A=V),I=A>>>16,B=65535&(S=N),M=S>>>16,S=t[5],I+=(A=e[5])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[5]=N=65535&B|M<<16,e[5]=V=65535&x|I<<16,x=65535&(A=H),I=A>>>16,B=65535&(S=z),M=S>>>16,S=t[6],I+=(A=e[6])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[6]=z=65535&B|M<<16,e[6]=H=65535&x|I<<16,x=65535&(A=$),I=A>>>16,B=65535&(S=D),M=S>>>16,S=t[7],I+=(A=e[7])>>>16,B+=65535&S,M+=S>>>16,M+=(B+=(I+=(x+=65535&A)>>>16)>>>16)>>>16,t[7]=D=65535&B|M<<16,e[7]=$=65535&x|I<<16,G+=128,n-=128}return n}function Y(t,e,r){var n,i=new Int32Array(8),o=new Int32Array(8),s=new Uint8Array(256),a=r;for(i[0]=1779033703,i[1]=3144134277,i[2]=1013904242,i[3]=2773480762,i[4]=1359893119,i[5]=2600822924,i[6]=528734635,i[7]=1541459225,o[0]=4089235720,o[1]=2227873595,o[2]=4271175723,o[3]=1595750129,o[4]=2917565137,o[5]=725511199,o[6]=4215389547,o[7]=327033209,G(i,o,e,r),r%=128,n=0;n<r;n++)s[n]=e[a-r+n];for(s[r]=128,s[(r=256-128*(r<112?1:0))-9]=0,d(s,r-8,a/536870912|0,a<<3),G(i,o,s,r),n=0;n<8;n++)d(t,8*n,i[n],o[n]);return 0}function J(t,r){var n=e(),i=e(),o=e(),s=e(),a=e(),u=e(),h=e(),l=e(),f=e();N(n,t[1],t[0]),N(f,r[1],r[0]),z(n,n,f),C(i,t[0],t[1]),C(f,r[0],r[1]),z(i,i,f),z(o,t[3],r[3]),z(o,o,c),z(s,t[2],r[2]),C(s,s,s),N(a,i,n),N(u,s,o),C(h,s,o),C(l,i,n),z(t[0],a,u),z(t[1],l,h),z(t[2],h,u),z(t[3],a,l)}function X(t,e,r){var n;for(n=0;n<4;n++)L(t[n],e[n],r)}function Q(t,r){var n=e(),i=e(),o=e();j(o,r[2]),z(n,r[0],o),z(i,r[1],o),O(t,i),t[31]^=R(n)<<7}function tt(t,e,r){var n,i;for(M(t[0],o),M(t[1],s),M(t[2],s),M(t[3],o),i=255;i>=0;--i)X(t,e,n=r[i/8|0]>>(7&i)&1),J(e,t),J(t,t),X(t,e,n)}function et(t,r){var n=[e(),e(),e(),e()];M(n[0],h),M(n[1],l),M(n[2],s),z(n[3],h,l),tt(t,n,r)}function rt(t,n,i){var o,s=new Uint8Array(64),a=[e(),e(),e(),e()];for(i||r(n,32),Y(s,n,32),s[0]&=248,s[31]&=127,s[31]|=64,et(a,s),Q(t,a),o=0;o<32;o++)n[o+32]=t[o];return 0}var nt=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function it(t,e){var r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i<o;++i)e[i]+=r-16*e[n]*nt[i-(n-32)],r=Math.floor((e[i]+128)/256),e[i]-=256*r;e[i]+=r,e[n]=0}for(r=0,i=0;i<32;i++)e[i]+=r-(e[31]>>4)*nt[i],r=e[i]>>8,e[i]&=255;for(i=0;i<32;i++)e[i]-=r*nt[i];for(n=0;n<32;n++)e[n+1]+=e[n]>>8,t[n]=255&e[n]}function ot(t){var e,r=new Float64Array(64);for(e=0;e<64;e++)r[e]=t[e];for(e=0;e<64;e++)t[e]=0;it(t,r)}function st(t,r,n,i){var o,s,a=new Uint8Array(64),u=new Uint8Array(64),c=new Uint8Array(64),h=new Float64Array(64),l=[e(),e(),e(),e()];Y(a,i,32),a[0]&=248,a[31]&=127,a[31]|=64;var f=n+64;for(o=0;o<n;o++)t[64+o]=r[o];for(o=0;o<32;o++)t[32+o]=a[32+o];for(Y(c,t.subarray(32),n+32),ot(c),et(l,c),Q(t,l),o=32;o<64;o++)t[o]=i[o];for(Y(u,t,n+64),ot(u),o=0;o<64;o++)h[o]=0;for(o=0;o<32;o++)h[o]=c[o];for(o=0;o<32;o++)for(s=0;s<32;s++)h[o+s]+=u[o]*a[s];return it(t.subarray(32),h),f}function at(t,r,n,i){var a,c=new Uint8Array(32),h=new Uint8Array(64),l=[e(),e(),e(),e()],d=[e(),e(),e(),e()];if(n<64)return-1;if(function(t,r){var n=e(),i=e(),a=e(),c=e(),h=e(),l=e(),d=e();return M(t[2],s),U(t[1],r),D(a,t[1]),z(c,a,u),N(a,a,t[2]),C(c,t[2],c),D(h,c),D(l,h),z(d,l,h),z(n,d,a),z(n,n,c),W(n,n),z(n,n,a),z(n,n,c),z(n,n,c),z(t[0],n,c),D(i,t[0]),z(i,i,c),T(i,a)&&z(t[0],t[0],f),D(i,t[0]),z(i,i,c),T(i,a)?-1:(R(t[0])===r[31]>>7&&N(t[0],o,t[0]),z(t[3],t[0],t[1]),0)}(d,i))return-1;for(a=0;a<n;a++)t[a]=r[a];for(a=0;a<32;a++)t[a+32]=i[a];if(Y(h,t,n),ot(h),tt(l,d,h),et(d,r.subarray(32)),J(l,d),Q(c,l),n-=64,g(r,0,c,0)){for(a=0;a<n;a++)t[a]=0;return-1}for(a=0;a<n;a++)t[a]=r[a+64];return n}var ut=16,ct=64,ht=32,lt=64;function ft(t,e){if(32!==t.length)throw new Error("bad key size");if(24!==e.length)throw new Error("bad nonce size")}function dt(){for(var t=0;t<arguments.length;t++)if(!(arguments[t]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function pt(t){for(var e=0;e<t.length;e++)t[e]=0}t.lowlevel={crypto_core_hsalsa20:w,crypto_stream_xor:E,crypto_stream:k,crypto_stream_salsa20_xor:v,crypto_stream_salsa20:_,crypto_onetimeauth:A,crypto_onetimeauth_verify:x,crypto_verify_16:y,crypto_verify_32:g,crypto_secretbox:I,crypto_secretbox_open:B,crypto_scalarmult:F,crypto_scalarmult_base:K,crypto_box_beforenm:V,crypto_box_afternm:H,crypto_box:function(t,e,r,n,i,o){var s=new Uint8Array(32);return V(s,i,o),H(t,e,r,n,s)},crypto_box_open:function(t,e,r,n,i,o){var s=new Uint8Array(32);return V(s,i,o),$(t,e,r,n,s)},crypto_box_keypair:q,crypto_hash:Y,crypto_sign:st,crypto_sign_keypair:rt,crypto_sign_open:at,crypto_secretbox_KEYBYTES:32,crypto_secretbox_NONCEBYTES:24,crypto_secretbox_ZEROBYTES:32,crypto_secretbox_BOXZEROBYTES:ut,crypto_scalarmult_BYTES:32,crypto_scalarmult_SCALARBYTES:32,crypto_box_PUBLICKEYBYTES:32,crypto_box_SECRETKEYBYTES:32,crypto_box_BEFORENMBYTES:32,crypto_box_NONCEBYTES:24,crypto_box_ZEROBYTES:32,crypto_box_BOXZEROBYTES:16,crypto_sign_BYTES:ct,crypto_sign_PUBLICKEYBYTES:ht,crypto_sign_SECRETKEYBYTES:lt,crypto_sign_SEEDBYTES:32,crypto_hash_BYTES:64,gf:e,D:u,L:nt,pack25519:O,unpack25519:U,M:z,A:C,S:D,Z:N,pow2523:W,add:J,set25519:M,modL:it,scalarmult:tt,scalarbase:et},t.randomBytes=function(t){var e=new Uint8Array(t);return r(e,t),e},t.secretbox=function(t,e,r){dt(t,e,r),ft(r,e);for(var n=new Uint8Array(32+t.length),i=new Uint8Array(n.length),o=0;o<t.length;o++)n[o+32]=t[o];return I(i,n,n.length,e,r),i.subarray(ut)},t.secretbox.open=function(t,e,r){dt(t,e,r),ft(r,e);for(var n=new Uint8Array(ut+t.length),i=new Uint8Array(n.length),o=0;o<t.length;o++)n[o+ut]=t[o];return n.length<32||0!==B(i,n,n.length,e,r)?null:i.subarray(32)},t.secretbox.keyLength=32,t.secretbox.nonceLength=24,t.secretbox.overheadLength=ut,t.scalarMult=function(t,e){if(dt(t,e),32!==t.length)throw new Error("bad n size");if(32!==e.length)throw new Error("bad p size");var r=new Uint8Array(32);return F(r,t,e),r},t.scalarMult.base=function(t){if(dt(t),32!==t.length)throw new Error("bad n size");var e=new Uint8Array(32);return K(e,t),e},t.scalarMult.scalarLength=32,t.scalarMult.groupElementLength=32,t.box=function(e,r,n,i){var o=t.box.before(n,i);return t.secretbox(e,r,o)},t.box.before=function(t,e){dt(t,e),function(t,e){if(32!==t.length)throw new Error("bad public key size");if(32!==e.length)throw new Error("bad secret key size")}(t,e);var r=new Uint8Array(32);return V(r,t,e),r},t.box.after=t.secretbox,t.box.open=function(e,r,n,i){var o=t.box.before(n,i);return t.secretbox.open(e,r,o)},t.box.open.after=t.secretbox.open,t.box.keyPair=function(){var t=new Uint8Array(32),e=new Uint8Array(32);return q(t,e),{publicKey:t,secretKey:e}},t.box.keyPair.fromSecretKey=function(t){if(dt(t),32!==t.length)throw new Error("bad secret key size");var e=new Uint8Array(32);return K(e,t),{publicKey:e,secretKey:new Uint8Array(t)}},t.box.publicKeyLength=32,t.box.secretKeyLength=32,t.box.sharedKeyLength=32,t.box.nonceLength=24,t.box.overheadLength=t.secretbox.overheadLength,t.sign=function(t,e){if(dt(t,e),e.length!==lt)throw new Error("bad secret key size");var r=new Uint8Array(ct+t.length);return st(r,t,t.length,e),r},t.sign.open=function(t,e){if(dt(t,e),e.length!==ht)throw new Error("bad public key size");var r=new Uint8Array(t.length),n=at(r,t,t.length,e);if(n<0)return null;for(var i=new Uint8Array(n),o=0;o<i.length;o++)i[o]=r[o];return i},t.sign.detached=function(e,r){for(var n=t.sign(e,r),i=new Uint8Array(ct),o=0;o<i.length;o++)i[o]=n[o];return i},t.sign.detached.verify=function(t,e,r){if(dt(t,e,r),e.length!==ct)throw new Error("bad signature size");if(r.length!==ht)throw new Error("bad public key size");var n,i=new Uint8Array(ct+t.length),o=new Uint8Array(ct+t.length);for(n=0;n<ct;n++)i[n]=e[n];for(n=0;n<t.length;n++)i[n+ct]=t[n];return at(o,i,i.length,r)>=0},t.sign.keyPair=function(){var t=new Uint8Array(ht),e=new Uint8Array(lt);return rt(t,e),{publicKey:t,secretKey:e}},t.sign.keyPair.fromSecretKey=function(t){if(dt(t),t.length!==lt)throw new Error("bad secret key size");for(var e=new Uint8Array(ht),r=0;r<e.length;r++)e[r]=t[32+r];return{publicKey:e,secretKey:new Uint8Array(t)}},t.sign.keyPair.fromSeed=function(t){if(dt(t),32!==t.length)throw new Error("bad seed size");for(var e=new Uint8Array(ht),r=new Uint8Array(lt),n=0;n<32;n++)r[n]=t[n];return rt(e,r,!0),{publicKey:e,secretKey:r}},t.sign.publicKeyLength=ht,t.sign.secretKeyLength=lt,t.sign.seedLength=32,t.sign.signatureLength=ct,t.hash=function(t){dt(t);var e=new Uint8Array(64);return Y(e,t,t.length),e},t.hash.hashLength=64,t.verify=function(t,e){return dt(t,e),0!==t.length&&0!==e.length&&t.length===e.length&&0===p(t,0,e,0,t.length)},t.setPRNG=function(t){r=t},function(){var e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&e.getRandomValues?t.setPRNG((function(t,r){var n,i=new Uint8Array(r);for(n=0;n<r;n+=65536)e.getRandomValues(i.subarray(n,n+Math.min(r-n,65536)));for(n=0;n<r;n++)t[n]=i[n];pt(i)})):void 0!==kP&&(e=ee)&&e.randomBytes&&t.setPRNG((function(t,r){var n,i=e.randomBytes(r);for(n=0;n<r;n++)t[n]=i[n];pt(i)}))}()}(EP.exports?EP.exports:self.nacl=self.nacl||{});var SP=EP.exports;const AP=(t,e,r)=>SP.sign.detached.verify(t,e,r.toBytes()),xP=(t,e)=>{const{pubkey:r}=LM(e+"."+t,OB.V1);return r};async function IP(t,e,r,n){const i=xP(e,r);let{registry:o}=await ah.retrieve(t,i);if(!o.data)throw new Dc(zc.NoRecordData);if(n)return YP(o,r,i);const s=LB.get(r);return o.data=o.data.slice(0,s),o}async function BP(t,e,r,n){const i=r.map((t=>xP(e,t))),o=await ah.retrieveBatch(t,i);return n?o.map(((t,n)=>{if(t)return YP(t,r[n],xP(e,r[n]))})):o}const MP=async(t,e)=>await IP(t,e,PB.IPFS,!0),PP=async(t,e)=>await IP(t,e,PB.ARWV,!0),LP=async(t,e)=>await IP(t,e,PB.ETH,!0),OP=async(t,e)=>await IP(t,e,PB.BTC,!0),TP=async(t,e)=>await IP(t,e,PB.LTC,!0),RP=async(t,e)=>await IP(t,e,PB.DOGE,!0),UP=async(t,e)=>await IP(t,e,PB.Email,!0),CP=async(t,e)=>await IP(t,e,PB.Url,!0),NP=async(t,e)=>await IP(t,e,PB.Discord,!0),zP=async(t,e)=>await IP(t,e,PB.Github,!0),DP=async(t,e)=>await IP(t,e,PB.Reddit,!0),jP=async(t,e)=>await IP(t,e,PB.Twitter,!0),WP=async(t,e)=>await IP(t,e,PB.Telegram,!0),FP=async(t,e)=>await IP(t,e,PB.Pic,!0),KP=async(t,e)=>await IP(t,e,PB.SHDW,!0),qP=async(t,e)=>await IP(t,e,PB.SOL),VP=async(t,e)=>await IP(t,e,PB.POINT,!0),HP=async(t,e)=>await IP(t,e,PB.BSC,!0),$P=async(t,e)=>await IP(t,e,PB.Injective,!0),ZP=async(t,e)=>await IP(t,e,PB.Backpack,!0),GP=async(t,e)=>await IP(t,e,PB.Background,!0),YP=(t,e,r)=>{const i=null==t?void 0:t.data;if(!i)return;if(0===i.compare(n.Buffer.alloc(i.length)))return;const o=LB.get(e),s=(t=>{const e=Array.from(t);return e.length-1-e.reverse().findIndex((t=>0!==t))+1})(i);if(!o)return i.slice(0,s).toString("utf-8");if(e===PB.SOL){const e=new TextEncoder,o=n.Buffer.concat([i.slice(0,32),r.toBuffer()]),s=e.encode(o.toString("hex"));if(AP(s,i.slice(32,96),t.owner))return Wv.encode(i.slice(0,32))}if(o&&s!==o){const t=i.slice(0,s).toString("utf-8");if(e===PB.Injective){const e=tP(t);if("inj"===e.prefix&&20===e.data.length)return t}else if(e===PB.BSC||e===PB.ETH){const e=t.slice(0,2),r=t.slice(2);if("0x"===e&&20===n.Buffer.from(r,"hex").length)return t}else if((e===PB.A||e===PB.AAAA)&&fP.isValid(t))return t;throw new Dc(zc.InvalidRecordData)}if(e===PB.ETH||e===PB.BSC)return"0x"+i.slice(0,o).toString("hex");if(e===PB.Injective)return eP("inj",i.slice(0,o),"bech32");if(e===PB.A||e===PB.AAAA)return fP.fromByteArray([...i.slice(0,o)]).toString();if(e===PB.Background)return new Wo(i.slice(0,o)).toString();throw new Dc(zc.InvalidRecordData)},JP=(t,e)=>{if(!LB.get(e))return e!==PB.CNAME&&e!==PB.TXT||(t=_P(t)),n.Buffer.from(t,"utf-8");if(e===PB.SOL)throw new Dc(zc.UnsupportedRecord,"Use `serializeSolRecord` for SOL record");if(e===PB.ETH||e===PB.BSC)return CM("0x"===t.slice(0,2),zc.InvalidEvmAddress),n.Buffer.from(t.slice(2),"hex");if(e===PB.Injective){const e=tP(t);return CM("inj"===e.prefix,zc.InvalidInjectiveAddress),CM(20===e.data.length,zc.InvalidInjectiveAddress),n.Buffer.from(e.data)}if(e===PB.A){const e=fP.parse(t).toByteArray();return CM(4===e.length,zc.InvalidARecord),n.Buffer.from(e)}if(e===PB.AAAA){const e=fP.parse(t).toByteArray();return CM(16===e.length,zc.InvalidAAAARecord),n.Buffer.from(e)}if(e===PB.Background)return new Wo(t).toBuffer();throw new Dc(zc.InvalidRecordInput)},XP=(t,e,r,i)=>{const o=n.Buffer.concat([t.toBuffer(),e.toBuffer()]),s=(new TextEncoder).encode(o.toString("hex")),a=AP(s,i,r);return CM(a,zc.InvalidSignature),n.Buffer.concat([t.toBuffer(),i])},QP=async(t,e)=>{const{pubkey:r}=LM(e),{registry:n,nftOwner:i}=await ah.retrieve(t,r);if(i)return i;try{const r=await eL(t,n.owner,e);if(void 0!==r)return r;return await tL(t,n.owner,e)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}return n.owner},tL=async(t,e,r)=>{const i=xP(r,PB.SOL),o=await qP(t,r);if(!(null==o?void 0:o.data))throw new Dc(zc.NoRecordData);const s=new TextEncoder,a=n.Buffer.concat([o.data.slice(0,32),i.toBuffer()]),u=s.encode(a.toString("hex"));if(!AP(u,o.data.slice(32),e))throw new Dc(zc.InvalidSignature);return new Wo(o.data.slice(0,32))},eL=async(t,e,r)=>{try{const n=hL(r,PB.SOL),i=await MB.retrieve(t,n),o=i.getStalenessId(),s=i.getRoAId(),a=i.getContent();if(0===o.compare(e.toBuffer())&&i.header.stalenessValidation===xB.Solana&&0===s.compare(a)&&i.header.rightOfAssociationValidation===xB.Solana)return new Wo(a)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}},rL=new Map([[PB.Backpack,new Wo("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")],[PB.Url,new Wo("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")]]),nL=new Set([PB.ETH,PB.Injective,PB.BSC]),iL=async(t,e,r)=>{const n=hL(r,e),i=await QP(t,r),o=await MB.retrieve(t,n),s=o.getStalenessId();return i.equals(new Wo(s))&&o.header.stalenessValidation===xB.Solana},oL=async(t,e,r,n)=>{var i;const o=hL(r,e),s=await MB.retrieve(t,o),a=s.getRoAId(),u=nL.has(e)?xB.Ethereum:xB.Solana;if(!(n=null!=n?n:null===(i=rL.get(e))||void 0===i?void 0:i.toBuffer()))throw new Dc(zc.MissingVerifier);return 0===n.compare(a)&&s.header.rightOfAssociationValidation===u},sL=new Set([PB.IPFS,PB.ARWV,PB.LTC,PB.DOGE,PB.Email,PB.Url,PB.Discord,PB.Github,PB.Reddit,PB.Twitter,PB.Telegram,PB.Pic,PB.SHDW,PB.POINT,PB.Backpack,PB.TXT,PB.CNAME,PB.BTC]),aL=new Set([PB.ETH,PB.Injective,PB.SOL]),uL=(t,e)=>{if(sL.has(e)){const r=t.toString("utf-8");return e===PB.CNAME||e===PB.TXT?function(t){const e=[],r=t.length;let n=0,i=128,o=72,s=t.lastIndexOf("-");s<0&&(s=0);for(let r=0;r<s;++r)t.charCodeAt(r)>=128&&wP("not-basic"),e.push(t.charCodeAt(r));for(let u=s>0?s+1:0;u<r;){const s=n;for(let e=1,i=pP;;i+=pP){u>=r&&wP("invalid-input");const s=(a=t.charCodeAt(u++))>=48&&a<58?a-48+26:a>=65&&a<91?a-65:a>=97&&a<123?a-97:pP;s>=pP&&wP("invalid-input"),s>gP((dP-n)/e)&&wP("overflow"),n+=s*e;const c=i<=o?1:i>=o+26?26:i-o;if(s<c)break;const h=pP-c;e>gP(dP/h)&&wP("overflow"),e*=h}const c=e.length+1;o=vP(n-s,c,0==s),gP(n/c)>dP-i&&wP("overflow"),i+=gP(n/c),n%=c,e.splice(n++,0,i)}var a;return String.fromCodePoint(...e)}(r):r}if(e===PB.SOL)return new Wo(t).toBase58();if(e===PB.ETH||e===PB.BSC)return"0x"+t.toString("hex");if(e===PB.Injective)return eP("inj",t,"bech32");if(e===PB.A||e===PB.AAAA)return fP.fromByteArray([...t]).toString();throw new Dc(zc.InvalidARecord)},cL=(t,e)=>{if(sL.has(e))return e!==PB.CNAME&&e!==PB.TXT||(t=_P(t)),Buffer.from(t,"utf-8");if(e===PB.SOL)return new Wo(t).toBuffer();if(e===PB.ETH||e===PB.BSC)return CM("0x"===t.slice(0,2),zc.InvalidEvmAddress),Buffer.from(t.slice(2),"hex");if(e===PB.Injective){const e=tP(t);return CM("inj"===e.prefix,zc.InvalidInjectiveAddress),CM(20===e.data.length,zc.InvalidInjectiveAddress),Buffer.from(e.data)}if(e===PB.A){const e=fP.parse(t).toByteArray();return CM(4===e.length,zc.InvalidARecord),Buffer.from(e)}if(e===PB.AAAA){const e=fP.parse(t).toByteArray();return CM(16===e.length,zc.InvalidAAAARecord),Buffer.from(e)}throw new Dc(zc.InvalidARecord)},hL=(t,e)=>{const{pubkey:r}=LM(t),n=AM("".concat(e));return xM(n,AB,r)};async function lL(t,e,r,n={}){const i=hL(e,r),o=await MB.retrieve(t,i);return n.deserialize?{retrievedRecord:o,deserializedContent:uL(o.getContent(),r)}:{retrievedRecord:o}}async function fL(t,e,r,n={}){const i=r.map((t=>hL(e,t))),o=await MB.retrieveBatch(t,i);return n.deserialize?o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e],deserializedContent:uL(t.getContent(),r[e])}})):o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e]}}))}async function dL(t,e,r,n,i,o,s,a){const u=await Vf(e),c=await Hf(u,s,a),h=o||await t.getMinimumBalanceForRentExemption(r);let l;if(a){const{registry:e}=await qf(t,a);l=e.owner}return Fc(Af,Ts.programId,c,i,n,u,new Wc(h),new jc(r),s,a,l)}async function pL(t,e,r,n,i,o){const s=await Vf(e),a=await Hf(s,i,o);let u;u=i||(await ah.retrieve(t,a)).registry.owner;return Kc(Af,a,new jc(r),n,u)}async function yL(t,e,r,n,i,o){const s=await Vf(e),a=await Hf(s,n,i);let u;u=n||(await ah.retrieve(t,a)).registry.owner;return qc(Af,a,r,u,n,i,o)}async function gL(t,e,r,n,i){const o=await Vf(e),s=await Hf(o,n,i);let a;a=n||(await ah.retrieve(t,s)).registry.owner;return Vc(Af,s,r,a)}const mL=async(t,e,r,n,i,o=Cf,s)=>{if(e.includes(".")||e.trim().toLowerCase()!==e)throw new Dc(zc.InvalidDomain);const[a]=Wo.findProgramAddressSync([Bf.toBuffer()],Bf),u=AM(e),c=xM(u,void 0,If),h=AM(c.toBase58()),l=xM(h,a),[f]=Wo.findProgramAddressSync([c.toBuffer()],Bf),d=Nf.findIndex((t=>null==s?void 0:s.equals(t)));let p;const y=[];if(-1!==d&&s){p=Cc(o,s,!0);const e=await t.getAccountInfo(p);if(!(null==e?void 0:e.data)){const t=Nc(n,p,s,o);y.push(t)}}const g=new r_.PythHttpClient(t,r_.getPythProgramKeyForCluster("mainnet-beta")),m=await g.getData(),w=zf.get(o.toBase58());if(!w)throw new Dc(zc.SymbolNotFound,`No symbol found for mint ${o.toBase58()}`);const b=m.productPrice.get("Crypto."+w+"/USD"),v=m.productFromSymbol.get("Crypto."+w+"/USD"),_=Cc(o,jf),k=new Zc({name:e,space:r,referrerIdxOpt:-1!=d?d:null}).getInstruction(Bf,Af,If,c,l,Ts.programId,a,n,i,Df,b.productAccountKey,new Wo(v.price_account),_,yc,ms,f,p);return y.push(k),[[],y]},wL=async(t,e,r,n,i)=>{let[o]=await Wo.findProgramAddress([Bf.toBuffer()],Bf),s=await Vf(t.toBase58()),a=await Hf(s,o,n);return[[],[new $c({name:e}).getInstruction(Bf,Af,If,a,Ts.programId,o,r,ms,n,i)]]},bL=async(t,e,r,n=2e3)=>{const i=[],o=e.split(".")[0];if(!o)throw new Dc(zc.InvalidSubdomain);const{parent:s,pubkey:a}=LM(e),u=await t.getMinimumBalanceForRentExemption(n+ah.HEADER_LEN),c=await dL(t,"\0".concat(o),n,r,r,u,void 0,s);i.push(c);const h=UM(e,!0),l=await t.getAccountInfo(h);if(!(null==l?void 0:l.data)){const[,t]=await wL(a,"\0".concat(o),r,s,r);i.push(...t)}return[[],i]},vL=async(t,e,r,n,i,o)=>{CM(r!==PB.SOL,zc.UnsupportedRecord);const{pubkey:s,hashed:a,parent:u}=LM(`${r}.${e}`,OB.V1),c=JP(n,r).length,h=await t.getMinimumBalanceForRentExemption(c+ah.HEADER_LEN);return Fc(Af,Ts.programId,s,i,o,a,new Wc(h),new jc(c),void 0,u,i)},_L=(t,e,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=LM(`${e}.${t}`,OB.V2);if(a&&(s=LM(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,e,r,n,i,o,s,a)=>new wB({record:o,content:Array.from(s)}).getInstruction(a,fI.programId,i,t,e,r,n,AB))(i,o,s,n,Af,"".concat(e),cL(r,e),SB);return u},kL=async(t,e,r,n,i,o)=>{CM(r!==PB.SOL,zc.UnsupportedRecord);const{pubkey:s}=LM(`${r}.${e}`,OB.V1),a=await t.getAccountInfo(s);CM(!!(null==a?void 0:a.data),zc.AccountDoesNotExist);const u=JP(n,r);if((null==a?void 0:a.data.slice(96).length)!==u.length)return[Vc(Af,s,o,i),await vL(t,e,r,n,i,o)];return[Kc(Af,s,new jc(0),u,i)]},EL=(t,e,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=LM(`${e}.${t}`,OB.V2);if(a&&(s=LM(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,e,r,n,i,o,s,a)=>new _B({record:o,content:Array.from(s)}).getInstruction(a,fI.programId,i,t,e,r,n,AB))(i,o,s,n,Af,"".concat(e),cL(r,e),SB);return u},SL=(t,e,r,n)=>{let{pubkey:i,parent:o,isSub:s}=LM(`${e}.${t}`,OB.V2);if(s&&(o=LM(t).pubkey),!o)throw new Error("Invalid parent");const a=((t,e,r,n,i,o)=>(new kB).getInstruction(o,fI.programId,i,t,n,e,r,AB))(n,o,r,i,Af,SB);return a},AL=(t,e,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=LM(`${r}.${e}`,OB.V2);if(u&&(a=LM(e).pubkey),!a)throw new Error("Invalid parent");const c=((t,e,r,n,i,o,s,a)=>new vB({staleness:s}).getInstruction(a,fI.programId,o,t,e,r,n,AB,i))(i,s,a,n,o,Af,t,SB);return c},xL=(t,e,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=LM(`${e}.${t}`,OB.V2);if(a&&(s=LM(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,e,r,n,i,o,s)=>new EB({roaId:Array.from(o.toBuffer())}).getInstruction(s,fI.programId,e,t,r,n,i,AB))(n,Af,o,s,r,i,SB);return u},IL=(t,e,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=LM(`${e}.${t}`,OB.V2);if(u&&(a=LM(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,e,r,n,i,o,s,a,u)=>new bB({validation:o,signature:Array.from(s),expectedPubkey:Array.from(a)}).getInstruction(u,fI.programId,i,t,e,r,n,AB))(n,s,a,r,Af,xB.Ethereum,i,o,SB);return c},BL=async(t,e,r,n,i,o)=>{const{pubkey:s,hashed:a,parent:u}=LM(`${PB.SOL}.${e}`,OB.V1),c=XP(r,s,n,i).length,h=await t.getMinimumBalanceForRentExemption(c+ah.HEADER_LEN);return[Fc(Af,Ts.programId,s,n,o,a,new Wc(h),new jc(c),void 0,u,n)]},ML=async(t,e,r,n,i,o)=>{const{pubkey:s}=LM(`${PB.SOL}.${e}`,OB.V1),a=await t.getAccountInfo(s);if(CM(!!(null==a?void 0:a.data),zc.AccountDoesNotExist),96!==(null==a?void 0:a.data.length))return[Vc(Af,s,o,n),await BL(t,e,r,n,i,o)];const u=XP(r,s,n,i);return[Kc(Af,s,new jc(0),u,n)]},PL=(t,e,r)=>{const{pubkey:n}=LM(t),[i]=Wo.findProgramAddressSync([n.toBuffer()],Bf),[o]=Wo.findProgramAddressSync([n.toBuffer(),Uint8Array.from([1,1])],Bf);return(new Yc).getInstruction(Bf,Af,Ts.programId,n,UM(t),o,i,Lf,e,r)},LL=(t,e,r,n,i,o,s,a,u)=>{const[c]=Wo.findProgramAddressSync([r.toBuffer()],Bf);return new Gc({space:e,name:t}).getInstruction(Bf,Af,If,r,n,Ts.programId,Lf,i,o,s,a,u,Ff,yc,ms,c,Kf)},OL=async(t,e,r,n,i)=>{const{pubkey:o,isSub:s,parent:a}=LM(e);if(!a||!s)throw new Dc(zc.InvalidSubdomain);if(!i){const{registry:e}=await ah.retrieve(t,o);i=e.owner}let u,c;n&&(u=a,c=(await ah.retrieve(t,a)).registry.owner);return qc(Af,o,r,i,void 0,u,c)};async function TL(t,e,r,n,i){const o=await Vf(e),s=await Hf(o,void 0,Tf),a=await t.getMinimumBalanceForRentExemption(n+ah.HEADER_LEN);let u=[Fc(Af,Ts.programId,s,r,i,o,new Wc(a),new jc(n),void 0,Tf,Of)];return u=u.concat(await KL(t,e,s,r,i)),u}async function RL(t,e,r,n){const i=await Vf(t),o=await Hf(i,void 0,Tf);return[Kc(Af,o,new jc(r),n,e)]}async function UL(t,e,r,n,i){const o=await Vf(e),s=await Hf(o,void 0,Tf);let a=[qc(Af,s,n,r,void 0)];const u=await Vf(r.toString());return await Hf(u,Of,void 0),a.push(await gL(t,r.toString(),i,Of,Tf)),a=a.concat(await KL(t,e,s,n,i)),a}async function CL(t,e){const r=await Vf(t),n=await Hf(r,void 0,Tf),i=await Vf(e.toString()),o=await Hf(i,Of,Tf);return[Vc(Af,n,e,e),Vc(Af,o,e,e)]}async function NL(t){const e=await Vf(t);return await Hf(e,void 0,Tf)}async function zL(t,e){const r=await Vf(e),n=await Hf(r,void 0,Tf),{registry:i}=await ah.retrieve(t,n);return i}async function DL(t,e){const r=await Vf(e.toString()),n=await Hf(r,Of,Tf);let i=await FL.retrieve(t,n);return[i.twitterHandle,new Wo(i.twitterRegistryKey)]}async function jL(t,e){const r=[{memcmp:{offset:0,bytes:Tf.toBase58()}},{memcmp:{offset:32,bytes:e.toBase58()}},{memcmp:{offset:64,bytes:Of.toBase58()}}],n=await t.getProgramAccounts(Af,{filters:r});for(const t of n)if(t.account.data.length>ah.HEADER_LEN+32){let e=t.account.data.slice(ah.HEADER_LEN),r=Te(FL.schema,FL,e);return[r.twitterHandle,new Wo(r.twitterRegistryKey)]}throw new Dc(zc.AccountDoesNotExist)}async function WL(t,e){const r=[{memcmp:{offset:0,bytes:Tf.toBase58()}},{memcmp:{offset:32,bytes:e.toBase58()}},{memcmp:{offset:64,bytes:new Wo(n.Buffer.alloc(32,0)).toBase58()}}],i=await t.getProgramAccounts(Af,{filters:r});if(i.length>1)throw new Dc(zc.MultipleRegistries);return i[0].account.data.slice(ah.HEADER_LEN)}class FL{constructor(t){this.twitterRegistryKey=t.twitterRegistryKey,this.twitterHandle=t.twitterHandle}static async retrieve(t,e){let r=await t.getAccountInfo(e,"processed");if(!r)throw new Dc(zc.InvalidReverseTwitter);return Te(this.schema,FL,r.data.slice(ah.HEADER_LEN))}}async function KL(t,e,r,i,o){const s=await Vf(i.toString()),a=await Hf(s,Of,Tf);let u=He(FL.schema,new FL({twitterRegistryKey:r.toBytes(),twitterHandle:e}));return[Fc(Af,Ts.programId,a,i,o,s,new Wc(await t.getMinimumBalanceForRentExemption(u.length+ah.HEADER_LEN)),new jc(u.length),Of,Tf,Of),Kc(Af,a,new jc(0),n.Buffer.from(u),Of)]}FL.schema=new Map([[FL,{kind:"struct",fields:[["twitterRegistryKey",[32]],["twitterHandle","string"]]}]]);const qL=new Wo("85iDfUvr3HJyLM2zcq5BXSiDvUWfw6cSE1FfNBo8Ap29");class VL{constructor(t){this.tag=t.tag,this.nameAccount=new Wo(t.nameAccount)}static deserialize(t){return Ge(this.schema,VL,t)}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Dc(zc.FavouriteDomainNotFound);return this.deserialize(r.data)}static async getKey(t,e){return await Wo.findProgramAddress([n.Buffer.from("favourite_domain"),e.toBuffer()],t)}static getKeySync(t,e){return Wo.findProgramAddressSync([n.Buffer.from("favourite_domain"),e.toBuffer()],t)}}VL.schema=new Map([[VL,{kind:"struct",fields:[["tag","u8"],["nameAccount",[32]]]}]]);const HL=async(t,e)=>{const[r]=VL.getKeySync(qL,new Wo(e)),n=await VL.retrieve(t,r),i=await IM(t,n.nameAccount),o=await QP(t,i);return{domain:n.nameAccount,reverse:i,stale:!e.equals(o)}};var $L;!function(t){t.DegenPoet1="DegenPoet#1",t.Rgb0x001="rgb0x00#1"}($L||($L={}));const ZL=new Wo("ART5dr4bDic2sQVZoFheEmUxwQq5VGSx9he7JxHcXNQD"),GL=new Wo("CSWvuDHXExVGEMR9kP8xYAHuNjXogeRck9Cnr312CC9g"),YL=(t,e)=>{const r=AM(e),n=AM(t),i=xM(n,void 0,Wf);return{domainKey:i,bgKey:xM(r,void 0,i)}},JL=t=>{switch(t){case $L.DegenPoet1:return ZL;case $L.Rgb0x001:return GL;default:throw new Dc(zc.InvalidCustomBg)}};export{Pf as BONFIDA_FIDA_BNB,Uf as BONFIDA_USDC_BNB,Wf as CUSTOM_BG_TLD,$L as CustomBg,nL as ETH_ROA_RECORDS,zc as ErrorType,VL as FavouriteDomain,rL as GUARDIANS,xf as HASH_PREFIX,Kf as METAPLEX_ID,qL as NAME_OFFERS_ID,Af as NAME_PROGRAM_ID,ah as NameRegistryState,jc as Numberu32,Wc as Numberu64,Mf as PYTH_FIDA_PRICE_ACC,Df as PYTH_MAPPING_ACC,LB as RECORD_V1_SIZE,Nf as REFERRERS,Bf as REGISTER_PROGRAM_ID,Lf as REVERSE_LOOKUP_CLASS,If as ROOT_DOMAIN_ACCOUNT,PB as Record,OB as RecordVersion,FL as ReverseTwitterRegistryState,aL as SELF_SIGNED,Dc as SNSError,Rf as SOL_RECORD_SIG_LEN,zf as TOKENS_SYM_MINT,Tf as TWITTER_ROOT_PARENT_REGISTRY_KEY,Of as TWITTER_VERIFICATION_AUTHORITY,Cf as USDC_MINT,sL as UTF8_ENCODED,jf as VAULT_OWNER,Ff as WOLVES_COLLECTION_METADATA,PL as burnDomain,Yc as burnInstruction,RL as changeTwitterRegistryData,UL as changeVerifiedPubkey,CM as check,AP as checkSolRecord,Fc as createInstruction,Zc as createInstructionV3,dL as createNameRegistry,vL as createRecordInstruction,_L as createRecordV2Instruction,$c as createReverseInstruction,wL as createReverseName,KL as createReverseTwitterRegistry,BL as createSolRecordInstruction,bL as createSubdomain,Hc as createV2Instruction,TL as createVerifiedTwitterRegistry,Gc as createWithNftInstruction,Vc as deleteInstruction,gL as deleteNameRegistry,SL as deleteRecordV2,CL as deleteTwitterRegistry,YP as deserializeRecord,uL as deserializeRecordV2Content,IL as ethValidateRecordV2Content,MM as findSubdomains,OM as getAllDomains,RM as getAllRegisteredDomains,JL as getArtistPubkey,PP as getArweaveRecord,GP as getBackgroundRecord,ZP as getBackpackRecord,HP as getBscRecord,OP as getBtcRecord,YL as getCustomBgKeys,NP as getDiscordRecord,RP as getDogeRecord,Yf as getDomainKey,LM as getDomainKeySync,TM as getDomainKeysWithReverses,zM as getDomainPriceFromName,UP as getEmailRecord,LP as getEthRecord,HL as getFavoriteDomain,zP as getGithubRecord,DL as getHandleAndRegistryKey,Vf as getHashedName,AM as getHashedNameSync,$P as getInjectiveRecord,MP as getIpfsRecord,TP as getLtcRecord,fL as getMultipleRecordsV2,Hf as getNameAccountKey,xM as getNameAccountKeySync,qf as getNameOwner,FP as getPicRecord,VP as getPointRecord,IP as getRecord,xP as getRecordKeySync,lL as getRecordV2,hL as getRecordV2Key,BP as getRecords,DP as getRedditRecord,Jf as getReverseKey,UM as getReverseKeySync,KP as getShdwRecord,qP as getSolRecord,WP as getTelegramRecord,NM as getTokenizedDomains,jL as getTwitterHandleandRegistryKeyViaFilters,jP as getTwitterRecord,zL as getTwitterRegistry,WL as getTwitterRegistryData,NL as getTwitterRegistryKey,CP as getUrlRecord,$f as performReverseLookup,Zf as performReverseLookupBatch,Jc as reallocInstruction,mL as registerDomainName,LL as registerWithNft,QP as resolve,rh as retrieveNftOwner,nh as retrieveNfts,sh as retrieveRecords,IM as reverseLookup,BM as reverseLookupBatch,JP as serializeRecord,cL as serializeRecordV2Content,XP as serializeSolRecord,qc as transferInstruction,yL as transferNameOwnership,OL as transferSubdomain,Kc as updateInstruction,pL as updateNameRegistryData,kL as updateRecordInstruction,EL as updateRecordV2Instruction,ML as updateSolRecordInstruction,AL as validateRecordV2Content,oL as verifyRightOfAssociation,iL as verifyStaleness,xL as writRoaRecordV2};
45
45
  //# sourceMappingURL=index.mjs.map